It works!

This commit is contained in:
Pecusx
2024-12-04 11:55:53 +01:00
parent 7d335669fe
commit 9b5aa7e4d1
2 changed files with 30 additions and 6 deletions
+30 -6
View File
@@ -550,7 +550,7 @@ NoScoreUp
ora BricksInLevel+1 ora BricksInLevel+1
bne NoLevelEnd bne NoLevelEnd
; all bricks gone - level ended! ; all bricks gone - level ended!
jmp gameOver jmp GoNextLevel
NoLevelEnd NoLevelEnd
;spawn the new bally ;spawn the new bally
; if there is still an empty slot for a new ball somewhere... ; if there is still an empty slot for a new ball somewhere...
@@ -708,6 +708,30 @@ delayLoop
dex dex
bne delayLoop bne delayLoop
jmp endOfBallzLoop jmp endOfBallzLoop
;-------------------
GoNextLevel
lda LevelType
beq level000
bmi levelTitle
; load level from disk
loadNext
jsr FileUp
jsr LoadLevelData
levelTitle
jsr clearscreen
jsr BuildLevelFromBuffer
jsr initialize.ClearTables
jsr cyclecolorsReset
jmp NextLive ; start level
level000
mva #1 LevelType ; switch to files
; reset file number to 000
ldx #2
@ lda StartLevelNumber,x
sta LevelNumber,x
dex
bpl @-
jmp loadNext
;-------------------------------------------------- ;--------------------------------------------------
.proc fatplot .proc fatplot
; xpos, ypos (.byte) - pixel position ; xpos, ypos (.byte) - pixel position
@@ -996,7 +1020,7 @@ brickcolorTab
mva #"9" Lives mva #"9" Lives
jsr clearscreen jsr clearscreen
;jsr drawBricks ;jsr drawBricks
mva #$ff LevelType mva #$0 LevelType
jsr BuildLevelFromBuffer jsr BuildLevelFromBuffer
lda dmactls lda dmactls
@@ -1038,7 +1062,7 @@ initLoop1
cpx #maxMemory-1 cpx #maxMemory-1
bne initLoop1 bne initLoop1
;snake memory addressess initialized! ;snake memory addressess initialized!
ClearTables
;clear the balleXistenZ (nothing is bouncing!) ;clear the balleXistenZ (nothing is bouncing!)
;and other tables ;and other tables
ldx #0 ldx #0
@@ -1198,7 +1222,7 @@ bget_error
beq go_close beq go_close
open_error open_error
mva #0 LevelType ; set level to internal 000 mva #0 LevelType ; set level to internal 000
; reset file number to 001 ; reset file number to 000
ldx #2 ldx #2
@ lda StartLevelNumber,x @ lda StartLevelNumber,x
sta LevelNumber,x sta LevelNumber,x
@@ -1353,9 +1377,9 @@ LevelFileBuff
LevelFileBuffLen=(screenWidth*maxLines)+20 LevelFileBuffLen=(screenWidth*maxLines)+20
.ds LevelFileBuffLen ; Buffer for data from the level file .ds LevelFileBuffLen ; Buffer for data from the level file
LevelNumber LevelNumber
.byte '001' .byte '000'
StartLevelNumber StartLevelNumber
.byte '001' .byte '000'
fname fname
.byte 'D:LEVEL000.DAT',$9b .byte 'D:LEVEL000.DAT',$9b
;-------------------------------------------------- ;--------------------------------------------------
BIN
View File
Binary file not shown.