FACET.SRC
FILE INFORMATION
FILENAME(S): FACET.SRC
FILE TYPE(S): SEQ
FILE SIZE: 7.7K
FIRST SEEN: 2025-10-20 00:37:13
APPEARS ON: 3 disk(s)
FILE HASH
de9075c0e0825e29a11a51f0fbecac5354f959cb3c06b209f1867f0b007c175a
FOUND ON DISKS (3 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| SONDERHEFT 4 | FACET.SRC | SEQ | C64er, Treasure Chest - Holger | 25 | 0 | DOWNLOAD FILE |
| SONDERHEFT 4 | FACET.SRC | SEQ | Treasure Chest - Klaus Der Suhler | 25 | 0 | DOWNLOAD FILE |
| SONDERHEFT 4 | FACET.SRC | SEQ | Treasure Chest - ralf | 25 | 0 | 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 3B 20 44 52 41 57 20 41 20 53 |***.;.; DRAW A S| 00001860: 48 41 44 45 44 20 54 52 49 41 4E 47 55 4C 41 52 |HADED TRIANGULAR| 00001870: 20 46 41 43 45 54 0D 3B 0D 46 41 43 45 54 20 20 | FACET.;.FACET | 00001880: 4A 53 52 20 53 4F 52 54 58 0D 20 20 20 20 20 20 |JSR SORTX. | 00001890: 20 4C 44 41 20 4E 4F 53 43 41 4C 0D 20 20 20 20 | LDA NOSCAL. | 000018A0: 20 20 20 42 45 51 20 59 53 4F 4B 0D 20 20 20 20 | BEQ YSOK. | 000018B0: 20 20 20 4A 53 52 20 53 43 41 4C 45 0D 59 53 4F | JSR SCALE.YSO| 000018C0: 4B 20 20 20 4A 53 52 20 46 49 4E 44 58 59 0D 20 |K JSR FINDXY. | 000018D0: 20 20 20 20 20 20 4C 44 41 20 58 4D 49 4E 0D 20 | LDA XMIN. | 000018E0: 20 20 20 20 20 20 53 54 41 20 58 50 4C 54 0D 20 | STA XPLT. | 000018F0: 20 20 20 20 20 20 4C 44 41 20 58 4D 49 4E 2B 31 | LDA XMIN+1| 00001900: 0D 20 20 20 20 20 20 20 53 54 41 20 58 50 4C 54 |. STA XPLT| 00001910: 2B 31 0D 46 43 45 54 4C 50 20 53 45 43 0D 20 20 |+1.FCETLP SEC. | 00001920: 20 20 20 20 20 4C 44 41 20 58 50 4C 54 0D 20 20 | LDA XPLT. | 00001930: 20 20 20 20 20 53 42 43 20 58 4D 49 4E 0D 20 20 | SBC XMIN. | 00001940: 20 20 20 20 20 53 54 41 20 58 44 49 46 46 0D 20 | STA XDIFF. | 00001950: 20 20 20 20 20 20 4C 44 41 20 44 4C 54 41 58 31 | LDA DLTAX1| 00001960: 0D 20 20 20 20 20 20 20 42 45 51 20 43 4F 4E 54 |. BEQ CONT| 00001970: 0D 20 20 20 20 20 20 20 53 54 41 20 44 45 4C 54 |. STA DELT| 00001980: 41 58 0D 20 20 20 20 20 20 20 4C 44 41 20 44 4C |AX. LDA DL| 00001990: 54 41 59 31 0D 20 20 20 20 20 20 20 53 54 41 20 |TAY1. STA | 000019A0: 44 45 4C 54 41 59 0D 20 20 20 20 20 20 20 4C 44 |DELTAY. LD| 000019B0: 41 20 46 4C 41 47 31 0D 20 20 20 20 20 20 20 53 |A FLAG1. S| 000019C0: 54 41 20 46 4C 41 47 0D 20 20 20 20 20 20 20 4C |TA FLAG. L| 000019D0: 44 41 20 59 4D 49 4E 0D 20 20 20 20 20 20 20 53 |DA YMIN. S| 000019E0: 54 41 20 59 42 41 53 45 0D 20 20 20 20 20 20 20 |TA YBASE. | 000019F0: 4A 53 52 20 45 4E 44 50 54 53 0D 20 20 20 20 20 |JSR ENDPTS. | 00001A00: 20 20 53 54 41 20 59 54 4F 50 0D 20 20 20 20 20 | STA YTOP. | 00001A10: 20 20 4C 44 41 20 44 4C 54 41 58 33 0D 20 20 20 | LDA DLTAX3. | 00001A20: 20 20 20 20 42 45 51 20 43 4F 4E 54 0D 20 20 20 | BEQ CONT. | 00001A30: 20 20 20 20 53 54 41 20 44 45 4C 54 41 58 0D 20 | STA DELTAX. | 00001A40: 20 20 20 20 20 20 4C 44 41 20 44 4C 54 41 59 33 | LDA DLTAY3| 00001A50: 0D 20 20 20 20 20 20 20 53 54 41 20 44 45 4C 54 |. STA DELT| 00001A60: 41 59 0D 20 20 20 20 20 20 20 4C 44 41 20 46 4C |AY. LDA FL| 00001A70: 41 47 33 0D 20 20 20 20 20 20 20 53 54 41 20 46 |AG3. STA F| 00001A80: 4C 41 47 0D 20 20 20 20 20 20 20 4A 53 52 20 45 |LAG. JSR E| 00001A90: 4E 44 50 54 53 0D 20 20 20 20 20 20 20 53 54 41 |NDPTS. STA| 00001AA0: 20 59 42 4F 54 0D 20 20 20 20 20 20 20 4A 53 52 | YBOT. JSR| 00001AB0: 20 56 4C 49 4E 45 0D 20 20 20 20 20 20 20 4C 44 | VLINE. LD| 00001AC0: 41 20 58 50 4C 54 2B 31 0D 20 20 20 20 20 20 20 |A XPLT+1. | 00001AD0: 43 4D 50 20 58 4D 49 44 2B 31 0D 20 20 20 20 20 |CMP XMID+1. | 00001AE0: 20 20 42 4E 45 20 4E 45 58 54 58 31 0D 20 20 20 | BNE NEXTX1. | 00001AF0: 20 20 20 20 4C 44 41 20 58 50 4C 54 0D 20 20 20 | LDA XPLT. | 00001B00: 20 20 20 20 43 4D 50 20 58 4D 49 44 0D 20 20 20 | CMP XMID. | 00001B10: 20 20 20 20 42 45 51 20 43 4F 4E 54 0D 4E 45 58 | BEQ CONT.NEX| 00001B20: 54 58 31 20 49 4E 43 20 58 50 4C 54 0D 20 20 20 |TX1 INC XPLT. | 00001B30: 20 20 20 20 42 4E 45 20 53 4B 49 50 33 0D 20 20 | BNE SKIP3. | 00001B40: 20 20 20 20 20 49 4E 43 20 58 50 4C 54 2B 31 0D | INC XPLT+1.| 00001B50: 53 4B 49 50 33 20 20 4A 4D 50 20 46 43 45 54 4C |SKIP3 JMP FCETL| 00001B60: 50 0D 43 4F 4E 54 20 20 20 53 45 43 0D 20 20 20 |P.CONT SEC. | 00001B70: 20 20 20 20 4C 44 41 20 58 50 4C 54 0D 20 20 20 | LDA XPLT. | 00001B80: 20 20 20 20 53 42 43 20 58 4D 49 4E 0D 20 20 20 | SBC XMIN. | 00001B90: 20 20 20 20 53 54 41 20 58 44 49 46 46 0D 20 20 | STA XDIFF. | 00001BA0: 20 20 20 20 20 4C 44 41 20 44 4C 54 41 58 33 0D | LDA DLTAX3.| 00001BB0: 20 20 20 20 20 20 20 42 45 51 20 46 49 4E 49 0D | BEQ FINI.| 00001BC0: 20 20 20 20 20 20 20 53 54 41 20 44 45 4C 54 41 | STA DELTA| 00001BD0: 58 0D 20 20 20 20 20 20 20 4C 44 41 20 44 4C 54 |X. LDA DLT| 00001BE0: 41 59 33 0D 20 20 20 20 20 20 20 53 54 41 20 44 |AY3. STA D| 00001BF0: 45 4C 54 41 59 0D 20 20 20 20 20 20 20 4C 44 41 |ELTAY. LDA| 00001C00: 20 46 4C 41 47 33 0D 20 20 20 20 20 20 20 53 54 | FLAG3. ST| 00001C10: 41 20 46 4C 41 47 0D 20 20 20 20 20 20 20 4C 44 |A FLAG. LD| 00001C20: 41 20 59 4D 49 4E 0D 20 20 20 20 20 20 20 53 54 |A YMIN. ST| 00001C30: 41 20 59 42 41 53 45 0D 20 20 20 20 20 20 20 4A |A YBASE. J| 00001C40: 53 52 20 45 4E 44 50 54 53 0D 20 20 20 20 20 20 |SR ENDPTS. | 00001C50: 20 53 54 41 20 59 42 4F 54 0D 20 20 20 20 20 20 | STA YBOT. | 00001C60: 20 53 45 43 0D 20 20 20 20 20 20 20 4C 44 41 20 | SEC. LDA | 00001C70: 58 50 4C 54 0D 20 20 20 20 20 20 20 53 42 43 20 |XPLT. SBC | 00001C80: 58 4D 49 44 0D 20 20 20 20 20 20 20 53 54 41 20 |XMID. STA | 00001C90: 58 44 49 46 46 0D 20 20 20 20 20 20 20 4C 44 41 |XDIFF. LDA| 00001CA0: 20 44 4C 54 41 58 32 0D 20 20 20 20 20 20 20 42 | DLTAX2. B| 00001CB0: 45 51 20 46 49 4E 49 0D 20 20 20 20 20 20 20 53 |EQ FINI. S| 00001CC0: 54 41 20 44 45 4C 54 41 58 0D 20 20 20 20 20 20 |TA DELTAX. | 00001CD0: 20 4C 44 41 20 44 4C 54 41 59 32 0D 20 20 20 20 | LDA DLTAY2. | 00001CE0: 20 20 20 53 54 41 20 44 45 4C 54 41 59 0D 20 20 | STA DELTAY. | 00001CF0: 20 20 20 20 20 4C 44 41 20 46 4C 41 47 32 0D 20 | LDA FLAG2. | 00001D00: 20 20 20 20 20 20 53 54 41 20 46 4C 41 47 0D 20 | STA FLAG. | 00001D10: 20 20 20 20 20 20 4C 44 41 20 59 4D 49 44 0D 20 | LDA YMID. | 00001D20: 20 20 20 20 20 20 53 54 41 20 59 42 41 53 45 0D | STA YBASE.| 00001D30: 20 20 20 20 20 20 20 4A 53 52 20 45 4E 44 50 54 | JSR ENDPT| 00001D40: 53 0D 20 20 20 20 20 20 20 53 54 41 20 59 54 4F |S. STA YTO| 00001D50: 50 0D 20 20 20 20 20 20 20 4A 53 52 20 56 4C 49 |P. JSR VLI| 00001D60: 4E 45 0D 20 20 20 20 20 20 20 4C 44 41 20 58 50 |NE. LDA XP| 00001D70: 4C 54 2B 31 0D 20 20 20 20 20 20 20 43 4D 50 20 |LT+1. CMP | 00001D80: 58 4D 41 58 2B 31 0D 20 20 20 20 20 20 20 42 4E |XMAX+1. BN| 00001D90: 45 20 4E 45 58 54 58 32 0D 20 20 20 20 20 20 20 |E NEXTX2. | 00001DA0: 4C 44 41 20 58 50 4C 54 0D 20 20 20 20 20 20 20 |LDA XPLT. | 00001DB0: 43 4D 50 20 58 4D 41 58 0D 20 20 20 20 20 20 20 |CMP XMAX. | 00001DC0: 42 45 51 20 46 49 4E 49 0D 4E 45 58 54 58 32 20 |BEQ FINI.NEXTX2 | 00001DD0: 49 4E 43 20 58 50 4C 54 0D 20 20 20 20 20 20 20 |INC XPLT. | 00001DE0: 42 4E 45 20 53 4B 49 50 34 0D 20 20 20 20 20 20 |BNE SKIP4. | 00001DF0: 20 49 4E 43 20 58 50 4C 54 2B 31 0D 53 4B 49 50 | INC XPLT+1.SKIP| 00001E00: 34 20 20 4A 4D 50 20 43 4F 4E 54 0D 46 49 4E 49 |4 JMP CONT.FINI| 00001E10: 20 20 20 4C 44 41 20 45 44 47 45 53 0D 20 20 20 | LDA EDGES. | 00001E20: 20 20 20 20 42 45 51 20 46 49 4E 49 53 48 0D 20 | BEQ FINISH. | 00001E30: 20 20 20 20 20 20 4A 53 52 20 4F 55 54 4C 4E 0D | JSR OUTLN.| 00001E40: 20 20 20 20 20 20 20 4A 53 52 20 53 57 41 50 32 | JSR SWAP2| 00001E50: 33 0D 20 20 20 20 20 20 20 4A 53 52 20 4F 55 54 |3. JSR OUT| 00001E60: 4C 4E 0D 20 20 20 20 20 20 20 4A 53 52 20 53 57 |LN. JSR SW| 00001E70: 41 50 31 32 0D 20 20 20 20 20 20 20 4A 53 52 20 |AP12. JSR | 00001E80: 53 57 41 50 32 33 0D 20 20 20 20 20 20 20 4A 53 |SWAP23. JS| 00001E90: 52 20 53 57 41 50 31 32 0D 20 20 20 20 20 20 20 |R SWAP12. | 00001EA0: 4A 53 52 20 4F 55 54 4C 4E 0D 46 49 4E 49 53 48 |JSR OUTLN.FINISH| 00001EB0: 20 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 S
HADED TRIANGULAR FACET.;.FACET JSR SORT
X. LDA NOSCAL. BEQ YSOK.
JSR SCALE.YSOK JSR FINDXY. LD
A XMIN. STA XPLT. LDA XMIN+1
. STA XPLT+1.FCETLP SEC. LDA
XPLT. SBC XMIN. STA XDIFF.
LDA DLTAX1. BEQ CONT.
STA DELTAX. LDA DLTAY1. STA
DELTAY. LDA FLAG1. STA FLAG.
LDA YMIN. STA YBASE.
JSR ENDPTS. STA YTOP. LDA DL
TAX3. BEQ CONT. STA DELTAX.
LDA DLTAY3. STA DELTAY.
LDA FLAG3. STA FLAG. JSR E
NDPTS. STA YBOT. JSR VLINE.
LDA XPLT+1. CMP XMID+1.
BNE NEXTX1. LDA XPLT. CMP
XMID. BEQ CONT.NEXTX1 INC XPLT.
BNE SKIP3. INC XPLT+1.SKIP3 J
MP FCETLP.CONT SEC. LDA XPLT.
SBC XMIN. STA XDIFF. LDA
DLTAX3. BEQ FINI. STA DELTA
X. LDA DLTAY3. STA DELTAY.
LDA FLAG3. STA FLAG. LD
A YMIN. STA YBASE. JSR ENDPT
S. STA YBOT. SEC. LDA
XPLT. SBC XMID. STA XDIFF.
LDA DLTAX2. BEQ FINI. S
TA DELTAX. LDA DLTAY2. STA D
ELTAY. LDA FLAG2. STA FLAG.
LDA YMID. STA YBASE. J
SR ENDPTS. STA YTOP. JSR VLI
NE. LDA XPLT+1. CMP XMAX+1.
BNE NEXTX2. LDA XPLT.
CMP XMAX. BEQ FINI.NEXTX2 INC XPLT
. BNE SKIP4. INC XPLT+1.SKIP
4 JMP CONT.FINI LDA EDGES. BEQ
FINISH. JSR OUTLN. JSR SWAP2
3. JSR OUTLN. JSR SWAP12.
JSR SWAP23. JSR SWAP12.
JSR OUTLN.FINISH RTS..END.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL