dos33fsprogs/games/duke/level_end.s

66 lines
771 B
ArmAsm
Raw Permalink Normal View History

2020-12-15 16:20:23 +00:00
; Print bonuses
level_end:
bit KEYRESET ; clear keyboard
bit SET_TEXT
lda #12
sta drawbox_x1
lda #26
sta drawbox_x2
2020-12-16 17:55:05 +00:00
lda #19
2020-12-15 16:20:23 +00:00
sta drawbox_y1
2020-12-16 17:55:05 +00:00
lda #23
2020-12-15 16:20:23 +00:00
sta drawbox_y2
2020-12-16 17:55:05 +00:00
lda #21
sta bonus_text+1
scroll_bonus_loop:
lda #' '|$80
sta clear_all_color+1
jsr clear_all
2020-12-15 16:20:23 +00:00
jsr drawbox
jsr normal_text
lda #<bonus_text
sta OUTL
lda #>bonus_text
sta OUTH
jsr move_and_print_list
jsr page_flip
2020-12-16 17:55:05 +00:00
lda #220
jsr WAIT
lda #220
jsr WAIT
2020-12-15 16:20:23 +00:00
level_end_wait:
lda KEYPRESS
2020-12-16 17:55:05 +00:00
bmi really_end_level
dec drawbox_y1
dec drawbox_y2
dec bonus_text+1
lda drawbox_y1
bmi really_end_level
jmp scroll_bonus_loop
2020-12-15 16:20:23 +00:00
really_end_level:
2020-12-16 17:55:05 +00:00
bit KEYRESET
2020-12-15 16:20:23 +00:00
lda #NEXT_LEVEL
sta LEVEL_OVER
2020-12-16 17:55:05 +00:00
jsr clear_all
2020-12-15 16:20:23 +00:00
rts
bonus_text:
.byte 14,10,"BONUS: NONE",0
.byte 255