Compare commits
No commits in common. "5cf64970c8a9ca8efe7821a9f425cb9282c92e29" and "89b4e459013a74b070f730a4389e2ce90a177b57" have entirely different histories.
5cf64970c8
...
89b4e45901
1 changed files with 1 additions and 86 deletions
87
mandel.s
87
mandel.s
|
|
@ -162,28 +162,12 @@ str_padding:
|
|||
str_padding_end:
|
||||
.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_run_len = str_run_end - str_run
|
||||
str_done_len = str_done_end - str_done
|
||||
str_padding_len = str_padding_end - str_padding
|
||||
|
||||
; "3h59m59s"
|
||||
str_elapsed_spacer = 8
|
||||
speed_start = 40 - str_done_len - str_speed_len - str_padding_len - str_elapsed_spacer - 1
|
||||
speed_start = 40 - str_done_len - str_speed_len - str_padding_len - 1
|
||||
|
||||
col_x = 1
|
||||
str_x:
|
||||
|
|
@ -221,12 +205,8 @@ char_map:
|
|||
.endrepeat
|
||||
|
||||
hex_chars:
|
||||
digits_zero:
|
||||
.byte "0123456789abcdef"
|
||||
|
||||
digits_space:
|
||||
.byte " 123456789abcdef"
|
||||
|
||||
aspect:
|
||||
; aspect ratio!
|
||||
; pixels at 320w are 5:6 (narrow)
|
||||
|
|
@ -398,11 +378,6 @@ viewport_oy:
|
|||
.dword ($fffe0000 & $3fffffff) << 2
|
||||
.dword $ff000000
|
||||
|
||||
elapsed_work:
|
||||
.dword 0
|
||||
elapsed_digit:
|
||||
.byte 0
|
||||
|
||||
; 2 + 9 * byte cycles
|
||||
.macro add bytes, dest, arg1, arg2
|
||||
clc ; 2 cyc
|
||||
|
|
@ -1978,66 +1953,6 @@ update_status:
|
|||
; convert to ASCII in INBUFF and print
|
||||
jsr FASC
|
||||
jsr draw_string
|
||||
|
||||
; elapsed time
|
||||
; FR0 = total_sec
|
||||
ldx #.lobyte(total_sec)
|
||||
ldy #.hibyte(total_sec)
|
||||
jsr FLD0R
|
||||
; FR0 -> integer -> elapsed_work
|
||||
jsr FPI
|
||||
lda FR0
|
||||
sta elapsed_work
|
||||
lda FR0 + 1
|
||||
sta elapsed_work + 1
|
||||
|
||||
;jsr IFP
|
||||
;jsr FASC
|
||||
;jsr draw_string
|
||||
|
||||
.macro countdown divisor, digits
|
||||
.scope
|
||||
; count the hours
|
||||
ldx #0
|
||||
countdown_loop:
|
||||
lda elapsed_work + 1
|
||||
cmp #.hibyte(divisor)
|
||||
bcc countdown_done
|
||||
lda elapsed_work
|
||||
cmp #.lobyte(divisor)
|
||||
bcc countdown_done
|
||||
sec
|
||||
lda elapsed_work
|
||||
sbc #.lobyte(divisor)
|
||||
sta elapsed_work
|
||||
lda elapsed_work + 1
|
||||
sbc #.hibyte(divisor)
|
||||
sta elapsed_work + 1
|
||||
inx
|
||||
jmp countdown_loop
|
||||
countdown_done:
|
||||
lda digits,x
|
||||
eor #$80
|
||||
sta elapsed_digit
|
||||
lda #.lobyte(elapsed_digit)
|
||||
sta INBUFF
|
||||
lda #.hibyte(elapsed_digit)
|
||||
sta INBUFF + 1
|
||||
jsr draw_string
|
||||
.endscope
|
||||
.endmacro
|
||||
|
||||
draw_string_const str_space
|
||||
countdown 36000, digits_space
|
||||
countdown 3600, digits_zero
|
||||
draw_string_const str_h
|
||||
countdown 600, digits_zero
|
||||
countdown 60, digits_zero
|
||||
draw_string_const str_m
|
||||
countdown 10, digits_zero
|
||||
countdown 1, digits_zero
|
||||
draw_string_const str_s
|
||||
|
||||
skipped:
|
||||
|
||||
; sx += fill_level[fill_masks] + 1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue