mirror of
https://github.com/dschmenk/PLASMA.git
synced 2026-03-12 16:42:08 +00:00
Fix lines in all directions
This commit is contained in:
@@ -655,17 +655,12 @@ export asm hgrHLin(x1, x2, y)#0
|
||||
LDA ESTKH+1
|
||||
CMP ESTKH+2
|
||||
BNE +
|
||||
LDA ESTKL+0
|
||||
STA ESTKL+1
|
||||
LDA ESTKH+0
|
||||
STA ESTKH+1
|
||||
INX
|
||||
end
|
||||
asm _hgrHLinA
|
||||
JMP $F000
|
||||
JSR $F000
|
||||
INX
|
||||
RTS
|
||||
+ LDY ESTKL+0,X ; Y COORD
|
||||
CPY #192
|
||||
BCS +
|
||||
end
|
||||
asm _hgrHLinB
|
||||
LDA $8000,Y ; HGRSCANL
|
||||
|
||||
@@ -174,7 +174,9 @@ export def linespans(x1, y1, x2, y2)#0
|
||||
fin
|
||||
if dx >= dy
|
||||
if sx < 0
|
||||
x1, x2 = x2, x1; sy = -sy
|
||||
y1, y2 = y2, y1
|
||||
x1, x2 = x2, x1
|
||||
sy = -sy
|
||||
fin
|
||||
if dy == 0
|
||||
hspan(x1, x2, y1)#0; return
|
||||
@@ -205,7 +207,9 @@ export def linespans(x1, y1, x2, y2)#0
|
||||
majorline(x1, x1 + halflen, x2, y1, sy, hspan)
|
||||
else
|
||||
if sy < 0
|
||||
x1, x2 = x2, x1; sx = -sx
|
||||
x1, x2 = x2, x1
|
||||
y1, y2 = y2, y1
|
||||
sx = -sx
|
||||
fin
|
||||
if dx == 0
|
||||
vspan(y1, y2, x1)#0; return
|
||||
@@ -251,7 +255,9 @@ export def line(x1, y1, x2, y2)#0
|
||||
fin
|
||||
if dx2 >= dy2
|
||||
if sx < 0
|
||||
sy = -sy; x1, x2 = x2, x1
|
||||
x1, x2 = x2, x1
|
||||
y1, y2 = y2, y1
|
||||
sy = -sy
|
||||
fin
|
||||
err = dy2 - dx2 / 2
|
||||
for x = x1 to x2
|
||||
@@ -264,7 +270,9 @@ export def line(x1, y1, x2, y2)#0
|
||||
next
|
||||
else
|
||||
if sy < 0
|
||||
sx = -sx; y1, y2 = y2, y1
|
||||
y1, y2 = y2, y1
|
||||
x1, x2 = x2, x1
|
||||
sx = -sx
|
||||
fin
|
||||
err = dx2 - dy2 / 2
|
||||
for y = y1 to y2
|
||||
|
||||
Reference in New Issue
Block a user