diff options
author | xCrystal <rgr.crystal@gmail.com> | 2019-06-30 18:10:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-30 18:10:42 +0200 |
commit | 880d8b42d8013dd2fc1f4a7424f9621c137cee6b (patch) | |
tree | 5b9990d43df4387e67ac5fed7f93e7d6022bdeef /src/engine/bank04.asm | |
parent | b82a3d3d0fd0cfa8d378883dca582cbee1d0b1f8 (diff) | |
parent | a6329757914a3137a5d71b83d522aaeadaf227e6 (diff) |
Merge pull request #51 from jidoc01/master
Disassemble bank 6
Diffstat (limited to 'src/engine/bank04.asm')
-rw-r--r-- | src/engine/bank04.asm | 51 |
1 files changed, 47 insertions, 4 deletions
diff --git a/src/engine/bank04.asm b/src/engine/bank04.asm index 6d29486..ffbef50 100644 --- a/src/engine/bank04.asm +++ b/src/engine/bank04.asm @@ -160,7 +160,7 @@ BoosterPack_1031b: ; 1031b (4:431b) ld [wVBlankOAMCopyToggle], a ld a, $4 ld [wTextBoxFrameType], a - farcall $1, $7599 + farcall Func_7599 farcall Func_c1a4 call DoFrameIfLCDEnabled pop af @@ -1110,7 +1110,7 @@ MainMenuFunctionTable: MainMenu_NewGame: ; 12704 (4:6704) farcall Func_c1b1 - call Func_128a9 + call DisplayPlayerNamingScreen farcall Func_1996e call EnableSRAM ld a, [s0a007] @@ -1180,8 +1180,51 @@ Func_12871: ; 12871 (4:6871) Func_1288c: ; 1288c (4:688c) INCROM $1288c, $128a9 -Func_128a9: ; 128a9 (4:68a9) - INCROM $128a9, $1296e +DisplayPlayerNamingScreen:: ; 128a9 (4:68a9) + ; clear the name buffer. + ld hl, wNameBuffer ; c500: name buffer. + ld bc, NAME_BUFFER_LENGTH + ld a, TX_END + call FillMemoryWithA + + ; get player's name + ; from the user into hl. + ld hl, wNameBuffer + farcall InputPlayerName + + farcall Func_c1a4 + call DoFrameIfLCDEnabled + call DisableLCD + ld hl, wNameBuffer + ; get the first byte of the name buffer. + ld a, [hl] + or a + ; check if anything typed. + jr nz, .no_name + ld hl, .data +.no_name + ; set the default name. + ld de, sPlayerName + ld bc, NAME_BUFFER_LENGTH + call EnableSRAM + call CopyDataHLtoDE_SaveRegisters + ; it seems for integrity checking. + call UpdateRNGSources + ld [sPlayerName+$e], a + call UpdateRNGSources + ld [sPlayerName+$f], a + call DisableSRAM + ret +.data + ; "MARK": default player name. + ; last two bytes are reserved for RNG. + textfw3 "M", "A", "R", "K" +rept 6 + done +endr + db $10, $12 +Unknown_128fb: ; 128fb + INCROM $128fb, $1296e Func_1296e: ; 1296e (4:696e) INCROM $1296e, $1299f |