Skip to content

Commit

Permalink
Merge pull request #479 from zladx/migrate-to-hardware.inc
Browse files Browse the repository at this point in the history
  • Loading branch information
tobiasvl authored Nov 16, 2022
2 parents 73b7549 + 230b2a4 commit afb9a11
Show file tree
Hide file tree
Showing 128 changed files with 2,457 additions and 1,487 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ default: build test
#

# Dependencies for the base version (English 1.0)
asm_files = $(shell find src -type f -name '*.asm')
gfx_files = $(shell find src/gfx -type f -name '*.png')
bin_files = $(shell find src -type f -name '*.tilemap.encoded' -o -name '*.attrmap.encoded')
asm_files = $(shell find src -type f -name '*.asm' -o -name '*.inc')
gfx_files = $(shell find src/gfx -type f -name '*.png')
bin_files = $(shell find src -type f -name '*.tilemap.encoded' -o -name '*.attrmap.encoded')

# Compile an PNG file for OAM memory to a 2BPP file
# (inverting the palette and de-interleaving the tiles).
Expand Down
12 changes: 6 additions & 6 deletions src/code/bank0.asm
Original file line number Diff line number Diff line change
Expand Up @@ -1362,7 +1362,7 @@ PeachPictureHandler::
jp returnFromGameplayHandler ; $0EC8: $C3 $1A $10

MarinBeachHandler::
call MarinBeachEntryPoint ; $0ECB: $CD $03 $62
call MarinBeachEntryPoint ; $0ECB: $CD $03 $62
jp returnFromGameplayHandler ; $0ECE: $C3 $1A $10

WorldMapHandler::
Expand Down Expand Up @@ -4398,7 +4398,7 @@ EnableExternalRAMWriting::
ld hl, MBC3SRamBank ; $27D1: $21 $00 $40
ld [hl], $00 ; Switch to RAM bank 0 ; $27D4: $36 $00
ld hl, MBC3SRamEnable ; $27D6: $21 $00 $00
ld [hl], SRAM_ENABLE ; Enable external RAM writing ; $27D9: $36 $0A
ld [hl], CART_SRAM_ENABLE ; Enable external RAM writing ; $27D9: $36 $0A
pop hl ; $27DB: $E1
ret ; $27DC: $C9

Expand Down Expand Up @@ -4484,14 +4484,14 @@ ReadJoypadState::
ret ; $2851: $C9

.readState
ld a, $20 ; $2852: $3E $20
ld a, J_BUTTONS ; $2852: $3E $20
ld [rP1], a ; $2854: $E0 $00
ld a, [rP1] ; $2856: $F0 $00
ld a, [rP1] ; $2858: $F0 $00
cpl ; $285A: $2F
and $0F ; $285B: $E6 $0F
ld b, a ; $285D: $47
ld a, $10 ; $285E: $3E $10
ld a, J_DPAD ; $285E: $3E $10
ld [rP1], a ; $2860: $E0 $00
ld a, [rP1] ; $2862: $F0 $00
ld a, [rP1] ; $2864: $F0 $00
Expand All @@ -4512,7 +4512,7 @@ ReadJoypadState::
ldh [hJoypadState], a ; $287D: $E0 $CC
ld a, c ; $287F: $79
ldh [hPressedButtonsMask], a ; $2880: $E0 $CB
ld a, $30 ; $2882: $3E $30
ld a, J_BUTTONS | J_DPAD ; $2882: $3E $30
ld [rP1], a ; $2884: $E0 $00

.return
Expand Down Expand Up @@ -5904,7 +5904,7 @@ ASSERT LOW(wRoomObjectsArea) & $0F == 0, "wRoomObjectsArea must be aligned on $1
ld e, a ; $30D8: $5F
; When the end of a tiles line is reached, move to the next one.
and $1F ; $30D9: $E6 $1F
cp (DISPLAY_WIDTH / TILE_WIDTH) ; $30DB: $FE $14
cp (SCRN_X / TILE_WIDTH) ; $30DB: $FE $14
jr nz, .eEnd ; $30DD: $20 $0A
ld a, e ; $30DF: $7B
and $E0 ; $30E0: $E6 $E0
Expand Down
2 changes: 1 addition & 1 deletion src/code/bank1.asm
Original file line number Diff line number Diff line change
Expand Up @@ -1815,7 +1815,7 @@ HideAllSprites::
jr z, .enableExternalRAMWriting ; $5F34: $28 $04
; disable external RAM writing
; (probably because an extra RAM bank available on CGB can be used)
ld [hl], SRAM_DISABLE ; $5F36: $36 $00
ld [hl], CART_SRAM_DISABLE ; $5F36: $36 $00
jr .endIf ; $5F38: $18 $02

.enableExternalRAMWriting
Expand Down
2 changes: 1 addition & 1 deletion src/code/bank14.asm
Original file line number Diff line number Diff line change
Expand Up @@ -774,7 +774,7 @@ UpdateEntityTimers::
; When the flash countdown is active, invert the palette every 4 frames
sla a ; $4DE4: $CB $27
sla a ; $4DE6: $CB $27
and OAM_DMG_PAL_1 ; $4DE8: $E6 $10
and OAMF_PAL1 ; $4DE8: $E6 $10
ldh [hActiveEntityFlipAttribute], a ; $4DEA: $E0 $ED
ret ; $4DEC: $C9

Expand Down
6 changes: 3 additions & 3 deletions src/code/bank20.asm
Original file line number Diff line number Diff line change
Expand Up @@ -4204,19 +4204,19 @@ func_020_6446::

GreenTunicStatusOAMData::
db $40, OAM_GBC_PAL_5 ; left green tunic
db $40, OAM_GBC_PAL_5 | OAM_X_FLIP ; right green tunic
db $40, OAM_GBC_PAL_5 | OAMF_XFLIP ; right green tunic
db $5C, OAM_GBC_PAL_3 ; left "WEAR G"
db $5E, OAM_GBC_PAL_3 ; right "WEAR G"

RedTunicStatusOAMData::
db $40, OAM_GBC_PAL_6 ; left red tunic
db $40, OAM_GBC_PAL_6 | OAM_X_FLIP ; right red tunic
db $40, OAM_GBC_PAL_6 | OAMF_XFLIP ; right red tunic
db $60, OAM_GBC_PAL_3 ; left "WEAR R"
db $62, OAM_GBC_PAL_3 ; right "WEAR R"

BlueTunicStatusOAMData::
db $40, OAM_GBC_PAL_7 ; left blue tunic
db $40, OAM_GBC_PAL_7 | OAM_X_FLIP ; right blue tunic
db $40, OAM_GBC_PAL_7 | OAMF_XFLIP ; right blue tunic
db $64, OAM_GBC_PAL_3 ; left "WEAR B"
db $7E, OAM_GBC_PAL_3 ; right "WEAR B"

Expand Down
36 changes: 18 additions & 18 deletions src/code/credits.asm
Original file line number Diff line number Diff line change
Expand Up @@ -5749,7 +5749,7 @@ jr_017_7784:

; X-flip the entity
ld hl, hActiveEntityFlipAttribute ; $7793: $21 $ED $FF
set OAM_BIT_X_FLIP, [hl] ; $7796: $CB $EE
set OAMB_XFLIP, [hl] ; $7796: $CB $EE

.jr_7798
ld de, Data_017_7766 ; $7798: $11 $66 $77
Expand Down Expand Up @@ -5879,8 +5879,8 @@ Unknow001SpriteVariants::
db $54, OAM_GBC_PAL_4
db $64, OAM_GBC_PAL_4
.variant1 ; $787D
db $64, OAM_GBC_PAL_4 | OAM_X_FLIP
db $54, OAM_GBC_PAL_4 | OAM_X_FLIP
db $64, OAM_GBC_PAL_4 | OAMF_XFLIP
db $54, OAM_GBC_PAL_4 | OAMF_XFLIP
.variant2 ; $7881
db $4E, OAM_GBC_PAL_4
db $7E, OAM_GBC_PAL_4
Expand Down Expand Up @@ -5966,23 +5966,23 @@ jr_017_78DD:
; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
Unknown002SpriteVariants::
.variant0
db $72, OAM_DMG_PAL_0
db $72, OAM_DMG_PAL_0 | OAM_X_FLIP
db $72, OAMF_PAL0
db $72, OAMF_PAL0 | OAMF_XFLIP
.variant1
db $74, OAM_DMG_PAL_0
db $74, OAM_DMG_PAL_0 | OAM_X_FLIP
db $74, OAMF_PAL0
db $74, OAMF_PAL0 | OAMF_XFLIP
.variant2
db $76, OAM_DMG_PAL_0
db $76, OAM_DMG_PAL_0 | OAM_X_FLIP
db $76, OAMF_PAL0
db $76, OAMF_PAL0 | OAMF_XFLIP
.variant3
db $78, OAM_DMG_PAL_0
db $78, OAM_DMG_PAL_0 | OAM_X_FLIP
db $78, OAMF_PAL0
db $78, OAMF_PAL0 | OAMF_XFLIP
.variant4
db $7A, OAM_DMG_PAL_0
db $7A, OAM_DMG_PAL_0 | OAM_X_FLIP
db $7A, OAMF_PAL0
db $7A, OAMF_PAL0 | OAMF_XFLIP
.variant5
db $7C, OAM_DMG_PAL_0
db $7C, OAM_DMG_PAL_0 | OAM_X_FLIP
db $7C, OAMF_PAL0
db $7C, OAMF_PAL0 | OAMF_XFLIP

Data_017_7907::
db $08, $06, $06, $06, $06, $08
Expand Down Expand Up @@ -6159,7 +6159,7 @@ func_017_7A29::
ld a, [wScreenShakeHorizontal] ; $7A39: $FA $55 $C1
ld c, a ; $7A3C: $4F
ldh a, [hActiveEntityFlipAttribute] ; $7A3D: $F0 $ED
and OAM_X_FLIP ; $7A3F: $E6 $20
and OAMF_XFLIP ; $7A3F: $E6 $20
rra ; $7A41: $1F
rra ; $7A42: $1F
ld hl, hActiveEntityPosX ; $7A43: $21 $EE $FF
Expand Down Expand Up @@ -6191,8 +6191,8 @@ func_017_7A29::
ld a, [wScreenShakeHorizontal] ; $7A68: $FA $55 $C1
ld c, a ; $7A6B: $4F
ldh a, [hActiveEntityFlipAttribute] ; $7A6C: $F0 $ED
and OAM_X_FLIP ; $7A6E: $E6 $20
xor OAM_X_FLIP ; $7A70: $EE $20
and OAMF_XFLIP ; $7A6E: $E6 $20
xor OAMF_XFLIP ; $7A70: $EE $20
rra ; $7A72: $1F
rra ; $7A73: $1F
ld hl, hActiveEntityPosX ; $7A74: $21 $EE $FF
Expand Down
8 changes: 4 additions & 4 deletions src/code/entities/03_hookshot_hit.asm
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
Unknown005SpriteVariants::
.variant0 ; $69AA
db $36, OAM_GBC_PAL_2 | OAM_DMG_PAL_0
db $36, OAM_GBC_PAL_2 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $36, OAM_GBC_PAL_2 | OAMF_PAL0
db $36, OAM_GBC_PAL_2 | OAMF_PAL0 | OAMF_XFLIP
.variant1 ; $69AE
db $36, OAM_GBC_PAL_2 | OAM_DMG_PAL_1
db $36, OAM_GBC_PAL_2 | OAM_DMG_PAL_1 | OAM_X_FLIP
db $36, OAM_GBC_PAL_2 | OAMF_PAL1
db $36, OAM_GBC_PAL_2 | OAMF_PAL1 | OAMF_XFLIP

MagicRodFireballEntityHandler::
ld hl, wActiveProjectileCount ; $69B2: $21 $4D $C1
Expand Down
16 changes: 8 additions & 8 deletions src/code/entities/03_liftable_rock.asm
Original file line number Diff line number Diff line change
Expand Up @@ -85,21 +85,21 @@ jr_003_5395:
; maybe for rock or pot entity
Unknown007SpriteVariants::
.variant0
db $F0, OAM_GBC_PAL_7 | OAM_DMG_PAL_1
db $F2, OAM_GBC_PAL_7 | OAM_DMG_PAL_1
db $F0, OAM_GBC_PAL_7 | OAMF_PAL1
db $F2, OAM_GBC_PAL_7 | OAMF_PAL1
.variant1
db $F4, OAM_GBC_PAL_6 | OAM_DMG_PAL_1
db $F6, OAM_GBC_PAL_6 | OAM_DMG_PAL_1
db $F4, OAM_GBC_PAL_6 | OAMF_PAL1
db $F6, OAM_GBC_PAL_6 | OAMF_PAL1

; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
; maybe for rock or pot entity
Unknown008SpriteVariants::
.variant0
db $F0, OAM_GBC_PAL_6 | OAM_DMG_PAL_1
db $F2, OAM_GBC_PAL_6 | OAM_DMG_PAL_1
db $F0, OAM_GBC_PAL_6 | OAMF_PAL1
db $F2, OAM_GBC_PAL_6 | OAMF_PAL1
.variant1
db $F4, OAM_GBC_PAL_6 | OAM_DMG_PAL_1
db $F6, OAM_GBC_PAL_6 | OAM_DMG_PAL_1
db $F4, OAM_GBC_PAL_6 | OAMF_PAL1
db $F6, OAM_GBC_PAL_6 | OAMF_PAL1

jp_003_53A8::
IF __PATCH_3__
Expand Down
16 changes: 8 additions & 8 deletions src/code/entities/03_moblin.asm
Original file line number Diff line number Diff line change
Expand Up @@ -183,26 +183,26 @@ Unknown009SpriteVariants::
db $60, OAM_GBC_PAL_3
db $62, OAM_GBC_PAL_3
.variant1
db $62, OAM_GBC_PAL_3 | OAM_X_FLIP
db $60, OAM_GBC_PAL_3 | OAM_X_FLIP
db $62, OAM_GBC_PAL_3 | OAMF_XFLIP
db $60, OAM_GBC_PAL_3 | OAMF_XFLIP
.variant2
db $64, OAM_GBC_PAL_3
db $66, OAM_GBC_PAL_3
.variant3
db $66, OAM_GBC_PAL_3 | OAM_X_FLIP
db $64, OAM_GBC_PAL_3 | OAM_X_FLIP
db $66, OAM_GBC_PAL_3 | OAMF_XFLIP
db $64, OAM_GBC_PAL_3 | OAMF_XFLIP
.variant4
db $68, OAM_GBC_PAL_3
db $6A, OAM_GBC_PAL_3
.variant5
db $6C, OAM_GBC_PAL_3
db $6E, OAM_GBC_PAL_3
.variant6
db $6A, OAM_GBC_PAL_3 | OAM_X_FLIP
db $68, OAM_GBC_PAL_3 | OAM_X_FLIP
db $6A, OAM_GBC_PAL_3 | OAMF_XFLIP
db $68, OAM_GBC_PAL_3 | OAMF_XFLIP
.variant7
db $6E, OAM_GBC_PAL_3 | OAM_X_FLIP
db $6C, OAM_GBC_PAL_3 | OAM_X_FLIP
db $6E, OAM_GBC_PAL_3 | OAMF_XFLIP
db $6C, OAM_GBC_PAL_3 | OAMF_XFLIP

Data_003_5937::
db $08, $F8, $04, $FC
Expand Down
12 changes: 6 additions & 6 deletions src/code/entities/03_pushed_block.asm
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
Unknown011SpriteVariants::
.variant0
db $6E, OAM_GBC_PAL_7 | OAM_DMG_PAL_0
db $6E, OAM_GBC_PAL_7 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $6E, OAM_GBC_PAL_7 | OAMF_PAL0
db $6E, OAM_GBC_PAL_7 | OAMF_PAL0 | OAMF_XFLIP
.variant1
db $F8, OAM_GBC_PAL_7 | OAM_DMG_PAL_1
db $FA, OAM_GBC_PAL_7 | OAM_DMG_PAL_1
db $F8, OAM_GBC_PAL_7 | OAMF_PAL1
db $FA, OAM_GBC_PAL_7 | OAMF_PAL1

Data_003_523D::
db $F8, $08, $00, $00
Expand All @@ -16,8 +16,8 @@ Data_003_5241::
; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
Unknown010SpriteVariants::
.variant0
db $7E, OAM_GBC_PAL_7 | OAM_DMG_PAL_0
db $7E, OAM_GBC_PAL_7 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $7E, OAM_GBC_PAL_7 | OAMF_PAL0
db $7E, OAM_GBC_PAL_7 | OAMF_PAL0 | OAMF_XFLIP

PushedBlockEntityHandler::
ld a, [wIsIndoor] ; $5249: $FA $A5 $DB
Expand Down
66 changes: 33 additions & 33 deletions src/code/entities/04_bombite.asm
Original file line number Diff line number Diff line change
@@ -1,44 +1,44 @@
; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
Bombite1SpriteVariants::
.variant0
db $7A, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $78, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $7A, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP
db $78, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP
.variant1
db $78, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $7A, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $78, OAM_GBC_PAL_0 | OAMF_PAL0
db $7A, OAM_GBC_PAL_0 | OAMF_PAL0
.variant2
db $7E, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $7E, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $7E, OAM_GBC_PAL_0 | OAMF_PAL0
db $7E, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP
.variant3
db $70, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $72, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $70, OAM_GBC_PAL_0 | OAMF_PAL0
db $72, OAM_GBC_PAL_0 | OAMF_PAL0
.variant4
db $74, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $76, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $74, OAM_GBC_PAL_0 | OAMF_PAL0
db $76, OAM_GBC_PAL_0 | OAMF_PAL0
.variant5
db $7C, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $7C, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $7C, OAM_GBC_PAL_0 | OAMF_PAL0
db $7C, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP

; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
Bombite2SpriteVariants::
.variant0
db $6A, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $68, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $6A, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP
db $68, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP
.variant1
db $68, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $6A, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $68, OAM_GBC_PAL_0 | OAMF_PAL0
db $6A, OAM_GBC_PAL_0 | OAMF_PAL0
.variant2
db $6E, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $6E, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $6E, OAM_GBC_PAL_0 | OAMF_PAL0
db $6E, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP
.variant3
db $60, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $62, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $60, OAM_GBC_PAL_0 | OAMF_PAL0
db $62, OAM_GBC_PAL_0 | OAMF_PAL0
.variant4
db $64, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $66, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $64, OAM_GBC_PAL_0 | OAMF_PAL0
db $66, OAM_GBC_PAL_0 | OAMF_PAL0
.variant5
db $6C, OAM_GBC_PAL_0 | OAM_DMG_PAL_0
db $6C, OAM_GBC_PAL_0 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $6C, OAM_GBC_PAL_0 | OAMF_PAL0
db $6C, OAM_GBC_PAL_0 | OAMF_PAL0 | OAMF_XFLIP

TimerBombiteEntityHandler::
ld de, Bombite1SpriteVariants ; $7D1F: $11 $EF $7C
Expand All @@ -53,7 +53,7 @@ TimerBombiteEntityHandler::
rla ; $7D2E: $17
rla ; $7D2F: $17
rla ; $7D30: $17
and OAM_DMG_PAL_1 ; $7D31: $E6 $10
and OAMF_PAL1 ; $7D31: $E6 $10
ldh [hActiveEntityFlipAttribute], a ; $7D33: $E0 $ED
call RenderActiveEntitySpritesPair ; $7D35: $CD $C0 $3B
call ReturnIfNonInteractive_04 ; $7D38: $CD $A3 $7F
Expand Down Expand Up @@ -186,20 +186,20 @@ jr_004_7DD4:
; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
BouncingBombite1SpriteVariants::
.variant0
db $7A, OAM_GBC_PAL_2 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $78, OAM_GBC_PAL_2 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $7A, OAM_GBC_PAL_2 | OAMF_PAL0 | OAMF_XFLIP
db $78, OAM_GBC_PAL_2 | OAMF_PAL0 | OAMF_XFLIP
.variant1
db $78, OAM_GBC_PAL_2 | OAM_DMG_PAL_0
db $7A, OAM_GBC_PAL_2 | OAM_DMG_PAL_0
db $78, OAM_GBC_PAL_2 | OAMF_PAL0
db $7A, OAM_GBC_PAL_2 | OAMF_PAL0

; define sprite variants by selecting tile n° and setting OAM attributes (palette + flags) in a list
BouncingBombite2SpriteVariants::
.variant0
db $6A, OAM_GBC_PAL_2 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $68, OAM_GBC_PAL_2 | OAM_DMG_PAL_0 | OAM_X_FLIP
db $6A, OAM_GBC_PAL_2 | OAMF_PAL0 | OAMF_XFLIP
db $68, OAM_GBC_PAL_2 | OAMF_PAL0 | OAMF_XFLIP
.variant1
db $68, OAM_GBC_PAL_2 | OAM_DMG_PAL_0
db $6A, OAM_GBC_PAL_2 | OAM_DMG_PAL_0
db $68, OAM_GBC_PAL_2 | OAMF_PAL0
db $6A, OAM_GBC_PAL_2 | OAMF_PAL0

Data_004_7E05::
db $08, $F8, $00, $00
Expand Down
Loading

0 comments on commit afb9a11

Please sign in to comment.