mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-17 02:40:50 +12:00
Both status screen pages disassembled
hg-commit-id: dabc4ec2c217
This commit is contained in:
parent
3ab8b1f4be
commit
732e298db2
223
main.asm
223
main.asm
|
@ -18472,7 +18472,7 @@ LyingOldManSprite: ; 0x11340
|
|||
INCBIN "baserom.gbc",$11380,$12953 - $11380
|
||||
|
||||
; Predef 0x37
|
||||
StatusScreenInit: ; 0x12953
|
||||
StatusScreen: ; 0x12953
|
||||
call LoadMonData
|
||||
ld a, [$cc49]
|
||||
cp $2
|
||||
|
@ -18563,14 +18563,14 @@ StatusScreenInit: ; 0x12953
|
|||
ld a, $4b
|
||||
call Predef
|
||||
ld hl, $6a9d
|
||||
call $6a7e
|
||||
call .LoadString
|
||||
ld d, h
|
||||
ld e, l
|
||||
FuncCoord 9,1
|
||||
ld hl, Coord
|
||||
call PlaceString ; Pokémon name
|
||||
ld hl, $6a95
|
||||
call $6a7e
|
||||
call .LoadString
|
||||
ld d, h
|
||||
ld e, l
|
||||
FuncCoord 12,16
|
||||
|
@ -18592,9 +18592,23 @@ StatusScreenInit: ; 0x12953
|
|||
pop af
|
||||
ld [$ff00+$d7], a
|
||||
ret
|
||||
; 0x12a7e
|
||||
.LoadString ; 0x12a7e
|
||||
ld a, [$cc49]
|
||||
add a
|
||||
ld c, a
|
||||
ld b, $0
|
||||
add hl, bc
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
ld a, [$cc49]
|
||||
cp $3
|
||||
ret z
|
||||
ld a, [W_WHICHPOKEMON]
|
||||
jp $3a7d
|
||||
; 0x12a95
|
||||
|
||||
INCBIN "baserom.gbc",$12a7e,$12aa5 - $12a7e
|
||||
INCBIN "baserom.gbc",$12a95,$12aa5 - $12a95
|
||||
|
||||
Type1Text: ; 0x12aa5
|
||||
db "TYPE1/", $4e
|
||||
|
@ -18614,7 +18628,200 @@ StatusText:
|
|||
OKText: ; 0x12ac4
|
||||
db "OK@"
|
||||
|
||||
INCBIN "baserom.gbc",$12ac7,$12cd2 - $12ac7
|
||||
INCBIN "baserom.gbc",$12ac7,$12b57 - $12ac7
|
||||
|
||||
StatusScreen2:
|
||||
ld a, [$ff00+$d7]
|
||||
push af
|
||||
xor a
|
||||
ld [$ff00+$d7], a
|
||||
ld [$ff00+$ba], a
|
||||
ld bc, $0005
|
||||
ld hl, $d0dc
|
||||
call $36e0
|
||||
ld hl, $cfa0
|
||||
ld de, $d0dc
|
||||
ld bc, $0004
|
||||
call CopyData
|
||||
ld hl, $5b87
|
||||
ld b, $e
|
||||
call Bankswitch
|
||||
FuncCoord 9,2
|
||||
ld hl, Coord
|
||||
ld bc, $050a
|
||||
call ClearScreenArea ; Clear under name
|
||||
ld hl, $c3ef
|
||||
ld [hl], $78
|
||||
FuncCoord 0,8
|
||||
ld hl, Coord
|
||||
ld b, $8
|
||||
ld c, $12
|
||||
call TextBoxBorder ; Draw move container
|
||||
FuncCoord 2,9
|
||||
ld hl, Coord
|
||||
ld de, $d0e1
|
||||
call PlaceString ; Print moves
|
||||
ld a, [$cd6c]
|
||||
inc a
|
||||
ld c, a
|
||||
ld a, $4
|
||||
sub c
|
||||
ld b, a ; Number of moves ?
|
||||
FuncCoord 11,10
|
||||
ld hl, Coord
|
||||
ld de, $0028
|
||||
ld a, $72
|
||||
call $6ccb ; Print "PP"
|
||||
ld a, b
|
||||
and a
|
||||
jr z, .InitPP ; 0x12bb3 $6
|
||||
ld c, a
|
||||
ld a, $e3
|
||||
call $6ccb ; Fill the rest with --
|
||||
.InitPP ; 12bbb
|
||||
ld hl, $cfa0
|
||||
FuncCoord 14,10
|
||||
ld de, Coord
|
||||
ld b, $0
|
||||
.PrintPP ; 12bc3
|
||||
ld a, [hli]
|
||||
and a
|
||||
jr z, .PPDone ; 0x12bc5 $4a
|
||||
push bc
|
||||
push hl
|
||||
push de
|
||||
ld hl, W_CURMENUITEMID
|
||||
ld a, [hl]
|
||||
push af
|
||||
ld a, b
|
||||
ld [hl], a
|
||||
push hl
|
||||
ld hl, $6677
|
||||
ld b, $3
|
||||
call Bankswitch
|
||||
pop hl
|
||||
pop af
|
||||
ld [hl], a
|
||||
pop de
|
||||
pop hl
|
||||
push hl
|
||||
ld bc, $0014
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and $3f
|
||||
ld [$cd71], a
|
||||
ld h, d
|
||||
ld l, e
|
||||
push hl
|
||||
ld de, $cd71
|
||||
ld bc, $0102
|
||||
call PrintNumber
|
||||
ld a, "/"
|
||||
ld [hli], a
|
||||
ld de, $d11e
|
||||
ld bc, $0102
|
||||
call PrintNumber
|
||||
pop hl
|
||||
ld de, $0028
|
||||
add hl, de
|
||||
ld d, h
|
||||
ld e, l
|
||||
pop hl
|
||||
pop bc
|
||||
inc b
|
||||
ld a, b
|
||||
cp $4
|
||||
jr nz, .PrintPP ; 0x12c0f $b2
|
||||
.PPDone
|
||||
FuncCoord 9,3
|
||||
ld hl, Coord
|
||||
ld de, EXPPointsText
|
||||
call PlaceString
|
||||
ld a, [$cfb9] ; level
|
||||
push af
|
||||
cp $64
|
||||
jr z, .Level100 ; 0x12c20 $4
|
||||
inc a
|
||||
ld [$cfb9], a ; Increase temporarily if not 100
|
||||
.Level100
|
||||
FuncCoord 14,6
|
||||
ld hl, Coord
|
||||
ld [hl], $70 ; 1-tile "to"
|
||||
inc hl
|
||||
inc hl
|
||||
call PrintLevel
|
||||
pop af
|
||||
ld [$cfb9], a
|
||||
ld de, $cfa6
|
||||
FuncCoord 12,4
|
||||
ld hl, Coord
|
||||
ld bc, $0307
|
||||
call PrintNumber ; exp
|
||||
call .asm_12c86
|
||||
ld de, $cfa6
|
||||
FuncCoord 7,6
|
||||
ld hl, Coord
|
||||
ld bc, $0307
|
||||
call PrintNumber
|
||||
FuncCoord 9,0
|
||||
ld hl, Coord
|
||||
call $6cc3
|
||||
FuncCoord 9,1
|
||||
ld hl, Coord
|
||||
call $6cc3
|
||||
ld a, [$d0b8]
|
||||
ld [$d11e], a
|
||||
call GetMonName
|
||||
FuncCoord 9,1
|
||||
ld hl, Coord
|
||||
call PlaceString
|
||||
ld a, $1
|
||||
ld [$ff00+$ba], a
|
||||
call Delay3
|
||||
call $3865 ; wait for button
|
||||
pop af
|
||||
ld [$ff00+$d7], a
|
||||
ld hl, $d72c
|
||||
res 1, [hl]
|
||||
ld a, $77
|
||||
ld [$ff00+$24], a
|
||||
call GBPalWhiteOut
|
||||
jp ClearScreen
|
||||
.asm_12c86 ; This does some magic with lvl/exp?
|
||||
ld a, [$cfb9] ; Load level
|
||||
cp $64
|
||||
jr z, .asm_12ca7 ; 0x12c8b $1a ; If 100
|
||||
inc a
|
||||
ld d, a
|
||||
ld hl, $4f6a
|
||||
ld b, $16
|
||||
call Bankswitch
|
||||
ld hl, $cfa8
|
||||
ld a, [$ff00+$98]
|
||||
sub [hl]
|
||||
ld [hld], a
|
||||
ld a, [$ff00+$97]
|
||||
sbc [hl]
|
||||
ld [hld], a
|
||||
ld a, [$ff00+$96]
|
||||
sbc [hl]
|
||||
ld [hld], a
|
||||
ret
|
||||
.asm_12ca7
|
||||
ld hl, $cfa6
|
||||
xor a
|
||||
ld [hli], a
|
||||
ld [hli], a
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
EXPPointsText:
|
||||
db "EXP POINTS", $4e
|
||||
|
||||
LevelUpText:
|
||||
db "LEVEL UP", $50
|
||||
|
||||
INCBIN "baserom.gbc",$12cc3,$12cd2 - $12cc3
|
||||
|
||||
; [$D07D] = menu type / message ID
|
||||
; if less than $F0, it is a menu type
|
||||
|
@ -49639,8 +49846,8 @@ PredefPointers: ; 7E79
|
|||
dbw $1E,$5869
|
||||
dbw $1C,$4B5D
|
||||
dbw $03,$4586
|
||||
dbw $04,$6953
|
||||
dbw $04,$6B57
|
||||
dbw BANK(StatusScreen),StatusScreen ; 37 0x12953
|
||||
dbw BANK(StatusScreen2),StatusScreen2 ; 38
|
||||
dbw $10,$50E2
|
||||
dbw $15,$690F
|
||||
dbw $10,$5010
|
||||
|
|
Loading…
Reference in a new issue