Skip to content

Commit

Permalink
Sync home and macro code with pokeyellow
Browse files Browse the repository at this point in the history
  • Loading branch information
Rangi42 committed Nov 5, 2020
1 parent abaf9fe commit d3e8142
Show file tree
Hide file tree
Showing 16 changed files with 44 additions and 122 deletions.
10 changes: 0 additions & 10 deletions constants/gfx_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,6 @@ TILE_WIDTH EQU 8 ; pixels
LEN_1BPP_TILE EQU 1 * TILE_WIDTH ; bytes
LEN_2BPP_TILE EQU 2 * TILE_WIDTH ; bytes

const_def
const SHADE_WHITE ; %00
const SHADE_LIGHT ; %01
const SHADE_DARK ; %10
const SHADE_BLACK ; %11
NUM_PAL_COLORS EQU const_value

PAL_COLOR_SIZE EQU 2
PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE

SCREEN_WIDTH EQU 20
SCREEN_HEIGHT EQU 18
SCREEN_WIDTH_PX EQU SCREEN_WIDTH * TILE_WIDTH ; pixels
Expand Down
12 changes: 8 additions & 4 deletions constants/palette_constants.asm
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
; monochrome palette color ids
const_def
const WHITE
const LIGHT_GRAY
const DARK_GRAY
const BLACK
const SHADE_WHITE ; %00
const SHADE_LIGHT ; %01
const SHADE_DARK ; %10
const SHADE_BLACK ; %11
NUM_PAL_COLORS EQU const_value

PAL_COLOR_SIZE EQU 2
PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE

; pal/blk packets
; SetPalFunctions indexes (see engine/gfx/palettes.asm)
Expand Down
4 changes: 2 additions & 2 deletions engine/movie/intro.asm
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ PlayIntro:
PlayIntroScene:
ld b, SET_PAL_NIDORINO_INTRO
call RunPaletteCommand
ldPal a, BLACK, DARK_GRAY, LIGHT_GRAY, WHITE
ldpal a, SHADE_BLACK, SHADE_DARK, SHADE_LIGHT, SHADE_WHITE
ldh [rBGP], a
ldh [rOBP0], a
ldh [rOBP1], a
Expand Down Expand Up @@ -307,7 +307,7 @@ PlayShootingStar:
ld b, SET_PAL_GAME_FREAK_INTRO
call RunPaletteCommand
farcall LoadCopyrightAndTextBoxTiles
ldPal a, BLACK, DARK_GRAY, LIGHT_GRAY, WHITE
ldpal a, SHADE_BLACK, SHADE_DARK, SHADE_LIGHT, SHADE_WHITE
ldh [rBGP], a
ld c, 180
call DelayFrames
Expand Down
2 changes: 1 addition & 1 deletion home/fade.asm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
; These routines manage gradual fading
; (e.g., entering a doorway)
LoadGBPal::
ld a, [wMapPalOffset] ;tells if wCurMap is dark (requires HM5_FLASH?)
ld a, [wMapPalOffset] ; tells if wCurMap is dark (requires HM5_FLASH?)
ld b, a
ld hl, FadePal4
ld a, l
Expand Down
2 changes: 1 addition & 1 deletion home/init.asm
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ ClearVram::


StopAllSounds::
ld a, BANK(Audio1_UpdateMusic)
ld a, BANK("Audio Engine 1")
ld [wAudioROMBank], a
ld [wAudioSavedROMBank], a
xor a
Expand Down
21 changes: 2 additions & 19 deletions home/inventory.asm
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,7 @@ AddAmountSoldToMoney::
; [wWhichPokemon] = index (within the inventory) of the item to remove
; [wItemQuantity] = quantity to remove
RemoveItemFromInventory::
ldh a, [hLoadedROMBank]
push af
ld a, BANK(RemoveItemFromInventory_)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call RemoveItemFromInventory_
pop af
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall RemoveItemFromInventory_
ret

; function to add an item (in varying quantities) to the player's bag or PC box
Expand All @@ -41,15 +33,6 @@ RemoveItemFromInventory::
; sets carry flag if successful, unsets carry flag if unsuccessful
AddItemToInventory::
push bc
ldh a, [hLoadedROMBank]
push af
ld a, BANK(AddItemToInventory_)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call AddItemToInventory_
pop bc
ld a, b
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall_sf AddItemToInventory_
pop bc
ret
10 changes: 1 addition & 9 deletions home/math.asm
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,7 @@ Divide::
push hl
push de
push bc
ldh a, [hLoadedROMBank]
push af
ld a, BANK(_Divide)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call _Divide
pop af
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall _Divide
pop bc
pop de
pop hl
Expand Down
22 changes: 2 additions & 20 deletions home/move_mon.asm
Original file line number Diff line number Diff line change
Expand Up @@ -231,27 +231,9 @@ CalcStat::
ret

AddEnemyMonToPlayerParty::
ldh a, [hLoadedROMBank]
push af
ld a, BANK(_AddEnemyMonToPlayerParty)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call _AddEnemyMonToPlayerParty
pop bc
ld a, b
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall_sf _AddEnemyMonToPlayerParty
ret

MoveMon::
ldh a, [hLoadedROMBank]
push af
ld a, BANK(_MoveMon)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call _MoveMon
pop bc
ld a, b
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall_sf _MoveMon
ret
14 changes: 7 additions & 7 deletions home/overworld.asm
Original file line number Diff line number Diff line change
Expand Up @@ -2321,16 +2321,16 @@ LoadMapData::
; copy current map view to VRAM
hlcoord 0, 0
ld de, vBGMap0
ld b, 18
ld b, SCREEN_HEIGHT
.vramCopyLoop
ld c, 20
ld c, SCREEN_WIDTH
.vramCopyInnerLoop
ld a, [hli]
ld [de], a
inc e
dec c
jr nz, .vramCopyInnerLoop
ld a, 32 - 20
ld a, BG_MAP_WIDTH - SCREEN_WIDTH
add e
ld e, a
jr nc, .noCarry
Expand Down Expand Up @@ -2366,15 +2366,15 @@ SwitchToMapRomBank::
ld c, a
ld b, $00
ld a, BANK(MapHeaderBanks)
call BankswitchHome ; switch to ROM bank 3
call BankswitchHome
ld hl, MapHeaderBanks
add hl, bc
ld a, [hl]
ldh [hMapROMBank], a ; save map ROM bank
ldh [hMapROMBank], a
call BankswitchBack
ldh a, [hMapROMBank]
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a ; switch to map ROM bank
ld [MBC1RomBank], a
pop bc
pop hl
ret
Expand All @@ -2395,7 +2395,7 @@ ResetUsingStrengthOutOfBattleBit:

ForceBikeOrSurf::
ld b, BANK(RedSprite)
ld hl, LoadPlayerSpriteGraphics
ld hl, LoadPlayerSpriteGraphics ; in bank 0
call Bankswitch
jp PlayDefaultMusic ; update map/player state?

Expand Down
11 changes: 1 addition & 10 deletions home/pokemon.asm
Original file line number Diff line number Diff line change
Expand Up @@ -325,16 +325,7 @@ PrintStatusCondition::
ret

PrintStatusConditionNotFainted::
ldh a, [hLoadedROMBank]
push af
ld a, BANK(PrintStatusAilment)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call PrintStatusAilment ; print status condition
pop bc
ld a, b
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall_sf PrintStatusAilment
ret

; function to print pokemon level, leaving off the ":L" if the level is at least 100
Expand Down
2 changes: 1 addition & 1 deletion home/start.asm
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ _Start::
xor a
jr .ok
.gbc
ld a, 0
ld a, FALSE
.ok
ld [wGBC], a
jp Init
20 changes: 2 additions & 18 deletions home/text_script.asm
Original file line number Diff line number Diff line change
Expand Up @@ -146,15 +146,7 @@ DisplayPokemartDialogue::
call LoadItemList
ld a, PRICEDITEMLISTMENU
ld [wListMenuID], a
ldh a, [hLoadedROMBank]
push af
ld a, BANK(DisplayPokemartDialogue_)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call DisplayPokemartDialogue_
pop af
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall DisplayPokemartDialogue_
jp AfterDisplayingTextID

PokemartGreetingText::
Expand Down Expand Up @@ -185,15 +177,7 @@ DisplayPokemonCenterDialogue::
ldh [hItemPrice + 2], a

inc hl
ldh a, [hLoadedROMBank]
push af
ld a, BANK(DisplayPokemonCenterDialogue_)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call DisplayPokemonCenterDialogue_
pop af
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall DisplayPokemonCenterDialogue_
jp AfterDisplayingTextID

DisplaySafariGameOverText::
Expand Down
11 changes: 1 addition & 10 deletions home/textbox.asm
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,5 @@
; [wTextBoxID] = text box ID
; b, c = y, x cursor position (TWO_OPTION_MENU only)
DisplayTextBoxID::
ldh a, [hLoadedROMBank]
push af
ld a, BANK(DisplayTextBoxID_)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call DisplayTextBoxID_
pop bc
ld a, b
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall_sf DisplayTextBoxID_
ret
10 changes: 1 addition & 9 deletions home/update_sprites.asm
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,5 @@ UpdateSprites::
ld a, [wUpdateSpritesEnabled]
dec a
ret nz
ldh a, [hLoadedROMBank]
push af
ld a, BANK(_UpdateSprites)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call _UpdateSprites
pop af
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
homecall _UpdateSprites
ret
2 changes: 1 addition & 1 deletion macros/code.asm
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ lb: MACRO ; r, hi, lo
ld \1, ((\2) & $ff) << 8 + ((\3) & $ff)
ENDM

ldPal: MACRO
ldpal: MACRO
ld \1, \2 << 6 | \3 << 4 | \4 << 2 | \5
ENDM

Expand Down
13 changes: 13 additions & 0 deletions macros/farcall.asm
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,16 @@ homecall: MACRO
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
ENDM

homecall_sf: MACRO ; homecall but save flags by popping into bc instead of af
ldh a, [hLoadedROMBank]
push af
ld a, BANK(\1)
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
call \1
pop bc
ld a, b
ldh [hLoadedROMBank], a
ld [MBC1RomBank], a
ENDM

0 comments on commit d3e8142

Please sign in to comment.