Compatibility Information
[ Up ] [ General
] [ Specifications ] [
Compatibility ] [ GEOS ][ Programming
] [ Timing ] [ Version
2 ]
While CMD has designed the SuperCPU to be as compatible as possible
with all forms of software, there are programs which will not operate properly
at high speed. Some common reasons for these compatibility problems:
-
Disk routines that bypass the Kernal ROM and attempt to perform custom
high-speed drive access routines
-
Other timing related issues such as unique advanced graphics routines that
are tuned to the 1 MHz timing normally used by the C-64
-
Previously unimplemented opcodes are being used (the new high-speed processor
used in the SuperCPU has an extended instruction set and will produce unexpected
results when unimplemented 6502 opcodes are used)
-
A certain hardware characteristic of the Commodore 64 that is not fully
emulated by the SuperCPU (we're not aware of any yet, but we won't discount
the possibility)
In addition, there could be any of several reasons why programs may exhibit
annoying side-effects, or may not work in a desirable fashion with the
SuperCPU in Turbo mode. Most commonly, programs may use software timing
loops which assume that the processor is running at 1 MHz to determine
when specific functions should occur. This can cause any number of problems:
annoyingly fast cursor blinking, screens that clear before you can read
what's on them, input routines that run so fast that a single input is
mistaken for multiple inputs, modem routines that don't time correctly
due to custom RS-232 timing, and programs that appear to lock up (usually
they're just waiting too short of a period of time for something to occur).
The only thing you can do about these programs is modify them yourself
to correct the problems (if it's possible to do so), or switch the SuperCPU
down into Normal (1 MHz) operating mode.
WHAT WORKS?
The following paragraphs key in on both general and specific examples of
what does and does not work, and why.
-
GAME PROGRAMS
-
Games are probably the least compatible category of programs to use on
an accelerated system. Despite this, we've found that a lot of games are
indeed compatible with the SuperCPU's Turbo mode. Many games use 'raster
interrupt' programming to time events, and since the VIC chip runs at the
same speed it always has, this method works well.
-
We've also found a few games that aren't compatible with Turbo mode. Generally,
games that use custom fastloader routines that bypass the Kernal will fail
to load correctly. With respect to these particular types of games, you
may be able to switch down to 1 MHz while loading, then switch back to
Turbo mode once the game has started running. If the game goes back to
disk for additional modules, though, there's a good chance of failure.
Flight Simulator II is a prime example of this. You can load it at 1 MHz,
then switch to Turbo mode and start flying. But once you crossover into
a new area where the program requires data to be loaded in from the disk-crash!
(The program, not the plane!)
-
Many games may run too fast to be playable in Turbo mode, too (Frogger
illustrates this). Speed kills. On the other hand, we tried quite a few
old BASIC game programs that used to be boringly slow, and suddenly they
were kind of fun to play.
-
You might also find an occasional game that won't work at all with the
SuperCPU enabled. These games may use previously undefined opcodes, jump
directly into ROM routines that have been altered, or are using timing
tricks that are beyond the ability of the SuperCPU to emulate (the latter
should be extremely rare). While we haven't found any games that fall into
these categories yet, almost certainly they do exist.
-
PRODUCTIVITY PROGRAMS
-
Nearly all productivity software should work with the SuperCPU. You may
find some that have initial fastloaders that bypass the Kernal routines,
but this is pretty uncommon in this type of program. Even so, these programs
usually allow you to disable the fastload feature, or you can switch the
SuperCPU to 1 MHz for loading and switch back once it's done loading.
-
BASIC PROGRAMS
-
BASIC programs generally work quite well with the SuperCPU, but you should
expect to run into routines where input is too fast, or screens don't display
long enough. If you write you own BASIC programs, you can easily make sure
that these problems are avoided by writing routines that work well at any
speed, or by checking for the presence and speed of a SuperCPU and adjusting
the timed routines accordingly (see 'Programming Information').
-
DISK UTILITIES & COPY PROGRAMS
-
This category covers a wide range of programs, but those which are of most
concern from a compatibility standpoint are disk copiers and archivers,
such as Maverick or Fast Hack'em. Programs of this type will generally
at least require setting the SPEED switch to NORMAL (1 MHz) mode, and some
may require disabling the SuperCPU altogether. Generic file copiers (like
CMD's FCOPY or Jim Butterfield's COPYALL) should operate in TURBO mode.
However, the more efficient the copier, the less likely you are to see
any real performance increases (since disk access is all at 1 MHz).
-
TERMINAL/BBS PROGRAMS
-
Relatively few programs in this category have been tested directly by CMD.
One area of concern would be custom RS-232 routines, which might be created
in a manner that would cause them to be dependent upon the timing of a
1 MHz processor. If so, these could fail at high speed. On the other hand,
programs that use SwiftLink need not perform any RS-232 timing, and are
more likely to operate. Tests were performed on Novaterm 9.6 using a SwiftLink,
and this software appeared to work flawlessly in Turbo mode.
-
HARDWARE COMPATIBILITY
The SuperCPU will work with a wide variety of hardware add-ons including
many of the cartridges intended for use in the Cartridge/Expansion (game)
port. One important note: due to a drawback in Commodore's design, the
SuperCPU 64 does not support using the 80-column VDC screen on Commodore
128 computers operating in 64 mode. The SuperCPU 128, however, will
be able to perform this function. The following paragraphs outline what
you should expect when it comes to hardware compatibility.
-
I/O CARTRIDGES
-
Most cartridges that do not contain ROM should work correctly. Some common
examples of this would be the SID Symphony Stereo cartridge and the SwiftLink
RS-232 cartridge.
-
ROM CARTRIDGES
-
Some ROM cartridges will work with the SuperCPU, including many game and
some utility cartridges. When these are detected, the SuperCPU automatically
slows down to read from the cartridge's memory (the chips used in these
cartridges are much too slow to keep up with the SuperCPU).
-
Cartridges that use the 'Ultimax' memory map will not work with the SuperCPU.
This mode is selected when a cartridge pulls the GAME line low with the
EXROM line set high on the cartridge port. Cartridges that use this mode
include Action/Replay, Super Snapshot, Partner 64, most IEEE interface
cartridges, the Lt. Kernal hard drive host adapter, and some game cartridges.
Due to the way these cartridges replace the Kernal, they would render the
SuperCPU inoperable. To use these cartridges, you'll most likely need to
disable the SuperCPU.
-
RAM EXPANDERS
-
The SuperCPU is fully compatible with several different RAM expansion devices.
RAM devices can provide you with the ability for the fastest possible operation
when used with the SuperCPU and compatible software. The following breakdown
indicates which devices work with the SuperCPU:
RAMLink - You'll find that the SuperCPU enhances the performance
of RAMLink itself, including hard drive access provided through the RAMLink's
parallel port. In addition, all of the RAMLink switches still operate just
as they normally would without a SuperCPU. RAMLink and a CMD HD combined
with a SuperCPU give you the most powerful Commodore system possible.
Commodore REU's & the 1750 Clone - These DMA devices are
fully compatible with the SuperCPU. Programs do not need to slow the SuperCPU
down to 1 MHz for REU access, as the SuperCPU itself automatically detects
DMA transfers and controls the speed as needed.
GeoRAM & BBGRAM - These devices are compatible with the SuperCPU,
and will operate just as they normally do.
RAMDrive - This device is not compatible with the SuperCPU, as
it would require rewriting the RD-DOS and incorporating that directly into
the SuperCPU.
Quick Brown Boxes - We had reported doubts earlier about using
the QBB RAM devices with the SuperCPU. However, we tracked ours down and
found that it did indeed operate. JiffyDOS generally needs to be disabled,
though we understand that there is a version of the QBB OS that is compatible
with JiffyDOS, and that version should work with JiffyDOS enabled.
-
USER PORT & SERIAL BUS DEVICES
-
Typically, all devices that attach to the User Port or Serial Bus should
continue to be compatible when using the SuperCPU, provided they are used
with compatible software. This includes such devices as Commodore-compatible
modems, RS-232 interfaces and geoCable for the User Port, and disk drives,
printers and parallel printer interfaces for the serial port.
[ Up ] [ General
] [ Specifications ] [
Compatibility ] [ GEOS ][ Programming
] [ Timing ] [ Version
2 ]
|