Next: PET memory module, Previous: C128 memory module, Up: Module formats [Contents][Index]

#### 9.2.2.17 VIC20 memory module

The VIC20 memory module actually consists of two modules. The "VIC20MEM" module is mandatory and contains the RAM dump. The "VIC20ROM" module is optional and contains a dump of the ROM images.

The size of the VIC20 memory modules differs with each different memory configuration. The RAM configuration is saved in the snapshot, and restored when the snapshot is loaded. The attached cartridges are also restored upon load if they have been saved in the snapshot.

The VIC20MEM module

Version numbers: Major 1, Minor 0

Type | Name | Description
BYTE | CONFIG | Configuration register. Bits 0,1,2,3,5 reflect if the corresponding memory block is RAM (bit=1) or not (bit=0).
ARRAY | RAM0 | 1KiB RAM dump $0000-$03ff
ARRAY | RAM1 | 4KiB RAM dump $1000-$1fff
ARRAY | COLORRAM | 2KiB Color RAM, $9400-$9bff
ARRAY | BLK0 | if CONFIG & 1 then: 3KiB RAM dump $0400-$0fff
ARRAY | BLK1 | if CONFIG & 2 then: 8KiB RAM dump $2000-$3fff
ARRAY | BLK2 | if CONFIG & 4 then: 8KiB RAM dump $4000-$5fff
ARRAY | BLK3 | if CONFIG & 8 then: 8KiB RAM dump $6000-$7fff
ARRAY | BLK5 | if CONFIG & 32 then: 8KiB RAM dump $a000-$bfff

The VIC20ROM module

Version numbers: Major 1, Minor 1

Type | Name | Description
BYTE | CONFIG | Bit 0: 1= ROM block $2*** enabled. Bit 1: 1= ROM block $3*** enabled. Bit 2: 1= ROM block $4*** enabled. Bit 3: 1= ROM block $5*** enabled. Bit 4: 1= ROM block $6*** enabled. Bit 5: 1= ROM block $7*** enabled. Bit 6: 1= ROM block $A*** enabled. Bit 7: 1= ROM block $B*** enabled.
ARRAY | KERNAL | 8KiB KERNAL ROM image $e000-$ffff
ARRAY | BASIC | 16KiB BASIC ROM image $c000-$dfff
ARRAY | CHARGEN | 4KiB CHARGEN ROM image
ARRAY | BLK1A | 4KiB ROM image $2*** (if CONFIG & 1)
ARRAY | BLK1B | 4KiB ROM image $3*** (if CONFIG & 2)
ARRAY | BLK3A | 4KiB ROM image $6*** (if CONFIG & 16)
ARRAY | BLK3B | 4KiB ROM image $7*** (if CONFIG & 32)
ARRAY | BLK5A | 4KiB ROM image $A*** (if CONFIG & 64)
ARRAY | BLK5B | 4KiB ROM image $B*** (if CONFIG & 128)
ARRAY | BLK2A | 4KiB ROM image $4*** (if CONFIG & 4; added in V1.1)
ARRAY | BLK2B | 4KiB ROM image $5*** (if CONFIG & 8; added in V1.1)

Next: PET memory module, Previous: C128 memory module, Up: Module formats [Contents][Index]