_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

SNAG SOURCE

FILE INFORMATION

FILENAME(S): SNAG SOURCE

FILE TYPE(S): PRG

FILE SIZE: 20.1K

FIRST SEEN: 2025-11-30 18:12:20

APPEARS ON: 1 disk(s)

FILE HASH

7921a8882230561fa7dae26fd63b2debe0fa26932186e73ca8441c424467f601

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
LOADSTAR 41 S 2 SNAG SOURCE PRG Sailor, Ganheden 13 8 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

> DETECTED: COMMODORE BASIC PROGRAM (LOAD ADDRESS $0801)

00000000: 01 08 12 08 E8 03 9E 37  30 30 3A 2E 4F 50 54 20  |.......700:.OPT |
00000010: 4F 4F 00 1E 08 F2 03 AC  B2 24 43 30 30 30 00 24  |OO.......$C000.$|
00000020: 08 FC 03 3B 00 4A 08 06  04 3B AC AC AC AC AC AC  |...;.J...;......|
00000030: AC AC AC AC AC AC AC AC  AC AC AC AC AC AC AC AC  |................|
00000040: AC AC AC AC AC AC AC AC  AC AC 00 70 08 10 04 3B  |...........p...;|
00000050: AC 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000060: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 AC  |               .|
00000070: 00 96 08 1A 04 3B AC 20  20 20 20 20 20 20 20 20  |.....;.         |
00000080: 20 20 53 4E 41 47 20 31  2E 30 20 20 20 20 20 20  |  SNAG 1.0      |
00000090: 20 20 20 20 20 AC 00 BC  08 24 04 3B AC 20 20 20  |     ....$.;.   |
000000A0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000000B0: 20 20 20 20 20 20 20 20  20 20 20 AC 00 E2 08 2E  |           .....|
000000C0: 04 3B AC 20 43 4F 50 59  52 49 47 48 54 20 31 39  |.;. COPYRIGHT 19|
000000D0: 38 37 20 20 42 59 20 4E  49 43 4B 20 50 45 43 4B  |87  BY NICK PECK|
000000E0: 20 AC 00 08 09 38 04 3B  AC 20 20 20 20 20 20 20  | ....8.;.       |
000000F0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000100: 20 20 20 20 20 20 20 AC  00 2E 09 42 04 3B AC AC  |       ....B.;..|
00000110: AC AC AC AC AC AC AC AC  AC AC AC AC AC AC AC AC  |................|
00000120: AC AC AC AC AC AC AC AC  AC AC AC AC AC AC 00 34  |...............4|
00000130: 09 4C 04 3B 00 55 09 56  04 4E 4D 49 4F 46 46 20  |.L.;.U.V.NMIOFF |
00000140: B2 24 46 45 43 31 20 3B  8C 20 49 53 20 4F 46 46  |.$FEC1 ;. IS OFF|
00000150: 20 48 45 52 45 00 7A 09  60 04 53 54 55 46 46 20  | HERE.z.`.STUFF |
00000160: 20 B2 24 46 30 30 30 20  3B 4D 45 4D 2E 20 81 20  | .$F000 ;MEM. . |
00000170: 53 4E 41 47 20 53 54 41  43 4B 00 9E 09 6A 04 53  |SNAG STACK...j.S|
00000180: 54 52 49 4E 47 20 B2 24  41 42 31 45 20 3B 44 49  |TRING .$AB1E ;DI|
00000190: 53 50 4C 41 59 20 41 20  53 54 52 49 4E 47 00 C1  |SPLAY A STRING..|
000001A0: 09 74 04 A1 49 4E 20 20  B2 24 46 46 45 34 20 3B  |.t..IN  .$FFE4 ;|
000001B0: A1 20 41 20 4B 45 59 42  4F 41 52 44 20 42 59 54  |. A KEYBOARD BYT|
000001C0: 45 00 E2 09 7E 04 43 48  52 4F 55 54 20 B2 24 46  |E...~.CHROUT .$F|
000001D0: 46 44 32 20 3B 4F 55 54  50 55 54 20 41 20 42 59  |FD2 ;OUTPUT A BY|
000001E0: 54 45 00 04 0A 88 04 43  48 52 49 4E 20 20 B2 24  |TE.....CHRIN  .$|
000001F0: 46 46 43 46 20 3B 36 34  27 53 20 85 20 52 4F 55  |FFCF ;64'S . ROU|
00000200: 54 49 4E 45 00 27 0A 92  04 50 4C 4F 54 20 20 20  |TINE.'...PLOT   |
00000210: B2 24 46 46 46 30 20 3B  50 4C 4F 54 20 36 34 27  |.$FFF0 ;PLOT 64'|
00000220: 53 20 43 55 52 53 B0 00  3F 0A 9C 04 A0 20 20 B2  |S CURS..?....  .|
00000230: 24 46 46 43 33 20 3B A0  20 41 20 46 49 4C 45 00  |$FFC3 ;. A FILE.|
00000240: 5E 0A A6 04 43 4C 41 4C  4C 20 20 B2 24 46 46 45  |^...CLALL  .$FFE|
00000250: 37 20 3B A0 20 41 4C 4C  20 46 49 4C 45 53 00 77  |7 ;. ALL FILES.w|
00000260: 0A B0 04 9F 20 20 20 B2  24 46 46 43 30 20 3B 9F  |....   .$FFC0 ;.|
00000270: 20 41 20 46 49 4C 45 00  98 0A BA 04 53 45 54 4E  | A FILE.....SETN|
00000280: 41 4D 20 B2 24 46 46 42  44 20 3B 53 45 54 20 46  |AM .$FFBD ;SET F|
00000290: 49 4C 45 20 4E 41 4D 45  00 BB 0A C4 04 53 45 54  |ILE NAME.....SET|
000002A0: 4C 46 53 20 B2 24 46 46  42 41 20 3B 53 45 54 20  |LFS .$FFBA ;SET |
000002B0: 46 49 4C 45 20 53 54 41  54 55 53 00 DF 0A CE 04  |FILE STATUS.....|
000002C0: 54 41 4C 4B 20 20 20 B2  24 46 46 42 34 20 3B 4D  |TALK   .$FFB4 ;M|
000002D0: 41 4B 45 20 44 45 56 49  43 45 20 54 41 4C 4B 00  |AKE DEVICE TALK.|
000002E0: 05 0B D8 04 54 4B 53 41  20 20 20 B2 24 46 46 39  |....TKSA   .$FF9|
000002F0: 36 20 3B 54 41 4C 4B 20  53 45 43 91 44 20 41 44  |6 ;TALK SEC.D AD|
00000300: 44 52 45 53 53 00 29 0B  E2 04 43 48 4B 4F 55 54  |DRESS.)...CHKOUT|
00000310: 20 B2 24 46 46 43 39 20  3B 9F 20 4F 55 54 50 55  | .$FFC9 ;. OUTPU|
00000320: 54 20 43 48 41 4E 4E 45  4C 00 4F 0B EC 04 55 4E  |T CHANNEL.O...UN|
00000330: 54 4C 4B 20 20 B2 24 46  46 41 42 20 3B 4D 41 4B  |TLK  .$FFAB ;MAK|
00000340: 45 20 44 45 56 49 43 45  20 55 4E 54 41 4C 4B 00  |E DEVICE UNTALK.|
00000350: 6F 0B F6 04 41 43 50 54  52 20 20 B2 24 46 46 41  |o...ACPTR  .$FFA|
00000360: 35 20 3B 53 45 52 49 41  4C 20 50 B0 54 20 A1 00  |5 ;SERIAL P.T ..|
00000370: 92 0B 00 05 43 55 52 53  43 4F 20 B2 24 30 32 38  |....CURSCO .$028|
00000380: 36 20 3B 36 34 27 53 20  43 55 52 53 B0 20 43 4F  |6 ;64'S CURS. CO|
00000390: 4C B0 00 B3 0B 0A 05 53  43 4E 4C 49 4E 20 B2 24  |L......SCNLIN .$|
000003A0: 30 37 34 38 20 3B 53 54  41 52 54 20 4F 46 20 4D  |0748 ;START OF M|
000003B0: 45 4E 55 00 D9 0B 14 05  54 58 54 4C 49 4E 20 B2  |ENU.....TXTLIN .|
000003C0: 24 30 37 37 30 20 3B 53  54 41 52 54 20 4F 46 20  |$0770 ;START OF |
000003D0: 54 45 58 54 20 4C 49 4E  45 00 FC 0B 1E 05 43 4F  |TEXT LINE.....CO|
000003E0: 4C 4C 49 4E 20 B2 24 44  42 34 38 20 3B 4D 45 4E  |LLIN .$DB48 ;MEN|
000003F0: 55 20 43 4F 4C B0 20 4D  45 4D B0 59 00 23 0C 28  |U COL. MEM.Y.#.(|
00000400: 05 41 20 20 20 20 20 20  B2 24 30 32 20 3B 54 45  |.A      .$02 ;TE|
00000410: 4D 50 53 20 55 53 45 44  20 45 56 45 52 59 57 48  |MPS USED EVERYWH|
00000420: 45 52 45 00 44 0C 32 05  42 20 20 20 20 20 20 B2  |ERE.D.2.B      .|
00000430: 24 30 33 20 3B 20 20 20  20 20 27 27 20 20 20 20  |$03 ;     ''    |
00000440: 20 20 27 27 00 65 0C 3C  05 58 54 45 4D 50 20 20  |  ''.e.<.XTEMP  |
00000450: B2 24 30 34 20 3B 20 20  20 20 20 27 27 20 20 20  |.$04 ;     ''   |
00000460: 20 20 20 27 27 00 86 0C  46 05 59 54 45 4D 50 20  |   ''...F.YTEMP |
00000470: 20 B2 24 30 35 20 3B 20  20 20 20 20 27 27 20 20  | .$05 ;     ''  |
00000480: 20 20 20 20 27 27 00 A6  0C 50 05 42 4C 4F 43 4B  |    ''...P.BLOCK|
00000490: 58 20 B2 24 46 44 20 3B  B9 49 54 49 91 20 4F 46  |X .$FD ;.ITI. OF|
000004A0: 20 42 4C 4F 43 4B 00 C7  0C 5A 05 42 4C 4F 43 4B  | BLOCK...Z.BLOCK|
000004B0: 59 20 B2 24 46 45 20 3B  20 20 20 20 20 27 27 20  |Y .$FE ;     '' |
000004C0: 20 20 20 20 20 27 27 00  E5 0C 64 05 58 B9 20 20  |     ''...d.X.  |
000004D0: 20 B2 24 46 42 20 3B B9  49 54 49 91 20 4F 46 20  | .$FB ;.ITI. OF |
000004E0: 43 55 52 53 B0 00 04 0D  6E 05 59 B9 20 20 20 B2  |CURS....n.Y.   .|
000004F0: 24 46 43 20 3B 20 20 20  20 20 27 27 20 20 20 20  |$FC ;     ''    |
00000500: 20 20 27 27 00 2B 0D 78  05 4C 4F 57 50 4E 54 20  |  ''.+.x.LOWPNT |
00000510: B2 24 30 36 20 3B 4C 4F  57 AB 48 49 47 48 20 55  |.$06 ;LOW.HIGH U|
00000520: 53 45 44 20 49 4E 20 50  4C 4F 54 00 4C 0D 82 05  |SED IN PLOT.L...|
00000530: 48 49 47 48 50 54 20 B2  24 30 37 20 3B 20 20 20  |HIGHPT .$07 ;   |
00000540: 20 20 27 27 20 20 20 20  20 20 27 27 00 6F 0D 8C  |  ''      ''.o..|
00000550: 05 43 4F 4C 4C 4F 57 20  B2 24 32 32 20 3B 55 53  |.COLLOW .$22 ;US|
00000560: 45 44 20 A4 20 A1 20 4F  4C 44 20 43 4F 4C B0 00  |ED . . OLD COL..|
00000570: 90 0D 96 05 43 4F 4C 48  49 49 20 B2 24 32 33 20  |....COLHII .$23 |
00000580: 3B 20 20 20 20 20 27 27  20 20 20 20 20 20 27 27  |;     ''      ''|
00000590: 00 B4 0D A0 05 4F 4C 44  43 4F 4C 20 B2 24 32 34  |.....OLDCOL .$24|
000005A0: 20 3B 46 4C 41 47 AB 20  55 53 45 20 4F 4C 44 20  | ;FLAG. USE OLD |
000005B0: 43 4F 4C B0 00 D8 0D AA  05 41 44 44 4D 4F 56 20  |COL......ADDMOV |
000005C0: B2 24 32 35 20 3B 46 4C  41 47 AB 20 52 49 47 48  |.$25 ;FLAG. RIGH|
000005D0: 54 20 B0 20 44 4F 57 4E  00 FB 0D B4 05 58 50 54  |T . DOWN.....XPT|
000005E0: 45 4D 50 20 B2 24 34 42  20 3B 54 45 4D 50 20 81  |EMP .$4B ;TEMP .|
000005F0: 20 4D 41 4B 45 20 42 4C  4F 43 4B 00 1C 0E BE 05  | MAKE BLOCK.....|
00000600: 59 50 54 45 4D 50 20 B2  24 34 43 20 3B 20 20 20  |YPTEMP .$4C ;   |
00000610: 20 20 27 27 20 20 20 20  20 20 27 27 00 3D 0E C8  |  ''      ''.=..|
00000620: 05 58 42 54 45 4D 50 20  B2 24 34 44 20 3B 20 20  |.XBTEMP .$4D ;  |
00000630: 20 20 20 27 27 20 20 20  20 20 20 27 27 00 5E 0E  |   ''      ''.^.|
00000640: D2 05 59 42 54 45 4D 50  20 B2 24 34 45 20 3B 20  |..YBTEMP .$4E ; |
00000650: 20 20 20 20 27 27 20 20  20 20 20 20 27 27 00 85  |    ''      ''..|
00000660: 0E DC 05 46 4C 50 50 4C  54 20 B2 24 34 46 20 3B  |...FLPPLT .$4F ;|
00000670: 46 4C 41 47 AB 20 50 4C  4F 54 20 59 2C 58 20 AC  |FLAG. PLOT Y,X .|
00000680: 28 58 2C 59 29 00 AB 0E  E6 05 4F 55 54 50 55 54  |(X,Y).....OUTPUT|
00000690: 20 B2 24 35 30 20 3B 46  4C 41 47 AB 20 4F 55 54  | .$50 ;FLAG. OUT|
000006A0: 50 55 54 20 55 4E 42 4C  4F 43 4B 00 CB 0E F0 05  |PUT UNBLOCK.....|
000006B0: 4C 41 53 54 43 48 20 B2  24 35 31 20 3B 54 45 4D  |LASTCH .$51 ;TEM|
000006C0: 50 20 81 20 55 4E 42 4C  4F 43 4B 00 EE 0E FA 05  |P . UNBLOCK.....|
000006D0: 43 48 4F 49 43 45 20 B2  24 35 32 20 3B 41 50 50  |CHOICE .$52 ;APP|
000006E0: 80 20 43 48 4F 49 43 45  20 28 59 AD 4E 29 00 11  |. CHOICE (Y.N)..|
000006F0: 0F 04 06 43 55 52 43 4F  4C 20 B2 24 35 33 20 3B  |...CURCOL .$53 ;|
00000700: 43 55 52 52 45 4E 54 20  53 4E 41 47 20 43 4F 4C  |CURRENT SNAG COL|
00000710: B0 00 36 0F 0E 06 51 54  4D 4F 44 45 20 B2 24 44  |..6...QTMODE .$D|
00000720: 34 20 3B 36 34 20 51 55  4F 54 45 20 4D 4F 44 45  |4 ;64 QUOTE MODE|
00000730: 20 91 AD 4F 46 46 00 3C  0F 18 06 3B 00 5F 0F 22  | ..OFF.<...;._."|
00000740: 06 3B 54 48 45 20 46 4F  4C 4C 4F 57 49 4E 47 20  |.;THE FOLLOWING |
00000750: 43 4F 44 45 20 43 4F 50  49 45 53 20 54 48 45 00  |CODE COPIES THE.|
00000760: 83 0F 2C 06 3B 53 54 41  43 4B 20 AF 20 5A 45 52  |..,.;STACK . ZER|
00000770: 4F 20 50 41 47 45 20 53  4F 20 54 48 41 54 20 53  |O PAGE SO THAT S|
00000780: 4E 41 47 00 A7 0F 36 06  3B 48 41 53 20 49 54 27  |NAG...6.;HAS IT'|
00000790: 53 20 4F 57 4E 20 53 54  41 43 4B 20 AF 20 5A 45  |S OWN STACK . ZE|
000007A0: 52 4F 20 50 41 47 45 00  CE 0F 40 06 3B 57 48 45  |RO PAGE...@.;WHE|
000007B0: 4E 20 45 4E 54 45 52 45  44 20 56 49 41 20 54 48  |N ENTERED VIA TH|
000007C0: 45 20 48 41 52 44 57 41  52 45 20 49 52 51 00 D4  |E HARDWARE IRQ..|
000007D0: 0F 4A 06 3B 00 F7 0F 54  06 B5 53 54 52 20 4C 44  |.J.;...T..STR LD|
000007E0: 41 20 23 22 4E 22 20 20  20 20 20 20 3B 53 54 41  |A #"N"      ;STA|
000007F0: 52 54 20 41 50 50 80 00  1E 10 5E 06 20 20 20 20  |RT APP....^.    |
00000800: 20 20 20 53 54 41 20 43  48 4F 49 43 45 20 20 20  |   STA CHOICE   |
00000810: 20 3B 43 48 4F 49 43 45  20 41 53 20 27 4E 00 32  | ;CHOICE AS 'N.2|
00000820: 10 68 06 20 20 20 20 20  20 20 4C 44 41 20 23 22  |.h.       LDA #"|
00000830: 2F 22 00 56 10 72 06 20  20 20 20 20 20 20 53 54  |/".V.r.       ST|
00000840: 41 20 A5 41 4D 45 20 20  20 20 20 3B 53 54 41 52  |A .AME     ;STAR|
00000850: 54 20 46 49 4C 45 00 7C  10 7C 06 20 20 20 20 20  |T FILE.|.|.     |
00000860: 20 20 4C 44 41 20 23 22  2C 22 20 20 20 20 20 20  |  LDA #","      |
00000870: 3B 4E 41 4D 45 20 41 53  20 27 AD 27 00 92 10 86  |;NAME AS '.'....|
00000880: 06 20 20 20 20 20 20 20  53 54 41 20 A5 41 4D 45  |.       STA .AME|
00000890: AA 31 00 A1 10 90 06 20  20 20 20 20 20 20 53 45  |.1.....       SE|
000008A0: 49 00 C2 10 9A 06 20 20  20 20 20 20 20 4C 44 41  |I.....       LDA|
000008B0: 20 23 B1 52 54 48 45 52  45 20 20 20 3B 53 45 54  | #.RTHERE   ;SET|
000008C0: 20 8E 00 E7 10 A4 06 20  20 20 20 20 20 20 50 48  | ......       PH|
000008D0: 41 20 20 20 20 20 20 20  20 20 20 20 20 3B 41 44  |A            ;AD|
000008E0: 44 52 45 53 53 20 81 00  0D 11 AE 06 20 20 20 20  |DRESS ......    |
000008F0: 20 20 20 4C 44 41 20 23  B3 52 54 48 45 52 45 AB  |   LDA #.RTHERE.|
00000900: 31 20 3B 46 4C 49 50 20  53 54 41 43 4B 00 31 11  |1 ;FLIP STACK.1.|
00000910: B8 06 20 20 20 20 20 20  20 50 48 41 20 20 20 20  |..       PHA    |
00000920: 20 20 20 20 20 20 20 20  3B 52 4F 55 54 49 4E 45  |        ;ROUTINE|
00000930: 2E 00 54 11 C2 06 20 20  20 20 20 20 20 54 53 58  |..T...       TSX|
00000940: 20 20 20 20 20 20 20 20  20 20 20 20 3B 94 20 53  |            ;. S|
00000950: 54 41 43 4B 00 75 11 CC  06 20 20 20 20 20 20 20  |TACK.u...       |
00000960: 53 54 58 20 53 54 4B 54  4D 50 20 20 20 20 20 3B  |STX STKTMP     ;|
00000970: 50 4F B5 45 52 00 87 11  D6 06 20 20 20 20 20 20  |PO.ER.....      |
00000980: 20 4C 44 41 20 23 30 00  AD 11 E0 06 20 20 20 20  | LDA #0.....    |
00000990: 20 20 20 53 54 41 20 24  46 42 20 20 20 20 20 20  |   STA $FB      |
000009A0: 20 20 3B 43 4F 50 59 20  46 49 52 53 54 00 D4 11  |  ;COPY FIRST...|
000009B0: EA 06 20 20 20 20 20 20  20 53 54 41 20 24 46 43  |..       STA $FC|
000009C0: 20 20 20 20 20 20 20 20  3B 34 20 42 4C 4F 43 4B  |        ;4 BLOCK|
000009D0: 53 20 4F 46 00 F5 11 F4  06 20 20 20 20 20 20 20  |S OF.....       |
000009E0: 4C 44 41 20 23 B3 53 54  55 46 46 20 20 20 20 3B  |LDA #.STUFF    ;|
000009F0: 4D 45 4D B0 59 00 08 12  FE 06 20 20 20 20 20 20  |MEM.Y.....      |
00000A00: 20 53 54 41 20 24 46 44  00 1F 12 08 07 20 20 20  | STA $FD.....   |
00000A10: 20 20 20 20 4C 44 41 20  23 B1 53 54 55 46 46 00  |    LDA #.STUFF.|
00000A20: 32 12 12 07 20 20 20 20  20 20 20 53 54 41 20 24  |2...       STA $|
00000A30: 46 45 00 44 12 1C 07 20  20 20 20 20 20 20 4C 44  |FE.D...       LD|
00000A40: 58 20 23 34 00 56 12 26  07 20 20 20 20 20 20 20  |X #4.V.&.       |
00000A50: 4C 44 59 20 23 32 00 6C  12 30 07 4D 52 A4 49 54  |LDY #2.l.0.MR.IT|
00000A60: 20 4C 44 41 20 28 24 46  42 29 2C 59 00 83 12 3A  | LDA ($FB),Y...:|
00000A70: 07 20 20 20 20 20 20 20  53 54 41 20 28 24 46 44  |.       STA ($FD|
00000A80: 29 2C 59 00 92 12 44 07  20 20 20 20 20 20 20 49  |),Y...D.       I|
00000A90: 4E 59 00 A7 12 4E 07 20  20 20 20 20 20 20 42 4E  |NY...N.       BN|
00000AA0: 45 20 4D 52 A4 49 54 00  BA 12 58 07 20 20 20 20  |E MR.IT...X.    |
00000AB0: 20 20 20 49 4E 43 20 24  46 43 00 CD 12 62 07 20  |   INC $FC...b. |
00000AC0: 20 20 20 20 20 20 49 4E  43 20 24 46 45 00 DC 12  |      INC $FE...|
00000AD0: 6C 07 20 20 20 20 20 20  20 44 45 58 00 F1 12 76  |l.       DEX...v|
00000AE0: 07 20 20 20 20 20 20 20  42 4E 45 20 4D 52 A4 49  |.       BNE MR.I|
00000AF0: 54 00 17 13 80 07 20 20  20 20 20 20 20 4C 44 41  |T.....       LDA|
00000B00: 20 23 B3 4E 4D 49 4F 46  46 20 20 3B 53 4E 41 47  | #.NMIOFF  ;SNAG|
00000B10: 20 56 45 43 A4 52 53 00  38 13 8A 07 20 20 20 20  | VEC.RS.8...    |
00000B20: 20 20 20 53 54 41 20 24  30 33 31 38 20 20 20 20  |   STA $0318    |
00000B30: 20 3B 53 4E 41 47 20 8C  00 5E 13 94 07 20 20 20  | ;SNAG ..^...   |
00000B40: 20 20 20 20 4C 44 41 20  23 B1 4E 4D 49 4F 46 46  |    LDA #.NMIOFF|
00000B50: 20 20 3B 49 53 20 44 49  53 41 42 4C 45 44 00 73  |  ;IS DISABLED.s|
00000B60: 13 9E 07 20 20 20 20 20  20 20 53 54 41 20 24 30  |...       STA $0|
00000B70: 33 31 39 00 97 13 A8 07  20 20 20 20 20 20 20 4C  |319.....       L|
00000B80: 44 41 20 23 B3 45 58 54  53 4E 47 20 20 3B 42 52  |DA #.EXTSNG  ;BR|
00000B90: 4B 20 56 45 43 A4 52 00  BB 13 B2 07 20 20 20 20  |K VEC.R.....    |
00000BA0: 20 20 20 53 54 41 20 24  30 33 31 36 20 20 20 20  |   STA $0316    |
00000BB0: 20 3B 49 53 20 55 53 45  44 20 A4 00 DF 13 BC 07  | ;IS USED ......|
00000BC0: 20 20 20 20 20 20 20 4C  44 41 20 23 B1 45 58 54  |       LDA #.EXT|
00000BD0: 53 4E 47 20 20 3B 45 58  49 54 20 53 4E 41 47 00  |SNG  ;EXIT SNAG.|
00000BE0: F4 13 C6 07 20 20 20 20  20 20 20 53 54 41 20 24  |....       STA $|
00000BF0: 30 33 31 37 00 13 14 D0  07 20 20 20 20 20 20 20  |0317.....       |
00000C00: 4C 44 41 20 23 B1 53 54  41 52 54 20 20 3B A2 20  |LDA #.START  ;. |
00000C10: 50 43 48 00 22 14 DA 07  20 20 20 20 20 20 20 50  |PCH."...       P|
00000C20: 48 41 00 41 14 E4 07 20  20 20 20 20 20 20 4C 44  |HA.A...       LD|
00000C30: 41 20 23 B3 53 54 41 52  54 20 20 3B A2 20 50 43  |A #.START  ;. PC|
00000C40: 4C 00 50 14 EE 07 20 20  20 20 20 20 20 50 48 41  |L.P...       PHA|
00000C50: 00 70 14 F8 07 20 20 20  20 20 20 20 4C 44 41 20  |.p...       LDA |
00000C60: 23 30 20 20 20 20 20 20  20 3B 53 54 41 54 55 53  |#0       ;STATUS|
00000C70: 00 7F 14 02 08 20 20 20  20 20 20 20 50 48 41 00  |.....       PHA.|
00000C80: 9B 14 0C 08 20 20 20 20  20 20 20 50 48 41 20 20  |....       PHA  |
00000C90: 20 20 20 20 20 20 20 20  3B 2E 41 00 B7 14 16 08  |        ;.A.....|
00000CA0: 20 20 20 20 20 20 20 50  48 41 20 20 20 20 20 20  |       PHA      |
00000CB0: 20 20 20 20 3B 2E 58 00  D3 14 20 08 20 20 20 20  |    ;.X... .    |
00000CC0: 20 20 20 50 48 41 20 20  20 20 20 20 20 20 20 20  |   PHA          |
00000CD0: 3B 2E 59 00 F4 14 2A 08  20 20 20 20 20 20 20 4C  |;.Y...*.       L|
00000CE0: 44 41 20 23 B1 52 54 48  52 45 32 20 20 20 3B 53  |DA #.RTHRE2   ;S|
00000CF0: 45 54 20 8E 00 19 15 34  08 20 20 20 20 20 20 20  |ET ....4.       |
00000D00: 50 48 41 20 20 20 20 20  20 20 20 20 20 20 20 3B  |PHA            ;|
00000D10: 41 44 44 52 45 53 53 20  81 00 3B 15 3E 08 20 20  |ADDRESS ..;.>.  |
00000D20: 20 20 20 20 20 4C 44 41  20 23 B3 52 54 48 52 45  |     LDA #.RTHRE|
00000D30: 32 AB 31 20 3B 82 20 46  4C 49 50 00 61 15 48 08  |2.1 ;. FLIP.a.H.|
00000D40: 20 20 20 20 20 20 20 50  48 41 20 20 20 20 20 20  |       PHA      |
00000D50: 20 20 20 20 20 20 3B 53  54 41 43 4B 20 43 41 4C  |      ;STACK CAL|
00000D60: 4C 00 86 15 52 08 20 20  20 20 20 20 20 4A 4D 50  |L...R.       JMP|
00000D70: 20 46 4C 49 50 4D 4D 20  20 20 3B 46 4C 49 50 20  | FLIPMM   ;FLIP |
00000D80: 53 54 41 43 4B 53 00 AD  15 5C 08 52 54 48 45 52  |STACKS...\.RTHER|
00000D90: 45 20 4C 44 41 20 23 B3  42 41 53 45 52 52 20 3B  |E LDA #.BASERR ;|
00000DA0: 43 48 41 4E 47 45 20 42  41 53 49 43 53 00 D3 15  |CHANGE BASICS...|
00000DB0: 66 08 20 20 20 20 20 20  20 53 54 41 20 24 30 33  |f.       STA $03|
00000DC0: 30 30 20 20 20 20 3B 45  52 52 B0 20 4D 45 53 53  |00    ;ERR. MESS|
00000DD0: 41 47 45 00 F4 15 70 08  20 20 20 20 20 20 20 4C  |AGE...p.       L|
00000DE0: 44 41 20 23 B1 42 41 53  45 52 52 20 3B 56 45 43  |DA #.BASERR ;VEC|
00000DF0: A4 52 20 A4 00 17 16 7A  08 20 20 20 20 20 20 20  |.R ....z.       |
00000E00: 53 54 41 20 24 30 33 30  31 20 20 20 20 3B 52 45  |STA $0301    ;RE|
00000E10: 53 45 54 20 49 52 51 00  26 16 84 08 20 20 20 20  |SET IRQ.&...    |
00000E20: 20 20 20 43 4C 49 00 4A  16 8E 08 20 20 20 20 20  |   CLI.J...     |
00000E30: 20 20 4C 44 41 20 23 39  36 20 20 20 20 20 20 3B  |  LDA #96      ;|
00000E40: 50 55 54 20 41 4E 20 52  54 53 00 6F 16 98 08 20  |PUT AN RTS.o... |
00000E50: 20 20 20 20 20 20 53 54  41 20 B5 53 54 52 20 20  |      STA .STR  |
00000E60: 20 3B 49 4E 20 46 49 52  53 54 20 42 59 54 45 00  | ;IN FIRST BYTE.|
00000E70: 7E 16 A2 08 20 20 20 20  20 20 20 52 54 53 00 84  |~...       RTS..|
00000E80: 16 AC 08 3B 00 A5 16 B6  08 3B 45 56 45 52 59 20  |...;.....;EVERY |
00000E90: 54 49 4D 45 20 42 41 53  49 43 20 99 53 20 41 4E  |TIME BASIC .S AN|
00000EA0: 20 45 52 52 B0 00 C4 16  C0 08 3B B0 20 41 20 27  | ERR......;. A '|
00000EB0: 87 59 27 20 54 48 45 20  49 52 51 20 56 45 43 A4  |.Y' THE IRQ VEC.|
00000EC0: 52 20 49 53 00 D4 16 CA  08 3B 53 45 54 20 A4 20  |R IS.....;SET . |
00000ED0: 53 4E 41 47 00 DA 16 D4  08 3B 00 E9 16 DE 08 42  |SNAG.....;.....B|
00000EE0: 41 53 45 52 52 20 53 45  49 00 0C 17 E8 08 20 20  |ASERR SEI.....  |
00000EF0: 20 20 20 20 20 4C 44 59  20 23 B3 CB 54 48 45 52  |     LDY #..THER|
00000F00: 20 3B A2 20 49 52 51 20  54 48 41 54 00 2F 17 F2  | ;. IRQ THAT./..|
00000F10: 08 20 20 20 20 20 20 20  53 54 59 20 24 30 33 31  |.       STY $031|
00000F20: 34 20 20 20 20 3B 4C 4F  4F 4B 53 20 81 20 41 00  |4    ;LOOKS . A.|
00000F30: 4F 17 FC 08 20 20 20 20  20 20 20 4C 44 59 20 23  |O...       LDY #|
00000F40: B1 CB 54 48 45 52 20 3B  43 54 52 4C AB 46 33 00  |..THER ;CTRL.F3.|
00000F50: 64 17 06 09 20 20 20 20  20 20 20 53 54 59 20 24  |d...       STY $|
00000F60: 30 33 31 35 00 73 17 10  09 20 20 20 20 20 20 20  |0315.s...       |
00000F70: 43 4C 49 00 88 17 1A 09  20 20 20 20 20 20 20 4A  |CLI.....       J|
00000F80: 4D 50 20 24 45 33 38 42  00 8E 17 24 09 3B 00 AF  |MP $E38B...$.;..|
00000F90: 17 2E 09 3B 54 48 45 20  49 52 51 20 43 4F 4D 45  |...;THE IRQ COME|
00000FA0: 53 20 48 45 52 45 20 A4  20 4C 4F 4F 4B 20 81 00  |S HERE . LOOK ..|
00000FB0: BE 17 38 09 3B 41 20 43  54 52 4C AB 46 33 00 C4  |..8.;A CTRL.F3..|
00000FC0: 17 42 09 3B 00 E6 17 4C  09 CB 54 48 45 52 20 4C  |.B.;...L..THER L|
00000FD0: 44 41 20 24 43 35 20 20  20 20 20 20 3B 4C 4F 4F  |DA $C5      ;LOO|
00000FE0: 4B 20 81 20 46 33 00 F8  17 56 09 20 20 20 20 20  |K . F3...V.     |
00000FF0: 20 20 43 4D 50 20 23 35  00 0D 18 60 09 20 20 20  |  CMP #5...`.   |
00001000: 20 20 20 20 42 45 51 20  59 45 53 46 33 00 22 18  |    BEQ YESF3.".|
00001010: 6A 09 4F 55 54 49 52 51  20 4A 4D 50 20 24 45 41  |j.OUTIRQ JMP $EA|
00001020: 33 31 00 47 18 74 09 59  45 53 46 33 20 20 4C 44  |31.G.t.YESF3  LD|
00001030: 41 20 24 30 32 38 44 20  20 20 20 3B 4C 4F 4F 4B  |A $028D    ;LOOK|
00001040: 20 81 20 43 54 52 4C 00  59 18 7E 09 20 20 20 20  | . CTRL.Y.~.    |
00001050: 20 20 20 43 4D 50 20 23  34 00 6F 18 88 09 20 20  |   CMP #4.o...  |
00001060: 20 20 20 20 20 42 4E 45  20 4F 55 54 49 52 51 00  |     BNE OUTIRQ.|
00001070: 87 18 92 09 20 20 20 20  20 20 20 4C 44 41 20 23  |....       LDA #|
00001080: B1 52 45 54 45 58 54 00  96 18 9C 09 20 20 20 20  |.RETEXT.....    |
00001090: 20 20 20 50 48 41 00 B0  18 A6 09 20 20 20 20 20  |   PHA.....     |
000010A0: 20 20 4C 44 41 20 23 B3  52 45 54 45 58 54 AB 31  |  LDA #.RETEXT.1|
000010B0: 00 BF 18 B0 09 20 20 20  20 20 20 20 50 48 41 00  |.....       PHA.|
000010C0: E4 18 BA 09 20 20 20 20  20 20 20 4A 4D 50 20 46  |....       JMP F|
000010D0: 4C 49 50 4D 4D 20 20 20  3B 46 4C 49 50 20 53 54  |LIPMM   ;FLIP ST|
000010E0: 41 43 4B 53 00 F9 18 C4  09 52 54 48 52 45 32 20  |ACKS.....RTHRE2 |
000010F0: 4A 4D 50 20 24 45 41 33  31 00 FF 18 CE 09 3B 00  |JMP $EA31.....;.|
00001100: 17 19 D8 09 45 58 54 53  4E 47 20 4C 44 41 20 23  |....EXTSNG LDA #|
00001110: B1 52 54 48 52 45 32 00  26 19 E2 09 20 20 20 20  |.RTHRE2.&...    |
00001120: 20 20 20 50 48 41 00 40  19 EC 09 20 20 20 20 20  |   PHA.@...     |
00001130: 20 20 4C 44 41 20 23 B3  52 54 48 52 45 32 AB 31  |  LDA #.RTHRE2.1|
00001140: 00 4F 19 F6 09 20 20 20  20 20 20 20 50 48 41 00  |.O...       PHA.|
00001150: 74 19 00 0A 20 20 20 20  20 20 20 4A 4D 50 20 46  |t...       JMP F|
00001160: 4C 49 50 4D 4D 20 20 20  3B 46 4C 49 50 20 53 54  |LIPMM   ;FLIP ST|
00001170: 41 43 4B 53 00 89 19 0A  0A 52 45 54 45 58 54 20  |ACKS.....RETEXT |
00001180: 4A 4D 50 20 24 45 41 33  31 00 8F 19 14 0A 3B 00  |JMP $EA31.....;.|
00001190: B1 19 1E 0A 3B 54 48 49  53 20 52 4F 55 54 49 4E  |....;THIS ROUTIN|
000011A0: 45 20 46 4C 49 50 53 20  54 48 45 20 53 54 41 43  |E FLIPS THE STAC|
000011B0: 4B 00 D1 19 28 0A 3B 4D  45 4D B0 59 20 57 49 54  |K...(.;MEM.Y WIT|
000011C0: 48 20 41 20 4D 4F 44 8B  49 45 44 20 53 54 41 43  |H A MOD.IED STAC|
000011D0: 4B 00 EB 19 32 0A 3B 49  4E 20 4D 45 4D B0 59 20  |K...2.;IN MEM.Y |
000011E0: 57 49 54 48 4F 55 54 20  55 BF 47 00 FA 19 3C 0A  |WITHOUT U.G...<.|
000011F0: 3B 5A 45 52 4F 20 50 41  47 45 00 00 1A 46 0A 3B  |;ZERO PAGE...F.;|
00001200: 00 17 1A 50 0A 46 4C 49  50 4D 4D 20 4C 44 41 20  |...P.FLIPMM LDA |
00001210: 23 B3 53 54 55 46 46 00  3A 1A 5A 0A 20 20 20 20  |#.STUFF.:.Z.    |
00001220: 20 20 20 53 54 41 20 A4  50 AA 31 20 20 20 20 3B  |   STA .P.1    ;|
00001230: 53 4F 55 52 43 45 20 4C  4F 57 00 52 1A 64 0A 20  |SOURCE LOW.R.d. |
00001240: 20 20 20 20 20 20 53 54  41 20 53 54 55 46 46 32  |      STA STUFF2|
00001250: AA 31 00 69 1A 6E 0A 20  20 20 20 20 20 20 4C 44  |.1.i.n.       LD|
00001260: 41 20 23 B1 53 54 55 46  46 00 8D 1A 78 0A 20 20  |A #.STUFF...x.  |
00001270: 20 20 20 20 20 53 54 41  20 A4 50 AA 32 20 20 20  |     STA .P.2   |
00001280: 20 3B 53 4F 55 52 43 45  20 48 49 47 48 00 A5 1A  | ;SOURCE HIGH...|
00001290: 82 0A 20 20 20 20 20 20  20 53 54 41 20 53 54 55  |..       STA STU|
000012A0: 46 46 32 AA 32 00 B7 1A  8C 0A 20 20 20 20 20 20  |FF2.2.....      |
000012B0: 20 4C 44 41 20 23 30 00  D9 1A 96 0A 20 20 20 20  | LDA #0.....    |
000012C0: 20 20 20 53 54 41 20 53  54 55 46 46 31 AA 31 20  |   STA STUFF1.1 |
000012D0: 3B 54 41 52 A1 20 4C 4F  57 00 F1 1A A0 0A 20 20  |;TAR. LOW.....  |
000012E0: 20 20 20 20 20 53 54 41  20 53 54 55 46 46 33 AA  |     STA STUFF3.|
000012F0: 31 00 14 1B AA 0A 20 20  20 20 20 20 20 53 54 41  |1.....       STA|
00001300: 20 53 54 55 46 46 31 AA  32 20 3B 54 41 52 A1 20  | STUFF1.2 ;TAR. |
00001310: 48 49 47 48 00 2C 1B B4  0A 20 20 20 20 20 20 20  |HIGH.,...       |
00001320: 53 54 41 20 53 54 55 46  46 33 AA 32 00 3E 1B BE  |STA STUFF3.2.>..|
00001330: 0A 20 20 20 20 20 20 20  4C 44 59 20 23 34 00 50  |.       LDY #4.P|
00001340: 1B C8 0A 20 20 20 20 20  20 20 4C 44 58 20 23 32  |...       LDX #2|
00001350: 00 72 1B D2 0A A4 50 4C  4F 50 20 4C 44 41 20 23  |.r....PLOP LDA #|
00001360: 35 32 20 20 20 20 20 20  3B 4F 46 46 20 42 41 53  |52      ;OFF BAS|
00001370: 49 43 00 85 1B DC 0A 20  20 20 20 20 20 20 53 54  |IC.....       ST|
00001380: 41 20 24 30 31 00 A4 1B  E6 0A A4 50 20 20 20 20  |A $01......P    |
00001390: 4C 44 41 20 24 46 46 46  46 2C 58 20 20 3B 53 4F  |LDA $FFFF,X  ;SO|
000013A0: 55 52 43 45 00 BA 1B F0  0A 20 20 20 20 20 20 20  |URCE.....       |
000013B0: 53 54 41 20 54 4D 50 42  59 54 00 DB 1B FA 0A 20  |STA TMPBYT..... |
000013C0: 20 20 20 20 20 20 4C 44  41 20 23 35 35 20 20 20  |      LDA #55   |
000013D0: 20 20 20 3B 91 20 42 41  53 49 43 00 EE 1B 04 0B  |   ;. BASIC.....|
000013E0: 20 20 20 20 20 20 20 53  54 41 20 24 30 31 00 0C  |       STA $01..|
000013F0: 1C 0E 0B 53 54 55 46 46  31 20 4C 44 41 20 24 46  |...STUFF1 LDA $F|
00001400: 46 46 46 2C 58 20 20 3B  54 41 52 A1 00 2C 1C 18  |FFF,X  ;TAR..,..|
00001410: 0B 53 54 55 46 46 32 20  53 54 41 20 24 46 46 46  |.STUFF2 STA $FFF|
00001420: 46 2C 58 20 20 3B 53 4F  55 52 43 45 00 42 1C 22  |F,X  ;SOURCE.B."|
00001430: 0B 20 20 20 20 20 20 20  4C 44 41 20 54 4D 50 42  |.       LDA TMPB|
00001440: 59 54 00 60 1C 2C 0B 53  54 55 46 46 33 20 53 54  |YT.`.,.STUFF3 ST|
00001450: 41 20 24 46 46 46 46 2C  58 20 20 3B 54 41 52 A1  |A $FFFF,X  ;TAR.|
00001460: 00 6F 1C 36 0B 20 20 20  20 20 20 20 49 4E 58 00  |.o.6.       INX.|
00001470: 84 1C 40 0B 20 20 20 20  20 20 20 42 4E 45 20 A4  |..@.       BNE .|
00001480: 50 4C 4F 50 00 98 1C 4A  0B 20 20 20 20 20 20 20  |PLOP...J.       |
00001490: 49 4E 43 20 A4 50 AA 32  00 B0 1C 54 0B 20 20 20  |INC .P.2...T.   |
000014A0: 20 20 20 20 49 4E 43 20  53 54 55 46 46 31 AA 32  |    INC STUFF1.2|
000014B0: 00 C8 1C 5E 0B 20 20 20  20 20 20 20 49 4E 43 20  |...^.       INC |
000014C0: 53 54 55 46 46 32 AA 32  00 E0 1C 68 0B 20 20 20  |STUFF2.2...h.   |
000014D0: 20 20 20 20 49 4E 43 20  53 54 55 46 46 33 AA 32  |    INC STUFF3.2|
000014E0: 00 EF 1C 72 0B 20 20 20  20 20 20 20 44 45 59 00  |...r.       DEY.|
000014F0: 04 1D 7C 0B 20 20 20 20  20 20 20 42 4E 45 20 A4  |..|.       BNE .|
00001500: 50 4C 4F 50 00 28 1D 86  0B 20 20 20 20 20 20 20  |PLOP.(...       |
00001510: 4C 44 41 20 53 54 4B 54  4D 50 20 20 20 3B 46 4C  |LDA STKTMP   ;FL|
00001520: 49 50 20 53 54 41 43 4B  00 48 1D 90 0B 20 20 20  |IP STACK.H...   |
00001530: 20 20 20 20 54 53 58 20  20 20 20 20 20 20 20 20  |    TSX         |
00001540: 20 3B 50 4F B5 45 52 53  00 5E 1D 9A 0B 20 20 20  | ;PO.ERS.^...   |
00001550: 20 20 20 20 53 54 58 20  53 54 4B 54 4D 50 00 6D  |    STX STKTMP.m|
00001560: 1D A4 0B 20 20 20 20 20  20 20 54 41 58 00 7C 1D  |...       TAX.|.|
00001570: AE 0B 20 20 20 20 20 20  20 54 58 53 00 8B 1D B8  |..       TXS....|
00001580: 0B 20 20 20 20 20 20 20  52 54 53 00 91 1D C2 0B  |.       RTS.....|
00001590: 3B 00 B7 1D CC 0B 53 54  41 52 54 20 20 4C 44 59  |;.....START  LDY|
000015A0: 20 23 30 20 20 20 20 20  20 20 3B 41 43 54 55 41  | #0       ;ACTUA|
000015B0: 4C 20 53 54 41 52 54 00  DB 1D D6 0B 20 20 20 20  |L START.....    |
000015C0: 20 20 20 53 54 59 20 58  B9 20 20 20 20 20 3B 4F  |   STY X.     ;O|
000015D0: 46 20 53 4E 41 47 20 43  4F 44 45 00 EF 1D E0 0B  |F SNAG CODE.....|
000015E0: 20 20 20 20 20 20 20 4C  44 41 20 23 32 31 36 00  |       LDA #216.|
000015F0: 01 1E EA 0B 20 20 20 20  20 20 20 53 54 41 20 59  |....       STA Y|
00001600: B9 00 25 1E F4 0B 20 20  20 20 20 20 20 4C 44 41  |..%...       LDA|
00001610: 20 23 B3 43 4F 4C B0 20  20 3B 4D 41 4B 45 20 41  | #.COL.  ;MAKE A|
00001620: 20 43 4F 50 59 00 48 1E  FE 0B 20 20 20 20 20 20  | COPY.H...      |
00001630: 20 53 54 41 20 42 4C 4F  43 4B 58 20 20 20 3B 4F  | STA BLOCKX   ;O|
00001640: 46 20 53 43 52 45 45 4E  00 65 1E 08 0C 20 20 20  |F SCREEN.e...   |
00001650: 20 20 20 20 4C 44 41 20  23 B1 43 4F 4C B0 20 20  |    LDA #.COL.  |
00001660: 3B 43 4F 4C B0 00 7B 1E  12 0C 20 20 20 20 20 20  |;COL..{...      |
00001670: 20 53 54 41 20 42 4C 4F  43 4B 59 00 8D 1E 1C 0C  | STA BLOCKY.....|
00001680: 20 20 20 20 20 20 20 4C  44 58 20 23 34 00 A3 1E  |       LDX #4...|
00001690: 26 0C 54 52 41 4E 53 20  20 4C 44 41 20 28 58 B9  |&.TRANS  LDA (X.|
000016A0: 29 2C 59 00 BD 1E 30 0C  20 20 20 20 20 20 20 53  |),Y...0.       S|
000016B0: 54 41 20 28 42 4C 4F 43  4B 58 29 2C 59 00 CC 1E  |TA (BLOCKX),Y...|
000016C0: 3A 0C 20 20 20 20 20 20  20 49 4E 59 00 E1 1E 44  |:.       INY...D|
000016D0: 0C 20 20 20 20 20 20 20  42 4E 45 20 54 52 41 4E  |.       BNE TRAN|
000016E0: 53 00 F3 1E 4E 0C 20 20  20 20 20 20 20 49 4E 43  |S...N.       INC|
000016F0: 20 59 B9 00 09 1F 58 0C  20 20 20 20 20 20 20 49  | Y....X.       I|
00001700: 4E 43 20 42 4C 4F 43 4B  59 00 18 1F 62 0C 20 20  |NC BLOCKY...b.  |
00001710: 20 20 20 20 20 44 45 58  00 3F 1F 6C 0C 20 20 20  |     DEX.?.l.   |
00001720: 20 20 20 20 42 4E 45 20  54 52 41 4E 53 20 20 20  |    BNE TRANS   |
00001730: 20 3B 53 45 54 20 53 4E  41 47 20 43 55 52 AB 00  | ;SET SNAG CUR..|
00001740: 60 1F 76 0C 20 20 20 20  20 20 20 4C 44 41 20 35  |`.v.       LDA 5|
00001750: 33 32 38 31 20 20 20 20  3B 53 B0 20 43 4F 4C B0  |3281    ;S. COL.|
00001760: 00 82 1F 80 0C 20 20 20  20 20 20 20 AF 20 23 31  |.....       . #1|
00001770: 35 20 20 20 20 20 20 3B  41 43 43 B0 44 49 4E 47  |5      ;ACC.DING|
00001780: 20 A4 00 A1 1F 8A 0C 20  20 20 20 20 20 20 54 41  | ......       TA|
00001790: 58 20 20 20 20 20 20 20  20 20 20 3B 54 41 42 4C  |X          ;TABL|
000017A0: 45 00 B8 1F 94 0C 20 20  20 20 20 20 20 4C 44 41  |E.....       LDA|
000017B0: 20 43 4F 4C B0 53 2C 58  00 CE 1F 9E 0C 20 20 20  | COL.S,X.....   |
000017C0: 20 20 20 20 53 54 41 20  43 55 52 43 4F 4C 00 F5  |    STA CURCOL..|
000017D0: 1F A8 0C 20 20 20 20 20  20 20 4C 44 58 20 23 32  |...       LDX #2|
000017E0: 35 35 20 20 20 20 20 3B  44 49 53 41 42 4C 45 20  |55     ;DISABLE |
000017F0: 42 4C 4F 43 4B 00 1C 20  B2 0C 20 20 20 20 20 20  |BLOCK.. ..      |
00001800: 20 53 54 58 20 42 4C 4F  43 4B 58 20 20 20 3B 57  | STX BLOCKX   ;W|
00001810: 49 54 48 20 54 57 4F 20  46 46 27 53 00 32 20 BC  |ITH TWO FF'S.2 .|
00001820: 0C 20 20 20 20 20 20 20  53 54 58 20 42 4C 4F 43  |.       STX BLOC|
00001830: 4B 59 00 41 20 C6 0C 20  20 20 20 20 20 20 49 4E  |KY.A ..       IN|
00001840: 58 00 65 20 D0 0C 20 20  20 20 20 20 20 53 54 58  |X.e ..       STX|
00001850: 20 4F 4C 44 43 4F 4C 20  3B 31 20 B2 20 4F 4C 44  | OLDCOL ;1 . OLD|
00001860: 20 43 4F 4C B0 00 8A 20  DA 0C 20 20 20 20 20 20  | COL... ..      |
00001870: 20 53 54 58 20 41 44 44  4D 4F 56 20 3B 31 20 B2  | STX ADDMOV ;1 .|
00001880: 20 41 44 44 20 58 20 B0  20 59 00 AF 20 E4 0C 20  | ADD X . Y.. .. |
00001890: 20 20 20 20 20 20 53 54  58 20 46 4C 50 50 4C 54  |      STX FLPPLT|
000018A0: 20 3B 31 20 B2 20 59 2C  58 20 A8 20 58 2C 59 00  | ;1 . Y,X . X,Y.|
000018B0: D2 20 EE 0C 20 20 20 20  20 20 20 53 54 58 20 4F  |. ..       STX O|
000018C0: 55 54 50 55 54 20 3B 31  20 B2 20 44 49 53 4B AD  |UTPUT ;1 . DISK.|
000018D0: 99 52 00 F3 20 F8 0C 20  20 20 20 20 20 20 53 54  |.R.. ..       ST|
000018E0: 58 20 58 B9 20 20 20 3B  43 55 52 53 B0 20 58 20  |X X.   ;CURS. X |
000018F0: AF 20 59 00 05 21 02 0D  20 20 20 20 20 20 20 53  |. Y..!..       S|
00001900: 54 58 20 59 B9 00 14 21  0C 0D 20 20 20 20 20 20  |TX Y...!..      |
00001910: 20 54 58 41 00 38 21 16  0D 20 20 20 20 20 20 20  | TXA.8!..       |
00001920: 54 41 59 20 20 20 20 20  20 20 20 3B 50 4C 4F 54  |TAY        ;PLOT|
00001930: 20 49 4E 49 54 49 41 4C  00 55 21 20 0D 20 20 20  | INITIAL.U! .   |
00001940: 20 20 20 20 4A 53 52 20  52 45 56 45 52 53 20 3B  |    JSR REVERS ;|
00001950: 43 55 52 53 B0 00 65 21  2A 0D A1 4D B0 20 4A 53  |CURS..e!*..M. JS|
00001960: 52 20 A1 49 4E 00 78 21  34 0D 20 20 20 20 20 20  |R .IN.x!4.      |
00001970: 20 42 45 51 20 A1 4D B0  00 9B 21 3E 0D 20 20 20  | BEQ .M...!>.   |
00001980: 20 20 20 20 43 4D 50 20  23 22 85 22 20 20 20 3B  |    CMP #"."   ;|
00001990: 49 53 20 49 54 20 41 4E  20 46 31 00 AE 21 48 0D  |IS IT AN F1..!H.|
000019A0: 20 20 20 20 20 20 20 42  4E 45 20 4E 4F 90 00 D3  |       BNE NO...|
000019B0: 21 52 0D 20 20 20 20 20  20 20 4A 53 52 20 55 4E  |!R.       JSR UN|
000019C0: 42 4C 43 4B 20 3B 59 45  53 2C 20 53 48 55 54 20  |BLCK ;YES, SHUT |
000019D0: 4F 46 46 00 F5 21 5C 0D  20 20 20 20 20 20 20 4C  |OFF..!\.       L|
000019E0: 44 58 20 58 B9 20 20 20  3B 42 4C 4F 43 4B 2C 20  |DX X.   ;BLOCK, |
000019F0: 45 52 41 53 45 00 17 22  66 0D 20 20 20 20 20 20  |ERASE.."f.      |
00001A00: 20 4C 44 59 20 59 B9 20  20 20 3B 43 55 52 53 B0  | LDY Y.   ;CURS.|
00001A10: 20 AF 20 45 58 49 54 00  39 22 70 0D 20 20 20 20  | . EXIT.9"p.    |
00001A20: 20 20 20 49 4E 43 20 4F  4C 44 43 4F 4C 20 3B 41  |   INC OLDCOL ;A|
00001A30: 43 43 B0 44 49 4E 47 20  A4 00 5E 22 7A 0D 20 20  |CC.DING ..^"z.  |
00001A40: 20 20 20 20 20 4A 53 52  20 52 45 56 45 52 53 20  |     JSR REVERS |
00001A50: 3B 54 48 45 20 42 52 4B  20 56 45 43 A4 52 00 6D  |;THE BRK VEC.R.m|
00001A60: 22 84 0D 20 20 20 20 20  20 20 42 52 4B 00 8B 22  |"..       BRK.."|
00001A70: 8E 0D 20 20 20 20 20 20  20 4E 4F 50 3A 4E 4F 50  |..       NOP:NOP|
00001A80: 3A 4E 4F 50 20 3B 50 43  20 8E 53 00 A8 22 98 0D  |:NOP ;PC .S.."..|
00001A90: 20 20 20 20 20 20 20 4A  4D 50 20 53 54 41 52 54  |       JMP START|
00001AA0: 20 20 20 3B 48 45 52 45  00 C9 22 A2 0D 4E 4F 90  |   ;HERE.."..NO.|
00001AB0: 20 43 4D 50 20 23 22 1D  22 20 20 20 20 3B 43 55  | CMP #"."    ;CU|
00001AC0: 52 53 B0 20 52 49 47 48  54 00 DD 22 AC 0D 20 20  |RS. RIGHT.."..  |
00001AD0: 20 20 20 20 20 42 4E 45  20 A8 52 49 54 00 EF 22  |     BNE .RIT.."|
00001AE0: B6 0D 20 20 20 20 20 20  20 4C 44 58 20 58 B9 00  |..       LDX X..|
00001AF0: 02 23 C0 0D 20 20 20 20  20 20 20 43 50 58 20 23  |.#..       CPX #|
00001B00: 33 39 00 16 23 CA 0D 20  20 20 20 20 20 20 42 45  |39..#..       BE|
00001B10: 51 20 A8 52 49 54 00 3B  23 D4 0D 20 20 20 20 20  |Q .RIT.;#..     |
00001B20: 20 20 49 4E 43 20 41 44  44 4D 4F 56 20 20 3B 53  |  INC ADDMOV  ;S|
00001B30: 45 54 20 41 44 44 20 46  4C 41 47 00 5E 23 DE 0D  |ET ADD FLAG.^#..|
00001B40: 20 20 20 20 20 20 20 4A  53 52 20 58 42 4C 4F 43  |       JSR XBLOC|
00001B50: 4B 20 20 3B 4D 4F 56 45  20 52 49 47 48 54 00 85  |K  ;MOVE RIGHT..|
00001B60: 23 E8 0D 20 20 20 20 20  20 20 44 45 43 20 41 44  |#..       DEC AD|
00001B70: 44 4D 4F 56 20 20 3B 55  4E 53 45 54 20 41 44 44  |DMOV  ;UNSET ADD|
00001B80: 20 46 4C 41 47 00 A6 23  F2 0D A8 52 49 54 20 43  | FLAG..#...RIT C|
00001B90: 4D 50 20 23 22 9D 22 20  20 20 20 3B 43 55 52 53  |MP #"."    ;CURS|
00001BA0: B0 20 4C 45 46 54 00 BA  23 FC 0D 20 20 20 20 20  |. LEFT..#..     |
00001BB0: 20 20 42 4E 45 20 A8 4C  46 54 00 CC 23 06 0E 20  |  BNE .LFT..#.. |
00001BC0: 20 20 20 20 20 20 4C 44  58 20 58 B9 00 E0 23 10  |      LDX X...#.|
00001BD0: 0E 20 20 20 20 20 20 20  42 45 51 20 A8 4C 46 54  |.       BEQ .LFT|
00001BE0: 00 06 24 1A 0E 20 20 20  20 20 20 20 49 4E 43 20  |..$..       INC |
00001BF0: 4F 4C 44 43 4F 4C 20 20  3B 53 45 54 20 43 4F 4C  |OLDCOL  ;SET COL|
00001C00: B0 20 46 4C 41 47 00 28  24 24 0E 20 20 20 20 20  |. FLAG.($$.     |
00001C10: 20 20 4A 53 52 20 58 42  4C 4F 43 4B 20 20 3B 4D  |  JSR XBLOCK  ;M|
00001C20: 4F 56 45 20 4C 45 46 54  00 4F 24 2E 0E 20 20 20  |OVE LEFT.O$..   |
00001C30: 20 20 20 20 44 45 43 20  4F 4C 44 43 4F 4C 20 20  |    DEC OLDCOL  |
00001C40: 3B 55 4E 53 45 54 20 43  4F 4C 20 46 4C 41 47 00  |;UNSET COL FLAG.|
00001C50: 70 24 38 0E A8 4C 46 54  20 43 4D 50 20 23 22 11  |p$8..LFT CMP #".|
00001C60: 22 20 20 20 20 3B 43 55  52 53 B0 20 44 4F 57 4E  |"    ;CURS. DOWN|
00001C70: 00 84 24 42 0E 20 20 20  20 20 20 20 42 4E 45 20  |..$B.       BNE |
00001C80: A8 44 57 4E 00 96 24 4C  0E 20 20 20 20 20 20 20  |.DWN..$L.       |
00001C90: 4C 44 58 20 59 B9 00 A9  24 56 0E 20 20 20 20 20  |LDX Y...$V.     |
00001CA0: 20 20 43 50 58 20 23 32  34 00 BD 24 60 0E 20 20  |  CPX #24..$`.  |
00001CB0: 20 20 20 20 20 42 45 51  20 A8 44 57 4E 00 E2 24  |     BEQ .DWN..$|
00001CC0: 6A 0E 20 20 20 20 20 20  20 49 4E 43 20 41 44 44  |j.       INC ADD|
00001CD0: 4D 4F 56 20 20 3B 53 45  54 20 41 44 44 20 46 4C  |MOV  ;SET ADD FL|
00001CE0: 41 47 00 04 25 74 0E 20  20 20 20 20 20 20 4A 53  |AG..%t.       JS|
00001CF0: 52 20 59 42 4C 4F 43 4B  20 20 3B 4D 4F 56 45 20  |R YBLOCK  ;MOVE |
00001D00: 44 4F 57 4E 00 2B 25 7E  0E 20 20 20 20 20 20 20  |DOWN.+%~.       |
00001D10: 44 45 43 20 41 44 44 4D  4F 56 20 20 3B 55 4E 53  |DEC ADDMOV  ;UNS|
00001D20: 45 54 20 41 44 44 20 46  4C 41 47 00 4A 25 88 0E  |ET ADD FLAG.J%..|
00001D30: A8 44 57 4E 20 43 4D 50  20 23 22 91 22 20 20 20  |.DWN CMP #"."   |
00001D40: 20 3B 43 55 52 53 B0 20  55 50 00 5D 25 92 0E 20  | ;CURS. UP.]%.. |
00001D50: 20 20 20 20 20 20 42 4E  45 20 A8 55 50 00 6F 25  |      BNE .UP.o%|
00001D60: 9C 0E 20 20 20 20 20 20  20 4C 44 58 20 59 B9 00  |..       LDX Y..|
00001D70: 82 25 A6 0E 20 20 20 20  20 20 20 42 45 51 20 A8  |.%..       BEQ .|
00001D80: 55 50 00 A8 25 B0 0E 20  20 20 20 20 20 20 49 4E  |UP..%..       IN|
00001D90: 43 20 4F 4C 44 43 4F 4C  20 20 3B 53 45 54 20 43  |C OLDCOL  ;SET C|
00001DA0: 4F 4C B0 20 46 4C 41 47  00 C8 25 BA 0E 20 20 20  |OL. FLAG..%..   |
00001DB0: 20 20 20 20 4A 53 52 20  59 42 4C 4F 43 4B 20 20  |    JSR YBLOCK  |
00001DC0: 3B 4D 4F 56 45 20 55 50  00 EF 25 C4 0E 20 20 20  |;MOVE UP..%..   |
00001DD0: 20 20 20 20 44 45 43 20  4F 4C 44 43 4F 4C 20 20  |    DEC OLDCOL  |
00001DE0: 3B 55 4E 53 45 54 20 43  4F 4C 20 46 4C 41 47 00  |;UNSET COL FLAG.|
00001DF0: 11 26 CE 0E A8 55 50 20  20 43 4D 50 20 23 22 92  |.&...UP  CMP #".|
00001E00: 22 20 20 20 20 3B 52 45  56 45 52 53 45 20 4F 46  |"    ;REVERSE OF|
00001E10: 46 00 25 26 D8 0E 20 20  20 20 20 20 20 42 4E 45  |F.%&..       BNE|
00001E20: 20 A8 55 4E 42 00 4C 26  E2 0E 20 20 20 20 20 20  | .UNB.L&..      |
00001E30: 20 4A 53 52 20 55 4E 42  4C 43 4B 20 20 3B 53 48  | JSR UNBLCK  ;SH|
00001E40: 55 54 20 4F 46 46 20 42  4C 4F 43 4B 00 6C 26 EC  |UT OFF BLOCK.l&.|
00001E50: 0E A8 55 4E 42 20 43 4D  50 20 23 22 12 22 20 20  |..UNB CMP #"."  |
00001E60: 20 20 3B 52 45 56 45 52  53 45 20 91 00 82 26 F6  |  ;REVERSE ...&.|
00001E70: 0E 20 20 20 20 20 20 20  42 4E 45 20 4E 4F 53 42  |.       BNE NOSB|
00001E80: 4C 4B 00 A6 26 00 0F 20  20 20 20 20 20 20 4A 53  |LK..&..       JS|
00001E90: 52 20 91 42 4C 43 4B 20  20 3B 54 55 52 4E 20 91  |R .BLCK  ;TURN .|
00001EA0: 20 42 4C 4F 43 4B 00 C2  26 0A 0F 4E 4F 53 42 4C  | BLOCK..&..NOSBL|
00001EB0: 4B 20 43 4D 50 20 23 31  33 20 20 20 20 20 3B 41  |K CMP #13     ;A|
00001EC0: 20 8E 00 D6 26 14 0F 20  20 20 20 20 20 20 42 4E  | ...&..       BN|
00001ED0: 45 20 A8 52 45 54 00 F7  26 1E 0F 20 20 20 20 20  |E .RET..&..     |
00001EE0: 20 20 4A 4D 50 20 A2 4D  45 4E 20 20 3B CB 20 A4  |  JMP .MEN  ;. .|
00001EF0: 20 A2 20 4D 45 4E 55 00  08 27 28 0F A8 52 45 54  | . MENU..'(..RET|
00001F00: 20 4A 4D 50 20 A1 4D B0  00 2B 27 32 0F 20 20 20  | JMP .M..+'2.   |
00001F10: 20 20 20 20 4A 4D 50 20  A1 4D B0 20 20 3B 33 20  |    JMP .M.  ;3 |
00001F20: 45 58 54 52 41 20 42 59  54 45 53 00 4C 27 3C 0F  |EXTRA BYTES.L'<.|
00001F30: 20 20 20 20 20 20 20 52  54 53 20 20 20 20 20 20  |       RTS      |
00001F40: 20 20 20 3B 81 20 BD 41  4E 53 49 91 00 52 27 46  |   ;. .ANSI..R'F|
00001F50: 0F 3B 00 74 27 50 0F A2  4D 45 4E 20 4A 53 52 20  |.;.t'P..MEN JSR |
00001F60: 50 4C 49 4E 45 53 20 20  3B 50 55 54 20 4C 49 4E  |PLINES  ;PUT LIN|
00001F70: 45 53 20 91 00 94 27 5A  0F A2 4D 4E 32 20 4C 44  |ES ...'Z..MN2 LD|
00001F80: 41 20 43 55 52 43 4F 4C  20 20 3B 53 45 54 20 43  |A CURCOL  ;SET C|
00001F90: 55 52 53 B0 00 B1 27 64  0F 20 20 20 20 20 20 20  |URS...'d.       |
00001FA0: 53 54 41 20 43 55 52 53  43 4F 20 20 3B 43 4F 4C  |STA CURSCO  ;COL|
00001FB0: B0 00 D6 27 6E 0F 20 20  20 20 20 20 20 4C 44 41  |...'n.       LDA|
00001FC0: 20 23 B3 4D 45 4E 55 31  20 3B 44 49 53 50 4C 41  | #.MENU1 ;DISPLA|
00001FD0: 59 20 53 4E 41 47 00 FA  27 78 0F 20 20 20 20 20  |Y SNAG..'x.     |
00001FE0: 20 20 4C 44 59 20 23 B1  4D 45 4E 55 31 20 3B 4D  |  LDY #.MENU1 ;M|
00001FF0: 45 4E 55 20 4F 50 54 49  91 53 00 10 28 82 0F 20  |ENU OPTI.S..(.. |
00002000: 20 20 20 20 20 20 4A 53  52 20 53 54 52 49 4E 47  |      JSR STRING|
00002010: 00 2A 28 8C 0F A1 A2 20  4A 53 52 20 A1 49 4E 20  |.*(.... JSR .IN |
00002020: 20 20 3B A1 20 41 20 4B  45 59 00 3C 28 96 0F 20  |  ;. A KEY.<(.. |
00002030: 20 20 20 20 20 20 42 45  51 20 A1 A2 00 60 28 A0  |      BEQ ...`(.|
00002040: 0F 20 20 20 20 20 20 20  43 4D 50 20 23 22 85 22  |.       CMP #"."|
00002050: 20 20 20 20 3B 49 53 20  49 54 20 41 4E 20 46 31  |    ;IS IT AN F1|
00002060: 00 81 28 AA 0F 20 20 20  20 20 20 20 42 4E 45 20  |..(..       BNE |
00002070: A8 45 53 43 20 20 3B 4E  4F 2C 20 4D 4F 56 45 20  |.ESC  ;NO, MOVE |
00002080: 91 00 9E 28 B4 0F 20 20  20 20 20 20 20 4A 53 52  |...(..       JSR|
00002090: 20 4C 45 56 A2 20 20 3B  59 45 53 2C 20 8E 00 BE  | LEV.  ;YES, ...|
000020A0: 28 BE 0F 20 20 20 20 20  20 20 4A 4D 50 20 A1 4D  |(..       JMP .M|
000020B0: B0 20 20 3B 53 43 52 45  45 4E 20 AF 20 CB 00 DF  |.  ;SCREEN . ...|
000020C0: 28 C8 0F A8 45 53 43 20  43 4D 50 20 23 22 50 22  |(...ESC CMP #"P"|
000020D0: 20 20 20 20 3B 49 53 20  4B 45 59 20 99 45 52 00  |    ;IS KEY .ER.|
000020E0: 00 29 D2 0F 20 20 20 20  20 20 20 42 4E 45 20 A8  |.)..       BNE .|
000020F0: 50 4E 54 20 20 3B 4E 4F  2C 20 4D 4F 56 45 20 91  |PNT  ;NO, MOVE .|
00002100: 00 1E 29 DC 0F 20 20 20  20 20 20 20 4A 53 52 20  |..)..       JSR |
00002110: 4F 50 4E 50 4E 54 20 20  3B 9F 20 99 45 52 00 3D  |OPNPNT  ;. .ER.=|
00002120: 29 E6 0F 20 20 20 20 20  20 20 4C 44 41 20 23 31  |)..       LDA #1|
00002130: 33 20 20 20 20 20 3B 99  20 41 20 43 52 00 53 29  |3     ;. A CR.S)|
00002140: F0 0F 20 20 20 20 20 20  20 4A 53 52 20 43 48 52  |..       JSR CHR|
00002150: 4F 55 54 00 71 29 FA 0F  20 20 20 20 20 20 20 4A  |OUT.q)..       J|
00002160: 53 52 20 43 4C 53 46 49  4C 20 20 3B A0 20 99 45  |SR CLSFIL  ;. .E|
00002170: 52 00 91 29 04 10 20 20  20 20 20 20 20 4C 44 41  |R..)..       LDA|
00002180: 20 24 39 30 20 20 20 20  3B 49 53 20 99 45 52 20  | $90    ;IS .ER |
00002190: 91 00 B3 29 0E 10 20 20  20 20 20 20 20 42 45 51  |...)..       BEQ|
000021A0: 20 CB 41 48 45 44 20 3B  59 45 53 2C 20 4D 4F 56  | .AHED ;YES, MOV|
000021B0: 45 20 91 00 D8 29 18 10  20 20 20 20 20 20 20 4A  |E ...)..       J|
000021C0: 4D 50 20 53 48 4F 45 52  52 20 3B 4E 4F 2C 20 53  |MP SHOERR ;NO, S|
000021D0: 48 4F 57 20 45 52 52 B0  00 F7 29 22 10 CB 41 48  |HOW ERR...)"..AH|
000021E0: 45 44 20 4A 53 52 20 4F  50 4E 50 4E 54 20 3B 52  |ED JSR OPNPNT ;R|
000021F0: 45 AB 9F 20 99 45 52 00  16 2A 2C 10 20 20 20 20  |E.. .ER..*,.    |
00002200: 20 20 20 4A 4D 50 20 50  52 4F 43 45 32 20 3B 99  |   JMP PROCE2 ;.|
00002210: 20 42 4C 4F 43 4B 00 33  2A 36 10 4F 50 4E 50 4E  | BLOCK.3*6.OPNPN|
00002220: 54 20 4C 44 59 20 23 24  46 46 20 20 20 3B 96 41  |T LDY #$FF   ;.A|
00002230: 55 4C 54 00 4D 2A 40 10  20 20 20 20 20 20 20 4C  |ULT.M*@.       L|
00002240: 44 41 20 23 25 30 30 30  30 30 30 31 30 00 73 2A  |DA #%00000010.s*|
00002250: 4A 10 20 20 20 20 20 20  20 42 49 54 20 35 33 32  |J.       BIT 532|
00002260: 37 32 20 20 20 3B 43 48  45 43 4B 20 55 50 20 43  |72   ;CHECK UP C|
00002270: 41 53 45 00 89 2A 54 10  20 20 20 20 20 20 20 42  |ASE..*T.       B|
00002280: 45 51 20 55 50 43 41 53  45 00 AC 2A 5E 10 20 20  |EQ UPCASE..*^.  |
00002290: 20 20 20 20 20 4C 44 59  20 23 37 20 20 20 20 20  |     LDY #7     |
000022A0: 3B 4E 4F 2C 20 99 20 4C  4F 57 45 52 00 CF 2A 68  |;NO, . LOWER..*h|
000022B0: 10 55 50 43 41 53 45 20  4C 44 41 20 23 33 32 20  |.UPCASE LDA #32 |
000022C0: 20 20 20 3B 46 49 4C 45  20 4E 55 4D 42 45 52 00  |   ;FILE NUMBER.|
000022D0: F4 2A 72 10 20 20 20 20  20 20 20 4C 44 58 20 23  |.*r.       LDX #|
000022E0: 34 20 20 20 20 20 3B 44  45 56 49 43 45 20 4E 55  |4     ;DEVICE NU|
000022F0: 4D 42 45 52 00 1B 2B 7C  10 20 20 20 20 20 20 20  |MBER..+|.       |
00002300: 4A 53 52 20 53 45 54 4C  46 53 20 3B 53 45 54 20  |JSR SETLFS ;SET |
00002310: 55 50 20 46 49 4C 45 20  23 33 32 00 40 2B 86 10  |UP FILE #32.@+..|
00002320: 20 20 20 20 20 20 20 4C  44 41 20 23 30 20 20 20  |       LDA #0   |
00002330: 20 20 3B 53 45 54 20 4E  49 4C 4C 20 4E 41 4D 45  |  ;SET NILL NAME|
00002340: 00 56 2B 90 10 20 20 20  20 20 20 20 4A 53 52 20  |.V+..       JSR |
00002350: 53 45 54 4E 41 4D 00 78  2B 9A 10 20 20 20 20 20  |SETNAM.x+..     |
00002360: 20 20 4A 53 52 20 4C 45  56 A2 20 3B 45 52 41 53  |  JSR LEV. ;ERAS|
00002370: 45 20 A2 20 4D 45 4E 55  00 97 2B A4 10 20 20 20  |E . MENU..+..   |
00002380: 20 20 20 20 4A 53 52 20  9F 20 20 20 3B 9F 20 46  |    JSR .   ;. F|
00002390: 49 4C 45 20 23 33 32 00  BC 2B AE 10 20 20 20 20  |ILE #32..+..    |
000023A0: 20 20 20 4C 44 58 20 23  33 32 20 20 20 20 3B 4D  |   LDX #32    ;M|
000023B0: 41 4B 45 20 46 49 4C 45  20 23 33 32 00 E2 2B B8  |AKE FILE #32..+.|
000023C0: 10 20 20 20 20 20 20 20  4A 53 52 20 43 48 4B 4F  |.       JSR CHKO|
000023D0: 55 54 20 3B 41 4E 20 4F  55 54 50 55 54 20 46 49  |UT ;AN OUTPUT FI|
000023E0: 4C 45 00 F1 2B C2 10 20  20 20 20 20 20 20 52 54  |LE..+..       RT|
000023F0: 53 00 14 2C CC 10 A8 50  4E 54 20 43 4D 50 20 23  |S..,...PNT CMP #|
00002400: 22 46 22 20 20 20 3B 49  53 20 4B 45 59 20 41 20  |"F"   ;IS KEY A |
00002410: 46 49 4C 45 00 33 2C D6  10 20 20 20 20 20 20 20  |FILE.3,..       |
00002420: 42 4E 45 20 A1 A2 20 3B  4E 4F 2C 20 CB 20 A1 20  |BNE .. ;NO, . . |
00002430: 4B 45 59 00 56 2C E0 10  20 20 20 20 20 20 20 4A  |KEY.V,..       J|
00002440: 53 52 20 53 50 41 43 45  20 20 3B 43 4C 45 41 52  |SR SPACE  ;CLEAR|
00002450: 20 53 50 41 43 45 00 74  2C EA 10 20 20 20 20 20  | SPACE.t,..     |
00002460: 20 20 4C 44 41 20 23 B3  4D 45 4E 55 32 20 3B 41  |  LDA #.MENU2 ;A|
00002470: 53 4B 20 81 00 96 2C F4  10 20 20 20 20 20 20 20  |SK ...,..       |
00002480: 4C 44 59 20 23 B1 4D 45  4E 55 32 20 3B 46 49 4C  |LDY #.MENU2 ;FIL|
00002490: 45 20 4E 41 4D 45 00 AC  2C FE 10 20 20 20 20 20  |E NAME..,..     |
000024A0: 20 20 4A 53 52 20 53 54  52 49 4E 47 00 BE 2C 08  |  JSR STRING..,.|
000024B0: 11 20 20 20 20 20 20 20  4C 44 58 20 23 30 00 DB  |.       LDX #0..|
000024C0: 2C 12 11 4D B0 4E 41 4D  20 4C 44 41 20 A5 41 4D  |,..M.NAM LDA .AM|
000024D0: 45 2C 58 20 3B 99 20 4C  41 53 54 00 00 2D 1C 11  |E,X ;. LAST..-..|
000024E0: 20 20 20 20 20 20 20 43  4D 50 20 23 22 2C 22 20  |       CMP #"," |
000024F0: 20 20 20 3B 4E 41 4D 45  20 55 4E 54 49 4C 20 41  |   ;NAME UNTIL A|
00002500: 00 23 2D 26 11 20 20 20  20 20 20 20 42 45 51 20  |.#-&.       BEQ |
00002510: A8 4E 41 4D 20 20 3B 43  4F 4D 4D 41 20 28 2C 29  |.NAM  ;COMMA (,)|
00002520: 20 49 53 00 3F 2D 30 11  20 20 20 20 20 20 20 4A  | IS.?-0.       J|
00002530: 53 52 20 43 48 52 4F 55  54 20 20 3B 48 49 54 00  |SR CHROUT  ;HIT.|
00002540: 4E 2D 3A 11 20 20 20 20  20 20 20 49 4E 58 00 63  |N-:.       INX.c|
00002550: 2D 44 11 20 20 20 20 20  20 20 42 4E 45 20 4D B0  |-D.       BNE M.|
00002560: 4E 41 4D 00 7F 2D 4E 11  A8 4E 41 4D 20 4C 44 58  |NAM..-N..NAM LDX|
00002570: 20 23 32 32 20 20 20 20  20 3B B9 49 54 49 91 00  | #22     ;.ITI..|
00002580: A0 2D 58 11 20 20 20 20  20 20 20 4C 44 59 20 23  |.-X.       LDY #|
00002590: 32 30 20 20 20 20 20 3B  43 55 52 53 B0 20 41 54  |20     ;CURS. AT|
000025A0: 00 C3 2D 62 11 20 20 20  20 20 20 20 43 4C 43 20  |..-b.       CLC |
000025B0: 20 20 20 20 20 20 20 20  3B 53 54 41 52 54 20 4F  |        ;START O|
000025C0: 46 20 85 00 D7 2D 6C 11  20 20 20 20 20 20 20 4A  |F ...-l.       J|
000025D0: 53 52 20 50 4C 4F 54 00  FC 2D 76 11 20 20 20 20  |SR PLOT..-v.    |
000025E0: 20 20 20 49 4E 43 20 51  54 4D 4F 44 45 20 20 3B  |   INC QTMODE  ;|
000025F0: 51 55 4F 54 45 20 4D 4F  44 45 20 91 00 0E 2E 80  |QUOTE MODE .....|
00002600: 11 20 20 20 20 20 20 20  4C 44 59 20 23 30 00 2C  |.       LDY #0.,|
00002610: 2E 8A 11 87 49 54 20 4A  53 52 20 43 48 52 49 4E  |....IT JSR CHRIN|
00002620: 20 20 20 3B 4B 45 52 4E  41 4C 20 85 00 3F 2E 94  |   ;KERNAL ..?..|
00002630: 11 20 20 20 20 20 20 20  43 4D 50 20 23 31 33 00  |.       CMP #13.|
00002640: 53 2E 9E 11 20 20 20 20  20 20 20 42 45 51 20 80  |S...       BEQ .|
00002650: 49 4E 50 00 71 2E A8 11  20 20 20 20 20 20 20 53  |INP.q...       S|
00002660: 54 41 20 A5 41 4D 45 2C  59 20 3B 53 A4 52 45 20  |TA .AME,Y ;S.RE |
00002670: 85 00 80 2E B2 11 20 20  20 20 20 20 20 49 4E 59  |......       INY|
00002680: 00 93 2E BC 11 20 20 20  20 20 20 20 42 4E 45 20  |.....       BNE |
00002690: 87 49 54 00 B6 2E C6 11  80 49 4E 50 20 4C 44 41  |.IT......INP LDA|
000026A0: 20 23 22 2C 22 20 20 20  20 20 20 3B 54 41 43 4B  | #","      ;TACK|
000026B0: 20 91 20 2C 53 2C 00 DB  2E D0 11 20 20 20 20 20  | . ,S,.....     |
000026C0: 20 20 53 54 41 20 A5 41  4D 45 2C 59 20 20 20 3B  |  STA .AME,Y   ;|
000026D0: 4C 45 41 56 49 4E 47 20  54 48 45 00 01 2F DA 11  |LEAVING THE../..|
000026E0: 20 20 20 20 20 20 20 4C  44 41 20 23 22 53 22 20  |       LDA #"S" |
000026F0: 20 20 20 20 20 3B 4C 41  53 54 20 42 59 54 45 20  |     ;LAST BYTE |
00002700: A4 00 25 2F E4 11 20 20  20 20 20 20 20 53 54 41  |..%/..       STA|
00002710: 20 A5 41 4D 45 AA 31 2C  59 20 3B 42 45 20 43 48  | .AME.1,Y ;BE CH|
00002720: 4F 4F 53 45 4E 00 45 2F  EE 11 20 20 20 20 20 20  |OOSEN.E/..      |
00002730: 20 4C 44 41 20 23 22 2C  22 20 20 20 20 20 20 3B  | LDA #","      ;|
00002740: 4C 41 54 45 52 00 5D 2F  F8 11 20 20 20 20 20 20  |LATER.]/..      |
00002750: 20 53 54 41 20 A5 41 4D  45 AA 32 2C 59 00 6E 2F  | STA .AME.2,Y.n/|
00002760: 02 12 20 20 20 20 20 20  20 53 54 59 20 41 00 83  |..       STY A..|
00002770: 2F 0C 12 20 20 20 20 20  20 20 4A 53 52 20 53 50  |/..       JSR SP|
00002780: 41 43 45 00 A5 2F 16 12  20 20 20 20 20 20 20 4C  |ACE../..       L|
00002790: 44 41 20 23 B3 4D 45 4E  55 33 20 20 3B 41 53 4B  |DA #.MENU3  ;ASK|
000027A0: 20 81 20 41 4E 00 C3 2F  20 12 20 20 20 20 20 20  | . AN../ .      |
000027B0: 20 4C 44 59 20 23 B1 4D  45 4E 55 33 20 20 3B 41  | LDY #.MENU3  ;A|
000027C0: 50 50 80 00 D9 2F 2A 12  20 20 20 20 20 20 20 4A  |PP.../*.       J|
000027D0: 53 52 20 53 54 52 49 4E  47 00 F9 2F 34 12 20 20  |SR STRING../4.  |
000027E0: 20 20 20 20 20 4C 44 41  20 43 48 4F 49 43 45 20  |     LDA CHOICE |
000027F0: 20 20 3B 99 20 4C 41 53  54 00 1E 30 3E 12 20 20  |  ;. LAST..0>.  |
00002800: 20 20 20 20 20 4A 53 52  20 43 48 52 4F 55 54 20  |     JSR CHROUT |
00002810: 20 20 3B 43 48 4F 49 43  45 20 28 59 20 B2 00 41  |  ;CHOICE (Y ..A|
00002820: 30 48 12 20 20 20 20 20  20 20 4C 44 41 20 23 22  |0H.       LDA #"|
00002830: 9D 22 20 20 20 20 20 3B  41 50 50 80 2C 20 4E 20  |."     ;APP., N |
00002840: B2 00 61 30 52 12 20 20  20 20 20 20 20 4A 53 52  |..a0R.       JSR|
00002850: 20 43 48 52 4F 55 54 20  20 20 3B 57 52 49 54 45  | CHROUT   ;WRITE|
00002860: 29 00 87 30 5C 12 20 20  20 20 20 20 20 49 4E 43  |)..0\.       INC|
00002870: 20 51 54 4D 4F 44 45 20  20 20 3B 51 55 4F 54 45  | QTMODE   ;QUOTE|
00002880: 20 4D 4F 44 45 20 91 00  A9 30 66 12 20 20 20 20  | MODE ...0f.    |
00002890: 20 20 20 4A 53 52 20 43  48 52 49 4E 20 20 20 20  |   JSR CHRIN    |
000028A0: 3B 4B 45 52 4E 41 4C 20  85 00 B8 30 70 12 20 20  |;KERNAL ...0p.  |
000028B0: 20 20 20 20 20 54 41 59  00 DB 30 7A 12 20 20 20  |     TAY..0z.   |
000028C0: 20 20 20 20 53 54 59 20  43 48 4F 49 43 45 20 20  |    STY CHOICE  |
000028D0: 20 3B 94 20 52 45 53 50  91 53 45 00 FA 30 84 12  | ;. RESP.SE..0..|
000028E0: 55 4E 54 80 20 4A 53 52  20 43 48 52 49 4E 20 20  |UNT. JSR CHRIN  |
000028F0: 20 20 3B 45 4D 50 54 59  20 85 00 1A 31 8E 12 20  |  ;EMPTY ...1.. |
00002900: 20 20 20 20 20 20 43 4D  50 20 23 31 33 20 20 20  |      CMP #13   |
00002910: 20 20 20 3B 42 55 46 46  45 52 00 2E 31 98 12 20  |   ;BUFFER..1.. |
00002920: 20 20 20 20 20 20 42 4E  45 20 55 4E 54 80 00 44  |      BNE UNT..D|
00002930: 31 A2 12 20 20 20 20 20  20 20 4C 44 58 20 43 48  |1..       LDX CH|
00002940: 4F 49 43 45 00 69 31 AC  12 20 20 20 20 20 20 20  |OICE.i1..       |
00002950: 4C 44 41 20 23 22 57 22  20 20 20 20 20 3B 4E 20  |LDA #"W"     ;N |
00002960: B2 20 57 28 52 49 54 45  29 00 7A 31 B6 12 20 20  |. W(RITE).z1..  |
00002970: 20 20 20 20 20 4C 44 59  20 41 00 8E 31 C0 12 20  |     LDY A..1.. |
00002980: 20 20 20 20 20 20 43 50  58 20 23 22 59 22 00 A2  |      CPX #"Y"..|
00002990: 31 CA 12 20 20 20 20 20  20 20 42 4E 45 20 A8 41  |1..       BNE .A|
000029A0: 50 4E 00 C6 31 D4 12 20  20 20 20 20 20 20 4C 44  |PN..1..       LD|
000029B0: 41 20 23 22 41 22 20 20  20 20 20 3B 59 20 B2 20  |A #"A"     ;Y . |
000029C0: 41 28 50 50 80 29 00 DC  31 DE 12 A8 41 50 4E 20  |A(PP.)..1...APN |
000029D0: 53 54 41 20 A5 41 4D 45  AA 33 2C 59 00 EB 31 E8  |STA .AME.3,Y..1.|
000029E0: 12 20 20 20 20 20 20 20  54 59 41 00 10 32 F2 12  |.       TYA..2..|
000029F0: 20 20 20 20 20 20 20 43  4C 43 20 20 20 20 20 20  |       CLC      |
00002A00: 20 20 20 20 3B 41 44 4A  55 53 54 20 C3 47 54 48  |    ;ADJUST .GTH|
00002A10: 00 36 32 FC 12 20 20 20  20 20 20 20 41 44 43 20  |.62..       ADC |
00002A20: 23 34 20 20 20 20 20 20  20 3B 4F 46 20 46 49 4C  |#4       ;OF FIL|
00002A30: 45 20 4E 41 4D 45 00 4C  32 06 13 20 20 20 20 20  |E NAME.L2..     |
00002A40: 20 20 4C 44 58 20 23 B3  A5 41 4D 45 00 62 32 10  |  LDX #..AME.b2.|
00002A50: 13 20 20 20 20 20 20 20  4C 44 59 20 23 B1 A5 41  |.       LDY #..A|
00002A60: 4D 45 00 89 32 1A 13 20  20 20 20 20 20 20 4A 53  |ME..2..       JS|
00002A70: 52 20 53 45 54 4E 41 4D  20 20 20 3B 4B 45 52 4E  |R SETNAM   ;KERN|
00002A80: 41 4C 20 53 45 54 4E 41  4D 00 9C 32 24 13 20 20  |AL SETNAM..2$.  |
00002A90: 20 20 20 20 20 4C 44 41  20 23 33 32 00 AE 32 2E  |     LDA #32..2.|
00002AA0: 13 20 20 20 20 20 20 20  4C 44 58 20 23 38 00 C0  |.       LDX #8..|
00002AB0: 32 38 13 20 20 20 20 20  20 20 4C 44 59 20 23 32  |28.       LDY #2|
00002AC0: 00 D6 32 42 13 20 20 20  20 20 20 20 4A 53 52 20  |..2B.       JSR |
00002AD0: 53 45 54 4C 46 53 00 F9  32 4C 13 20 20 20 20 20  |SETLFS..2L.     |
00002AE0: 20 20 4A 53 52 20 4C 45  56 A2 20 20 3B 45 52 41  |  JSR LEV.  ;ERA|
00002AF0: 53 45 20 A2 20 4D 45 4E  55 00 0B 33 56 13 20 20  |SE . MENU..3V.  |
00002B00: 20 20 20 20 20 4C 44 41  20 23 38 00 1D 33 60 13  |     LDA #8..3`.|
00002B10: 20 20 20 20 20 20 20 4C  44 58 20 23 30 00 30 33  |       LDX #0.03|
00002B20: 6A 13 20 20 20 20 20 20  20 53 54 58 20 24 39 30  |j.       STX $90|
00002B30: 00 57 33 74 13 20 20 20  20 20 20 20 4A 53 52 20  |.W3t.       JSR |
00002B40: 54 41 4C 4B 20 20 20 20  3B 4D 41 4B 45 20 44 49  |TALK    ;MAKE DI|
00002B50: 53 4B 20 54 41 4C 4B 00  7A 33 7E 13 20 20 20 20  |SK TALK.z3~.    |
00002B60: 20 20 20 4A 53 52 20 55  4E 54 4C 4B 20 20 20 3B  |   JSR UNTLK   ;|
00002B70: A4 20 53 45 45 20 8B 20  49 54 00 9E 33 88 13 20  |. SEE . IT..3.. |
00002B80: 20 20 20 20 20 20 4C 44  58 20 24 39 30 20 20 20  |      LDX $90   |
00002B90: 20 20 3B 49 53 20 54 55  52 4E 45 44 20 91 00 C0  |  ;IS TURNED ...|
00002BA0: 33 92 13 20 20 20 20 20  20 20 42 45 51 20 4E 4F  |3..       BEQ NO|
00002BB0: 44 4B 45 52 20 20 3B 91  2C 20 4D 4F 56 45 20 91  |DKER  ;., MOVE .|
00002BC0: 00 E6 33 9C 13 20 20 20  20 20 20 20 4A 4D 50 20  |..3..       JMP |
00002BD0: 53 48 4F 45 52 52 20 20  3B 4F 46 46 2C 53 48 4F  |SHOERR  ;OFF,SHO|
00002BE0: 57 20 45 52 52 B0 00 F7  33 A6 13 4E 4F 44 4B 45  |W ERR...3..NODKE|
00002BF0: 52 20 4A 53 52 20 9F 00  1A 34 B0 13 20 20 20 20  |R JSR ...4..    |
00002C00: 20 20 20 4C 44 41 20 23  38 20 20 20 20 20 20 20  |   LDA #8       |
00002C10: 3B 43 48 45 43 4B 20 81  20 41 00 3D 34 BA 13 20  |;CHECK . A.=4.. |
00002C20: 20 20 20 20 20 20 53 54  41 20 24 42 41 20 20 20  |      STA $BA   |
00002C30: 20 20 20 3B 44 49 53 4B  20 45 52 52 B0 00 61 34  |   ;DISK ERR..a4|
00002C40: C4 13 20 20 20 20 20 20  20 4A 53 52 20 54 41 4C  |..       JSR TAL|
00002C50: 4B 20 20 20 20 20 3B 41  46 54 45 52 20 9F 49 4E  |K     ;AFTER .IN|
00002C60: 47 00 75 34 CE 13 20 20  20 20 20 20 20 4C 44 41  |G.u4..       LDA|
00002C70: 20 23 24 36 46 00 89 34  D8 13 20 20 20 20 20 20  | #$6F..4..      |
00002C80: 20 4A 53 52 20 54 4B 53  41 00 9B 34 E2 13 20 20  | JSR TKSA..4..  |
00002C90: 20 20 20 20 20 4C 44 59  20 23 30 00 AF 34 EC 13  |     LDY #0..4..|
00002CA0: 4D B0 45 52 52 20 4A 53  52 20 41 43 50 54 52 00  |M.ERR JSR ACPTR.|
00002CB0: CF 34 F6 13 20 20 20 20  20 20 20 53 54 41 20 45  |.4..       STA E|
00002CC0: 52 52 42 55 46 2C 59 20  3B 94 20 44 49 53 4B 00  |RRBUF,Y ;. DISK.|
00002CD0: F0 34 00 14 20 20 20 20  20 20 20 49 4E 59 20 20  |.4..       INY  |
00002CE0: 20 20 20 20 20 20 20 20  3B 4D 45 53 53 41 47 45  |        ;MESSAGE|
00002CF0: 00 03 35 0A 14 20 20 20  20 20 20 20 43 4D 50 20  |..5..       CMP |
00002D00: 23 31 33 00 18 35 14 14  20 20 20 20 20 20 20 42  |#13..5..       B|
00002D10: 4E 45 20 4D B0 45 52 52  00 2D 35 1E 14 20 20 20  |NE M.ERR.-5..   |
00002D20: 20 20 20 20 4A 53 52 20  55 4E 54 4C 4B 00 3F 35  |    JSR UNTLK.?5|
00002D30: 28 14 20 20 20 20 20 20  20 4C 44 41 20 23 30 00  |(.       LDA #0.|
00002D40: 61 35 32 14 20 20 20 20  20 20 20 53 54 41 20 45  |a52.       STA E|
00002D50: 52 52 42 55 46 2C 59 20  3B 80 20 57 49 54 48 20  |RRBUF,Y ;. WITH |
00002D60: 30 00 87 35 3C 14 20 20  20 20 20 20 20 4C 44 41  |0..5<.       LDA|
00002D70: 20 45 52 52 42 55 46 20  20 20 3B 57 41 53 20 54  | ERRBUF   ;WAS T|
00002D80: 48 45 52 45 20 41 4E 00  A5 35 46 14 20 20 20 20  |HERE AN..5F.    |
00002D90: 20 20 20 43 4D 50 20 23  22 30 22 20 20 20 20 20  |   CMP #"0"     |
00002DA0: 3B 45 52 52 B0 00 BB 35  50 14 20 20 20 20 20 20  |;ERR...5P.      |
00002DB0: 20 42 45 51 20 50 52 4F  43 45 44 00 E1 35 5A 14  | BEQ PROCED..5Z.|
00002DC0: 20 20 20 20 20 20 20 4A  53 52 20 50 4C 49 4E 45  |       JSR PLINE|
00002DD0: 53 20 20 20 3B 59 45 53  2C 20 44 49 53 50 4C 41  |S   ;YES, DISPLA|
00002DE0: 59 00 04 36 64 14 20 20  20 20 20 20 20 4C 44 41  |Y..6d.       LDA|
00002DF0: 20 23 B3 4D 45 53 42 55  46 20 3B 44 49 53 4B 20  | #.MESBUF ;DISK |
00002E00: 45 52 52 B0 00 25 36 6E  14 20 20 20 20 20 20 20  |ERR..%6n.       |
00002E10: 4C 44 59 20 23 B1 4D 45  53 42 55 46 20 3B 4D 45  |LDY #.MESBUF ;ME|
00002E20: 53 53 41 47 45 00 3B 36  78 14 20 20 20 20 20 20  |SSAGE.;6x.      |
00002E30: 20 4A 53 52 20 53 54 52  49 4E 47 00 5B 36 82 14  | JSR STRING.[6..|
00002E40: 20 20 20 20 20 20 20 4A  53 52 20 43 4C 53 46 49  |       JSR CLSFI|
00002E50: 4C 20 20 20 3B A0 20 46  49 4C 45 00 7D 36 8C 14  |L   ;. FILE.}6..|
00002E60: 20 20 20 20 20 20 20 4A  4D 50 20 92 49 54 20 20  |       JMP .IT  |
00002E70: 20 3B 45 58 49 54 20 A2  20 4D 45 4E 55 00 90 36  | ;EXIT . MENU..6|
00002E80: 96 14 50 52 4F 43 45 44  20 4C 44 58 20 23 33 32  |..PROCED LDX #32|
00002E90: 00 A6 36 A0 14 20 20 20  20 20 20 20 4A 53 52 20  |..6..       JSR |
00002EA0: 43 48 4B 4F 55 54 00 AC  36 AA 14 3B 00 C7 36 B4  |CHKOUT..6..;..6.|
00002EB0: 14 3B 54 48 45 20 99 45  52 20 41 4C 53 4F 20 55  |.;THE .ER ALSO U|
00002EC0: 53 45 53 20 54 48 45 00  E8 36 BE 14 3B 46 4F 4C  |SES THE..6..;FOL|
00002ED0: 4C 4F 57 49 4E 47 20 43  4F 44 45 20 A4 20 4F 55  |LOWING CODE . OU|
00002EE0: 54 50 55 54 20 49 54 53  00 F3 36 C8 14 3B 42 4C  |TPUT ITS..6..;BL|
00002EF0: 4F 43 4B 00 F9 36 D2 14  3B 00 20 37 DC 14 50 52  |OCK..6..;. 7..PR|
00002F00: 4F 43 45 32 20 49 4E 43  20 4F 55 54 50 55 54 20  |OCE2 INC OUTPUT |
00002F10: 3B 53 45 54 20 4F 55 54  50 55 54 20 46 4C 41 47  |;SET OUTPUT FLAG|
00002F20: 00 44 37 E6 14 20 20 20  20 20 20 20 4A 53 52 20  |.D7..       JSR |
00002F30: 55 4E 42 4C 43 4B 20 3B  4F 55 54 50 55 54 20 42  |UNBLCK ;OUTPUT B|
00002F40: 4C 4F 43 4B 00 69 37 F0  14 20 20 20 20 20 20 20  |LOCK.i7..       |
00002F50: 44 45 43 20 4F 55 54 50  55 54 20 3B 55 4E 53 45  |DEC OUTPUT ;UNSE|
00002F60: 54 20 4F 55 54 50 55 54  2E 00 8D 37 FA 14 20 20  |T OUTPUT...7..  |
00002F70: 20 20 20 20 20 4C 44 41  20 24 42 41 20 20 20 20  |     LDA $BA    |
00002F80: 3B 43 48 45 43 4B 20 44  45 56 49 43 45 00 A8 37  |;CHECK DEVICE..7|
00002F90: 04 15 20 20 20 20 20 20  20 43 4D 50 20 23 34 20  |..       CMP #4 |
00002FA0: 20 20 20 20 3B 99 45 52  00 CA 37 0E 15 20 20 20  |    ;.ER..7..   |
00002FB0: 20 20 20 20 42 4E 45 20  4E 4F 50 52 4E 54 20 3B  |    BNE NOPRNT ;|
00002FC0: 4E 4F 2C 20 4D 4F 56 45  20 91 00 EE 37 18 15 20  |NO, MOVE ...7.. |
00002FD0: 20 20 20 20 20 20 4C 44  41 20 23 31 33 20 20 20  |      LDA #13   |
00002FE0: 20 3B 59 45 53 2C 20 44  4F 20 41 20 43 52 00 04  | ;YES, DO A CR..|
00002FF0: 38 22 15 20 20 20 20 20  20 20 4A 53 52 20 43 48  |8".       JSR CH|
00003000: 52 4F 55 54 00 22 38 2C  15 4E 4F 50 52 4E 54 20  |ROUT."8,.NOPRNT |
00003010: 4A 53 52 20 43 4C 53 46  49 4C 20 3B A0 20 46 49  |JSR CLSFIL ;. FI|
00003020: 4C 45 00 44 38 36 15 20  20 20 20 20 20 20 4A 4D  |LE.D86.       JM|
00003030: 50 20 A1 4D B0 20 3B CB  20 A4 20 4D 41 49 4E 20  |P .M. ;. . MAIN |
00003040: 4D 45 4E 55 00 4A 38 40  15 3B 00 6C 38 4A 15 43  |MENU.J8@.;.l8J.C|
00003050: 4C 53 46 49 4C 20 4C 44  41 20 23 33 32 20 20 20  |LSFIL LDA #32   |
00003060: 20 3B A0 20 46 49 4C 45  20 23 33 32 00 7D 38 54  | ;. FILE #32.}8T|
00003070: 15 20 20 20 20 20 20 20  4A 53 52 20 A0 00 92 38  |.       JSR ...8|
00003080: 5E 15 20 20 20 20 20 20  20 4A 4D 50 20 43 4C 41  |^.       JMP CLA|
00003090: 4C 4C 00 98 38 68 15 3B  00 BB 38 72 15 53 48 4F  |LL..8h.;..8r.SHO|
000030A0: 45 52 52 20 4A 53 52 20  50 4C 49 4E 45 53 20 3B  |ERR JSR PLINES ;|
000030B0: 50 55 54 20 4C 49 4E 45  53 20 91 00 CE 38 7C 15  |PUT LINES ...8|.|
000030C0: 20 20 20 20 20 20 20 4C  44 58 20 23 32 32 00 E0  |       LDX #22..|
000030D0: 38 86 15 20 20 20 20 20  20 20 4C 44 59 20 23 38  |8..       LDY #8|
000030E0: 00 EF 38 90 15 20 20 20  20 20 20 20 43 4C 43 00  |..8..       CLC.|
000030F0: 03 39 9A 15 20 20 20 20  20 20 20 4A 53 52 20 50  |.9..       JSR P|
00003100: 4C 4F 54 00 24 39 A4 15  20 20 20 20 20 20 20 4C  |LOT.$9..       L|
00003110: 44 41 20 23 B3 4D 45 4E  55 34 20 3B 99 20 4F 55  |DA #.MENU4 ;. OU|
00003120: 54 50 55 54 00 4A 39 AE  15 20 20 20 20 20 20 20  |TPUT.J9..       |
00003130: 4C 44 59 20 23 B1 4D 45  4E 55 34 20 3B 44 45 56  |LDY #.MENU4 ;DEV|
00003140: 49 43 45 20 49 53 20 4F  46 46 00 60 39 B8 15 20  |ICE IS OFF.`9.. |
00003150: 20 20 20 20 20 20 4A 53  52 20 53 54 52 49 4E 47  |      JSR STRING|
00003160: 00 7D 39 C2 15 92 49 54  20 4A 53 52 20 A1 49 4E  |.}9...IT JSR .IN|
00003170: 20 20 20 3B 92 20 81 20  41 20 4B 45 59 00 90 39  |   ;. . A KEY..9|
00003180: CC 15 20 20 20 20 20 20  20 42 45 51 20 92 49 54  |..       BEQ .IT|
00003190: 00 B4 39 D6 15 20 20 20  20 20 20 20 4A 53 52 20  |..9..       JSR |
000031A0: 53 50 41 43 45 20 20 20  3B 45 52 41 53 45 20 4C  |SPACE   ;ERASE L|
000031B0: 49 4E 45 53 00 D6 39 E0  15 20 20 20 20 20 20 20  |INES..9..       |
000031C0: 4A 4D 50 20 A2 4D 4E 32  20 20 3B 4F 55 54 50 55  |JMP .MN2  ;OUTPU|
000031D0: 54 20 4D 45 4E 55 00 DC  39 EA 15 3B 00 01 3A F4  |T MENU..9..;..:.|
000031E0: 15 4C 45 56 A2 20 4C 44  58 20 23 31 31 39 20 20  |.LEV. LDX #119  |
000031F0: 20 20 3B 50 55 54 20 4F  4C 44 20 53 43 52 45 45  |  ;PUT OLD SCREE|
00003200: 4E 00 1E 3A FE 15 4C 49  4E 45 53 32 20 4C 44 41  |N..:..LINES2 LDA|
00003210: 20 4D 45 4E 55 2C 58 20  20 3B 42 41 43 4B 00 36  | MENU,X  ;BACK.6|
00003220: 3A 08 16 20 20 20 20 20  20 20 53 54 41 20 53 43  |:..       STA SC|
00003230: 4E 4C 49 4E 2C 58 00 50  3A 12 16 20 20 20 20 20  |NLIN,X.P:..     |
00003240: 20 20 4C 44 41 20 4D 45  4E 55 AA 31 32 30 2C 58  |  LDA MENU.120,X|
00003250: 00 68 3A 1C 16 20 20 20  20 20 20 20 53 54 41 20  |.h:..       STA |
00003260: 43 4F 4C 4C 49 4E 2C 58  00 77 3A 26 16 20 20 20  |COLLIN,X.w:&.   |
00003270: 20 20 20 20 44 45 58 00  8D 3A 30 16 20 20 20 20  |    DEX..:0.    |
00003280: 20 20 20 42 50 4C 20 4C  49 4E 45 53 32 00 9C 3A  |   BPL LINES2..:|
00003290: 3A 16 20 20 20 20 20 20  20 52 54 53 00 A2 3A 44  |:.       RTS..:D|
000032A0: 16 3B 00 B6 3A 4E 16 50  4C 49 4E 45 53 20 4C 44  |.;..:N.PLINES LD|
000032B0: 58 20 23 31 31 39 00 D7  3A 58 16 4C 49 4E 45 53  |X #119..:X.LINES|
000032C0: 20 20 4C 44 41 20 53 43  4E 4C 49 4E 2C 58 20 3B  |  LDA SCNLIN,X ;|
000032D0: 94 20 54 48 52 45 45 00  FD 3A 62 16 20 20 20 20  |. THREE..:b.    |
000032E0: 20 20 20 53 54 41 20 4D  45 4E 55 2C 58 20 20 20  |   STA MENU,X   |
000032F0: 3B 4C 49 4E 45 53 20 4F  46 20 54 48 45 00 24 3B  |;LINES OF THE.$;|
00003300: 6C 16 20 20 20 20 20 20  20 4C 44 41 20 43 4F 4C  |l.       LDA COL|
00003310: 4C 49 4E 2C 58 20 3B 53  43 52 45 45 4E 20 49 4E  |LIN,X ;SCREEN IN|
00003320: 20 4D 45 4D 00 3E 3B 76  16 20 20 20 20 20 20 20  | MEM.>;v.       |
00003330: 53 54 41 20 4D 45 4E 55  AA 31 32 30 2C 58 00 61  |STA MENU.120,X.a|
00003340: 3B 80 16 20 20 20 20 20  20 20 4C 44 41 20 23 36  |;..       LDA #6|
00003350: 34 20 20 20 20 20 3B 55  53 45 20 41 20 4C 49 4E  |4     ;USE A LIN|
00003360: 45 00 79 3B 8A 16 20 20  20 20 20 20 20 53 54 41  |E.y;..       STA|
00003370: 20 53 43 4E 4C 49 4E 2C  58 00 98 3B 94 16 20 20  | SCNLIN,X..;..  |
00003380: 20 20 20 20 20 4C 44 41  20 43 55 52 43 4F 4C 20  |     LDA CURCOL |
00003390: 20 3B A1 20 43 4F 4C B0  00 B0 3B 9E 16 20 20 20  | ;. COL...;..   |
000033A0: 20 20 20 20 53 54 41 20  43 4F 4C 4C 49 4E 2C 58  |    STA COLLIN,X|
000033B0: 00 BF 3B A8 16 20 20 20  20 20 20 20 44 45 58 00  |..;..       DEX.|
000033C0: D4 3B B2 16 20 20 20 20  20 20 20 42 50 4C 20 4C  |.;..       BPL L|
000033D0: 49 4E 45 53 00 FB 3B BC  16 53 50 41 43 45 20 20  |INES..;..SPACE  |
000033E0: 4C 44 58 20 23 33 39 20  20 20 20 20 3B 43 4C 45  |LDX #39     ;CLE|
000033F0: 41 52 20 54 48 45 20 4C  49 4E 45 00 1F 3C C6 16  |AR THE LINE..<..|
00003400: 20 20 20 20 20 20 20 4C  44 41 20 23 33 32 20 20  |       LDA #32  |
00003410: 20 20 20 3B 55 53 45 44  20 81 20 54 45 58 54 00  |   ;USED . TEXT.|
00003420: 37 3C D0 16 5A 41 50 53  43 4E 20 53 54 41 20 54  |7<..ZAPSCN STA T|
00003430: 58 54 4C 49 4E 2C 58 00  46 3C DA 16 20 20 20 20  |XTLIN,X.F<..    |
00003440: 20 20 20 44 45 58 00 5C  3C E4 16 20 20 20 20 20  |   DEX.\<..     |
00003450: 20 20 42 50 4C 20 5A 41  50 53 43 4E 00 6F 3C EE  |  BPL ZAPSCN.o<.|
00003460: 16 20 20 20 20 20 20 20  4C 44 58 20 23 32 32 00  |.       LDX #22.|
00003470: 8D 3C F8 16 20 20 20 20  20 20 20 4C 44 59 20 23  |.<..       LDY #|
00003480: 30 20 20 20 20 20 20 3B  B9 49 54 49 91 00 AD 3C  |0      ;.ITI...<|
00003490: 02 17 20 20 20 20 20 20  20 43 4C 43 20 20 20 20  |..       CLC    |
000034A0: 20 20 20 20 20 3B 43 55  52 53 B0 20 AF 00 C7 3C  |     ;CURS. ...<|
000034B0: 0C 17 20 20 20 20 20 20  20 4A 4D 50 20 50 4C 4F  |..       JMP PLO|
000034C0: 54 20 20 20 20 3B 8E 00  CD 3C 16 17 3B 00 EE 3C  |T    ;...<..;..<|
000034D0: 20 17 3B 43 91 56 45 52  54 53 20 58 20 2C 20 59  | .;C.VERTS X , Y|
000034E0: 20 B5 4F 20 4C 4F 57 20  2C 20 48 49 47 48 00 F4  | .O LOW , HIGH..|
000034F0: 3C 2A 17 3B 00 19 3D 34  17 4D 41 4B 45 58 59 20  |<*.;..=4.MAKEXY |
00003500: 4C 44 41 20 46 4C 50 50  4C 54 20 3B 49 53 20 50  |LDA FLPPLT ;IS P|
00003510: 4C 4F 54 20 4E B0 4D 41  4C 00 2E 3D 3E 17 20 20  |LOT N.MAL..=>.  |
00003520: 20 20 20 20 20 42 45 51  20 4E B0 4D 41 4C 00 51  |     BEQ N.MAL.Q|
00003530: 3D 48 17 20 20 20 20 20  20 20 53 54 58 20 59 54  |=H.       STX YT|
00003540: 45 4D 50 20 20 3B 46 4C  49 50 50 45 44 20 59 2C  |EMP  ;FLIPPED Y,|
00003550: 58 00 66 3D 52 17 20 20  20 20 20 20 20 53 54 59  |X.f=R.       STY|
00003560: 20 58 54 45 4D 50 00 7C  3D 5C 17 20 20 20 20 20  | XTEMP.|=\.     |
00003570: 20 20 4A 4D 50 20 54 48  45 50 4C 54 00 9D 3D 66  |  JMP THEPLT..=f|
00003580: 17 4E B0 4D 41 4C 20 53  54 58 20 58 54 45 4D 50  |.N.MAL STX XTEMP|
00003590: 20 20 20 3B 4E B0 4D 41  4C 20 58 2C 59 00 B2 3D  |   ;N.MAL X,Y..=|
000035A0: 70 17 20 20 20 20 20 20  20 53 54 59 20 59 54 45  |p.       STY YTE|
000035B0: 4D 50 00 D6 3D 7A 17 54  48 45 50 4C 54 20 4C 44  |MP..=z.THEPLT LD|
000035C0: 41 20 23 34 20 20 20 20  20 20 3B 53 43 52 45 45  |A #4      ;SCREE|
000035D0: 4E 20 48 49 47 48 00 EC  3D 84 17 20 20 20 20 20  |N HIGH..=..     |
000035E0: 20 20 53 54 41 20 48 49  47 48 50 54 00 0B 3E 8E  |  STA HIGHPT..>.|
000035F0: 17 20 20 20 20 20 20 20  4C 44 41 20 23 B1 43 4F  |.       LDA #.CO|
00003600: 4C B0 20 3B 94 44 20 43  4F 4C B0 00 2D 3E 98 17  |L. ;.D COL..->..|
00003610: 20 20 20 20 20 20 20 53  54 41 20 43 4F 4C 48 49  |       STA COLHI|
00003620: 49 20 20 3B 48 49 47 48  20 42 59 54 45 00 54 3E  |I  ;HIGH BYTE.T>|
00003630: A2 17 20 20 20 20 20 20  20 4C 44 41 20 23 30 20  |..       LDA #0 |
00003640: 20 20 20 20 3B 53 54 41  52 54 20 4D 55 4C 54 20  |    ;START MULT |
00003650: 41 54 20 30 00 79 3E AC  17 20 20 20 20 20 20 20  |AT 0.y>..       |
00003660: 4C 44 58 20 59 54 45 4D  50 20 20 3B 4D 55 4C 54  |LDX YTEMP  ;MULT|
00003670: 20 2E 58 20 54 49 4D 45  53 00 8F 3E B6 17 20 20  | .X TIMES..>..  |
00003680: 20 20 20 20 20 42 45 51  20 4E 4F 4D 55 4C 54 00  |     BEQ NOMULT.|
00003690: 9D 3E C0 17 4D B0 4D 4C  54 20 43 4C 43 00 C1 3E  |.>..M.MLT CLC..>|
000036A0: CA 17 20 20 20 20 20 20  20 41 44 43 20 23 34 30  |..       ADC #40|
000036B0: 20 20 20 20 20 3B 4D 55  4C 54 2E 20 42 59 20 34  |     ;MULT. BY 4|
000036C0: 30 00 E1 3E D4 17 20 20  20 20 20 20 20 42 43 43  |0..>..       BCC|
000036D0: 20 4E 4F 42 52 4B 20 20  20 3B 59 20 B9 49 54 49  | NOBRK   ;Y .ITI|
000036E0: 91 00 F7 3E DE 17 20 20  20 20 20 20 20 49 4E 43  |...>..       INC|
000036F0: 20 48 49 47 48 50 54 00  0D 3F E8 17 20 20 20 20  | HIGHPT..?..    |
00003700: 20 20 20 49 4E 43 20 43  4F 4C 48 49 49 00 1C 3F  |   INC COLHII..?|
00003710: F2 17 4E 4F 42 52 4B 20  20 44 45 58 00 31 3F FC  |..NOBRK  DEX.1?.|
00003720: 17 20 20 20 20 20 20 20  42 4E 45 20 4D B0 4D 4C  |.       BNE M.ML|
00003730: 54 00 40 3F 06 18 4E 4F  4D 55 4C 54 20 43 4C 43  |T.@?..NOMULT CLC|
00003740: 00 65 3F 10 18 20 20 20  20 20 20 20 41 44 43 20  |.e?..       ADC |
00003750: 58 54 45 4D 50 20 20 20  3B 41 44 44 20 48 4F 57  |XTEMP   ;ADD HOW|
00003760: 20 4D 41 4E 59 00 80 3F  1A 18 20 20 20 20 20 20  | MANY..?..      |
00003770: 20 42 43 43 20 A8 42 52  4B 20 20 3B 4F 56 45 52  | BCC .BRK  ;OVER|
00003780: 00 96 3F 24 18 20 20 20  20 20 20 20 49 4E 43 20  |..?$.       INC |
00003790: 48 49 47 48 50 54 00 AC  3F 2E 18 20 20 20 20 20  |HIGHPT..?..     |
000037A0: 20 20 49 4E 43 20 43 4F  4C 48 49 49 00 C0 3F 38  |  INC COLHII..?8|
000037B0: 18 A8 42 52 4B 20 53 54  41 20 4C 4F 57 50 4E 54  |..BRK STA LOWPNT|
000037C0: 00 CF 3F 42 18 20 20 20  20 20 20 20 52 54 53 00  |..?B.       RTS.|
000037D0: D5 3F 4C 18 3B 00 EB 3F  56 18 52 45 56 45 52 53  |.?L.;..?V.REVERS|
000037E0: 20 4A 53 52 20 4D 41 4B  45 58 59 00 FD 3F 60 18  | JSR MAKEXY..?`.|
000037F0: 20 20 20 20 20 20 20 4C  44 59 20 23 30 00 22 40  |       LDY #0."@|
00003800: 6A 18 20 20 20 20 20 20  20 4C 44 41 20 28 4C 4F  |j.       LDA (LO|
00003810: 57 50 4E 54 29 2C 59 20  3B A1 20 43 48 41 52 41  |WPNT),Y ;. CHARA|
00003820: 43 2E 00 48 40 74 18 20  20 20 20 20 20 20 45 B0  |C..H@t.       E.|
00003830: 20 23 31 32 38 20 20 3B  49 4E 56 45 52 54 20 43  | #128  ;INVERT C|
00003840: 48 41 52 41 43 54 45 52  00 6B 40 7E 18 20 20 20  |HARACTER.k@~.   |
00003850: 20 20 20 20 53 54 41 20  4C 41 53 54 43 48 20 3B  |    STA LASTCH ;|
00003860: 94 20 43 48 41 52 41 43  54 45 52 00 92 40 88 18  |. CHARACTER..@..|
00003870: 20 20 20 20 20 20 20 53  54 41 20 28 4C 4F 57 50  |       STA (LOWP|
00003880: 4E 54 29 2C 59 20 3B 50  55 54 20 43 48 41 52 41  |NT),Y ;PUT CHARA|
00003890: 43 2E 00 A8 40 92 18 20  20 20 20 20 20 20 4C 44  |C...@..       LD|
000038A0: 41 20 48 49 47 48 50 54  00 CA 40 9C 18 20 20 20  |A HIGHPT..@..   |
000038B0: 20 20 20 20 AF 20 23 24  30 33 20 20 20 3B 50 52  |    . #$03   ;PR|
000038C0: 45 50 41 52 45 20 48 49  47 48 00 EC 40 A6 18 20  |EPARE HIGH..@.. |
000038D0: 20 20 20 20 20 20 B0 41  20 23 24 44 38 20 20 20  |      .A #$D8   |
000038E0: 3B 42 59 54 45 20 81 20  43 4F 4C B0 00 02 41 B0  |;BYTE . COL...A.|
000038F0: 18 20 20 20 20 20 20 20  53 54 41 20 48 49 47 48  |.       STA HIGH|
00003900: 50 54 00 26 41 BA 18 20  20 20 20 20 20 20 4C 44  |PT.&A..       LD|
00003910: 41 20 23 B3 43 4F 4C B0  20 3B 53 45 54 20 4C 4F  |A #.COL. ;SET LO|
00003920: 57 20 42 59 54 45 00 48  41 C4 18 20 20 20 20 20  |W BYTE.HA..     |
00003930: 20 20 43 4C 43 20 20 20  20 20 20 20 20 20 3B 81  |  CLC         ;.|
00003940: 20 B0 49 47 49 4E 41 4C  00 6C 41 CE 18 20 20 20  | .IGINAL.lA..   |
00003950: 20 20 20 20 41 44 43 20  4C 4F 57 50 4E 54 20 20  |    ADC LOWPNT  |
00003960: 3B 53 43 52 45 45 4E 20  43 4F 4C B0 00 8E 41 D8  |;SCREEN COL...A.|
00003970: 18 20 20 20 20 20 20 20  42 43 43 20 4E 4F 43 4F  |.       BCC NOCO|
00003980: 42 4B 20 20 3B 94 44 20  49 4E 20 4D 45 4D 00 A4  |BK  ;.D IN MEM..|
00003990: 41 E2 18 20 20 20 20 20  20 20 49 4E 43 20 43 4F  |A..       INC CO|
000039A0: 4C 48 49 49 00 BA 41 EC  18 4E 4F 43 4F 42 4B 20  |LHII..A..NOCOBK |
000039B0: 53 54 41 20 43 4F 4C 4C  4F 57 00 DF 41 F6 18 20  |STA COLLOW..A.. |
000039C0: 20 20 20 20 20 20 4C 44  41 20 43 55 52 43 4F 4C  |      LDA CURCOL|
000039D0: 20 3B A1 20 43 55 52 52  45 4E 54 20 43 4F 4C 00  | ;. CURRENT COL.|
000039E0: 03 42 00 19 20 20 20 20  20 20 20 4C 44 58 20 4F  |.B..       LDX O|
000039F0: 4C 44 43 4F 4C 20 3B 55  53 45 20 4F 4C 44 20 43  |LDCOL ;USE OLD C|
00003A00: 4F 4C B0 00 25 42 0A 19  20 20 20 20 20 20 20 42  |OL..%B..       B|
00003A10: 45 51 20 53 54 52 43 4F  4C 20 3B 4E 4F 2C 20 4D  |EQ STRCOL ;NO, M|
00003A20: 4F 56 45 20 91 00 4A 42  14 19 20 20 20 20 20 20  |OVE ..JB..      |
00003A30: 20 4C 44 41 20 28 43 4F  4C 4C 4F 57 29 2C 59 20  | LDA (COLLOW),Y |
00003A40: 3B 59 45 53 2C 20 A1 20  49 54 00 6F 42 1E 19 53  |;YES, . IT.oB..S|
00003A50: 54 52 43 4F 4C 20 53 54  41 20 28 4C 4F 57 50 4E  |TRCOL STA (LOWPN|
00003A60: 54 29 2C 59 20 3B 53 A4  52 45 20 43 4F 4C B0 00  |T),Y ;S.RE COL..|
00003A70: 7E 42 28 19 20 20 20 20  20 20 20 52 54 53 00 84  |~B(.       RTS..|
00003A80: 42 32 19 3B 00 9A 42 3C  19 50 4C 4F 54 58 59 20  |B2.;..B<.PLOTXY |
00003A90: 4C 44 58 20 58 50 54 45  4D 50 00 B0 42 46 19 20  |LDX XPTEMP..BF. |
00003AA0: 20 20 20 20 20 20 4C 44  59 20 59 50 54 45 4D 50  |      LDY YPTEMP|
00003AB0: 00 C6 42 50 19 20 20 20  20 20 20 20 4A 4D 50 20  |..BP.       JMP |
00003AC0: 52 45 56 45 52 53 00 CC  42 5A 19 3B 00 EE 42 64  |REVERS..BZ.;..Bd|
00003AD0: 19 43 55 52 53 B0 20 4C  44 41 20 4F 4C 44 43 4F  |.CURS. LDA OLDCO|
00003AE0: 4C 20 3B 94 20 43 4F 4C  B0 20 46 4C 41 47 00 FD  |L ;. COL. FLAG..|
00003AF0: 42 6E 19 20 20 20 20 20  20 20 50 48 41 00 0F 43  |Bn.       PHA..C|
00003B00: 78 19 20 20 20 20 20 20  20 4C 44 41 20 23 30 00  |x.       LDA #0.|
00003B10: 36 43 82 19 20 20 20 20  20 20 20 53 54 41 20 4F  |6C..       STA O|
00003B20: 4C 44 43 4F 4C 20 3B 50  4C 4F 54 20 53 4E 41 47  |LDCOL ;PLOT SNAG|
00003B30: 20 43 55 52 53 52 00 4C  43 8C 19 20 20 20 20 20  | CURSR.LC..     |
00003B40: 20 20 4A 53 52 20 50 4C  4F 54 58 59 00 6E 43 96  |  JSR PLOTXY.nC.|
00003B50: 19 20 20 20 20 20 20 20  50 4C 41 20 20 20 20 20  |.       PLA     |
00003B60: 20 20 20 3B 52 45 53 45  54 20 43 4F 4C B0 00 8A  |   ;RESET COL...|
00003B70: 43 A0 19 20 20 20 20 20  20 20 53 54 41 20 4F 4C  |C..       STA OL|
00003B80: 44 43 4F 4C 20 3B 46 4C  41 47 00 99 43 AA 19 20  |DCOL ;FLAG..C.. |
00003B90: 20 20 20 20 20 20 52 54  53 00 9F 43 B4 19 3B 00  |      RTS..C..;.|
00003BA0: BF 43 BE 19 C6 49 49 20  20 43 4D 50 20 23 24 32  |.C...II  CMP #$2|
00003BB0: 30 20 20 20 3B 46 52 4F  4D 20 4D 45 4D B0 59 00  |0   ;FROM MEM.Y.|
00003BC0: DB 43 C8 19 20 20 20 20  20 20 20 42 43 53 20 91  |.C..       BCS .|
00003BD0: 45 20 20 20 20 3B A4 20  C6 49 49 00 EA 43 D2 19  |E    ;. .II..C..|
00003BE0: 54 48 52 45 45 20 20 43  4C 43 00 FE 43 DC 19 20  |THREE  CLC..C.. |
00003BF0: 20 20 20 20 20 20 41 44  43 20 23 24 34 30 00 0D  |      ADC #$40..|
00003C00: 44 E6 19 20 20 20 20 20  20 20 52 54 53 00 20 44  |D..       RTS. D|
00003C10: F0 19 91 45 20 20 20 20  43 4D 50 20 23 24 34 30  |...E    CMP #$40|
00003C20: 00 33 44 FA 19 20 20 20  20 20 20 20 42 43 53 20  |.3D..       BCS |
00003C30: 54 57 4F 00 42 44 04 1A  20 20 20 20 20 20 20 52  |TWO.BD..       R|
00003C40: 54 53 00 56 44 0E 1A 54  57 4F 20 20 20 20 43 4D  |TS.VD..TWO    CM|
00003C50: 50 20 23 24 36 30 00 6B  44 18 1A 20 20 20 20 20  |P #$60.kD..     |
00003C60: 20 20 42 43 53 20 54 48  52 45 45 00 7A 44 22 1A  |  BCS THREE.zD".|
00003C70: 20 20 20 20 20 20 20 43  4C 43 00 8E 44 2C 1A 20  |       CLC..D,. |
00003C80: 20 20 20 20 20 20 41 44  43 20 23 24 32 30 00 9D  |      ADC #$20..|
00003C90: 44 36 1A 20 20 20 20 20  20 20 52 54 53 00 A3 44  |D6.       RTS..D|
00003CA0: 40 1A 3B 00 CA 44 4A 1A  3B 54 48 45 20 46 4F 4C  |@.;..DJ.;THE FOL|
00003CB0: 4C 4F 57 49 4E 47 20 43  4F 44 45 20 45 49 54 48  |LOWING CODE EITH|
00003CC0: 45 52 20 50 4C 4F 54 53  20 41 00 E7 44 54 1A 3B  |ER PLOTS A..DT.;|
00003CD0: 41 20 BF 47 4C 45 20 52  45 56 45 52 53 45 44 20  |A .GLE REVERSED |
00003CE0: 53 50 41 43 45 20 B0 00  0B 45 5E 1A 3B 52 45 56  |SPACE ...E^.;REV|
00003CF0: 45 52 53 45 53 20 41 20  4C 49 4E 45 20 8B 20 54  |ERSES A LINE . T|
00003D00: 48 45 20 42 4C 4F 43 4B  20 49 53 00 19 45 68 1A  |HE BLOCK IS..Eh.|
00003D10: 3B 54 55 52 4E 45 44 20  91 00 1F 45 72 1A 3B 00  |;TURNED ...Er.;.|
00003D20: 34 45 7C 1A CB 53 43 52  4E 20 4C 44 41 20 58 50  |4E|..SCRN LDA XP|
00003D30: 54 45 4D 50 00 4A 45 86  1A 20 20 20 20 20 20 20  |TEMP.JE..       |
00003D40: 43 4D 50 20 58 42 54 45  4D 50 00 5F 45 90 1A 20  |CMP XBTEMP._E.. |
00003D50: 20 20 20 20 20 20 42 4D  49 20 91 45 42 4C 4B 00  |      BMI .EBLK.|
00003D60: 75 45 9A 1A 20 20 20 20  20 20 20 4C 44 41 20 59  |uE..       LDA Y|
00003D70: 50 54 45 4D 50 00 8B 45  A4 1A 20 20 20 20 20 20  |PTEMP..E..      |
00003D80: 20 43 4D 50 20 59 42 54  45 4D 50 00 A1 45 AE 1A  | CMP YBTEMP..E..|
00003D90: 20 20 20 20 20 20 20 42  43 53 20 58 58 42 4C 43  |       BCS XXBLC|
00003DA0: 4B 00 B6 45 B8 1A 91 45  42 4C 4B 20 49 4E 43 20  |K..E...EBLK INC |
00003DB0: 4F 4C 44 43 4F 4C 00 CC  45 C2 1A 20 20 20 20 20  |OLDCOL..E..     |
00003DC0: 20 20 4A 53 52 20 50 4C  4F 54 58 59 00 E2 45 CC  |  JSR PLOTXY..E.|
00003DD0: 1A 20 20 20 20 20 20 20  44 45 43 20 4F 4C 44 43  |.       DEC OLDC|
00003DE0: 4F 4C 00 F8 45 D6 1A 20  20 20 20 20 20 20 4C 44  |OL..E..       LD|
00003DF0: 41 20 41 44 44 4D 4F 56  00 0D 46 E0 1A 20 20 20  |A ADDMOV..F..   |
00003E00: 20 20 20 20 42 45 51 20  53 55 42 49 54 00 32 46  |    BEQ SUBIT.2F|
00003E10: EA 1A 20 20 20 20 20 20  20 49 4E 43 20 58 50 54  |..       INC XPT|
00003E20: 45 4D 50 20 3B 49 4E 43  8F 45 4E 54 20 58 20 50  |EMP ;INC.ENT X P|
00003E30: 4F 53 00 56 46 F4 1A 20  20 20 20 20 20 20 4C 44  |OS.VF..       LD|
00003E40: 41 20 58 50 54 45 4D 50  20 3B 49 53 20 58 20 91  |A XPTEMP ;IS X .|
00003E50: 20 42 4C 4F 43 4B 00 6C  46 FE 1A 20 20 20 20 20  | BLOCK.lF..     |
00003E60: 20 20 43 4D 50 20 58 42  54 45 4D 50 00 82 46 08  |  CMP XBTEMP..F.|
00003E70: 1B 20 20 20 20 20 20 20  42 4E 45 20 4F 55 54 48  |.       BNE OUTH|
00003E80: 52 45 00 98 46 12 1B 20  20 20 20 20 20 20 44 45  |RE..F..       DE|
00003E90: 43 20 58 50 54 45 4D 50  00 BC 46 1C 1B 20 20 20  |C XPTEMP..F..   |
00003EA0: 20 20 20 20 4C 44 41 20  59 50 54 45 4D 50 20 20  |    LDA YPTEMP  |
00003EB0: 3B 59 45 53 2C 20 42 55  54 20 42 45 00 E0 46 26  |;YES, BUT BE..F&|
00003EC0: 1B 20 20 20 20 20 20 20  43 4D 50 20 59 42 54 45  |.       CMP YBTE|
00003ED0: 4D 50 20 20 3B 53 55 52  45 20 59 20 B9 20 49 53  |MP  ;SURE Y . IS|
00003EE0: 00 03 47 30 1B 20 20 20  20 20 20 20 42 43 53 20  |..G0.       BCS |
00003EF0: 58 58 42 4C 43 4B 20 20  3B 91 20 42 4C 4F 43 4B  |XXBLCK  ;. BLOCK|
00003F00: 20 A4 4F 00 19 47 3A 1B  20 20 20 20 20 20 20 49  | .O..G:.       I|
00003F10: 4E 43 20 58 50 54 45 4D  50 00 2F 47 44 1B 20 20  |NC XPTEMP./GD.  |
00003F20: 20 20 20 20 20 42 4E 45  20 4F 55 54 48 52 45 00  |     BNE OUTHRE.|
00003F30: 45 47 4E 1B 53 55 42 49  54 20 20 44 45 43 20 58  |EGN.SUBIT  DEC X|
00003F40: 50 54 45 4D 50 00 5A 47  58 1B 4F 55 54 48 52 45  |PTEMP.ZGX.OUTHRE|
00003F50: 20 4A 4D 50 20 43 55 52  53 B0 00 7F 47 62 1B 58  | JMP CURS...Gb.X|
00003F60: 58 42 4C 43 4B 20 4C 44  41 20 41 44 44 4D 4F 56  |XBLCK LDA ADDMOV|
00003F70: 20 20 3B 49 53 20 49 54  20 41 4E 20 41 44 44 00  |  ;IS IT AN ADD.|
00003F80: 9D 47 6C 1B 20 20 20 20  20 20 20 42 45 51 20 A8  |.Gl.       BEQ .|
00003F90: 41 44 44 20 20 3B 30 20  B2 20 53 55 42 00 C3 47  |ADD  ;0 . SUB..G|
00003FA0: 76 1B 20 20 20 20 20 20  20 49 4E 43 20 58 50 54  |v.       INC XPT|
00003FB0: 45 4D 50 20 20 3B 4F 54  48 45 52 57 49 53 45 20  |EMP  ;OTHERWISE |
00003FC0: 41 44 44 00 D7 47 80 1B  A8 41 44 44 20 49 4E 43  |ADD..G...ADD INC|
00003FD0: 20 59 50 54 45 4D 50 00  ED 47 8A 1B 20 20 20 20  | YPTEMP..G..    |
00003FE0: 20 20 20 4C 44 41 20 58  50 54 45 4D 50 00 FE 47  |   LDA XPTEMP..G|
00003FF0: 94 1B 20 20 20 20 20 20  20 53 54 41 20 41 00 14  |..       STA A..|
00004000: 48 9E 1B 20 20 20 20 20  20 20 4C 44 41 20 59 42  |H..       LDA YB|
00004010: 54 45 4D 50 00 25 48 A8  1B 20 20 20 20 20 20 20  |TEMP.%H..       |
00004020: 53 54 41 20 42 00 35 48  B2 1B 4D B0 4C 49 4E 20  |STA B.5H..M.LIN |
00004030: 4C 44 58 20 41 00 46 48  BC 1B 20 20 20 20 20 20  |LDX A.FH..      |
00004040: 20 4C 44 59 20 42 00 5C  48 C6 1B 20 20 20 20 20  | LDY B.\H..     |
00004050: 20 20 4A 53 52 20 52 45  56 45 52 53 00 6D 48 D0  |  JSR REVERS.mH.|
00004060: 1B 20 20 20 20 20 20 20  49 4E 43 20 42 00 7E 48  |.       INC B.~H|
00004070: DA 1B 20 20 20 20 20 20  20 4C 44 41 20 42 00 94  |..       LDA B..|
00004080: 48 E4 1B 20 20 20 20 20  20 20 43 4D 50 20 59 50  |H..       CMP YP|
00004090: 54 45 4D 50 00 A9 48 EE  1B 20 20 20 20 20 20 20  |TEMP..H..       |
000040A0: 42 4E 45 20 4D B0 4C 49  4E 00 BF 48 F8 1B 20 20  |BNE M.LIN..H..  |
000040B0: 20 20 20 20 20 44 45 43  20 59 50 54 45 4D 50 00  |     DEC YPTEMP.|
000040C0: E3 48 02 1C 20 20 20 20  20 20 20 4C 44 41 20 41  |.H..       LDA A|
000040D0: 44 44 4D 4F 56 20 3B 57  41 53 20 49 54 20 41 20  |DDMOV ;WAS IT A |
000040E0: 53 55 42 00 02 49 0C 1C  20 20 20 20 20 20 20 42  |SUB..I..       B|
000040F0: 4E 45 20 4E 4F 41 44 44  44 20 3B 31 20 B2 20 41  |NE NOADDD ;1 . A|
00004100: 44 44 00 18 49 16 1C 20  20 20 20 20 20 20 4C 44  |DD..I..       LD|
00004110: 41 20 58 50 54 45 4D 50  00 2E 49 20 1C 20 20 20  |A XPTEMP..I .   |
00004120: 20 20 20 20 43 4D 50 20  58 42 54 45 4D 50 00 42  |    CMP XBTEMP.B|
00004130: 49 2A 1C 20 20 20 20 20  20 20 42 4E 45 20 A8 54  |I*.       BNE .T|
00004140: 4E 44 00 58 49 34 1C 20  20 20 20 20 20 20 44 45  |ND.XI4.       DE|
00004150: 43 20 58 50 54 45 4D 50  00 6D 49 3E 1C 20 20 20  |C XPTEMP.mI>.   |
00004160: 20 20 20 20 4A 4D 50 20  43 55 52 53 B0 00 90 49  |    JMP CURS...I|
00004170: 48 1C A8 54 4E 44 20 44  45 43 20 58 50 54 45 4D  |H..TND DEC XPTEM|
00004180: 50 20 3B 4F 54 48 45 52  57 49 53 45 20 53 55 42  |P ;OTHERWISE SUB|
00004190: 00 9F 49 52 1C 4E 4F 41  44 44 44 20 52 54 53 00  |..IR.NOADDD RTS.|
000041A0: A5 49 5C 1C 3B 00 C8 49  66 1C 58 42 4C 4F 43 4B  |.I\.;..If.XBLOCK|
000041B0: 20 4C 44 41 20 58 B9 20  20 20 3B 50 52 45 50 41  | LDA X.   ;PREPA|
000041C0: 52 45 20 54 45 4D 50 53  00 EB 49 70 1C 20 20 20  |RE TEMPS..Ip.   |
000041D0: 20 20 20 20 53 54 41 20  58 50 54 45 4D 50 20 3B  |    STA XPTEMP ;|
000041E0: 81 20 41 20 52 49 47 48  54 20 B0 00 10 4A 7A 1C  |. A RIGHT ...Jz.|
000041F0: 20 20 20 20 20 20 20 4C  44 41 20 59 B9 20 20 20  |       LDA Y.   |
00004200: 3B 4C 45 46 54 20 42 4C  4F 43 4B 20 4D 4F 56 45  |;LEFT BLOCK MOVE|
00004210: 00 26 4A 84 1C 20 20 20  20 20 20 20 53 54 41 20  |.&J..       STA |
00004220: 59 50 54 45 4D 50 00 3C  4A 8E 1C 20 20 20 20 20  |YPTEMP.<J..     |
00004230: 20 20 4C 44 41 20 42 4C  4F 43 4B 58 00 52 4A 98  |  LDA BLOCKX.RJ.|
00004240: 1C 20 20 20 20 20 20 20  53 54 41 20 58 42 54 45  |.       STA XBTE|
00004250: 4D 50 00 68 4A A2 1C 20  20 20 20 20 20 20 4C 44  |MP.hJ..       LD|
00004260: 41 20 42 4C 4F 43 4B 59  00 7E 4A AC 1C 20 20 20  |A BLOCKY.~J..   |
00004270: 20 20 20 20 53 54 41 20  59 42 54 45 4D 50 00 A0  |    STA YBTEMP..|
00004280: 4A B6 1C 20 20 20 20 20  20 20 4A 53 52 20 CB 53  |J..       JSR .S|
00004290: 43 52 4E 20 3B 44 4F 20  54 48 45 20 4D 4F 56 45  |CRN ;DO THE MOVE|
000042A0: 00 C1 4A C0 1C 20 20 20  20 20 20 20 4C 44 41 20  |..J..       LDA |
000042B0: 58 50 54 45 4D 50 20 3B  A1 20 43 48 41 4E 47 45  |XPTEMP ;. CHANGE|
000042C0: 44 00 E1 4A CA 1C 20 20  20 20 20 20 20 53 54 41  |D..J..       STA|
000042D0: 20 58 B9 20 20 20 3B B9  49 54 49 91 20 C5 55 45  | X.   ;.ITI. .UE|
000042E0: 53 00 F7 4A D4 1C 20 20  20 20 20 20 20 4C 44 41  |S..J..       LDA|
000042F0: 20 59 50 54 45 4D 50 00  09 4B DE 1C 20 20 20 20  | YPTEMP..K..    |
00004300: 20 20 20 53 54 41 20 59  B9 00 1B 4B E8 1C 20 20  |   STA Y...K..  |
00004310: 20 20 20 20 20 4C 44 41  20 23 30 00 2A 4B F2 1C  |     LDA #0.*K..|
00004320: 20 20 20 20 20 20 20 52  54 53 00 30 4B FC 1C 3B  |       RTS.0K..;|
00004330: 00 55 4B 06 1D 59 42 4C  4F 43 4B 20 49 4E 43 20  |.UK..YBLOCK INC |
00004340: 46 4C 50 50 4C 54 20 3B  50 52 45 50 41 52 45 20  |FLPPLT ;PREPARE |
00004350: 54 45 4D 50 53 00 74 4B  10 1D 20 20 20 20 20 20  |TEMPS.tK..      |
00004360: 20 4C 44 41 20 58 B9 20  20 20 3B 81 20 41 4E 20  | LDA X.   ;. AN |
00004370: 55 50 20 B0 00 9B 4B 1A  1D 20 20 20 20 20 20 20  |UP ...K..       |
00004380: 53 54 41 20 59 50 54 45  4D 50 20 3B 44 4F 57 4E  |STA YPTEMP ;DOWN|
00004390: 20 42 4C 4F 43 4B 20 4D  4F 56 45 00 AD 4B 24 1D  | BLOCK MOVE..K$.|
000043A0: 20 20 20 20 20 20 20 4C  44 41 20 59 B9 00 C3 4B  |       LDA Y...K|
000043B0: 2E 1D 20 20 20 20 20 20  20 53 54 41 20 58 50 54  |..       STA XPT|
000043C0: 45 4D 50 00 D9 4B 38 1D  20 20 20 20 20 20 20 4C  |EMP..K8.       L|
000043D0: 44 41 20 42 4C 4F 43 4B  58 00 EF 4B 42 1D 20 20  |DA BLOCKX..KB.  |
000043E0: 20 20 20 20 20 53 54 41  20 59 42 54 45 4D 50 00  |     STA YBTEMP.|
000043F0: 05 4C 4C 1D 20 20 20 20  20 20 20 4C 44 41 20 42  |.LL.       LDA B|
00004400: 4C 4F 43 4B 59 00 1B 4C  56 1D 20 20 20 20 20 20  |LOCKY..LV.      |
00004410: 20 53 54 41 20 58 42 54  45 4D 50 00 3D 4C 60 1D  | STA XBTEMP.=L`.|
00004420: 20 20 20 20 20 20 20 4A  53 52 20 CB 53 43 52 4E  |       JSR .SCRN|
00004430: 20 3B 44 4F 20 54 48 45  20 4D 4F 56 45 00 5E 4C  | ;DO THE MOVE.^L|
00004440: 6A 1D 20 20 20 20 20 20  20 4C 44 41 20 58 50 54  |j.       LDA XPT|
00004450: 45 4D 50 20 3B A1 20 43  48 41 4E 47 45 44 00 7E  |EMP ;. CHANGED.~|
00004460: 4C 74 1D 20 20 20 20 20  20 20 53 54 41 20 59 B9  |Lt.       STA Y.|
00004470: 20 20 20 3B B9 49 54 49  91 20 C5 55 45 53 00 94  |   ;.ITI. .UES..|
00004480: 4C 7E 1D 20 20 20 20 20  20 20 4C 44 41 20 59 50  |L~.       LDA YP|
00004490: 54 45 4D 50 00 A6 4C 88  1D 20 20 20 20 20 20 20  |TEMP..L..       |
000044A0: 53 54 41 20 58 B9 00 B8  4C 92 1D 20 20 20 20 20  |STA X...L..     |
000044B0: 20 20 4C 44 41 20 23 30  00 CE 4C 9C 1D 20 20 20  |  LDA #0..L..   |
000044C0: 20 20 20 20 53 54 41 20  46 4C 50 50 4C 54 00 DD  |    STA FLPPLT..|
000044D0: 4C A6 1D 20 20 20 20 20  20 20 52 54 53 00 E3 4C  |L..       RTS..L|
000044E0: B0 1D 3B 00 05 4D BA 1D  55 4E 42 4C 43 4B 20 4C  |..;..M..UNBLCK L|
000044F0: 44 41 20 58 B9 20 20 20  3B 49 53 20 58 B9 20 49  |DA X.   ;IS X. I|
00004500: 4E 53 49 44 45 00 25 4D  C4 1D 20 20 20 20 20 20  |NSIDE.%M..      |
00004510: 20 43 4D 50 20 42 4C 4F  43 4B 58 20 3B 4F 46 20  | CMP BLOCKX ;OF |
00004520: 42 4C 4F 43 4B 00 4B 4D  CE 1D 20 20 20 20 20 20  |BLOCK.KM..      |
00004530: 20 42 4D 49 20 4E 4F 42  4C 43 4B 20 3B 4E 4F 2C  | BMI NOBLCK ;NO,|
00004540: 20 4C 45 41 56 45 20 48  45 52 45 00 6D 4D D8 1D  | LEAVE HERE.mM..|
00004550: 20 20 20 20 20 20 20 4C  44 41 20 59 B9 20 20 20  |       LDA Y.   |
00004560: 3B 49 53 20 59 B9 20 49  4E 53 49 44 45 00 8D 4D  |;IS Y. INSIDE..M|
00004570: E2 1D 20 20 20 20 20 20  20 43 4D 50 20 42 4C 4F  |..       CMP BLO|
00004580: 43 4B 59 20 3B 4F 46 20  42 4C 4F 43 4B 00 B3 4D  |CKY ;OF BLOCK..M|
00004590: EC 1D 20 20 20 20 20 20  20 42 4D 49 20 4E 4F 42  |..       BMI NOB|
000045A0: 4C 43 4B 20 3B 4E 4F 2C  20 4C 45 41 56 45 20 48  |LCK ;NO, LEAVE H|
000045B0: 45 52 45 00 C9 4D F6 1D  20 20 20 20 20 20 20 4C  |ERE..M..       L|
000045C0: 44 41 20 42 4C 4F 43 4B  59 00 ED 4D 00 1E 20 20  |DA BLOCKY..M..  |
000045D0: 20 20 20 20 20 43 4D 50  20 23 24 46 46 20 20 20  |     CMP #$FF   |
000045E0: 3B 49 53 20 42 4C 4F 43  4B 20 4F 46 46 00 14 4E  |;IS BLOCK OFF..N|
000045F0: 0A 1E 20 20 20 20 20 20  20 42 45 51 20 4E 4F 42  |..       BEQ NOB|
00004600: 4C 43 4B 20 3B 59 45 53  2C 20 4C 45 41 56 45 20  |LCK ;YES, LEAVE |
00004610: 48 45 52 45 00 2A 4E 14  1E 20 20 20 20 20 20 20  |HERE.*N..       |
00004620: 53 54 41 20 59 50 54 45  4D 50 00 50 4E 1E 1E 20  |STA YPTEMP.PN.. |
00004630: 20 20 20 20 20 20 49 4E  43 20 4F 4C 44 43 4F 4C  |      INC OLDCOL|
00004640: 20 3B 52 45 53 45 54 20  4F 4C 44 20 43 4F 4C B0  | ;RESET OLD COL.|
00004650: 00 56 4E 28 1E 3B 00 76  4E 32 1E 3B 54 48 49 53  |.VN(.;.vN2.;THIS|
00004660: 20 82 20 50 41 52 54 20  46 49 4E 44 53 20 54 48  | . PART FINDS TH|
00004670: 45 20 80 20 4F 46 00 9C  4E 3C 1E 3B 45 41 43 48  |E . OF..N<.;EACH|
00004680: 20 42 4C 4F 43 4B 20 4C  49 4E 45 20 53 4F 20 4E  | BLOCK LINE SO N|
00004690: 4F 20 53 50 41 43 45 53  20 41 52 45 00 BD 4E 46  |O SPACES ARE..NF|
000046A0: 1E 3B 43 91 53 49 44 45  52 45 44 20 41 53 20 4F  |.;C.SIDERED AS O|
000046B0: 55 54 50 55 54 2E 20 20  54 48 45 20 82 00 DD 4E  |UTPUT.  THE ...N|
000046C0: 50 1E 3B 53 45 43 54 49  91 20 A7 20 55 4E AB 44  |P.;SECTI. . UN.D|
000046D0: 4F 45 53 20 54 48 45 20  42 4C 4F 43 4B 00 FC 4E  |OES THE BLOCK..N|
000046E0: 5A 1E 3B AF 20 4F 55 54  50 55 54 53 20 83 20 49  |Z.;. OUTPUTS . I|
000046F0: 46 20 54 48 45 20 4F 55  54 50 55 54 00 12 4F 64  |F THE OUTPUT..Od|
00004700: 1E 3B 46 4C 41 47 20 49  53 20 4E 91 AB 5A 45 52  |.;FLAG IS N..ZER|
00004710: 4F 2E 00 18 4F 6E 1E 3B  00 2A 4F 78 1E 52 45 44  |O...On.;.*Ox.RED|
00004720: 55 43 45 20 4C 44 41 20  58 B9 00 3B 4F 82 1E 20  |UCE LDA X..;O.. |
00004730: 20 20 20 20 20 20 53 54  41 20 41 00 51 4F 8C 1E  |      STA A.QO..|
00004740: 20 20 20 20 20 20 20 4C  44 41 20 42 4C 4F 43 4B  |       LDA BLOCK|
00004750: 58 00 67 4F 96 1E 20 20  20 20 20 20 20 53 54 41  |X.gO..       STA|
00004760: 20 58 50 54 45 4D 50 00  7D 4F A0 1E 20 20 20 20  | XPTEMP.}O..    |
00004770: 20 20 20 4C 44 41 20 59  50 54 45 4D 50 00 8E 4F  |   LDA YPTEMP..O|
00004780: AA 1E 20 20 20 20 20 20  20 53 54 41 20 42 00 A0  |..       STA B..|
00004790: 4F B4 1E 4D B0 52 45 44  20 4A 53 52 20 A1 58 59  |O..M.RED JSR .XY|
000047A0: 00 C5 4F BE 1E 20 20 20  20 20 20 20 43 4D 50 20  |..O..       CMP |
000047B0: 23 31 36 30 20 20 20 3B  49 53 20 49 54 20 41 20  |#160   ;IS IT A |
000047C0: 53 50 41 43 45 00 E7 4F  C8 1E 20 20 20 20 20 20  |SPACE..O..      |
000047D0: 20 42 4E 45 20 4D B0 45  58 20 20 3B 4E 4F 2C 20  | BNE M.EX  ;NO, |
000047E0: 80 20 46 4F 55 4E 44 00  0C 50 D2 1E 20 20 20 20  |. FOUND..P..    |
000047F0: 20 20 20 4C 44 58 20 41  20 20 20 20 20 20 3B 59  |   LDX A      ;Y|
00004800: 45 53 2C 20 55 4E AB 44  4F 20 49 54 00 1D 50 DC  |ES, UN.DO IT..P.|
00004810: 1E 20 20 20 20 20 20 20  4C 44 59 20 42 00 44 50  |.       LDY B.DP|
00004820: E6 1E 20 20 20 20 20 20  20 4A 53 52 20 52 45 56  |..       JSR REV|
00004830: 45 52 53 20 3B 55 4E 52  45 56 45 52 53 45 20 53  |ERS ;UNREVERSE S|
00004840: 50 41 43 45 00 6B 50 F0  1E 20 20 20 20 20 20 20  |PACE.kP..       |
00004850: 4C 44 41 20 41 20 20 20  20 20 20 3B 48 41 53 20  |LDA A      ;HAS |
00004860: 41 20 4C 49 4E 45 20 42  45 45 4E 00 8A 50 FA 1E  |A LINE BEEN..P..|
00004870: 20 20 20 20 20 20 20 43  4D 50 20 42 4C 4F 43 4B  |       CMP BLOCK|
00004880: 58 20 3B 52 45 44 55 43  45 44 00 B1 50 04 1F 20  |X ;REDUCED..P.. |
00004890: 20 20 20 20 20 20 42 45  51 20 59 45 53 58 20 20  |      BEQ YESX  |
000048A0: 20 3B 59 45 53 2C 20 4C  45 41 56 45 20 48 45 52  | ;YES, LEAVE HER|
000048B0: 45 00 D6 50 0E 1F 20 20  20 20 20 20 20 44 45 43  |E..P..       DEC|
000048C0: 20 41 20 20 20 20 20 20  3B 4E 4F 2C 20 4D 4F 56  | A      ;NO, MOV|
000048D0: 45 20 4C 45 46 54 00 F7  50 18 1F 20 20 20 20 20  |E LEFT..P..     |
000048E0: 20 20 4A 4D 50 20 4D B0  52 45 44 20 3B A4 20 82  |  JMP M.RED ;. .|
000048F0: 20 43 4F 4C 55 4D 4E 00  FD 50 22 1F 3B 00 20 51  | COLUMN..P".;. Q|
00004900: 2C 1F 4D B0 45 58 20 20  4A 53 52 20 50 4C 4F 54  |,.M.EX  JSR PLOT|
00004910: 58 59 20 3B 49 4E 56 45  52 53 45 20 43 48 41 52  |XY ;INVERSE CHAR|
00004920: 00 42 51 36 1F 20 20 20  20 20 20 20 4C 44 41 20  |.BQ6.       LDA |
00004930: 4F 55 54 50 55 54 20 3B  44 49 53 4B 20 B0 20 99  |OUTPUT ;DISK . .|
00004940: 45 52 00 67 51 40 1F 20  20 20 20 20 20 20 42 45  |ER.gQ@.       BE|
00004950: 51 20 A8 4F 55 54 20 3B  4E 4F 2C 20 53 4B 49 50  |Q .OUT ;NO, SKIP|
00004960: 20 4F 55 54 50 55 54 00  8A 51 4A 1F 20 20 20 20  | OUTPUT..QJ.    |
00004970: 20 20 20 4C 44 41 20 4C  41 53 54 43 48 20 3B A1  |   LDA LASTCH ;.|
00004980: 20 43 48 41 52 41 43 54  45 52 00 9E 51 54 1F 20  | CHARACTER..QT. |
00004990: 20 20 20 20 20 20 43 4D  50 20 23 31 32 37 00 B4  |      CMP #127..|
000049A0: 51 5E 1F 20 20 20 20 20  20 20 42 43 43 20 4F 4B  |Q^.       BCC OK|
000049B0: 53 49 5A 45 00 C7 51 68  1F 20 20 20 20 20 20 20  |SIZE..Qh.       |
000049C0: 45 B0 20 23 24 38 30 00  E4 51 72 1F 4F 4B 53 49  |E. #$80..Qr.OKSI|
000049D0: 5A 45 20 4A 53 52 20 C6  49 49 20 20 3B 97 20 A4  |ZE JSR .II  ;. .|
000049E0: 20 C6 49 49 00 06 52 7C  1F 20 20 20 20 20 20 20  | .II..R|.       |
000049F0: 4A 53 52 20 43 48 52 4F  55 54 20 20 3B 4F 55 54  |JSR CHROUT  ;OUT|
00004A00: 50 55 54 20 49 54 00 1A  52 86 1F A8 4F 55 54 20  |PUT IT..R...OUT |
00004A10: 4C 44 41 20 58 50 54 45  4D 50 00 3F 52 90 1F 20  |LDA XPTEMP.?R.. |
00004A20: 20 20 20 20 20 20 43 4D  50 20 41 20 20 20 20 20  |      CMP A     |
00004A30: 20 3B 49 53 20 52 4F 57  20 45 52 41 53 45 44 00  | ;IS ROW ERASED.|
00004A40: 53 52 9A 1F 20 20 20 20  20 20 20 42 45 51 20 59  |SR..       BEQ Y|
00004A50: 45 53 58 00 79 52 A4 1F  20 20 20 20 20 20 20 49  |ESX.yR..       I|
00004A60: 4E 43 20 58 50 54 45 4D  50 20 3B 4E 4F 2C 20 41  |NC XPTEMP ;NO, A|
00004A70: 44 44 20 43 4F 4C 55 4D  4E 00 98 52 AE 1F 20 20  |DD COLUMN..R..  |
00004A80: 20 20 20 20 20 42 4E 45  20 4D B0 45 58 20 20 3B  |     BNE M.EX  ;|
00004A90: AF 20 CB 20 42 41 43 4B  00 AE 52 B8 1F 59 45 53  |. . BACK..R..YES|
00004AA0: 58 20 20 20 4C 44 41 20  59 50 54 45 4D 50 00 D0  |X   LDA YPTEMP..|
00004AB0: 52 C2 1F 20 20 20 20 20  20 20 43 4D 50 20 59 B9  |R..       CMP Y.|
00004AC0: 20 20 20 3B 41 52 45 20  52 4F 57 53 20 44 91 45  |   ;ARE ROWS D.E|
00004AD0: 00 E4 52 CC 1F 20 20 20  20 20 20 20 42 45 51 20  |..R..       BEQ |
00004AE0: 59 45 53 59 00 FA 52 D6  1F 20 20 20 20 20 20 20  |YESY..R..       |
00004AF0: 4C 44 41 20 4F 55 54 50  55 54 00 0E 53 E0 1F 20  |LDA OUTPUT..S.. |
00004B00: 20 20 20 20 20 20 42 45  51 20 4E 4F 43 52 00 33  |      BEQ NOCR.3|
00004B10: 53 EA 1F 20 20 20 20 20  20 20 4C 44 41 20 23 31  |S..       LDA #1|
00004B20: 33 20 20 20 20 3B 4F 55  54 50 55 54 20 80 4F 46  |3    ;OUTPUT .OF|
00004B30: 4C 4E 45 00 49 53 F4 1F  20 20 20 20 20 20 20 4A  |LNE.IS..       J|
00004B40: 53 52 20 43 48 52 4F 55  54 00 6C 53 FE 1F 4E 4F  |SR CHROUT.lS..NO|
00004B50: 43 52 20 20 20 49 4E 43  20 59 50 54 45 4D 50 20  |CR   INC YPTEMP |
00004B60: 3B 4E 4F 2C 20 41 44 44  20 52 4F 57 00 8C 53 08  |;NO, ADD ROW..S.|
00004B70: 20 20 20 20 20 20 20 20  42 4E 45 20 52 45 44 55  |        BNE REDU|
00004B80: 43 45 20 3B AF 20 CB 20  42 41 43 4B 00 B1 53 12  |CE ;. . BACK..S.|
00004B90: 20 59 45 53 59 20 20 20  44 45 43 20 4F 4C 44 43  | YESY   DEC OLDC|
00004BA0: 4F 4C 20 3B 4F 46 46 20  43 4F 4C B0 20 46 4C 41  |OL ;OFF COL. FLA|
00004BB0: 47 00 D2 53 1C 20 20 20  20 20 20 20 20 4C 44 41  |G..S.        LDA|
00004BC0: 20 4F 55 54 50 55 54 20  3B 91 45 20 4D B0 45 20  | OUTPUT ;.E M.E |
00004BD0: 43 52 00 E7 53 26 20 20  20 20 20 20 20 20 42 45  |CR..S&        BE|
00004BE0: 51 20 4E 4F 57 41 59 00  FA 53 30 20 20 20 20 20  |Q NOWAY..S0     |
00004BF0: 20 20 20 4C 44 41 20 23  31 33 00 10 54 3A 20 20  |   LDA #13..T:  |
00004C00: 20 20 20 20 20 20 4A 53  52 20 43 48 52 4F 55 54  |      JSR CHROUT|
00004C10: 00 22 54 44 20 4E 4F 57  41 59 20 20 4C 44 41 20  |."TD NOWAY  LDA |
00004C20: 58 B9 00 38 54 4E 20 20  20 20 20 20 20 20 53 54  |X..8TN        ST|
00004C30: 41 20 58 50 54 45 4D 50  00 5C 54 58 20 20 20 20  |A XPTEMP.\TX    |
00004C40: 20 20 20 20 4A 53 52 20  50 4C 4F 54 58 59 20 3B  |    JSR PLOTXY ;|
00004C50: 54 55 52 4E 20 91 20 43  55 52 53 B0 00 70 54 62  |TURN . CURS..pTb|
00004C60: 20 4E 4F 42 4C 43 4B 20  4C 44 41 20 23 24 46 46  | NOBLCK LDA #$FF|
00004C70: 00 96 54 6C 20 20 20 20  20 20 20 20 53 54 41 20  |..Tl        STA |
00004C80: 42 4C 4F 43 4B 58 20 3B  54 55 52 4E 20 4F 46 46  |BLOCKX ;TURN OFF|
00004C90: 20 42 4C 4F 43 4B 00 BC  54 76 20 20 20 20 20 20  | BLOCK..Tv      |
00004CA0: 20 20 53 54 41 20 42 4C  4F 43 4B 59 20 3B 57 49  |  STA BLOCKY ;WI|
00004CB0: 54 48 20 54 57 4F 20 24  46 46 27 53 00 CB 54 80  |TH TWO $FF'S..T.|
00004CC0: 20 20 20 20 20 20 20 20  52 54 53 00 D1 54 8A 20  |        RTS..T. |
00004CD0: 3B 00 E0 54 94 20 A1 58  59 20 20 4C 44 58 20 41  |;..T. .XY  LDX A|
00004CE0: 00 F1 54 9E 20 20 20 20  20 20 20 20 4C 44 59 20  |..T.        LDY |
00004CF0: 42 00 07 55 A8 20 20 20  20 20 20 20 20 4A 53 52  |B..U.        JSR|
00004D00: 20 4D 41 4B 45 58 59 00  19 55 B2 20 20 20 20 20  | MAKEXY..U.     |
00004D10: 20 20 20 4C 44 59 20 23  30 00 33 55 BC 20 20 20  |   LDY #0.3U.   |
00004D20: 20 20 20 20 20 4C 44 41  20 28 4C 4F 57 50 4E 54  |     LDA (LOWPNT|
00004D30: 29 2C 59 00 42 55 C6 20  20 20 20 20 20 20 20 52  |),Y.BU.        R|
00004D40: 54 53 00 48 55 D0 20 3B  00 6A 55 DA 20 91 42 4C  |TS.HU. ;.jU. .BL|
00004D50: 43 4B 20 4A 53 52 20 55  4E 42 4C 43 4B 20 3B 55  |CK JSR UNBLCK ;U|
00004D60: 4E 20 44 4F 20 42 4C 4F  43 4B 00 8E 55 E4 20 20  |N DO BLOCK..U.  |
00004D70: 20 20 20 20 20 20 4C 44  41 20 58 B9 20 20 20 3B  |      LDA X.   ;|
00004D80: 53 54 41 52 54 20 42 4C  4F 43 4B 20 41 54 00 B1  |START BLOCK AT..|
00004D90: 55 EE 20 20 20 20 20 20  20 20 53 54 41 20 42 4C  |U.        STA BL|
00004DA0: 4F 43 4B 58 20 3B 43 55  52 53 B0 20 58 20 AF 20  |OCKX ;CURS. X . |
00004DB0: 59 00 C3 55 F8 20 20 20  20 20 20 20 20 4C 44 41  |Y..U.        LDA|
00004DC0: 20 59 B9 00 D9 55 02 21  20 20 20 20 20 20 20 53  | Y...U.!       S|
00004DD0: 54 41 20 42 4C 4F 43 4B  59 00 EB 55 0C 21 20 20  |TA BLOCKY..U.!  |
00004DE0: 20 20 20 20 20 4C 44 41  20 23 30 00 FA 55 16 21  |     LDA #0..U.!|
00004DF0: 20 20 20 20 20 20 20 52  54 53 00 00 56 20 21 3B  |       RTS..V !;|
00004E00: 00 1D 56 2A 21 4D 45 4E  55 31 20 20 2E C6 20 22  |..V*!MENU1  .. "|
00004E10: 20 20 20 28 46 29 20 46  49 4C 45 20 22 00 3D 56  |   (F) FILE ".=V|
00004E20: 34 21 20 20 20 20 20 20  20 2E C6 20 22 20 20 28  |4!       .. "  (|
00004E30: 50 29 20 50 52 49 4E 54  45 52 20 20 22 00 58 56  |P) PRINTER  ".XV|
00004E40: 3E 21 20 20 20 20 20 20  20 2E C6 20 22 20 28 46  |>!       .. " (F|
00004E50: 31 29 20 45 58 49 54 22  00 6A 56 48 21 20 20 20  |1) EXIT".jVH!   |
00004E60: 20 20 20 20 2E 42 59 54  20 30 00 83 56 52 21 4D  |    .BYT 0..VR!M|
00004E70: 45 4E 55 32 20 20 2E C6  20 22 20 20 20 45 4E 54  |ENU2  .. "   ENT|
00004E80: 45 52 22 00 A0 56 5C 21  20 20 20 20 20 20 20 2E  |ER"..V\!       .|
00004E90: C6 20 22 20 46 49 4C 45  20 4E 41 4D 45 3A 20 22  |. " FILE NAME: "|
00004EA0: 00 B2 56 66 21 20 20 20  20 20 20 20 2E 42 59 54  |..Vf!       .BYT|
00004EB0: 20 30 00 D2 56 70 21 4D  45 4E 55 33 20 20 2E C6  | 0..Vp!MENU3  ..|
00004EC0: 20 22 20 41 50 50 45 4E  44 20 54 4F 20 54 48 49  | " APPEND TO THI|
00004ED0: 53 22 00 F1 56 7A 21 20  20 20 20 20 20 20 2E C6  |S"..Vz!       ..|
00004EE0: 20 22 20 45 58 49 53 54  49 4E 47 20 46 49 4C 45  | " EXISTING FILE|
00004EF0: 22 00 0A 57 84 21 20 20  20 20 20 20 20 2E C6 20  |"..W.!       .. |
00004F00: 22 20 28 59 2F 4E 29 3F  20 22 00 1C 57 8E 21 20  |" (Y/N)? "..W.! |
00004F10: 20 20 20 20 20 20 2E 42  59 54 20 30 00 3F 57 98  |      .BYT 0.?W.|
00004F20: 21 4D 45 4E 55 34 20 20  2E C6 20 22 4F 55 54 50  |!MENU4  .. "OUTP|
00004F30: 55 54 20 44 45 56 49 43  45 20 4E 4F 54 20 22 00  |UT DEVICE NOT ".|
00004F40: 57 57 A2 21 20 20 20 20  20 20 20 2E C6 20 22 50  |WW.!       .. "P|
00004F50: 52 45 53 45 4E 54 22 00  69 57 AC 21 20 20 20 20  |RESENT".iW.!    |
00004F60: 20 20 20 2E 42 59 54 20  30 00 8B 57 B6 21 43 4F  |   .BYT 0..W.!CO|
00004F70: 4C B0 53 20 2E 42 59 54  20 35 2C 31 34 2C 31 35  |L.S .BYT 5,14,15|
00004F80: 2C 36 2C 36 2C 30 2C 31  35 2C 35 00 AE 57 C0 21  |,6,6,0,15,5..W.!|
00004F90: 20 20 20 20 20 20 20 2E  42 59 54 20 30 2C 33 2C  |       .BYT 0,3,|
00004FA0: 36 2C 31 34 2C 32 2C 36  2C 31 31 2C 31 30 00 C6  |6,14,2,6,11,10..|
00004FB0: 57 CA 21 4D 45 53 42 55  46 20 2E C6 20 22 20 44  |W.!MESBUF .. " D|
00004FC0: 49 53 4B 3A 20 22 00 D5  57 D4 21 45 52 52 42 55  |ISK: "..W.!ERRBU|
00004FD0: 46 20 B2 20 AC 00 E2 57  DE 21 AC B2 AC 20 AA 20  |F . ...W.!... . |
00004FE0: 34 30 00 EF 57 E8 21 43  4F 4C B0 20 B2 20 AC 00  |40..W.!COL. . ..|
00004FF0: FE 57 F2 21 AC B2 AC 20  AA 20 31 30 32 34 00 0B  |.W.!... . 1024..|
00005000: 58 FC 21 4D 45 4E 55 20  B2 20 AC 00 19 58 06 22  |X.!MENU . ...X."|
00005010: AC B2 AC 20 AA 20 32 34  30 00 26 58 10 22 A5 41  |... . 240.&X.".A|
00005020: 4D 45 20 B2 20 AC 00 33  58 1A 22 AC B2 AC 20 AA  |ME . ..3X."... .|
00005030: 20 32 30 00 42 58 24 22  53 54 4B 54 4D 50 20 B2  | 20.BX$"STKTMP .|
00005040: 20 AC 00 4C 58 2E 22 AC  B2 AC AA 31 00 5B 58 38  | ..LX."....1.[X8|
00005050: 22 54 4D 50 42 59 54 20  B2 20 AC 00 65 58 42 22  |"TMPBYT . ..eXB"|
00005060: AC B2 AC AA 31 00 00 00                           |....1...        |
.......700:.OPT OO.......$C000.$...;.J..
.;.................................P...;
.                              ......;. 
          SNAG 1.0           ....$.;.   
                           ......;. COPY
RIGHT 1987  BY NICK PECK ....8.;.       
                       ....B.;..........
.......................4.L.;.U.V.NMIOFF 
.$FEC1 ;. IS OFF HERE.Z.`.STUFF  .$F000 
;MEM. . SNAG STACK...J.STRING .$AB1E ;DI
SPLAY A STRING.A.T..IN  .$FFE4 ;. A KEYB
OARD BYTE...~.CHROUT .$FFD2 ;OUTPUT A BY
TE.....CHRIN  .$FFCF ;64'S . ROUTINE.'..
.PLOT   .$FFF0 ;PLOT 64'S CURS..?...   .
$FFC3 ;  A FILE.^...CLALL  .$FFE7 ;  ALL
 FILES.W....   .$FFC0 ;. A FILE.....SETN
AM .$FFBD ;SET FILE NAME...D.SETLFS .$FF
BA ;SET FILE STATUS...N.TALK   .$FFB4 ;M
AKE DEVICE TALK...X.TKSA   .$FF96 ;TALK 
SEC.D ADDRESS.)...CHKOUT .$FFC9 ;. OUTPU
T CHANNEL.O...UNTLK  .$FFAB ;MAKE DEVICE
 UNTALK.O...ACPTR  .$FFA5 ;SERIAL P.T ..
....CURSCO .$0286 ;64'S CURS. COL......S
CNLIN .$0748 ;START OF MENU.Y...TXTLIN .
$0770 ;START OF TEXT LINE.....COLLIN .$D
B48 ;MENU COL. MEM.Y.#.(.A      .$02 ;TE
MPS USED EVERYWHERE.D.2.B      .$03 ;   
  ''      ''.E.<.XTEMP  .$04 ;     ''   
   ''...F.YTEMP  .$05 ;     ''      ''..
.P.BLOCKX .$FD ;.ITI. OF BLOCK.G.Z.BLOCK
Y .$FE ;     ''      ''...D.X.   .$FB ;.
ITI. OF CURS....N.Y.   .$FC ;     ''    
  ''.+.X.LOWPNT .$06 ;LOW.HIGH USED IN P
LOT.L...HIGHPT .$07 ;     ''      ''.O..
.COLLOW .$22 ;USED . . OLD COL......COLH
II .$23 ;     ''      ''... .OLDCOL .$24
 ;FLAG. USE OLD COL..X...ADDMOV .$25 ;FL
AG. RIGHT . DOWN.....XPTEMP .$4B ;TEMP .
 MAKE BLOCK.....YPTEMP .$4C ;     ''    
  ''.=.H.XBTEMP .$4D ;     ''      ''.^.
R.YBTEMP .$4E ;     ''      ''.....FLPPL
T .$4F ;FLAG. PLOT Y,X .(X,Y).....OUTPUT
 .$50 ;FLAG. OUTPUT UNBLOCK.K...LASTCH .
$51 ;TEMP . UNBLOCK.....CHOICE .$52 ;APP
. CHOICE (Y.N).....CURCOL .$53 ;CURRENT 
SNAG COL..6...QTMODE .$D4 ;64 QUOTE MODE
 ..OFF.<...;._.".;THE FOLLOWING CODE COP
IES THE...,.;STACK . ZERO PAGE SO THAT S
NAG...6.;HAS IT'S OWN STACK . ZERO PAGE.
N.@.;WHEN ENTERED VIA THE HARDWARE IRQ.T
.J.;...T..STR LDA #"N"      ;START APP..
..^.       STA CHOICE    ;CHOICE AS 'N.2
.H.       LDA #"/".V.R.       STA .AME  
   ;START FILE.|.|.       LDA #","      
;NAME AS '.'.....       STA .AME.1..... 
      SEI.B...       LDA #.RTHERE   ;SET
 ......       PHA            ;ADDRESS ..
....       LDA #.RTHERE.1 ;FLIP STACK.1.
..       PHA            ;ROUTINE..T.B.  
     TSX            ;. STACK.U.L.       
STX STKTMP     ;PO.ER...V.       LDA #0.
....       STA $FB        ;COPY FIRST.T.
..       STA $FC        ;4 BLOCKS OF....
.       LDA #.STUFF    ;MEM.Y.....      
 STA $FD.....       LDA #.STUFF.2...    
   STA $FE.D...       LDX #4.V.&.       
LDY #2.L.0.MR.IT LDA ($FB),Y...:.       
STA ($FD),Y...D.       INY...N.       BN
E MR.IT...X.       INC $FC.M.B.       IN
C $FE...L.       DEX...V.       BNE MR.I
T.....       LDA #.NMIOFF  ;SNAG VEC.RS.
8...       STA $0318     ;SNAG ..^...   
    LDA #.NMIOFF  ;IS DISABLED.S...     
  STA $0319.....       LDA #.EXTSNG  ;BR
K VEC.R.....       STA $0316     ;IS USE
D ......       LDA #.EXTSNG  ;EXIT SNAG.
..F.       STA $0317...P.       LDA #.ST
ART  ;. PCH.".Z.       PHA.A...       LD
A #.START  ;. PCL.P...       PHA.P...   
    LDA #0       ;STATUS....       PHA.
....       PHA          ;.A.....       P
HA          ;.X.S. .       PHA          
;.Y...*.       LDA #.RTHRE2   ;SET ....4
.       PHA            ;ADDRESS ..;.>.  
     LDA #.RTHRE2.1 ;. FLIP.A.H.       P
HA            ;STACK CALL...R.       JMP
 FLIPMM   ;FLIP STACKS...\.RTHERE LDA #.
BASERR ;CHANGE BASICS.S.F.       STA $03
00    ;ERR. MESSAGE...P.       LDA #.BAS
ERR ;VEC.R ....Z.       STA $0301    ;RE
SET IRQ.&...       CLI.J...       LDA #9
6      ;PUT AN RTS.O...       STA .STR  
 ;IN FIRST BYTE.~...       RTS.....;....
.;EVERY TIME BASIC .S AN ERR..D...;. A '
.Y' THE IRQ VEC.R IS.T.J.;SET . SNAG.Z.T
.;.....BASERR SEI.....       LDY #.KTHER
 ;. IRQ THAT./...       STY $0314    ;LO
OKS . A.O...       LDY #.KTHER ;CTRL.F3.
D...       STY $0315.S...       CLI.....
       JMP $E38B...$.;.....;THE IRQ COME
S HERE . LOOK ....8.;A CTRL.F3.D.B.;...L
.KTHER LDA $C5      ;LOOK . F3...V.     
  CMP #5...`.       BEQ YESF3.".J.OUTIRQ
 JMP $EA31.G.T.YESF3  LDA $028D    ;LOOK
 . CTRL.Y.~.       CMP #4.O...       BNE
 OUTIRQ.....       LDA #.RETEXT.....    
   PHA.....       LDA #.RETEXT.1.....   
    PHA.....       JMP FLIPMM   ;FLIP ST
ACKS...D.RTHRE2 JMP $EA31...N.;...X.EXTS
NG LDA #.RTHRE2.&...       PHA.@...     
  LDA #.RTHRE2.1.O...       PHA.T...    
   JMP FLIPMM   ;FLIP STACKS.....RETEXT 
JMP $EA31.....;.....;THIS ROUTINE FLIPS 
THE STACK.Q.(.;MEM.Y WITH A MOD.IED STAC
K...2.;IN MEM.Y WITHOUT U.G...<.;ZERO PA
GE...F.;...P.FLIPMM LDA #.STUFF.:.Z.    
   STA .P.1    ;SOURCE LOW.R.D.       ST
A STUFF2.1.I.N.       LDA #.STUFF...X.  
     STA .P.2    ;SOURCE HIGH.....      
 STA STUFF2.2.....       LDA #0.Y...    
   STA STUFF1.1 ;TAR. LOW... .       STA
 STUFF3.1.....       STA STUFF1.2 ;TAR. 
HIGH.,...       STA STUFF3.2.>...       
LDY #4.P.H.       LDX #2.R.R..PLOP LDA #
52      ;OFF BASIC.....       STA $01...
...P    LDA $FFFF,X  ;SOURCE.....       
STA TMPBYT.....       LDA #55      ;. BA
SIC.....       STA $01.....STUFF1 LDA $F
FFF,X  ;TAR..,...STUFF2 STA $FFFF,X  ;SO
URCE.B.".       LDA TMPBYT.`.,.STUFF3 ST
A $FFFF,X  ;TAR..O.6.       INX...@.    
   BNE .PLOP...J.       INC .P.2...T.   
    INC STUFF1.2.H.^.       INC STUFF2.2
...H.       INC STUFF3.2...R.       DEY.
..|.       BNE .PLOP.(...       LDA STKT
MP   ;FLIP STACK.H...       TSX         
 ;PO.ERS.^...       STX STKTMP.M...     
  TAX.|...       TXS.....       RTS...B.
;...L.START  LDY #0       ;ACTUAL START.
..V.       STY X.     ;OF SNAG CODE.....
       LDA #216.....       STA Y..%...  
     LDA #.COL.  ;MAKE A COPY.H...      
 STA BLOCKX   ;OF SCREEN.E...       LDA 
#.COL.  ;COL..{...       STA BLOCKY.....
       LDX #4...&.TRANS  LDA (X.),Y...0.
       STA (BLOCKX),Y.L.:.       INY...D
.       BNE TRANS...N.       INC Y....X.
       INC BLOCKY...B.       DEX.?.L.   
    BNE TRANS    ;SET SNAG CUR..`.V.    
   LDA 53281    ;S. COL......       . #1
5      ;ACC.DING ......       TAX       
   ;TABLE.....       LDA COL.S,X.N...   
    STA CURCOL.....       LDX #255     ;
DISABLE BLOCK.. ..       STX BLOCKX   ;W
ITH TWO FF'S.2 ..       STX BLOCKY.A F. 
      INX.E P.       STX OLDCOL ;1 . OLD
 COL... Z.       STX ADDMOV ;1 . ADD X .
 Y.. ..       STX FLPPLT ;1 . Y,X . X,Y.
R ..       STX OUTPUT ;1 . DISK..R.. .. 
      STX X.   ;CURS. X . Y..!..       S
TX Y...!..       TXA.8!..       TAY     
   ;PLOT INITIAL.U! .       JSR REVERS ;
CURS..E!*..M. JSR .IN.X!4.       BEQ .M.
..!>.       CMP #"."   ;IS IT AN F1..!H.
       BNE NO..S!R.       JSR UNBLCK ;YE
S, SHUT OFF..!\.       LDX X.   ;BLOCK, 
ERASE.."F.       LDY Y.   ;CURS. . EXIT.
9"P.       INC OLDCOL ;ACC.DING ..^"Z.  
     JSR REVERS ;THE BRK VEC.R.M"..     
  BRK.."..       NOP:NOP:NOP ;PC .S.."..
       JMP START   ;HERE.I"..NO. CMP #".
"    ;CURS. RIGHT.."..       BNE .RIT.."
..       LDX X...#..       CPX #39..#J. 
      BEQ .RIT.;#T.       INC ADDMOV  ;S
ET ADD FLAG.^#..       JSR XBLOCK  ;MOVE
 RIGHT..#..       DEC ADDMOV  ;UNSET ADD
 FLAG..#...RIT CMP #"."    ;CURS. LEFT..
#..       BNE .LFT.L#..       LDX X...#.
.       BEQ .LFT..$..       INC OLDCOL  
;SET COL. FLAG.($$.       JSR XBLOCK  ;M
OVE LEFT.O$..       DEC OLDCOL  ;UNSET C
OL FLAG.P$8..LFT CMP #"."    ;CURS. DOWN
..$B.       BNE .DWN..$L.       LDX Y...
$V.       CPX #24..$`.       BEQ .DWN..$
J.       INC ADDMOV  ;SET ADD FLAG..%T. 
      JSR YBLOCK  ;MOVE DOWN.+%~.       
DEC ADDMOV  ;UNSET ADD FLAG.J%...DWN CMP
 #"."    ;CURS. UP.]%..       BNE .UP.O%
..       LDX Y...%..       BEQ .UP..%.. 
      INC OLDCOL  ;SET COL. FLAG.H%..   
    JSR YBLOCK  ;MOVE UP..%D.       DEC 
OLDCOL  ;UNSET COL FLAG..&N..UP  CMP #".
"    ;REVERSE OFF.%&X.       BNE .UNB.L&
..       JSR UNBLCK  ;SHUT OFF BLOCK.L&.
..UNB CMP #"."    ;REVERSE ...&..       
BNE NOSBLK..&..       JSR .BLCK  ;TURN .
 BLOCK.B&..NOSBLK CMP #13     ;A ..V&.. 
      BNE .RET..&..       JMP .MEN  ;K .
 . MENU..'(..RET JMP .M..+'2.       JMP 
.M.  ;3 EXTRA BYTES.L'<.       RTS      
   ;. .ANSI..R'F.;.T'P..MEN JSR PLINES  
;PUT LINES ...'Z..MN2 LDA CURCOL  ;SET C
URS...'D.       STA CURSCO  ;COL..V'N.  
     LDA #.MENU1 ;DISPLAY SNAG..'X.     
  LDY #.MENU1 ;MENU OPTI.S..(..       JS
R STRING.*(.... JSR .IN   ;. A KEY.<(.. 
      BEQ ...`( .       CMP #"."    ;IS 
IT AN F1..(..       BNE .ESC  ;NO, MOVE 
...(..       JSR LEV.  ;YES, ...(..     
  JMP .M.  ;SCREEN . K..(H..ESC CMP #"P"
    ;IS KEY .ER..)R.       BNE .PNT  ;NO
, MOVE ...)..       JSR OPNPNT  ;. .ER.=
)..       LDA #13     ;. A CR.S)..      
 JSR CHROUT.Q)..       JSR CLSFIL  ;  .E
R..)..       LDA $90    ;IS .ER ...)..  
     BEQ KAHED ;YES, MOVE ..X)..       J
MP SHOERR ;NO, SHOW ERR...)".KAHED JSR O
PNPNT ;RE.. .ER..*,.       JMP PROCE2 ;.
 BLOCK.3*6.OPNPNT LDY #$FF   ;.AULT.M*@.
       LDA #%00000010.S*J.       BIT 532
72   ;CHECK UP CASE..*T.       BEQ UPCAS
E..*^.       LDY #7     ;NO, . LOWER.O*H
.UPCASE LDA #32    ;FILE NUMBER..*R.    
   LDX #4     ;DEVICE NUMBER..+|.       
JSR SETLFS ;SET UP FILE #32.@+..       L
DA #0     ;SET NILL NAME.V+..       JSR 
SETNAM.X+..       JSR LEV. ;ERASE . MENU
..+..       JSR .   ;. FILE #32..+..    
   LDX #32    ;MAKE FILE #32..+..       
JSR CHKOUT ;AN OUTPUT FILE..+B.       RT
S..,L..PNT CMP #"F"   ;IS KEY A FILE.3,V
.       BNE .. ;NO, K . KEY.V,..       J
SR SPACE  ;CLEAR SPACE.T,..       LDA #.
MENU2 ;ASK ...,..       LDY #.MENU2 ;FIL
E NAME..,..       JSR STRING..,..       
LDX #0..,..M.NAM LDA .AME,X ;. LAST..-..
       CMP #","    ;NAME UNTIL A.#-&.   
    BEQ .NAM  ;COMMA (,) IS.?-0.       J
SR CHROUT  ;HIT.N-:.       INX.C-D.     
  BNE M.NAM.-N..NAM LDX #22     ;.ITI..
 -X.       LDY #20     ;CURS. AT.C-B.   
    CLC         ;START OF ..W-L.       J
SR PLOT..-V.       INC QTMODE  ;QUOTE MO
DE ......       LDY #0.,....IT JSR CHRIN
   ;KERNAL ..?...       CMP #13.S...    
   BEQ .INP.Q...       STA .AME,Y ;S.RE 
......       INY.....       BNE .IT...F.
.INP LDA #","      ;TACK . ,S,...P.     
  STA .AME,Y   ;LEAVING THE../Z.       L
DA #"S"      ;LAST BYTE ..%/..       STA
 .AME.1,Y ;BE CHOOSEN.E/..       LDA #",
"      ;LATER.]/..       STA .AME.2,Y.N/
..       STY A../..       JSR SPACE../..
       LDA #.MENU3  ;ASK . AN.C/ .      
 LDY #.MENU3  ;APP..Y/*.       JSR STRIN
G../4.       LDA CHOICE   ;. LAST..0>.  
     JSR CHROUT   ;CHOICE (Y ..A0H.     
  LDA #"."     ;APP., N ..A0R.       JSR
 CHROUT   ;WRITE)..0\.       INC QTMODE 
  ;QUOTE MODE ...0F.       JSR CHRIN    
;KERNAL ...0P.       TAY..0Z.       STY 
CHOICE   ;. RESP.SE..0..UNT. JSR CHRIN  
  ;EMPTY ...1..       CMP #13      ;BUFF
ER..1..       BNE UNT..D1..       LDX CH
OICE.I1..       LDA #"W"     ;N . W(RITE
).Z1..       LDY A..1..       CPX #"Y"..
1J.       BNE .APN.F1T.       LDA #"A"  
   ;Y . A(PP.)..1...APN STA .AME.3,Y..1.
.       TYA..2..       CLC          ;ADJ
UST CGTH.62..       ADC #4       ;OF FIL
E NAME.L2..       LDX #..AME.B2..       
LDY #..AME..2..       JSR SETNAM   ;KERN
AL SETNAM..2$.       LDA #32..2..       
LDX #8..28.       LDY #2.V2B.       JSR 
SETLFS..2L.       JSR LEV.  ;ERASE . MEN
U..3V.       LDA #8..3`.       LDX #0.03
J.       STX $90.W3T.       JSR TALK    
;MAKE DISK TALK.Z3~.       JSR UNTLK   ;
. SEE . IT..3..       LDX $90     ;IS TU
RNED ...3..       BEQ NODKER  ;., MOVE .
..3..       JMP SHOERR  ;OFF,SHOW ERR...
3..NODKER JSR ...4..       LDA #8       
;CHECK . A.=4..       STA $BA      ;DISK
 ERR..A4D.       JSR TALK     ;AFTER .IN
G.U4N.       LDA #$6F..4X.       JSR TKS
A..4..       LDY #0..4..M.ERR JSR ACPTR.
O4..       STA ERRBUF,Y ;. DISK..4..    
   INY          ;MESSAGE..5..       CMP 
#13..5..       BNE M.ERR.-5..       JSR 
UNTLK.?5(.       LDA #0.A52.       STA E
RRBUF,Y ;. WITH 0..5<.       LDA ERRBUF 
  ;WAS THERE AN..5F.       CMP #"0"     
;ERR...5P.       BEQ PROCED..5Z.       J
SR PLINES   ;YES, DISPLAY..6D.       LDA
 #.MESBUF ;DISK ERR..%6N.       LDY #.ME
SBUF ;MESSAGE.;6X.       JSR STRING.[6..
       JSR CLSFIL   ;  FILE.}6..       J
MP .IT   ;EXIT . MENU..6..PROCED LDX #32
..6 .       JSR CHKOUT..6..;.G6..;THE .E
R ALSO USES THE..6..;FOLLOWING CODE . OU
TPUT ITS..6H.;BLOCK..6R.;. 7..PROCE2 INC
 OUTPUT ;SET OUTPUT FLAG.D7..       JSR 
UNBLCK ;OUTPUT BLOCK.I7..       DEC OUTP
UT ;UNSET OUTPUT...7..       LDA $BA    
;CHECK DEVICE..7..       CMP #4     ;.ER
.J7..       BNE NOPRNT ;NO, MOVE ...7.. 
      LDA #13    ;YES, DO A CR..8".     
  JSR CHROUT."8,.NOPRNT JSR CLSFIL ;  FI
LE.D86.       JMP .M. ;K . MAIN MENU.J8@
.;.L8J.CLSFIL LDA #32    ;  FILE #32.}8T
.       JSR  ..8^.       JMP CLALL..8H.;
..8R.SHOERR JSR PLINES ;PUT LINES ..N8|.
       LDX #22..8..       LDY #8..8..   
    CLC..9..       JSR PLOT.$9..       L
DA #.MENU4 ;. OUTPUT.J9..       LDY #.ME
NU4 ;DEVICE IS OFF.`9..       JSR STRING
.}9B..IT JSR .IN   ;. . A KEY..9L.      
 BEQ .IT..9V.       JSR SPACE   ;ERASE L
INES.V9..       JMP .MN2  ;OUTPUT MENU..
9..;..:..LEV. LDX #119    ;PUT OLD SCREE
N..:..LINES2 LDA MENU,X  ;BACK.6:..     
  STA SCNLIN,X.P:..       LDA MENU.120,X
.H:..       STA COLLIN,X.W:&.       DEX.
.:0.       BPL LINES2..::.       RTS..:D
.;..:N.PLINES LDX #119.W:X.LINES  LDA SC
NLIN,X ;. THREE..:B.       STA MENU,X   
;LINES OF THE.$;L.       LDA COLLIN,X ;S
CREEN IN MEM.>;V.       STA MENU.120,X.A
;..       LDA #64     ;USE A LINE.Y;..  
     STA SCNLIN,X..;..       LDA CURCOL 
 ;. COL...;..       STA COLLIN,X..;..   
    DEX.T;..       BPL LINES..;..SPACE  
LDX #39     ;CLEAR THE LINE..<F.       L
DA #32     ;USED . TEXT.7<P.ZAPSCN STA T
XTLIN,X.F<Z.       DEX.\<..       BPL ZA
PSCN.O<..       LDX #22..<..       LDY #
0      ;.ITI...<..       CLC         ;CU
RS. ..G<..       JMP PLOT    ;..M<..;..<
 .;C.VERTS X , Y .O LOW , HIGH..<*.;..=4
.MAKEXY LDA FLPPLT ;IS PLOT N.MAL..=>.  
     BEQ N.MAL.Q=H.       STX YTEMP  ;FL
IPPED Y,X.F=R.       STY XTEMP.|=\.     
  JMP THEPLT..=F.N.MAL STX XTEMP   ;N.MA
L X,Y..=P.       STY YTEMP.V=Z.THEPLT LD
A #4      ;SCREEN HIGH..=..       STA HI
GHPT..>..       LDA #.COL. ;.D COL..->..
       STA COLHII  ;HIGH BYTE.T>..      
 LDA #0     ;START MULT AT 0.Y>..       
LDX YTEMP  ;MULT .X TIMES..>..       BEQ
 NOMULT..>..M.MLT CLC.A>J.       ADC #40
     ;MULT. BY 40..>T.       BCC NOBRK  
 ;Y .ITI...>..       INC HIGHPT..?..    
   INC COLHII..?..NOBRK  DEX.1?..       
BNE M.MLT.@?..NOMULT CLC.E?..       ADC 
XTEMP   ;ADD HOW MANY..?..       BCC .BR
K  ;OVER..?$.       INC HIGHPT..?..     
  INC COLHII..?8..BRK STA LOWPNT.O?B.   
    RTS.U?L.;..?V.REVERS JSR MAKEXY..?`.
       LDY #0."@J.       LDA (LOWPNT),Y 
;. CHARAC..H@T.       E. #128  ;INVERT C
HARACTER.K@~.       STA LASTCH ;. CHARAC
TER..@..       STA (LOWPNT),Y ;PUT CHARA
C...@..       LDA HIGHPT.J@..       . #$
03   ;PREPARE HIGH..@..       .A #$D8   
;BYTE . COL...A..       STA HIGHPT.&A.. 
      LDA #.COL. ;SET LOW BYTE.HAD.     
  CLC         ;. .IGINAL.LAN.       ADC 
LOWPNT  ;SCREEN COL...AX.       BCC NOCO
BK  ;.D IN MEM..A..       INC COLHII..A.
.NOCOBK STA COLLOW..A..       LDA CURCOL
 ;. CURRENT COL..B..       LDX OLDCOL ;U
SE OLD COL..%B..       BEQ STRCOL ;NO, M
OVE ..JB..       LDA (COLLOW),Y ;YES, . 
IT.OB..STRCOL STA (LOWPNT),Y ;S.RE COL..
~B(.       RTS..B2.;..B<.PLOTXY LDX XPTE
MP..BF.       LDY YPTEMP.FBP.       JMP 
REVERS.LBZ.;..BD.CURS. LDA OLDCOL ;. COL
. FLAG..BN.       PHA..CX.       LDA #0.
6C..       STA OLDCOL ;PLOT SNAG CURSR.L
C..       JSR PLOTXY.NC..       PLA     
   ;RESET COL...C .       STA OLDCOL ;FL
AG..C..       RTS..C..;..C..FII  CMP #$2
0   ;FROM MEM.Y..CH.       BCS .E    ;. 
FII..CR.THREE  CLC..C..       ADC #$40..
D..       RTS. D...E    CMP #$40.3D..   
    BCS TWO.BD..       RTS.VD..TWO    CM
P #$60.KD..       BCS THREE.ZD".       C
LC..D,.       ADC #$20..D6.       RTS..D
@.;.JDJ.;THE FOLLOWING CODE EITHER PLOTS
 A..DT.;A .GLE REVERSED SPACE ...E^.;REV
ERSES A LINE . THE BLOCK IS..EH.;TURNED 
...ER.;.4E|.KSCRN LDA XPTEMP.JE..       
CMP XBTEMP._E..       BMI .EBLK.UE..    
   LDA YPTEMP..E..       CMP YBTEMP..E..
       BCS XXBLCK..E...EBLK INC OLDCOL.L
EB.       JSR PLOTXY..EL.       DEC OLDC
OL..EV.       LDA ADDMOV..F..       BEQ 
SUBIT.2F..       INC XPTEMP ;INC.ENT X P
OS.VF..       LDA XPTEMP ;IS X . BLOCK.L
F..       CMP XBTEMP..F..       BNE OUTH
RE..F..       DEC XPTEMP..F..       LDA 
YPTEMP  ;YES, BUT BE..F&.       CMP YBTE
MP  ;SURE Y . IS..G0.       BCS XXBLCK  
;. BLOCK .O..G:.       INC XPTEMP./GD.  
     BNE OUTHRE.EGN.SUBIT  DEC XPTEMP.ZG
X.OUTHRE JMP CURS..GB.XXBLCK LDA ADDMOV
  ;IS IT AN ADD..GL.       BEQ .ADD  ;0 
. SUB.CGV.       INC XPTEMP  ;OTHERWISE 
ADD.WG...ADD INC YPTEMP..G..       LDA X
PTEMP..G..       STA A..H..       LDA YB
TEMP.%H..       STA B.5H..M.LIN LDX A.FH
..       LDY B.\HF.       JSR REVERS.MHP
.       INC B.~HZ.       LDA B..H..     
  CMP YPTEMP..H..       BNE M.LIN..H..  
     DEC YPTEMP..H..       LDA ADDMOV ;W
AS IT A SUB..I..       BNE NOADDD ;1 . A
DD..I..       LDA XPTEMP..I .       CMP 
XBTEMP.BI*.       BNE .TND.XI4.       DE
C XPTEMP.MI>.       JMP CURS...IH..TND D
EC XPTEMP ;OTHERWISE SUB..IR.NOADDD RTS.
.I\.;.HIF.XBLOCK LDA X.   ;PREPARE TEMPS
..IP.       STA XPTEMP ;. A RIGHT ...JZ.
       LDA Y.   ;LEFT BLOCK MOVE.&J..   
    STA YPTEMP.<J..       LDA BLOCKX.RJ.
.       STA XBTEMP.HJ..       LDA BLOCKY
.~J..       STA YBTEMP. J..       JSR KS
CRN ;DO THE MOVE.AJ..       LDA XPTEMP ;
. CHANGED..JJ.       STA X.   ;.ITI. EUE
S..JT.       LDA YPTEMP..K..       STA Y
...K..       LDA #0.*K..       RTS.0K..;
.UK..YBLOCK INC FLPPLT ;PREPARE TEMPS.TK
..       LDA X.   ;. AN UP ...K..       
STA YPTEMP ;DOWN BLOCK MOVE..K$.       L
DA Y..CK..       STA XPTEMP.YK8.       L
DA BLOCKX..KB.       STA YBTEMP..LL.    
   LDA BLOCKY..LV.       STA XBTEMP.=L`.
       JSR KSCRN ;DO THE MOVE.^LJ.      
 LDA XPTEMP ;. CHANGED.~LT.       STA Y.
   ;.ITI. EUES..L~.       LDA YPTEMP..L.
.       STA X...L..       LDA #0.NL..   
    STA FLPPLT..L..       RTS..L..;..M..
UNBLCK LDA X.   ;IS X. INSIDE.%MD.      
 CMP BLOCKX ;OF BLOCK.KMN.       BMI NOB
LCK ;NO, LEAVE HERE.MMX.       LDA Y.   
;IS Y. INSIDE..M..       CMP BLOCKY ;OF 
BLOCK..M..       BMI NOBLCK ;NO, LEAVE H
ERE.IM..       LDA BLOCKY..M..       CMP
 #$FF   ;IS BLOCK OFF..N..       BEQ NOB
LCK ;YES, LEAVE HERE.*N..       STA YPTE
MP.PN..       INC OLDCOL ;RESET OLD COL.
.VN(.;.VN2.;THIS . PART FINDS THE . OF..
N<.;EACH BLOCK LINE SO NO SPACES ARE..NF
.;C.SIDERED AS OUTPUT.  THE ...NP.;SECTI
. . UN.DOES THE BLOCK..NZ.;. OUTPUTS . I
F THE OUTPUT..OD.;FLAG IS N..ZERO...ON.;
.*OX.REDUCE LDA X..;O..       STA A.QO..
       LDA BLOCKX.GO..       STA XPTEMP.
}O .       LDA YPTEMP..O..       STA B. 
O..M.RED JSR .XY.EO..       CMP #160   ;
IS IT A SPACE..OH.       BNE M.EX  ;NO, 
. FOUND..PR.       LDX A      ;YES, UN.D
O IT..P..       LDY B.DP..       JSR REV
ERS ;UNREVERSE SPACE.KP..       LDA A   
   ;HAS A LINE BEEN..P..       CMP BLOCK
X ;REDUCED..P..       BEQ YESX   ;YES, L
EAVE HERE.VP..       DEC A      ;NO, MOV
E LEFT..P..       JMP M.RED ;. . COLUMN.
.P".;. Q,.M.EX  JSR PLOTXY ;INVERSE CHAR
.BQ6.       LDA OUTPUT ;DISK . .ER.GQ@. 
      BEQ .OUT ;NO, SKIP OUTPUT..QJ.    
   LDA LASTCH ;. CHARACTER..QT.       CM
P #127..Q^.       BCC OKSIZE.GQH.       
E. #$80..QR.OKSIZE JSR FII  ;. . FII..R|
.       JSR CHROUT  ;OUTPUT IT..R...OUT 
LDA XPTEMP.?R..       CMP A      ;IS ROW
 ERASED.SR..       BEQ YESX.YR..       I
NC XPTEMP ;NO, ADD COLUMN..R..       BNE
 M.EX  ;. K BACK..R..YESX   LDA YPTEMP.P
RB.       CMP Y.   ;ARE ROWS D.E..RL.   
    BEQ YESY..RV.       LDA OUTPUT..S.. 
      BEQ NOCR.3S..       LDA #13    ;OU
TPUT .OFLNE.IS..       JSR CHROUT.LS..NO
CR   INC YPTEMP ;NO, ADD ROW..S.        
BNE REDUCE ;. K BACK..S. YESY   DEC OLDC
OL ;OFF COL. FLAG.RS.        LDA OUTPUT 
;.E M.E CR..S&        BEQ NOWAY..S0     
   LDA #13..T:        JSR CHROUT."TD NOW
AY  LDA X..8TN        STA XPTEMP.\TX    
    JSR PLOTXY ;TURN . CURS..PTB NOBLCK 
LDA #$FF..TL        STA BLOCKX ;TURN OFF
 BLOCK..TV        STA BLOCKY ;WITH TWO $
FF'S.KT.        RTS.QT. ;..T. .XY  LDX A
..T.        LDY B..U.        JSR MAKEXY.
.U.        LDY #0.3U.        LDA (LOWPNT
),Y.BUF        RTS.HUP ;.JUZ .BLCK JSR U
NBLCK ;UN DO BLOCK..U.        LDA X.   ;
START BLOCK AT..U.        STA BLOCKX ;CU
RS. X . Y.CU.        LDA Y..YU.!       S
TA BLOCKY..U.!       LDA #0..U.!       R
TS..V !;..V*!MENU1  .F "   (F) FILE ".=V
4!       .F "  (P) PRINTER  ".XV>!      
 .F " (F1) EXIT".JVH!       .BYT 0..VR!M
ENU2  .F "   ENTER". V\!       .F " FILE
 NAME: "..VF!       .BYT 0.RVP!MENU3  .F
 " APPEND TO THIS"..VZ!       .F " EXIST
ING FILE"..W.!       .F " (Y/N)? "..W.! 
      .BYT 0.?W.!MENU4  .F "OUTPUT DEVIC
E NOT ".WW.!       .F "PRESENT".IW.!    
   .BYT 0..W.!COL.S .BYT 5,14,15,6,6,0,1
5,5..W.!       .BYT 0,3,6,14,2,6,11,10.F
WJ!MESBUF .F " DISK: ".UWT!ERRBUF . ...W
.!... . 40..W.!COL. . ...W.!... . 1024..
X.!MENU . ...X."... . 240.&X.".AME . ..3
X."... . 20.BX$"STKTMP . ..LX."....1.[X8
"TMPBYT . ..EXB"....1...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL