2 IREM G-101 based cartridge
\r
4 $8000-$9fff bank#0, switchable or last - 2
\r
5 $a000-$bfff bank#1, switchable
\r
6 $c000-$dfff bank#2, last - 2 or switchable
\r
9 Major League PCB maybe ignore write operation to $9000-$9fff
\r
10 $9000-$9fff write register are fixed to bank #2 = last -2 and VRAM A10 = high
\r
16 size_base = 1 * mega, size_max = 2 * mega,
\r
20 size_base = 1 * mega, size_max = 1 * mega,
\r
23 ppu_ramfind = false,
\r
24 vram_mirrorfind = false
\r
27 function cpu_dump(d, pagesize, banksize)
\r
30 cpu_write(d, 0x9000, 0);
\r
31 for(local i = 0; i < pagesize - 2; i += 2){
\r
32 cpu_write(d, 0x8000, i);
\r
33 cpu_write(d, 0xa000, i | 1);
\r
34 cpu_read(d, 0x8000, banksize * 2);
\r
36 cpu_read(d, 0xc000, banksize);
\r
37 cpu_read(d, 0xe000, banksize);
\r
39 cpu_write(d, 0x9000, 2);
\r
40 for(local i = 0; i < pagesize - 2; i += 2){
\r
41 cpu_write(d, 0x8000, i);
\r
42 cpu_write(d, 0xa000, i | 1);
\r
43 cpu_read(d, 0xc000, banksize);
\r
44 cpu_read(d, 0xa000, banksize);
\r
46 cpu_read(d, 0x8000, banksize);
\r
47 cpu_read(d, 0xe000, banksize);
\r
50 function ppu_dump(d, pagesize, banksize)
\r
52 for(local i = 0; i < pagesize ; i += 8){
\r
53 for(local j = 0; j < 8; j += 1){
\r
54 cpu_write(d, 0xb000 + j, i + j);
\r
56 ppu_read(d, 0, banksize * 8);
\r