PRT | 76543210 | 00 | 00****** | 01 | 00000*** | WS mode 01 | ******** | WSC mode 04 | 000***** | WS mode 04 | 00****** | WSC mode <-- added bit sticks until next write 05 | 0******* | 06 | ******** | 07 | 0***0*** | WS mode 07 | ******** | WSC mode <-- added bits stick until next write 15 | 00****** | 16 | ******** | WS+ | Vtotal-1 | initial = 09Eh (158) 17 | ******** | WS+WSC | Vblank | initial = 09Bh (155) | Screen shuts off at 90h and vtotal 17 | 00000000 | SC 18 | 00000000 | 19 | 00000000 | 1A | ???????? | has something to do with bit0 when b0 set, only top line displays??? screen is OFF otherwise! WSC doesn't give any weird returns after fixing the bit SC puts 3C here for a while??? 1B | 00000000 | PAL | 0***0*** | All of them~ 40-5F|00000000 | without DMA enabled 40 | *******0 | 41 | ******** | 42 | 0000**** | 43 | 00000000 | 44 | *******0 | 45 | ******** | 46 | *******0 | 47 | ******** | 48 | !*000000 | 49 | 00000000 | 4A | ******** | 4B | ******** | 4C | 0000**** | 4D | 00000000 | 4E | ******** | 4F | ******** | 50 | 0000**** | 51 | 00000000 | 52 | !*0***** | 53 | 00000000 | 54-5F|00000000 | 60 | ***0*0** | initial = 0Ah 61 | 00000000 | 62 | 1000000* | SC | bit0 turns the console off lmao 62 | 0000000* | WSC | bit0 turns the console off lmao 63 | 00000000 | 64 | 00000000 | 65 | 00000000 | 66 | 00000000 | 67 | 00000000 | 68 | 00000000 | 69 | 00000000 | 6A | ******** | 6B | 0**0**** | 6C | 00000000 | 6D | 00000000 | 6E | 00000000 | 6F | 00000000 | 70 | FIXED? | initial = SC=0D0h WSC=0 71 | FIXED? | initial = SC=077h WSC=0 72 | FIXED? | initial = SC=0F7h WSC=0 1783 73 | FIXED? | initial = SC=006h WSC=0 74 | FIXED? | initial = SC=0E2h WSC=0 2786 75 | FIXED? | initial = SC=00Ah WSC=0 76 | FIXED? | initial = SC=0EAh WSC=0 77 | FIXED? | initial = SC=0EEh WSC=0 78 | 00000000 | 79 | 00000000 | 7A | 00000000 | 7B | 00000000 | 7C | 00000000 | 7D | 00000000 | 7E | 00000000 | 7F | 00000000 | FRQH| 00000*** | FRQL| ******** | 8F | ******** | 91 | !000**** | 94 | 0000**** | 95 | ******** | WS: 96 | ******** | 97 | 000000** | 98 | ******** | 99 | 000000** | 9A | 00000111 | 9B | 11111110 | 9C | 11111111 | 9D | 11111111 | WSC+SC: 96 | 00000000 | 97 | 00000000 | 98 | 00000000 | 99 | 00000000 | 9A | 00000000 | 9B | 00000000 | 9C | 00000000 | 9D | 00000000 | 9E | 000000** | 9F | 00000000 | A0 | 1++++*11 | SC's WS mode A0 | 1000**11 | SC's WSC mode + WSC A0 | 1000**01 | WS A1 | 00000000 | A2 | 0000**** | A3 | 0000**** | bit3 barfs all over serial?? AC | 0000000* | bit0 turns the console off lmao AD | 00000000 | AE | 00000000 | AF | 00000000 | B0 | *******0 | WSC + SC B0 | *****011 | WS B5 | 0***!!!! | B7 | 000*0000 | B8 | 00000000 | B9 | 00000000 | 0,1 = fixed * = holds data + = locking set ! = readonly data Unit select: &01E0 == 0000: VDP(1) &01E0 == 0020: VDP(2) &01E0 == 0040: DMA (WSC only) &FFE0 == 0060: SYS? 6A-6B is &01E0 &01E0 == 0080: SND &01E0 == 00A0: SYS? A0-A1 is &FFFF AC-AF is &FFFF B8-BF is &FFFF &FFC0 == 00C0: CART &C000 != 0: NOP WSC+: ELSE: 0 WS: ELSE: NOP Memory: In WS mode on WSC, 4000-FFFF return NOP! Same as WS itself!