summaryrefslogtreecommitdiff
path: root/hram.asm
diff options
context:
space:
mode:
Diffstat (limited to 'hram.asm')
-rwxr-xr-xhram.asm297
1 files changed, 169 insertions, 128 deletions
diff --git a/hram.asm b/hram.asm
index 9e5b2924..19caf092 100755
--- a/hram.asm
+++ b/hram.asm
@@ -1,128 +1,169 @@
-HRAM_START EQU $ff80
-hPushOAM EQU $ff80 ; 10 bytes
-
-hROMBankBackup EQU $ff8c
-hBuffer EQU $ff8d
-hFF8E EQU $ff8e
-hRTCDayHi EQU $ff8f
-hRTCDayLo EQU $ff90
-hRTCHours EQU $ff91
-hRTCMinutes EQU $ff92
-hRTCSeconds EQU $ff93
-
-hHours EQU $ff96
-
-hMinutes EQU $ff98
-
-hSeconds EQU $ff9a
-
-hVBlankCounter EQU $ff9d
-hFF9E EQU $ff9e
-hROMBank EQU $ff9f
-hVBlank EQU $ffa0
-hMapEntryMethod EQU $ffa1
-hMenuReturn EQU $ffa2
-
-hJoypadReleased EQU $ffa4
-hJoypadPressed EQU $ffa5
-hJoypadDown EQU $ffa6
-hJoypadSum EQU $ffa7
-hJoyReleased EQU $ffa8
-hJoyPressed EQU $ffa9
-hJoyDown EQU $ffaa
-hJoyLast EQU $ffab
-hInMenu EQU $ffac
-
-hPrinter EQU $ffae
-hGraphicStartTile EQU $ffaf
-hMoveMon EQU $ffb0
-hMapObjectIndexBuffer EQU $ffb1
-hObjectStructIndexBuffer EQU $ffb2
-
-hConnectionStripLength EQU $ffb1
-hConnectedMapWidth EQU $ffb2
-
-hPastLeadingZeroes EQU $ffb5
-
-hStringCmpString1 EQU $ffb3
-hStringCmpString2 EQU $ffb7
-
-hDividend EQU $ffb5 ; length in b register, before 'call Divide' (max 4 bytes)
-hDivisor EQU $ffb9 ; 1 byte long
-hQuotient EQU $ffb6 ; result (3 bytes long)
-hRemainder EQU $ffb9
-
-hMultiplicand EQU $ffb6 ; 3 bytes long
-hMultiplier EQU $ffb9 ; 1 byte long
-hProduct EQU $ffb5 ; result (4 bytes long)
-
-hMathBuffer EQU $ffba
-
-hPrintNum1 EQU $ffb5
-hPrintNum2 EQU $ffb6
-hPrintNum3 EQU $ffb7
-hPrintNum4 EQU $ffb8
-hPrintNum5 EQU $ffb9
-hPrintNum6 EQU $ffba
-hPrintNum7 EQU $ffbb
-hPrintNum8 EQU $ffbc
-hPrintNum9 EQU $ffbd
-hPrintNum10 EQU $ffbe
-
-hMGStatusFlags EQU $ffbe
-
-hUsedSpriteIndex EQU $ffbf
-hUsedSpriteTile EQU $ffc0
-hFFC1 EQU $ffc1
-hFFC2 EQU $ffc2
-hFFC3 EQU $ffc3
-hFFC4 EQU $ffc4
-hMoneyTemp EQU $ffc5
-
-hMGJoypadPressed EQU $ffc5
-hMGJoypadReleased EQU $ffc6
-
-hLCDCPointer EQU $ffc8
-hLYOverrideStart EQU $ffc9
-hLYOverrideEnd EQU $ffca
-hMobileReceive EQU $ffcb
-hFFCC EQU $ffcc
-hLinkPlayerNumber EQU $ffcd
-hFFCE EQU $ffce
-hSerialSend EQU $ffcf
-hSerialReceive EQU $ffd0
-
-hSCX EQU $ffd1
-hSCY EQU $ffd2
-hWX EQU $ffd3
-hWY EQU $ffd4
-hTilesPerCycle EQU $ffd5
-hBGMapMode EQU $ffd6
-hBGMapThird EQU $ffd7
-hBGMapAddress EQU $ffd8
-
-hOAMUpdate EQU $ffda
-hSPBuffer EQU $ffdb
-
-hBGMapUpdate EQU $ffdd
-hFFDE EQU $ffde
-
-hMapAnims EQU $ffe0
-hTileAnimFrame EQU $ffe1
-
-hLastTalked EQU $ffe2
-
-hRandom EQU $ffe3
-hRandomAdd EQU $ffe3
-hRandomSub EQU $ffe4
-hSecondsBackup EQU $ffe5
-hBattleTurn EQU $ffe6 ; Which trainers turn is it? 0: Player, 1: Opponent Trainer
-hCGBPalUpdate EQU $ffe7
-hCGB EQU $ffe8
-hSGB EQU $ffe9
-hDMATransfer EQU $ffea
-hMobile EQU $ffeb
-hFFEC EQU $ffec
-hClockResetTrigger EQU $ffed
-
-HRAM_END EQU $ffff
+SECTION "HRAM", HRAM
+
+hTransferVirtualOAM:: ds 12 ; ff80
+
+hROMBankBackup:: db ; ff8c
+hBuffer:: db ; ff8d
+hFF8E:: db ; ff8e
+
+hRTCDayHi:: db ; ff8f
+hRTCDayLo:: db ; ff90
+hRTCHours:: db ; ff91
+hRTCMinutes:: db ; ff92
+hRTCSeconds:: db ; ff93
+ ds 2
+
+hHours:: db ; ff96
+ ds 1
+hMinutes:: db ; ff98
+ ds 1
+hSeconds:: db ; ff9a
+ ds 1
+ ds 1
+
+hVBlankCounter:: db ; ff9d
+ ds 1
+
+hROMBank:: db ; ff9f
+hVBlank :: db ; ffa0
+hMapEntryMethod:: db ; ffa1
+hMenuReturn:: db ; ffa2
+ ds 1
+
+hJoypadReleased:: db ; ffa4
+hJoypadPressed:: db ; ffa5
+hJoypadDown:: db ; ffa6
+hJoypadSum:: db ; ffa7
+hJoyReleased:: db ; ffa8
+hJoyPressed:: db ; ffa9
+hJoyDown:: db ; ffaa
+hJoyLast:: db ; ffab
+
+hInMenu:: db ; ffac
+ ds 1
+
+hPrinter:: db ; ffae
+hGraphicStartTile:: db ; ffaf
+hMoveMon:: db ; ffb0
+
+UNION ; ffb1
+hMapObjectIndexBuffer:: db ; ffb1
+hObjectStructIndexBuffer:: db ; ffb2
+
+NEXTU ; ffb1
+hConnectionStripLength:: db ; ffb1
+hConnectedMapWidth:: db ; ffb2
+ENDU ;ffb3
+
+hEnemyMonSpeed:: dw ; ffb3
+
+UNION ; ffb5
+ ds 2
+hPartyMon1Speed:: dw ; ffb7
+
+NEXTU ; ffb5
+
+UNION ; ffb5
+hDividend:: ds 4 ; ffb5 ; length in b register, before 'call Divide' (max 4 bytes)
+hDivisor:: db ; ffb9 ; 1 byte long
+NEXTU ; ffb5
+ ds 1
+hQuotient:: ds 3 ; ffb6 ; result (3 bytes long)
+hRemainder:: db ; ffb9
+NEXTU ; ffb5
+ ds 1
+hMultiplicand:: ds 3 ; ffb6 ; 3 bytes long
+hMultiplier:: db ; ffb9 ; 1 byte long
+NEXTU ; ffb5
+hProduct:: ds 4 ; ffb5 ; result (4 bytes long)
+ENDU ; ffba
+
+hMathBuffer:: ds 5 ; ffba
+
+NEXTU ; ffb5
+
+hPrintNum1:: db ; ffb5
+hPrintNum2:: db ; ffb6
+hPrintNum3:: db ; ffb7
+hPrintNum4:: db ; ffb8
+hPrintNum5:: db ; ffb9
+hPrintNum6:: db ; ffba
+hPrintNum7:: db ; ffbb
+hPrintNum8:: db ; ffbc
+hPrintNum9:: db ; ffbd
+hPrintNum10:: db ; ffbe
+
+NEXTU ; ffb5
+
+ ds 9
+hMGStatusFlags:: db ; ffbe
+ENDU ; ffbf
+
+hUsedSpriteIndex:: db ; ffbf
+hUsedSpriteTile:: db ; ffc0
+hFFC1:: db ; ffc1
+hFFC2:: db ; ffc2
+hFFC3:: db ; ffc3
+hFFC4:: db ; ffc4
+
+UNION ; ffc5
+hMoneyTemp:: ds 3 ; ffc5
+NEXTU ; ffc5
+hMGJoypadPressed:: db ; ffc5
+hMGJoypadReleased:: db ; ffc6
+ENDU ; ffc8
+
+hLCDCPointer:: db ; ffc8
+hLYOverrideStart:: db ; ffc9
+hLYOverrideEnd:: db ; ffca
+
+hMobileReceive:: db ; ffcb
+hFFCC:: db ; ffcc
+hLinkPlayerNumber:: db ; ffcd
+hFFCE:: db ; ffce
+hSerialSend:: db ; ffcf
+hSerialReceive:: db ; ffd0
+
+hSCX:: db ; ffd1
+hSCY:: db ; ffd2
+hWX:: db ; ffd3
+hWY:: db ; ffd4
+hTilesPerCycle:: db ; ffd5
+hBGMapMode:: db ; ffd6
+hBGMapThird:: db ; ffd7
+hBGMapAddress:: db ; ffd8
+
+ ds 1
+
+hOAMUpdate :: db ; ffda
+
+hSPBuffer:: dw ; ffdb
+
+hBGMapUpdate:: db ; ffdd
+hFFDE:: db ; ffde
+
+ ds 1
+
+hMapAnims:: db ; ffe0
+hTileAnimFrame:: db ; ffe1
+
+hLastTalked:: db ; ffe2
+
+hRandom::
+hRandomAdd:: db ; ffe3
+hRandomSub:: db ; ffe4
+
+hSecondsBackup:: db ; ffe5
+
+hBattleTurn:: ; ffe6
+;Which trainers turn is it? 0: Player, 1: Opponent Trainer
+ db
+
+hCGBPalUpdate:: db ; ffe7
+hCGB:: db ; ffe8
+hSGB:: db ; ffe9
+
+hDMATransfer:: db ; ffea
+hMobile:: db ; ffeb
+hFFEC:: db ; ffec
+hClockResetTrigger:: db ; ffed