CMD Product review
CMD HD Series
The CMD HD. As long as a 1541-II and two thirds as wide.
The CMD Hard Drive series didn't come too far behind the development of JiffyDOS. As it stands it's the best form of mass storage available for Commodore 64/128 Computers and it's relatively easy to use.
First thing you notice about the hard drives is that they are even smaller than the 1541-II drives! This is great if you don't want it to take up much room on your desk. Mind you it is going to look pretty funny sitting on that lumbering hippo 1541 you have been using since the early 80s! Although it's definitely an improvement over not having one!
First thing you notice about the drive apart from it's small size and the fact that it makes your 1541 look very clumsy and outdated - is that it has many ports on the back, such as the standard twin serial ports and power port as on 1541 drives, but there are also a few other worth mentioning. There is an "auxiliary" serial port on the back which CMD claimed would be used when it had been programmed for. Well personally, I doubt they'll ever make use of it, but there it is! It doesn't work as an ordinary serial port, so it's useless. There is also a parallel port on the back which was designed primary to be connected with a CMD RAMLink to give optimal fast loading speed to the HD. Only useful if you have a RAMLink to use with it, so if you don't have one, it's useless. Last is a rather scary looking SCSI bus parallel type port on the back. This is where you can plug in non-commodore computers to use the space on the Hard Drive, or you can use it to attach external SCSI hardware like other hard drives, zip drives, CD drives, A4 scanners etc. However, if you don't have any of this computer hardware, the SCSI port, as you may have guessed, is useless. If you want to connect a zip drive, it's possible and I have done it. Read all abaout it here.
BUT! If you do decide to use the parallel port with a RAMLink and attach some other really cool hardware to the SCSI bus, you will have a real kick-butt Commodore system. In this sense, a CMD HD is the basic building block for a really cool C64 set-up. You can attach Zip drives, CD drives, and other SCSI drives to it and use them. The HD has a SCSI controller built in, so it can manage all these devices by itself. Although I believe that by adding more storage devices to the HD is a bit of overkill, because chances are, you'll never use much more than 1 Gigabyte of storage space for all your Commodore stuff - but it's there! Extra drives to the system have made backing up the HD possible however to other media (like I have done with zip disks), so it's a good thing it is there! A little hacking to the system is necessary however to use other SCSI drives - which is a pity really because the CMD HD DOS doesn't implement added drives as separate drives automatically.
CMD's Hard drives used to come in several models, starting from 40Mb and ranging up to a massive 4GB. Now, however, they only come in 1Gb and 2Gb models. A 1Gb model is ample as it is already for all your Commodore needs. With that much space, you could easily store every single game ever written for the Commodore 64 in there (as I have - using up about 400MB) and still have room for every single demo, utility, and program ever written for the Commodore as long as you crunched things where possible. Even after all that you may still have some Megabytes remaining. Personally, I think 2Gb is overkill. What can you possibly do with another 1Gb spare? Well for one thing, you can use the space on another computer like an Amiga or PC. More on that later. Or you could hide lots of illegal material on a DOS format that the authorities don't recognize and can't open on a standard PC - very useful if you're storing classified information! (Just kidding!)
Probably the reason why the 40Mb HD was discontinued is because a lot of people bought this small model and removed the measly hard disk and replaced it with something bigger and saved a lot of money (because the Hard Drive isn't exactly cheap coming from CMD). If we assume that CMD wasn't happy with this, it may explain why they only sell the 1Gb and 2Gb models now (and maybe drops in the prices of Hard Drives these days). That much space is more than enough for the average user. However it just shows how well CMD designed the HD to be flexible. I have removed the old mechanism in my HD and replaced it with a 4GB Seagate mechanism. (In the hope that the Wheels operating System will one day accomadate huge foreign partitions)
As for the HD front panel, you'll notice that there are lots of lights on the front and lots of buttons. It looks really cool. Turning on the Hard drive greets you with a whizzing noise like a PC Hard drive, and a chaser marquee display on the panel as the system checks its ROMs out. Finally the drive chatters a bit as it loads the DOS in off the Hard Disk.
There is a power light, two activity lights (one for disk channel open, and the other for actual data transfer taking place), an error light, and a GEOS light. The GEOS light serves no purpose in particular other than to signify that the disk is doing activity while under GEOS. Why CMD decided to give GEOS it's own light is beyond me - BUT IT'S THERE! Also along the panel is the swap buttons. These automatically turn the HD into device 8 or 9 depending on what the program wants the main drive to be. Most programs written for the 64 require the device to be device 8, so this button sets the HD into device 8 for loading. Very handy. Also there is the Write Protect button. This can be hardware controlled or software controlled. If it's on, you can't write to the hard disk. You can also operate the write protect switch under software. This is useful if you want to write protect the drive under software (which is not really useful anyway), but it opens the door for viruses to be written for the Hard Drive. I'll explain how this could be possible later. Also there is the reset button, which simply resets the Hard Drive back to it's warm reset state.
So how is data organised on the Hard Drive? Well, CMD decided to use the Unit number, largely ignored on the 1541, to determine partition number. This means that, because unit numbers can range from 0 to 254, that there are 255 partitions possible. There are quite a number of types of partitions available.
The partition directory - accessed by LOAD"$=P",12,1
Partition 0 is always the system partition. The system partition holds all the necessary information that the HD needs to work, like the HD DOS, the partition directory, the partition to go to when boot up occurs, and what device number the Hard drive should assume when operating. This kind of set up allows the user to change the HD DOS should it ever be upgraded, adjust the partition types and names, change the start up partition, and change the device number (No more dip-switches or fiddling inside the 1541!). There is a support disk that comes with the Hard Drive that allows you to do these things with ease, as well as to create partitions and remove them, and view how many blocks remain on the Hard Disk (over 4 million on a 1Gb drive!). There is also a utility to scan the hard disk for errors and fix them, a modified disk editor which allows you to directly edit blocks on the Hard Drive, a utility to set the clock in the Hard Drive (yes, it has one!), and a utility that shows you what kind of Hard drive mechanism you have in the casing (That being a Quantum Fireball when I first got the thing), and how much space it can hold. The last one is there just in case you want to read the manufacturer info and make sure you have a quality Hard disk in there and not some piece of badly made rubbish hard disk.
Partitions can be swapped either by software or by hardware means. Since most programs weren't designed with the HD in mind and won't give you a disk channel prompt (like games for example) you can use the buttons on the front of the HD. After holding down buttons to access the front panel selection mode, you can select the partition (1-254) from a combination of lights on the panel. This is a bit irritating, but once you've tried it a few times, you get the hang of it. It's not exactly easy to determine which digit of the partition you are working on and what number it is judging by the light code, but you can get by with this. I don't use this very often myself, as I leave most of my multi-disk programs on floppy, or I store them on the HD as opposed to leaving them in a position to run them from the HD.
I'll start on the other partitions by describing the emulation partitions: These partitions can be made to be 1541/1571/1581 emulation partitions (which simply emulate the disk layout of the drive mentioned - not the support electronics). This means that any fast loader program for the 1541 that runs on the HD under a 1541 HD partition will crash. CMD didn't want to include the firmware mapping for all these drives because it would have pushed the price of the Hard Drive up to "unreasonable" levels (That's fair enough considering how much they cost already!) Seocndly, If you're thiking "I'll just port my whole 1541 collection over to the hard drive in it's 1541 format!" then I can tell you quite safely now that this won't be happening. Remember that there is only 254 partitions for use, and if you have a 1000+ floppy collection, you're not going to whole disk copy the lot over into 254 1541 emulation partitions. There is a method around this which I will explain later.
The inside of a native mode partition
Next are the Native mode partitions. These partitions aren't restricted by size as much as the emulation partitions. They can be as little as 254 blocks or as massive as about 65,250 blocks. 65,250 or thereabouts is about 16Mb big, and that is the max because two 8-bit combinations won't let you go too much higher than 65535 anyway. The other bonus with these partitions is that they can handle subdirectories. These are created and managed much the same way as you'd do it on an MSDOS system. New DOS commands were created to manage them such as CD:[filename] and MD:[filename]. They can even be nested as well, so you can put subdirectories inside subdirectories (Just make sure you make the pathname no longer than 255 characters or your have trouble accessing your nested directory!) The only problem I have with these kinds of folders managing them under DOS, is that you can't copy subdirectories (that is, pick up the whole directory and dump it elsewhere in one shot) You have to copy the contents out into another folder. Another niggle is you can't wipe a subdirectory if there are still files in there. You have to go through and scratch them all first before you can clear it. Finally, you can't access subdirectories inside a program that doesn't provide you with a disk channel prompt.
The other few kinds of partitions available for use is the C/PM 1581 partitions. I tried to install CPM on these partitions, but it simply didn't work at all. I managed to install it easily on the 1571 partition however, so I don't know the use of these special 1581 partitions. Some people have got it to work, so I hear, but I couldn't.
Also, there is a rather interesting type of partition called a Printer Buffer Partition. I think CMD created these with the intention of using the HD as a means of spooling off printer tasks, but it simply never came to fruition. It doesn't do anything currently, so there's no point putting one of these in your HD. CMD promise in the manual to develop this in a future HD DOS, but I very much doubt that they'll ever do it. Besides, the GEOcable works fast enough (if you have one) to complete a printing task very fast anyway.
Lastly is the Foreign partition. This creates an area for another non-Commodore 8-bit computer to make use of the space on the HD. However, you are only limited to making these 16MB big. If you have CMD's utility disk you can make them even larger.
a peek inside the HD Utility disk
Back to the utility disk, there are all the partition tools, System formatters (handle with care!), the clock setter, the disk editor, a program to add another drive to the SCSI port, CMD's FCOPY (file copier) and MCOPY (whole disk/partition copier) programs, a program to check the SCSI blocks on the HD for errors, a program to park the drive mechanism for additional drives, and two tools which let you create a subdirectory in a native mode partition which have the sector layout of a 1541 or 1581 respectively (Pretty useless tools these ones I think). There are even a few examples in BASIC on how to read the HD's clock, and find out partition info. These are for people wanting to program for the HD I assume.
GEOS (only Version 2 - but why would you use anything else?) is catered for as well, with replacement CONFIG files for GEOS, an auto exec file which reads the clock off the HD into GEOS, as well as a program which allows you to swap and copy between partitions under GEOS. I found these utilities useful under GEOS, but they weren't perfect as they tended to knock the HD off my system at random through no fault of mine, and occasionally cause the partition I was working on to go crazy. Note that this modified GEOS works only on HD 1581 emulated partitions. If you are serious about using GEOS with the HD, I recommend you get Wheels (and a RAM expansion), or Mega Patch 3, because I found the standard GEOS V2 system unstable and inflexible with so many patches.
All the utilities were fairly simple to use, and the manual gave plenty of information how to use them and to become familiar with the HD's DOS commands. It took a bit of patience and learning, but what a difference it makes to have one of these hard drives connected to your C64. In light of that it's worth being re-educated.
One utility which is sorely lacking on CMD's disk are the Zip-code utilities. The reason why they are so important, because for archivers who want to port their whole 1541 collection as-is to the HD - this is the only way to do it. With only 254 partitions, you couldn't do this normally, but open up some native partitions, and create a few subdirectories, and you are ready to go. Failing that, you could store your floppy disk sides using PUzip, which can turn disk sides into .D64 images which are used on Commodore emulators.
This is how you organize aip-code archives. Just save files in the directories
I suppose CMD didn't include the zip-code utilities as Darkstar's program was supposedly "copyrighted" (If CMD knew the letter of the law, "(c)" written like this in brackets and not a circle is not a universally recognized copyright symbol. The zip-code utilities display this nonsensical bracketed c, so the tools may as well be PD for all we know). Fortunately, the zip-code utilities are compatible with the HD - and you even get a disk command channel - so you can store all your disks (but not play directly) on the HD. You can also store orginal lightly-copyprotected disks on the HD in six-pack format using these tools. The best version of this to get is Alpha Flights Zip-collection V2 - and it's easily available on the net as well as other C64 file depots. And as I mentioned before, Do a search around for PUzip and GUNzip, which can turn a disk side into a .D64 file.
The speed of the HD, unaided, is only slightly faster than the 1541. In other words, it's not that much faster at all. One thing that is simply a MUST HAVE if you get a HD is JiffyDOS. The HD is JiffyDOS compatibile, so all you'll need then is JiffyDOS inside your 64. You'll also need to have a 1541 drive if you are to even work with the HD and put programs onto it (I think that is very obvious). If you have over 1Gb to work with, you don't want to put files on the HD at 1541 speed. Anyone could do without that. Even better would be coupling the HD with a RAMLink and parallel cable, which doesn't speed the HD up a lot more, but for even more heavy duty file managing, it saves a few more spare seconds and goes as fast as a PC Hard Drive would with a 1Mhz clock - loading 202 blocks in 2 seconds roughly. RAMLink is also recommended if you want to use GEOS seriously, because a patched GEOS V2 is unreliable so you'll want to use upgraded GEOS programs (such as Wheels, and MP3) which will need a RAMLink or extra RAM from somewhere to operate.
So now to sum up. For any serious user who wants to archive C64 programs, run a bulletin board, or to store all their C64 games on a medium better than a 1541 floppy, the HD is a must have. If you're a GEOS user, I recommend getting an upgraded GEOS rather than work with the patches. GEOS running under a RAMLink and HD with parallel connection is amazing.
The Hard Drive is very reliable and I have never experienced any major data loss on it. I did have a 16MB partition accidently formatted once, when I confused the partition number - so care must be taken by the user to check and recheck carefully before doing any formatting command. The write-protect switch helps for peace of mind just in case you want to format another drive and not the HD! The system partition can not be meddled with unless you have entered the hardware configuration mode. This prevents any nasty programmer damaging the partition structure, which would enivitably destory the data on the HD as the HD won't know where to find it.
My complaints with the device is that it can't fully emulate the 1541, and that the partitions available are insuffient in number to work with (only 254). This leading to zip-packing disks onto the HD which then can't be executed from the HD, especially if they have 1541 fast loaders. However on the plus side, if you are using the HD to store programs, it is very capable of doing it. You can (with the right tools), store any kind of data on there and carry your whole collection around on the Hard disk. If this is what you want, here is your solution. My other complaint is that the HD is still too slow, but JiffyDOS sets this right very quickly. To be fair to CMD, these shortcomings probably could have been avoided anyway, so despite this, the HD is well worth the purchase. The price is expensive, but considering what's in there is not only a Hard drive (which is all you'd get if you got a PC HD), but a microprocessor and RAM, SCSI controller, and custom built DOS, firmware, and software, then you'd have to agree that it's quite reasonable considering the trouble CMD had to go to in order to get such a system working on the C64.
Other complaints is that the clock only accepts 2 year digits. It survived Y2K OK, so it's not a major issue unless you live past the year 2100 and still have the HD in good condition (well, never say never)
Finally, despite the fact that the system partition is virus free, it would still be possible to write a HD virus. This would be accomplished by a program that detects the device number and presence of a HD, then scans it's partitions out, then by software sets the write protect off, and then systematically formats each partition on the drive. I'm not going to write such a program, and even if it were written, the author would probably not test it on their own HD. Never say never, but.... This is one reason why I curse the DOS write protect command - for not taking this possibility into consideration. I would have liked the write protect switch to have been installed upon power on, or only by hardware means. Still, as such a virus doesn't exist (and is probably not likely to) we can rest easy.