diff --git a/constants/hardware_constants.asm b/constants/hardware_constants.asm index ae2e97a6b..9cb278622 100644 --- a/constants/hardware_constants.asm +++ b/constants/hardware_constants.asm @@ -1,4 +1,19 @@ -; Graciously aped from http://nocash.emubase.de/pandocs.htm . +; Graciously aped from: +; http://nocash.emubase.de/pandocs.htm +; http://gameboy.mongenel.com/dmg/asmmemmap.html + +; memory map +VRAM_Begin EQU $8000 +VRAM_End EQU $a000 +SRAM_Begin EQU $a000 +SRAM_End EQU $c000 +WRAM0_Begin EQU $c000 +WRAM0_End EQU $d000 +WRAM1_Begin EQU $d000 +WRAM1_End EQU $e000 +; hardware registers $ff00-$ff80 (see below) +HRAM_Begin EQU $ff80 +HRAM_End EQU $ffff ; MBC3 MBC3SRamEnable EQU $0000 diff --git a/docs/bugs_and_glitches.md b/docs/bugs_and_glitches.md index 3c940ef78..b4a8f9a59 100644 --- a/docs/bugs_and_glitches.md +++ b/docs/bugs_and_glitches.md @@ -1398,8 +1398,8 @@ ClearWRAM:: ; 25a push af ld [rSVBK], a xor a - ld hl, WRAM1_Start - ld bc, WRAM1_End - WRAM1_Start + ld hl, WRAM1_Begin + ld bc, WRAM1_End - WRAM1_Begin call ByteFill pop af inc a diff --git a/engine/intro_menu.asm b/engine/intro_menu.asm index 7dd6cc01b..77d1af6f9 100755 --- a/engine/intro_menu.asm +++ b/engine/intro_menu.asm @@ -111,8 +111,8 @@ _ResetWRAM: ; 5bae xor a call ByteFill - ld hl, WRAM1_Start - ld bc, wGameData - WRAM1_Start + ld hl, WRAM1_Begin + ld bc, wGameData - WRAM1_Begin xor a call ByteFill diff --git a/home/init.asm b/home/init.asm index 41bc3960f..daac79da3 100644 --- a/home/init.asm +++ b/home/init.asm @@ -69,8 +69,8 @@ Init:: ; 17d ld [rLCDC], a ; Clear WRAM bank 0 - ld hl, WRAM0_Start - ld bc, WRAM0_End - WRAM0_Start + ld hl, WRAM0_Begin + ld bc, WRAM0_End - WRAM0_Begin .ByteFill: ld [hl], 0 inc hl @@ -87,8 +87,8 @@ Init:: ; 17d ld a, [hFFEA] push af xor a - ld hl, HRAM_START - ld bc, HRAM_END - HRAM_START + ld hl, HRAM_Begin + ld bc, HRAM_End - HRAM_Begin call ByteFill pop af ld [hFFEA], a @@ -201,8 +201,8 @@ ClearWRAM:: ; 25a push af ld [rSVBK], a xor a - ld hl, WRAM1_Start - ld bc, WRAM1_End - WRAM1_Start + ld hl, WRAM1_Begin + ld bc, WRAM1_End - WRAM1_Begin call ByteFill pop af inc a diff --git a/hram.asm b/hram.asm index d036085bc..3f84d19ca 100644 --- a/hram.asm +++ b/hram.asm @@ -1,4 +1,3 @@ -HRAM_START EQU $ff80 hPushOAM EQU $ff80 ; 10 bytes hROMBankBackup EQU $ff8a @@ -124,5 +123,3 @@ hDMATransfer EQU $ffe8 hMobile EQU $ffe9 hFFEA EQU $ffea hClockResetTrigger EQU $ffeb - -HRAM_END EQU $ffff diff --git a/sram.asm b/sram.asm index 95b4f1eee..0b44c9304 100644 --- a/sram.asm +++ b/sram.asm @@ -1,9 +1,3 @@ -SRAM_Begin EQU $a000 -SRAM_End EQU $c000 - -GLOBAL SRAM_Begin, SRAM_End - - SECTION "Scratch", SRAM sScratch:: ds $600 ; a000 diff --git a/vram.asm b/vram.asm index 6f7b6eb15..fdb0dc159 100644 --- a/vram.asm +++ b/vram.asm @@ -1,9 +1,3 @@ -VRAM_Begin EQU $8000 -VRAM_End EQU $a000 - -GLOBAL VRAM_Begin, VRAM_End - - SECTION "VRAM0", VRAM VTiles0:: ds $800 diff --git a/wram.asm b/wram.asm index d741f5206..5c0cd5929 100644 --- a/wram.asm +++ b/wram.asm @@ -1,14 +1,9 @@ INCLUDE "includes.asm" INCLUDE "macros/wram.asm" + + INCLUDE "vram.asm" -WRAM0_Start EQU $c000 -WRAM0_End EQU $d000 -WRAM1_Start EQU $d000 -WRAM1_End EQU $e000 - -GLOBAL WRAM0_Start, WRAM0_End, WRAM1_Start, WRAM1_End - SECTION "Stack", WRAM0