diff --git a/engine/credits.asm b/engine/credits.asm index c0cc72d97..12bc72dd6 100644 --- a/engine/credits.asm +++ b/engine/credits.asm @@ -199,7 +199,7 @@ ParseCredits: ; 1099aa .theend ; Display "The End" graphic. - call $5c11 + call Function109c11 jr .loop .scene @@ -392,7 +392,7 @@ GetCreditsPalette: ; 109b2c add a ld e, a ld d, 0 - ld hl, .CreditsPalettes + ld hl, CreditsPalettes add hl, de add hl, de ; * 3 add hl, de @@ -423,7 +423,7 @@ GetCreditsPalette: ; 109b2c ret -.CreditsPalettes +CreditsPalettes: INCBIN "baserom.gbc",$109b6a,$18 ; pichu.pal INCBIN "baserom.gbc",$109b82,$18 ; smoochum.pal INCBIN "baserom.gbc",$109b9a,$18 ; ditto.pal @@ -436,31 +436,50 @@ Function109bca: ; 109bca (42:5bca) ld a, [hl] cp $ff jr z, .asm_109bed - and $3 + + and 3 ld e, a inc a - and $3 + and 3 ld [hl], a ld a, [$cf65] - and $3 + and 3 add a add a add e add a ld e, a - ld d, $0 - ld hl, $5bf1 + ld d, 0 + ld hl, CreditsMonsFrames add hl, de ld a, [hli] ld h, [hl] ld l, a ret + .asm_109bed ld hl, $ca00 ret ; 109bf1 (42:5bf1) -INCBIN "baserom.gbc",$109bf1,$109c11 - $109bf1 +CreditsMonsFrames: ; 109bf1 + dw CreditsPichuGFX + dw CreditsPichuGFX + $100 + dw CreditsPichuGFX + $200 + dw CreditsPichuGFX + $300 + dw CreditsSmoochumGFX + dw CreditsSmoochumGFX + $100 + dw CreditsSmoochumGFX + $200 + dw CreditsSmoochumGFX + $300 + dw CreditsDittoGFX + dw CreditsDittoGFX + $100 + dw CreditsDittoGFX + $200 + dw CreditsDittoGFX + $300 + dw CreditsIgglybuffGFX + dw CreditsIgglybuffGFX + $100 + dw CreditsIgglybuffGFX + $200 + dw CreditsIgglybuffGFX + $300 +; 109c11 ; known jump sources: 109a1b (42:5a1b) Function109c11: ; 109c11 (42:5c11) @@ -481,12 +500,13 @@ Function109c1c: ; 109c1c (42:5c1c) ; 109c24 (42:5c24) -CreditsGFX: -INCBIN "gfx/credits/border.2bpp" -INCBIN "gfx/credits/pichu.2bpp" -INCBIN "gfx/credits/smoochum.2bpp" -INCBIN "gfx/credits/ditto.2bpp" -INCBIN "gfx/credits/igglybuff.2bpp" +CreditsBorderGFX: INCBIN "gfx/credits/border.2bpp" + +CreditsMonsGFX: +CreditsPichuGFX: INCBIN "gfx/credits/pichu.2bpp" +CreditsSmoochumGFX: INCBIN "gfx/credits/smoochum.2bpp" +CreditsDittoGFX: INCBIN "gfx/credits/ditto.2bpp" +CreditsIgglybuffGFX: INCBIN "gfx/credits/igglybuff.2bpp" CreditsScript: ; 10acb4 diff --git a/gfx/credits/theend.2bpp b/gfx/credits/theend.2bpp new file mode 100644 index 000000000..b689688ba Binary files /dev/null and b/gfx/credits/theend.2bpp differ diff --git a/main.asm b/main.asm index 8bc013155..0836eee70 100644 --- a/main.asm +++ b/main.asm @@ -90955,7 +90955,9 @@ Functioncbce5: ; cbce5 ret ; cbd2e -INCBIN "baserom.gbc",$cbd2e,$cbe2b - $cbd2e +TheEndGFX: ; cbd2e +INCBIN "gfx/credits/theend.2bpp" +; cbe2e SECTION "bank33",ROMX,BANK[$33] @@ -113337,19 +113339,22 @@ Function109847: ; 109847 ld a, $0 jr z, .asm_10984f ld a, $40 - .asm_10984f ld [$cf63], a + ld a, [rSVBK] push af ld a, $5 ld [rSVBK], a + call WhiteBGMap call ClearTileMap call ClearSprites + ld hl, $ca00 ld c, $80 - ld de, rJOYP + ld de, $ff00 + .asm_10986a ld a, e ld [hli], a @@ -113357,37 +113362,46 @@ Function109847: ; 109847 ld [hli], a dec c jr nz, .asm_10986a - ld de, $5c24 + + ld de, CreditsBorderGFX ld hl, $9200 - ld bc, $4209 + lb bc, BANK(CreditsBorderGFX), $09 call Request2bpp - ld de, $4000 + + ld de, CopyrightGFX ld hl, $9600 - ld bc, $391d + lb bc, BANK(CopyrightGFX), $1d call Request2bpp - ld de, $7d2e + + ld de, TheEndGFX ld hl, $9400 - ld bc, $3210 + lb bc, BANK(TheEndGFX), $10 call Request2bpp + ld a, $ff ld [$cf64], a xor a ld [$cf65], a + call Function109bca ld e, l ld d, h ld hl, VTiles2 - ld bc, $4210 + lb bc, BANK(CreditsMonsGFX), $10 call Request2bpp + call Function109a95 xor a ld [$cf66], a + ld hl, LYOverrides - ld bc, Start + ld bc, $100 xor a call ByteFill - ld a, $43 + + ld a, rSCX & $ff ld [hLCDStatCustom], a + call GetCreditsPalette call Function32f9 ld a, [$ff9e] @@ -113401,10 +113415,12 @@ Function109847: ; 109847 ld [CreditsPos], a ld [$cd21], a ld [CreditsTimer], a + .asm_1098de call Function109908 call Function1098fd jr nz, .asm_1098ee + call Function109926 call DelayFrame jr .asm_1098de