FACET.SRC
FILE INFORMATION
FILENAME(S): FACET.SRC
FILE TYPE(S): SEQ
FILE SIZE: 7.7K
FIRST SEEN: 2025-11-30 21:13:03
APPEARS ON: 2 disk(s)
FILE HASH
be3e7b6e887f769e7b945ca79accf378ec02de3ab0c763bedbfb4d1375e30a80
FOUND ON DISKS (2 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| SONDERH 4 85 II | FACET.SRC | SEQ | DuncanTwain | 8 | 1 | DOWNLOAD FILE |
| SONDERH 4 85 II | FACET.SRC | SEQ | DuncanTwain | 8 | 1 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 3B 20 46 41 43 45 54 20 2D 20 44 52 41 57 20 53 |; FACET - DRAW S| 00000010: 48 41 44 45 44 20 54 52 49 41 4E 47 55 4C 41 52 |HADED TRIANGULAR| 00000020: 20 46 41 43 45 54 53 0D 3B 20 41 4E 44 20 53 54 | FACETS.; AND ST| 00000030: 52 41 49 47 48 54 20 4C 49 4E 45 53 2E 0D 3B 0D |RAIGHT LINES..;.| 00000040: 3B 20 52 49 43 48 41 52 44 20 4C 2E 20 52 59 4C |; RICHARD L. RYL| 00000050: 41 4E 44 45 52 20 20 20 31 31 2F 34 2F 38 34 0D |ANDER 11/4/84.| 00000060: 3B 0D 3B 20 4C 4F 41 44 20 22 41 52 49 54 48 2E |;.; LOAD "ARITH.| 00000070: 48 45 58 22 20 41 4E 44 20 22 47 52 41 50 48 2E |HEX" AND "GRAPH.| 00000080: 48 45 58 22 0D 3B 20 42 45 46 4F 52 45 20 55 53 |HEX".; BEFORE US| 00000090: 49 4E 47 0D 3B 0D 4F 52 49 47 49 4E 20 3D 20 24 |ING.;.ORIGIN = $| 000000A0: 43 32 36 46 0D 52 41 4D 20 20 20 20 3D 20 24 30 |C26F.RAM = $0| 000000B0: 33 34 41 0D 3B 0D 58 50 4C 54 20 20 20 3D 20 24 |34A.;.XPLT = $| 000000C0: 30 33 33 46 0D 59 50 4C 54 20 20 20 3D 20 24 30 |033F.YPLT = $0| 000000D0: 33 34 31 0D 4E 4F 52 4D 20 20 20 3D 20 24 43 32 |341.NORM = $C2| 000000E0: 32 34 0D 4E 4F 53 43 41 4C 20 3D 20 24 30 33 34 |24.NOSCAL = $034| 000000F0: 37 0D 50 4C 4F 54 20 20 20 3D 20 24 43 31 34 33 |7.PLOT = $C143| 00000100: 0D 55 4E 50 4C 4F 54 20 3D 20 24 43 31 34 36 0D |.UNPLOT = $C146.| 00000110: 3B 0D 4D 4C 50 43 4E 44 20 3D 20 24 41 43 0D 4D |;.MLPCND = $AC.M| 00000120: 4C 50 4C 45 52 20 3D 20 24 41 44 0D 50 52 4F 44 |LPLER = $AD.PROD| 00000130: 20 20 20 3D 20 24 41 45 0D 4D 55 4C 54 20 20 20 | = $AE.MULT | 00000140: 3D 20 24 43 30 31 31 0D 3B 0D 44 56 44 4E 44 20 |= $C011.;.DVDND | 00000150: 20 3D 20 24 46 44 0D 44 56 53 4F 52 20 20 3D 20 | = $FD.DVSOR = | 00000160: 24 46 42 0D 51 55 4F 54 20 20 20 3D 20 24 46 44 |$FB.QUOT = $FD| 00000170: 0D 44 49 56 49 44 45 20 3D 20 24 43 30 32 35 0D |.DIVIDE = $C025.| 00000180: 3B 0D 20 20 20 20 20 20 2A 3D 52 41 4D 0D 3B 0D |;. *=RAM.;.| 00000190: 58 4D 49 4E 20 20 20 2A 3D 2A 2B 32 0D 59 4D 49 |XMIN *=*+2.YMI| 000001A0: 4E 20 20 20 2A 3D 2A 2B 31 0D 58 4D 49 44 20 20 |N *=*+1.XMID | 000001B0: 20 2A 3D 2A 2B 32 0D 59 4D 49 44 20 20 20 2A 3D | *=*+2.YMID *=| 000001C0: 2A 2B 31 0D 58 4D 41 58 20 20 20 2A 3D 2A 2B 32 |*+1.XMAX *=*+2| 000001D0: 0D 59 4D 41 58 20 20 20 2A 3D 2A 2B 31 0D 59 54 |.YMAX *=*+1.YT| 000001E0: 4F 50 20 20 20 2A 3D 2A 2B 31 0D 59 42 4F 54 20 |OP *=*+1.YBOT | 000001F0: 20 20 2A 3D 2A 2B 31 0D 59 42 41 53 45 20 20 2A | *=*+1.YBASE *| 00000200: 3D 2A 2B 31 0D 44 4C 54 41 58 31 20 2A 3D 2A 2B |=*+1.DLTAX1 *=*+| 00000210: 32 0D 44 4C 54 41 58 32 20 2A 3D 2A 2B 31 0D 44 |2.DLTAX2 *=*+1.D| 00000220: 4C 54 41 58 33 20 2A 3D 2A 2B 31 0D 44 45 4C 54 |LTAX3 *=*+1.DELT| 00000230: 41 58 20 2A 3D 2A 2B 31 0D 44 4C 54 41 59 31 20 |AX *=*+1.DLTAY1 | 00000240: 2A 3D 2A 2B 31 0D 44 4C 54 41 59 32 20 2A 3D 2A |*=*+1.DLTAY2 *=*| 00000250: 2B 31 0D 44 4C 54 41 59 33 20 2A 3D 2A 2B 31 0D |+1.DLTAY3 *=*+1.| 00000260: 44 45 4C 54 41 59 20 2A 3D 2A 2B 31 0D 58 44 49 |DELTAY *=*+1.XDI| 00000270: 46 46 20 20 2A 3D 2A 2B 31 0D 46 4C 41 47 31 20 |FF *=*+1.FLAG1 | 00000280: 20 2A 3D 2A 2B 31 0D 46 4C 41 47 32 20 20 2A 3D | *=*+1.FLAG2 *=| 00000290: 2A 2B 31 0D 46 4C 41 47 33 20 20 2A 3D 2A 2B 31 |*+1.FLAG3 *=*+1| 000002A0: 0D 46 4C 41 47 20 20 20 2A 3D 2A 2B 31 0D 45 44 |.FLAG *=*+1.ED| 000002B0: 47 45 53 20 20 2A 3D 2A 2B 31 0D 45 52 52 4F 52 |GES *=*+1.ERROR| 000002C0: 20 20 2A 3D 2A 2B 32 0D 4D 4F 44 45 20 20 20 2A | *=*+2.MODE *| 000002D0: 3D 2A 2B 31 0D 43 4F 55 4E 54 20 20 2A 3D 2A 2B |=*+1.COUNT *=*+| 000002E0: 32 0D 3B 0D 3B 0D 20 20 20 20 20 20 2A 3D 4F 52 |2.;.;. *=OR| 000002F0: 49 47 49 4E 0D 3B 0D 3B 2A 2A 2A 2A 2A 2A 2A 2A |IGIN.;.;********| 00000300: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00000310: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00000320: 2A 0D 3B 0D 3B 20 53 43 41 4C 45 20 41 4C 4C 20 |*.;.; SCALE ALL | 00000330: 59 20 43 4F 4F 52 44 49 4E 41 54 45 53 20 46 52 |Y COORDINATES FR| 00000340: 4F 4D 20 30 2E 2E 32 33 39 0D 3B 20 50 53 55 45 |OM 0..239.; PSUE| 00000350: 44 4F 2D 43 4F 4F 52 44 49 4E 41 54 45 20 52 41 |DO-COORDINATE RA| 00000360: 4E 47 45 20 54 4F 20 30 2E 2E 31 39 39 0D 3B 20 |NGE TO 0..199.; | 00000370: 54 52 55 45 20 53 43 52 45 45 4E 20 43 4F 4F 52 |TRUE SCREEN COOR| 00000380: 44 49 4E 41 54 45 20 52 41 4E 47 45 0D 3B 0D 53 |DINATE RANGE.;.S| 00000390: 43 41 4C 45 20 20 4C 44 59 20 23 36 0D 20 20 20 |CALE LDY #6. | 000003A0: 20 20 20 20 4C 44 41 20 23 24 44 35 0D 20 20 20 | LDA #$D5. | 000003B0: 20 20 20 20 53 54 41 20 4D 4C 50 43 4E 44 0D 53 | STA MLPCND.S| 000003C0: 43 4C 50 20 20 20 4C 44 41 20 59 4D 49 4E 2C 59 |CLP LDA YMIN,Y| 000003D0: 0D 20 20 20 20 20 20 20 53 54 41 20 4D 4C 50 4C |. STA MLPL| 000003E0: 45 52 0D 20 20 20 20 20 20 20 4A 53 52 20 4D 55 |ER. JSR MU| 000003F0: 4C 54 0D 20 20 20 20 20 20 20 53 54 41 20 59 4D |LT. STA YM| 00000400: 49 4E 2C 59 0D 20 20 20 20 20 20 20 44 45 59 0D |IN,Y. DEY.| 00000410: 20 20 20 20 20 20 20 44 45 59 0D 20 20 20 20 20 | DEY. | 00000420: 20 20 44 45 59 0D 20 20 20 20 20 20 20 42 50 4C | DEY. BPL| 00000430: 20 53 43 4C 50 0D 20 20 20 20 20 20 20 52 54 53 | SCLP. RTS| 00000440: 0D 3B 0D 3B 0D 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |.;.;.;**********| 00000450: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00000460: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 0D |***************.| 00000470: 3B 0D 3B 20 45 58 43 48 41 4E 47 45 20 27 4D 49 |;.; EXCHANGE 'MI| 00000480: 4E 27 20 41 4E 44 20 27 4D 49 44 27 20 43 4F 4F |N' AND 'MID' COO| 00000490: 52 44 49 4E 41 54 45 53 0D 3B 0D 53 57 41 50 31 |RDINATES.;.SWAP1| 000004A0: 32 20 4C 44 59 20 23 32 0D 4C 4F 4F 50 31 20 20 |2 LDY #2.LOOP1 | 000004B0: 4C 44 41 20 58 4D 49 4E 2C 59 0D 20 20 20 20 20 |LDA XMIN,Y. | 000004C0: 20 20 50 48 41 0D 20 20 20 20 20 20 20 4C 44 41 | PHA. LDA| 000004D0: 20 58 4D 49 44 2C 59 0D 20 20 20 20 20 20 20 53 | XMID,Y. S| 000004E0: 54 41 20 58 4D 49 4E 2C 59 0D 20 20 20 20 20 20 |TA XMIN,Y. | 000004F0: 20 50 4C 41 0D 20 20 20 20 20 20 20 53 54 41 20 | PLA. STA | 00000500: 58 4D 49 44 2C 59 0D 20 20 20 20 20 20 20 44 45 |XMID,Y. DE| 00000510: 59 0D 20 20 20 20 20 20 20 42 50 4C 20 4C 4F 4F |Y. BPL LOO| 00000520: 50 31 0D 20 20 20 20 20 20 20 52 54 53 0D 3B 0D |P1. RTS.;.| 00000530: 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |;***************| 00000540: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00000550: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 0D 3B 0D 3B 20 45 |**********.;.; E| 00000560: 58 43 48 41 4E 47 45 20 27 4D 49 44 27 20 41 4E |XCHANGE 'MID' AN| 00000570: 44 20 27 4D 41 58 27 20 43 4F 4F 52 44 49 4E 41 |D 'MAX' COORDINA| 00000580: 54 45 53 0D 3B 0D 53 57 41 50 32 33 20 4C 44 59 |TES.;.SWAP23 LDY| 00000590: 20 23 32 0D 4C 4F 4F 50 32 20 20 4C 44 41 20 58 | #2.LOOP2 LDA X| 000005A0: 4D 49 44 2C 59 0D 20 20 20 20 20 20 20 50 48 41 |MID,Y. PHA| 000005B0: 0D 20 20 20 20 20 20 20 4C 44 41 20 58 4D 41 58 |. LDA XMAX| 000005C0: 2C 59 0D 20 20 20 20 20 20 20 53 54 41 20 58 4D |,Y. STA XM| 000005D0: 49 44 2C 59 0D 20 20 20 20 20 20 20 50 4C 41 0D |ID,Y. PLA.| 000005E0: 20 20 20 20 20 20 20 53 54 41 20 58 4D 41 58 2C | STA XMAX,| 000005F0: 59 0D 20 20 20 20 20 20 20 44 45 59 0D 20 20 20 |Y. DEY. | 00000600: 20 20 20 20 42 50 4C 20 4C 4F 4F 50 32 0D 20 20 | BPL LOOP2. | 00000610: 20 20 20 20 20 52 54 53 0D 3B 0D 3B 2A 2A 2A 2A | RTS.;.;****| 00000620: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00000630: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00000640: 2A 2A 2A 2A 2A 0D 3B 0D 3B 20 53 4F 52 54 20 43 |*****.;.; SORT C| 00000650: 4F 4F 52 44 49 4E 41 54 45 53 20 41 43 43 4F 52 |OORDINATES ACCOR| 00000660: 44 49 4E 47 20 54 4F 20 58 20 43 4F 4D 50 4F 4E |DING TO X COMPON| 00000670: 45 4E 54 53 0D 3B 0D 53 4F 52 54 58 20 20 4C 44 |ENTS.;.SORTX LD| 00000680: 58 20 23 32 0D 53 4F 52 54 4C 50 20 53 45 43 0D |X #2.SORTLP SEC.| 00000690: 20 20 20 20 20 20 20 4C 44 41 20 58 4D 49 44 0D | LDA XMID.| 000006A0: 20 20 20 20 20 20 20 53 42 43 20 58 4D 49 4E 0D | SBC XMIN.| 000006B0: 20 20 20 20 20 20 20 4C 44 41 20 58 4D 49 44 2B | LDA XMID+| 000006C0: 31 0D 20 20 20 20 20 20 20 53 42 43 20 58 4D 49 |1. SBC XMI| 000006D0: 4E 2B 31 0D 20 20 20 20 20 20 20 42 43 53 20 4E |N+1. BCS N| 000006E0: 4F 53 57 50 31 0D 20 20 20 20 20 20 20 4A 53 52 |OSWP1. JSR| 000006F0: 20 53 57 41 50 31 32 0D 4E 4F 53 57 50 31 20 44 | SWAP12.NOSWP1 D| 00000700: 45 58 0D 20 20 20 20 20 20 20 42 45 51 20 53 4F |EX. BEQ SO| 00000710: 52 54 45 44 0D 20 20 20 20 20 20 20 53 45 43 0D |RTED. SEC.| 00000720: 20 20 20 20 20 20 20 4C 44 41 20 58 4D 41 58 0D | LDA XMAX.| 00000730: 20 20 20 20 20 20 20 53 42 43 20 58 4D 49 44 0D | SBC XMID.| 00000740: 20 20 20 20 20 20 20 4C 44 41 20 58 4D 41 58 2B | LDA XMAX+| 00000750: 31 0D 20 20 20 20 20 20 20 53 42 43 20 58 4D 49 |1. SBC XMI| 00000760: 44 2B 31 0D 20 20 20 20 20 20 20 42 43 53 20 53 |D+1. BCS S| 00000770: 4F 52 54 4C 50 0D 20 20 20 20 20 20 20 4A 53 52 |ORTLP. JSR| 00000780: 20 53 57 41 50 32 33 0D 20 20 20 20 20 20 20 4A | SWAP23. J| 00000790: 4D 50 20 53 4F 52 54 4C 50 0D 53 4F 52 54 45 44 |MP SORTLP.SORTED| 000007A0: 20 52 54 53 0D 3B 0D 3B 2A 2A 2A 2A 2A 2A 2A 2A | RTS.;.;********| 000007B0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 000007C0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 000007D0: 2A 0D 3B 0D 3B 20 44 52 41 57 20 41 20 4C 49 4E |*.;.; DRAW A LIN| 000007E0: 45 20 42 45 54 57 45 45 4E 20 58 4D 49 4E 2C 59 |E BETWEEN XMIN,Y| 000007F0: 4D 49 4E 20 41 4E 44 20 58 4D 49 44 2C 59 4D 49 |MIN AND XMID,YMI| 00000800: 44 0D 3B 20 55 53 49 4E 47 20 46 41 53 54 20 44 |D.; USING FAST D| 00000810: 44 41 20 28 44 49 47 49 54 41 4C 20 44 49 46 46 |DA (DIGITAL DIFF| 00000820: 45 52 45 4E 54 49 41 4C 20 41 4E 41 4C 59 5A 45 |ERENTIAL ANALYZE| 00000830: 52 29 0D 3B 20 54 45 43 48 4E 49 51 55 45 0D 3B |R).; TECHNIQUE.;| 00000840: 0D 4C 49 4E 45 20 20 20 4C 44 41 20 23 32 20 20 |.LINE LDA #2 | 00000850: 20 20 20 20 20 20 3B 20 45 4E 53 55 52 45 20 58 | ; ENSURE X| 00000860: 4D 41 58 20 49 53 0D 20 20 20 20 20 20 20 53 54 |MAX IS. ST| 00000870: 41 20 58 4D 41 58 2B 31 20 20 20 20 3B 20 4C 41 |A XMAX+1 ; LA| 00000880: 52 47 45 53 54 20 42 45 46 4F 52 45 0D 20 20 20 |RGEST BEFORE. | 00000890: 20 20 20 20 4A 53 52 20 53 4F 52 54 58 20 20 20 | JSR SORTX | 000008A0: 20 20 3B 20 4F 52 44 45 52 49 4E 47 20 27 4D 49 | ; ORDERING 'MI| 000008B0: 4E 27 20 41 4E 44 20 27 4D 49 44 27 0D 20 20 20 |N' AND 'MID'. | 000008C0: 20 20 20 20 4C 44 41 20 4E 4F 53 43 41 4C 0D 20 | LDA NOSCAL. | 000008D0: 20 20 20 20 20 20 42 45 51 20 4F 55 54 4C 4E 0D | BEQ OUTLN.| 000008E0: 20 20 20 20 20 20 20 4A 53 52 20 53 43 41 4C 45 | JSR SCALE| 000008F0: 0D 4F 55 54 4C 4E 20 20 4A 53 52 20 46 49 4E 44 |.OUTLN JSR FIND| 00000900: 58 59 20 20 20 20 3B 20 45 4E 54 52 59 20 50 4F |XY ; ENTRY PO| 00000910: 49 4E 54 20 54 4F 0D 20 20 20 20 20 20 20 4C 44 |INT TO. LD| 00000920: 41 20 58 4D 49 4E 20 20 20 20 20 20 20 3B 20 4F |A XMIN ; O| 00000930: 55 54 4C 49 4E 45 20 46 41 43 45 54 53 0D 20 20 |UTLINE FACETS. | 00000940: 20 20 20 20 20 53 54 41 20 58 50 4C 54 0D 20 20 | STA XPLT. | 00000950: 20 20 20 20 20 4C 44 41 20 58 4D 49 4E 2B 31 0D | LDA XMIN+1.| 00000960: 20 20 20 20 20 20 20 53 54 41 20 58 50 4C 54 2B | STA XPLT+| 00000970: 31 0D 20 20 20 20 20 20 20 4C 44 41 20 59 4D 49 |1. LDA YMI| 00000980: 4E 0D 20 20 20 20 20 20 20 53 54 41 20 59 50 4C |N. STA YPL| 00000990: 54 0D 20 20 20 20 20 20 20 4C 44 41 20 44 4C 54 |T. LDA DLT| 000009A0: 41 58 31 2B 31 20 20 3B 20 43 48 45 43 4B 20 46 |AX1+1 ; CHECK F| 000009B0: 4F 52 20 44 58 3E 44 59 0D 20 20 20 20 20 20 20 |OR DX>DY. | 000009C0: 42 4E 45 20 53 54 45 50 58 0D 20 20 20 20 20 20 |BNE STEPX. | 000009D0: 20 53 45 43 0D 20 20 20 20 20 20 20 4C 44 41 20 | SEC. LDA | 000009E0: 44 4C 54 41 58 31 0D 20 20 20 20 20 20 20 53 42 |DLTAX1. SB| 000009F0: 43 20 44 4C 54 41 59 31 0D 20 20 20 20 20 20 20 |C DLTAY1. | 00000A00: 42 43 53 20 53 54 45 50 58 0D 53 54 45 50 59 20 |BCS STEPX.STEPY | 00000A10: 20 4C 44 41 20 44 4C 54 41 59 31 0D 20 20 20 20 | LDA DLTAY1. | 00000A20: 20 20 20 53 54 41 20 45 52 52 4F 52 0D 20 20 20 | STA ERROR. | 00000A30: 20 20 20 20 53 54 41 20 43 4F 55 4E 54 0D 20 20 | STA COUNT. | 00000A40: 20 20 20 20 20 4C 53 52 20 45 52 52 4F 52 0D 20 | LSR ERROR. | 00000A50: 20 20 20 20 20 20 53 45 43 0D 20 20 20 20 20 20 | SEC. | 00000A60: 20 4C 44 41 20 44 4C 54 41 58 31 0D 20 20 20 20 | LDA DLTAX1. | 00000A70: 20 20 20 53 42 43 20 45 52 52 4F 52 0D 20 20 20 | SBC ERROR. | 00000A80: 20 20 20 20 53 54 41 20 45 52 52 4F 52 0D 20 20 | STA ERROR. | 00000A90: 20 20 20 20 20 4C 44 41 20 44 4C 54 41 58 31 2B | LDA DLTAX1+| 00000AA0: 31 0D 20 20 20 20 20 20 20 53 42 43 20 23 30 0D |1. SBC #0.| 00000AB0: 20 20 20 20 20 20 20 53 54 41 20 45 52 52 4F 52 | STA ERROR| 00000AC0: 2B 31 0D 20 20 20 20 20 20 20 49 4E 43 20 43 4F |+1. INC CO| 00000AD0: 55 4E 54 0D 4C 4E 4C 50 31 20 20 4C 44 41 20 4D |UNT.LNLP1 LDA M| 00000AE0: 4F 44 45 20 20 20 20 20 20 3B 20 30 20 3D 20 44 |ODE ; 0 = D| 00000AF0: 52 41 57 2C 20 31 20 3D 20 45 52 41 53 45 0D 20 |RAW, 1 = ERASE. | 00000B00: 20 20 20 20 20 20 42 4E 45 20 45 52 41 53 45 31 | BNE ERASE1| 00000B10: 0D 20 20 20 20 20 20 20 4A 53 52 20 50 4C 4F 54 |. JSR PLOT| 00000B20: 0D 20 20 20 20 20 20 20 4A 4D 50 20 53 4B 31 0D |. JMP SK1.| 00000B30: 45 52 41 53 45 31 20 4A 53 52 20 55 4E 50 4C 4F |ERASE1 JSR UNPLO| 00000B40: 54 0D 53 4B 31 20 20 20 20 4C 44 41 20 46 4C 41 |T.SK1 LDA FLA| 00000B50: 47 31 20 20 20 20 20 3B 20 30 20 3D 20 50 4F 53 |G1 ; 0 = POS| 00000B60: 49 54 49 56 45 20 53 4C 4F 50 45 0D 20 20 20 20 |ITIVE SLOPE. | 00000B70: 20 20 20 42 4E 45 20 4E 53 4C 4F 50 45 0D 20 20 | BNE NSLOPE. | 00000B80: 20 20 20 20 20 49 4E 43 20 59 50 4C 54 0D 20 20 | INC YPLT. | 00000B90: 20 20 20 20 20 42 4E 45 20 53 4B 32 20 20 20 20 | BNE SK2 | 00000BA0: 20 3B 20 41 4C 57 41 59 53 20 42 52 41 4E 43 48 | ; ALWAYS BRANCH| 00000BB0: 0D 4E 53 4C 4F 50 45 20 44 45 43 20 59 50 4C 54 |.NSLOPE DEC YPLT| 00000BC0: 0D 53 4B 32 20 20 20 20 42 49 54 20 45 52 52 4F |.SK2 BIT ERRO| 00000BD0: 52 2B 31 0D 20 20 20 20 20 20 20 42 4D 49 20 53 |R+1. BMI S| 00000BE0: 4B 33 0D 20 20 20 20 20 20 20 49 4E 43 20 58 50 |K3. INC XP| 00000BF0: 4C 54 0D 20 20 20 20 20 20 20 42 4E 45 20 4E 4F |LT. BNE NO| 00000C00: 49 4E 43 31 0D 20 20 20 20 20 20 20 49 4E 43 20 |INC1. INC | 00000C10: 58 50 4C 54 2B 31 0D 4E 4F 49 4E 43 31 20 53 45 |XPLT+1.NOINC1 SE| 00000C20: 43 0D 20 20 20 20 20 20 20 4C 44 41 20 45 52 52 |C. LDA ERR| 00000C30: 4F 52 0D 20 20 20 20 20 20 20 53 42 43 20 44 4C |OR. SBC DL| 00000C40: 54 41 59 31 0D 20 20 20 20 20 20 20 53 54 41 20 |TAY1. STA | 00000C50: 45 52 52 4F 52 0D 20 20 20 20 20 20 20 4C 44 41 |ERROR. LDA| 00000C60: 20 45 52 52 4F 52 2B 31 0D 20 20 20 20 20 20 20 | ERROR+1. | 00000C70: 53 42 43 20 23 30 0D 20 20 20 20 20 20 20 53 54 |SBC #0. ST| 00000C80: 41 20 45 52 52 4F 52 2B 31 0D 53 4B 33 20 20 20 |A ERROR+1.SK3 | 00000C90: 20 43 4C 43 0D 20 20 20 20 20 20 20 4C 44 41 20 | CLC. LDA | 00000CA0: 45 52 52 4F 52 0D 20 20 20 20 20 20 20 41 44 43 |ERROR. ADC| 00000CB0: 20 44 4C 54 41 58 31 0D 20 20 20 20 20 20 20 53 | DLTAX1. S| 00000CC0: 54 41 20 45 52 52 4F 52 0D 20 20 20 20 20 20 20 |TA ERROR. | 00000CD0: 4C 44 41 20 45 52 52 4F 52 2B 31 0D 20 20 20 20 |LDA ERROR+1. | 00000CE0: 20 20 20 41 44 43 20 44 4C 54 41 58 31 2B 31 0D | ADC DLTAX1+1.| 00000CF0: 20 20 20 20 20 20 20 53 54 41 20 45 52 52 4F 52 | STA ERROR| 00000D00: 2B 31 0D 20 20 20 20 20 20 20 44 45 43 20 43 4F |+1. DEC CO| 00000D10: 55 4E 54 0D 20 20 20 20 20 20 20 42 4E 45 20 4C |UNT. BNE L| 00000D20: 4E 4C 50 31 0D 20 20 20 20 20 20 20 52 54 53 0D |NLP1. RTS.| 00000D30: 3B 0D 53 54 45 50 58 20 20 4C 44 41 20 44 4C 54 |;.STEPX LDA DLT| 00000D40: 41 58 31 0D 20 20 20 20 20 20 20 53 54 41 20 45 |AX1. STA E| 00000D50: 52 52 4F 52 0D 20 20 20 20 20 20 20 53 54 41 20 |RROR. STA | 00000D60: 43 4F 55 4E 54 0D 20 20 20 20 20 20 20 4C 44 41 |COUNT. LDA| 00000D70: 20 44 4C 54 41 58 31 2B 31 0D 20 20 20 20 20 20 | DLTAX1+1. | 00000D80: 20 53 54 41 20 45 52 52 4F 52 2B 31 0D 20 20 20 | STA ERROR+1. | 00000D90: 20 20 20 20 53 54 41 20 43 4F 55 4E 54 2B 31 0D | STA COUNT+1.| 00000DA0: 20 20 20 20 20 20 20 4C 53 52 20 45 52 52 4F 52 | LSR ERROR| 00000DB0: 2B 31 0D 20 20 20 20 20 20 20 52 4F 52 20 45 52 |+1. ROR ER| 00000DC0: 52 4F 52 0D 20 20 20 20 20 20 20 53 45 43 0D 20 |ROR. SEC. | 00000DD0: 20 20 20 20 20 20 4C 44 41 20 44 4C 54 41 59 31 | LDA DLTAY1| 00000DE0: 0D 20 20 20 20 20 20 20 53 42 43 20 45 52 52 4F |. SBC ERRO| 00000DF0: 52 0D 20 20 20 20 20 20 20 53 54 41 20 45 52 52 |R. STA ERR| 00000E00: 4F 52 0D 20 20 20 20 20 20 20 4C 44 41 20 23 30 |OR. LDA #0| 00000E10: 0D 20 20 20 20 20 20 20 53 42 43 20 45 52 52 4F |. SBC ERRO| 00000E20: 52 2B 31 0D 20 20 20 20 20 20 20 53 54 41 20 45 |R+1. STA E| 00000E30: 52 52 4F 52 2B 31 0D 4C 4E 4C 50 32 20 20 4C 44 |RROR+1.LNLP2 LD| 00000E40: 41 20 4D 4F 44 45 0D 20 20 20 20 20 20 20 42 4E |A MODE. BN| 00000E50: 45 20 45 52 41 53 45 32 0D 20 20 20 20 20 20 20 |E ERASE2. | 00000E60: 4A 53 52 20 50 4C 4F 54 0D 20 20 20 20 20 20 20 |JSR PLOT. | 00000E70: 4A 4D 50 20 53 4B 50 31 0D 45 52 41 53 45 32 20 |JMP SKP1.ERASE2 | 00000E80: 4A 53 52 20 55 4E 50 4C 4F 54 0D 53 4B 50 31 20 |JSR UNPLOT.SKP1 | 00000E90: 20 20 49 4E 43 20 58 50 4C 54 0D 20 20 20 20 20 | INC XPLT. | 00000EA0: 20 20 42 4E 45 20 4E 4F 49 4E 43 32 0D 20 20 20 | BNE NOINC2. | 00000EB0: 20 20 20 20 49 4E 43 20 58 50 4C 54 2B 31 0D 4E | INC XPLT+1.N| 00000EC0: 4F 49 4E 43 32 20 42 49 54 20 45 52 52 4F 52 2B |OINC2 BIT ERROR+| 00000ED0: 31 0D 20 20 20 20 20 20 20 42 4D 49 20 53 4B 50 |1. BMI SKP| 00000EE0: 33 0D 20 20 20 20 20 20 20 4C 44 41 20 46 4C 41 |3. LDA FLA| 00000EF0: 47 31 0D 20 20 20 20 20 20 20 42 4E 45 20 4E 47 |G1. BNE NG| 00000F00: 53 4C 50 0D 20 20 20 20 20 20 20 49 4E 43 20 59 |SLP. INC Y| 00000F10: 50 4C 54 0D 20 20 20 20 20 20 20 42 4E 45 20 53 |PLT. BNE S| 00000F20: 4B 50 32 20 20 20 20 3B 20 41 4C 57 41 59 53 20 |KP2 ; ALWAYS | 00000F30: 42 52 41 4E 43 48 0D 4E 47 53 4C 50 20 20 44 45 |BRANCH.NGSLP DE| 00000F40: 43 20 59 50 4C 54 0D 53 4B 50 32 20 20 20 53 45 |C YPLT.SKP2 SE| 00000F50: 43 0D 20 20 20 20 20 20 20 4C 44 41 20 45 52 52 |C. LDA ERR| 00000F60: 4F 52 0D 20 20 20 20 20 20 20 53 42 43 20 44 4C |OR. SBC DL| 00000F70: 54 41 58 31 0D 20 20 20 20 20 20 20 53 54 41 20 |TAX1. STA | 00000F80: 45 52 52 4F 52 0D 20 20 20 20 20 20 20 4C 44 41 |ERROR. LDA| 00000F90: 20 45 52 52 4F 52 2B 31 0D 20 20 20 20 20 20 20 | ERROR+1. | 00000FA0: 53 42 43 20 44 4C 54 41 58 31 2B 31 0D 20 20 20 |SBC DLTAX1+1. | 00000FB0: 20 20 20 20 53 54 41 20 45 52 52 4F 52 2B 31 0D | STA ERROR+1.| 00000FC0: 53 4B 50 33 20 20 20 43 4C 43 0D 20 20 20 20 20 |SKP3 CLC. | 00000FD0: 20 20 4C 44 41 20 45 52 52 4F 52 0D 20 20 20 20 | LDA ERROR. | 00000FE0: 20 20 20 41 44 43 20 44 4C 54 41 59 31 0D 20 20 | ADC DLTAY1. | 00000FF0: 20 20 20 20 20 53 54 41 20 45 52 52 4F 52 0D 20 | STA ERROR. | 00001000: 20 20 20 20 20 20 4C 44 41 20 45 52 52 4F 52 2B | LDA ERROR+| 00001010: 31 0D 20 20 20 20 20 20 20 41 44 43 20 23 30 0D |1. ADC #0.| 00001020: 20 20 20 20 20 20 20 53 54 41 20 45 52 52 4F 52 | STA ERROR| 00001030: 2B 31 0D 20 20 20 20 20 20 20 53 45 43 0D 20 20 |+1. SEC. | 00001040: 20 20 20 20 20 4C 44 41 20 43 4F 55 4E 54 0D 20 | LDA COUNT. | 00001050: 20 20 20 20 20 20 53 42 43 20 23 31 0D 20 20 20 | SBC #1. | 00001060: 20 20 20 20 53 54 41 20 43 4F 55 4E 54 0D 20 20 | STA COUNT. | 00001070: 20 20 20 20 20 42 43 53 20 54 45 53 54 0D 20 20 | BCS TEST. | 00001080: 20 20 20 20 20 44 45 43 20 43 4F 55 4E 54 2B 31 | DEC COUNT+1| 00001090: 0D 54 45 53 54 20 20 20 42 49 54 20 43 4F 55 4E |.TEST BIT COUN| 000010A0: 54 2B 31 0D 20 20 20 20 20 20 20 42 50 4C 20 4C |T+1. BPL L| 000010B0: 4E 4C 50 32 0D 20 20 20 20 20 20 20 52 54 53 0D |NLP2. RTS.| 000010C0: 3B 0D 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |;.;*************| 000010D0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 000010E0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 0D 3B 20 44 |************.; D| 000010F0: 52 41 57 20 41 20 53 48 41 44 45 44 20 56 45 52 |RAW A SHADED VER| 00001100: 54 49 43 41 4C 20 4C 49 4E 45 20 41 54 0D 3B 20 |TICAL LINE AT.; | 00001110: 58 50 4C 54 20 46 52 4F 4D 20 59 54 4F 50 20 54 |XPLT FROM YTOP T| 00001120: 4F 20 59 42 4F 54 0D 3B 0D 56 4C 49 4E 45 20 20 |O YBOT.;.VLINE | 00001130: 53 45 43 20 20 20 20 20 20 20 20 20 3B 20 4D 41 |SEC ; MA| 00001140: 4B 45 20 53 55 52 45 20 59 54 4F 50 3E 59 42 4F |KE SURE YTOP>YBO| 00001150: 54 0D 20 20 20 20 20 20 20 4C 44 41 20 59 54 4F |T. LDA YTO| 00001160: 50 0D 20 20 20 20 20 20 20 53 42 43 20 59 42 4F |P. SBC YBO| 00001170: 54 0D 20 20 20 20 20 20 20 42 43 53 20 44 52 41 |T. BCS DRA| 00001180: 57 0D 20 20 20 20 20 20 20 4C 44 41 20 59 54 4F |W. LDA YTO| 00001190: 50 0D 20 20 20 20 20 20 20 50 48 41 0D 20 20 20 |P. PHA. | 000011A0: 20 20 20 20 4C 44 41 20 59 42 4F 54 0D 20 20 20 | LDA YBOT. | 000011B0: 20 20 20 20 53 54 41 20 59 54 4F 50 0D 20 20 20 | STA YTOP. | 000011C0: 20 20 20 20 50 4C 41 0D 20 20 20 20 20 20 20 53 | PLA. S| 000011D0: 54 41 20 59 42 4F 54 0D 44 52 41 57 20 20 20 4C |TA YBOT.DRAW L| 000011E0: 44 41 20 59 54 4F 50 0D 20 20 20 20 20 20 20 53 |DA YTOP. S| 000011F0: 54 41 20 59 50 4C 54 0D 20 20 20 20 20 20 20 4A |TA YPLT. J| 00001200: 53 52 20 4E 4F 52 4D 20 20 20 20 3B 20 50 4C 4F |SR NORM ; PLO| 00001210: 54 20 41 20 53 48 41 44 45 2D 57 45 49 47 48 54 |T A SHADE-WEIGHT| 00001220: 45 44 0D 20 20 20 20 20 20 20 4C 44 41 20 59 54 |ED. LDA YT| 00001230: 4F 50 20 20 20 20 3B 20 50 49 58 45 4C 20 43 48 |OP ; PIXEL CH| 00001240: 45 43 4B 49 4E 47 20 4F 4E 4C 59 0D 20 20 20 20 |ECKING ONLY. | 00001250: 20 20 20 43 4D 50 20 59 42 4F 54 20 20 20 20 3B | CMP YBOT ;| 00001260: 20 46 4F 52 20 53 48 41 44 45 20 53 54 59 4C 45 | FOR SHADE STYLE| 00001270: 0D 20 20 20 20 20 20 20 42 45 51 20 44 4F 4E 45 |. BEQ DONE| 00001280: 0D 20 20 20 20 20 20 20 44 45 43 20 59 54 4F 50 |. DEC YTOP| 00001290: 0D 20 20 20 20 20 20 20 4A 4D 50 20 44 52 41 57 |. JMP DRAW| 000012A0: 0D 44 4F 4E 45 20 20 20 52 54 53 0D 3B 0D 3B 2A |.DONE RTS.;.;*| 000012B0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 000012C0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 000012D0: 2A 2A 2A 2A 2A 2A 2A 2A 0D 3B 0D 3B 20 46 49 4E |********.;.; FIN| 000012E0: 44 20 45 4E 44 50 4F 49 4E 54 53 20 46 4F 52 20 |D ENDPOINTS FOR | 000012F0: 56 45 52 54 49 43 41 4C 20 4C 49 4E 45 53 0D 3B |VERTICAL LINES.;| 00001300: 20 42 45 54 57 45 45 4E 20 46 41 43 45 54 20 45 | BETWEEN FACET E| 00001310: 44 47 45 53 0D 3B 0D 45 4E 44 50 54 53 20 4C 44 |DGES.;.ENDPTS LD| 00001320: 41 20 58 44 49 46 46 0D 20 20 20 20 20 20 20 53 |A XDIFF. S| 00001330: 54 41 20 4D 4C 50 43 4E 44 0D 20 20 20 20 20 20 |TA MLPCND. | 00001340: 20 4C 44 41 20 44 45 4C 54 41 59 0D 20 20 20 20 | LDA DELTAY. | 00001350: 20 20 20 53 54 41 20 4D 4C 50 4C 45 52 0D 20 20 | STA MLPLER. | 00001360: 20 20 20 20 20 4A 53 52 20 4D 55 4C 54 0D 20 20 | JSR MULT. | 00001370: 20 20 20 20 20 53 54 41 20 44 56 44 4E 44 2B 31 | STA DVDND+1| 00001380: 0D 20 20 20 20 20 20 20 4C 44 41 20 50 52 4F 44 |. LDA PROD| 00001390: 0D 20 20 20 20 20 20 20 53 54 41 20 44 56 44 4E |. STA DVDN| 000013A0: 44 0D 20 20 20 20 20 20 20 4C 44 41 20 23 30 0D |D. LDA #0.| 000013B0: 20 20 20 20 20 20 20 53 54 41 20 44 56 53 4F 52 | STA DVSOR| 000013C0: 2B 31 0D 20 20 20 20 20 20 20 4C 44 41 20 44 45 |+1. LDA DE| 000013D0: 4C 54 41 58 0D 20 20 20 20 20 20 20 53 54 41 20 |LTAX. STA | 000013E0: 44 56 53 4F 52 0D 20 20 20 20 20 20 20 4A 53 52 |DVSOR. JSR| 000013F0: 20 44 49 56 49 44 45 0D 20 20 20 20 20 20 20 4C | DIVIDE. L| 00001400: 44 41 20 46 4C 41 47 0D 20 20 20 20 20 20 20 42 |DA FLAG. B| 00001410: 4E 45 20 4E 45 47 53 4C 50 0D 20 20 20 20 20 20 |NE NEGSLP. | 00001420: 20 43 4C 43 0D 20 20 20 20 20 20 20 4C 44 41 20 | CLC. LDA | 00001430: 59 42 41 53 45 0D 20 20 20 20 20 20 20 41 44 43 |YBASE. ADC| 00001440: 20 51 55 4F 54 0D 20 20 20 20 20 20 20 42 43 43 | QUOT. BCC| 00001450: 20 53 4B 49 50 32 0D 4E 45 47 53 4C 50 20 53 45 | SKIP2.NEGSLP SE| 00001460: 43 0D 20 20 20 20 20 20 20 4C 44 41 20 59 42 41 |C. LDA YBA| 00001470: 53 45 0D 20 20 20 20 20 20 20 53 42 43 20 51 55 |SE. SBC QU| 00001480: 4F 54 0D 53 4B 49 50 32 20 20 52 54 53 0D 3B 0D |OT.SKIP2 RTS.;.| 00001490: 3B 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |;***************| 000014A0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 000014B0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 0D 3B 0D 3B 20 46 |**********.;.; F| 000014C0: 49 4E 44 20 43 4F 4F 52 44 49 4E 41 54 45 20 44 |IND COORDINATE D| 000014D0: 49 46 46 45 52 45 4E 43 45 53 0D 3B 0D 3B 20 41 |IFFERENCES.;.; A| 000014E0: 4C 4C 20 22 44 45 4C 54 41 20 58 22 20 56 41 4C |LL "DELTA X" VAL| 000014F0: 55 45 53 20 50 4F 53 49 54 49 56 45 2C 0D 3B 20 |UES POSITIVE,.; | 00001500: 53 49 4E 47 4C 45 20 50 52 45 43 49 53 49 4F 4E |SINGLE PRECISION| 00001510: 20 28 4A 55 53 54 20 4C 4F 57 45 52 20 42 59 54 | (JUST LOWER BYT| 00001520: 45 29 0D 3B 0D 46 49 4E 44 58 59 20 53 45 43 0D |E).;.FINDXY SEC.| 00001530: 20 20 20 20 20 20 20 4C 44 41 20 58 4D 49 44 0D | LDA XMID.| 00001540: 20 20 20 20 20 20 20 53 42 43 20 58 4D 49 4E 0D | SBC XMIN.| 00001550: 20 20 20 20 20 20 20 53 54 41 20 44 4C 54 41 58 | STA DLTAX| 00001560: 31 0D 20 20 20 20 20 20 20 4C 44 41 20 58 4D 49 |1. LDA XMI| 00001570: 44 2B 31 0D 20 20 20 20 20 20 20 53 42 43 20 58 |D+1. SBC X| 00001580: 4D 49 4E 2B 31 0D 20 20 20 20 20 20 20 53 54 41 |MIN+1. STA| 00001590: 20 44 4C 54 41 58 31 2B 31 0D 20 20 20 20 20 20 | DLTAX1+1. | 000015A0: 20 53 45 43 0D 20 20 20 20 20 20 20 4C 44 41 20 | SEC. LDA | 000015B0: 58 4D 41 58 0D 20 20 20 20 20 20 20 53 42 43 20 |XMAX. SBC | 000015C0: 58 4D 49 44 0D 20 20 20 20 20 20 20 53 54 41 20 |XMID. STA | 000015D0: 44 4C 54 41 58 32 0D 20 20 20 20 20 20 20 53 45 |DLTAX2. SE| 000015E0: 43 0D 20 20 20 20 20 20 20 4C 44 41 20 58 4D 41 |C. LDA XMA| 000015F0: 58 0D 20 20 20 20 20 20 20 53 42 43 20 58 4D 49 |X. SBC XMI| 00001600: 4E 0D 20 20 20 20 20 20 20 53 54 41 20 44 4C 54 |N. STA DLT| 00001610: 41 58 33 0D 3B 0D 3B 20 55 53 45 20 41 42 53 28 |AX3.;.; USE ABS(| 00001620: 44 45 4C 54 41 20 59 29 20 56 41 4C 55 45 53 2C |DELTA Y) VALUES,| 00001630: 0D 3B 20 46 4C 41 47 53 20 49 4E 44 49 43 41 54 |.; FLAGS INDICAT| 00001640: 45 20 53 4C 4F 50 45 20 4F 46 20 4C 49 4D 49 54 |E SLOPE OF LIMIT| 00001650: 20 4C 49 4E 45 53 0D 3B 0D 20 20 20 20 20 20 20 | LINES.;. | 00001660: 4C 44 41 20 23 24 30 30 0D 20 20 20 20 20 20 20 |LDA #$00. | 00001670: 53 54 41 20 46 4C 41 47 31 0D 20 20 20 20 20 20 |STA FLAG1. | 00001680: 20 53 54 41 20 46 4C 41 47 32 0D 20 20 20 20 20 | STA FLAG2. | 00001690: 20 20 53 54 41 20 46 4C 41 47 33 0D 20 20 20 20 | STA FLAG3. | 000016A0: 20 20 20 53 45 43 0D 20 20 20 20 20 20 20 4C 44 | SEC. LD| 000016B0: 41 20 59 4D 49 44 0D 20 20 20 20 20 20 20 53 42 |A YMID. SB| 000016C0: 43 20 59 4D 49 4E 0D 20 20 20 20 20 20 20 42 43 |C YMIN. BC| 000016D0: 53 20 53 54 4F 52 45 31 0D 20 20 20 20 20 20 20 |S STORE1. | 000016E0: 49 4E 43 20 46 4C 41 47 31 0D 20 20 20 20 20 20 |INC FLAG1. | 000016F0: 20 4C 44 41 20 59 4D 49 4E 0D 20 20 20 20 20 20 | LDA YMIN. | 00001700: 20 53 42 43 20 59 4D 49 44 0D 53 54 4F 52 45 31 | SBC YMID.STORE1| 00001710: 20 53 54 41 20 44 4C 54 41 59 31 0D 20 20 20 20 | STA DLTAY1. | 00001720: 20 20 20 53 45 43 0D 20 20 20 20 20 20 20 4C 44 | SEC. LD| 00001730: 41 20 59 4D 41 58 0D 20 20 20 20 20 20 20 53 42 |A YMAX. SB| 00001740: 43 20 59 4D 49 44 0D 20 20 20 20 20 20 20 42 43 |C YMID. BC| 00001750: 53 20 53 54 4F 52 45 32 0D 20 20 20 20 20 20 20 |S STORE2. | 00001760: 49 4E 43 20 46 4C 41 47 32 0D 20 20 20 20 20 20 |INC FLAG2. | 00001770: 20 4C 44 41 20 59 4D 49 44 0D 20 20 20 20 20 20 | LDA YMID. | 00001780: 20 53 42 43 20 59 4D 41 58 0D 53 54 4F 52 45 32 | SBC YMAX.STORE2| 00001790: 20 53 54 41 20 44 4C 54 41 59 32 0D 20 20 20 20 | STA DLTAY2. | 000017A0: 20 20 20 53 45 43 0D 20 20 20 20 20 20 20 4C 44 | SEC. LD| 000017B0: 41 20 59 4D 41 58 0D 20 20 20 20 20 20 20 53 42 |A YMAX. SB| 000017C0: 43 20 59 4D 49 4E 0D 20 20 20 20 20 20 20 42 43 |C YMIN. BC| 000017D0: 53 20 53 54 4F 52 45 33 0D 20 20 20 20 20 20 20 |S STORE3. | 000017E0: 49 4E 43 20 46 4C 41 47 33 0D 20 20 20 20 20 20 |INC FLAG3. | 000017F0: 20 4C 44 41 20 59 4D 49 4E 0D 20 20 20 20 20 20 | LDA YMIN. | 00001800: 20 53 42 43 20 59 4D 41 58 0D 53 54 4F 52 45 33 | SBC YMAX.STORE3| 00001810: 20 53 54 41 20 44 4C 54 41 59 33 0D 20 20 20 20 | STA DLTAY3. | 00001820: 20 20 20 52 54 53 0D 3B 0D 3B 2A 2A 2A 2A 2A 2A | RTS.;.;******| 00001830: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00001840: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************| 00001850: 2A 2A 2A 0D 3B 0D 20 44 52 41 57 20 41 20 53 48 |***.;. DRAW A SH| 00001860: 41 44 45 44 20 54 52 49 41 4E 47 55 4C 41 52 20 |ADED TRIANGULAR | 00001870: 46 41 43 45 54 0D 3B 0D 46 41 43 45 54 20 20 4A |FACET.;.FACET J| 00001880: 53 52 20 53 4F 52 54 58 0D 20 20 20 20 20 20 20 |SR SORTX. | 00001890: 4C 44 41 20 4E 4F 53 43 41 4C 0D 20 20 20 20 20 |LDA NOSCAL. | 000018A0: 20 20 42 45 51 20 59 53 4F 4B 0D 20 20 20 20 20 | BEQ YSOK. | 000018B0: 20 20 4A 53 52 20 53 43 41 4C 45 0D 59 53 4F 4B | JSR SCALE.YSOK| 000018C0: 20 20 20 4A 53 52 20 46 49 4E 44 58 59 0D 20 20 | JSR FINDXY. | 000018D0: 20 20 20 20 20 4C 44 41 20 58 4D 49 4E 0D 20 20 | LDA XMIN. | 000018E0: 20 20 20 20 20 53 54 41 20 58 50 4C 54 0D 20 20 | STA XPLT. | 000018F0: 20 20 20 20 20 4C 44 41 20 58 4D 49 4E 2B 31 0D | LDA XMIN+1.| 00001900: 20 20 20 20 20 20 20 53 54 41 20 58 50 4C 54 2B | STA XPLT+| 00001910: 31 0D 46 43 45 54 4C 50 20 53 45 43 0D 20 20 20 |1.FCETLP SEC. | 00001920: 20 20 20 20 4C 44 41 20 58 50 4C 54 0D 20 20 20 | LDA XPLT. | 00001930: 20 20 20 20 53 42 43 20 58 4D 49 4E 0D 20 20 20 | SBC XMIN. | 00001940: 20 20 20 20 53 54 41 20 58 44 49 46 46 0D 20 20 | STA XDIFF. | 00001950: 20 20 20 20 20 4C 44 41 20 44 4C 54 41 58 31 0D | LDA DLTAX1.| 00001960: 20 20 20 20 20 20 20 42 45 51 20 43 4F 4E 54 0D | BEQ CONT.| 00001970: 20 20 20 20 20 20 20 53 54 41 20 44 45 4C 54 41 | STA DELTA| 00001980: 58 0D 20 20 20 20 20 20 20 4C 44 41 20 44 4C 54 |X. LDA DLT| 00001990: 41 59 31 0D 20 20 20 20 20 20 20 53 54 41 20 44 |AY1. STA D| 000019A0: 45 4C 54 41 59 0D 20 20 20 20 20 20 20 4C 44 41 |ELTAY. LDA| 000019B0: 20 46 4C 41 47 31 0D 20 20 20 20 20 20 20 53 54 | FLAG1. ST| 000019C0: 41 20 46 4C 41 47 0D 20 20 20 20 20 20 20 4C 44 |A FLAG. LD| 000019D0: 41 20 59 4D 49 4E 0D 20 20 20 20 20 20 20 53 54 |A YMIN. ST| 000019E0: 41 20 59 42 41 53 45 0D 20 20 20 20 20 20 20 4A |A YBASE. J| 000019F0: 53 52 20 45 4E 44 50 54 53 0D 20 20 20 20 20 20 |SR ENDPTS. | 00001A00: 20 53 54 41 20 59 54 4F 50 0D 20 20 20 20 20 20 | STA YTOP. | 00001A10: 20 4C 44 41 20 44 4C 54 41 58 33 0D 20 20 20 20 | LDA DLTAX3. | 00001A20: 20 20 20 42 45 51 20 43 4F 4E 54 0D 20 20 20 20 | BEQ CONT. | 00001A30: 20 20 20 53 54 41 20 44 45 4C 54 41 58 0D 20 20 | STA DELTAX. | 00001A40: 20 20 20 20 20 4C 44 41 20 44 4C 54 41 59 33 0D | LDA DLTAY3.| 00001A50: 20 20 20 20 20 20 20 53 54 41 20 44 45 4C 54 41 | STA DELTA| 00001A60: 59 0D 20 20 20 20 20 20 20 4C 44 41 20 46 4C 41 |Y. LDA FLA| 00001A70: 47 33 0D 20 20 20 20 20 20 20 53 54 41 20 46 4C |G3. STA FL| 00001A80: 41 47 0D 20 20 20 20 20 20 20 4A 53 52 20 45 4E |AG. JSR EN| 00001A90: 44 50 54 53 0D 20 20 20 20 20 20 20 53 54 41 20 |DPTS. STA | 00001AA0: 59 42 4F 54 0D 20 20 20 20 20 20 20 4A 53 52 20 |YBOT. JSR | 00001AB0: 56 4C 49 4E 45 0D 20 20 20 20 20 20 20 4C 44 41 |VLINE. LDA| 00001AC0: 20 58 50 4C 54 2B 31 0D 20 20 20 20 20 20 20 43 | XPLT+1. C| 00001AD0: 4D 50 20 58 4D 49 44 2B 31 0D 20 20 20 20 20 20 |MP XMID+1. | 00001AE0: 20 42 4E 45 20 4E 45 58 54 58 31 0D 20 20 20 20 | BNE NEXTX1. | 00001AF0: 20 20 20 4C 44 41 20 58 50 4C 54 0D 20 20 20 20 | LDA XPLT. | 00001B00: 20 20 20 43 4D 50 20 58 4D 49 44 0D 20 20 20 20 | CMP XMID. | 00001B10: 20 20 20 42 45 51 20 43 4F 4E 54 0D 4E 45 58 54 | BEQ CONT.NEXT| 00001B20: 58 31 20 49 4E 43 20 58 50 4C 54 0D 20 20 20 20 |X1 INC XPLT. | 00001B30: 20 20 20 42 4E 45 20 53 4B 49 50 33 0D 20 20 20 | BNE SKIP3. | 00001B40: 20 20 20 20 49 4E 43 20 58 50 4C 54 2B 31 0D 53 | INC XPLT+1.S| 00001B50: 4B 49 50 33 20 20 4A 4D 50 20 46 43 45 54 4C 50 |KIP3 JMP FCETLP| 00001B60: 0D 43 4F 4E 54 20 20 20 53 45 43 0D 20 20 20 20 |.CONT SEC. | 00001B70: 20 20 20 4C 44 41 20 58 50 4C 54 0D 20 20 20 20 | LDA XPLT. | 00001B80: 20 20 20 53 42 43 20 58 4D 49 4E 0D 20 20 20 20 | SBC XMIN. | 00001B90: 20 20 20 53 54 41 20 58 44 49 46 46 0D 20 20 20 | STA XDIFF. | 00001BA0: 20 20 20 20 4C 44 41 20 44 4C 54 41 58 33 0D 20 | LDA DLTAX3. | 00001BB0: 20 20 20 20 20 20 42 45 51 20 46 49 4E 49 0D 20 | BEQ FINI. | 00001BC0: 20 20 20 20 20 20 53 54 41 20 44 45 4C 54 41 58 | STA DELTAX| 00001BD0: 0D 20 20 20 20 20 20 20 4C 44 41 20 44 4C 54 41 |. LDA DLTA| 00001BE0: 59 33 0D 20 20 20 20 20 20 20 53 54 41 20 44 45 |Y3. STA DE| 00001BF0: 4C 54 41 59 0D 20 20 20 20 20 20 20 4C 44 41 20 |LTAY. LDA | 00001C00: 46 4C 41 47 33 0D 20 20 20 20 20 20 20 53 54 41 |FLAG3. STA| 00001C10: 20 46 4C 41 47 0D 20 20 20 20 20 20 20 4C 44 41 | FLAG. LDA| 00001C20: 20 59 4D 49 4E 0D 20 20 20 20 20 20 20 53 54 41 | YMIN. STA| 00001C30: 20 59 42 41 53 45 0D 20 20 20 20 20 20 20 4A 53 | YBASE. JS| 00001C40: 52 20 45 4E 44 50 54 53 0D 20 20 20 20 20 20 20 |R ENDPTS. | 00001C50: 53 54 41 20 59 42 4F 54 0D 20 20 20 20 20 20 20 |STA YBOT. | 00001C60: 53 45 43 0D 20 20 20 20 20 20 20 4C 44 41 20 58 |SEC. LDA X| 00001C70: 50 4C 54 0D 20 20 20 20 20 20 20 53 42 43 20 58 |PLT. SBC X| 00001C80: 4D 49 44 0D 20 20 20 20 20 20 20 53 54 41 20 58 |MID. STA X| 00001C90: 44 49 46 46 0D 20 20 20 20 20 20 20 4C 44 41 20 |DIFF. LDA | 00001CA0: 44 4C 54 41 58 32 0D 20 20 20 20 20 20 20 42 45 |DLTAX2. BE| 00001CB0: 51 20 46 49 4E 49 0D 20 20 20 20 20 20 20 53 54 |Q FINI. ST| 00001CC0: 41 20 44 45 4C 54 41 58 0D 20 20 20 20 20 20 20 |A DELTAX. | 00001CD0: 4C 44 41 20 44 4C 54 41 59 32 0D 20 20 20 20 20 |LDA DLTAY2. | 00001CE0: 20 20 53 54 41 20 44 45 4C 54 41 59 0D 20 20 20 | STA DELTAY. | 00001CF0: 20 20 20 20 4C 44 41 20 46 4C 41 47 32 0D 20 20 | LDA FLAG2. | 00001D00: 20 20 20 20 20 53 54 41 20 46 4C 41 47 0D 20 20 | STA FLAG. | 00001D10: 20 20 20 20 20 4C 44 41 20 59 4D 49 44 0D 20 20 | LDA YMID. | 00001D20: 20 20 20 20 20 53 54 41 20 59 42 41 53 45 0D 20 | STA YBASE. | 00001D30: 20 20 20 20 20 20 4A 53 52 20 45 4E 44 50 54 53 | JSR ENDPTS| 00001D40: 0D 20 20 20 20 20 20 20 53 54 41 20 59 54 4F 50 |. STA YTOP| 00001D50: 0D 20 20 20 20 20 20 20 4A 53 52 20 56 4C 49 4E |. JSR VLIN| 00001D60: 45 0D 20 20 20 20 20 20 20 4C 44 41 20 58 50 4C |E. LDA XPL| 00001D70: 54 2B 31 0D 20 20 20 20 20 20 20 43 4D 50 20 58 |T+1. CMP X| 00001D80: 4D 41 58 2B 31 0D 20 20 20 20 20 20 20 42 4E 45 |MAX+1. BNE| 00001D90: 20 4E 45 58 54 58 32 0D 20 20 20 20 20 20 20 4C | NEXTX2. L| 00001DA0: 44 41 20 58 50 4C 54 0D 20 20 20 20 20 20 20 43 |DA XPLT. C| 00001DB0: 4D 50 20 58 4D 41 58 0D 20 20 20 20 20 20 20 42 |MP XMAX. B| 00001DC0: 45 51 20 46 49 4E 49 0D 4E 45 58 54 58 32 20 49 |EQ FINI.NEXTX2 I| 00001DD0: 4E 43 20 58 50 4C 54 0D 20 20 20 20 20 20 20 42 |NC XPLT. B| 00001DE0: 4E 45 20 53 4B 49 50 34 0D 20 20 20 20 20 20 20 |NE SKIP4. | 00001DF0: 49 4E 43 20 58 50 4C 54 2B 31 0D 53 4B 49 50 34 |INC XPLT+1.SKIP4| 00001E00: 20 20 4A 4D 50 20 43 4F 4E 54 0D 46 49 4E 49 20 | JMP CONT.FINI | 00001E10: 20 20 4C 44 41 20 45 44 47 45 53 0D 20 20 20 20 | LDA EDGES. | 00001E20: 20 20 20 42 45 51 20 46 49 4E 49 53 48 0D 20 20 | BEQ FINISH. | 00001E30: 20 20 20 20 20 4A 53 52 20 4F 55 54 4C 4E 0D 20 | JSR OUTLN. | 00001E40: 20 20 20 20 20 20 4A 53 52 20 53 57 41 50 32 33 | JSR SWAP23| 00001E50: 0D 20 20 20 20 20 20 20 4A 53 52 20 4F 55 54 4C |. JSR OUTL| 00001E60: 4E 0D 20 20 20 20 20 20 20 4A 53 52 20 53 57 41 |N. JSR SWA| 00001E70: 50 31 32 0D 20 20 20 20 20 20 20 4A 53 52 20 53 |P12. JSR S| 00001E80: 57 41 50 32 33 0D 20 20 20 20 20 20 20 4A 53 52 |WAP23. JSR| 00001E90: 20 53 57 41 50 31 32 0D 20 20 20 20 20 20 20 4A | SWAP12. J| 00001EA0: 53 52 20 4F 55 54 4C 4E 0D 46 49 4E 49 53 48 20 |SR OUTLN.FINISH | 00001EB0: 52 54 53 0D 2E 45 4E 44 0D |RTS..END. |
; FACET - DRAW SHADED TRIANGULAR FACETS.
; AND STRAIGHT LINES..;.; RICHARD L. RYL
ANDER 11/4/84.;.; LOAD "ARITH.HEX" AND
"GRAPH.HEX".; BEFORE USING.;.ORIGIN = $
C26F.RAM = $034A.;.XPLT = $033F.YPL
T = $0341.NORM = $C224.NOSCAL = $034
7.PLOT = $C143.UNPLOT = $C146.;.MLPCND
= $AC.MLPLER = $AD.PROD = $AE.MULT
= $C011.;.DVDND = $FD.DVSOR = $FB.QUOT
= $FD.DIVIDE = $C025.;. *=RAM.;.
XMIN *=*+2.YMIN *=*+1.XMID *=*+2.Y
MID *=*+1.XMAX *=*+2.YMAX *=*+1.YT
OP *=*+1.YBOT *=*+1.YBASE *=*+1.DLT
AX1 *=*+2.DLTAX2 *=*+1.DLTAX3 *=*+1.DELT
AX *=*+1.DLTAY1 *=*+1.DLTAY2 *=*+1.DLTAY
3 *=*+1.DELTAY *=*+1.XDIFF *=*+1.FLAG1
*=*+1.FLAG2 *=*+1.FLAG3 *=*+1.FLAG
*=*+1.EDGES *=*+1.ERROR *=*+2.MODE *
=*+1.COUNT *=*+2.;.;. *=ORIGIN.;.;
****************************************
*.;.; SCALE ALL Y COORDINATES FROM 0..23
9.; PSUEDO-COORDINATE RANGE TO 0..199.;
TRUE SCREEN COORDINATE RANGE.;.SCALE LD
Y #6. LDA #$D5. STA MLPCND.S
CLP LDA YMIN,Y. STA MLPLER.
JSR MULT. STA YMIN,Y. DEY.
DEY. DEY. BPL SCLP.
RTS.;.;.;**************************
***************.;.; EXCHANGE 'MIN' AND '
MID' COORDINATES.;.SWAP12 LDY #2.LOOP1
LDA XMIN,Y. PHA. LDA XMID,Y.
STA XMIN,Y. PLA. STA
XMID,Y. DEY. BPL LOOP1.
RTS.;.;*******************************
**********.;.; EXCHANGE 'MID' AND 'MAX'
COORDINATES.;.SWAP23 LDY #2.LOOP2 LDA X
MID,Y. PHA. LDA XMAX,Y.
STA XMID,Y. PLA. STA XMAX,
Y. DEY. BPL LOOP2. RTS
.;.;************************************
*****.;.; SORT COORDINATES ACCORDING TO
X COMPONENTS.;.SORTX LDX #2.SORTLP SEC.
LDA XMID. SBC XMIN. L
DA XMID+1. SBC XMIN+1. BCS N
OSWP1. JSR SWAP12.NOSWP1 DEX.
BEQ SORTED. SEC. LDA XMAX.
SBC XMID. LDA XMAX+1.
SBC XMID+1. BCS SORTLP. JSR
SWAP23. JMP SORTLP.SORTED RTS.;.;
****************************************
*.;.; DRAW A LINE BETWEEN XMIN,YMIN AND
XMID,YMID.; USING FAST DDA (DIGITAL DIFF
ERENTIAL ANALYZER).; TECHNIQUE.;.LINE
LDA #2 ; ENSURE XMAX IS. ST
A XMAX+1 ; LARGEST BEFORE. JSR
SORTX ; ORDERING 'MIN' AND 'MID'.
LDA NOSCAL. BEQ OUTLN. J
SR SCALE.OUTLN JSR FINDXY ; ENTRY PO
INT TO. LDA XMIN ; OUTLINE F
ACETS. STA XPLT. LDA XMIN+1.
STA XPLT+1. LDA YMIN.
STA YPLT. LDA DLTAX1+1 ; CHECK F
OR DX>DY. BNE STEPX. SEC.
LDA DLTAX1. SBC DLTAY1.
BCS STEPX.STEPY LDA DLTAY1. STA E
RROR. STA COUNT. LSR ERROR.
SEC. LDA DLTAX1. SBC E
RROR. STA ERROR. LDA DLTAX1+
1. SBC #0. STA ERROR+1.
INC COUNT.LNLP1 LDA MODE ; 0 = D
RAW, 1 = ERASE. BNE ERASE1.
JSR PLOT. JMP SK1.ERASE1 JSR UNPLO
T.SK1 LDA FLAG1 ; 0 = POSITIVE SL
OPE. BNE NSLOPE. INC YPLT.
BNE SK2 ; ALWAYS BRANCH.NSLOPE
DEC YPLT.SK2 BIT ERROR+1. BMI S
K3. INC XPLT. BNE NOINC1.
INC XPLT+1.NOINC1 SEC. LDA ERR
OR. SBC DLTAY1. STA ERROR.
LDA ERROR+1. SBC #0. ST
A ERROR+1.SK3 CLC. LDA ERROR.
ADC DLTAX1. STA ERROR.
LDA ERROR+1. ADC DLTAX1+1. S
TA ERROR+1. DEC COUNT. BNE L
NLP1. RTS.;.STEPX LDA DLTAX1.
STA ERROR. STA COUNT. LDA
DLTAX1+1. STA ERROR+1. STA
COUNT+1. LSR ERROR+1. ROR ER
ROR. SEC. LDA DLTAY1.
SBC ERROR. STA ERROR. LDA #0
. SBC ERROR+1. STA ERROR+1.L
NLP2 LDA MODE. BNE ERASE2.
JSR PLOT. JMP SKP1.ERASE2 JSR UNPL
OT.SKP1 INC XPLT. BNE NOINC2.
INC XPLT+1.NOINC2 BIT ERROR+1.
BMI SKP3. LDA FLAG1. BNE NG
SLP. INC YPLT. BNE SKP2 ;
ALWAYS BRANCH.NGSLP DEC YPLT.SKP2 SE
C. LDA ERROR. SBC DLTAX1.
STA ERROR. LDA ERROR+1.
SBC DLTAX1+1. STA ERROR+1.SKP3 C
LC. LDA ERROR. ADC DLTAY1.
STA ERROR. LDA ERROR+1.
ADC #0. STA ERROR+1. SEC.
LDA COUNT. SBC #1. STA
COUNT. BCS TEST. DEC COUNT+1
.TEST BIT COUNT+1. BPL LNLP2.
RTS.;.;*****************************
************.; DRAW A SHADED VERTICAL LI
NE AT.; XPLT FROM YTOP TO YBOT.;.VLINE
SEC ; MAKE SURE YTOP>YBOT.
LDA YTOP. SBC YBOT. BCS DRA
W. LDA YTOP. PHA. LDA
YBOT. STA YTOP. PLA. S
TA YBOT.DRAW LDA YTOP. STA YPLT.
JSR NORM ; PLOT A SHADE-WEIGHT
ED. LDA YTOP ; PIXEL CHECKING O
NLY. CMP YBOT ; FOR SHADE STYLE
. BEQ DONE. DEC YTOP.
JMP DRAW.DONE RTS.;.;*****************
************************.;.; FIND ENDPOI
NTS FOR VERTICAL LINES.; BETWEEN FACET E
DGES.;.ENDPTS LDA XDIFF. STA MLPCN
D. LDA DELTAY. STA MLPLER.
JSR MULT. STA DVDND+1.
LDA PROD. STA DVDND. LDA #0.
STA DVSOR+1. LDA DELTAX.
STA DVSOR. JSR DIVIDE. L
DA FLAG. BNE NEGSLP. CLC.
LDA YBASE. ADC QUOT. BCC
SKIP2.NEGSLP SEC. LDA YBASE.
SBC QUOT.SKIP2 RTS.;.;***************
**************************.;.; FIND COOR
DINATE DIFFERENCES.;.; ALL "DELTA X" VAL
UES POSITIVE,.; SINGLE PRECISION (JUST L
OWER BYTE).;.FINDXY SEC. LDA XMID.
SBC XMIN. STA DLTAX1.
LDA XMID+1. SBC XMIN+1. STA
DLTAX1+1. SEC. LDA XMAX.
SBC XMID. STA DLTAX2. SE
C. LDA XMAX. SBC XMIN.
STA DLTAX3.;.; USE ABS(DELTA Y) VALUES,
.; FLAGS INDICATE SLOPE OF LIMIT LINES.;
. LDA #$00. STA FLAG1.
STA FLAG2. STA FLAG3. SEC.
LDA YMID. SBC YMIN. BC
S STORE1. INC FLAG1. LDA YMI
N. SBC YMID.STORE1 STA DLTAY1.
SEC. LDA YMAX. SBC YMID.
BCS STORE2. INC FLAG2.
LDA YMID. SBC YMAX.STORE2 STA DLT
AY2. SEC. LDA YMAX. SB
C YMIN. BCS STORE3. INC FLAG
3. LDA YMIN. SBC YMAX.STORE3
STA DLTAY3. RTS.;.;**************
***************************.;. DRAW A SH
ADED TRIANGULAR FACET.;.FACET JSR SORTX
. LDA NOSCAL. BEQ YSOK.
JSR SCALE.YSOK JSR FINDXY. LDA
XMIN. STA XPLT. LDA XMIN+1.
STA XPLT+1.FCETLP SEC. LDA
XPLT. SBC XMIN. STA XDIFF.
LDA DLTAX1. BEQ CONT. S
TA DELTAX. LDA DLTAY1. STA D
ELTAY. LDA FLAG1. STA FLAG.
LDA YMIN. STA YBASE. J
SR ENDPTS. STA YTOP. LDA DLT
AX3. BEQ CONT. STA DELTAX.
LDA DLTAY3. STA DELTAY.
LDA FLAG3. STA FLAG. JSR EN
DPTS. STA YBOT. JSR VLINE.
LDA XPLT+1. CMP XMID+1.
BNE NEXTX1. LDA XPLT. CMP X
MID. BEQ CONT.NEXTX1 INC XPLT.
BNE SKIP3. INC XPLT+1.SKIP3 JM
P FCETLP.CONT SEC. LDA XPLT.
SBC XMIN. STA XDIFF. LDA
DLTAX3. BEQ FINI. STA DELTAX
. LDA DLTAY3. STA DELTAY.
LDA FLAG3. STA FLAG. LDA
YMIN. STA YBASE. JSR ENDPTS
. STA YBOT. SEC. LDA X
PLT. SBC XMID. STA XDIFF.
LDA DLTAX2. BEQ FINI. ST
A DELTAX. LDA DLTAY2. STA DE
LTAY. LDA FLAG2. STA FLAG.
LDA YMID. STA YBASE. JS
R ENDPTS. STA YTOP. JSR VLIN
E. LDA XPLT+1. CMP XMAX+1.
BNE NEXTX2. LDA XPLT. C
MP XMAX. BEQ FINI.NEXTX2 INC XPLT.
BNE SKIP4. INC XPLT+1.SKIP4
JMP CONT.FINI LDA EDGES. BEQ F
INISH. JSR OUTLN. JSR SWAP23
. JSR OUTLN. JSR SWAP12.
JSR SWAP23. JSR SWAP12. J
SR OUTLN.FINISH RTS..END.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL