diff --git a/grafproc.asm b/grafproc.asm index 40f2072..daae63e 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -791,11 +791,15 @@ tankflash_loop mva #1 Erase ldx TankNr jsr DrawTankNr.SkipHidingPM ; it's necessary becouse DrawTankNr skips tanks with no energy ! - PAUSE 2 + ;PAUSE 2 + ldy #1 + jsr PauseYFrames mva #0 Erase ldx TankNr jsr DrawTankNr.SkipHidingPM - PAUSE 2 + ;PAUSE 2 + ldy #1 + jsr PauseYFrames dec fs jne tankflash_loop rts diff --git a/scorch.asm b/scorch.asm index 02e8344..831e403 100644 --- a/scorch.asm +++ b/scorch.asm @@ -1253,7 +1253,7 @@ MoveBarrel jsr DisplayStatus.displayAngle ; ldx TankNr mva #1 Erase - PAUSE 1 + jsr WaitOneFrame jsr DrawTankNr.BarrelChange mva #0 Erase lda NewAngle @@ -1437,8 +1437,9 @@ checkForHuman ; if all in skillTable other than 0 then switch to DEMO MODE dex bpl checkForHuman ; no people, just wait a bit - pause 250 - pause 50 + ;pause 150 + ldy #75 + jsr PauseYFrames jmp noKey peopleAreHere @@ -1450,6 +1451,16 @@ noKey wait rts .endp +.proc PauseYFrames +; Y - number of frames to wait (divided by 2) +; pauses for maximally 510 frames (255 * 2) +@ jsr WaitOneFrame + jsr WaitOneFrame + dey + bne @- + rts +.endp + ;-------------------------------------------------- .proc RmtSongSelect ;-------------------------------------------------- diff --git a/scorch.xex b/scorch.xex index 3e10c5c..ecbf6d3 100644 Binary files a/scorch.xex and b/scorch.xex differ