From 52d45e6867247a2dac244da241e67485b8774c63 Mon Sep 17 00:00:00 2001 From: scawful Date: Tue, 20 Dec 2022 19:16:43 -0500 Subject: [PATCH] add boat_gfx expanded space --- Graphics/boat.bin | Bin 0 -> 8192 bytes Graphics/boat_gfx.asm | 52 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 Graphics/boat.bin create mode 100644 Graphics/boat_gfx.asm diff --git a/Graphics/boat.bin b/Graphics/boat.bin new file mode 100644 index 0000000000000000000000000000000000000000..244d92a78c0072196916c345fe1b8c326da330ec GIT binary patch literal 8192 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 CX=APc literal 0 HcmV?d00001 diff --git a/Graphics/boat_gfx.asm b/Graphics/boat_gfx.asm new file mode 100644 index 0000000..17de000 --- /dev/null +++ b/Graphics/boat_gfx.asm @@ -0,0 +1,52 @@ +org $0AB917 ; after most of the area loading after calling the bird takes place + JSL CheckForChangeGraphicsNormalLoad + +org $028492 ; after leaving a dungeon + JSL CheckForChangeGraphicsNormalLoad + +org $00E19B + InitTilesets: + +; ============================================================================== + +org $2F8000 +CheckForChangeGraphicsNormalLoad: +{ + JSL InitTilesets ;calls $00E19B that was replaced + + LDA $8A : CMP.b #$30 : BEQ .boat_area + JSR ApplyGraphics1 + + RTL ;goes back to normal + + .boat_area + + RTL +} + +; ============================================================================== + +ApplyGraphics1: +{ + REP #$20 ; A = 16, XY = 8 + LDX #$80 : STX $2100 ; turn the screen off (required) + LDX #$80 : STX $2115 ; Set the video port register every time we write it increase by 1 + LDA #$2000 : STA $2116 ; Destination of the DMA $5800 in vram <- this need to be divided by 2 + LDA #$1801 : STA $4300 ; DMA Transfer Mode and destination register + ; "001 => 2 registers write once (2 bytes: p, p+1)" + LDA.w #BoatBitmap : STA $4302 ; Source address where you want gfx from ROM + LDX.b #BoatBitmap>>16 : STX $4304 + LDA #$4000 : STA $4305 ; size of the transfer 4 sheets of $800 each + LDX #$01 : STX $420B ; Do the DMA + LDX #$0F : STX $2100 ; turn the screen back on + + SEP #$30 + + RTS + + BoatBitmap: + incbin boat.bin +} + +; ============================================================================== +