summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rw-r--r--engine/color.asm106
-rw-r--r--engine/events.asm2
-rwxr-xr-xengine/link.asm28
-rw-r--r--engine/map_objects.asm19
-rwxr-xr-xengine/money.asm42
-rwxr-xr-xengine/move_mon.asm4
-rw-r--r--engine/party_menu.asm8
-rw-r--r--engine/scripting.asm5
-rwxr-xr-xengine/slot_machine.asm4
-rw-r--r--engine/spawn_points.asm2
-rwxr-xr-xengine/warp_connection.asm2
-rwxr-xr-xengine/wildmons.asm8
12 files changed, 117 insertions, 113 deletions
diff --git a/engine/color.asm b/engine/color.asm
index 9ff761ffa..57f616955 100644
--- a/engine/color.asm
+++ b/engine/color.asm
@@ -109,7 +109,7 @@ Function8aa4: ; 8aa4
; 8ad1
-Function8ad1: ; 8ad1
+InitPartyMenuPalettes: ; 8ad1
ld hl, PalPacket_9c56 + 1
call CopyFourPalettes
call InitPartyMenuOBPals
@@ -145,16 +145,17 @@ SGB_ApplyPartyMenuHPPals: ; 8ade SGB layout $fc
; 8b07
Function8b07: ; 8b07
+; Unreferenced
call CheckCGB
ret z
- ld hl, Palette8b2f
+ ld hl, .BGPal
ld de, UnknBGPals
ld bc, 1 palettes
ld a, $5
call FarCopyWRAM
- ld hl, Palette8b37
- ld de, MartPointer
+ ld hl, .OBPal
+ ld de, UnknOBPals
ld bc, 1 palettes
ld a, $5
call FarCopyWRAM
@@ -163,17 +164,14 @@ Function8b07: ; 8b07
ld a, $1
ld [hCGBPalUpdate], a
ret
-; 8b2f
-Palette8b2f: ; 8b2f
+.BGPal
RGB 31, 31, 31
RGB 18, 23, 31
RGB 15, 20, 31
RGB 00, 00, 00
-; 8b37
-
-Palette8b37: ; 8b37
+.OBPal
RGB 31, 31, 31
RGB 31, 31, 12
RGB 08, 16, 28
@@ -182,6 +180,7 @@ Palette8b37: ; 8b37
; 8b3f
Function8b3f: ; 8b3f
+; Unreferenced
call CheckCGB
ret nz
ld a, [hSGB]
@@ -193,14 +192,14 @@ Function8b3f: ; 8b3f
Function8b4d: ; 8b4d
call CheckCGB
- jr nz, .asm_8b5c
+ jr nz, .cgb
ld a, [hSGB]
and a
ret z
ld hl, PalPacket_9c26
jp Function9809
-.asm_8b5c
+.cgb
ld de, UnknOBPals
ld a, $3b
call GetPredefPal
@@ -209,14 +208,14 @@ Function8b4d: ; 8b4d
Function8b67: ; 8b67
call CheckCGB
- jr nz, .asm_8b76
+ jr nz, .cgb
ld a, [hSGB]
and a
ret z
ld hl, PalPacket_9c36
jp Function9809
-.asm_8b76
+.cgb
ld de, UnknOBPals
ld a, $3c
call GetPredefPal
@@ -934,13 +933,13 @@ Function9809: ; 9809
push af
set 7, a
ld [wcfbe], a
- call Function981a
+ call PushSGBPals
pop af
ld [wcfbe], a
ret
; 981a
-Function981a: ; 981a
+PushSGBPals: ; 981a
ld a, [hl]
and $7
ret z
@@ -1004,7 +1003,7 @@ Function9853: ; 9853
call SGBDelayCycles
call Function993f
ld hl, PalPacket_9d66
- call Function981a
+ call PushSGBPals
.asm_988a
pop af
@@ -1020,50 +1019,49 @@ Function9890:: ; 9890
ld a, $1
ld [rVBK], a
ld hl, VTiles0
- ld bc, $2000
+ ld bc, $200 tiles
xor a
call ByteFill
ld a, $0
ld [rVBK], a
ld a, $80
ld [rBGPI], a
- ld c, $20
-.asm_98ac
- ld a, $ff
+ ld c, 4 * 8
+.bgpals_loop
+ ld a, $7fff % $100
ld [rBGPD], a
- ld a, $7f
+ ld a, $7fff / $100
ld [rBGPD], a
dec c
- jr nz, .asm_98ac
+ jr nz, .bgpals_loop
ld a, $80
ld [rOBPI], a
- ld c, $20
-.asm_98bd
- ld a, $ff
+ ld c, 4 * 8
+.obpals_loop
+ ld a, $7fff % $100
ld [rOBPD], a
- ld a, $7f
+ ld a, $7fff / $100
ld [rOBPD], a
dec c
- jr nz, .asm_98bd
+ jr nz, .obpals_loop
ld a, [rSVBK]
push af
ld a, $5
ld [rSVBK], a
ld hl, UnknBGPals
- call Function98df
+ call .LoadWhitePals
ld hl, BGPals
- call Function98df
+ call .LoadWhitePals
pop af
ld [rSVBK], a
ret
-; 98df
-Function98df: ; 98df
- ld c, $40
+.LoadWhitePals
+ ld c, 4 * 16
.loop
- ld a, $ff
+ ld a, $7fff % $100
ld [hli], a
- ld a, $7f
+ ld a, $7fff / $100
ld [hli], a
dec c
jr nz, .loop
@@ -1071,24 +1069,24 @@ Function98df: ; 98df
; 98eb
Function98eb: ; 98eb
- ld hl, Unknown_98ff
- ld c, $9
-.asm_98f0
+ ld hl, .PalPacketPointerTable
+ ld c, 9
+.loop
push bc
ld a, [hli]
push hl
ld h, [hl]
ld l, a
- call Function981a
+ call PushSGBPals
pop hl
inc hl
pop bc
dec c
- jr nz, .asm_98f0
+ jr nz, .loop
ret
; 98ff
-Unknown_98ff: ; 98ff
+.PalPacketPointerTable: ; 98ff
dw PalPacket_9d56
dw PalPacket_9d76
dw PalPacket_9d86
@@ -1105,18 +1103,18 @@ Function9911: ; 9911
xor a
ld [rJOYP], a
ld hl, PalPacket_9d56
- call Function981a
+ call PushSGBPals
call Function992c
call SGBDelayCycles
call Function993f
ld hl, PalPacket_9d66
- call Function981a
+ call PushSGBPals
ei
ret
; 992c
Function992c: ; 992c
- call Function9938
+ call .LoadSGBBorderPointers
push de
call Function9a24
pop hl
@@ -1124,7 +1122,7 @@ Function992c: ; 992c
ret
; 9938
-Function9938: ; 9938
+.LoadSGBBorderPointers: ; 9938
ld hl, SGBBorder
ld de, SGBBorderMap
ret
@@ -1140,7 +1138,7 @@ Function993f: ; 993f
Function994a: ; 994a
ld hl, PalPacket_9d26
- call Function981a
+ call PushSGBPals
call SGBDelayCycles
ld a, [rJOYP]
and $3
@@ -1186,7 +1184,7 @@ endr
Function99ab: ; 99ab
ld hl, PalPacket_9d16
- call Function981a
+ call PushSGBPals
jp SGBDelayCycles
; 99b4
@@ -1202,7 +1200,7 @@ Function99b4: ; 99b4
ld a, $e3
ld [rLCDC], a
ld hl, PalPacket_9d06
- call Function981a
+ call PushSGBPals
xor a
ld [rBGP], a
ret
@@ -1215,7 +1213,7 @@ Function99d8: ; 99d8
ld de, VTiles1
ld bc, 20 tiles
call CopyData
- ld b, $12
+ ld b, 18
.asm_99ea
push bc
ld bc, $c
@@ -1237,7 +1235,7 @@ Function99d8: ; 99d8
ld a, $e3
ld [rLCDC], a
ld hl, PalPacket_9d46
- call Function981a
+ call PushSGBPals
xor a
ld [rBGP], a
ret
@@ -1245,15 +1243,15 @@ Function99d8: ; 99d8
Function9a24: ; 9a24
call DisableLCD
- ld a, $e4
+ ld a, %11100100
ld [rBGP], a
ld de, VTiles1
ld b, $80
.asm_9a30
push bc
- ld bc, 2 palettes
+ ld bc, 1 tiles
call CopyData
- ld bc, 2 palettes
+ ld bc, 1 tiles
call ClearBytes
pop bc
dec b
@@ -1262,7 +1260,7 @@ Function9a24: ; 9a24
ld a, $e3
ld [rLCDC], a
ld hl, PalPacket_9d36
- call Function981a
+ call PushSGBPals
xor a
ld [rBGP], a
ret
@@ -1295,7 +1293,7 @@ ClearBytes: ; 0x9a5b
DrawDefaultTiles: ; 0x9a64
; Draw 240 tiles (2/3 of the screen) from tiles in VRAM
hlbgcoord 0, 0 ; BG Map 0
- ld de, 32 - 20
+ ld de, BG_MAP_WIDTH - SCREEN_WIDTH
ld a, $80 ; starting tile
ld c, 12 + 1
.line
diff --git a/engine/events.asm b/engine/events.asm
index 0d708cdde..51e7288bc 100644
--- a/engine/events.asm
+++ b/engine/events.asm
@@ -227,7 +227,7 @@ HandleMapTimeAndJoypad: ; 967c1
; 967d1
Function967d1: ; 967d1
- callba Function576a ; engine/map_objects.asm
+ callba HandleNPCStep ; engine/map_objects.asm
callba _HandlePlayerStep
call _CheckObjectEnteringVisibleRange
ret
diff --git a/engine/link.asm b/engine/link.asm
index c7fd9dae3..a4d23762b 100755
--- a/engine/link.asm
+++ b/engine/link.asm
@@ -184,7 +184,7 @@ Gen2ToGen2LinkComms: ; 28177
call Function29dba
ld a, [ScriptVar]
and a
- jp z, Function283b2
+ jp z, LinkTimeout
ld a, [hLinkPlayerNumber]
cp $2
jr nz, .Player1
@@ -397,11 +397,11 @@ Gen2ToGen2LinkComms: ; 28177
ld de, OTPartyCount
ld bc, 8
call CopyBytes
- ld de, wd276
+ ld de, OTPlayerID
ld bc, 2
call CopyBytes
- ld de, OTPartyMon1Species
- ld bc, $1a4
+ ld de, OTPartyMons
+ ld bc, OTPartyDataEnd - OTPartyMons
call CopyBytes
ld a, OTPartyMonOT % $100
ld [wd102], a
@@ -419,7 +419,7 @@ Gen2ToGen2LinkComms: ; 28177
ld a, CAL
ld [OtherTrainerClass], a
call ClearScreen
- callba Function4d354
+ callba Link_WaitBGMap
ld hl, Options
ld a, [hl]
push af
@@ -468,9 +468,9 @@ Gen2ToGen2LinkComms: ; 28177
jp InitTradeMenuDisplay
; 283b2
-Function283b2: ; 283b2
+LinkTimeout: ; 283b2
ld de, .TooMuchTimeHasElapsed
- ld b, $a
+ ld b, 10
.loop
call DelayFrame
call LinkDataReceived
@@ -1379,7 +1379,7 @@ Function28926: ; 28926
hlcoord 2, 16
ld de, .String_Stats_Trade
call PlaceString
- callba Function4d354
+ callba Link_WaitBGMap
.joy_loop
ld a, " "
@@ -1485,7 +1485,7 @@ Function28926: ; 28926
ld b, 4
ld c, 18
call Predef_LinkTextbox
- callba Function4d354
+ callba Link_WaitBGMap
ld hl, .Text_CantTradeLastMon
bccoord 1, 14
call PlaceWholeStringInBoxAtOnce
@@ -1507,7 +1507,7 @@ Function28926: ; 28926
ld b, 4
ld c, 18
call Predef_LinkTextbox
- callba Function4d354
+ callba Link_WaitBGMap
ld hl, .Text_Abnormal
bccoord 1, 14
call PlaceWholeStringInBoxAtOnce
@@ -1663,7 +1663,7 @@ LinkTrade: ; 28b87
ld b, $4
ld c, $12
call Predef_LinkTextbox
- callba Function4d354
+ callba Link_WaitBGMap
ld a, [wd002]
ld hl, PartySpecies
ld c, a
@@ -1713,7 +1713,7 @@ LinkTrade: ; 28b87
ld a, 1
ld [wMenuCursorY], a
ld [wMenuCursorX], a
- callba Function4d354
+ callba Link_WaitBGMap
call ScrollingMenuJoypad
push af
call Call_ExitMenu
@@ -1935,7 +1935,7 @@ LinkTrade: ; 28b87
call ClearScreen
call LoadTradeScreenBorder
call Function28eff
- callba Function4d354
+ callba Link_WaitBGMap
ld b, $1
pop af
ld c, a
@@ -1982,7 +1982,7 @@ LinkTrade: ; 28b87
hlcoord 1, 14
ld de, String28ebd
call PlaceString
- callba Function4d354
+ callba Link_WaitBGMap
ld c, 50
call DelayFrames
ld a, [wLinkMode]
diff --git a/engine/map_objects.asm b/engine/map_objects.asm
index ce83ba9f2..a0ae8bcf2 100644
--- a/engine/map_objects.asm
+++ b/engine/map_objects.asm
@@ -2470,9 +2470,9 @@ Function56cd: ; 56cd
ret
; 576a
-Function576a:: ; 576a
+HandleNPCStep:: ; 576a
call .ResetStepVector
- call Function5781
+ call .DoStepsForAllObjects
ret
.ResetStepVector
@@ -2483,9 +2483,8 @@ Function576a:: ; 576a
ld a, -1
ld [wPlayerStepDirection], a
ret
-; 5781
-Function5781: ; 5781
+.DoStepsForAllObjects
ld bc, ObjectStructs
xor a
.loop
@@ -2505,21 +2504,21 @@ Function5781: ; 5781
ret
; 579d
-Function579d: ; 579d
- ld a, $3e
+RefreshPlayerSprite: ; 579d
+ ld a, movement_step_sleep_1
ld [wPlayerNextMovement], a
ld [wPlayerMovement], a
xor a
ld [wd04e], a
ld [PlayerObjectStepFrame], a
- call Function57bc
+ call .TryResetPlayerAction
callba CheckWarpFacingDown
call c, SpawnInFacingDown
- call SpawnInCustomFacing
+ call .SpawnInCustomFacing
ret
; 57bc
-Function57bc: ; 57bc
+.TryResetPlayerAction: ; 57bc
ld hl, wPlayerSpriteSetupFlags
bit 7, [hl]
jr nz, .ok
@@ -2531,7 +2530,7 @@ Function57bc: ; 57bc
ret
; 57ca
-SpawnInCustomFacing: ; 57ca
+.SpawnInCustomFacing: ; 57ca
ld hl, wPlayerSpriteSetupFlags
bit 5, [hl]
ret z
diff --git a/engine/money.asm b/engine/money.asm
index 5935a23e7..d5d9b5c5c 100755
--- a/engine/money.asm
+++ b/engine/money.asm
@@ -1,11 +1,11 @@
GiveMoney:: ; 15fd7
- ld a, $3
+ ld a, 3
call AddMoney
ld bc, MaxMoney
- ld a, $3
+ ld a, 3
call CompareMoney
- jr z, .asm_15ff5
- jr c, .asm_15ff5
+ jr z, .not_maxed_out
+ jr c, .not_maxed_out
ld hl, MaxMoney
ld a, [hli]
ld [de], a
@@ -18,7 +18,7 @@ GiveMoney:: ; 15fd7
scf
ret
-.asm_15ff5
+.not_maxed_out
and a
ret
; 15ff7
@@ -31,7 +31,8 @@ MaxMoney: ; 15ff7
TakeMoney:: ; 15ffa
ld a, 3
call SubtractMoney
- jr nc, .asm_16009
+ jr nc, .okay
+ ; leave with 0 money
xor a
ld [de], a
inc de
@@ -41,20 +42,23 @@ TakeMoney:: ; 15ffa
scf
ret
-.asm_16009
+.okay
and a
ret
; 1600b
CompareMoney:: ; 1600b
- ld a, $3
+ ld a, 3
CompareFunds: ; 1600d
+; a: number of bytes
+; bc: start addr of amount (big-endian)
+; de: start addr of account (big-endian)
push hl
push de
push bc
ld h, b
ld l, c
- ld c, $0
+ ld c, 0
ld b, a
.loop1
dec a
@@ -82,10 +86,9 @@ CompareFunds: ; 1600d
jr .skip_carry
.set_carry
- ld a, $1
+ ld a, TRUE
and a
scf
-
.skip_carry
pop bc
pop de
@@ -96,6 +99,9 @@ CompareFunds: ; 1600d
SubtractMoney: ; 16035
ld a, 3
SubtractFunds: ; 16037
+; a: number of bytes
+; bc: start addr of amount (big-endian)
+; de: start addr of account (big-endian)
push hl
push de
push bc
@@ -127,11 +133,15 @@ SubtractFunds: ; 16037
; 16053
AddMoney: ; 16053
- ld a, $3
+ ld a, 3
AddFunds: ; 16055
+; a: number of bytes
+; bc: start addr of amount (big-endian)
+; de: start addr of account (big-endian)
push hl
push de
push bc
+
ld h, b
ld l, c
ld b, a
@@ -152,6 +162,7 @@ AddFunds: ; 16055
dec hl
dec b
jr nz, .loop2
+
pop bc
pop de
pop hl
@@ -189,7 +200,8 @@ TakeCoins:: ; 1608f
ld a, 2
ld de, Coins
call SubtractFunds
- jr nc, .asm_1609f
+ jr nc, .okay
+ ; leave with 0 coins
xor a
ld [de], a
inc de
@@ -197,13 +209,13 @@ TakeCoins:: ; 1608f
scf
ret
-.asm_1609f
+.okay
and a
ret
; 160a1
CheckCoins:: ; 160a1
- ld a, $2
+ ld a, 2
ld de, Coins
jp CompareFunds
; 160a9
diff --git a/engine/move_mon.asm b/engine/move_mon.asm
index e9a50ad4d..8bda52daa 100755
--- a/engine/move_mon.asm
+++ b/engine/move_mon.asm
@@ -1428,7 +1428,7 @@ CalcPkmnStatC: ; e17b
sla c
ld a, d
and a
- jr z, .SkipSqrt
+ jr z, .no_stat_exp
add hl, bc
push de
ld a, [hld]
@@ -1437,7 +1437,7 @@ CalcPkmnStatC: ; e17b
callba GetSquareRoot
pop de
-.SkipSqrt
+.no_stat_exp
srl c
pop hl
push bc
diff --git a/engine/party_menu.asm b/engine/party_menu.asm
index 35f6e3d47..b9048da10 100644
--- a/engine/party_menu.asm
+++ b/engine/party_menu.asm
@@ -3,7 +3,7 @@ SelectMonFromParty: ; 50000
xor a
ld [PartyMenuActionText], a
call ClearBGPalettes
- call Function5003f
+ call InitPartyMenuLayout
call WaitBGMap
call SetPalettes
call DelayFrame
@@ -18,7 +18,7 @@ SelectTradeOrDaycareMon: ; 5001d
ld [PartyMenuActionText], a
call DisableSpriteUpdates
call ClearBGPalettes
- call Function5003f
+ call InitPartyMenuLayout
call WaitBGMap
ld b, SCGB_0A
call GetSGBLayout
@@ -29,7 +29,7 @@ SelectTradeOrDaycareMon: ; 5001d
ret
; 5003f
-Function5003f: ; 5003f
+InitPartyMenuLayout: ; 5003f
call LoadPartyMenuGFX
call InitPartyMenuWithCancel
call InitPartyMenuGFX
@@ -40,7 +40,7 @@ Function5003f: ; 5003f
LoadPartyMenuGFX: ; 5004f
call LoadFontsBattleExtra
- callab Function8ad1 ; engine/color.asm
+ callab InitPartyMenuPalettes ; engine/color.asm
callab ClearSpriteAnims2
ret
; 5005f
diff --git a/engine/scripting.asm b/engine/scripting.asm
index 1111b0872..d271d5192 100644
--- a/engine/scripting.asm
+++ b/engine/scripting.asm
@@ -3049,10 +3049,7 @@ Script_loadbytec2cf: ; 97b27
ret
; 97b2e
-
-CloseTextScript: ; 97b2e
- closetext
-; 97b2f
+ ld c, c ; XXX
Script_closetext: ; 97b2f
; script command 0x49
diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm
index abdf6cd53..2520a9a24 100755
--- a/engine/slot_machine.asm
+++ b/engine/slot_machine.asm
@@ -9,7 +9,7 @@ REEL_SIZE EQU 15
_SlotMachine:
ld hl, Options
- set 4, [hl]
+ set NO_TEXT_SCROLL, [hl]
call .InitGFX
call DelayFrame
.loop
@@ -22,7 +22,7 @@ _SlotMachine:
call ClearBGPalettes
callba MobileFn_105fd0
ld hl, Options
- res 4, [hl]
+ res NO_TEXT_SCROLL, [hl]
ld hl, rLCDC ; $ff40
res 2, [hl]
ret
diff --git a/engine/spawn_points.asm b/engine/spawn_points.asm
index e577dc528..e8f1177f2 100644
--- a/engine/spawn_points.asm
+++ b/engine/spawn_points.asm
@@ -1,8 +1,6 @@
SpawnPoints: ; 0x152ab
- const_def
-
spawn: MACRO
; map, y, x
map \1
diff --git a/engine/warp_connection.asm b/engine/warp_connection.asm
index 26ea2c2c9..28d7b0e46 100755
--- a/engine/warp_connection.asm
+++ b/engine/warp_connection.asm
@@ -319,7 +319,7 @@ RefreshMapSprites: ; 1047f0
call ClearSprites
callba ReturnFromMapSetupScript
call GetMovementPermissions
- callba Function579d
+ callba RefreshPlayerSprite
callba CheckReplaceKrisSprite
ld hl, wPlayerSpriteSetupFlags
bit 6, [hl]
diff --git a/engine/wildmons.asm b/engine/wildmons.asm
index ff29c99b5..f6643d6c3 100755
--- a/engine/wildmons.asm
+++ b/engine/wildmons.asm
@@ -494,6 +494,7 @@ CopyCurrMapDE: ; 2a27f
; 2a288
LookUpWildmonsForMapDE: ; 2a288
+.loop
push hl
ld a, [hl]
inc a
@@ -509,7 +510,7 @@ LookUpWildmonsForMapDE: ; 2a288
.next
pop hl
add hl, bc
- jr LookUpWildmonsForMapDE
+ jr .loop
.nope
pop hl
@@ -896,7 +897,7 @@ endr
ld a, c
ld [wNamedObjectIndexBuffer], a
call GetPokemonName
- ld hl, UnknownText_0x2a51a
+ ld hl, .SawRareMonText
call PrintText
xor a
ld [ScriptVar], a
@@ -906,9 +907,8 @@ endr
ld a, $1
ld [ScriptVar], a
ret
-; 2a51a
-UnknownText_0x2a51a: ; 0x2a51a
+.SawRareMonText
; I just saw some rare @ in @ . I'll call you if I see another rare #MON, OK?
text_jump UnknownText_0x1bd34b
db "@"