video: wip disabling objects when window is drawing
authorLukas Krickl <lukas@krickl.dev>
Wed, 9 Jul 2025 05:40:55 +0000 (07:40 +0200)
committerLukas Krickl <lukas@krickl.dev>
Wed, 9 Jul 2025 05:40:55 +0000 (07:40 +0200)
src/jmp.inc
src/video.s
src/wram.s

index b5eaeadd8b66dc2ad092d8bb9af0c83fbe6d079e..26d62f5d34ac26598b130dda8a941d7ff185ce38 100644 (file)
@@ -33,8 +33,18 @@ sys_farcall:
 ; vblank 0x40
 ;=============
 vec_vblank:
-  push_all 
   call vblank  
-  pop_all
+  reti
 
+.fill 0, 0x48 - $
+;=============
+; STA 0x48
+;=============
+vec_stat:
+  ; disable objects
+  push af
+  ld a, [RLCD]
+  and a, ~LCDCF_OBJON & 0xFF
+  ld [RLCD], a
+  pop af
   reti
index d1083759d3745cd6b4a37a4cdddfaaaa67efb7a5..cf4c0243f01b3da1f679ab45bb6fb671a5d8ca0d 100644 (file)
@@ -4,6 +4,13 @@
 
   ; vblank handler
 vblank:
+  push_all 
+  
+  ; enable objects
+  ld a, [RLCD]
+  or a, LCDCF_OBJON
+  ld [RLCD], a
+
   ; dma previous frame's oam
   call OAMDMAFN
   
@@ -25,6 +32,7 @@ vblank:
 
   ld a, 1
   ld [frame_ready], a
+  pop_all
   ret
 
 
index 036e9b823c5757fd3dfdfb498a9deeaec4f571d0..2c106fdcb6774897d934516eef3c6a7ae9635192 100644 (file)
@@ -34,7 +34,7 @@ status_text: .adv 32
 demo_inputs: .adv 2
 
   ; offset into bg_update_queue 
-bg_update_index: .adv 2
+bg_update_index: .adv 1
 bg_update_queue: .adv bge_size * BGE_MAX 
 
 draw_flags: .adv 1