gr: lines: some size updates

This commit is contained in:
Vince Weaver 2021-03-28 18:30:50 -04:00
parent 89d706cb0e
commit afef9457c8
2 changed files with 17 additions and 16 deletions

View File

@ -7,10 +7,12 @@
.include "zp.inc" .include "zp.inc"
.include "hardware.inc" .include "hardware.inc"
B_X1 = $F0 ; 144 -- initial working implementation
B_Y1 = $F1
B_X2 = $F2 ;B_X1 = $F0
B_Y2 = $F3 ;B_Y1 = $F1
;B_X2 = $F2
;B_Y2 = $F3
COUNT = $F9 COUNT = $F9
X1 = $1000 X1 = $1000
@ -93,20 +95,22 @@ draw_recurse:
; check if done ; check if done
lda X1,X lda MIDX,X
cmp MIDX,X cmp X1,X
bne recurse bne recurse
lda Y1,X lda MIDY,X
cmp MIDY,X cmp Y1,X
beq done_draw_line beq done_draw_line
recurse: recurse:
; draw( ax, ay, midx, midy); ; draw( midx, midy, ax, ay);
lda MIDX,X lda MIDX,X
sta X1+1,X sta X1+1,X
lda MIDY,X lda MIDY,X
sta Y1+1,X sta Y1+1,X
lda X1,X lda X1,X
sta X2+1,X sta X2+1,X
lda Y1,X lda Y1,X

View File

@ -20,6 +20,7 @@
; 152 -- merge into common_inc ; 152 -- merge into common_inc
; 151 -- share an RTS ; 151 -- share an RTS
; 150 -- use X when plotting ; 150 -- use X when plotting
; 148 -- re-arrange do abs (thanks to 42BS)
B_X1 = $F0 B_X1 = $F0
B_Y1 = $F1 B_Y1 = $F1
@ -205,23 +206,19 @@ done_line:
; x=1, for Y ; x=1, for Y
;===================================== ;=====================================
do_abs: do_abs:
ldy #$ff
sec sec
lda B_X1,X lda B_X1,X
sbc B_X2,X ; A = x1 - x2 sbc B_X2,X ; A = x1 - x2
bmi is_neg bpl is_pos
ldy #$ff
bmi neg_done
is_neg:
ldy #$1 ldy #$1
neg: neg:
eor #$ff eor #$ff
clc clc
adc #1 adc #1
is_pos:
neg_done:
sty B_SX,X sty B_SX,X
sta B_DX,X sta B_DX,X
rts rts