WIP code for elapsed time
not finished, doesn't work right
This commit is contained in:
parent
89b4e45901
commit
689363d083
1 changed files with 66 additions and 1 deletions
67
mandel.s
67
mandel.s
|
|
@ -162,12 +162,28 @@ str_padding:
|
||||||
str_padding_end:
|
str_padding_end:
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
|
str_space:
|
||||||
|
.byte " "
|
||||||
|
.byte 0
|
||||||
|
|
||||||
|
str_h:
|
||||||
|
.byte "h"
|
||||||
|
.byte 0
|
||||||
|
str_m:
|
||||||
|
.byte "m"
|
||||||
|
.byte 0
|
||||||
|
str_s:
|
||||||
|
.byte "s"
|
||||||
|
.byte 0
|
||||||
|
|
||||||
str_speed_len = str_speed_end - str_speed
|
str_speed_len = str_speed_end - str_speed
|
||||||
str_run_len = str_run_end - str_run
|
str_run_len = str_run_end - str_run
|
||||||
str_done_len = str_done_end - str_done
|
str_done_len = str_done_end - str_done
|
||||||
str_padding_len = str_padding_end - str_padding
|
str_padding_len = str_padding_end - str_padding
|
||||||
|
|
||||||
speed_start = 40 - str_done_len - str_speed_len - str_padding_len - 1
|
; "3h59m59s"
|
||||||
|
str_elapsed_spacer = 8
|
||||||
|
speed_start = 40 - str_done_len - str_speed_len - str_padding_len - str_elapsed_spacer - 1
|
||||||
|
|
||||||
col_x = 1
|
col_x = 1
|
||||||
str_x:
|
str_x:
|
||||||
|
|
@ -1953,6 +1969,55 @@ update_status:
|
||||||
; convert to ASCII in INBUFF and print
|
; convert to ASCII in INBUFF and print
|
||||||
jsr FASC
|
jsr FASC
|
||||||
jsr draw_string
|
jsr draw_string
|
||||||
|
|
||||||
|
; elapsed time
|
||||||
|
; FR0 = total_sec
|
||||||
|
ldx #.lobyte(total_sec)
|
||||||
|
ldy #.hibyte(total_sec)
|
||||||
|
jsr FLD0R
|
||||||
|
; FR0 -> integer -> temp
|
||||||
|
jsr FPI
|
||||||
|
lda FR0
|
||||||
|
sta temp
|
||||||
|
lda FR0 + 1
|
||||||
|
sta temp + 1
|
||||||
|
|
||||||
|
.macro countdown divisor, string
|
||||||
|
.scope
|
||||||
|
; count the hours
|
||||||
|
ldx #0
|
||||||
|
countdown_loop:
|
||||||
|
lda temp + 1
|
||||||
|
cmp #.hibyte(divisor)
|
||||||
|
bmi countdown_done
|
||||||
|
lda temp
|
||||||
|
cmp #.lobyte(divisor)
|
||||||
|
bmi countdown_done
|
||||||
|
sec
|
||||||
|
lda temp
|
||||||
|
sbc #.lobyte(divisor)
|
||||||
|
sta temp
|
||||||
|
lda temp + 1
|
||||||
|
sbc #.hibyte(divisor)
|
||||||
|
sta temp + 1
|
||||||
|
inx
|
||||||
|
jmp countdown_loop
|
||||||
|
countdown_done:
|
||||||
|
stx FR0
|
||||||
|
ldx #0
|
||||||
|
stx FR0 + 1
|
||||||
|
jsr IFP
|
||||||
|
jsr FASC
|
||||||
|
jsr draw_string
|
||||||
|
draw_string_const string
|
||||||
|
.endscope
|
||||||
|
.endmacro
|
||||||
|
|
||||||
|
draw_string_const str_space
|
||||||
|
countdown 3600, str_h
|
||||||
|
countdown 60, str_m
|
||||||
|
countdown 1, str_s
|
||||||
|
|
||||||
skipped:
|
skipped:
|
||||||
|
|
||||||
; sx += fill_level[fill_masks] + 1
|
; sx += fill_level[fill_masks] + 1
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue