;license:MIT ;(c) 2018-9 by 4am ; ;------------------------------------------------------------------------------ ; YE OLDE GRAND UNIFIED MEMORY MAP ; ; LC RAM BANK 1 ; D000.. - data structures (e.g. gGamesListStore) ; ..FFFB - main program code ; FFFC..FFFF - reset and other vectors ; ; LC RAM BANK 2 ; D000..D3FF - ProRWTS data ; D400..D5FF - ProRWTS code ; D600..D9FF - HGR font data ; DA00..DEFF - unused ; DF00..DFFF - backup of stack during self-running demos ;------------------------------------------------------------------------------ ; soft switches STOREOFF = $C000 ; write to use following 4 flags: READMAINMEM = $C002 ; write to R main mem READAUXMEM = $C003 ; write to R aux mem WRITEMAINMEM = $C004 ; write to W main mem WRITEAUXMEM = $C005 ; write to W aux mem ; SLOT3STATUS = $C017 ; read high bit only ; ROM MACHINEID = $FBB3 ; zero page PARAM = $00 ; used by PARAMS_ON_STACK macro, so basically everywhere PTR = $02 SRC = $04 DEST = $06 SAVE = $08 HTAB = $24 VTAB = $25 MachineStatus =$F0 ; bit 7 = 1 if machine has joystick ; bit 6 = 1 if machine has 128K ; bit 5 = 1 if machine has a VidHD card ; bit 4 = 1 if machine is a IIgs ; $FE ; used by ParseGamesList ; $FF ; used by ParseGamesList ; main memory gPathname = $1F00 ; used by SetPath/AddToPath gKeyLen = $1F00 ; used by ParseGamesList gKey = $1F01 gValLen = $1F80 gVal = $1F81 ; actual constants SUPPORTS_SHR = %00110000 ; AND mask for MachineStatus kAttractMode = %10000000 kSearchMode = %00000000