magazine logo
Welcome to the official Attitude website - Europe's #1 C64 scene disk magazine
IDE64 Overview
by Soci/Singular

Probably most of you have already heard about the IDE64 cartridge. It's been around for a while since it's initial release in 1998. As most information about the cartridge were published on the Internet rather than in disk magazines, I'll write something more about it here.

There are four versions of the cartridge. Only a few pieces are around from the really old version 1 of the cartridge. It had 16k RAM, two ispLSIs for logic and an EPROM program storage. It's unsupported since long ago, the current versions of IDEDOS cannot run on it. Then version 2.1 came out with 64k user re-flashable system program storage, and 28k data space for system buffers. All the logic was integrated into one big ispLSI chip, there was a pass-through expansion port, short bus, and of course the most important IDE bus. Than later version 3.1 came out with a redesigned board, it's a bit shorter than version 2 because of the missing pass-through port, otherwise there's no difference. Currently the version 3.4 of the cartridge is out, it features a CompactFlash adapter too. Around 200 cartridges got sold from version 2/3 until now.

So many versions, are they compatible with each other? All cards newer then the old version 1 can be used with the newest version of IDEDOS (guess what, IDEDOS is still developed with the 2.1 cartridge...).

IDE devices (HDD, CDROM) require external power of course, you may use some cheap PC power supply, or there are complete solutions which replace the C64 power supply too. Of course using version 3.4 of the cartridge with CompactFlash only won't require any external power supply.

Because IDE64 is cartridge and have to be plugged into the expansion port, it restricts which cartridges can be plugged in the same time. For version 3.1 and 3.4 of the IDE64 cartridge you may need to get an expansion port expander if you want to use other cartridges too.

First, you cannot use your Action Replay, Retro Replay, Final Cartridge, etc. (cracker cartridges) or game cartridges at the same time with IDE64, because they want to page in their program memory at the same place which is already used by IDE64. This may be a big drawback for most coders and that's why in IDEDOS 0.9x I'll try to create an excellent monitor which can replace their most used functionality. Fastload for 1541 is available in IDEDOS 0.89x and will be in IDEDOS 0.9x (but there's still no freeze button).

If you are a lucky owner of SuperCPU or RamLink, then it's your lucky day. There's a special version of IDEDOS available for the SuperCPU, and RamLink works just fine.

If you own some CMD serial drives with JiffyDOS installed, but there's no JiffyDOS installed in your C64 (like in mine) then IDEDOS 0.9x supports JiffyDOS fast transfers and you'll get acceleration. With the current stable IDEDOS 0.89x only normal slow serial transfers are possible if there's no JiffyDOS Kernal installed.

REU, Turbo 232, Swiftlink can be used together with IDE64, there's no memory conflict. +60K, second SID are of course supported, I have them in my C64 too with IDE64.

The IEEE488 interface won't work with IDE64, but can be adapted with a few modifications. If you use such hardware you should write to me to get the IEEE488 routines into IDEDOS 0.9x.

Once we had separate versions of IDEDOS for PAL/NTSC machines, but they got merged because we did not wanted to distribute 8 versions of the IDEDOS (C64/SCPU, Parallel/Serial link, PAL/NTSC). So machine type is detected and the correct routines are used for fastloader and the like.

If you plug your IDE64 cartridge into a C128, you'll end up into C64 mode all the time, because only C64 mode is supported. But IDEDOS 0.9x tries to get some functionality back, like the ability to use the extended keyboard (extended keyboard is only available with version 3 of the cartridge, and for some newer version 2 produced after 2000). The cartridge won't run twice as fast with 2 MHz mode, that's a hardware limitation.

Now back to software compatibility. As IDE64 is a cartridge and not a slow external serial device, all programs using serial bus specific calls like TALK/LISTEN etc. won't work. Only normal Kernal calls like OPEN/CHKIN etc. are supported, because it's possible to modify them by replacing the vectors
at page 3 (serial bus calls can't be modified without replacing the Kernal). Of course 1541 specific IRQ loaders and the like won't work.

What can be done to fix the above described problems? Talented re-crackers can replace the serial bus specific routines with standard Kernal ones easily. Even IRQ loaders can be replaced, because IDEDOS does not disable IRQ during operation. IDEDOS 0.9x was designed to run even in memory configuration 5 (RAM+I/O only). There are some known games/utilities fixed for the IDE64 cartridge on the IDE64 warez site. Even "Newcomer" was fixed for IDE64, so nothing is impossible. The cracker scene can't die just right now. ;)

We in Singular Crew released 2 demos (invitations), which can run from both 1541 with an IRQ loader and from IDE64. The third was a 3.6 Mb animation demo, but that can't be fixed for 1541 of course. ;) They are available at the IDE64 warez site.

Now I'll tell you how the IDE64 cartridge can be used with the current stable IDEDOS 0.89x as IDEDOS 0.9x is still not finished/usable.

This version of IDEDOS handles 2 harddisks up to 8 Gb each. There are no partitions, so the whole disk is covered by one big filesystem. The filesystem stores files and directories in linear lists just like the 1541, so file length and the number of files in directories are not limited. Filenames and types are just like on Commodore drives: 16 characters max, SEQ, PRG, USR. Relative files are not supported. Path and directory handling is not compatible with the CMD syntax. Formatting and validating is done by external utilities.

CDROM drives can also be connected to IDE64. Any normal CD burned for use with PC or for other real computers can be read by IDEDOS. ISO9660 and Joilet extension are supported. Programs can directly run from CD and files can be accessed just like on harddisk. This way it's easy to use your C64 collection on a real machine. ;) There are some rare and old CDROM drives not working very well with IDE64, but newer drives should be OK.

For those who want real portability and quiet operation can get an IDE CompactFlash adapter or the version 3.4 of the cartridge, as CompactFlash is also handled by IDEDOS. The adapter should be available in any country, at least we confirmed that there are shops in Czech republic and Hungary, where it's available for ca. 20 EUR. The FAT16 filesystem used on cards is not handled yet, however it would be interesting to view photos taken on party directly with the C64/SCPU JPEG viewer. ;) So you have to reformat the card to IDE64's native filesystem.

You probably heard that we claim that IDE64 is the fastest drive for a stock C64. IDEDOS 0.89x is even faster than RamLink. It saves at 44 kb/s, loads at 58 kb/s, byte by byte read (chrin) at 8.2 kb/s, byte by byte write (chrout) at 6.7 kb/s. The IDE64 specific calls blockread/blockwrite perform at 59 kb/s and 43 kb/s. Speed is drive dependent, to get really good performance, a harddrive with cache, read-a-head and write-cache is expected. IDEDOS 0.9x with the new filesystem is even faster but I'll tell you more about that later.

Blockread and blockwrite are Kernal extensions to speed up reading/writing of files. Programs using these calls can perform much faster if used with IDE64 then with the byte-by-byte read/write. For example "GunZip" and "PuZip", "T64 Extractor", "SGR Viewer", etc. use these calls. Of course these programs implement the byte by byte replacement to remain compatible with other devices.

IDEDOS is not just the operating system, it includes a few utilities too. There's a setup utility for setting drive numbers, the time in the built-in RTC, harddrive settings etc. The monitor in IDEDOS 0.89x is ripped from Final III. There are a few new BASIC commands for changing directories, drive number, etc.

The most important built-in utility is the file manager. It's two-panel application for walking through directories, copying, starting, etc. files, similar to "Star Commander", but the screen is splitted horizontally and of course with less features. ;) It includes fast copying for 1541, other drives are handled with the usual Kernal routines. There's no support for directories on other devices than IDE64 (like CMD HD), but this got fixed in IDEDOS 0.9x, because it understands the CMD command syntax.

The manager can use external programs called plugins. It's possible to assign specific plugins for certain filenames like d64 writer for *.d64 files, so when you press return on such file, the user specified plugin is started. After the plugin finished the manager is restarted. Most plugins are written so that they can run with any drive, some even without the IDE64 cartridge installed. Some graphic plugin examples: AFLI, Amica Paint, Drazlace, Drazpaint, FLI Designer, Funpaint, Art Studio 1.1 and 1.2b, Gunpaint, Super Hires Fli, Super Hires Interlace Viewer. The d64 writer plugin is able to write a 35 track image in ca. 30 seconds. It's also capable of writing and formatting 40 track images and listing directory. The d64 reader and verifier have the same speed also, they are standalone programs. With the t64, lynx, library, and archive extractor plugins, extract files from archives. It's also possible to export separate files from d64 files directly to harddisk. By using the HVSID player it's possible to listen to tunes directly from the HVSID collection in both PSID and RSID format. There's also a 4x4 animation player just to show that it's possible to do exact timing while loading. The most useful plugin is called asm and starts the assembler with the source loaded. ;) Pressing 3 in manager starts the fast 80x24 text viewer able to view ASCII/PETSCII files bigger than 2 Mb in size, scrollable in all directions (so you can read "C= Hacking" or C64 ROM disassembly, etc. on TV or EGA monitor using VDC with a C128).

Running GEOS is only possible by using another harddisk as the GEOS filesystem is not compatible with the IDE64 native filesystem. GEOS driver was done by YTM.

Using IDE64 with SCPU gives another possibility: WINGS. It's a great new operating system developed for the SCPU, worth a try!

There are other ways to transfer files from PC to C64 and back beside writing CD's. IDEDOS supports 2 different PCLINK cables. If you have the DUART card, you can use a simple null-modem cable for connection. The other possibility is a parallel cable connected to the user port and the printer ports of both machines. Both cables require server program on the PC end, these are available for the WIN32 and Linux platforms. The speed of parallel PCLINK is about 2.5 kb/s while on RS232 the speed is 3.6 kb/s. Programs can be run directly off PCLINK virtual drive, so it's not just a transfer method.

Creating a backup from the content of the harddrive is not the easiest task currently. There are two unfinished solutions: one is the use of SD_IDE64 developed by Silverdr. This utility can be integrated with "Midnight Commander", so backup is just a simple copy. The other is small Pascal program written by me, and I guess there are no other users of it, because all parameters have to be compiled in. ;) Both are available in source and can only run on UNIX like machines (eg. Mac, PC running Linux, BSD, etc.).

If you own some bigger machine capable of running the VICE emulator, you can try out the IDE64 emulation included since version 1.10. All you need to get it working is a version of IDEDOS and the format program (VICE emulates a virtual harddisk in a file, which have to be formatted just like a real one before use). Everything should work just like with a real machine and card. The emulation was done to allow me the development/debug of IDEDOS while not at home, so it's pretty accurate. ;) It's also possible to use your real IDE64 harddisks on UNIX like platforms with a little tweaking (exchange the image file with a device file with the correct permissions).

That's all for now. Writing about the upcoming IDEDOS 0.9x requires another article and much more time. ;) If you want to know anything more, write to me: soci@c64.rulez.org.

SOCI/SINGULAR

Some links to get more information:

The IDE64 project: ide64.org (www.volny.cz/~dundera)
The IDE64 warezsite: singularcrew.hu/~ide64warez
The IDE64 mailing list (out of order, a forum will replace it): ide64.wwww.dk
The IDE64 mailing list archive: singularcrew.hu/~ide64archive

   Add/view comments on this article (comments: 0)

SCENE GROUPS
 
OPINION POLL
Do you believe we are
able to cope with
releasing "Attitude"
on a regular basis?

yes no

 YES: 283 (70.75%)
NO:117 (29.25%) 

NEWS COMMENTS

ART COMMENTS

STATISTICS
all visits:

visits today:


website started:
23/09/2004
 
Official Webpage
of Attitude
Copyright 2004-2018
 
DJ Gruby/TRIAD