Tag Archives: 1541 Ultimate

Benchmarking the Ultimate 64 Hyperspeed Kernal

About a year ago Gideon updated the Ultimate firmware with support for a new C64 Kernal which allows for DMA loading and saving using the standard LOAD and SAVE Kernal routines. I’m a bit behind on this as this has been out for a while, but I finally got around to testing the load and save times using the CBM Disk Transfer Benchmark tool I wrote in 2020.

Basically what Hyperspeed does is hook the soft-IEC into the Kernal LOAD and SAVE routines but uses direct memory access from the Ultimate 64 (and 1541 Ultimate 2+). As you’ll see, this provides for a near-instantaneous load time, due to the fact that the data is transferred directly into memory, bypassing the IEC bus entirely. The obvious down-side is that it requires a custom Kernal, which is not a big deal, and that it only works for the standard Kernal load and save routines, which is a pretty big deal since that essentially rules out anything that needs real 1541 emulation to work.

Update: I’ve added additional testing data. It was suggested to me that I would get even faster scores than I originally posted if I used the Ultimate 64 RAM disk, which resides in system memory rather than attached storage. This is indeed the case. Also, I repeated the same tests on a 1541 Ultimate-II+ and included those scores in the tables. The 1541 U2+ is not as fast but still beats any other option for load speeds by far.

Testing was performed on an Ultimate 64 in NTSC mode and a 1541 Ultimate-II+ on an NTSC Commodore 64, both using the 3.10a Ultimate firmware with the matching UCI KERNAL.

The bottom-line speed comparison

With attached USB storage, Ultimate 64 Hyperspeed is 26 times faster at saving than the baseline 1541, and a whopping 562 times faster loading than the baseline 1541 with stock Kernal. Using the internal RAM disk is even faster: 102 times faster at saving and a blistering 1124 times faster loading than original hardware.

In fact, it is likely faster than this. Hyperspeed loaded 44,956 bytes (177 blocks) from the Ultimate 64 RAM disk in less than one decisecond (<100 milliseconds). The smallest time interval the TOD clock can return is one decisecond. Once we get faster than 300 milliseconds, these differences are not really possible to measure with precision. 1124 is the maximum possible DTB load score. For all intents and purposes, Hyperspeed can achieve instantaneous load times from the internal flash memory utilizing the UCI KERNAL.

A real C64 with a 1541 Ultimate-II+ cartridge is no slouch either. The U2+ can be configured to use the UCI KERNAL matched with Soft-IEC storage just like the Ultimate 64. For attached USB storage, I measured a 11x save score and 161x load score. The internal RAM Disk of the U2+ increased these to a 13x save and 225x load score.

Read on for the detailed comparison tables.

Continue reading

JiffyDOS and SD2IEC Command Quick Reference Card

Here’s a cheat sheet I printed up because I tend to forget less often used commands for the JiffyDOS DOS wedge. It also has some commands for the SD2IEC for changing and saving the default drive number.

4×6″ Formatted PDF: JiffyDOS_Quick_Reference_Card.pdf

Text file: JiffyDOS Commands.txt Also, the text is wrapped so that the first list of function keys displays nicely on my 1541 Ultimate (and Ultimate 64) file viewer, so this text file can be dropped in the root of the SD card for quick access in the menu.

I printed this out and laminated it. Here are some pics.

Continue reading

GameBase 64 Reorganizer SD version 4 released

GB Reorganizer has had quite an update today. I’ve posted version 4.0 with some important improvements and fixes. Don’t know what this is? Read about it here.

Someone pointed out to me that the Reorganizer was creating empty (no disk) output on archives with .TAP or .G64 images in them. Well, when I originally coded this utility for use with my 1541 Ultimate, the only image formats supported were .T64 and .D64. But that has changed and GameBase 64 is now using quite a few different image formats — .TAP, .T64, .G64, .D81, as well as the ubiquitous .D64. So now these are all recognized and extracted. (Whether or not your chosen device will support the images is a different matter — my 1541-U Mark 1 unit, with my custom firmware, can handle .D64, .G64, .CRT, and .T64 images, but not .TAP or .D81.) Still, it is better to include the files in the output for possible future support by your device.

Another important change for 1541-U users is how filename case is handled. Again, way back in the days of pre-2.0 1541-U firmware, the sorting and searching in the file browser were all case-sensitive, so it was necessary to upper-case all of the output for more useful browsing behavior. Somewhere along the line Gideon fixed all of the sorting and searching to be case-insensitive so this is no longer necessary. But if you are using a really old firmware, such as what was flashed in the old mark-1 units, you will want to restore the previous behavior with the “Ancient 1541-U Uppercase Mode” option. Or better yet, use my custom firmware so you don’t need to. (1541 Ultimate II users shouldn’t need to worry about it.)

I’ve also added a way to save and load your settings. This makes it easier to deal with different output configurations you want to have.

There’s a test mode now, too, which writes out the GameList.csv file but doesn’t build the folder structure or extract the archives.

There are some other changes. Download it here. sd2iec device users shouldn’t feel left out. There are bug fixes in here that affect output for the sd2iec optimized folders as well, so everybody should upgrade.

  • Improved GameList.csv output includes error messages on each folder/game (if any).
  • Recognize and extract .D81, .CRT, .G64, and .TAP files from archives (in addition to .D64 and .T64 files).
  • Change 1541-U folder name case to be mixed instead of forced upper-case. Added “Ancient 1541-U Uppercase Mode” for 1541-U file optimization (uses the previous behavior for file case naming). Use this option if you prefer the old way or if you have a really old firmware and you need it for proper sorting/searching on the 1541-U.
  • Added Test Mode. THIS STILL DELETES ANY PREVIOUS REORGANIZER OUTPUT IN THE DESTINATION FOLDER. This mode does everything except create the folders and extract the files, and you can review the GameList.csv file for results.
  • Added Load/Save Settings function.
  • Some cosmetic changes such as an improved icon design and changes to the faux-C64 status screen, just because.

Commie Red with 1541 Ultimate-I

One of my earliest mod projects is Commie Red.

  • JiffyDOS
  • Reset Switch
  • Sports-car Red Paint Job

Also, this is the C64 that gets the 1541 Ultimate, which you can see in these pictures. My 1541 Ultimate has a specially designed case for earlier units that did not come with a cartridge case.

There are some flaws in my work — I was a bit impatient to complete the painting part of the project and did not take the time to paint the inside of the case first. So if you look for it, you can see the original color in some areas where the case separates.

Get a little bit more volume from your 1541-Ultimate I

Here’s a little tip for 1541 Ultimate I owners.

The 1541 Ultimate has a nice audio output feature which gives you the real sounds of a 1541 drive as the virtual drive is accessed.

The Ultimate-II came along and some firmware revisions actually offer two 1541 drives. In order to support audio for both drives, the stereo audio is split between the left and right channels.

For Ultimate-I devices with an updated firmware, there is no possibility of a second drive, yet the default settings for the device have “drive A” only going to one channel.

I found my volume increased when I assigned drive A to both channels in the firmware settings.

Not a big deal, but there it is. 🙂