; Test version - Load game.bin manually from Workbench CLI ; This helps us verify if the game code itself works ORG $20000 START: ; Don't call Forbid - we're running from CLI ; move.l 4.w,a6 ; jsr -132(a6) ; Save old view lea CUSTOM,a6 move.w INTENAR(a6),d0 or.w #$8000,d0 move.w d0,OldIntEna move.w DMACONR(a6),d0 or.w #$8000,d0 move.w d0,OldDmaCon ; Disable all interrupts and DMA move.w #$7FFF,INTENA(a6) move.w #$7FFF,DMACON(a6) move.w #$7FFF,INTREQ(a6) ; Initialize Subsystems bsr InitGraphics bsr InitGameLogic ; Enable DMA for Copper, Bitplanes, Blitter move.w #$83C0,DMACON(a6) ; Set DMAEN, BPLEN, COPEN, BLTEN MAIN_LOOP: ; Wait for vertical blank bsr WaitVBlank ; 1. Read Input bsr ReadInput ; 2. Update Game Logic bsr UpdateGame ; 3. Check for Exit (Left Mouse Button for now) btst #6,CIAA bne.s MAIN_LOOP EXIT: ; Restore System lea CUSTOM,a6 move.w #$7FFF,DMACON(a6) move.w #$7FFF,INTENA(a6) move.w OldDmaCon,DMACON(a6) move.w OldIntEna,INTENA(a6) ; Enable multitasking move.l 4.w,a6 jsr -138(a6) ; Permit moveq #0,d0 ; Return code 0 rts ; ... rest of the code stays the same