2

Section 7.1.1.2 of the VICE manual mentions that cartridge slot 1 (of the four slots 0, 1, Main and I/O) in the emulator is special in that it's designed to support "mostly RAM-based cartridges" (of which there seem to be just four that are officially supported in this slot).

The cartridges are:

  • Double Quick Brown Box (DQBB), on which I've found no information.
  • Expert Cartridge, which seems like a fairly standard fast loader and freezer except that it "held its system software in an 8 KB RAM that could be reprogrammed."
  • ISEPIC, another freezer, this one with 2 KB of RAM, "banked into a 256-byte page at 0xDF00 – 0xDFFF." (This is the IO2 area, not used by internal devices except RAM, when mapped in.)
  • RamCart, a memory expansion with battery backup, also banking the RAM into the $D000-FF IO2 area (and using $DE00 and $DE01 in the IO1 area to control which page is banked in), used as a RAM disk.

What was special about these cartridges that they need a separate slot in the emulator? Were there cartridges with RAM that don't need the special emulated slot? (Here I'm speaking of contemporary cartridges, rather than modern hardware like the MMC64.)

The two above that I have details about use the standard external I/O areas, but there's already an I/O slot that most I/O cartridges seem to use. It looks as if these cartridges probably all had ROM as well, which would likely be mapped into the usual areas so that it could be run in the usual way or via MAX mode when the C64 is started. And two or three of these seem to be freezer cartridges, but, as with I/O cartridges, other freezer cartridges don't get a special slot.

Note that I'm not asking about VICE in particular; I'm assuming there that there's some good reason related to the actual hardware itself that made the emulator developers decide things like, "yes, this cartridge and this other one can be used at the same time, but these two can't, and perhaps "this cartridge needs special emulation code." (Note that the C64 itself never prevented anyone from using any pair of cards at the same time; you could just plug in a bus expander and plug in both cards. Whether they would work together is another question, of course, and one similar to this one.)

  • 1
    Wouldn't that question be more appropriate at VICE forums? VICE is an actual and active maintained product and the question targets its internal workings, not anything about a C64 or contemporary hardware. It's VICE that needs some different handling, due the way it emulates these cartridges. A real C64 does not have any slots requiring special handling. – Raffzahn Sep 26 at 8:40
  • @Raffzahn I think that the VICE emulator is only the reason why the user is interested in these cartridges. I think the question is about the real cartridges and not about the simulated ones. – Martin Rosenau Sep 28 at 8:16
  • @Raffzahn, Yes, Martin is right; the question is aimed at knowing about the real cartridges. I've added a paragraph at the end to try to clarify that. (I'm of course assuming here that the VICE developers did things the way they did for some good reason related to the cartridge hardware, and not because they're part of an obscure relgious sect that worships those particular cartridges and must separate them from the others.) – Curt J. Sampson Sep 29 at 4:04
  • 1
    There were different ones that work in different ways. This video explains a lot: Commodore 64 RAM Expansion Units – Jesper Oct 17 at 13:39
  • @Jesper Great video! Thanks. I hadn't realized that the DMA was actually the most interesting (and perhaps most important) part of the REU. – Curt J. Sampson Oct 31 at 2:20
2

What was special about these cartridges that they need a separate slot in the emulator?

The original hardware has one expansion port. Some 3rd party manufacturers (such as Aprospand, .PDF Manual) made bus extenders that plugged into the port, allowing you to install multiple cartridges which could be used one at a time.

The Vice Emulator uses software to recreate all the available hardware (that is supported) and since it's emulated in some cases you can use more than one cartridge at a time.

What is "special" is that you don't buy a cartridge or plug it in anywhere. You can run VICE on a Desktop PC or an Android phone (and other platforms). Just activate the feature and it works, assuming no bugs.

If you want a particular cartridge game there are places to download it. If by chance it was a two player game that connected to a friend using a modem you could use a Desktop with a modem and play the game (faster than 2400 baud), and probably using Ethernet and Wi-Fi (you have the source code) on your phone.

An old phone has a more powerful processor than the C64, so emulation isn't a problem (as long as you don't get too carried away with what you expect to emulate, emulating the audio hardware chips uses a lot of cycles).

Section 7 of the manual explains:

"The cartridge system is organized in "Slots" to allow more than one cartridge connected at a time, like it can be done using an expansion port expander on a real C64 (see below).

Generally a cartridge can be enabled by attaching its respective cartridge image, or using the respective menu option for cartridges that do not require an image.
...

The imaginary expansion port expander is organized in 4 slots, the cartridges are associated with them like this: ...".

Aprospand Port Extender
(Tap to enlarge)

"7.1.1.1 Slot 0

All carts that have a passthrough connector go here. Once a "Slot 0" cartridge is enabled all further cartridges are connected to its respective passthrough port.

Only one cartridge of this type can be active at a time.

"Slot 0" carts have individual "enable" switches, enabling means enabling permanently. ...

7.1.1.2 Slot 1

Mostly RAM based cartridges which for one reason or the other might make sense to be enabled together with one of the "Main Slot" cartridges go here.

Only one cartridge of this type can be active at a time.

"Slot 1" carts have individual "enable" switches, enabling means enabling permanently. ...

7.1.1.3 Main Slot

All other cartridges which are not pure i/o extensions go here.

Only one cartridge of this type can be active at a time.

Cartridges in the "Main Slot" must be explicitly set as default to enable them permanently. ...

7.1.1.4 I/O Slot

All carts that are pure I/O extensions go here.

Any number of "I/O Slot" Carts may be active at a time.

"I/O Slot" carts have individual "enable" switches, enabling means enabling permanently. ...

That means that you can enable one "cartridge" per slot of each category.

The original hardware, without modification, accepted one expansion at a time:

C64 Expansion Port

PS: The "Quick Brown Box" is a memory expander. The were a few versions produced. The "double Quick Brown Box" is the name of the emulator's driver that (super) simulates the "Quick Brown Box" manufactured by the company "Brown Box Inc.".

  • After reading this, I still don't feel that I understand why that particular set of "RAM" cards is a separate category from the other three categories of cards. – Curt J. Sampson Sep 29 at 2:38
  • Ok, thanks. Thinking about it a little further, one thing that might help could be to explain what exactly what happen/work/not-work on a real C64 should both those cards be plugged in to a bus extender at the same time. – Curt J. Sampson Sep 29 at 4:59
  • It's just a bus; the C64 can't tell exactly what's plugged into it and in particular can't count the number of cartridges there. You as a person can look at it, but I'm not concerned about that: I'm asking about the electrical and bus behaviour of the carts. – Curt J. Sampson Sep 30 at 9:51
  • That's the difference. – Rob Sep 30 at 10:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.