do not disable screen while computing, wait h-blank before reading to vram. Simple implementation, awfully slow, at least doesn't blink :)
This commit is contained in:
@@ -93,15 +93,11 @@ Start:
|
|||||||
ld de, DefaultMap
|
ld de, DefaultMap
|
||||||
ld bc, 32 * 32
|
ld bc, 32 * 32
|
||||||
call MemoryCopy
|
call MemoryCopy
|
||||||
|
|
||||||
|
; display bg 9800
|
||||||
|
ld a, LCDCF_ON | LCDCF_BGON | LCDCF_BG9800
|
||||||
|
ld [rLCDC], a
|
||||||
|
|
||||||
; enable screen with background
|
|
||||||
;ld a, LCDCF_ON | LCDCF_BGON
|
|
||||||
;ld [rLCDC], a
|
|
||||||
|
|
||||||
; disable v-blank interrupt, enable lcd stat interrupt
|
|
||||||
;ld a, IEF_LCDC
|
|
||||||
;ld [rIE], a
|
|
||||||
|
|
||||||
; enable h-blank interrupt in lcd stat
|
; enable h-blank interrupt in lcd stat
|
||||||
ld a, STATF_MODE00
|
ld a, STATF_MODE00
|
||||||
ld [rSTAT], a
|
ld [rSTAT], a
|
||||||
@@ -121,9 +117,11 @@ Start:
|
|||||||
|
|
||||||
.mainloop
|
.mainloop
|
||||||
|
|
||||||
; disable screen
|
; disable v-blank interrupt, enable lcd stat interrupt
|
||||||
xor a
|
di
|
||||||
ld [rLCDC], a
|
ld a, IEF_LCDC
|
||||||
|
ld [rIE], a
|
||||||
|
ei
|
||||||
|
|
||||||
; handle top left corner
|
; handle top left corner
|
||||||
ld bc, TopLeftCorner
|
ld bc, TopLeftCorner
|
||||||
@@ -285,23 +283,13 @@ Start:
|
|||||||
ld [NewPointer], a
|
ld [NewPointer], a
|
||||||
ld [OldPointer], a
|
ld [OldPointer], a
|
||||||
|
|
||||||
.waitPressA
|
; enable v-blank interrupt, disable lcd stat interrupt
|
||||||
|
di
|
||||||
|
ld a, IEF_VBLANK
|
||||||
|
ld [rIE], a
|
||||||
|
ei
|
||||||
|
|
||||||
halt
|
halt
|
||||||
halt
|
|
||||||
halt
|
|
||||||
;halt
|
|
||||||
;halt
|
|
||||||
;halt
|
|
||||||
;halt
|
|
||||||
;ld a, P1F_4
|
|
||||||
;ld [rP1], a
|
|
||||||
;ld a, [rP1]
|
|
||||||
;ld a, [rP1]
|
|
||||||
;ld a, [rP1]
|
|
||||||
;ld a, [rP1]
|
|
||||||
;cpl
|
|
||||||
;and a, 1
|
|
||||||
;jr z, .waitPressA
|
|
||||||
|
|
||||||
jp .mainloop
|
jp .mainloop
|
||||||
|
|
||||||
@@ -340,6 +328,7 @@ Conway:
|
|||||||
add hl, de
|
add hl, de
|
||||||
|
|
||||||
; load neighbor
|
; load neighbor
|
||||||
|
halt
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
|
|
||||||
; check neighbor is alive
|
; check neighbor is alive
|
||||||
@@ -361,6 +350,7 @@ Conway:
|
|||||||
ld l, a
|
ld l, a
|
||||||
|
|
||||||
; load status
|
; load status
|
||||||
|
halt
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
|
|
||||||
; check if alive
|
; check if alive
|
||||||
|
|||||||
Reference in New Issue
Block a user