Commodore 128 cartridge, hardware type 1, subtype 2

This is the .crt type used by the Ultimate II(+) version of C128 device manager.

This .crt type has a number of properties used by C128DM:
- multiple rom banks
- cartridge ram
- rom mirrored in IO12 space
- leaves 'holes' for compatibility with the REU and Ultimate Command Interface (UCI)

This cartridge type can have upto 1 megabyte rom, which can be mapped in banks of 32k.
Rom bank selection is done by a write-only register at $df7e (IO must be mapped in)

It can also have 32k ram, mapped in banks of 128 bytes, and availablle in IO2 $df80-$dfff.
Ram bank selection is done by a write-only register at $df7f (IO must be mapped in)

The rom mirrored to $de00-$df7f is mirrored from the currently active rom bank.

The 2 write-only registers cannot be read, attempts to read them will return rom contents instead.

A reset of the UII(+) will also reset the currently active rom and ram banks to 0, but using the reset button
of the C128 will keep the current settings active (C128DM will take care to switch to the proper banks for both, 
but when an alternative function rom is activated, it will remain active).

How C128DM uses those rom and ram banks is explicitly left undocumented, as no software should ever
count on specific functionality being in a specific rom bank, or specific data being in a specific ram bank.

Any access from external software to C128DM functionality should go through the published API. If you need
anything added to the API, contact bart@bartsplace.net, and we'll see what we can do.
