Zipdrive on a C64

There's the zipdrive attached to my system

Yes, that's right. It IS possible to attach an SCSI zip drive to a Commodore 64 system and be able to use it. This is provided you have a CMD HD. In fact, it's probably also possible to attach MO disk drives and other SCSI disk drives using the same method - although I haven't tried anything else but a zipdrive. For me, a 100MB zipdrive is sufficient enough. Not only that, but the 250MB zipdisks are harder to come by where I live.

There are two methods for connecting extra SCSI drives to the HD. My method, and HD-ZIP.

The method I will be describing is my own tried and tested method. It requires no drivers or external software to operate, and will share your CMD HD partition table. HD-ZIP, is another method contained in a program set that has specific programs that need to be run from floppy in order to operate. This other method is able to give each zip disk it's own partition table. You can find the program set here under the name of HD-ZIP (By the way, there is lots of other useful stuff on this site too!). HD-ZIP also contains a copy of HD POWER TOOLS - which is a necessary program to set up your HD system to use an external SCSI drive for my method.

Question : Why would anyone want to do this? What are the benefits?

Good question. What would you do with an extra 100MB to 250MB in addition to a Hard Drive that has plenty of space already? Well, supposing your HD is full (maybe one of those old 40MB models), adding another drive to it will expand its capacity. A zip drive is one way to do this, and you will be able to expand your system exponentially (virtually unlimited by the number of partitions you can have - one of the drawbacks of having a CMD HD) depending on how many zip disks you have. The other good reason to have a zip drive is to back-up your CMD HD on a portable (and cheaper) media in case the HD suffers some really bad corruption or physical damage in the future - or should you want to replace the mechanism. The third good reason is that, if done properly, you can even swap zip disks between different users. You can access your zipdrive *almost* as if it were a separate drive. And the best part is that 16MB CMD Native mode partitions are now PORTABLE!

Question : Are there any drawbacks?

Unfortunately yes. This basically depends on which method you use to access your zipdrive with. However, it is possible to operate both methods at the same time! Below is a little chart to show the drawbacks of each method. Note that both methods cannot give the zipdrive it's own serial device number:

 Issue                    My method    HD-ZIP
-------------------------------------------------- |Zip disk has its own | No | Yes | |own partition table? | | | -------------------------------------------------- |Need external software | No | Yes | |to operate drive? | | | -------------------------------------------------- |Need to fill the HD with| | | |partitions first to use | Yes | No | |the zip drive? | | | -------------------------------------------------- |Able to use the HD and | | | |zipdrive at the same | Yes | No | |time? | | | -------------------------------------------------- |Need a blank zipdisk to | Yes | No | |install a zipdrive? | | | --------------------------------------------------

My method drawbacks : To install an external zip drive on your system, your HD will have to be full with partitions in the first place. If you alter the contents of the partition structure in the Hard Drive after you have the zip drive working, you risk altering the zip drive's partition structure (and "corrupting" disk data in there! So remove the zipdrive from the system before you do this!) and effectively making the zipdrive unworkable until you fix the problem. Also, since the zipdrive uses the same device number as the HD, other programs that won't allow you to flip partitions mid-program, or give you a drive channel will give you some problems. Finally, the last problem is if the partition structure of a zip disk doesn't match the partition structure you have allocated for your zip drive, you won't be able to read the disk. This problem is easily fixed however by making the partitions under zip control match those of the zipdisk. However, to do this should you need to, you will need to hang on to a blank diagnostic zipdisk for this purpose.

HD-ZIP drawbacks : You need to create a new system on each disk that you use. You will also need to continue to load a small program to flip from the HD to the zipdisk drive space. This has to be done quite a lot during disk set-up because any reset to the HD will set you back into the HD partition table. This swap program will probably have to stay on one other device permanently - because at times you need to leave the HD in configuration mode and will be unable to use the HD or zipdrive to load diagnostic programs. Apart from these issues, the biggest problem with HD-ZIP is the inability to use both drives at the same time under another program - this unfortunately includes copiers! It therefore means that you cannot copy from the HD to the zip drive unless you route the data through another device - flip to the zip drive, and copy it back. This should be no problem if you happen to have a RAMLink with 16MB in it - but not all of us do. This is unlike my method where you effectively copy from a HD controlled partition to a zipdrive controlled partition.

A personal note: Since I have used both methods, I have come to appreciate my own method as opposed to HD-ZIP. To me, the inability to copy from the HD directly to the zipdrive was enough for me to discard the HD-ZIP method. I wished to use the zipdrive to backup my Hard Drive and HD-ZIP doesn't cater for that. I don't mind that each zipdisk I use doesn't have it's own partition table. With 100MB to play with, all I needed was a few 16MB Native mode partitions that weren't pressing my HD partition system too much.

After all this talk, someone out there will question the use of an INTERNAL Zipdrive as opposed to an EXTERNAL one we are using. There is a difference if you use an INTERNAL zip drive as opposed to the external type. An INTERNAL zipdrive has to be set to SCSI device 0, and can have a system created on each disk complete with DOS and partition structure. I don't have a system like this, and this is only what I have heard about INTERNAL zip disks. Since I have only achieved attaching an external drive to a CMD HD, that is what I will be discussing. Personally, I think an external drive is better to have anyway. I wouldn't want to get a CMD HD just so I can rip out the HD mechanism already in there.

The following instructions show you how to connect a zipdrive using my own method. HD-ZIP has it's own set of instructions within the self-extracting archive it comes in. So if you are still interested in the HD-ZIP method - read no further.

INSTRUCTIONS FOR ADDING A ZIP-DRIVE

Ok then, what will we need?

A SCSI zipdrive - as far as I know, there are 100MB models and 250MB models. Personally I have the cheaper 100MB model, but the 250MB model should work just as well. You can even use zip drives made by other manufacturers other than Iomega. Just as long as they are SCSI (and NOT the Parallel model) - no problem.

Zipdisks - A bit obvious this one. You'll need them to save data onto. It doesn't matter whether you get Windows or Mac formatted ones cause we're going to be wiping their formatting over with CMD's HD DOS anyway. If you want to, you can use LLFORMAT to clean format your zipdisks and check them for bad blocks after you have added the zipdrive to the system and before you start using them. However, it is important to note that it would be wise to keep at least one intentionally BLANK zipdisk lying around in your collection AT ALL TIMES. Should you ever need to adjust the partition structure allocated to your zip drive, or reinstall the zipdrive in the HD system at a later date, a blank zipdisk is necessary to facilitate this.

An RS-232 cable - These are basically male-male cables that use the D25 pin structure on both sides of the cable. It's needed (obviously enough) to connect to the female SCSI plug on the CMD HD and the female plug on the back of the zipdrive.

CMD Hard Drive - You will need one of these to run a zipdrive. The reason is that the HD contains the SCSI controller, DOS, and support electronics that are necessary to run the zipdrive from a C64. Unlike the PC, we don't need to install any drivers in our C64 or Hard Drive! ;)

CMD Utilities - There is one program on this collection that is indispensible if you are intending to use a zip drive on your system (and have it work nicely). That program is the HD POWER TOOLS program. You will need it to edit a 1541 partition to extend it completely to cover every single last block on the Hard Drive. More on this later. Also, the FOREIGN CREATOR program is recommended if you want to fill your Hard Drive up temporarily to use the zip drive. If I remember correctly, the HD POWER TOOLS program should be available off the CMD Homepage in the "Files" section under "HD". However in the case of the "Files" section being down, you can still purchase a copy of "CMD Utilities" directly from Click here Software. I strongly recommend getting this collection for some of the other utilities as well as the ones I'm talking about. MCOMPARE for example (included on the collection) is a very useful utility to have if you are backing up your Hard Drive onto Zip disk, as it verifies the data for extra data security. HD POWER TOOLS can also be found in the HD-ZIP package, available on this website.

HD Utilities - Obviously you should have these when you got your CMD HD. The programs we will concern ourselves with are the HD-TOOLS, and ADD DRIVE programs. You may also like to use LLFORMAT to clean format any zipdisks you buy with Windows or Mac formatting on them. The program will let you select the zipdrive after you've added it, and once the format is finished, it will check the zipdisk for badblocks as well.

So lets get started:

First, plug in your zipdrive to the power and to the SCSI port on the back of the HD. While it is on, you can put your intentionally blank zipdisk in there. I mentioned before the need to have one of these at hand at all times.

As stated before, the zip drive will not work unless the HD is full to the point where it cannot create more partitions. If your HD is not already full, then fill it. If you only want to make a back up of the HD's contents, then use the FOREIGN CREATOR to fill all the space in the HD with a foreign partition.
You should ideally fill close to all the space, but leave 683 blocks at least and then create a final 1541 dummy partition that we will edit to fill the HD's space ENTIRELY in a moment.

So when you issue the @$=P command to your CMD HD to list the partition table, you should see something like this (of course, the partition numbers you choose may be different):


230 "FOREIGN PARTN."  FOR
231 "DUMMY 1541"      41
Once you have done this, you should attempt to create another partition on the system. The HD-TOOLS program will display that due to insufficient space, you can't. The program will also display the remaining blocks that couldn't be filled. WRITE THIS NUMBER DOWN AND MULTIPLY IT BY 256. The resulting number will be needed when we get to the HD POWER TOOLS program. The number is the number of bytes we will need to increase our 1541 dummy partition by to completely fill the Hard Drive so there are zero blocks left in it.

Next, we will open up the HD POWER TOOLS program and make a backup of your partition table. The reason for this is so if there are any problems, you can resurrect your HD partition table.

Just a few things to note here :

I WILL NOT BE HELD RESPONSIBLE FOR ANY DAMAGE OR CORRUPTION YOU DO TO YOUR HARD DRIVE WITH THIS PROGRAM, AND NEITHER WILL CMD.

You read the warning notices, so take caution.

Just remember this one very important point and you will not do any damage.

THE DUMMY 1541 PARTITION YOU WILL EDIT MUST BE THE LAST PARTITION THAT YOU CREATED ON THE HARD DRIVE, AND THEREFORE RESIDES AT THE HIGHEST POINT ON THE PARTITION TABLE.

Now that we have those warnings out the way, do the following. Go to the dummy 1541 partition you created. You will notice that it's size is 175104 bytes. Now, we need to change the size of the partition to completely fill every single last block on the HD. Remember the number you wrote down earlier? It was the number of bytes that we needed to fill the HD to capacity with. Simply change the partitions capacity to the sum of 175104 and the number of bytes we need to fill. Then exit the program. You can check to see that the HD is completely full by attempting to create another partition, and then being told that there are 0 blocks on the drive. THIS IS IMPORTANT. As for the dummy partition we created, it will act just like a 1541 partition. Those extra blocks we put on it cannot be used anyway. It will work as a normal 1541 partition should.

Just in case you are still confused, let me give you an example:

Let's say we filled the HD as much as possible with a foreign partition, and then left enough space to squeeze a dummy 1541 partition in there. When we tried to make another partition in HD-TOOLS, we are greeted with a message saying something like "insufficient space - 116 blocks free"

First we get 116 and multiply that by 256. That equals 29696.

When we get to HD POWER TOOLS, we notice the dummy 1541's partition size is 175104 bytes. Now we add 175104 and 29696 together. That equals 204800. We then change the size of the 1541 partition to 204800 bytes. Et voila... excuse my French.... the HD is full to zero blocks free. Check it out.


Step two. Reset your C64 and load up the ADD DRIVE program. Check out your zip drive and switch it's SCSI device number to whatever you think is approriate (5 is fine with me - well it's either 5 or 6). Also on my zipdrive, there is a switch on the back which would normally on a PC, make it invisible to the system (The "termination" switch). We want to make sure that this switch is off so that the drive IS recognized by the system, or ADD DRIVE won't be able to recognize the drive. The zipdrive comes out of the box with the switch in the ON position, so flick this switch OFF.

Next, get the ADD DRIVE program to scan the SCSI port for drives. It should then recognize the zipdrive as either a 100MB model or a 250MB model (and YES! ADD DRIVE can tell the difference!). We then ask the program to add our zip drive to the system. Then we reset our C64 and Hard drive. What the ADD DRIVE program does is add 100 or 250MB worth of blocks to our HD partition system. When we boot up HD-TOOLS the next time, we can continue to make partitions, except that the partitions will now PHYSICALLY be made on the zipdrive and not the Hard Drive.

(Previous documented methods of adding an external SCSI drive required the use of a "bridge partition" to cover the excess blocks that could not be used on the HD, but created a problem by extending into the external drive - thus making the disks incompatible should we try the disk on another system (or new Hard Drive) with a different gapsize of the bridge partition cutting into the zipdrive space. This problem is now a thing of the past, now that we can set our Hard Drives to 0 blocks at any time. Yay for us!)

At this point, you may want to use LLFORMAT to cleanly low-level format the zipdisks you have before using them. This step is completely optional. The bonus with doing this however is that you remove the old Windows or Mac formatting completely off the zip disk, and check the zip disk for any bad blocks before you start using it. LLFORMAT will allow you to select which SCSI device to format. Just make sure that you format the zipdrive and NOT your Hard Drive by accident!


The last step is to create more partitions on the system with HD-TOOLS. From here on in, the partitions you create will be entirely on the zipdisk. Since this space is being allocated under the system, ALL zip disks you use on your zipdrive will have the SAME partition structure. Therefore, choose carefully which partition types and sizes you select for ALL your zip disks. For me, I chose 6 Native mode partitions consisting of the maximum 16MB each, and 2 1541 partitions. That all managed to fit on a single 100MB zip disk. When I want to store a 1541 disk on a zipdisk, I will probably zip-pack it onto one of the zipdisk's native partitions or maybe one of the 1541 partition I created.

An essential point to remember here is that when you create the partitions for the zipdrive, A BLANK ZIPDISK MUST BE IN THE DRIVE. HD-TOOLS will format the zipdisk in the drive after you create the partitions. DON'T leave a disk with data you want to keep in the zipdrive at this point - it will be LOST. For this reason, always have a blank zipdisk at hand (I'm beginning to repeat myself a lot here) should you need to reinstall the zipdrive or change the partition structure of the zipdrive. ALWAYS keep a blank disk in your collection of zipdisks.

After the partitions have been selected and installed in the system, other zipdisks must be formatted first before they can be used. This is done simply by sending the @N (new) command to the partitions under the zipdrive.

When you issue @$=P to your CMD HD, you should now see something like the following. The below example is what my CMD partition system looks like with the 100MB Zip drive attached. There are six 16MB Native partitions and 2 1541 emulation partitions under Zipdrive control:


230 "FOREIGN PARTN."  FOR
231 "DUMMY 1541"      41
232 "ZIP PART.1"      NAT
233 "ZIP PART.2"      NAT
234 "ZIP PART.3"      NAT
235 "ZIP PART.4"      NAT
236 "ZIP PART.5"      NAT
237 "ZIP PART.6"      NAT
238 "ZIP 1541-1"      41
239 "ZIP 1541-2"      41

So that's all the details of adding the drive.

To use the drive, you simply save your data into the partitions under zipdrive control. You can just as easily load things from there in exactly the same way you would with the HD. If you have native mode partitions, you can even make subdirectories and the like. One thing that has to be taken into consideration however, is that whenever you change zip disks, the HD will have to be reset manually as well by pressing the RESET button on the CMD HD. THIS IS IMPORTANT! The reason for this is so the HD doesn't get lost. Supposing you were in two subdirectories deep in a native partition on zipdisk #1, and then you swap to zipdisk #2 only to find that the HD thought you were in a subdirectory in zipdisk #1 when the current disk doesn't even have any subdirectories made in it! Embarassing, no? If it happens you'll probably just get a SCSI error, reminding you that you need to reset the drive.

In order to back up your HD, you will first need to follow all of these steps until your HD and zipdrive partitions are all configured. Then use MCOPY to copy partitions over to the zipdrive (who needs BCOPY?). Be patient as it can take a while to copy 16MB from a native mode partition to the zipdrive. You could, of course, file copy things but you'd be there forever.......

Similarly, You can use the MCOMPARE program if you are extra sensitive about the quality of the backup. I STRONGLY recommend using the MCOMPARE program along with MCOPY if you are trying to rescue data off a dying HD mechanism which is acting erratic. I speak from expereince on that.

(MCOMPARE can be found on the CMD Utilities disk from Click Here Software)


Some things to remember:

- DON'T change the Hard Drive's partition structure (if you can avoid it). If you must change it, make sure you remove the zipdrive partitions FIRST and in the REVERSE ORDER you created them, and then use ADD DRIVE and REMOVE the Zipdrive from the system. If you leave the zipdrive and it's partitions on the system, the zipdisk in the drive will have it's data pulled down into an unreadable format as HD-TOOLS tries to rearrange the paritition system. If you ever have to adjust the Hard Drive partition structure, you will have to fill the Hard drive again TOTALLY as before, add the zip drive again, and recreate partitions for the zipdrive to use that are compatible with your disks - in that order. This is a pain, but it's absolutely necessary.

- DON'T forget to fill the HD completely so there are NO BLOCKS LEFT on it. (DON'T try the "bridge partition" method as was once suggested by CMD. Whilst it is possible to save and load things on a zip disk without filling the Hard Drive completely and leaving some space and thus dodging the need to use HD POWER TOOLS, it is very messy. If you fill the drive and then create a bridge partition to fill the gap, and then create partitions, there will be no chance of you being able to read from the zip disk again unless you have the same size drive, the same partition structure, and exactly the same block gap between the drives. This is not useful at all if you are going to back up your system onto zipdisks should your CMD HD (god forbid) blow up. Neither will it allow you to swap zipdisks with other users. Lastly, the bridge partition is useless because it straddles two devices - unlike our extended 1541 partition.)

- DO take note of what kind and size of partitions you have placed on your zipdisks . Without this, other people cannot fix their systems to read them, and more importantly, you won't know how to read them in case you need to recreate your Hard Drive. I suggest writing this info on your zipdisks' labels.

- REMEMBER, you will need a BLANK ZIPDISK in order to create partitions on the HD system that the zipdrive can use. HD-TOOLS will format the zipdisk on the creation of these partitions and DESTROY ALL DATA, so ensure there is a disk in the zipdrive and it is BLANK. Essential to have one of these around if you ever need to reattach the zipdrive.


To Summarise:

(1) Fill your HD and leave JUST ENOUGH space for a final 1541 partition. Also ensure you have enough partition slots left in the HD system to use for the zipdrive.

(2) Create the 1541 dummy partition. Then try and make another partition. Take note of the number of blocks left in the system that cannot be made into a partition. Multiply the number by 256. Write this new number down.

(3) Use the HD POWER TOOLS program to extend the 1541 partition to fill every single block in the HD. Add 175104 and the number you wrote down earlier together. The sum of these numbers is the new length you enter into the size field of the 1541 partition to created before.

(4) Ensure the "Termination" switch on the zipdrive is set to OFF. Insert your blank zipdisk. Add the zipdrive to the HD system with the ADD DRIVE program.

(5) Create more partitions on the system with HD-TOOLS that you want to use for your zip drive.

(6) Enjoy using your zip drive for whatever you want!


INSTRUCTIONS FOR USING HD-ZIP

I've included some info here on using the HD-ZIP package on the C64. I don't really like using these tools very much because it's a real pain (can't backup my CMD HD like this), but I'm sure somebody will benefit from some better explanations than are provided in the HD-ZIP manual file.

First of all you'll need the HD-ZIP package. Inside you'll find several programs and a SEQ file with instructions. You will DEFINITELY want to copy all these tools to a device OTHER than your CMD HD (such as a 15xx floppy drive, or FD drive, RAMLINK, or soemthing else). The HD will undergo lots of resets and when the ZIP drive gets used, your Hard Drive partitions will be unoperational.

When you have connected your ZipDrive to your HD (and turned termination off), you then load up LLFormat from your CMDHD utility disk, drop the HD into configuration mode (holding both swap buttons and then reset) and then a menu of SCSI devices appears on the screen.

LLFORMAT will wipe a SCSI device clean. Your CMD Hard disk will be Device 0 0, and your Zip drive will be either 5 0, or 6 0 depending on which SCSI device number your Zip drive is switched to.

So obviously, you select device 5 0, or 6 0 , but definitely NOT 0 0....

After formatting, your ZIP disk will be blank for use. Reset your HD.

What we do then is to fire up the modified "CREATE SYS" program from the HD-ZIP package. This version has been modified so that you can select the SCSI device you wish to create a new partition table on. It goes without saying that you choose the SCSI device that your ZIP-Drive in switched to. It should be the same device number you selected when you did LLFORMAT, in which case, your Zip drive will either be device 5 or 6..... and NOT device 0. In case of doubt, check the back of your Zip-drive and have a look at the SCSI device switch setting. I certainly don't want you to wipe out your Hard Drive!

The next prompt is in German "Gerteadresse der HD?". What it's asking for is the serial device number of your CMD Hard Drive unit. This number will be something from 8-30 depending what number you have selected for your CMD HD.

(NOTE: As each CMD HD has it's own SCSI controller, it is enitrely possible to have two CMD HDs and Zip drives on either one, occupying one of the drive's SCSI deivce numbers)

At this point a screen appears notifying you of the total storage space of your ZIP drive. If you are using a ZIP 100MB SCSI drive, at this point you may want to confirm that you have 196607 blocks available. A ZIP drive with larger capacities will no doubt give a number larger than this!

On the same screen, you will see "system starting block = 384". This is normal, and is the default. You shouldn't touch it. Just hit RETURN to continue.

Then you're asked if you want to clear the area below system area. This is OK, as we are not sharing the ZIP drive across different computer types (No siree... we're die-hard C64 users!). It doesn't really matter though if you wipe below system area or not.

At this point CREATE SYS will get to work. You want to ensure that you have the HD DOS file and the GEOS DOS file on your HD-ZIP work disk. They'll be called on to install a partition table to the disk in your ZIP drive. Should all go well, you'll be asked to press RESET on your CMD HD unit to continue on to the next step.

Now all the hard work is behind us... but be still have some work ahead of us before we can use the ZIP disk.

The next program we are going to introduce is the main program HD-ZIP 64, and it's all in German. (Du spechen sie Deutsch? Not me!!). First you are asked "Neue SCSI-Geraeteadresse" which is basically asking for the SCSI drive number on your HD (this will either be a 5 or 6).

Next you will see "Bitte schalten Sie den Konfigurations-modus Ihrer HD ein!". Here it is asking for you to switch your HD into Configuration mode. You do this by holding down the CMD HD's WRITE PROTECT button and then hit reset on the HD control panel.

Finally you will be asked "Konfigurationsmodus wieder abschalten?". It's asking if you want to turn the CMD HD configuration mode off. If you are going to use HD-TOOLS to create or adjust partitions on your ZIP drive, then the answer to this will be N. We will do this now, as we haven't set up the ZIP disk we just formatted yet.

Now we will load up HD-TOOLS from our CMD utility disks. When the program starts, we will get the familiar message asking us to drop our CMD HDs into configuration mode. Since we just did this, we can ignore the message and continue to the main menu.

Now you will notice that the ZIP drive spins and pressing "3" to view the partition table will show you that it is empty. You can now use HD-TOOLS as you see fit to create partitions on your ZIP disk. Great, hey?

When you have finished working on your ZIP drive, you will have to reset your CMD HD again. (All this resetting is getting as bad as installing Windows is on PC!)

To use our ZIP drive, we now have to use the main HD-ZIP program again (yes, the all German one). Load it up, and select your ZIP drive's SCSI device number again. Once again, drop your CMD HD into configuration mode with the CMD HD front panel. This time you will press J (German for "Ja!") to switch off configuration mode and let you use the ZIP disk as a normal drive.

Phew! It's all a bit much... but you will have to go through this HD-ZIP program procedure every time you want to use the ZIP drive. You will also need to do it every time after the CMD HD drive is reset.

Now you can use the ZIP drive much like the CMD HD. However, note that you cannot actually copy anything to your Zip drive from the CMD HD. You will not be able to use both drives at the same time unfortunately. You will also need to keep the HD-ZIP tools handy on a spare disk when you need to change drives over.

So there you have it!


Back to the main page

Hosted by www.Geocities.ws

1