Sort coords before plotting rectangle

This commit is contained in:
Bobbi Webber-Manners 2021-10-13 20:20:44 -04:00
parent 6b0c3fa327
commit 22ab75874e
3 changed files with 39 additions and 13 deletions

Binary file not shown.

View File

@ -167,34 +167,34 @@ HGRPLOTACT LDA VDUQ+4
LDA VDUQ+4
STA PLOTMODE
LDA XPIXEL+0
STA FDRAWADDR+6
STA FDRAWADDR+6 ; LSB of X1
LDA XPIXEL+1
STA FDRAWADDR+7
STA FDRAWADDR+7 ; MSB of X1
LDA YPIXEL
STA FDRAWADDR+8
STA FDRAWADDR+8 ; Y1
LDA VDUQ+5
STA FDRAWADDR+9 ; LSB of X1
STA FDRAWADDR+9 ; LSB of X2
LDA VDUQ+6
STA FDRAWADDR+10 ; MSB of X1
STA FDRAWADDR+10 ; MSB of X2
LDA VDUQ+7
STA FDRAWADDR+11 ; Y1
STA FDRAWADDR+11 ; Y2
>>> WRTAUX
>>> XF2MAIN,DRAWLINE
:RECT >>> WRTMAIN
LDA VDUQ+4
STA PLOTMODE
LDA XPIXEL+0
STA FDRAWADDR+6
STA FDRAWADDR+6 ; LSB of X1
LDA XPIXEL+1
STA FDRAWADDR+7
STA FDRAWADDR+7 ; MSB of X1
LDA YPIXEL
STA FDRAWADDR+8
STA FDRAWADDR+8 ; Y1
LDA VDUQ+5
STA FDRAWADDR+9 ; LSB of X1
STA FDRAWADDR+9 ; LSB of X2
LDA VDUQ+6
STA FDRAWADDR+10 ; MSB of X1
STA FDRAWADDR+10 ; MSB of X2
LDA VDUQ+7
STA FDRAWADDR+11 ; Y1
STA FDRAWADDR+11 ; Y2
>>> WRTAUX
>>> XF2MAIN,FILLRECT
:CIRC >>> WRTMAIN

View File

@ -63,8 +63,34 @@ FILLCIRC >>> ENTMAIN
* Call FDraw FillRect routine
FILLRECT >>> ENTMAIN
JSR SETCOLOR
JSR FDRAWADDR+34 ; FDRAW: FillRect
LDA FDRAWADDR+8 ; Y1
CMP FDRAWADDR+11 ; Y2
BEQ :S1
BCS :SWAPY ; Y1>Y2 then swap
:S1 LDA FDRAWADDR+7 ; MSB of X1
CMP FDRAWADDR+10 ; MSB of X2
BEQ :S2
BCS :SWAPX ; MSB X1 > MSB X2
:S2 LDA FDRAWADDR+6 ; LSB of X1
CMP FDRAWADDR+9 ; MSB of X2
BEQ :S3
BCS :SWAPX ; LSB X1 > LSB X2
:S3 JSR FDRAWADDR+34 ; FDRAW: FillRect
>>> XF2AUX,VDU25RET
:SWAPY LDA FDRAWADDR+8
LDY FDRAWADDR+11
STY FDRAWADDR+8
STA FDRAWADDR+11
BRA :S1
:SWAPX LDA FDRAWADDR+7
LDY FDRAWADDR+10
STY FDRAWADDR+7
STA FDRAWADDR+10
LDA FDRAWADDR+6
LDY FDRAWADDR+9
STY FDRAWADDR+6
STA FDRAWADDR+9
BRA :S3
* Reset colours and linetype
GFXINIT JSR FDRAWADDR+0 ; Initialize FDRAW library