From 98ffc3f9576f2b39228ad8829d7d5f82aa303d7f Mon Sep 17 00:00:00 2001 From: Kieran Connell Date: Fri, 14 Feb 2020 08:27:06 +0000 Subject: [PATCH] Debug shows frame vsync count not total vsyncs. Do 63 lines not 48 as could see fire being clipped. --- doom-fire.asm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/doom-fire.asm b/doom-fire.asm index 71f7849..155f269 100644 --- a/doom-fire.asm +++ b/doom-fire.asm @@ -115,7 +115,6 @@ main_loop: bl debug_write_vsync_count ; Block if we've not even had a vsync since last time - we're >50Hz! -.if Screen_Banks > 2 ldr r1, last_vsync .1: ldr r2, vsync_count @@ -123,6 +122,7 @@ main_loop: beq .1 str r2, last_vsync +.if Screen_Banks > 2 ; Swap banks ; Display whichever bank we've just written to ldr r1, scr_bank ; bank we want to display next @@ -185,6 +185,8 @@ debug_write_vsync_count: swi OS_WriteC ldr r0, vsync_count + ldr r1, last_vsync + sub r0, r0, r1 adr r1, debug_string mov r2, #8 swi OS_ConvertHex4 @@ -479,8 +481,8 @@ plot_horizontal_line: movlt r0, #0 ; or MOD ScreenWidth ; update colour with some randomness - and r7, r7, #1 ; rnd & 1 - subs r4, r4, r7 ; colour -= rnd & 1 +; and r7, r7, #1 ; rnd & 1 + subs r4, r4, r7, lsr #1 ; colour -= rnd & 1 .endm .macro PLOT_PIXEL_BIT @@ -515,7 +517,7 @@ do_fire: ldr r8, rnd_seed ; seed mov r9, #1 ; bit - mov r3, #Screen_Height - 48 + mov r3, #Screen_Height - 63 ; R10 = ptr to start of source line add r10, r12, r3, lsl #7 ; r10 = screen_addr + y * 128