
*** CRT - CaRTridge Images (from the CCS64 emulator)
*** Document revision: 1.15
*** Last updated: Dec 10, 2009
*** Compiler/Editor: Peter Schepers
*** Contributors/sources: Per Hakan Sundell,
                          Markus Brenner
                          Marco Van Den Heuvel
                          Thomas Giesel

  Cartridge files were introduced in the CCS64  emulator,  written  by  Per
Hakan Sundell, and use the ".CRT" file extension. This format  was  created
to handle the various ROM cartridges that exist, such as Action Replay, the
Power cartridge, and the Final Cartridge.

  Normal game cartridges can load  into  several  different  memory  ranges
($8000-9FFF,  $A000-BFFF  or  $E000-FFFF).  Newer   utility   and   freezer
cartridges were less intrusive, hiding themselves until  called  upon,  and
still others used bank-switching techniques to allow much larger ROM's than
normal. Because of these "stealthing" and bank-switching methods, a special
cartridge format  was  necessary,  to  let  the  emulator  know  where  the
cartridge should reside, the control line  states  to  enable  it  and  any
special hardware features it uses.

  Here is a dump of a sample 8K normal cartridge,  "Attack  Of  The  Mutant
Camels"...

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 00 00 01 00 00 00 00 00 00   @
0020: 41 54 54 41 43 4B 20 4F 46 20 54 48 45 20 4D 55   ATTACKOFTHEMU
0030: 54 41 4E 54 20 43 41 4D 45 4C 53 00 00 00 00 00   TANTCAMELS
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: D3 9B BC FE C3 C2 CD 38 30 EA EA EA A9 01 85 13   ӛ80
0060: 4C B3 9B A9 08 85 5A 88 D0 FD C6 5A D0 F9 60 D0   LZZ`

  Bytes:$0000-000F - 16-byte cartridge signature  "C64  CARTRIDGE"  (padded
                     with space characters)
         0010-0013 - File header length  ($00000040,  in  high/low  format,
                     calculated from offset $0000). The default and minimum
                     value is $40. Some faulty cartridge images exist which
                     show an incorrect value of $00000020.
         0014-0015 - Cartridge version (high/low, presently 01.00)
         0016-0017 - Cartridge hardware type ($0000, high/low)
                       0 - Normal cartridge
                       1 - Action Replay
                       2 - KCS Power Cartridge
                       3 - Final Cartridge III
                       4 - Simons Basic
                       5 - Ocean type 1 (*note)
                       6 - Expert Cartridge
                       7 - Fun Play, Power Play
                       8 - Super Games
                       9 - Atomic Power
                      10 - Epyx Fastload
                      11 - Westermann Learning
                      12 - Rex Utility
                      13 - Final Cartridge I
                      14 - Magic Formel
                      15 - C64 Game System, System 3
                      16 - WarpSpeed
                      17 - Dinamic (**note)
                      18 - Zaxxon, Super Zaxxon (SEGA)
                      19 - Magic Desk, Domark, HES Australia
                      20 - Super Snapshot 5
                      21 - Comal-80
                      22 - Structured Basic
                      23 - Ross
                      24 - Dela EP64
                      25 - Dela EP7x8
                      26 - Dela EP256
                      27 - Rex EP256
                      28 - Mikro Assembler
                      29 - reserved
                      30 - Action Replay 4
                      31 - StarDOS
                      32 - EasyFlash
              0018 - Cartridge port /EXROM line status
                      0 - active (low)
                      1 - inactive (high)
              0019 - Cartridge port /GAME line status
                      0 - active (low)
                      1 - inactive (high)
         001A-001F - Reserved for future use
         0020-003F - 32-byte cartridge  name  "CCSMON"  (uppercase,  padded
                     with null characters)
         0040-xxxx - Cartridge contents (called CHIP PACKETS, as there  can
                     be more than one  per  CRT  file).  See  below  for  a
                     breakdown of the CHIP format.

  The /EXROM and /GAME lines are active low lines, so a 0 means  active  or
selected and a 1 means disabled or not selected.

  (*Note: Ocean type 1 includes Navy Seals, Robocop 2 & 3,  Shadow  of  the
    Beast, Toki, Terminator 2 and more)

  (**Note: Dinamic includes Narco Police and more)


---------------------------------------------------------------------------


CHIP Contents
-------------

  The following is the contents of the CHIP packet, from position $0040  on
in the CRT file. Note I have re-adjusted the starting address to be  $0000,
since we are now looking at a file contained in the .CRT file, and all size
references are from where it starts.

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0010: D3 9B BC FE C3 C2 CD 38 30 EA EA EA A9 01 85 13   ӛ80
0020: 4C B3 9B A9 08 85 5A 88 D0 FD C6 5A D0 F9 60 D0   LZZ`
0030: F2 60 A9 04 85 49 A9 00 85 48 A2 00 A5 48 9D 40   `IHH@
0040: 03 A5 49 9D 60 03 A5 48 18 69 28 85 48 A5 49 69   I`Hi(HIi
0050: 00 85 49 E8 E0 18 D0 E4 60 A6 03 A4 02 BD 40 03   I`@

  Bytes:$0000-0003 - Contained ROM signature "CHIP" (note there can be many
                     modules in a .CRT file)
         0004-0007 - Total packet length ($00002010,  ROM  image  size  and
                     header combined) (high/low format)
         0008-0009 - Chip type
                      0 - ROM
                      1 - RAM, no ROM data
                      2 - Flash ROM
         000A-000B - Bank number ($0000 - normal cartridge)
         000C-000D - Starting load address (high/low format)
         000E-000F - ROM image size in bytes  (high/low  format,  typically
                     $2000 or $4000)
         0010-xxxx - ROM data


---------------------------------------------------------------------------


  The following is a chart taken from the "Commodore Programmers  Reference
Guide". It details the state of various areas of memory  depending  on  the
state of the control lines.


Legend:
L - ROML (low)
H - ROMH (high)
G - /GAME (active low)
E - /EXROM (active low)

Addr       LHGE   LHGE   LHGE   LHGE   LHGE   LHGE   LHGE   LHGE   LHGE
Range
           1111   101X   1000   011X   001X   1110   0100   1100   XX01
         default                00X0                             Ultimax
-------------------------------------------------------------------------
E000-FFFF Kernal  RAM    RAM   Kernal  RAM   Kernal Kernal Kernal ROMH(*)
D000-DFFF IO/CHR IO/CHR IO/RAM IO/CHR  RAM   IO/CHR IO/CHR IO/CHR   I/O
C000-CFFF  RAM    RAM    RAM    RAM    RAM    RAM    RAM    RAM     -
A000-BFFF BASIC   RAM    RAM    RAM    RAM   BASIC   ROMH   ROMH    -
8000-9FFF  RAM    RAM    RAM    RAM    RAM    ROML   RAM    ROML  ROML(*)
4000-7FFF  RAM    RAM    RAM    RAM    RAM    RAM    RAM    RAM     -
1000-3FFF  RAM    RAM    RAM    RAM    RAM    RAM    RAM    RAM     -
0000-0FFF  RAM    RAM    RAM    RAM    RAM    RAM    RAM    RAM    RAM

(*) Internal memory does not respond to write accesses in these areas


  From the above chart, the following table can be built. It shows standard
cartridges, either 8K or 16K in size, and the memory ranges they load into.

         Type     Size  /GAME  /EXROM    Low Bank    High Bank
                  in K   Line   Line      (ROML)      (ROMH)
         -----------------------------------------------------
         Normal    8k     hi     lo     $8000-9FFF     ----
         Normal    16k    lo     lo     $8000-9FFF  $A000-BFFF
         Ultimax   8k     lo     hi     $E000-FFFF     ----
         Ultimax   16k    lo     hi     $8000-9FFF  $E000-FFFF

  The ROMH and ROML lines are CPU-controlled status  lines,  used  to  bank
in/out RAM, ROM or I/O, depending on what is needed at the time. The  /GAME
and /EXROM lines are active-low lines.

  Ultimax cartridges typically are situated  in  the  $E000-FFFF  (8K)  ROM
address range. There are some cartridges  which  only  use  4K  of  the  8K
allocation. If the cartridge is 16K in size, then it will  reside  in  both
$8000-9FFF and $E000-FFFF.

  Ultimax mode is very different from most other cartridges. When  enabled,
there is 4Kb of RAM at $0000-$0FFF, 8Kb of cartridge  ROM  at  $8000-$9FFF,
4Kb  of  I/O  registers  at  $D000-$DFFF  and  8Kb  of  cartridge  rom   at
$E000-$FFFF. All other addresses are unusable.


---------------------------------------------------------------------------


Cartridge Specifics
-------------------

0 - Normal cartridge

    Size      : 8Kb
    Addr Range: $8000-9FFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 00 00 01 00 00 00 00 00 00   @
0020: 41 54 54 41 43 4B 20 4F 46 20 54 48 45 20 4D 55   ATTACKOFTHEMU
0030: 54 41 4E 54 20 43 41 4D 45 4C 53 00 00 00 00 00   TANTCAMELS
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: D3 9B BC FE C3 C2 CD 38 30 EA EA EA A9 01 85 13   ӛ80



      The second sample below is a dump of "Music Machine", a  4Kb  ULTIMAX
    mode cartridge. It  is  still  identified  as  a  "standard  cartridge"
    according to the ID.

    Size      : 4Kb (ULTIMAX mode)
    Addr range: $F000-F7FF
    /EXROM    : inactive (1)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 00 01 00 00 00 00 00 00 00   @
0020: 4D 55 53 49 43 20 4D 41 43 48 49 4E 45 00 00 00   MUSICMACHINE
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 10 10 00 00 00 00 F0 00 10 00   CHIP
0050: 3C 66 C3 C3 66 3C FF FF 18 3C 66 7E 66 66 66 00   <ff<<f~fff



      The third sample is a dump of "Adventure Creator",  a  16Kb  standard
    cartridge.

    Size      : 16Kb
    Addr range: $8000-BFFF
    /EXROM    : active (0)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 00 00 00 00 00 00 00 00 00   @
0020: 41 64 76 65 6E 74 75 72 65 20 43 72 65 61 74 6F   AdventureCreato
0030: 72 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   r
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00   CHIP@@
0050: 09 80 81 EA C3 C2 CD 38 30 A2 00 78 D8 8E 11 D0   80x؎


===========================================================================


1 - Action Replay

    Size      : 32Kb (4 banks of 8Kb each)
    Addr range: $8000-9FFF (all modules)
    /EXROM    : active (0)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 01 00 00 00 00 00 00 00 00   @
0020: 41 63 74 69 6F 6E 20 52 65 70 6C 61 79 20 56 00   ActionReplayV
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: 09 80 0C 80 C3 C2 CD 38 30 4C 60 80 4C 63 80 4C   80L`LcL


===========================================================================


2 - KCS Power Cartridge

    Size      : 16Kb (2 banks of 8K each)
    Addr range: module #1: $8000-9FFF
                module #2: $A000-BFFF
    /EXROM    : active (0)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 20 01 00 00 02 00 00 00 00 00 00 00 00   
0020: 4B 43 53 20 50 6F 77 65 72 20 43 61 72 74 72 69   KCSPowerCartri
0030: 64 67 65 00 00 00 00 00 00 00 00 00 00 00 00 00   dge
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: 09 80 5E FE C3 C2 CD 38 30 78 D8 A2 FF 9A A9 27   ^80xآ'
....
2050: 43 48 49 50 00 00 20 10 00 00 00 00 A0 00 20 00   CHIP
2060: 97 E3 16 A1 FF FF FF 20 13 A0 A5 01 09 01 85 01   


===========================================================================


3 - Final Cartridge III

    Size      : 64Kb (4 banks of 16Kb each)
    Addr range: $8000-BFFF (all modules)
    /EXROM    : inactive (1)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 03 01 01 00 00 00 00 00 00   @
0020: 46 69 6E 61 6C 20 43 61 72 74 72 69 64 67 65 20   FinalCartridge
0030: 49 49 49 20 31 39 38 37 00 00 00 00 00 00 00 00   III1987
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00   CHIP@@
0050: 09 80 5E FE C3 C2 CD 38 30 4C 4C 80 4C 55 95 4C   ^80LLLUL
....
4050: 43 48 49 50 00 00 40 10 00 00 00 01 80 00 40 00   CHIP@@
4060: 01 02 00 81 5D 81 61 81 99 81 D8 81 0B 82 33 82   ]a؁3
....
8060: 43 48 49 50 00 00 40 10 00 00 00 02 80 00 40 00   CHIP@@
8070: 20 43 80 20 52 80 A9 4E 20 05 DE 20 FD BF AD 39   CRN9
....
C070: 43 48 49 50 00 00 40 10 00 00 00 03 80 00 40 00   CHIP@@
C080: A2 06 BD DD 85 95 05 CA 10 F8 AE A0 02 E8 EC A2   ݅

    A total of 64 kB of ROM memory  is  organized  into  four  $4000  banks
    located at $8000-$BFFF. Bank switching is  done  by  writing  the  bank
    number plus $40 into memory location $DFFF.  For  instance,  to  select
    bank 2, $DFFF is set to $42.

    The CRT file contains four CHIP blocks, each block with a start address
    of $8000, length $4000 and the bank number in the bank  field.  In  the
    cartridge header, both /EXROM ($18) and /GAME ($19) are  set  to  1  to
    enable the 16 kB ROM configuration.


===========================================================================


4 - Simons Basic

    Size      : 16Kb (2 banks of 8kb each)
    Addr range: module #1: $8000-9FFF
                module #2: $A000-BFFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 04 00 01 00 00 00 00 00 00   @
0020: 53 69 6D 6F 6E 27 73 20 42 61 73 69 63 00 00 00   Simon'sBasic
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: 52 81 52 81 C3 C2 CD 38 30 41 4C 52 81 20 2C 81   RR80ALR,
....
2050: 43 48 49 50 00 00 20 10 00 00 00 00 A0 00 20 00   CHIP
2060: 20 A4 A6 99 9E CB A0 05 A5 A8 91 20 A4 A6 99 A2   ˠ

    SIMONS BASIC permanently uses 16 kB ($4000) bytes of  cartridge  memory
    from $8000-$BFFF. However, through some custom bank-switching logic the
    upper area ($A000-$BFFF) may be disabled so Simons BASIC may use it  as
    additional RAM. Writing a value of $01 to address location $DE00  banks
    in ROM, $00 disables ROM and enables RAM.

    (A user reported that simply loading from any  $DExx  address  switched
    the configuration to 8K, opening up  $A000-BFFF,  and  writing  to  any
    $DExx address re-enables the 16K layout.)

    The CRT file contains two CHIP blocks of length $2000 each,  the  first
    block having a start address of $8000, the second block $A000.  In  the
    cartridge header, /EXROM ($18) is set to 0 & /GAME ($19) is set to 1 to
    indicate the RESET/power-up configuration of 8 kB ROM.


===========================================================================


5 - Ocean type 1

    Size      :  16 Kb (2 banks), banks are 8Kb
                 32 Kb (4 banks)
                 64 Kb (8 banks)
                128 Kb (16 banks)
                256 Kb (32 banks)
                512 Kb (64 banks)
    Addr range: Banks 00-15: $8000-9FFF
                Banks 16-31: $A000-BFFF (except Terminator 2)
    /EXROM    : active (0)
    /GAME     : active (0)

       00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
       -----------------------------------------------   ----------------
00000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
00010: 00 00 00 40 01 00 00 05 00 00 00 00 00 00 00 00   @
00020: 53 48 41 44 4F 57 20 4F 46 20 54 48 45 20 42 45   SHADOWOFTHEBE
00030: 41 53 54 00 00 00 00 00 00 00 00 00 00 00 00 00   AST
00040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
00050: 09 80 83 81 C3 C2 CD 38 30 4C 83 81 4C 76 82 80   80LLv
 ....
02050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00   CHIP
02060: 59 6D 00 56 AD 00 55 AE F0 00 01 A0 FE 00 01 F8   YmVU
 ....
20140: 43 48 49 50 00 00 20 10 00 00 00 10 A0 00 20 00   CHIP
20150: 0A 9A 55 FF 9B 69 57 FE AA 65 96 FE 65 0F D6 D9   UiWee

    Here is a partial list of the OCEAN cartridges:

    Fort Apocalypse     ( 16 Kb)
    Ghostbusters        ( 32 Kb)
    Kung Fu Master      ( 32 Kb)
    Leaderboard Golf    ( 32 Kb)
    Tournament Tennis   ( 32 Kb)
    Badlands            ( 64 Kb)
    Vindicators         ( 64 Kb)
    Wonderboy           ( 64 Kb)
    Batman The Movie    (128 Kb)
    Battle Command      (128 Kb)
    Double Dragon       (128 Kb)
    Navy Seals          (128 Kb)
    Pang                (128 Kb)
    Robocop 3           (128 Kb)
    Space Gun           (128 Kb)
    Toki                (128 Kb)
    Chase H.Q. II       (256 Kb)
    Robocop 2           (256 Kb)
    Shadow of the Beast (256 Kb)
    Terminator 2        (512 Kb)

    Memory is divided into 8Kb banks. For  the  lower  128Kb  (bank  0-15),
    memory is banked into  $8000-$9FFF  and  for  the  upper  128Kb  (banks
    16-31), memory is banked into $A000-$BFFF. When a  bank  in  the  range
    0-15 is banked in, the second bank range $A000-BFFF is undefined.  When
    a bank in the range from 16-31 is banked  in  then  the  address  range
    $8000-9FFF is undefined.

    The expection to this is the Terminator 2 cartridge. It  loads  all  64
    banks at $8000-$9FFF, and BASIC is visible from $A000-BFFF.

    Bank switching is done by writing to $DE00. The lower six bits give the
    bank number (ranging from 0-63). Bit 8 in this selection word is always
    set.


===========================================================================


6 - Expert Cartridge

    Size      : 8Kb
    Addr range: $8000-9FFF
    /EXROM    : inactive (1)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 06 01 01 00 00 00 00 00 00   @
0020: 45 78 70 65 72 74 20 43 61 72 74 72 69 64 67 65   ExpertCartridge
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 40 10 00 02 00 00 80 00 20 00   CHIP@
0050: 00 00 00 0A F3 00 00 00 00 00 00 00 00 00 00 00   


===========================================================================


7 - Fun Play, Power Play

    Size      : 128Kb (16 banks of 8Kb modules)
    Addr range: $8000-9FFF (all modules)
    /EXROM    : active (0)
    /GAME     : active (0)

       00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
       -----------------------------------------------   ----------------
00000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
00010: 00 00 00 40 01 00 00 07 00 00 00 00 00 00 00 00   @
00020: 46 55 4E 20 50 4C 41 59 00 00 00 00 00 00 00 00   FUNPLAY
00030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
00040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
00050: 1E 80 86 EA C3 C2 CD 38 30 1B 00 81 0D 08 80 00   80
 ....
02050: 43 48 49 50 00 00 20 10 00 00 00 08 80 00 20 00   CHIP
02060: 78 A2 F0 86 01 BD 1D 08 9D F8 00 CA D0 F7 4C 00   xL
 ....
04060: 43 48 49 50 00 00 20 10 00 00 00 10 80 00 20 00   CHIP
04070: 38 E5 68 85 03 B0 11 27 03 12 C0 18 69 27 42 90   8h'i'B
 ....
06070: 43 48 49 50 00 00 20 10 00 00 00 18 80 00 20 00   CHIP
06080: 44 D0 5E 06 02 C0 44 11 40 04 11 44 01 5F 1C 73   D^D@D_s
 ....
1E130: 43 48 49 50 00 00 20 10 00 00 00 39 80 00 20 00   CHIP9
1E140: 85 EB 41 EA 9E 08 03 00 C0 06 18 01 00 C0 08 03   A

      The FUN PLAY Cartridge uses $DE00 for bank selection,  and  uses  8Kb
    banks ($2000) at $8000-$9FFF. There are 16 banks of ROM memory and  are
    referenced by the following values:

    $00 -> Bank 0
    $08 -> Bank 1
    $10 -> Bank 2
    $18 -> Bank 3
    $20 -> Bank 4
    $28 -> Bank 5
    $30 -> Bank 6
    $38 -> Bank 7
    $01 -> Bank 8
    $09 -> Bank 9
    $11 -> Bank 10
    $19 -> Bank 11
    $21 -> Bank 12
    $29 -> Bank 13
    $31 -> Bank 14
    $39 -> Bank 15

      The bank field in the chip headers is  set  according  to  the  value
    written to $DE00. The following bits are  used  for  bank  decoding  in
    $DE00 (0 being the LSB, 3 being the MSB).

        Bit# 76543210
             xx210xx3

      After copying memory from the ROM banks, the selection program writes
    a value of $86 to $DE00. This seems either  to  reset  or  disable  the
    cartridge ROM.


===========================================================================


8 - Super Games

    Size      : 64Kb (4 banks of 16Kb each)
    Addr range: $8000-BFFF (all modules)
    /EXROM    : active (0)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 08 00 00 00 00 00 00 00 00   @
0020: 53 55 50 45 52 20 47 41 4D 45 53 00 00 00 00 00   SUPERGAMES
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00   CHIP@@
0050: 0A 80 0A 80 C3 C2 CD 38 30 00 A9 80 A0 00 85 FB   80
....
4050: 43 48 49 50 00 00 40 10 00 00 00 01 80 00 40 00   CHIP@@
4060: 27 80 A8 80 C3 C2 CD 38 30 00 40 C0 40 C0 40 C0   '80@@@
....
8060: 43 48 49 50 00 00 40 10 00 00 00 02 80 00 40 00   CHIP@@
8070: 00 00 00 49 4D C7 64 47 46 45 F3 48 DC 08 7E 0B   IMdGFEH~
....
C070: 43 48 49 50 00 00 40 10 00 00 00 03 80 00 40 00   CHIP@@
C080: D5 F9 F0 C1 D5 F7 F0 BD E8 B5 02 F0 FB C9 05 30   0

      The SUPER GAMES cartridge uses 4  16Kb  banks  ($8000-$BFFF)  of  ROM
    memory. Bank selecting is done by writing to $DF00.

    Values for $DF00:

    $00 -> Bank 0
    $01 -> Bank 1 (also value $09 used)
    $02 -> Bank 2
    $03 -> Bank 3

      Bit #2:   0 = ROM $8000-$BFFF
                1 = ROM $8000-$9FFF
      Bit #3:   0 = ?
                1 = if bit #2 AND #3 are on (1) then the module is off


===========================================================================


9 - Atomic Power

    Size      : 32Kb (4 banks of 8Kb modules)
    Addr range: $8000-9FFF (all modules)
    /EXROM    : active (0)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 09 00 00 00 00 00 00 00 00   @
0020: 41 74 6F 6D 69 63 20 50 6F 77 65 72 00 00 00 00   AtomicPower
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: 09 80 0C 80 C3 C2 CD 38 30 4C 41 80 4C 1E 80 4C   80LALL
....
2050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00   CHIP
2060: 09 80 0C 80 C3 C2 CD 38 30 4C 3F 80 4C 91 80 4C   80L?LL
....
4060: 43 48 49 50 00 00 20 10 00 00 00 02 80 00 20 00   CHIP
4070: EF FC 09 80 C3 C2 CD 38 30 4C 27 80 4C DB 81 4C   80L'LہL
....
6070: 43 48 49 50 00 00 20 10 00 00 00 03 80 00 20 00   CHIP
6080: 09 80 0C 80 C3 C2 CD 38 30 4C 73 86 4C 30 80 4C   80LsL0L


===========================================================================


10 - Epyx Fastload

     Size      : 8Kb
     Addr range: $8000-9FFF
     /EXROM    : inactive (1)
     /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 0A 01 01 00 00 00 00 00 00   @
0020: 45 50 59 58 20 46 41 53 54 4C 4F 41 44 00 00 00   EPYXFASTLOAD
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: 30 80 5E FE C3 C2 CD 38 30 20 04 90 4C 38 DF AB   0^80L8߫


===========================================================================


11 - Westermann Learning

     Size      : 16Kb
     Addr Range: $8000-BFFF
     /EXROM    : active (0)
     /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 0B 00 00 00 00 00 00 00 00   @
0020: 57 45 53 54 45 52 4D 41 4E 4E 00 00 00 00 00 00   WESTERMANN
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 40 00   CHIP@
0050: 09 80 9C 80 C3 C2 CD 38 30 A2 00 8E 16 D0 20 84   80


===========================================================================


12 - Rex Utility

     Size      : 8K
     Addr range: $8000-9FFF
     /EXROM    : active (0)
     /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 0C 00 01 00 00 00 00 00 00   @
0020: 52 45 58 00 00 00 00 00 00 00 00 00 00 00 00 00   REX
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00   CHIP
0050: 08 80 C1 FE C3 C2 CD 38 30 6C 95 E3 20 A3 FD 20   80l


===========================================================================


13 - Final Cartridge I

     Size      : 16Kb
     Addr range: $8000-BFFF
     /EXROM    : inactive (1)
     /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F        ASCII
      -----------------------------------------------   ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20   C64CARTRIDGE
0010: 00 00 00 40 01 00 00 0D 01 01 00 00 00 00 00 00   @
0020: 54 68 65 20 46 69 6E 61 6C 20 43 61 72 74 72 69   TheFinalCartri
0030: 64 67 65 20 49 00 00 00 00 00 00 00 00 00 00 00   dgeI
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00   CHIP@@
0050: 80 BA 5E FE C3 C2 CD 38 30 00 A0 A0 20 2D FE 58   ^80-X


===========================================================================


14 - Magic Formel

     Size      : 64Kb (8 banks of 8Kb)
     Addr range: $E000-FFFF
     /EXROM    : inactive (1)
     /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 0E 01 01 00 00 00 00 00 00  @
0020: 4D 61 67 69 63 20 46 6F 72 6D 65 6C 00 00 00 00  MagicFormel
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 20 10 00 00 00 00 E0 00 20 00  CHIP
0050: 4D 46 30 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF0```
...
2050: 43 48 49 50 00 00 20 10 00 00 00 01 E0 00 20 00  CHIP
2060: 4C 5F E4 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  L_```
...
4060: 43 48 49 50 00 00 20 10 00 00 00 02 E0 00 20 00  CHIP
4070: 4D 46 32 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF2```
...
6070: 43 48 49 50 00 00 20 10 00 00 00 03 E0 00 20 00  CHIP
6080: 4D 46 33 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF3```
...
8080: 43 48 49 50 00 00 20 10 00 00 00 04 E0 00 20 00  CHIP
8090: 4D 46 34 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF4```
...
A090: 43 48 49 50 00 00 20 10 00 00 00 05 E0 00 20 00  CHIP
A0A0: 4D 46 35 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF5```
...
C0A0: 43 48 49 50 00 00 20 10 00 00 00 06 E0 00 20 00  CHIP
C0B0: 4D 46 36 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF6```
..
E0B0: 43 48 49 50 00 00 20 10 00 00 00 07 E0 00 20 00  CHIP
E0C0: 4D 46 37 8D 00 DF 60 8D 01 DF 60 8D 02 DF 60 8D  MF7```


===========================================================================


15 - C64 Game System, System 3

     Size      : 512Kb (64 banks of 8Kb each)
     Addr range: $8000-9FFF (all modules)
     /EXROM    : active (0)
     /GAME     : inactive (1)

        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
        -----------------------------------------------  ----------------
000000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
000010: 00 00 00 40 01 00 00 0F 00 01 00 00 00 00 00 00  @
000020: 43 36 34 47 53 20 43 61 72 74 72 69 64 67 65 00  C64GSCartridge
000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
000040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
000050: 6D 80 C5 80 C3 C2 CD 38 30 4C CB 80 4C 36 84 4C  mŀ80LˀL6L
....
002050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00  CHIP
002060: 18 D0 A9 FF 8D 15 D0 8D 1D D0 8D 17 D0 A2 07 A9  ЩЍЍТ
....
004060: 43 48 49 50 00 00 20 10 00 00 00 02 80 00 20 00  CHIP
004070: E0 08 19 21 77 84 52 98 9F 80 A5 21 31 01 31 89  !wR!11
....
006070: 43 48 49 50 00 00 20 10 00 00 00 03 80 00 20 00  CHIP
006080: C0 08 1C 1D A0 92 03 03 D8 AA 04 C0 B8 01 40 EA  ت@
....
07E430: 43 48 49 50 00 00 20 10 00 00 00 3F 80 00 20 00  CHIP?
07E440: 45 20 41 20 42 49 47 20 58 FE 4F 4E 20 54 48 49  EABIGXONTHI

    Here is a list of the known cartridges:

    C64GS 4-in-1      (Commodore)  (512 kB)
    Last Ninja Remix  (System 3)   (512 kB)
    Myth              (System 3)   (512 kB)

    ROM memory is organized in 8Kb ($2000) banks  located  at  $8000-$9FFF.
    Bank switching is done by writing to address $DE00+X, where  X  is  the
    bank number (STA $DE00,X). For instance, to read from bank  3,  address
    $DE03 is accessed.

    The CRT file contains a string of CHIP blocks, each block with a  start
    address of $8000, length $2000 and the bank number in the  bank  field.
    In the cartridge header, /EXROM ($18) is set to 0, /GAME ($19)  is  set
    to 1 to enable the 8Kb ROM configuration.


===========================================================================


16 - WarpSpeed

     Size      : 16Kb
     Addr range: $8000-BFFF
     /EXROM    : inactive (1)
     /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 10 01 01 00 00 00 00 00 00  @
0020: 57 61 72 70 73 70 65 65 64 00 00 00 00 00 00 00  Warpspeed
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00  CHIP@@
0050: 4C 22 80 4C 22 80 FF 43 42 4D 20 53 E4 20 18 E5  L"L"CBMS

     After RESET or  POWER  ON,  16kB  of  Cartridge  ROM  are  visible  at
     $8000-$BFFF. Additionally, ROM normally located  at  $9E00-$9FFF  is
     mirrored into IO1 and  IO2  at  $DE00-$DFFF.  ROM  at  $8000-$BFFF  is
     disabled by writing into the IO2 area (typically  $DF00)  and  may  be
     re-enabled by writing  into  IO1  ($DE00).  However,  the  $DE00-$DFFF
     (IO1/IO2) area itself always remains mapped to cartridge ROM.


===========================================================================


17 - Dinamic

     Size      : 128Kb (16 banks of 8Kb each)
     Addr range: $8000-9FFF (all modules)
     /EXROM    : active (0)
     /GAME     : inactive (1)

        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
        -----------------------------------------------  ----------------
000000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
000010: 00 00 00 40 01 00 00 11 00 01 00 00 00 00 00 00  @
000020: 4E 61 72 63 6F 20 50 6F 6C 69 63 65 00 00 00 00  NarcoPolice
000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
000040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
000050: 0B 80 0B 80 C3 C2 CD 38 30 00 00 78 A2 FF 9A D8  80x
..
002050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00  CHIP
002060: 1C 8C 1B 8C 16 16 8F 16 16 88 1C 1C 86 1C 1C 89  
..
004060: 43 48 49 50 00 00 20 10 00 00 00 02 80 00 20 00  CHIP
004070: B6 02 07 08 07 07 00 0A 0A B6 00 05 0A 00 07 07  
..
01E130: 43 48 49 50 00 00 20 10 00 00 00 0F 80 00 20 00  CHIP
01E140: 00 D5 70 03 F5 70 0F 5F 70 0F F7 70 35 FD F0 37  pp_pp57

    Here is a list of the known DINAMIC cartridges:

    Narco Police  (128 kB)
    Satan         (128 kB)

    ROM memory is organized in 8Kb ($2000) banks  located  at  $8000-$9FFF.
    Bank switching is done by reading from address $DE00+X, where X is  the
    bank number (LDA $DE00,X). For instance, to read from bank  3,  address
    $DE03 is accessed.

    The CRT file contains a string of CHIP blocks, each block with a  start
    address of $8000, length $2000 and the bank number in the  bank  field.
    In the cartridge header, /EXROM ($18) is set to 0 & /GAME ($19) is  set
    to 1 to enable the 8Kb ROM configuration.


===========================================================================


18 - Zaxxon, Super Zaxxon (SEGA)

     Size      : 20Kb (3 banks of different sizes)
     Addr range: $8000-8FFF (mirrored in $9000-9FFF, module 0, chip U1)
                 $A000-BFFF (banked modules 1 and 2, chip U2)
     /EXROM    : active (0)
     /GAME     : active (0)

        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
        -----------------------------------------------  ----------------
000000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
000010: 00 00 00 40 01 00 00 12 00 00 00 00 00 00 00 00  @
000020: 5A 61 78 78 6F 6E 00 00 00 00 00 00 00 00 00 00  Zaxxon
000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
000040: 43 48 49 50 00 00 10 10 00 00 00 00 80 00 10 00  CHIP
000050: 0D 80 29 80 C3 C2 CD 38 30 78 4C 09 80 78 A9 00  )80xLx
..
001050: 43 48 49 50 00 00 20 10 00 00 00 00 A0 00 20 00  CHIP
001060: A2 0F BD 00 20 D0 04 CA 10 F8 60 BD 70 20 F0 0D  `p
..
003060: 43 48 49 50 00 00 20 10 00 00 00 01 A0 00 20 00  CHIP
003070: 65 A2 36 A3 E7 A3 CB A4 94 A5 86 A6 5E A7 35 A8  e6ˤ^5

    The (Super) Zaxxon carts use a 4Kb ($1000) ROM at $8000-$8FFF (mirrored
    in $9000-$9FFF) along with two 8Kb ($2000) cartridge banks  located  at
    $A000-$BFFF. One of the two banks is selected by doing a read access to
    either the $8000-$8FFF area (bank 0 is selected) or to $9000-$9FFF area
    (bank 1 is selected). /EXROM ($18 = $00) and /GAME ($19  =  $00)  lines
    are always pulled to GND to select the 16 kB ROM configuration.

    The CRT file includes three CHIP blocks:
    a) bank = 0, load address = $8000, size = $1000
    b) bank = 0, load address = $A000, size = $2000
    c) bank = 1, load address = $A000, size = $2000


===========================================================================


19. Magic Desk, Domark, HES Australia

    Size      : 32Kb, 64Kb or 128Kb sizes (4 to 16 banks of 8Kb each)
    Addr range: $8000-9FFF (all banks)
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 13 00 01 00 00 00 00 00 00  @
0020: 4D 61 67 69 63 20 44 65 73 6B 00 00 00 00 00 00  MagicDesk
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
0050: 09 80 C6 CA C3 C2 CD 38 30 8E 16 D0 20 A3 FD 20  80
..
2050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00  CHIP
2060: 00 3F 0A 01 00 86 4E 24 28 31 30 29 3A 4A 4F 59  ?N$(10):JOY
..
4060: 43 48 49 50 00 00 20 10 00 00 00 02 80 00 20 00  CHIP
4070: 00 8B C9 28 4E 24 2C 31 29 B3 B1 22 FF 22 A7 32  (N$,1)""2
..
6070: 43 48 49 50 00 00 20 10 00 00 00 03 80 00 20 00  CHIP
6080: AE 01 83 33 2C 37 2C 22 32 29 20 44 45 4C 20 4B  3,7,"2)DELK

    This cartridge type is very similar to the OCEAN cart type: ROM  memory
    is  organized  in  8Kb  ($2000)  banks  located  at  $8000-$9FFF.  Bank
    switching is done by writing the bank number to $DE00.  Different  from
    the Ocean type, bit 8 is cleared for selecting one of the ROM banks. If
    bit 8 is set ($DE00 = $80), the /GAME  &  /EXROM  lines  are  disabled,
    turning on RAM at $8000-$9FFF instead of ROM.

    In the cartridge header, /EXROM ($18) is set to 0, /GAME ($19)  is  set
    to 1 to indicate the RESET/power-up configuration of 8 kB ROM.

    Here is a list of the known cartridges:

    Ghosbusters        (HES Australia)   (32 kB)
    Magic Desk         (Commodore)       (32 kB)
    Badlands           (Domark)          (64 kB)
    Vindicators        (Domark)          (64 kB)
    Wonderboy          (HES Australia)   (64 kB)
    Cyberball          (Domark)         (128 kB)


===========================================================================


20. Super Snapshot 5

    Size      : 64Kb (4 banks of 16Kb each)
    Addr range: $8000-BFFF
    /EXROM    : inactive (1)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 14 01 01 00 00 00 00 00 00  @
0020: 53 75 70 65 72 20 53 6E 61 70 73 68 6F 74 20 35  SuperSnapshot5
0030: 20 4E 54 53 43 00 00 00 00 00 00 00 00 00 00 00  NTSC
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00  CHIP@@
0050: 09 80 59 80 C3 C2 CD 38 30 20 03 9F 00 FA F4 20  Y80
...
4050: 43 48 49 50 00 00 40 10 00 00 00 01 80 00 40 00  CHIP@@
4060: 79 DE BC FE C3 C2 CD 38 30 A9 05 8D 20 D0 8D 21  y޼80Ѝ!
...
8060: 43 48 49 50 00 00 40 10 00 00 00 02 80 00 40 00  CHIP@@
8070: 50 DE BC FE C3 C2 CD 38 30 A9 0A 85 6A A9 0D 85  P޼80j
...
C070: 43 48 49 50 00 00 40 10 00 00 00 03 80 00 40 00  CHIP@@
C080: 50 DE BC FE C3 C2 CD 38 30 85 07 20 1A AD A5 76  P޼80v


===========================================================================


21. Comal-80

    Size      : 64Kb (4 banks of 16Kb each)
    Addr range: $8000-BFFF
    /EXROM    : inactive (1)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 15 01 01 00 00 00 00 00 00  @
0020: 43 6F 6D 61 6C 20 38 30 00 00 00 00 00 00 00 00  Comal80
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00  CHIP@@
0050: 87 87 70 CF C3 C2 CD 38 30 4C AA CF 4C 70 CF 4C  p80LLpL
...
4050: 43 48 49 50 00 00 40 10 00 00 00 01 80 00 40 00  CHIP@@
4060: AA CF 70 CF C3 C2 CD 38 30 01 29 01 28 01 2C 04  p80)(,
...
8060: 43 48 49 50 00 00 40 10 00 00 00 02 80 00 40 00  CHIP@@
8070: AA CF 70 CF C3 C2 CD 38 30 91 92 92 92 92 92 92  p80
...
C070: 43 48 49 50 00 00 40 10 00 00 00 03 80 00 40 00  CHIP@@
C080: 7B C8 7E C8 C3 C2 CD 38 30 43 4F 4D 41 4C 80 93  {~80COMAL


    The Comal-80 Cartridge uses $DE00 for bank  selection,  and  uses  16Kb
    banks ($4000) at $8000-$BFFF. There are 4 banks of ROM memory  and  are
    referenced by the following values:

       $80 -> Bank 0
       $81 -> Bank 1
       $82 -> Bank 2
       $83 -> Bank 3


===========================================================================


22. Structured Basic

    Size      : 16Kb (2 banks of 8Kb each)
    Addr range: $8000-9FFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

    No sample data/file available.

    Any read/write access to $DE00 or $DE01 will switch in bank 0.
    Any read/write access to $DE02 will switch in bank 1.
    Any read/write access to $DE03 will switch off /EXROM.


===========================================================================


23. Ross

    Size      : 16Kb or 32Kb sizes (1 or 2 banks of 16Kb each)
    Addr range: $8000-BFFF
    /EXROM    : active (0)
    /GAME     : active (0)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 17 00 00 00 00 00 00 00 00  @
0020: 52 6F 73 73 20 31 34 00 00 00 00 00 00 00 00 00  Ross14
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 40 10 00 00 00 00 80 00 40 00  CHIP@@
0050: 09 80 09 80 C3 C2 CD 38 30 A2 00 BD 20 80 4D 0E  80M
...
4050: 43 48 49 50 00 00 40 10 00 00 00 01 80 00 40 00  CHIP@@
4060: 3F 5A 4D 4D 50 4D 8D 25 3F 1A 1F 77 3F CD E0 3F  ?ZMMPM%?w??

    Any read access to $DE00 will switch in bank 1 (if cart is 32Kb).
    Any read access to $DF00 will switch off /EXROM and /GAME.


===========================================================================


24. Dela EP64

    Size      : 8Kb to 72kb sizes (1 to 9 banks of 8Kb each,
                                   or 1 bank of 8Kb and 1 or 2 banks
                                   of 32Kb each)
    Addr range: $8000-9FFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 18 00 01 00 00 00 00 00 00  @
0020: 44 45 4C 41 20 45 50 36 34 00 00 00 00 00 00 00  DELAEP64
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
0050: 00 85 5E FE C3 C2 CD 38 30 FF FF FF FF FF FF FF  ^80
...
2050: 43 48 49 50 00 00 80 10 00 00 00 01 80 00 80 00  CHIP
2060: 54 45 53 54 0D 2A 0D 54 45 20 36 34 0D 00 00 00  TEST*TE64

    This is an eprom cartridge. It has 1 2764 (8Kb) which  holds  the  base
    eprom with the base menu, and 2 27256 eproms of  which  8Kb  parts  are
    banked into the $8000-9FFF area.

    The bank selecting is done by writing to $DE00. The following bits  are
    used for bank decoding in $DE00 (0 being the LSB, 3 being the MSB).

         Bit# 76543210
              xx10xx32

    Any bank value below 4 or above 11 switches in the base bank (bank 0).

    The bit values for each eprom bank are :

    eprom bank 1 : xx00xx01
    eprom bank 2 : xx01xx01
    eprom bank 3 : xx10xx01
    eprom bank 4 : xx11xx01
    eprom bank 5 : xx00xx10
    eprom bank 6 : xx01xx10
    eprom bank 7 : xx10xx10
    eprom bank 8 : xx11xx10

    Setting bit 7 high will disablef /EXROM (set to high)


===========================================================================


25. Dela EP7x8

    Size      : 8Kb to 64kb sizes (1 to 8 banks of 8Kb each)
    Addr range: $8000-9FFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 19 00 01 00 00 00 00 00 00  @
0020: 44 45 4C 41 20 45 50 37 78 38 00 00 00 00 00 00  DELAEP7x8
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
0050: 09 80 5E FE C3 C2 CD 38 30 78 A2 FF 9A D8 8E 16  ^80x؎
...
2050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00  CHIP
2060: 94 83 A0 83 C3 C2 CD 38 30 02 BB 5A 30 5F EE 3D  80Z0_=

    This is an eprom cartridge. It has 8 8Kb banks of which the first holds
    the base menu, the other eproms can be banked into the $8000-9FFF area.

    The bank selecting is done by writing to $DE00. Each low bit is used to
    bank in the respective eprom. If all bits are high then the  /EXROM  is
    disabled (set to high).

    The bit values for each eprom bank is:

    eprom bank 1 : 11111110 ($FE) (base eprom)
    eprom bank 2 : 11111101 ($FD)
    eprom bank 3 : 11111011 ($FB)
    eprom bank 4 : 11110111 ($F7)
    eprom bank 5 : 11101111 ($EF)
    eprom bank 6 : 11011111 ($DF)
    eprom bank 7 : 10111111 ($BF)
    eprom bank 8 : 01111111 ($7F)

    /EXROM off   : 11111111 ($FF)


===========================================================================


26. Dela EP256

    Size      : 8Kb to 262kb sizes (1 to 33 banks of 8Kb each)
    Addr range: $8000-9FFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 1A 00 01 00 00 00 00 00 00  @
0020: 44 45 4C 41 20 45 50 32 35 36 00 00 00 00 00 00  DELAEP256
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
0050: 00 85 5E FE C3 C2 CD 38 30 93 0D 2B 2B 2B 20 45  ^80+++E
...
2050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00  CHIP
2060: 09 80 28 80 C3 C2 CD 38 30 78 A2 05 8E 16 D0 20  (80x
...
4060: 43 48 49 50 00 00 20 10 00 00 00 02 80 00 20 00  CHIP
4070: 0B 80 BC FE C3 C2 CD 38 30 DC 10 8E 16 D0 20 87  80
...
6070: 43 48 49 50 00 00 20 10 00 00 00 03 80 00 20 00  CHIP
6080: 09 80 F6 8E C3 C2 CD 38 30 A2 C8 8E 16 D0 20 ..  80Ȏ.
...
8080: 43 48 49 50 00 00 20 10 00 00 00 04 80 00 20 00  CHIP
8090: 94 83 A0 83 C3 C2 CD 38 30 02 BB 5A 30 5F EE 3D  80Z0_=

    This is an eprom cartridge. It has 33 8Kb  banks  of  which  the  first
    holds the base menu, the other eproms can be banked into the $8000-9FFF
    area.

    The bank selecting is done by writing to $DE00.

    The values for the (extra) eprom banks are:

    eprom banks  1- 8 : $38-3F
    eprom banks  9-16 : $28-2F
    eprom banks 17-24 : $18-1F
    eprom banks 25-32 : $08-0F

    Setting bit 7 high will disable /EXROM (set to high)


===========================================================================


27. Rex EP256

    Size      : 8Kb to 262kb sizes (1 bank of 8Kb and 1 to  8  banks  of
                                   either 8Kb, 16Kb or 32Kb)

    Addr range: $8000-9FFF
    /EXROM    : active (0)
    /GAME     : inactive (1)

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F       ASCII
      -----------------------------------------------  ----------------
0000: 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20  C64CARTRIDGE
0010: 00 00 00 40 01 00 00 1B 00 01 00 00 00 00 00 00  @
0020: 52 45 58 20 45 50 32 35 36 00 00 00 00 00 00 00  REXEP256
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  
0040: 43 48 49 50 00 00 20 10 00 00 00 00 80 00 20 00  CHIP
0050: 09 80 C1 FE C3 C2 CD 38 30 20 A3 FD 20 50 FD 20  80P
...
2050: 43 48 49 50 00 00 20 10 00 00 00 01 80 00 20 00  CHIP
2060: 09 80 F2 8F C3 C2 CD 38 30 A2 C8 8E 16 D0 20 A3  80Ȏ
...
4060: 43 48 49 50 00 00 40 10 00 00 00 02 80 00 40 00  CHIP@@
4070: 09 80 09 80 C3 C2 CD 38 30 58 D8 20 84 FF 20 8A  80X

    This is an eprom cartridge. It has 9 eprom sockets, of which the  first
    holds the base eprom with the base menu which  is  an  8Kb  eprom,  the
    other eprom sockets can handle 8Kb, 16Kb or 32Kb eproms, of  which  8kb
    can be banked into the $8000-9FFF area.

    The bank selecting is done by  writing  to  $DFA0.  Bits  2,  1  and  0
    determine which socket is used and bits 5 and 4 are used to  select  an
    8Kb piece of the eprom.

    The possible values for bits 5 and 4 for the (extra) eprom banks are:

     8Kb        : 3, 2, 1, 0

    16Kb bank 0 : 2, 0
    16Kb bank 1 : 3, 1

    32Kb bank 0 : 0
    32Kb bank 1 : 1
    32Kb bank 2 : 2
    32Kb bank 3 : 3

    Reading from $DFC0 disables /EXROM (set to 1)
    Reading from $DFE0 enabled /EXROM (set to 0)


===========================================================================


28. Mikro Assembler

    Size      : 
    Addr range: 
    /EXROM    : 
    /GAME     : 

    No information yet.


===========================================================================


29. Reserved


===========================================================================


30. Action Replay 4 (AR4)

    Size      : 
    Addr range: 
    /EXROM    : 
    /GAME     : 

    No information yet.


===========================================================================


31. StarDOS

    Size      : 
    Addr range: 
    /EXROM    : 
    /GAME     : 

    No information yet.


===========================================================================


32. EasyFlash

    Size      : 
    Addr range: 
    /EXROM    : 
    /GAME     : 

    No information yet.


