mirror of
https://github.com/pret/pokegold-spaceworld.git
synced 2026-09-30 20:36:45 -05:00
General cleanup for home/, and identify more unnamed symbols (#154)
--------- Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com>
This commit is contained in:
@@ -66,3 +66,4 @@ INCLUDE "constants/start_menu_constants.asm"
|
||||
INCLUDE "constants/minigame_constants.asm"
|
||||
INCLUDE "constants/flypoint_constants.asm"
|
||||
INCLUDE "constants/spawnpoint_constants.asm"
|
||||
INCLUDE "constants/player_constants.asm"
|
||||
|
||||
25
constants/player_constants.asm
Normal file
25
constants/player_constants.asm
Normal file
@@ -0,0 +1,25 @@
|
||||
DEF NUM_PLAYER_NAMES EQU 3
|
||||
|
||||
IF DEF(_GOLD)
|
||||
DEF PLAYERNAME1 EQUS "ゴールド"
|
||||
DEF PLAYERNAME2 EQUS "サトシ"
|
||||
DEF PLAYERNAME3 EQUS "ジャック"
|
||||
|
||||
DEF RIVALNAME1 EQUS "シルバー"
|
||||
DEF RIVALNAME2 EQUS "シゲル"
|
||||
DEF RIVALNAME3 EQUS "ジョン"
|
||||
ENDC
|
||||
|
||||
IF DEF(_SILVER)
|
||||
DEF PLAYERNAME1 EQUS "シルバー"
|
||||
DEF PLAYERNAME2 EQUS "シゲル"
|
||||
DEF PLAYERNAME3 EQUS "ジョン"
|
||||
|
||||
DEF RIVALNAME1 EQUS "ゴールド"
|
||||
DEF RIVALNAME2 EQUS "サトシ"
|
||||
DEF RIVALNAME3 EQUS "ジャック"
|
||||
ENDC
|
||||
|
||||
DEF MOMNAME1 EQUS "おかあさん"
|
||||
DEF MOMNAME2 EQUS "ママ"
|
||||
DEF MOMNAME3 EQUS "かあちゃん"
|
||||
@@ -1,30 +1,34 @@
|
||||
; Tilesets indexes
|
||||
; Tilesets indexes (see data/tilesets.asm)
|
||||
const_def
|
||||
const TILESET_SILENT_HILL
|
||||
const TILESET_OLD_CITY
|
||||
const TILESET_WEST
|
||||
const TILESET_HIGH_TECH
|
||||
const TILESET_BIRDON
|
||||
const TILESET_FONT
|
||||
const TILESET_NORTH
|
||||
const TILESET_KANTO
|
||||
const TILESET_SOUTH
|
||||
const TILESET_HOUSE
|
||||
const TILESET_LAB
|
||||
const TILESET_TRADITIONAL_HOUSE
|
||||
const TILESET_POKECENTER
|
||||
const TILESET_MART
|
||||
const TILESET_AQUARIUM
|
||||
const TILESET_TOWER
|
||||
const TILESET_DEPT_STORE
|
||||
const TILESET_GATE
|
||||
const TILESET_RADIO_TOWER
|
||||
const TILESET_ROCKET_HOUSE
|
||||
const TILESET_GYM
|
||||
const TILESET_OFFICE
|
||||
const TILESET_RUINS_OF_ALPH
|
||||
const TILESET_CAVE
|
||||
const TILESET_POWER_PLANT
|
||||
const TILESET_SHIP
|
||||
const TILESET_SHIP_PORT
|
||||
const TILESET_FOREST
|
||||
const TILESET_SILENT_HILL ; 00
|
||||
const TILESET_OLD_CITY ; 01
|
||||
const TILESET_WEST ; 02
|
||||
const TILESET_HIGH_TECH ; 03
|
||||
const TILESET_BIRDON ; 04
|
||||
const TILESET_FONT ; 05
|
||||
const TILESET_NORTH ; 06
|
||||
const TILESET_KANTO ; 07
|
||||
const TILESET_SOUTH ; 08
|
||||
const TILESET_HOUSE ; 09
|
||||
const TILESET_LAB ; 0a
|
||||
const TILESET_TRADITIONAL_HOUSE ; 0b
|
||||
const TILESET_POKECENTER ; 0c
|
||||
const TILESET_MART ; 0d
|
||||
const TILESET_AQUARIUM ; 0e
|
||||
const TILESET_TOWER ; 0f
|
||||
const TILESET_DEPT_STORE ; 10
|
||||
const TILESET_GATE ; 11
|
||||
const TILESET_RADIO_TOWER ; 12
|
||||
const TILESET_ROCKET_HOUSE ; 13
|
||||
const TILESET_GYM ; 14
|
||||
const TILESET_OFFICE ; 15
|
||||
const TILESET_RUINS_OF_ALPH ; 16
|
||||
const TILESET_CAVE ; 17
|
||||
const TILESET_POWER_PLANT ; 18
|
||||
const TILESET_SHIP ; 19
|
||||
const TILESET_SHIP_PORT ; 1a
|
||||
const TILESET_FOREST ; 1b
|
||||
DEF NUM_TILESETS EQU const_value
|
||||
|
||||
; wTileset struct size
|
||||
DEF TILESET_LENGTH EQU 11
|
||||
|
||||
22
data/mom_names.asm
Normal file
22
data/mom_names.asm
Normal file
@@ -0,0 +1,22 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/mom_names.asm", ROMX
|
||||
|
||||
MomNameMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 0, 0, 10, 11
|
||||
dw .Names
|
||||
db 1 ; initial selection
|
||||
|
||||
.Names:
|
||||
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B
|
||||
db NUM_PLAYER_NAMES + 1 ; items
|
||||
db "じぶんで きめる@"
|
||||
|
||||
list_start PLAYER_NAME_LENGTH - 1
|
||||
FOR n, 1, NUM_PLAYER_NAMES + 1
|
||||
li #MOMNAME{d:n}
|
||||
ENDR
|
||||
assert_list_length NUM_PLAYER_NAMES
|
||||
db 3 ; x offset for the title string
|
||||
db "なまえこうほ@"
|
||||
22
data/player_names.asm
Normal file
22
data/player_names.asm
Normal file
@@ -0,0 +1,22 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/player_names.asm", ROMX
|
||||
|
||||
PlayerNameMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 0, 0, 10, 11
|
||||
dw .Names
|
||||
db 1 ; initial selection
|
||||
|
||||
.Names:
|
||||
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B
|
||||
db NUM_PLAYER_NAMES + 1 ; items
|
||||
db "じぶんできめる@"
|
||||
|
||||
list_start PLAYER_NAME_LENGTH - 1
|
||||
FOR n, 1, NUM_PLAYER_NAMES + 1
|
||||
li #PLAYERNAME{d:n}
|
||||
ENDR
|
||||
assert_list_length NUM_PLAYER_NAMES
|
||||
db 3 ; x offset for the title string
|
||||
db "なまえこうほ@"
|
||||
@@ -98,4 +98,4 @@ GiveItemPredef::
|
||||
add_predef AnimationSubstitute ; dummied out
|
||||
add_predef FightDebugMenu
|
||||
add_predef LoadItemData
|
||||
dbw $ff, InexplicablyEmptyFunction ; 56
|
||||
dbw $ff, DummyEndPredef ; 56
|
||||
|
||||
22
data/rival_names.asm
Normal file
22
data/rival_names.asm
Normal file
@@ -0,0 +1,22 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/rival_names.asm", ROMX
|
||||
|
||||
RivalNameMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 0, 0, 10, 11
|
||||
dw .Names
|
||||
db 1 ; initial selection
|
||||
|
||||
.Names:
|
||||
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B
|
||||
db NUM_PLAYER_NAMES + 1 ; items
|
||||
db "じぶんできめる@"
|
||||
|
||||
list_start PLAYER_NAME_LENGTH - 1
|
||||
FOR n, 1, NUM_PLAYER_NAMES + 1
|
||||
li #RIVALNAME{d:n}
|
||||
ENDR
|
||||
assert_list_length NUM_PLAYER_NAMES
|
||||
db 3 ; x offset for the title string
|
||||
db "なまえこうほ@"
|
||||
@@ -1,6 +1,6 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "data/tileset_headers.asm", ROMX
|
||||
SECTION "data/tilesets.asm", ROMX
|
||||
|
||||
MACRO tileset
|
||||
db BANK(\1_GFX) ; shared bank
|
||||
@@ -11,6 +11,7 @@ ENDM
|
||||
|
||||
Tilesets:
|
||||
; name, animation set
|
||||
table_width TILESET_LENGTH
|
||||
tileset SilentHill, TilesetGenericAnim
|
||||
tileset OldCity, TilesetWaterAnim
|
||||
tileset West, TilesetFlowerAnim
|
||||
@@ -39,3 +40,4 @@ Tilesets:
|
||||
tileset Ship, TilesetNoAnim
|
||||
tileset ShipPort, TilesetNoAnim
|
||||
tileset Forest, TilesetGenericAnim
|
||||
assert_table_length NUM_TILESETS
|
||||
@@ -7,7 +7,7 @@ CanLearnTMHMMove:
|
||||
; then checks the corresponding flag in wCurPartySpecies's learnset.
|
||||
; Sets register c to 1 if TM/HM is in learnset OR if debug is enabled.
|
||||
ld a, [wDebugFlags]
|
||||
ld c, 01
|
||||
ld c, 1
|
||||
bit DEBUG_FIELD_F, a
|
||||
ret nz
|
||||
|
||||
|
||||
@@ -288,9 +288,9 @@ KeyItemsPocketHeader:
|
||||
|
||||
BackpackMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 03, 03, $11, $0A
|
||||
menu_coords 3, 3, $11, $0A
|
||||
dw .BackpackData
|
||||
db 01
|
||||
db 1 ; default option
|
||||
|
||||
.BackpackData
|
||||
db $A1
|
||||
@@ -343,7 +343,7 @@ DrawBackpack:
|
||||
call ClearTileMap
|
||||
callfar LoadBackpackGraphics
|
||||
hlcoord 2, 2
|
||||
ld b, 08
|
||||
ld b, 8
|
||||
ld c, $0F
|
||||
call DrawTextBox
|
||||
ret
|
||||
@@ -577,7 +577,7 @@ DebugSelectedItemMenu:
|
||||
db MENU_BACKUP_TILES
|
||||
menu_coords $0D, $0A, $13, $10
|
||||
dw .DebugSelectedItemMenuText
|
||||
db 01
|
||||
db 1 ; default option
|
||||
|
||||
.DebugSelectedItemMenuText
|
||||
db (STATICMENU_CURSOR | STATICMENU_NO_TOP_SPACING)
|
||||
@@ -590,7 +590,7 @@ SelectedItemMenu:
|
||||
db MENU_BACKUP_TILES
|
||||
menu_coords $0E, $0A, $13, $0E
|
||||
dw .SelectedItemMenuText
|
||||
db 01
|
||||
db 1 ; default option
|
||||
|
||||
.SelectedItemMenuText
|
||||
db (STATICMENU_CURSOR | STATICMENU_NO_TOP_SPACING)
|
||||
@@ -924,7 +924,7 @@ PartyPromptExit:
|
||||
nop
|
||||
nop
|
||||
nop
|
||||
ld hl, 0000
|
||||
ld hl, 0
|
||||
call Call_ExitMenu
|
||||
call WaitBGMap
|
||||
call UpdateTimePals
|
||||
@@ -1310,9 +1310,9 @@ PartyMailMenu:
|
||||
|
||||
.MailMenu
|
||||
db MENU_BACKUP_TILES
|
||||
menu_coords 04, 04, $0E, $0B
|
||||
menu_coords 4, 4, 14, 11
|
||||
dw .MailMenuStrings
|
||||
db 01
|
||||
db 1 ; default option
|
||||
|
||||
.MailMenuStrings
|
||||
|
||||
|
||||
@@ -1094,7 +1094,7 @@ ComposeMail_AnimateCursor:
|
||||
inc [hl]
|
||||
jr .UpdatePositionOffset
|
||||
.skip3
|
||||
ld [hl], 00
|
||||
ld [hl], 0
|
||||
jr .UpdatePositionOffset
|
||||
.upJump
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
|
||||
@@ -528,28 +528,7 @@ ChoosePlayerNameEndText:
|
||||
line "<PLAYER> と いうんだな!"
|
||||
prompt
|
||||
|
||||
PlayerNameMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 00, 00, 10, 11
|
||||
dw PlayerNameMenuData
|
||||
db 01 ; initial selection
|
||||
|
||||
PlayerNameMenuData:
|
||||
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B
|
||||
db 04 ; items
|
||||
db "じぶんできめる@"
|
||||
if DEF(_GOLD)
|
||||
db "ゴールド@"
|
||||
db "サトシ@"
|
||||
db "ジャック@"
|
||||
endc
|
||||
if DEF(_SILVER)
|
||||
db "シルバー@"
|
||||
db "シゲル@"
|
||||
db "ジョン@"
|
||||
endc
|
||||
db 3 ; x offset for the title string
|
||||
db "なまえこうほ@"
|
||||
SECTION "engine/movie/oak_speech.asm@ChooseRivalName", ROMX
|
||||
|
||||
ChooseRivalName::
|
||||
call PanPortraitRight
|
||||
@@ -588,28 +567,7 @@ ChooseRivalNameEndText:
|
||||
line "<RIVAL> という なまえだ"
|
||||
prompt
|
||||
|
||||
RivalNameMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 00, 00, 10, 11
|
||||
dw RivalNameMenuData
|
||||
db 01 ; initial selection
|
||||
|
||||
RivalNameMenuData:
|
||||
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B
|
||||
db 04 ; items
|
||||
db "じぶんできめる@"
|
||||
if DEF(_GOLD)
|
||||
db "シルバー@"
|
||||
db "シゲル@"
|
||||
db "ジョン@"
|
||||
endc
|
||||
if DEF(_SILVER)
|
||||
db "ゴールド@"
|
||||
db "サトシ@"
|
||||
db "ジャック@"
|
||||
endc
|
||||
db 3
|
||||
db "なまえこうほ@"
|
||||
SECTION "engine/movie/oak_speech.asm@MomNamePrompt", ROMX
|
||||
|
||||
MomNamePrompt::
|
||||
ld hl, MomNameMenuHeader
|
||||
@@ -638,21 +596,7 @@ MomNamePrompt::
|
||||
.escape
|
||||
ret
|
||||
|
||||
MomNameMenuHeader:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 00, 00, 10, 11
|
||||
dw .MomNameMenuData
|
||||
db 01 ; initial selection
|
||||
|
||||
.MomNameMenuData:
|
||||
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B
|
||||
db 04 ; items
|
||||
db "じぶんで きめる@"
|
||||
db "おかあさん@"
|
||||
db "ママ@"
|
||||
db "かあちゃん@"
|
||||
db 3
|
||||
db "なまえこうほ@"
|
||||
SECTION "engine/movie/oak_speech.asm@NamingWindow", ROMX
|
||||
|
||||
NamingWindow::
|
||||
; loads the menu header put into hl
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/misc_3c43.asm", ROM0
|
||||
SECTION "home/battle.asm", ROM0
|
||||
|
||||
GetPartyParamLocation::
|
||||
; Get the location of parameter a from wCurPartyMon in hl
|
||||
@@ -15,18 +15,7 @@ GetPartyParamLocation::
|
||||
pop bc
|
||||
ret
|
||||
|
||||
DoItemEffect::
|
||||
farjp _DoItemEffect
|
||||
|
||||
CheckTossableItem::
|
||||
push hl
|
||||
push de
|
||||
push bc
|
||||
callfar _CheckTossableItem
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
SECTION "home/battle.asm@GetBattleAnimPointer", ROM0
|
||||
|
||||
GetBattleAnimPointer::
|
||||
ld a, BANK(BattleAnimations)
|
||||
@@ -74,18 +63,3 @@ GetBattleAnimByte::
|
||||
|
||||
ld a, [wBattleAnimByte]
|
||||
ret
|
||||
|
||||
InitSpriteAnimStruct::
|
||||
ld [wSpriteAnimAddrBackup], a
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(_InitSpriteAnimStruct)
|
||||
call Bankswitch
|
||||
ld a, [wSpriteAnimAddrBackup]
|
||||
call _InitSpriteAnimStruct
|
||||
pop af
|
||||
call Bankswitch
|
||||
ret
|
||||
|
||||
ReinitSpriteAnimFrame:: ; stubbed
|
||||
ret
|
||||
@@ -1,7 +1,21 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/item.asm", ROM0
|
||||
|
||||
SECTION "home/items.asm@TossItem", ROM0
|
||||
DoItemEffect::
|
||||
farjp _DoItemEffect
|
||||
|
||||
CheckTossableItem::
|
||||
push hl
|
||||
push de
|
||||
push bc
|
||||
callfar _CheckTossableItem
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
|
||||
SECTION "home/item.asm@TossItem", ROM0
|
||||
|
||||
TossItem:
|
||||
ldh a, [hROMBank]
|
||||
@@ -42,8 +56,7 @@ ReceiveItem::
|
||||
pop bc
|
||||
ret
|
||||
|
||||
|
||||
SECTION "home/items.asm@GiveItem", ROM0
|
||||
SECTION "home/item.asm@GiveItem", ROM0
|
||||
|
||||
GiveItem::
|
||||
; Give player quantity c of item b,
|
||||
@@ -61,3 +74,21 @@ GiveItem::
|
||||
call CopyStringToStringBuffer2
|
||||
scf
|
||||
ret
|
||||
|
||||
GiveMonToPlayer::
|
||||
; Give to the player Pokemon of species b at level c.
|
||||
ld a, b
|
||||
ld [wCurPartySpecies], a
|
||||
ld a, c
|
||||
ld [wCurPartyLevel], a
|
||||
xor a
|
||||
ld [wMonType], a
|
||||
farjp Function1130a
|
||||
|
||||
SECTION "home/item.asm@Call_GetItemAmount", ROM0
|
||||
|
||||
Call_GetItemAmount::
|
||||
predef GetItemAmount
|
||||
ld a, b
|
||||
and a
|
||||
ret
|
||||
24
home/load_options.asm
Normal file
24
home/load_options.asm
Normal file
@@ -0,0 +1,24 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/load_options.asm", ROM0
|
||||
|
||||
; Init the options with values of $00 because EmptyAllSRAMBanks sets them to $FF, and that's no good!
|
||||
; Final game gets around this by filling the entirety of SRAM banks with $00, which this demo probably should've done.
|
||||
InitOptions::
|
||||
ld a, BANK(sOptions)
|
||||
call OpenSRAM
|
||||
ld hl, sOptions
|
||||
ld bc, 7
|
||||
xor a
|
||||
call ByteFill
|
||||
call CloseSRAM
|
||||
ret
|
||||
|
||||
LoadSGBBorderOptions::
|
||||
ld a, BANK(sOptions)
|
||||
call OpenSRAM
|
||||
ld a, [sOptions]
|
||||
and SGB_BORDER
|
||||
ld [wOptions], a
|
||||
call CloseSRAM
|
||||
ret
|
||||
56
home/map.asm
56
home/map.asm
@@ -2,6 +2,11 @@ INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/map.asm", ROM0
|
||||
|
||||
UnfreezeEverything::
|
||||
call UnfreezeAllObjects
|
||||
call UnfreezePlayer
|
||||
ret
|
||||
|
||||
; Runs a map script indexed by wMapScriptNumber
|
||||
RunMapScript::
|
||||
push hl
|
||||
@@ -243,7 +248,7 @@ GetWorldMapLocation::
|
||||
ld a, b
|
||||
ret
|
||||
|
||||
EmptyFunction2252::
|
||||
DummyMapFunction::
|
||||
ret
|
||||
|
||||
LoadMap::
|
||||
@@ -260,24 +265,24 @@ LoadMap::
|
||||
ret
|
||||
|
||||
.jumptable
|
||||
dw MapSetup_NewGame
|
||||
dw MapSetup_Continue
|
||||
dw MapSetup_22af ; TODO
|
||||
dw MapSetup_Reload
|
||||
dw MapSetup_22de ; TODO
|
||||
dw MapSetup_22de ; TODO
|
||||
dw MapSetup_Fight
|
||||
dw MapSetup_FallingWarp
|
||||
dw MapSetup_FallingWarp
|
||||
dw MapSetup_Warp
|
||||
dw MapSetup_Connection
|
||||
dw MapSetup_2275 ; TODO
|
||||
dw MapSetup_Link
|
||||
|
||||
MapSetup_2275::
|
||||
MapSetup_Link::
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
call MapSetup_22af ; TODO
|
||||
call MapSetup_Continue
|
||||
pop af
|
||||
call Bankswitch
|
||||
ret
|
||||
|
||||
MapSetup_Reload::
|
||||
MapSetup_Fight::
|
||||
call DisableLCD
|
||||
call DisableAudio
|
||||
call VolumeOff
|
||||
@@ -296,7 +301,7 @@ MapSetup_Reload::
|
||||
call FadeIn
|
||||
ret
|
||||
|
||||
MapSetup_22af::
|
||||
MapSetup_Continue::
|
||||
call DisableLCD
|
||||
call DisableAudio
|
||||
call VolumeOff
|
||||
@@ -315,10 +320,10 @@ MapSetup_22af::
|
||||
call FadeIn
|
||||
ret
|
||||
|
||||
MapSetup_22de::
|
||||
MapSetup_FallingWarp::
|
||||
callfar OverworldFadeOut
|
||||
|
||||
MapSetup_Continue::
|
||||
MapSetup_NewGame::
|
||||
call DisableLCD
|
||||
call DisableAudio
|
||||
call VolumeOff
|
||||
@@ -339,14 +344,14 @@ MapSetup_Continue::
|
||||
ld b, 9 ; TODO: constantify this
|
||||
call GetSGBLayout
|
||||
call LoadWildMonData
|
||||
call Function242c ; TODO
|
||||
call SetPlayerFacingDown
|
||||
call FadeIn
|
||||
ret
|
||||
|
||||
MapSetup_Warp::
|
||||
callfar OverworldFadeOut
|
||||
call DisableLCD
|
||||
call Function27C7 ; TODO
|
||||
call WarpEnvironmentCheck
|
||||
ld a, [wNextWarp]
|
||||
ld [wWarpNumber], a
|
||||
ld a, [wNextMapGroup]
|
||||
@@ -457,11 +462,12 @@ CheckExitTiles::
|
||||
ret z
|
||||
cp (COLL_CARPET | COLLFLAG_ENCOUNTER)
|
||||
ret z
|
||||
Function242c::
|
||||
|
||||
SetPlayerFacingDown::
|
||||
ld a, $0
|
||||
ld [wPlayerFacing], a
|
||||
ld a, $0
|
||||
ld d, $0
|
||||
ld d, DOWN
|
||||
call SetObjectFacing
|
||||
ret
|
||||
|
||||
@@ -922,7 +928,7 @@ ClearObjectStructs::
|
||||
jr nz, .clear_cmd_queue
|
||||
ret
|
||||
|
||||
ReadWord:: ; TODO: is this used?
|
||||
Unreferenced_ReadWord::
|
||||
ld e, [hl]
|
||||
inc hl
|
||||
ld d, [hl]
|
||||
@@ -1004,7 +1010,7 @@ RestoreFacingAfterWarp::
|
||||
call GetCoordOfUpperLeftCorner
|
||||
ret
|
||||
|
||||
Function275e:: ; TODO: is this used?
|
||||
.unreferenced_pass
|
||||
inc hl
|
||||
inc hl
|
||||
inc hl
|
||||
@@ -1066,11 +1072,11 @@ GetCoordOfUpperLeftCorner::
|
||||
ld [wMetatileNextX], a
|
||||
ret
|
||||
|
||||
Function27C7:: ; TODO
|
||||
WarpEnvironmentCheck::
|
||||
call GetMapEnvironment
|
||||
cp 2
|
||||
cp ROUTE
|
||||
jr z, .interior
|
||||
cp 1
|
||||
cp TOWN
|
||||
jr z, .interior
|
||||
ret
|
||||
.interior
|
||||
@@ -1079,12 +1085,12 @@ Function27C7:: ; TODO
|
||||
ld a, [wNextMapNumber]
|
||||
ld c, a
|
||||
call GetAnyMapEnvironment
|
||||
cp 3
|
||||
cp INDOOR
|
||||
jr z, .exterior
|
||||
cp 4
|
||||
jr z, .exterior
|
||||
cp 6
|
||||
cp CAVE
|
||||
jr z, .exterior
|
||||
cp GATE
|
||||
jr z, .exterior ; BUG: ENVIRONMENT_5, and DUNGEON are missing.
|
||||
ret
|
||||
|
||||
.exterior
|
||||
|
||||
@@ -20,13 +20,13 @@ GetMapObjectAttrPtr::
|
||||
add hl, de
|
||||
ret
|
||||
|
||||
Unreferenced_Function15d1::
|
||||
Unreferenced_SelectMapObject::
|
||||
ldh [hMapObjectIndex], a
|
||||
call GetMapObject
|
||||
call OpenDebugMenu
|
||||
ret
|
||||
|
||||
Unreferenced_Function15da::
|
||||
Unreferenced_UnselectMapObject::
|
||||
ldh [hMapObjectIndex], a
|
||||
callfar UnmaskObject
|
||||
ldh a, [hMapObjectIndex]
|
||||
|
||||
@@ -19,3 +19,14 @@ Divide::
|
||||
pop de
|
||||
pop hl
|
||||
ret
|
||||
|
||||
SECTION "home/math.asm@SubtractAbsolute", ROM0
|
||||
|
||||
SubtractAbsolute:: ; unreferenced
|
||||
; Return |a - b|, sign in carry.
|
||||
sub b
|
||||
ret nc
|
||||
cpl
|
||||
add 1
|
||||
scf
|
||||
ret
|
||||
|
||||
@@ -277,19 +277,18 @@ GetMenuIndexSet::
|
||||
ld [wMenuDataItems], a
|
||||
ret
|
||||
|
||||
; Unreferenced?
|
||||
Function1ee9::
|
||||
Unreferenced_RestoreItemMenuTileBackup:
|
||||
call MenuBoxCoord2Tile
|
||||
call GetMenuBoxDims
|
||||
ld a, [wMenuDataItems]
|
||||
add a
|
||||
cp b
|
||||
jr nc, .asm_1ef9
|
||||
jr nc, .col
|
||||
ld b, a
|
||||
dec c
|
||||
ret
|
||||
|
||||
.asm_1ef9:
|
||||
.col:
|
||||
ld a, b
|
||||
srl a
|
||||
dec a
|
||||
|
||||
@@ -1,39 +1,6 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/misc_32c8.asm@Unknown 32c8", ROM0
|
||||
|
||||
Call_GetItemAmount::
|
||||
predef GetItemAmount
|
||||
ld a, b
|
||||
and a
|
||||
ret
|
||||
|
||||
GetTerminatingString::
|
||||
ld hl, .EmptyString
|
||||
ret
|
||||
|
||||
.EmptyString:
|
||||
db "@"
|
||||
|
||||
SubtractSigned::
|
||||
sub b
|
||||
ret nc
|
||||
cpl
|
||||
add $1
|
||||
scf
|
||||
ret
|
||||
|
||||
SECTION "home/misc_32c8.asm@Unknown 3686", ROM0
|
||||
|
||||
GiveMonToPlayer::
|
||||
; Give to the player Pokemon of species b at level c.
|
||||
ld a, b
|
||||
ld [wCurPartySpecies], a
|
||||
ld a, c
|
||||
ld [wCurPartyLevel], a
|
||||
xor a
|
||||
ld [wMonType], a
|
||||
farjp Function1130a
|
||||
SECTION "home/pokedex_flags.asm", ROM0
|
||||
|
||||
WaitPressedAny::
|
||||
; Waits for one of the buttons in d to be pressed.
|
||||
13
home/sound_test.asm
Normal file
13
home/sound_test.asm
Normal file
@@ -0,0 +1,13 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/sound_test.asm", ROM0
|
||||
|
||||
DebugMenuSoundTest::
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(_DebugMenuSoundTest)
|
||||
call Bankswitch
|
||||
call _DebugMenuSoundTest
|
||||
pop af
|
||||
call Bankswitch
|
||||
jp DebugMenu
|
||||
18
home/sprite_anims.asm
Normal file
18
home/sprite_anims.asm
Normal file
@@ -0,0 +1,18 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
SECTION "home/sprite_anims.asm", ROM0
|
||||
|
||||
InitSpriteAnimStruct::
|
||||
ld [wSpriteAnimAddrBackup], a
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(_InitSpriteAnimStruct)
|
||||
call Bankswitch
|
||||
ld a, [wSpriteAnimAddrBackup]
|
||||
call _InitSpriteAnimStruct
|
||||
pop af
|
||||
call Bankswitch
|
||||
ret
|
||||
|
||||
ReinitSpriteAnimFrame:: ; stubbed
|
||||
ret
|
||||
@@ -194,12 +194,12 @@ PrepareTextbox::
|
||||
call ClearWindowData
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, 01
|
||||
ld a, BANK(ReanchorBGMap_NoOAMUpdate)
|
||||
call Bankswitch
|
||||
call ReanchorBGMap_NoOAMUpdate
|
||||
hlcoord 0, 12 ;in the tilemap in WRAM
|
||||
ld b, 04
|
||||
ld c, $12
|
||||
ld b, 4
|
||||
ld c, 18
|
||||
call DrawTextBox
|
||||
call WaitBGMap
|
||||
call LoadFonts_NoOAMUpdate
|
||||
|
||||
@@ -9,18 +9,18 @@ ClearBox::
|
||||
|
||||
FillBoxWithByte::
|
||||
ld de, SCREEN_WIDTH
|
||||
.asm_0e1d:
|
||||
.row:
|
||||
push hl
|
||||
push bc
|
||||
.asm_0e1f:
|
||||
.col:
|
||||
ld [hli], a
|
||||
dec c
|
||||
jr nz, .asm_0e1f
|
||||
jr nz, .col
|
||||
pop bc
|
||||
pop hl
|
||||
add hl, de
|
||||
dec b
|
||||
jr nz, .asm_0e1d
|
||||
jr nz, .row
|
||||
ret
|
||||
|
||||
ClearTileMap::
|
||||
@@ -125,22 +125,22 @@ endc
|
||||
ENDM
|
||||
|
||||
cp '<NEXT>'
|
||||
jr nz, .asm_0eaa
|
||||
jr nz, .not_next
|
||||
pop hl
|
||||
ld bc, 2 * SCREEN_WIDTH
|
||||
add hl, bc
|
||||
push hl
|
||||
jp NextChar
|
||||
|
||||
.asm_0eaa:
|
||||
.not_next:
|
||||
cp '<LINE>'
|
||||
jr nz, .asm_0eb6
|
||||
jr nz, .not_line
|
||||
pop hl
|
||||
hlcoord 1, 16
|
||||
push hl
|
||||
jp NextChar
|
||||
|
||||
.asm_0eb6:
|
||||
.not_line:
|
||||
dict '<NULL>', NullChar
|
||||
dict '<SCROLL>', _ContTextNoPause
|
||||
dict '<_CONT>', _ContText
|
||||
@@ -258,19 +258,21 @@ GaCharacter:: print_name GaCharacterTExt
|
||||
|
||||
PlaceMoveTargetsName::
|
||||
ldh a, [hBattleTurn]
|
||||
xor $1
|
||||
jr asm_0fbb
|
||||
xor 1
|
||||
jr PlaceBattlersName
|
||||
|
||||
PlaceMoveUsersName::
|
||||
ldh a, [hBattleTurn]
|
||||
asm_0fbb:
|
||||
; fallthrough
|
||||
|
||||
PlaceBattlersName:
|
||||
push de
|
||||
and a
|
||||
jr nz, .asm_0fc4
|
||||
jr nz, .enemy
|
||||
ld de, wBattleMonNickname
|
||||
jr PlaceCommandCharacter
|
||||
|
||||
.asm_0fc4:
|
||||
.enemy:
|
||||
ld de, EnemyText
|
||||
call PlaceString
|
||||
ld h, b
|
||||
@@ -728,3 +730,12 @@ TextCommands::
|
||||
dw Text_PlaySound
|
||||
dw Text_PlaySound
|
||||
dw Text_PlaySound
|
||||
|
||||
SECTION "home/text.asm@GetTerminatingString", ROM0
|
||||
|
||||
GetTerminatingString::
|
||||
ld hl, .EmptyString
|
||||
ret
|
||||
|
||||
.EmptyString:
|
||||
db "@"
|
||||
|
||||
@@ -442,3 +442,10 @@ LoadTilesetGFX_LCDOff::
|
||||
call LoadTilesetGFX
|
||||
call EnableLCD
|
||||
ret
|
||||
|
||||
DummyEndPredef::
|
||||
; Unused function at the end of PredefPointers.
|
||||
rept 16
|
||||
nop
|
||||
endr
|
||||
ret
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
INCLUDE "constants.asm"
|
||||
|
||||
|
||||
SECTION "home/unknown.asm@Empty function", ROM0
|
||||
|
||||
InexplicablyEmptyFunction::
|
||||
rept 16
|
||||
nop
|
||||
endr
|
||||
ret
|
||||
|
||||
|
||||
; TODO:
|
||||
; 1. Figure out what these are. Might be related to RTC, like ClearRTCStatus and the ilk.
|
||||
; 2. Give them proper names.
|
||||
; 3. Move them to their own file(s).
|
||||
|
||||
SECTION "home/unknown.asm@Unknown functions", ROM0
|
||||
|
||||
; Init the options with values of $00 because EmptyAllSRAMBanks sets them to $FF, and that's no good!
|
||||
; Final game gets around this by filling the entirety of SRAM banks with $00, which this demo probably should've done.
|
||||
InitOptions::
|
||||
ld a, BANK(sOptions)
|
||||
call OpenSRAM
|
||||
ld hl, sOptions ; TODO: label this.
|
||||
ld bc, 7
|
||||
xor a
|
||||
call ByteFill
|
||||
call CloseSRAM
|
||||
ret
|
||||
|
||||
LoadSGBBorderOptions::
|
||||
ld a, BANK(sOptions)
|
||||
call OpenSRAM
|
||||
ld a, [sOptions]
|
||||
and SGB_BORDER
|
||||
ld [wOptions], a
|
||||
call CloseSRAM
|
||||
ret
|
||||
|
||||
|
||||
SECTION "home/unknown.asm@Unknown_20f8", ROM0
|
||||
|
||||
UnfreezeEverything::
|
||||
call UnfreezeAllObjects
|
||||
call UnfreezePlayer
|
||||
ret
|
||||
|
||||
|
||||
SECTION "home/unknown.asm@Debug menu sound test call", ROM0
|
||||
|
||||
DebugMenuSoundTest::
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(_DebugMenuSoundTest)
|
||||
call Bankswitch
|
||||
call _DebugMenuSoundTest
|
||||
|
||||
pop af
|
||||
call Bankswitch
|
||||
jp DebugMenu
|
||||
29
layout.link
29
layout.link
@@ -40,7 +40,7 @@ ROM0
|
||||
"home/serial.asm"
|
||||
"home/interrupts.asm@Joypad dummy interrupt"
|
||||
"home/joypad.asm"
|
||||
"home/unknown.asm@Debug menu sound test call"
|
||||
"home/sound_test.asm"
|
||||
"home/pic.asm"
|
||||
"home/copy2.asm"
|
||||
"home/text.asm"
|
||||
@@ -50,22 +50,22 @@ ROM0
|
||||
"home/menu_window.asm"
|
||||
"home/menu.asm"
|
||||
"home/window.asm"
|
||||
"home/unknown.asm@Unknown functions"
|
||||
"home/load_options.asm"
|
||||
"home/toolgear.asm"
|
||||
"home/unknown.asm@Unknown_20f8"
|
||||
"home/map.asm"
|
||||
"home/overworld.asm@Startmenu and Select Button Check"
|
||||
"home/tileset.asm"
|
||||
"home/unknown.asm@Empty function"
|
||||
"home/farcall.asm"
|
||||
"home/predef.asm"
|
||||
"home/talk_to_npc.asm"
|
||||
"home/trainers.asm"
|
||||
"home/items.asm@TossItem"
|
||||
"home/item.asm@TossItem"
|
||||
"home/random.asm"
|
||||
"home/sram.asm"
|
||||
"home/bankswitch.asm"
|
||||
"home/misc_32c8.asm@Unknown 32c8"
|
||||
"home/item.asm@Call_GetItemAmount"
|
||||
"home/text.asm@GetTerminatingString"
|
||||
"home/math.asm@SubtractAbsolute"
|
||||
"home/clear_sprites.asm"
|
||||
"home/copy.asm"
|
||||
"home/math.asm"
|
||||
@@ -77,8 +77,8 @@ ROM0
|
||||
"home/overworld.asm@QueueScript"
|
||||
"home/tables.asm"
|
||||
"home/tilemap.asm"
|
||||
"home/items.asm@GiveItem"
|
||||
"home/misc_32c8.asm@Unknown 3686"
|
||||
"home/item.asm@GiveItem"
|
||||
"home/pokedex_flags.asm"
|
||||
"home/names.asm@Names"
|
||||
"home/scrolling_menu.asm"
|
||||
"home/std_scripts.asm"
|
||||
@@ -88,7 +88,10 @@ ROM0
|
||||
"home/names.asm@GetNick"
|
||||
"home/print_bcd.asm"
|
||||
"home/pokemon.asm@3AED"
|
||||
"home/misc_3c43.asm"
|
||||
"home/battle.asm"
|
||||
"home/item.asm"
|
||||
"home/battle.asm@GetBattleAnimPointer"
|
||||
"home/sprite_anims.asm"
|
||||
"home/audio.asm"
|
||||
"garbage.asm@Home Garbage"
|
||||
|
||||
@@ -101,6 +104,12 @@ ROMX $01
|
||||
"engine/overworld/map_objects.asm"
|
||||
"engine/menu/main_menu.asm"
|
||||
"engine/movie/oak_speech.asm"
|
||||
"data/player_names.asm"
|
||||
"engine/movie/oak_speech.asm@ChooseRivalName"
|
||||
"data/rival_names.asm"
|
||||
"engine/movie/oak_speech.asm@MomNamePrompt"
|
||||
"data/mom_names.asm"
|
||||
"engine/movie/oak_speech.asm@NamingWindow"
|
||||
"engine/movie/title.asm@Title screen"
|
||||
"engine/predef.asm"
|
||||
"engine/overworld/init_map.asm"
|
||||
@@ -141,7 +150,7 @@ ROMX $03
|
||||
"engine/overworld/player_movement.asm@Rest of Player Movement"
|
||||
"engine/overworld/spawn_points.asm"
|
||||
"data/maps/spawn_points.asm"
|
||||
"data/tileset_headers.asm"
|
||||
"data/tilesets.asm"
|
||||
"home/trainers.asm@Bank 03"
|
||||
"engine/items/inventory.asm@Inventory"
|
||||
"engine/smallflag.asm"
|
||||
|
||||
@@ -1780,7 +1780,7 @@ wTilesetBlocksAddress:: dw
|
||||
wTilesetTilesAddress:: dw
|
||||
wTilesetCollisionAddress:: dw
|
||||
wTilesetAnim:: dw
|
||||
ds 2 ; TODO
|
||||
ds 2 ; unused
|
||||
wTilesetEnd::
|
||||
|
||||
wGameData2End::
|
||||
|
||||
@@ -9,20 +9,20 @@ SilentHill_ScriptLoader::
|
||||
ret
|
||||
|
||||
SilentHillNPCIDs1:
|
||||
db 0
|
||||
db 2
|
||||
db 3
|
||||
db $00
|
||||
db $02
|
||||
db $03
|
||||
db $FF
|
||||
|
||||
SilentHillNPCIDs2:
|
||||
db 2
|
||||
db 3
|
||||
db $02
|
||||
db $03
|
||||
db $FF
|
||||
|
||||
SilentHillNPCIDs3:
|
||||
db 1
|
||||
db 2
|
||||
db 3
|
||||
db $01
|
||||
db $02
|
||||
db $03
|
||||
db $FF
|
||||
|
||||
SilentHillScriptPointers1:
|
||||
@@ -62,9 +62,9 @@ SilentHillScript1:
|
||||
ret nz
|
||||
ld hl, wJoypadFlags
|
||||
set 4, [hl]
|
||||
ld a, 02
|
||||
ld a, 2
|
||||
call FreezeAllOtherObjects
|
||||
ld a, 02
|
||||
ld a, 2
|
||||
ld hl, SilentHillMovement1
|
||||
call LoadMovementDataPointer
|
||||
ld hl, wOverworldFlags
|
||||
@@ -94,14 +94,14 @@ SilentHillScript2:
|
||||
call OpenTextbox
|
||||
ld hl, wJoypadFlags
|
||||
set 4, [hl]
|
||||
ld a, 2
|
||||
ld a, $02
|
||||
ld hl, SilentHillMovement2
|
||||
call LoadMovementDataPointer
|
||||
ld hl, wOverworldFlags
|
||||
set 7, [hl]
|
||||
ld a, MAPSTATUS_EVENT_RUNNING
|
||||
call SetMapStatus
|
||||
ld a, 2
|
||||
ld a, $02
|
||||
ld [wMapScriptNumber], a
|
||||
ret
|
||||
|
||||
@@ -148,7 +148,7 @@ SilentHillScript4:
|
||||
.jump2
|
||||
ld hl, SilentHillMovement4
|
||||
.skip
|
||||
ld a, 03
|
||||
ld a, $03
|
||||
call LoadMovementDataPointer
|
||||
ld hl, wOverworldFlags
|
||||
set 7, [hl]
|
||||
@@ -407,13 +407,13 @@ SilentHillTextRival1:
|
||||
|
||||
MomNameMenuHeaderUnused:
|
||||
db MENU_BACKUP_TILES ; flags
|
||||
menu_coords 00, 00, 10, 11
|
||||
menu_coords 0, 0, 10, 11
|
||||
dw .MomNameMenuDataUnused
|
||||
db 01 ; initial selection
|
||||
db 1 ; initial selection
|
||||
|
||||
.MomNameMenuDataUnused:
|
||||
db STATICMENU_CURSOR
|
||||
db 04 ; items
|
||||
db 4 ; items
|
||||
db "じぶんで きめる@"
|
||||
db "おかあさん @"
|
||||
db "ママ@"
|
||||
|
||||
@@ -25,13 +25,13 @@ SilentHillLabBackScriptPointers:
|
||||
dw SilentHillLabBackNPCIDs1
|
||||
|
||||
SilentHillLabBackNPCIDs1:
|
||||
db 00, 01, 02, 03, 04, $FF
|
||||
db $00, $01, $02, $03, $04, $FF
|
||||
SilentHillLabBackNPCIDs2:
|
||||
db 00, 01, 04, $FF
|
||||
db $00, $01, $04, $FF
|
||||
SilentHillLabBackNPCIDs3:
|
||||
db 00, 01, 02, $FF
|
||||
db $00, $01, $02, $FF
|
||||
SilentHillLabBackNPCIDs4:
|
||||
db 00, 01, 03, $FF
|
||||
db $00, $01, $03, $FF
|
||||
|
||||
SilentHillLabBack_TextPointers::
|
||||
dw SilentHillLabBackText1
|
||||
|
||||
Reference in New Issue
Block a user