Fix black screen, text rendering, and keyboard input issues

This commit is contained in:
2025-12-01 22:13:06 +01:00
parent 965e10f6b2
commit a1150081e9
6 changed files with 100 additions and 46 deletions

View File

@@ -35,16 +35,16 @@ START:
move.w #$0000,COLOR00(a6)
move.w #$0FF0,COLOR01(a6)
; Simple copper
lea Copper(pc),a0
move.l a0,d0
move.w d0,COP1LCL(a6)
swap d0
move.w d0,COP1LCH(a6)
move.w #0,COPJMP1(a6)
; Simple copper - DISABLED for debugging
; lea Copper(pc),a0
; move.l a0,d0
; move.w d0,COP1LCL(a6)
; swap d0
; move.w d0,COP1LCH(a6)
; move.w #0,COPJMP1(a6)
; Enable DMA: Bitplane + Copper
move.w #$8380,DMACON(a6) ; Set DMAEN + COPEN + BPLEN
; Enable DMA: Bitplane only (No Copper)
move.w #$8100,DMACON(a6) ; Set DMAEN + BPLEN
; Clear screen
lea Screen(pc),a0
@@ -70,12 +70,14 @@ START:
bsr DrawText
LOOP:
; Simple VBlank wait
move.l CUSTOM+$004,d0
; Robust VBlank wait
lea CUSTOM,a6
.wait_vblank:
move.l $004(a6),d0 ; VPOSR is at offset 4
and.l #$1ff00,d0
cmp.l #$13000,d0
bne.s LOOP
cmp.l #300<<8,d0 ; Wait for line 300
bne.s .wait_vblank
; Check mouse
btst #6,CIAA
bne.s LOOP