gbdk-2020 | GameBoy Development Kit |
| download: https://git.y1.nz/archives/gbdk.tar.gz | |
| README | Files | Log | Refs | LICENSE |
commit f1615120f86383f356ef3f5617096daa967570ad parent 43dfccb83cdb36b6632733242a403c9798e40d97 Author: Toxa <untoxa@mail.ru> Date: Mon, 13 Jun 2022 11:22:40 +0300 SMS/GG: fix overwriting of the first two bytes of the _CODE section Diffstat:
| M | gbdk-lib/libc/targets/z80/gg/crt0.s | 22 | ++++++++-------------- |
| M | gbdk-lib/libc/targets/z80/sms/crt0.s | 22 | ++++++++-------------- |
2 files changed, 16 insertions(+), 28 deletions(-)
diff --git a/gbdk-lib/libc/targets/z80/gg/crt0.s b/gbdk-lib/libc/targets/z80/gg/crt0.s @@ -72,7 +72,14 @@ _WRITE_VDP_DATA:: ;; Initialise global variables call .gsinit - ;; Initialize VDP + ;; Clear VRAM and Initialize VDP + + ld hl, #((.VDP_R1 << 8) | .R1_DEFAULT) + WRITE_VDP_CMD_HL + + call _set_default_palette + call .clear_VRAM + ld c, #.VDP_CMD ld b, #(.shadow_VDP_end - .shadow_VDP) ld hl,#(.shadow_VDP_end - 1) @@ -98,19 +105,6 @@ _WRITE_VDP_DATA:: 3$: ld (#__SYSTEM), a - ld a, (_shadow_VDP_R1) - and #(~.R1_DISP_ON) - ld l, a - ld h, #(.VDP_REG_MASK | 1) - WRITE_VDP_CMD_HL - - call _set_default_palette - call .clear_VRAM - - ld hl, (_shadow_VDP_R1) - ld h, #(.VDP_REG_MASK | 1) - WRITE_VDP_CMD_HL - VDP_CANCEL_INT ei ; re-enable interrupts before going to main() diff --git a/gbdk-lib/libc/targets/z80/sms/crt0.s b/gbdk-lib/libc/targets/z80/sms/crt0.s @@ -72,7 +72,14 @@ _WRITE_VDP_DATA:: ;; Initialise global variables call .gsinit - ;; Initialize VDP + ;; Clear VRAM and Initialize VDP + + ld hl, #((.VDP_R1 << 8) | .R1_DEFAULT) + WRITE_VDP_CMD_HL + + call _set_default_palette + call .clear_VRAM + ld c, #.VDP_CMD ld b, #(.shadow_VDP_end - .shadow_VDP) ld hl,#(.shadow_VDP_end - 1) @@ -105,19 +112,6 @@ _WRITE_VDP_DATA:: 4$: ld (#__SYSTEM), a - ld a, (_shadow_VDP_R1) - and #(~.R1_DISP_ON) - ld l, a - ld h, #(.VDP_REG_MASK | 1) - WRITE_VDP_CMD_HL - - call _set_default_palette - call .clear_VRAM - - ld hl, (_shadow_VDP_R1) - ld h, #(.VDP_REG_MASK | 1) - WRITE_VDP_CMD_HL - VDP_CANCEL_INT ei ; re-enable interrupts before going to main()
This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.