The Battle of Olympus (NES)/RAM map

From Data Crystal
< The Battle of Olympus (NES)
Revision as of 14:49, 24 March 2018 by Abw (talk | contribs) (Created page with "{{rommap|game=The Battle of Olympus}} Some notes on RAM usage: <pre> $05 = stringBitWidth $0F = currentTextBufferPosition $10 = NPC_ID $16 = curStringBitNum $17 = curStringByt...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Chip tiny.png The following article is a ROM map for The Battle of Olympus (NES).

Some notes on RAM usage:

$05 = stringBitWidth
$0F = currentTextBufferPosition
$10 = NPC_ID
$16 = curStringBitNum
$17 = curStringByte
$19 = numTokensToRead
$1A = textStartXOffset
$1B = currentLineNumber
$1C = charactersOnCurrentLine
$42-$43 = mainStringAddr
$4A = curHP
$D7 = curTableNum (high bit indicates numbers/symbols table, second highest indicates 6-bit encoding, second-lowest bit = ???, lowest bit indicates lowercase (set) vs. uppercase (clear), others appear to be unused)
$D8-$D9 = curStringAddr
$DA-$DD = random number generator internal state
$DF = mapLocation
$E0 = oliveCount_ones
$E1 = oliveCount_tens
$E2 = salamanderSkins
$EF = maxHP
$F0-$F4 = questStatusFlags (index is 5-bit, but $F8-$F9 are used during IRQ, so I guess the 2 highest of the 5 bits are never actually set)
$FD = makingMapperChanges; INC before writing to mapper registers, DEC after finished
$FE = PPU_Control_Register_2_settings
$FF = PPU_Control_Register_1_settings