mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-13 03:29:32 +00:00
lemm: don't re-load level if already in RAM
This commit is contained in:
parent
8824603ec2
commit
4b714999a6
|
@ -245,6 +245,9 @@ zurg:
|
||||||
|
|
||||||
oof:
|
oof:
|
||||||
|
|
||||||
|
lda #$0
|
||||||
|
sta $9000 ; make sure we load first level
|
||||||
|
|
||||||
;=======================
|
;=======================
|
||||||
; do level
|
; do level
|
||||||
;=======================
|
;=======================
|
||||||
|
@ -252,29 +255,32 @@ oof:
|
||||||
play_level:
|
play_level:
|
||||||
|
|
||||||
; load level from disk
|
; load level from disk
|
||||||
lda WHICH_LEVEL ; FIXME: don't reload if already right
|
lda WHICH_LEVEL ; see if level is same as current
|
||||||
; maybe put level# at $a000?
|
cmp $9000
|
||||||
|
beq level_already_resident
|
||||||
|
|
||||||
sta WHICH_LOAD
|
sta WHICH_LOAD
|
||||||
jsr load_file
|
jsr load_file
|
||||||
|
|
||||||
|
level_already_resident:
|
||||||
jsr start_level
|
jsr start_level
|
||||||
|
|
||||||
lda LEVEL_OVER
|
lda LEVEL_OVER
|
||||||
cmp #LEVEL_WIN
|
cmp #LEVEL_WIN
|
||||||
beq level_won
|
beq level_won
|
||||||
bne level_lost
|
bne level_continue
|
||||||
|
|
||||||
level_won:
|
level_won:
|
||||||
inc WHICH_LEVEL
|
inc WHICH_LEVEL
|
||||||
|
|
||||||
lda WHICH_LEVEL
|
lda WHICH_LEVEL
|
||||||
cmp #3
|
cmp #6
|
||||||
bcc level_lost
|
bcc level_continue
|
||||||
|
|
||||||
lda #5
|
lda #1 ; wrap to level1?
|
||||||
sta WHICH_LEVEL
|
sta WHICH_LEVEL
|
||||||
|
|
||||||
level_lost:
|
level_continue:
|
||||||
|
|
||||||
jmp play_level
|
jmp play_level
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user