Introduction

Note: These series of articles was originally posted in October 2014.

The 1541 Ultimate II (UII from now on) is a device for your Commodore 64/128/SX, and it enables you to use Micro-SD cards and other USB devices (sticks, disk drives) with your classic micro computer. But it can do a LOT more, which will become more clear with a series of posts.

I love this device but the documentation for it is not complete and outdated, so I decided to play around with it and see what kind of functions and features I can get running (or not) and document those. These posts will be updated if and when I receive new information or find additional problems/solutions.

Here is an index of the chapters in this post:

Hardware

This first part is about using the UII on different CBM machines and hardware combinations. Later posts will be about functionality.

Note

Use the most recent version of the firmware, unless it breaks something important you want to use. I am running the 2.6k firmware which is the latest at this moment (oct 2014).

Firmware updates can be downloaded from the official site.

Updating the device is easy:  you put the downloaded update.bin file in the root of your SD card and turn on your computer. The UII will reset and it will run the update tool. Putting the update file on a USB device will not work, you must use the SD card.

C64

The UII was made for the C64 and it shows. The device works flawlessly.

C128

I do not own a standard C128 (an issue I will have to solve soon) so I was unable to test scenario’s on a C128.  Reading about it on the internet suggests there are no real problems with using a C128.

There are some differences though. Using a UII on a C128 has some disadvantages because the UII does not support certain features. These are:

  • 80 column mode: You cannot see the UII menu when in 80 column mode. Go back to 40 columns, and return to 80 columns when you are done.
  • *.PRG direct load: Loading a .PRG directly from the UII is not working. If you do this the C128 will go into C64 mode and try to run the program. You must mount the disk files and load your files from there.

If the C128 goes into C64 mode when turned on you must disable any C64 cartridge image: enter the UII and press F2, select the option ‘C64 and cartridge settings’, select the ‘Cartridge’ option, press ENTER and select ‘none’.

C128D

In addition to the changes described above, the C128D has a built in floppy drive located on device ID 8, and there are bound to be some troubles.

Insert and connect the UII in your C128D, and turn it on. This may result in not getting a READY prompt. Resetting the C128D again with the reset button does give a READY prompt though.

The device ID for the built-in 1571 drive is 8, but that is also the ID of the virtual drive in the UII. There are people who disconnect the physical drive by cutting wires etc. I shudder at the thought of doing that, so I set the UII device ID to 9 and 10. To do this, press F2 and go to the option ‘1541 Drive A settings’, then set ‘1541 Drive Bus ID’ to the appropriate value. Do the same for Drive B, or disable it.

Using drive id 9 or 10 can cause some problems with disk based multi-load programs as these expect 8 or 9. This can be solved by giving the built in drive a higher device number, and then using id 8 and 9 for the UII virtual drives.

How to do this. First, assign device number 11 to the built in drive by entering the following commands:

OPEN 15,8,15
PRINT#15,"U0>"+CHR$(11)
CLOSE 15

You can now set the first UII drive to id 8. This will also re-enable the use of the default C128D drive commands, like DIRECTORYDLOAD, etc. This change is of course temporary. The internal drive will be number 8 again after a restart or reset of the machine.

You may also have problems when loading or mounting disks. This often happens because of a timing setting in the UII. There are two settings in the ‘C64 and cartridge settings’ menu that might need adjusting. I use 100ns for the setting ‘CPU Addr valid after PHI2’, and ‘PHI2 edge recovery’ is set to Enabled.

Considering all these issues and work-arounds I suggest you use a Commodore 64 or 128 (minus the D) with the UII: it just is not worth the hassle. Still, it IS possible to use the cartridge on a 128D.

SX-64

I personally have small issues when using the cartridge in my SX-64.

There are issues, and mostly these are about the same issues as reported under the C128D section: timing settings and the internal drive. You can play around with those settings when you experience problems, with one exception: you cannot change the internal floppy drive ID as you can with the 128D, unless you open up your SX-64 and modify the hardware. I’ve been working with the UII on the SX-64 for a bit and of course the UII works great as drive 9, but multi-load games and demos suffer. The UII drive WILL work as drive 8, but the internal disk drive will be in a constant error state as they will be in conflict, but loading files DOES work.

I’ve read that early SX-64’s were not able to use the REU (RAM Expansion Unit) cartridge by CBM. Later models were able to, as of serial number GA4. As the UII has REU functionality this may or may not be a problem for you.

The SX-64 also does not have a cassette port. So if you want to make TAP files using your own tapes, you are out of luck with the SX-64.

Again, as the SX-64 is basically a C64, use that instead for your tinkering.  As with the C128D you can disconnect the internal drive. I don’t like to modify the hardware though so I just use my C64. Those are cheap you know, unlike my SX-64 :)

Conclusion

It shows that the UII was initially made for the C64. It can be used on different hardware of the same family but not without small quirks and some issues.  My advice is to use a C64 for your general use, and only use the other machines if you REALLY have to (or have no other hardware of course)

File Management

The UII primarily uses a micro-sd card for storage. Getting files from your PC to the UII involves inserting and removing the card from the cartridge. There is also a USB port on the UII and this can be used with USB sticks and drives. So the sane thing to do is to use the SD card for the static files (like game and audio collections) and to use the USB port for moving stuff to and from the PC.

There is currently no native way to copy from the USB to the SD card using the UII. Copying can be done on a PC but this can become quite annoying especially because the micro-sd cart is small and the UII slot is not perfect either.

But help has arrived. The first version of a file manager has been released to the scene by LFT. It’s ye olde directory opus, but tailored for the UII, hence u-opus.  You can find the progam here: http://csdb.dk/release/?id=133734.

You must enable the Ultimate Command Interface in the UII settings (press F2) because this c64 program is talking to the UII through this interface. So, start transferring and copying. This program is a huge timesaver.

Although you can use high capacity SD cards, do not place all files in a single directory. It will take ages to load the directory or navigate through it on your trusty old c64. So, break up your directory in sub-directories. You can create directories with the UII by pressing F5 to get into the action menu.

I hope a future version of u-opus will allow the creation of folders and the movement of files. There is no reason it should not. :)

File Types

There are a number of files used with the UII:

  • d64: This is a 1541 floppy disk image
  • g64: a RAW representation of a floppy disk. 
  • t64: Tape file image
  • sid: SID music file
  • bin: UII firmware update file

If you want more technical information, this site is an excellent reference. But as a user there really is no need to get into this.

Let’s get into each file type and check out the possible uses.

d64: The most versatile image for use with the UII. You can browse through these images without first mounting them and select individual files to run by pressing the right arrow when on a d64 file. Running a file will bypass normal 1541 operations and the file will be instantly moved into memory and run. You can also ‘mount & run’ the file which will mount the disk and then issue a normal load command.

g64: These are mainly used for software which makes use of non-standard file formats, like capture cartridges or copy software. You can only mount these image files, not browse through them in the UII. After mounting load the directory by using LOAD "*",8. Don’t use g64 files if you don’t have to, there is no advantage otherwise.

t64: Images of file (or files) loaded from tape. You can only load and run the content of these files as there is, of course, nothing else associated with these files. Loading and running is, like with d64 files, instant.

sid: Great fun! Select a .sid file to start the UII SID player. If the tune has sub-tunes you can select it and play those.  Make sure you use a UII firmware which has the player activated. Check out the UII website for the firmware descriptions. I currently use the 2.6k drive+audio firmware.

bin: The firmware update file must be placed in the root directory of the SD card. Using the USB port for this will not work, even though there is an option in the USB settings to allow boot from image files from the USB port.

Creating disk images with the UII

Maybe you like to program on your C64 and you need a place to store source code files, or you want to create a floppy to save all your high score files on.

You can create new d64 and g64 files with the UII. Press F5 to open the UII Action menu and select ‘Create D64’ or Create D64’. Type in the name of your new file. The name of the file will also be the label of the floppy directory.

Note

The Action menu is dynamic, so make sure you are positioned on a location where you can actually create files, otherwise the option will not show up.

Conclusion

The files mentioned in this post are the ones you will work with the most, so it’s good to know what each file is for and capable of. That’s it for now. This post will be updated when I found out more about these files and their uses.

Software

For those of you who were not around in ye olde days of the 1980’s: there was a LOT of software released for the C64/C128.  You can find d64 files all over the net. Still, that will be a lot of work and if you do not know what the good games or SIDs are you are not going to find the right ones.

So this part is about getting a collection of C64 software and music onto your UII as fast as possible, and in a way that will make you enjoy using your UII.

The easiest thing to do is to download all the stuff at once, and then find the cool stuff by going to review sites so that is what we are going to do.

Gathering The Goods

Music

One word (or acronym): H.V.S.C. These folks gather all known SID files into a large archive for all of us to download. As the UII has a built-in SID player, this is great for us.

The archive can be obtained from their website: http://www.hvsc.c64.org/

Software (read: Games)

The best thing to do is to download Gamebase64, their website is here. Although the front end tools are downloadable from the website, the actual c64 software is not! Luckily, there are torrent seeds for this collection. You can find it easily if you know how to use Google. The full package contains 4 ISO files, and the latest version is V12 (as of October 2014)

Demos

The C64 is famous for kick-starting the demo scene. Even today, demos are released which push the boundaries of the C64 capabilities. Some of these demos have to be seen and heard to be believed. The best resource for demos is the CSDB (Commodore 64 Scene DataBase) which can be found here.  The menu on the right side of that page shows the best demos, most recent demos and the best coders.  Grab some of these demos and be amazed.

Organizing

You could copy the base folders of HVSC and GB64 to your SD card, but it would look awful on the UII, and the directories contain a lot of files so browsing the content will take ages. Luckily there is a tool which was made especially for this problem. It will scan the game and music folders, reformat the names and folder organisation and output all of this to a new location. The tool is called Gamebase 64 Reorganizer SD. You can find it here: http://www.obliterator918.com/gamebase-64-reorganizer-sd/.

After starting the tool, you will see a screen like this. I have already selected the base folder of my gamebase collection and of HVSC. Pressing GO! will start outputting to my selected output folder.

This is the result of re-organising Gamebase64 and HVSC on my computer:

That’s a lot of games and music. And I drank a cup of coffee while all this was being done for me. Excellent. All that is left is copy the output folder to the SD card and fire up the UII. Copying WILL take a long time, so hang on.

Note

The music files will be placed in the corresponding game folder. This may not be what you want. In that case, do not include the HVSC in the tool selection, and copy the music folders to the SD card. This may be the better option if you are composer/demo focused and not game focused.

This is what it finally looks like on the UII:

So nice, and you won’t have to touch these folders again for a long long time. I hope you can use this as a guideline to organising your collection.

Floppy Copy

This time we discuss the wonderful world of disk swapping!! Oh, the memories.

One of the great things of the UII is that you can use it to copy your old 5 1/4 floppies to d64 files. You can also copy tape files to t64 files, but that will have to wait for a later post when I get some decent tapes to play around with.

Hardware Setup

This is the setup I use:

My 1541-II is attached to the serial port and has been set to device id 9. The UII is attached to the INTERFACE port of the 1541. You can change the device to 9 by setting the jumper on the back of the disk drive. Here’s a quick snap of mine:

So, left switch down and right switch up. Refer to the manual of your drive to see how to change the ID. If you cannot change the ID of your drive to 9 then you can change the ID of the UII drive to 9, and reverse all numbers 8 and 9 in the rest of this post. :)

Note

If you do own an SX-64 or a C128D then you can also use drive 9 for your UII drive.

UltiCopy 9

Now, put the original floppy in the drive and start the UII interface. Browse to a location on your SD card or USB stick to save the new d64 file to. Then, press F5 and select Ulticopy 9. We select Ulticopy 9 because device 9 is our source.

The floppy is being read:

After this, the UII will ask for a file name for the d64 file. The disk label is entered as default…

Done! The minus signs (-) in the photo show that there have been read errors. Sometimes, this is not a problem when the bad block does not contain data. Sometimes it IS a problem. What to do?

You might try again! Not using the floppies for a long time may have left a residue on the disk. Reading it multiple times may clean the disk enough so you can read it.

This may have an effect on the drive head. It may get dirty (or it may be dirty already) and you might have to clean it. I will not go into that in this post, but there are several posts on the internet describing how to perform the clean action. Remember, the floppies are old and you may have some that are just not good enough for reading.

You might also try the following ideas:

Using a C64 Copy Program

One solution that sometimes works for me is to use a copy program on the C64 itself which can repair blocks or copy bad blocks ‘as-is’. Where to copy it to? A d64 file of course.

First, create a new d64 file somewhere on your UII storage. Mount it to device 8. Now, we can copy from device 9 to 8 using a copy program on the C64 just as we would with two 1541 drives back in the days. You can even let the copy program format the virtual floppy for you.

Load up your copy program of choice and try it! Source device 9 and target device 8, of course!

I’m using an old copy program from my scene days here, but the CSDB is loaded with great copy and nibble programs.

Using a UII Cartridge

Let’s not forget another great feature of the UII: built-in cartridge images!! One other option is to use one of the UII built in cartridges with a disk copying utility in it… My favourite is the Retro Reply V3.8p cartridge. Note: This copy program is also included in the Tasm/CodeNet cartridge.

Create a d64 file on your UII storage and mount it. Select the cartridge in the ‘C64 and Cartridge settings’ menu. Press Run/Stop and restart the C64. You will be greeted by the cartridge menu.

Press B to start the disk copy utility. Make sure to set 9 as source and 8 as destination. 

The utility will read the disk and then write to the d64 file. This will happen a few times. The copy is done when the question to copy another disk appears.

Concluding

Hopefully this part will help you digitize your old magnetic media so the C64 software library is extended upon once again! Make sure you upload the stuff and demo’s you find to the CSDB so the world can enjoy it.

Cartridges

The UII has an interesting feature: cartridge support. You can select a cartridge from the UII menu, and after a restart of the machine it will be just as if you plugged that cartridge into your computer.

Note

The cartridges can really be useful. Remember: using a UII alone does not give your fast load functionality when mounting .d64 files. So using a cartridge for this remains a sensible thing to do (unless you RUN single files straight from the UII menu using DMA, of course)

There are also other useful functions available through the use of these cartridges. The UII does not come with a manual for each cartridge, so in this post I will mention the available cartridges and their most useful features and commands, and where to find more documentation.  I had to look some of these up as well as I never used several of the supplied cartridges. :)

Enabling a cartridge

Enable a cartridge by pressing F2 to enter the configuration menu, and then select ‘C64 and cartridge settings’. Press ENTER on the ‘Cartridge’ menu item to see a list of select-able cartridge images. Select the cartridge to use, press RUN/STOP and restart your computer.

Most of the cartridges use two buttons: a reset button and a freeze button. The order of these buttons can be changed with the ‘Button order’ menu item, also in the cartridge menu.

Supplied cartridges

The available cartridges vary with each used UII firmware version. I use the 2.6k firmware and it comes with the following cartridges:

  • Final Cartridge III
  • Action Replay v4.2
  • Action Replay v6.0
  • Retro Replay v3.8p
  • SuperSnapshot v5.22
  • TAsm/Codenet
  • Epyx Fastload
  • Custom 8k ROM
  • Custom 16k ROM
  • Custom Retro Replay ROM
  • Custom Snappy ROM

Some of these come in PAL or NTSC versions.

That’s a nice list. What to use??!! Let’s go over a few of these cartridges and see what it can do. You will notice that a lot of the cartridges offer the kind of same functionality: fast loaders, machine monitor, etc…

Final Cartridge 3

This was a very popular cartridge. Made in the Netherlands and the cartridge of choice for many people around those parts.

I do find the fiddling with the joystick time consuming though. A mouse driven interface would have been better. Later versions of the FC3 had this option.

One of the big features of this cartridge is to freeze the current memory state to a disk or tape. This can be handy if you are playing a game with no save feature and you want to resume play at a later time. Of course, this feature can also be used to pirate software…  The freezer can also be used to cheat in games by disabling collision checks or sprites, or to enter the machine code monitor while the game runs so memory locations can be altered to gain more lives etc.

main features: BASIC extension, fast loader (disk and tape), machine monitor, freezer (save memory contents to tape or disk), cheating, utilities in the desktop mode.
manualPDF common commands:

  • DESKTOP to return to the cartridge menu from the basic editor
  • DLOAD (F5) and DSAVE to use the disk turbo
  • DOS"$ (F7) to list a directory
  • MONITOR (or F2) to enter the machine monitor

Action Replay (v4 and v6)

Datel started their Action Replay brand on the Commodore 64. Later on they produced Action Replay products for Amiga, PC, Gameboy, Xbox, etc. The focus of Datel was on cheating in games.

This was a very popular cartridge back in the day. There are two versions included of this cartridge. This page on C64 Wiki describes some of the differences.

Pressing the reset button will show a menu where you can copy disks, install a fast loader or perform a normal reset (the C64 did not have a reset button)

Pressing the freeze button will take you into a menu where various actions can be performed: disabling sprite collisions, looking for interesting addresses to poke in, saving a picture of the screen, editing the screen etc. All these features are aimed at cheating. There is also a command (F1) to backup the memory of the C64.  A loader for this saved memory can also be created so the backup can be loaded without the cartridge present. Yes, this was a huge piracy enabler.

main features: fast load, machine monitor, disk copy tools, freezer, cheating
manualPDF (v6), PDF (v4)
common commands:

  • $ : show disk directory
  • MON: enter machine monitor

Retro Replay

This is a Action Replay clone, with various additions, like REU (Ram Expansion Unit) support because the Action Reply did not, and the ability to house add on hardware, like networking and a serial port connection.

Those hardware tricks are not included in this software version of course. It will therefore say: SILVERSURFER NOT FOUND - DISABLED’. The Silversurfer is an hardware add on for this cartridge.

This cartridge is developed throughout the years by the commodore 64 hacking scene. For a ‘normal’ UII user, the additional functionality is not very interesting.

The Action Replay functionality is interesting, of course! Check out that cartridge for functionality and manual link.

SuperSnapShot v5

Apparently, the Action Replay is based of this cartridge and a lot of the features indeed seem familiar even though the menus and screens, or the basic commands to use the features, are different.

The cartridge will show TURBO V5 above the READY prompt to show it is active after a reset. One advantage of this cartridge is that it supports all the disk drive models, up to the 1581 and a lot of non-official floppy drives.

The ‘extended life’ feature is fun: it will snapshot the c64 memory, and you can return to this later. Easy for when you have one life left in your game and you can return to this state later on.

main features: memory snapshotting, cheating, monitors (memory, sprites, character sets)
manualPDF
common commands:

  • F3: get directory
  • F8 or @@MON: open machine monitor
  • /filename : load “filename” from disk

TAsm/Codenet

Again, this is an Action Replay 6.0 clone, with added functionality.

After pressing the reset button, the screen title says ‘Turbo Action Rom V2’. The screen looks like an Action Replay screen, but there is an added option: ‘T - Turbo Assembler’, therefore: Action Turbo. Pressing the freeze button will display the usual Action Replay freeze screen.

If you want to do some serious coding on the actual hardware then this cartridge is very interesting. As the UII doesn’t support Ethernet (maybe someday through USB. Keep hoping!) the Codenet functionality cannot be used.

main features: Action Replay functionality, Turbo Assembler
manual: Turbo Assembler (web)
common commands: see Action Replay

Epyx Fastload

This cartridge was mainly sold in the US. I myself do not remember seeing this cartridge in use in the Netherlands and I’ve been to a lot of computer parties. So for me this was a new one to discover and use. Turns out this is a cartridge with some nice functionality.

You can tell the cartridge is operational when you see the word FASTLOAD underneath the READY prompt.

I personally don’t like the syntax of the machine monitor, so I do not use this cartridge for snooping around in the c64 memory and as other cartridges also offer fast load, this cartridge is rarely used.

main features: fast serial, machine monitor, disk copy and tools
manualPDF
common commands:

  • pound sign (£) to enter the disk menu
  • exclamation mark (!) to enter the machine monitor.

Custom ROMs

If you want to use cartridges or rom files not supplied by the firmware you can add these in the following manner:

  1. Place the bin file in the root of the SD card. It must be a bin file, not a crt file.
  2. Enter the ‘C64 and Cartridge settings’ menu item and select the Custom ROM entry with the right size.
  3. Now, enter the name of your ROM file in the ‘Custom Cart ROM’ menu item. Press ENTER and RUN/STOP. 

Note

.crt files are cartridge images especially tailored for emulators; you cannot use these as ROM images. .crt files can be converted to .bin files by the use of a tool. csdb.dk holds an entry here. You can also use cartconv.exe which is supplied with Vice. Here is the manual.

Conclusion

Like I said: a lot of the cartridges share the same functionality. It’s up to you do decide what is the best tool for the job at hand.

I almost exclusively use the Retro or Action Replay, because of the disk fast load and machine code monitor, and no bull-shit interface and commands. I have this cartridge activated all the time as it doesn’t bother me when I am running software straight from the UII, and it will use the fast load when I mount a disk and load software from it. Starting a game and then realising the UII is loading at standard 1541 speed is … annoying.

D71 and D81 disk images

When you want to use your 1571 or 1581 drive with your C64 or C128 it’s nice to be able to use the hardware to the fullest. That means using double sided floppies and enormous 800k disk images!

Later 1541 Ultimate 2 (1541U2) firmware levels support reading D71 and D81 images in the cartridge interface, but it cannot mount the images as it emulates a 1541.

Note

Update in 2024: Since some time the UII firmware can fully use D71 and D81 images, so the following program is no longer essential when using these image files.

It would be neat though if you could use the 1541U2 cartridge to write the D71 and D81 images to physical floppies. I’ve written a program to do just that:

D71 and D81 images can be written using this C64 program, which is available on CSDB: http://csdb.dk/release/?id=156433

You can find the source here: https://github.com/wiebow/d81writer

The latest version is 1.1. This program works with 1541U2 firmware 2.6 and up.

You need to prepare some things on the 1541U2 before you can use it though:

  1. Enable the REU in the 1541U2 cartridge, with at least a size of 1MB.
  2. Enable the command interface in the 1541U2
  3. Disable any cartridge in the 1541U2 as it can interfere with the REU functionality and the command interface
  4. Format the floppy before using this program

Optional: When running the program on a C128 (in C64 mode) you need to modify the 1541U2 option CPU addr valid after PHI2 to 100ns

Place your D71 or D81 file somewhere on the USB or SD card and run the program. Follow the instructions, it is self explanatory. Writing a disk takes quite some time (11 to 20 minutes) so make sure you have a cup of coffee nearby.

Now this version is released, I am concentrating on creating a C128 native version which will use the burst commands for faster writing.

Concluding

I hope this post has enabled you to use your Ultimate 2 cartridge to its fullest.

Since writing these posts in 2014, the Ultimate product line has expanded to the Ultimate 64 and there STILL is no better modern retro product line on the market today. HIGHLY RECOMMENDED.