The cartridge uses a 1 MB EPROM chip (27C801) which holds all the cartridge images, as well as a 2 kB RAM chip (6116) which is required to run the MAX Basic cartridge.

The EPROM chip is divided into 64 16-kilobyte banks, each holding images of two 8 kB chips that were available for Ultimax cartridges. The boot software resides in bank 0, which is selected on power on and reset. It contains the menu allowing the user to select the bank from which the software will be run.

To select the current bank, a 74LS273 resettable latch is used. Upon switching on the machine, the latch is cleared with the reset signal, so the computer always starts in bank 0. The latch is visible to the processor in the area where additional RAM is normally present on the cartridge (on the Ultimax it is the $0800-$0FFF area, whereas on Commodore 64 this area is mapped into I/O space of $DE00-$DEFF). By writing to these memory locations, the menu software can select another bank.

The 7th bit of the latch is used as a special signal which maps out the latch from memory and selects the 6116 chip instead. Thus, by selecting the bank with bit 7 set, the RAM chip takes its intended place in the memory map, allowing to run cartridges utilizing the additional RAM (actually only the MAX Basic cartridge uses it). Since the latch is disabled in this state and cannot be re-enabled anymore, the running software cannot accidentally switch to another bank.

Two additional chips, 74LS08 and 74LS27, are used to provide glue logic generating control signals for the EPROM, RAM and latch. The cartridge is created with only the technology available in the ’80s – no programmable chips, SMD soldering etc. Thus it can be re-built by any hobbyist easily.


Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>