C64 OS USER'S GUIDE

Chapter 2: Installation

Advanced set up for IDE64

This subsection of Chapter 2: Installation, discusses more advanced topics for configuring a physical IDE64, partitioning a compact flash card, and transferring C64 OS installation files to the IDE64.

Topics covered

  • Download firmware and utilities
  • Install firmware update
  • Partition and format media
  • Transfer files over PCLink

Depending on the current firmware and storage device configuration, it may not be necessary to perform all of the steps below. However, they are documented for your convenience.

See import resource links found at the bottom of this page.


Download firmware and utilities

The latest stable firmware, which is fully supported by C64 OS, is IDEDOS 0.90. If your IDE64 is currently using the IDEDOS v0.90 or later, you can skip this step (downloading the firmware) and the next (installing the firmware).

Configure

Go to the IDEDOS Download System webpage. There are several sections, each section provides options for compatibility with your specific IDE64 hardware and other hardware on the same Commodore 64 that it will be used with.

IDEDOS - Target System.
IDEDOS - Target System

Choose whether your IDE64 should be compatible with stock C64/C128 or with a SuperCPU. Older hardware, IDE64 versions less than v4, can only support one mode or the other at a time. The v4 and newer hardware has a larger PEROM capable of supporting both stock and SuperCPU at the same time. Only choose "Both Systems" if you have the IDE64 v4 or newer hardware.

If you do not have a SuperCPU or do not plan to use IDE64 with a SuperCPU, it is always safe to choose the first option, "C64 or C128."

IDEDOS - Cartridge Version.
IDEDOS - Cartridge Version

Choose the cartridge version, i.e., the version of IDE64 hardware, that this firmware will be installed on. All versions going back to v2.1 support the latest IDEDOS, but there are some minor variations in the hardware that the IDEDOS needs to handle.

The version of the hardware is printed on the circuit board.

IDEDOS - Speeder System.
IDEDOS - Speeder System

Choosing JiffyDOS is recommended for the disk drive speeder system. If you are using IDE64 with any other storage device on the IEC bus that supports JiffyDOS, access to that device will be accelerated. This includes a CMD HD, CMD FD, SD2IEC, or any of the legacy Commodore disk drives, if it has been updated to a JiffyDOS drive ROM.

If you use DophinDOS and a drive with a parallel cable you can choose DolphinDOS instead.

IDEDOS - PCLink.
IDEDOS - PCLink

PCLink is a convenient technology built into IDE64 to allow it to transfer large files from a Mac or PC running a special PCLink server program. How to set up PCLink is described in a section below.

PCLink is able to function over a large number of physical connections. These include: X1541 cables and their variations for connections between the C64's IEC bus and a PC's parallel or other port. PC64 is a special cable that connects a PC's parallel port to the C64's user port. DUART, SwiftLink and Turbo232 are each different highspeed RS232 serial adapters for connecting the C64 to a PC via an RS232 null-modem cable. (E)TFE, RR-Net, and ETH64/ETH64 II are each types of ethernet adapters for connecting the C64 to a PC or Mac via a crossover ethernet cable. Lastly, USB is an option available for IDE64 v4 hardware which includes a USB port. Earlier versions of IDE64 hardware may also use this option via a USB ShortBus card.

If you want to use PCLink for transferring files (including files much larger than a typical disk or disk image), choose the option suitable for the type of transport hardware you have available. USB is the easiest, if you have v4 hardware you should almost certainly choose this option. The instructions for PCLink below discuss configuration with an ETH64 card and a crossover ethernet cable.

IDEDOS - Misc Options.
IDEDOS - Misc Options

Under miscellaneous options, if you have a second SID chip installed in your C64, specify the base address where it is found. This option is used to allow IDE64 to mute the SID chip if STOP+RESTORE is used.

If you will be using your IDE64 with an ATAPI CD-ROM drive, you can choose how filename extensions are mapped to pseudo-CBMFS file types. It is recommended to check this option on.

Since these instructions are for physical IDE64 hardware, be sure to uncheck (i.e., do not select) the option to download as a .CRT file for VICE. Alternative instructions for IDE64 in VICE are found under Chapter 2. Installation → Installation on VICE → Advanced IDE64.

Download

Click the "Download PEROM" button to download a .ZIP package containing a readme, a note and some other text files, and the configured PEROM file. Another .ZIP package is also found inside the first that contains the IDE64 utility programs that run on the C64.

Install firmware update

After you have downloaded and extracted the .ZIP packages from the IDEDOS download system, described above, you will have either a 64KB ROM or a 128KB ROM depending on whether you chose C64 or C128, or SuperCPU, or both. The both option results in a 128KB rom because it includes both of the 64KB ROMs for stock and SuperCPU. In either case the rom file ends with a .rom extension.

By default, the .rom file has a name with more than 16-characters. The name includes date and some other information. In order to make the file easy to reference on the C64, change the name of the file to just "idedos.rom"

If your IDE64 is not currently functional, which is, afterall probably why you are updating its PEROM, then it will be necessary to use some other means of transferring the ROM file and utilities from your Mac or PC to your C64. If you have the ability to copy files to a 1541 disk, such as via X1541 and Star Commander, or via ZoomFloppy, or in a Disk Image via Ultimate 64 or 1541 Ultimate II+, the ROM file and utilities should all fit on a single 1541 disk side. If they do not, you can omit the text files (cfsfsck8b,txt and/or perom 2.0a,txt) as these files can be read from your Mac or PC and do not need to be transferred to the C64.

Alternatively, if you have an SD2IEC, you can put the ROM file and utilities into a subdirectory on an SD Card and move the SD Card to the SD2IEC drive on your C64.

Run PEROM 2.0a

For full details on how to use the PEROM programmer there is a help text file included with the utilities that came with the download of the IDEDOS rom. "perom 2.0a,txt" is an ASCII text file (i.e., not PETSCII). The comma before the extension (rather than a period) is an idiosyncratic naming convention of the IDE64. It forces the CBM file type to appear as TXT, as opposed to SEQ which the file's type actually is.1

As mentioned above, you can omit the "perom 2.0a,txt" to save space on a 1541 disk. Instead just rename the file so it has a proper .txt entension (i.e., perom 2.0a.txt) and then the file can easily be opened and read on a Mac or PC.

Updating the firmware on IDE64 is easy. Even if you make a mistake and write the wrong firmware, or a firmware is only partially written due to a power failure or other problem, IDE64 is always able to have the firmware written again.

Connect the IDE64 to your C64 and power up the computer. (If you have a SuperCPU, it is not necessary to remove it, but it is best to disable it during the firmware update.) On older versions of the IDE64 hardware there are two square pads near the large lattice chip, on newer versions of the hardare the pads have been replaced by a pair of pins. Temporarily bridge the two pads with something conductive like the tip of a screw driver (or put a jumper on the pins) and press the IDE64's reset button. The LED should now be flashing to indicate it is in firmware update mode. If the LED is solid, try this procedure again. Once the LED is flashing you no longer need to keep the pads bridged. If your hardware has pins you should now remove the jumper.

Load and run the program "perom 2.0a" from the other storage device (1541, SD2IEC, etc.)

PEROM Programmer - main menu.
PEROM Programmer - main menu

You may optionally save the current contents of the PEROM to a file on disk, but this is not necessary. It is also not necessary to erase the PEROM before overwriting it with a new firmware. Use the cursor keys and the RETURN key to select "update from disk."

If you are not in PEROM programming mode (i.e., the LED is solid instead of blinking) you will get a screen similar to the following, indicating that it cannot find a writable PEROM chip.

PEROM Programmer - error - not in programming mode.
PEROM Programmer - error - not in programming mode

Otherwise, it will ask for a drive number. Enter the device number of the storage device where the ROM file is found. Typically 8, but may be some other device number, such as 9 or 10, etc. Next it asks for the filename of the ROM. Enter the complete filename, including the .rom extension.

PEROM Programmer - specify ROM filename.
PEROM Programmer - specify ROM filename

It then begins to write the specified ROM file to the hardware PEROM chip. This takes some time, but you see a visualization of its progress as it writes one block at a time.

PEROM Programmer - writing ROM file to PEROM chip.
PEROM Programmer - writing ROM file to PEROM chip

As it proceeds the hash-character, which represents the blocks it hasn't reached yet, should be replaced by either a solid blue block or a checkmark, depending on whether the contents of the block changed. If any of the blocks show as an "x" this indicates an error has occurred writing that block, and the whole procedure should be attempted again to make certain that the IDE64's firmware is in a known, good, and stable condition.

PEROM Programmer - PEROM chip successfully updated.
PEROM Programmer - PEROM chip successfully updated

When the firmware update is complete, there should be no "x"'s in any of the blocks. And it displays the message, "update successful." Press SPACE or any other key to return to the PEROM Programmer's main menu. Use the CURSOR keys and the RETURN key to select the last menu option "Leave PEROM Programmer".

You are returned to the READY prompt, and your IDE64 should be fully up to date. You may wish to power cycle the computer to confirm and see the IDE64's standard powerup screen. Turn off the C64, wait 5 seconds, turn the C64 back on. The IDE64's boot screen should appear and options (depending on what you chose from the IDEDOS download system) should be listed.

Partition and format media

The IDEDOS which runs on IDE64 uses its own native file system called CFS. If you are using an IDE hard drive or a Compact Flash (CF) card which you have never used with before with IDE64 it is necessary to first create one or more partitions on the physical media.

Partitioning Destroys Existing Content

Creating CFS partitions on media that has never been used with IDE64 before typically destroys the existing content. Make certain that you backup any content already on the media that you do not want to lose.2

If you have previously partitioned the media with one or more CFS partitions, you can modify properties of those partitions and create additional partitions without losing the ones that already exist. It is necessary, however, to be very careful while using the partitioning utility so as not to remove or damage existing CFS partitions.

Managing partitions cannot be performed with commands from the READY prompt. Instead you must use the partitioning utility that is included alongside the PEROM programmer utility in the firmware download from the IDEDOS download system.

The utility is called: cfsfdisk12b,prg If you transfer this program to your C64 via some media that is not an IDE64, such as on a 1541 disk or disk image, or some other device such as an SD2IEC, the ",prg" ending can be removed from the filename.

Before CFSfdisk can be used you must enable "direct write" mode on the IDE64. To enter IDE64's built-in CMOS Setup Utility, hold the back arrow key (top left of C64 keyboard) and press RESTORE. (This can sometimes be difficult to accomplish on VICE, especially TheC64 mini.) Use the CURSOR keys and RETURN key enter the standard setup screen, then move the selection about midway down to "Direct write." Use the PLUS and MINUS keys (+/-) to toggle the value from Disabled to Enabled.

Press the COMMODORE key to save and the STOP key to return to the previous screen. Use the CURSOR keys to move the selection to Save & Exit, press RETURN to save the changes and return to the READY prompt.

CMOS Setup Utility - Main Menu Screen. CMOS Setup Utility - Standard Setup Screen.

Load and run the cfsfdisk utility from whatever other storage device it is available from. The name of this utility comes from fdisk, a "fixed disk setup program" originally provided by IBM for the IBM PC/XT in 1983, and later provided by Microsoft as part of MS-DOS. The IDE64 version for C64 is called CFSfdisk because it creates and manages the CFS partitions used by IDE64.

CFSfdisk uses a bitmapped screen to produce a fake 80-column display. A sharp monitor is a benefit for reading the narrow text.

CFSfdisk - Introductory Screen.
CFSfdisk - Introductory Screen

CFSfdisk starts by asking you for the IDE64's "drive number", this is the C64 device number. Where a 1541 disk drive is typically device 8, IDE64 is typically device 12, although this can be changed. Press RETURN to accept the default of 12, and proceed.

Use the "m" command to view a help menu. Type "m" and press RETURN. A number of additional single letter commands are listed.

CFSfdisk - Help Menu.
CFSfdisk - Help Menu

Each storage device connected to the IDE64's IDE bus can be assigned an independent C64 device number. The built-in Compact Flash card is the first IDE controller's master device, and typically this is assigned as the C64's device 12. The following assumes that these defaults are being used.

You can list the current partition table using the "p" command (print the partition table.) On a new card, there will initially be no partitions. Create a new partition using the "n" command. It asks for a partition number, the default for the first partition is 1 and this should be accepted by pressing RETURN.

Next is a starting block position on the physical medium. For the simple configuration (i.e., not sharing this physical device with multiple computers and multiple partition tables) the default value should be accepted by pressing RETURN.

Next it asks you how much space this partition should use. There are multiple ways to express the space it should use. The recommended C64 OS configuration is a minimum of 2 partitions. How large each partition should be depends on how much total space is available on the physical medium. In this example, let us suppose that the Compact Flash card is 256 MB. It would be reasonable to have two partitions that are ~128 MB each. This can be expressed by entering +128M and pressing RETURN.

Finally it asks for the new partition's name. This name appears in the partition directory. The recommended C64 OS configuration is for partition 1 to be called "c64os" (or something similarly identifying it as the C64 OS system partition), and for the second partition to be named something else, in this example the second partition is named "general".

CFSfdisk - Partition Table.
CFSfdisk - Partition Table

After creating the two partitions, using the "p" command reveals the screen above. The asterisk listed under the Flags column beside partition 1 indicates that this is the default current partition. If you change partitions, then after a fresh power up or a reset the current partition is reverted to this default.

You may choose to set a global disk label for the physical medium. This is a name for the whole Compact Flash card. Set this using the "g" command, for global disklabel.

Changes made to the partition table have not yet been committed to the physical medium. To make the partition table changes permanent use the "w" command, write changes to disk. Confirm that you really want to make these changes by typing "y" and pressing RETURN. When the partitions have been created you are instructed to power off the computer. Wait 5 seconds and power the computer on again.

If everything worked correctly, pressing the F3 key to list a directory should show the empty contents of the root directory of the default current partition, partition 1. From the READY prompt, issue the following command:

@$=p

This should list the IDE64's partition directory, and you see the two partitions (or however many were created.) More advanced options for partitioning the IDE64 and configuring special flags and options can be found in the IDE64 User's Guide.


Transfer files over PCLink

In this final section of the guide for advanced installation using IDE64, configuration and basic use of PCLink and the ideservd program is discussed.

PCLink is a convenient means of quickly and easily transfering large files from a Mac or PC directly to your IDE64. PCLink is available over multiple physical connections, as was discussed briefly in the Download firmware and utilities section above. Using PCLink is optional. If you have preferred alternative means of transfering files to your IDE64 you can use that instead. For example, if you have an SD2IEC device in addition to an IDE64, but you prefer to install C64 OS to the IDE64 for its speed advantages, you can use the SD2IEC to make the installation files available. PCLink, when configure, appears to the C64 as another standard device number. Whether you configure PCLink or use an SD2IEC, the instructions below can be used to make use of the filecopy tool available from the important resource links at the bottom of this page.

Download and compile ideservd

ideservd is a small server program which is run on a Mac or PC. It provides the PCLink firmware running on IDE64, on the C64, access to a directory of files stored on the Mac or PC's native file system.

In the important resource links below is a link to the IDE64 Downloads page. This is page that provides downloads for documentation, tools, utilities and such to support IDE64. Under the SW Tools for IDE64 section, there is a download PCLink Latest. Click to download this to a Mac or PC. And unzip the package. It contains an ideservd.exe executable command line program pre-compiled for Windows. It also contains source code for other platforms such as linux or macOS.

To compile for macOS, open the Terminal application and change to the src directory.

Change to a directory with macOS

Type "cd " (mind the space) but do not press RETURN yet.

Drag the "src" folder that is in the unzipped contents from the Finder onto the Terminal window. This copies the folder path to the Terminal, following the "cd" (change directory) command.

Then press RETURN on that command, and the shell running in the Terminal will be taken to the ideservd's src directory.

Type "make" and press return. You may have to have XCode installed, which is available as a free download from the Mac App Store. If you have XCode installed already, it may ask you to confirm the license agreement. Follow the instructions it provides. After the license has been agreed to, run the "make" command again.

Wait for the compilation process to finish, it may take 30 seconds to a minute to complete. When it finishes you are returned to the shell prompt in the Terminal and a new executable program called "ideservd" appears in the src directory.

ideservd is a command line program, so you need to run it from the Terminal in macOS or from the Command Prompt in Windows. Each time you want to run it, from a new command line, change to the directory where the ideservd executable program is found.

ideservd supports all of the many different physical transport layers that PCLink supports. Below are instructions for how to use ideservd using two different PCLink physical transport layers, USB and Ethernet. Which transport layer you choose depends on what hardware you have available. Additional transport layers are available, but are not documented here.

Using ideservd over USB

IDE64's firmware only supports one PCLink physical transport layer at a time. If you have an IDE64 v4.x device and want to use PCLink over USB, you must also have chosen the USB option for PCLink during the firmware download and installation instructions given above. When your IDE64 v4.x device has the USB-PCLink firmware option installed, you can connect a USB cable between a USB port on your PC/Mac and the small USB port on the side of the IDE64 v4.x cartridge.

By default, ideservd attempts to serve PCLink over USB. Simply type "ideservd" and press RETURN. ideservd should start running and by default serves the current directory.

From the C64, the PCLink device (configured for device #14 by default) suddenly becomes available. With JiffyDOS, on the C64, hold the CONTROL key and press "d" to cycle through the detected storage devices and set the current storage device. Device #14 should be in that list. If it is, load and list a directory from device 14, to see the list of files that are stored in the served directory from the Mac or PC.

See below for additional options that can be configured for ideservd.

Using ideservd over ethernet

If you have one of the available ethernet cards, and you configure PCLink's firmware with the appropriate ethernet option, you can use a cross-over ethernet cable directly between your Mac/PC and the ethernet port on your C64.

There are many options, too many to document every possible hardware combination. The following is an example of the steps required to make PCLink work over ethernet, using an IDE64 v3.4+ (which doesn't have the built-in USB port) and an ETH64 shortbus card. (The ETH64II card can only be used on the IDE64 v4.x, and connects via the clockport.)

First the "ETH64/ETH64 II Ethernet" has to be selected when downloading the IDE64 firmware. The ETH64 card must be connected to the IDE64's shortbus with an appropriate ribbon cable. Making absolutely sure that the orientation of the cable is correct. See the photo below as reference for the correct orientation of the ribbon cable.

ETH64 card connected to shortbus.
ETH64 card connected to shortbus

Additionally, there are two small jumpers on the ETH64 card. One of them optional joins two pins and the other selects which set of two out of three pins are connected. See the photo below as a reference for how to set the jumpers.

The jumper within the red square should be closed. The jumper circled in yellow controls the address where the ETH64 I/O chips appear. The pins are not labeled on the PCB, so use the photo as a reference for which pins the jumper should connect.

ETH64 card jumper configuration.
ETH64 card jumper configuration

The ethernet packet routing of PCLink is limited. Do not connect ETH64 to a router to which your Mac or PC is also connected either wired or wireless. The Mac/PC and the ETH64 must be connected directly to one another using a "cross-over" ethernet cable. A cross-over cable, which is less common than a "straight" ethernet cable, crosses the transmit and receive lines similar to an RS-232 null-modem cable.

The Mac/PC networking layer needs to know what MAC address (the hardware address of the ethernet chip) is associated with a given IP address. This is typically negociated automatically in software using ARP, or Address Resolution Protocol. Each computer maintains a table that associates IP addresses to the MAC addresses of the ethernet adapters. You can create an entry in the Mac or PC's ARP tables manually using the "arp" command to associate any IP address you choose to the fixed MAC address of the ETH64 card.

Issue the following command in macOS or Linux (the command may be different on Windows.) The command requires root privileges and must be run using the sudo command, which requires you to enter an administrative password.

sudo arp -s 192.168.0.64 49:44:45:36:34:00

The 192.168.0.64 is a local IP address of our choosing that we want to use to connect to the IDE64/ETH64. The 49:44:45:36:34:00 is the MAC address (MAC stands for medium access control, and is the phyical ethernet hardware address) of the ETH64 ethernet controller chip. The ARP command associates these two together on the Mac or PC on which the command is run, and the association is temporary. If you do not use PCLink over ethernet for some time, the ARP table entry expires and is removed automatically. If that happens, the above arp command has to be run again to re-establish the association.

To run ideservd configured to use PCLink over ethernet, type the following command and press RETURN. ideservd should start running and by default serves the current directory.

sudo ideservd -i 192.168.0.64 --network=0x00

From the C64, the PCLink device (configured for device #14 by default) suddenly becomes available. With JiffyDOS, on the C64, hold the CONTROL key and press "d" to cycle through the detected storage devices and set the current storage device. Device #14 should be in that list. If it is, load and list a directory from device 14, to see the list of files that are stored in the served directory from the Mac or PC.

See below for additional options that can be configured for ideservd.

Additional options for ideservd

To see all of the options type "ideservd -help" and press RETURN.

There are a few important options that can be configured when running ideservd. Using the -P or --allprg option is recommended, so that the C64 sees all of the files provided by the PCLink device as PRG-type files.

The -r option allows you to specify an alternative directory to serve to the IDE64, rather than the current directory.

The -l option can be used to specify a log file of accesses that the IDE64 makes over PCLink.

The -b option can be used to put ideservd into the background. This allows you to close the Terminal or Command Prompt window and ideservd continues to run.

Filecopy to transfer files to IDE64

The easiest way to transfer the C64 OS installation files over PCLink to the IDE64 is to copy the 4 installation files, plus the filecopy tool, into the same directory where ideservd was compiled. This way, you are not required to specify an alternative root directory, you can just run ideservd and the files in the same directory are made available over PCLink.

The filecopy tool is linked below under Important Resource Links. This tool is provided by OpCoders Inc. to make it easy to copy a file between any two C64 devices. No device detection is attempted, no special commands are required, and it is therefore a universal single-file two-drive file copier. Download filecopy and put it in the same directory as ideservd.

Take the four C64 OS installation files from the system SD Card, or from a backup of the system card that you have made, and put them in the same directory as ideservd.

  • filecopy
  • c64os
  • c64os setup
  • restore.car
  • c64restore

Filecopy can be loaded and run directly from the PCLink device. The following assumes that the IDE64 device numbers are their defaults, the primary IDE64 device number is 12, and the PCLink device number is 14. Set the current partition number of the primary IDE64 device to the partition to which you want to install C64 OS, and make sure that current partition's current directory is the root directory.

Load and run filecopy from the PCLink device:

load"filecopy",14
run
filecopy tool.
filecopy tool

Filecopy only copies one file at a time. It asks 4 questions. Source device #, target device #, filename, and lastly, target file type, PRG or SEQ. It then copies the file and returns to the READY prompt. Filecopy is still in memory, and you can copy the next file by typing "run" and pressing RETURN to run filecopy again.

Run filecopy 4 times, to copy each of the 4 C64 OS installation files to the primary IDE64 device. When it asks for the source device #, enter 14. When it asks for the target device #, enter 12. Enter each of the 4 filenames, once per run of filecopy, and choose "p" for PRG for each of the file types. restore.car may optionally be copied as a SEQ file, but the others must be copied as PRG type files.

Note that restore.car is, by Commodore 64 standards, a very large file. It is over 3000 blocks. It is expected that copying this file will take several minutes. Do not interrupt the process, but allow it to run to completion. If it is still running after 20 to 30 minutes, it is possible that something has gone wrong.

Final Installation

The C64 OS Installation files are now successfully installed on your IDE64 device. You may now proceed with the standard C64 OS installation process as documented in Chapter 2. Installation → Installation on IDE64.


Important Resource Links for IDE64 Configuration

A configurable copy of the IDEDOS firmware can be downloaded from the IDEDOS download system. Each download includes a copy of IDE64 utilities which can be transferred to your C64 via a 1541 disk or SD Card.

http://singularcrew.hu/idedos/compile.php

IDE64 tools, utilities, user's guide, other documentation, plugins, and other cross-platform programs to support and work with IDE64 can be found on the IDE64 Download page. The PCLink (ideservd) software is available on this page.

http://www.ide64.org/down.html

You will need to copy the C64 OS installation files to the IDE64. The easiest way to do this is with the FileCopy tool by OpCoders Inc. It is available from the C64 OS Software Releases page, or you can directly download it here:

https://s3.amazonaws.com/com.c64os.resources/c64os/software_installs/filecopy


Next Chapter: Configuration and Settings

  1. This was an unfortunate design decision on behalf of the IDE64 team. CBM file types are already confusing for people, it is best not to mix them up with filename extensions. []
  2. It is possible to share the media between two different computers with two different partitioning schemes. However, this is beyond the scope of this document. Refer to the IDE64 User's Guide for advanced configuration. []

Table of Contents



This document is subject to revision updates.

Last modified: Jan 17, 2024