CA-EDITOR   4302
FILE INFORMATION
FILENAME(S): CA-EDITOR   4302
FILE TYPE(S): SEQ
FILE SIZE: 13.8K
FIRST SEEN: 2025-11-30 21:23:12
APPEARS ON: 2 disk(s)
FILE HASH
490aa9518cb107d1da4f3230c2b3400875cb01b2c072001fb9e87cc18e84aec3
FOUND ON DISKS (2 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| C64 HULP 18 2 | CA-EDITOR   4302 | SEQ | DuncanTwain | 25 | 2 | DOWNLOAD FILE |
| C64 HULP 40 2 | CA-EDITOR   4302 | SEQ | DuncanTwain | 19 | 2 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 3B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |;+++++++++++++++| 00000010: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 00000020: 2B 2B 2B 0D 3B 2B 0D 3B 2B 20 4D 49 4E 49 2D 45 |+++.;+.;+ MINI-E| 00000030: 44 49 54 4F 52 0D 3B 2B 0D 3B 2B 20 56 45 52 53 |DITOR.;+.;+ VERS| 00000040: 49 4F 4E 20 36 2E 38 2E 33 0D 3B 2B 0D 3B 2B 20 |ION 6.8.3.;+.;+ | 00000050: 36 2F 32 38 2F 37 39 0D 3B 2B 0D 3B 2B 2B 2B 2B |6/28/79.;+.;++++| 00000060: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 00000070: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 0D 3B |++++++++++++++.;| 00000080: 0D 53 41 56 43 48 52 20 3D 20 24 30 30 20 3B 53 |.SAVCHR = $00 ;S| 00000090: 41 56 45 20 4E 45 57 20 43 48 41 52 20 46 4F 52 |AVE NEW CHAR FOR| 000000A0: 20 52 45 50 45 41 54 0D 44 45 4C 41 59 20 3D 20 | REPEAT.DELAY = | 000000B0: 24 30 31 20 3B 44 45 4C 41 59 20 42 45 46 4F 52 |$01 ;DELAY BEFOR| 000000C0: 45 20 52 45 50 45 41 54 0D 52 45 50 44 59 20 3D |E REPEAT.REPDY =| 000000D0: 20 24 30 32 20 3B 44 45 4C 41 59 20 42 45 54 57 | $02 ;DELAY BETW| 000000E0: 45 45 4E 20 52 45 50 45 41 54 53 0D 43 4F 55 4E |EEN REPEATS.COUN| 000000F0: 54 20 3D 20 24 30 35 0D 4C 49 4E 4E 55 4D 20 3D |T = $05.LINNUM =| 00000100: 20 24 31 31 0D 49 4E 44 45 58 31 20 3D 20 24 31 | $11.INDEX1 = $1| 00000110: 46 0D 49 4E 44 45 58 32 20 3D 20 24 32 31 0D 54 |F.INDEX2 = $21.T| 00000120: 58 54 54 41 42 20 3D 20 24 32 38 20 3B 42 45 47 |XTTAB = $28 ;BEG| 00000130: 49 4E 20 4F 46 20 53 4F 55 52 43 45 0D 56 41 52 |IN OF SOURCE.VAR| 00000140: 54 41 42 20 3D 20 24 32 41 20 3B 42 59 54 45 20 |TAB = $2A ;BYTE | 00000150: 41 46 54 45 52 20 54 52 49 50 20 5A 45 52 4F 53 |AFTER TRIP ZEROS| 00000160: 0D 53 54 52 45 4E 44 20 3D 20 24 32 45 0D 46 52 |.STREND = $2E.FR| 00000170: 45 54 4F 50 20 3D 20 24 33 30 0D 4D 45 4D 53 49 |ETOP = $30.MEMSI| 00000180: 5A 20 3D 20 24 33 34 20 3B 54 4F 50 20 4F 46 20 |Z = $34 ;TOP OF | 00000190: 4D 45 4D 4F 52 59 20 53 50 41 43 45 0D 4F 4C 44 |MEMORY SPACE.OLD| 000001A0: 4C 49 4E 20 3D 20 24 33 38 0D 49 4E 50 50 54 52 |LIN = $38.INPPTR| 000001B0: 20 3D 20 24 34 30 0D 4C 53 54 50 4E 54 20 3D 20 | = $40.LSTPNT = | 000001C0: 24 34 36 0D 4C 4F 57 54 52 20 3D 20 24 35 43 0D |$46.LOWTR = $5C.| 000001D0: 46 41 43 48 4F 20 3D 20 24 35 46 20 3B 46 4C 4F |FACHO = $5F ;FLO| 000001E0: 41 54 20 41 43 43 55 4D 0D 54 58 54 50 54 52 20 |AT ACCUM.TXTPTR | 000001F0: 3D 20 24 37 37 0D 43 49 4E 56 20 3D 20 24 39 30 |= $77.CINV = $90| 00000200: 20 3B 49 4E 44 49 52 45 43 54 20 49 52 51 20 56 | ;INDIRECT IRQ V| 00000210: 45 43 54 4F 52 0D 53 41 54 55 53 20 3D 20 24 39 |ECTOR.SATUS = $9| 00000220: 36 20 3B 49 2F 4F 20 53 54 41 54 55 53 0D 4C 53 |6 ;I/O STATUS.LS| 00000230: 54 58 20 3D 20 24 39 37 20 3B 4C 41 53 54 20 4B |TX = $97 ;LAST K| 00000240: 45 59 20 48 49 54 0D 4E 44 58 20 3D 20 24 39 45 |EY HIT.NDX = $9E| 00000250: 20 3B 4E 55 4D 42 45 52 20 43 48 41 52 20 49 4E | ;NUMBER CHAR IN| 00000260: 20 42 55 46 46 45 52 0D 42 4C 4E 43 54 20 3D 20 | BUFFER.BLNCT = | 00000270: 24 41 38 20 3B 43 54 52 20 42 45 54 57 45 45 4E |$A8 ;CTR BETWEEN| 00000280: 20 43 52 53 52 20 42 4C 49 4E 4B 53 0D 57 53 57 | CRSR BLINKS.WSW| 00000290: 20 3D 20 24 42 33 0D 54 31 20 3D 20 24 42 34 0D | = $B3.T1 = $B4.| 000002A0: 54 32 20 3D 20 24 42 35 0D 54 33 20 3D 20 24 42 |T2 = $B5.T3 = $B| 000002B0: 36 0D 46 4E 4C 45 4E 20 3D 20 24 44 31 0D 4C 41 |6.FNLEN = $D1.LA| 000002C0: 20 3D 20 24 44 32 20 3B 4C 4F 47 49 43 41 4C 20 | = $D2 ;LOGICAL | 000002D0: 41 44 52 0D 53 41 20 3D 20 24 44 33 20 3B 53 45 |ADR.SA = $D3 ;SE| 000002E0: 43 4F 4E 44 20 41 44 52 0D 46 41 20 3D 20 24 44 |COND ADR.FA = $D| 000002F0: 34 20 3B 46 49 52 53 54 20 41 44 52 0D 54 42 55 |4 ;FIRST ADR.TBU| 00000300: 46 20 3D 20 24 44 36 20 3B 41 43 54 49 56 45 20 |F = $D6 ;ACTIVE | 00000310: 43 41 53 53 45 54 54 45 20 42 55 46 20 50 54 52 |CASSETTE BUF PTR| 00000320: 0D 46 4E 41 44 52 20 3D 20 24 44 41 0D 42 55 46 |.FNADR = $DA.BUF| 00000330: 4F 46 53 20 3D 20 24 30 32 30 30 20 3B 42 41 53 |OFS = $0200 ;BAS| 00000340: 49 43 20 49 4E 50 55 54 20 42 55 46 46 45 52 0D |IC INPUT BUFFER.| 00000350: 43 48 52 47 45 54 20 3D 20 24 30 30 37 30 20 3B |CHRGET = $0070 ;| 00000360: 47 45 54 20 43 48 41 52 20 52 4F 55 54 49 4E 45 |GET CHAR ROUTINE| 00000370: 0D 43 48 52 47 4F 54 20 3D 20 24 30 30 37 36 20 |.CHRGOT = $0076 | 00000380: 3B 47 45 54 20 4C 41 53 54 20 43 48 41 52 0D 43 |;GET LAST CHAR.C| 00000390: 48 52 52 54 53 20 3D 20 24 30 30 38 37 0D 4B 45 |HRRTS = $0087.KE| 000003A0: 59 44 20 3D 20 24 30 32 36 46 20 3B 4B 45 59 42 |YD = $026F ;KEYB| 000003B0: 4F 41 52 44 20 49 4E 50 55 54 20 42 55 46 0D 42 |OARD INPUT BUF.B| 000003C0: 45 47 49 4E 20 3D 20 24 37 30 30 30 20 3B 42 45 |EGIN = $7000 ;BE| 000003D0: 47 49 4E 20 4D 49 4E 49 2D 45 44 49 54 4F 52 20 |GIN MINI-EDITOR | 000003E0: 48 45 52 45 0D 57 41 52 4D 20 3D 20 24 43 33 38 |HERE.WARM = $C38| 000003F0: 39 20 3B 57 41 52 4D 20 53 54 41 52 54 20 4F 46 |9 ;WARM START OF| 00000400: 20 42 41 53 49 43 0D 49 4E 53 45 52 54 20 3D 20 | BASIC.INSERT = | 00000410: 24 43 33 42 31 20 3B 49 4E 53 45 52 54 20 4C 49 |$C3B1 ;INSERT LI| 00000420: 4E 45 20 49 4E 54 4F 20 53 4F 55 52 43 45 0D 46 |NE INTO SOURCE.F| 00000430: 49 4E 49 20 3D 20 24 43 34 33 39 20 3B 46 49 58 |INI = $C439 ;FIX| 00000440: 45 53 20 4C 49 4E 4B 53 20 42 41 43 4B 20 54 4F |ES LINKS BACK TO| 00000450: 20 52 45 41 44 59 0D 46 4E 44 4C 49 4E 20 3D 20 | READY.FNDLIN = | 00000460: 24 43 35 32 43 20 3B 46 49 4E 44 53 20 4C 49 4E |$C52C ;FINDS LIN| 00000470: 45 20 49 4E 20 53 4F 55 52 43 45 0D 53 43 52 54 |E IN SOURCE.SCRT| 00000480: 43 48 20 3D 20 24 43 35 35 44 20 3B 4E 45 57 20 |CH = $C55D ;NEW | 00000490: 41 4C 4C 0D 4C 49 4E 47 45 54 20 3D 20 24 43 38 |ALL.LINGET = $C8| 000004A0: 37 33 20 3B 47 45 54 53 20 41 53 43 49 49 20 4E |73 ;GETS ASCII N| 000004B0: 55 4D 20 49 4E 54 4F 20 4C 49 4E 4E 55 4D 0D 43 |UM INTO LINNUM.C| 000004C0: 52 44 4F 20 3D 20 24 43 39 45 32 20 3B 28 43 52 |RDO = $C9E2 ;(CR| 000004D0: 29 20 28 4C 46 29 0D 43 48 4B 43 4F 4D 20 3D 20 |) (LF).CHKCOM = | 000004E0: 24 43 44 46 38 20 3B 43 48 45 43 4B 53 20 46 4F |$CDF8 ;CHECKS FO| 000004F0: 52 20 41 20 43 4F 4D 4D 41 0D 53 4E 45 52 52 20 |R A COMMA.SNERR | 00000500: 3D 20 24 43 45 30 33 20 3B 53 59 4E 54 41 58 20 |= $CE03 ;SYNTAX | 00000510: 45 52 52 4F 52 0D 47 45 54 42 59 54 20 3D 20 24 |ERROR.GETBYT = $| 00000520: 44 36 37 36 20 3B 47 45 54 53 20 42 59 54 45 20 |D676 ;GETS BYTE | 00000530: 49 4E 54 4F 20 58 20 52 45 47 0D 47 45 54 4E 55 |INTO X REG.GETNU| 00000540: 4D 20 3D 20 24 44 36 43 36 20 3B 47 45 54 53 20 |M = $D6C6 ;GETS | 00000550: 4E 55 4D 20 49 4E 54 4F 20 4C 49 4E 55 4D 0D 46 |NUM INTO LINUM.F| 00000560: 4C 4F 41 54 43 20 3D 20 24 44 42 35 35 20 3B 46 |LOATC = $DB55 ;F| 00000570: 4C 4F 41 54 20 31 36 42 49 54 20 49 4E 54 0D 4C |LOAT 16BIT INT.L| 00000580: 49 4E 50 52 54 20 3D 20 24 44 43 44 39 20 3B 50 |INPRT = $DCD9 ;P| 00000590: 52 54 20 4C 49 4E 45 20 23 0D 46 4F 55 54 20 3D |RT LINE #.FOUT =| 000005A0: 20 24 44 43 45 39 20 3B 4D 41 4B 45 20 41 53 43 | $DCE9 ;MAKE ASC| 000005B0: 49 49 20 23 20 49 4E 20 24 30 31 30 31 0D 49 52 |II # IN $0101.IR| 000005C0: 51 56 45 43 20 3D 20 24 45 36 32 45 20 3B 4B 45 |QVEC = $E62E ;KE| 000005D0: 59 42 4F 41 52 44 20 49 52 51 0D 50 41 52 53 31 |YBOARD IRQ.PARS1| 000005E0: 31 20 3D 20 24 46 34 34 37 20 3B 50 41 52 53 45 |1 = $F447 ;PARSE| 000005F0: 20 4C 49 4B 45 20 4C 4F 41 44 2F 53 41 56 45 0D | LIKE LOAD/SAVE.| 00000600: 43 4C 53 45 49 20 3D 20 24 46 36 32 45 20 3B 43 |CLSEI = $F62E ;C| 00000610: 4C 4F 53 45 20 43 48 41 4E 4E 45 4C 0D 42 53 49 |LOSE CHANNEL.BSI| 00000620: 56 20 3D 20 24 46 43 39 42 20 3B 49 52 51 20 46 |V = $FC9B ;IRQ F| 00000630: 49 58 45 52 20 52 4F 55 54 49 4E 45 0D 4F 50 45 |IXER ROUTINE.OPE| 00000640: 4E 20 3D 20 24 46 35 32 31 20 3B 4F 50 45 4E 20 |N = $F521 ;OPEN | 00000650: 4C 4F 47 49 43 41 4C 20 46 49 4C 45 0D 43 4C 4F |LOGICAL FILE.CLO| 00000660: 53 45 20 3D 20 24 46 32 41 39 20 3B 43 4C 4F 53 |SE = $F2A9 ;CLOS| 00000670: 45 20 4C 4F 47 49 43 41 4C 20 46 49 4C 45 0D 43 |E LOGICAL FILE.C| 00000680: 48 4B 49 4E 20 3D 20 24 46 46 43 36 20 3B 53 45 |HKIN = $FFC6 ;SE| 00000690: 54 55 50 20 46 4F 52 20 49 4E 50 55 54 0D 43 4B |TUP FOR INPUT.CK| 000006A0: 4F 55 54 20 3D 20 24 46 46 43 39 20 3B 53 45 54 |OUT = $FFC9 ;SET| 000006B0: 55 50 20 46 4F 52 20 4F 55 54 50 55 54 0D 43 4C |UP FOR OUTPUT.CL| 000006C0: 52 43 48 20 3D 20 24 46 46 43 43 20 3B 43 4C 45 |RCH = $FFCC ;CLE| 000006D0: 41 52 53 20 41 43 54 49 56 45 20 43 48 41 4E 4E |ARS ACTIVE CHANN| 000006E0: 45 4C 0D 42 41 53 49 4E 20 3D 20 24 46 46 43 46 |EL.BASIN = $FFCF| 000006F0: 20 3B 47 45 54 53 20 41 20 43 48 41 52 20 46 52 | ;GETS A CHAR FR| 00000700: 4F 4D 20 46 49 4C 45 0D 42 53 4F 55 54 20 3D 20 |OM FILE.BSOUT = | 00000710: 24 46 46 44 32 20 3B 53 45 4E 44 20 43 48 41 52 |$FFD2 ;SEND CHAR| 00000720: 20 54 4F 20 46 49 4C 45 0D 43 4C 4F 41 44 20 3D | TO FILE.CLOAD =| 00000730: 20 24 46 46 44 35 20 3B 43 41 53 53 45 54 54 45 | $FFD5 ;CASSETTE| 00000740: 20 4C 4F 41 44 0D 43 53 41 56 45 20 3D 20 24 46 | LOAD.CSAVE = $F| 00000750: 46 44 38 20 3B 43 41 53 53 45 54 54 45 20 53 41 |FD8 ;CASSETTE SA| 00000760: 56 45 0D 53 54 4F 50 20 3D 20 24 46 46 45 31 20 |VE.STOP = $FFE1 | 00000770: 3B 54 45 53 54 20 53 54 4F 50 20 4B 45 59 0D 47 |;TEST STOP KEY.G| 00000780: 45 54 49 4E 20 3D 20 24 46 46 45 34 20 3B 47 45 |ETIN = $FFE4 ;GE| 00000790: 54 20 4F 4E 45 20 43 48 41 52 0D 43 4C 41 4C 4C |T ONE CHAR.CLALL| 000007A0: 20 3D 20 24 46 46 45 37 20 3B 43 4C 4F 53 45 20 | = $FFE7 ;CLOSE | 000007B0: 41 4C 4C 20 46 49 4C 45 53 0D 3B 2B 2B 2B 2B 2B |ALL FILES.;+++++| 000007C0: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 000007D0: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 0D 3B 2B |+++++++++++++.;+| 000007E0: 0D 3B 2B 20 4D 49 4E 49 0D 3B 2B 0D 3B 2B 20 56 |.;+ MINI.;+.;+ V| 000007F0: 45 52 53 49 4F 4E 20 36 2E 32 0D 3B 2B 0D 3B 2B |ERSION 6.2.;+.;+| 00000800: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 00000810: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 00000820: 2B 0D 3B 0D 20 2A 3D 20 42 45 47 49 4E 0D 3B 0D |+.;. *= BEGIN.;.| 00000830: 3B 20 45 4E 41 42 4C 45 20 57 45 44 47 45 20 43 |; ENABLE WEDGE C| 00000840: 4F 44 45 0D 3B 0D 53 45 54 57 20 4C 44 41 20 23 |ODE.;.SETW LDA #| 00000850: 30 20 3B 49 4E 53 45 52 54 20 41 20 4A 4D 50 20 |0 ;INSERT A JMP | 00000860: 54 4F 20 57 45 44 47 45 0D 20 53 54 41 20 4F 4C |TO WEDGE. STA OL| 00000870: 44 4C 49 4E 20 3B 43 4C 45 41 52 20 41 55 54 4F |DLIN ;CLEAR AUTO| 00000880: 20 4D 4F 44 45 0D 20 53 54 41 20 4F 4C 44 4C 49 | MODE. STA OLDLI| 00000890: 4E 2B 31 0D 20 4C 44 41 20 23 3C 42 45 47 49 4E |N+1. LDA #<BEGIN| 000008A0: 0D 20 53 54 41 20 4D 45 4D 53 49 5A 20 3B 50 52 |. STA MEMSIZ ;PR| 000008B0: 4F 54 45 43 54 20 4D 49 4E 49 2D 45 44 49 54 4F |OTECT MINI-EDITO| 000008C0: 52 0D 20 4C 44 41 20 23 3E 42 45 47 49 4E 0D 20 |R. LDA #>BEGIN. | 000008D0: 53 54 41 20 4D 45 4D 53 49 5A 2B 31 0D 20 4C 44 |STA MEMSIZ+1. LD| 000008E0: 41 20 23 24 34 43 20 3B 49 4E 53 45 52 54 20 41 |A #$4C ;INSERT A| 000008F0: 20 4A 4D 50 20 54 4F 20 57 45 44 47 45 0D 20 2E | JMP TO WEDGE. .| 00000900: 42 59 54 45 20 24 32 43 20 3B 53 4B 49 50 20 32 |BYTE $2C ;SKIP 2| 00000910: 20 42 59 54 45 53 0D 3B 0D 3B 20 44 49 53 41 42 | BYTES.;.; DISAB| 00000920: 4C 45 20 57 45 44 47 45 20 43 4F 44 45 0D 3B 0D |LE WEDGE CODE.;.| 00000930: 4B 49 4C 4C 20 4C 44 41 20 23 24 36 30 20 3B 49 |KILL LDA #$60 ;I| 00000940: 4E 53 45 52 54 20 41 20 52 54 53 0D 20 53 54 41 |NSERT A RTS. STA| 00000950: 20 43 48 52 52 54 53 0D 20 4C 44 41 20 23 3C 57 | CHRRTS. LDA #<W| 00000960: 45 44 47 45 0D 20 53 54 41 20 43 48 52 52 54 53 |EDGE. STA CHRRTS| 00000970: 2B 31 0D 20 4C 44 41 20 23 3E 57 45 44 47 45 0D |+1. LDA #>WEDGE.| 00000980: 20 53 54 41 20 43 48 52 52 54 53 2B 32 0D 20 52 | STA CHRRTS+2. R| 00000990: 54 53 0D 3B 0D 3B 20 53 41 56 45 20 41 4C 4C 20 |TS.;.; SAVE ALL | 000009A0: 52 45 47 49 53 54 45 52 53 0D 3B 0D 53 41 56 52 |REGISTERS.;.SAVR| 000009B0: 45 47 20 53 54 41 20 57 53 57 20 3B 53 41 56 45 |EG STA WSW ;SAVE| 000009C0: 20 41 0D 20 50 48 50 0D 20 50 4C 41 0D 20 53 54 | A. PHP. PLA. ST| 000009D0: 41 20 54 31 20 3B 53 41 56 45 20 53 54 41 54 55 |A T1 ;SAVE STATU| 000009E0: 53 0D 20 53 54 58 20 54 32 20 3B 53 41 56 45 20 |S. STX T2 ;SAVE | 000009F0: 58 0D 20 53 54 59 20 54 33 20 3B 53 41 56 45 20 |X. STY T3 ;SAVE | 00000A00: 59 0D 20 52 54 53 0D 3B 0D 3B 20 57 45 44 47 45 |Y. RTS.;.; WEDGE| 00000A10: 20 43 4F 44 45 20 49 4E 54 45 52 43 45 50 54 53 | CODE INTERCEPTS| 00000A20: 20 53 43 41 4E 20 43 48 41 52 53 0D 3B 0D 57 45 | SCAN CHARS.;.WE| 00000A30: 44 47 45 20 4A 53 52 20 53 41 56 52 45 47 20 3B |DGE JSR SAVREG ;| 00000A40: 53 41 56 45 20 41 4C 4C 20 52 45 47 53 0D 20 54 |SAVE ALL REGS. T| 00000A50: 53 58 20 3B 53 45 45 20 57 48 4F 20 43 41 4C 4C |SX ;SEE WHO CALL| 00000A60: 45 44 20 43 48 52 47 45 54 0D 20 4C 44 41 20 24 |ED CHRGET. LDA $| 00000A70: 30 31 30 31 2C 58 20 3B 57 41 53 20 49 54 20 4D |0101,X ;WAS IT M| 00000A80: 41 49 4E 20 3F 0D 20 43 4D 50 20 23 24 39 42 0D |AIN ?. CMP #$9B.| 00000A90: 20 42 4E 45 20 52 45 53 52 45 47 20 3B 4E 4F 0D | BNE RESREG ;NO.| 00000AA0: 20 4C 44 41 20 24 30 31 30 32 2C 58 20 3B 4D 41 | LDA $0102,X ;MA| 00000AB0: 59 42 45 0D 20 43 4D 50 20 23 24 43 33 0D 20 42 |YBE. CMP #$C3. B| 00000AC0: 45 51 20 57 53 54 41 52 54 20 3B 59 45 53 20 2D |EQ WSTART ;YES -| 00000AD0: 20 53 54 41 52 54 20 57 45 44 47 45 20 43 4F 44 | START WEDGE COD| 00000AE0: 45 0D 3B 0D 3B 20 52 45 53 54 4F 52 45 20 41 4C |E.;.; RESTORE AL| 00000AF0: 4C 20 52 45 47 49 53 54 45 52 53 0D 3B 0D 52 45 |L REGISTERS.;.RE| 00000B00: 53 52 45 47 20 4C 44 59 20 54 33 20 3B 52 45 53 |SREG LDY T3 ;RES| 00000B10: 54 4F 52 45 20 59 0D 20 4C 44 58 20 54 32 20 3B |TORE Y. LDX T2 ;| 00000B20: 52 45 53 54 4F 52 45 20 58 0D 20 4C 44 41 20 54 |RESTORE X. LDA T| 00000B30: 31 20 3B 52 45 53 54 4F 52 45 20 53 54 41 54 55 |1 ;RESTORE STATU| 00000B40: 53 0D 20 50 48 41 0D 20 4C 44 41 20 57 53 57 0D |S. PHA. LDA WSW.| 00000B50: 20 50 4C 50 0D 20 52 54 53 0D 3B 0D 57 53 54 41 | PLP. RTS.;.WSTA| 00000B60: 52 54 20 4C 44 41 20 54 31 20 3B 47 45 54 20 53 |RT LDA T1 ;GET S| 00000B70: 54 41 54 55 53 20 52 45 47 0D 20 4C 53 52 20 41 |TATUS REG. LSR A| 00000B80: 20 3B 57 41 53 20 49 54 20 41 20 4E 55 4D 42 45 | ;WAS IT A NUMBE| 00000B90: 52 20 3F 0D 20 42 43 43 20 57 4E 55 4D 42 20 3B |R ?. BCC WNUMB ;| 00000BA0: 59 45 53 0D 50 41 52 53 45 20 4C 44 58 20 23 30 |YES.PARSE LDX #0| 00000BB0: 20 3B 43 48 45 43 4B 20 46 4F 52 20 4D 49 4E 49 | ;CHECK FOR MINI| 00000BC0: 2D 45 44 49 54 4F 52 20 43 4D 44 0D 20 53 54 58 |-EDITOR CMD. STX| 00000BD0: 20 43 4F 55 4E 54 20 3B 5A 45 52 4F 20 49 4E 44 | COUNT ;ZERO IND| 00000BE0: 45 58 20 49 4E 54 4F 20 43 4D 44 20 41 44 44 52 |EX INTO CMD ADDR| 00000BF0: 45 53 53 0D 20 44 45 58 20 3B 58 3D 46 46 0D 50 |ESS. DEX ;X=FF.P| 00000C00: 41 52 31 30 30 20 49 4E 58 0D 20 4C 44 59 20 54 |AR100 INX. LDY T| 00000C10: 58 54 50 54 52 20 3B 53 54 41 52 54 20 41 54 20 |XTPTR ;START AT | 00000C20: 42 45 47 49 4E 0D 50 41 52 32 30 30 20 4C 44 41 |BEGIN.PAR200 LDA| 00000C30: 20 42 55 46 4F 46 53 2C 59 0D 20 53 45 43 20 3B | BUFOFS,Y. SEC ;| 00000C40: 44 4F 20 43 4D 50 0D 20 53 42 43 20 43 4C 49 53 |DO CMP. SBC CLIS| 00000C50: 54 2C 58 20 3B 43 48 41 52 20 53 41 4D 45 0D 20 |T,X ;CHAR SAME. | 00000C60: 42 45 51 20 50 41 52 33 30 30 20 3B 59 45 53 0D |BEQ PAR300 ;YES.| 00000C70: 20 43 4D 50 20 23 24 38 30 20 3B 53 41 4D 45 20 | CMP #$80 ;SAME | 00000C80: 41 4E 44 20 46 4F 55 4E 44 20 43 4D 44 20 3F 0D |AND FOUND CMD ?.| 00000C90: 20 42 45 51 20 50 41 52 34 30 30 20 3B 59 45 53 | BEQ PAR400 ;YES| 00000CA0: 0D 20 49 4E 43 20 43 4F 55 4E 54 20 3B 4E 4F 20 |. INC COUNT ;NO | 00000CB0: 2D 20 54 52 59 20 4E 45 58 54 0D 50 41 52 32 35 |- TRY NEXT.PAR25| 00000CC0: 30 20 49 4E 58 20 3B 53 4B 49 50 20 52 45 53 54 |0 INX ;SKIP REST| 00000CD0: 20 4F 46 20 43 4D 44 20 4E 41 4D 45 0D 20 4C 44 | OF CMD NAME. LD| 00000CE0: 41 20 43 4C 49 53 54 2D 31 2C 58 20 3B 45 4E 44 |A CLIST-1,X ;END| 00000CF0: 20 4F 46 20 43 4D 44 20 4E 41 4D 45 20 3F 0D 20 | OF CMD NAME ?. | 00000D00: 42 50 4C 20 50 41 52 32 35 30 20 3B 4E 4F 0D 20 |BPL PAR250 ;NO. | 00000D10: 4C 44 41 20 43 4C 49 53 54 2C 58 20 3B 45 4E 44 |LDA CLIST,X ;END| 00000D20: 20 4F 46 20 43 4D 44 20 4E 41 4D 45 20 54 41 42 | OF CMD NAME TAB| 00000D30: 4C 45 20 3F 0D 20 42 4E 45 20 50 41 52 32 30 30 |LE ?. BNE PAR200| 00000D40: 20 3B 4E 4F 20 2D 20 4C 4F 4F 4B 20 4F 4E 0D 20 | ;NO - LOOK ON. | 00000D50: 42 45 51 20 52 45 53 52 45 47 20 3B 59 45 53 20 |BEQ RESREG ;YES | 00000D60: 2D 20 4E 4F 54 20 4D 49 4E 49 2D 45 44 49 54 4F |- NOT MINI-EDITO| 00000D70: 52 20 43 4D 44 0D 50 41 52 33 30 30 20 49 4E 58 |R CMD.PAR300 INX| 00000D80: 20 3B 4D 41 54 43 48 20 54 52 59 20 4E 45 58 54 | ;MATCH TRY NEXT| 00000D90: 20 43 48 41 52 0D 20 49 4E 59 0D 20 42 4E 45 20 | CHAR. INY. BNE | 00000DA0: 50 41 52 32 30 30 20 3B 42 52 41 4E 43 48 20 41 |PAR200 ;BRANCH A| 00000DB0: 4C 57 41 59 53 0D 50 41 52 34 30 30 20 53 54 59 |LWAYS.PAR400 STY| 00000DC0: 20 54 58 54 50 54 52 20 3B 50 4F 49 4E 54 20 54 | TXTPTR ;POINT T| 00000DD0: 58 54 50 54 52 20 41 54 20 4C 41 53 54 20 43 48 |XTPTR AT LAST CH| 00000DE0: 41 52 0D 20 4C 44 41 20 43 4F 55 4E 54 20 3B 46 |AR. LDA COUNT ;F| 00000DF0: 4F 55 4E 44 20 43 4D 44 20 4A 4D 50 20 54 4F 20 |OUND CMD JMP TO | 00000E00: 49 54 0D 20 41 53 4C 20 41 20 3B 41 44 52 53 20 |IT. ASL A ;ADRS | 00000E10: 41 52 45 20 32 20 42 59 54 45 53 0D 20 54 41 58 |ARE 2 BYTES. TAX| 00000E20: 0D 20 4C 44 41 20 43 41 44 52 2B 31 2C 58 20 3B |. LDA CADR+1,X ;| 00000E30: 44 4F 20 49 4E 44 49 52 45 43 54 20 4A 4D 50 0D |DO INDIRECT JMP.| 00000E40: 20 50 48 41 0D 20 4C 44 41 20 43 41 44 52 2C 58 | PHA. LDA CADR,X| 00000E50: 0D 20 50 48 41 0D 20 4A 53 52 20 52 45 53 52 45 |. PHA. JSR RESRE| 00000E60: 47 20 3B 52 45 53 54 4F 52 45 20 41 4C 4C 20 52 |G ;RESTORE ALL R| 00000E70: 45 47 53 0D 20 4A 4D 50 20 43 48 52 47 45 54 0D |EGS. JMP CHRGET.| 00000E80: 3B 0D 3B 20 41 55 54 4F 20 4C 49 4E 45 20 23 0D |;.; AUTO LINE #.| 00000E90: 3B 0D 3B 20 53 59 4E 54 41 58 0D 3B 20 41 55 54 |;.; SYNTAX.; AUT| 00000EA0: 4F 20 49 4E 43 23 20 2D 20 45 4E 41 42 4C 45 20 |O INC# - ENABLE | 00000EB0: 41 55 54 4F 0D 3B 20 41 55 54 4F 20 2D 20 44 49 |AUTO.; AUTO - DI| 00000EC0: 53 41 42 4C 45 20 41 55 54 4F 0D 3B 0D 41 55 54 |SABLE AUTO.;.AUT| 00000ED0: 4F 20 4A 53 52 20 4C 49 4E 47 45 54 20 3B 47 45 |O JSR LINGET ;GE| 00000EE0: 54 20 53 54 41 52 54 20 23 0D 20 4C 44 41 20 4C |T START #. LDA L| 00000EF0: 49 4E 4E 55 4D 20 3B 53 41 56 45 20 49 54 0D 20 |INNUM ;SAVE IT. | 00000F00: 53 54 41 20 4F 4C 44 4C 49 4E 0D 20 4C 44 41 20 |STA OLDLIN. LDA | 00000F10: 4C 49 4E 4E 55 4D 2B 31 0D 20 53 54 41 20 4F 4C |LINNUM+1. STA OL| 00000F20: 44 4C 49 4E 2B 31 0D 20 52 54 53 0D 3B 0D 3B 20 |DLIN+1. RTS.;.; | 00000F30: 48 41 4E 44 4C 45 53 20 41 20 4E 45 57 20 4C 49 |HANDLES A NEW LI| 00000F40: 4E 45 20 57 49 54 48 20 4E 55 4D 42 45 52 0D 3B |NE WITH NUMBER.;| 00000F50: 0D 57 4E 55 4D 42 20 50 4C 41 20 3B 52 45 4D 4F |.WNUMB PLA ;REMO| 00000F60: 56 45 20 4A 55 4E 4B 20 46 52 4F 4D 20 53 54 41 |VE JUNK FROM STA| 00000F70: 43 4B 0D 20 50 4C 41 0D 20 4A 53 52 20 52 45 53 |CK. PLA. JSR RES| 00000F80: 52 45 47 20 3B 52 45 53 54 4F 52 45 20 52 45 47 |REG ;RESTORE REG| 00000F90: 0D 20 4A 53 52 20 4C 49 4E 47 45 54 20 3B 47 45 |. JSR LINGET ;GE| 00000FA0: 54 20 4C 49 4E 45 20 23 20 49 4E 54 4F 20 4C 49 |T LINE # INTO LI| 00000FB0: 4E 4E 55 4D 0D 20 42 45 51 20 57 4E 42 39 30 30 |NNUM. BEQ WNB900| 00000FC0: 20 3B 4C 49 4E 45 20 23 20 4F 4E 4C 59 0D 57 4E | ;LINE # ONLY.WN| 00000FD0: 42 34 30 30 20 4C 44 41 20 4F 4C 44 4C 49 4E 20 |B400 LDA OLDLIN | 00000FE0: 3B 49 4E 20 41 55 54 4F 20 4D 4F 44 45 20 3F 0D |;IN AUTO MODE ?.| 00000FF0: 20 4F 52 41 20 4F 4C 44 4C 49 4E 2B 31 0D 20 42 | ORA OLDLIN+1. B| 00001000: 45 51 20 57 4E 42 39 30 30 20 3B 4E 4F 0D 57 4E |EQ WNB900 ;NO.WN| 00001010: 42 36 30 30 20 4C 44 41 20 4C 49 4E 4E 55 4D 20 |B600 LDA LINNUM | 00001020: 3B 4C 49 4E 45 20 23 20 46 4F 52 20 4E 45 58 54 |;LINE # FOR NEXT| 00001030: 20 4C 49 4E 45 0D 20 43 4C 43 0D 20 41 44 43 20 | LINE. CLC. ADC | 00001040: 4F 4C 44 4C 49 4E 0D 20 53 54 41 20 46 41 43 48 |OLDLIN. STA FACH| 00001050: 4F 2B 31 0D 20 4C 44 41 20 4C 49 4E 4E 55 4D 2B |O+1. LDA LINNUM+| 00001060: 31 0D 20 41 44 43 20 4F 4C 44 4C 49 4E 2B 31 0D |1. ADC OLDLIN+1.| 00001070: 20 53 54 41 20 46 41 43 48 4F 0D 20 4C 44 58 20 | STA FACHO. LDX | 00001080: 23 24 39 30 0D 20 53 45 43 0D 20 4A 53 52 20 46 |#$90. SEC. JSR F| 00001090: 4C 4F 41 54 43 20 3B 46 4C 4F 41 54 20 49 54 0D |LOATC ;FLOAT IT.| 000010A0: 20 4A 53 52 20 46 4F 55 54 20 3B 4D 41 4B 45 20 | JSR FOUT ;MAKE | 000010B0: 41 53 43 49 49 20 23 0D 20 4C 44 58 20 23 30 20 |ASCII #. LDX #0 | 000010C0: 3B 50 55 54 20 41 53 43 49 49 20 23 20 49 4E 20 |;PUT ASCII # IN | 000010D0: 4B 45 59 42 0D 20 4C 44 41 20 23 24 32 30 20 3B |KEYB. LDA #$20 ;| 000010E0: 50 55 54 20 31 20 53 50 41 43 45 20 42 45 46 4F |PUT 1 SPACE BEFO| 000010F0: 52 45 20 23 0D 20 53 54 41 20 4B 45 59 44 2C 58 |RE #. STA KEYD,X| 00001100: 0D 20 49 4E 58 0D 57 4E 42 37 30 30 20 4C 44 41 |. INX.WNB700 LDA| 00001110: 20 24 30 31 30 30 2C 58 0D 20 42 45 51 20 57 4E | $0100,X. BEQ WN| 00001120: 42 38 30 30 20 3B 44 4F 4E 45 0D 20 53 54 41 20 |B800 ;DONE. STA | 00001130: 4B 45 59 44 2C 58 0D 20 49 4E 58 0D 20 42 4E 45 |KEYD,X. INX. BNE| 00001140: 20 57 4E 42 37 30 30 20 3B 42 52 41 4E 43 48 20 | WNB700 ;BRANCH | 00001150: 41 4C 57 41 59 53 0D 57 4E 42 38 30 30 20 4C 44 |ALWAYS.WNB800 LD| 00001160: 41 20 23 24 32 30 20 3B 50 55 54 20 49 4E 20 45 |A #$20 ;PUT IN E| 00001170: 58 54 52 41 20 53 50 41 43 45 0D 20 53 54 41 20 |XTRA SPACE. STA | 00001180: 4B 45 59 44 2C 58 0D 20 49 4E 58 0D 20 53 54 58 |KEYD,X. INX. STX| 00001190: 20 4E 44 58 20 3B 53 45 54 20 23 20 43 48 41 52 | NDX ;SET # CHAR| 000011A0: 20 49 4E 20 42 55 46 0D 57 4E 42 39 30 30 20 4A | IN BUF.WNB900 J| 000011B0: 53 52 20 43 4F 4D 50 43 54 20 3B 53 51 55 49 53 |SR COMPCT ;SQUIS| 000011C0: 48 20 49 54 0D 20 4A 4D 50 20 49 4E 53 45 52 54 |H IT. JMP INSERT| 000011D0: 20 3B 47 4F 20 49 4E 53 45 52 54 20 49 54 0D 3B | ;GO INSERT IT.;| 000011E0: 0D 3B 20 52 45 4E 55 4D 42 45 52 53 20 53 4F 55 |.; RENUMBERS SOU| 000011F0: 52 43 45 20 46 49 4C 45 0D 3B 0D 3B 20 53 59 4E |RCE FILE.;.; SYN| 00001200: 54 41 58 0D 3B 20 4E 55 4D 42 45 52 20 53 54 41 |TAX.; NUMBER STA| 00001210: 52 54 23 2C 4E 45 57 23 2C 49 4E 43 23 0D 3B 0D |RT#,NEW#,INC#.;.| 00001220: 4E 55 4D 42 45 52 20 4A 53 52 20 4C 49 4E 47 45 |NUMBER JSR LINGE| 00001230: 54 20 3B 47 45 54 20 53 54 41 52 54 20 4E 55 4D |T ;GET START NUM| 00001240: 42 45 52 0D 20 4A 53 52 20 46 4E 44 4C 49 4E 20 |BER. JSR FNDLIN | 00001250: 3B 46 49 4E 44 20 49 54 20 49 4E 20 53 4F 55 52 |;FIND IT IN SOUR| 00001260: 43 45 0D 20 4A 53 52 20 43 48 4B 43 4F 4D 20 3B |CE. JSR CHKCOM ;| 00001270: 43 48 45 43 4B 20 46 4F 52 20 43 4F 4D 4D 41 0D |CHECK FOR COMMA.| 00001280: 20 4A 53 52 20 4C 49 4E 47 45 54 20 3B 47 45 54 | JSR LINGET ;GET| 00001290: 20 4E 45 57 20 53 54 41 52 54 20 4E 55 4D 42 45 | NEW START NUMBE| 000012A0: 52 0D 20 4C 44 41 20 4C 49 4E 4E 55 4D 20 3B 53 |R. LDA LINNUM ;S| 000012B0: 41 56 45 20 49 54 0D 20 53 54 41 20 46 4E 41 44 |AVE IT. STA FNAD| 000012C0: 52 0D 20 4C 44 41 20 4C 49 4E 4E 55 4D 2B 31 0D |R. LDA LINNUM+1.| 000012D0: 20 53 54 41 20 46 4E 41 44 52 2B 31 0D 20 4A 53 | STA FNADR+1. JS| 000012E0: 52 20 43 48 4B 43 4F 4D 20 3B 43 4F 4D 4D 41 20 |R CHKCOM ;COMMA | 000012F0: 3F 0D 20 4A 53 52 20 4C 49 4E 47 45 54 20 3B 47 |?. JSR LINGET ;G| 00001300: 45 54 20 49 4E 43 0D 4E 55 4D 31 30 30 20 4A 53 |ET INC.NUM100 JS| 00001310: 52 20 4C 4F 41 44 54 52 20 3B 47 45 54 20 48 49 |R LOADTR ;GET HI| 00001320: 20 4C 49 4E 4B 0D 20 42 45 51 20 4E 44 4F 4E 45 | LINK. BEQ NDONE| 00001330: 20 3B 45 51 55 41 4C 20 5A 45 52 4F 20 54 48 45 | ;EQUAL ZERO THE| 00001340: 4E 20 44 4F 4E 45 0D 20 4A 53 52 20 49 4E 43 54 |N DONE. JSR INCT| 00001350: 52 20 3B 53 4B 49 50 20 4C 49 4E 45 23 20 4C 4F |R ;SKIP LINE# LO| 00001360: 0D 20 43 4C 43 0D 20 4C 44 41 20 46 4E 41 44 52 |. CLC. LDA FNADR| 00001370: 20 3B 47 45 54 20 4E 45 57 20 4E 55 4D 42 45 52 | ;GET NEW NUMBER| 00001380: 20 4C 4F 20 42 59 54 45 0D 20 4A 53 52 20 53 54 | LO BYTE. JSR ST| 00001390: 4F 52 54 52 20 3B 49 4E 53 54 41 4C 4C 20 49 54 |ORTR ;INSTALL IT| 000013A0: 0D 20 41 44 43 20 4C 49 4E 4E 55 4D 20 3B 47 45 |. ADC LINNUM ;GE| 000013B0: 4E 20 4E 45 57 0D 20 53 54 41 20 46 4E 41 44 52 |N NEW. STA FNADR| 000013C0: 0D 20 4C 44 41 20 46 4E 41 44 52 2B 31 20 3B 47 |. LDA FNADR+1 ;G| 000013D0: 45 54 20 4E 45 57 20 4E 55 4D 42 45 52 20 48 49 |ET NEW NUMBER HI| 000013E0: 20 42 59 54 45 0D 20 4A 53 52 20 53 54 4F 52 54 | BYTE. JSR STORT| 000013F0: 52 20 3B 49 4E 53 54 41 4C 4C 20 49 54 0D 20 41 |R ;INSTALL IT. A| 00001400: 44 43 20 4C 49 4E 4E 55 4D 2B 31 20 3B 47 45 4E |DC LINNUM+1 ;GEN| 00001410: 20 4E 45 57 0D 20 53 54 41 20 46 4E 41 44 52 2B | NEW. STA FNADR+| 00001420: 31 0D 4E 55 4D 35 30 30 20 4A 53 52 20 4C 4F 41 |1.NUM500 JSR LOA| 00001430: 44 54 52 20 3B 45 4E 44 20 4F 46 20 4C 49 4E 45 |DTR ;END OF LINE| 00001440: 20 3F 0D 20 42 4E 45 20 4E 55 4D 35 30 30 20 3B | ?. BNE NUM500 ;| 00001450: 4E 4F 0D 20 4A 53 52 20 49 4E 43 54 52 20 3B 59 |NO. JSR INCTR ;Y| 00001460: 45 53 20 2D 20 53 4B 49 50 20 49 54 0D 20 42 4E |ES - SKIP IT. BN| 00001470: 45 20 4E 55 4D 31 30 30 20 3B 42 52 41 4E 43 48 |E NUM100 ;BRANCH| 00001480: 20 41 4C 57 41 59 53 0D 4E 44 4F 4E 45 20 4A 4D | ALWAYS.NDONE JM| 00001490: 50 20 46 49 4E 49 20 3B 46 49 58 20 4C 49 4E 4B |P FINI ;FIX LINK| 000014A0: 53 0D 3B 0D 3B 20 47 45 54 20 50 55 52 45 20 41 |S.;.; GET PURE A| 000014B0: 53 43 49 49 20 53 4F 55 52 43 45 0D 3B 0D 47 45 |SCII SOURCE.;.GE| 000014C0: 54 20 4A 53 52 20 50 41 52 53 49 54 20 3B 50 41 |T JSR PARSIT ;PA| 000014D0: 52 53 45 20 4C 49 4B 45 20 4C 4F 41 44 2F 53 41 |RSE LIKE LOAD/SA| 000014E0: 56 45 0D 20 4A 53 52 20 43 48 4B 49 4E 0D 47 45 |VE. JSR CHKIN.GE| 000014F0: 54 31 30 30 20 4C 44 41 20 23 31 20 3B 4A 55 4E |T100 LDA #1 ;JUN| 00001500: 4B 20 46 4F 52 20 4C 49 4E 4B 53 0D 20 4A 53 52 |K FOR LINKS. JSR| 00001510: 20 53 54 4F 52 34 20 3B 46 41 4B 45 20 4C 49 4E | STOR4 ;FAKE LIN| 00001520: 4B 53 20 41 4E 44 20 4C 49 4E 45 23 0D 47 45 54 |KS AND LINE#.GET| 00001530: 35 30 30 20 4A 53 52 20 42 41 53 49 4E 20 3B 47 |500 JSR BASIN ;G| 00001540: 45 54 20 41 20 43 48 41 52 0D 20 43 4D 50 20 23 |ET A CHAR. CMP #| 00001550: 24 30 44 20 3B 45 4E 44 20 4F 46 20 41 20 4C 49 |$0D ;END OF A LI| 00001560: 4E 45 20 3F 0D 20 42 45 51 20 47 45 54 36 30 30 |NE ?. BEQ GET600| 00001570: 20 3B 59 45 53 0D 20 4A 53 52 20 53 54 4F 52 54 | ;YES. JSR STORT| 00001580: 52 20 3B 4E 4F 20 2D 20 53 41 56 45 20 49 54 0D |R ;NO - SAVE IT.| 00001590: 20 42 4E 45 20 47 45 54 35 30 30 20 3B 42 52 41 | BNE GET500 ;BRA| 000015A0: 4E 43 48 20 41 4C 57 41 59 53 0D 47 45 54 36 30 |NCH ALWAYS.GET60| 000015B0: 30 20 4C 44 41 20 23 30 20 3B 4E 55 4C 4C 20 42 |0 LDA #0 ;NULL B| 000015C0: 41 53 49 43 20 45 4E 44 20 4F 46 20 4C 49 4E 45 |ASIC END OF LINE| 000015D0: 0D 20 4A 53 52 20 53 54 4F 52 54 52 0D 20 4C 44 |. JSR STORTR. LD| 000015E0: 41 20 53 41 54 55 53 20 3B 45 4F 49 20 2D 20 41 |A SATUS ;EOI - A| 000015F0: 4C 4C 20 44 4F 4E 45 20 3F 0D 20 42 45 51 20 47 |LL DONE ?. BEQ G| 00001600: 45 54 31 30 30 20 3B 4E 4F 0D 20 54 59 41 0D 20 |ET100 ;NO. TYA. | 00001610: 4A 53 52 20 53 54 4F 52 32 20 3B 4D 41 4B 45 20 |JSR STOR2 ;MAKE | 00001620: 5A 45 52 4F 20 4C 49 4E 4B 0D 20 4C 44 41 20 4C |ZERO LINK. LDA L| 00001630: 4F 57 54 52 20 3B 47 45 4E 20 4E 45 57 20 53 4F |OWTR ;GEN NEW SO| 00001640: 55 52 43 45 20 45 4E 44 0D 20 53 54 41 20 56 41 |URCE END. STA VA| 00001650: 52 54 41 42 0D 20 4C 44 41 20 4C 4F 57 54 52 2B |RTAB. LDA LOWTR+| 00001660: 31 0D 20 53 54 41 20 56 41 52 54 41 42 2B 31 0D |1. STA VARTAB+1.| 00001670: 20 4A 53 52 20 43 4C 4F 53 45 2B 33 20 3B 43 4C | JSR CLOSE+3 ;CL| 00001680: 4F 53 45 20 43 48 41 4E 4E 45 4C 0D 20 4A 53 52 |OSE CHANNEL. JSR| 00001690: 20 43 52 44 4F 20 3B 50 52 54 20 28 43 52 29 20 | CRDO ;PRT (CR) | 000016A0: 28 4C 46 29 0D 20 4A 53 52 20 43 4F 50 54 41 42 |(LF). JSR COPTAB| 000016B0: 20 3B 52 45 53 45 54 20 50 54 52 20 54 4F 20 42 | ;RESET PTR TO B| 000016C0: 45 47 49 4E 4E 49 4E 47 0D 20 4C 44 41 20 23 31 |EGINNING. LDA #1| 000016D0: 30 20 3B 53 54 41 52 54 20 4C 49 4E 45 23 20 31 |0 ;START LINE# 1| 000016E0: 30 20 41 4E 44 0D 20 53 54 41 20 46 4E 41 44 52 |0 AND. STA FNADR| 000016F0: 20 3B 4E 55 4D 42 45 52 20 42 59 20 31 30 0D 20 | ;NUMBER BY 10. | 00001700: 53 54 41 20 4C 49 4E 4E 55 4D 0D 20 54 59 41 0D |STA LINNUM. TYA.| 00001710: 20 53 54 41 20 46 4E 41 44 52 2B 31 0D 20 53 54 | STA FNADR+1. ST| 00001720: 41 20 4C 49 4E 4E 55 4D 2B 31 0D 20 42 45 51 20 |A LINNUM+1. BEQ | 00001730: 4E 55 4D 31 30 30 20 3B 47 4F 20 52 45 4E 55 4D |NUM100 ;GO RENUM| 00001740: 42 45 52 20 46 49 4C 45 0D 3B 0D 3B 20 4F 55 54 |BER FILE.;.; OUT| 00001750: 50 55 54 20 50 55 52 45 20 41 53 43 49 49 20 53 |PUT PURE ASCII S| 00001760: 4F 55 52 43 45 0D 3B 0D 50 55 54 20 4A 53 52 20 |OURCE.;.PUT JSR | 00001770: 50 41 52 53 49 54 20 3B 50 41 52 53 45 20 4C 49 |PARSIT ;PARSE LI| 00001780: 4B 45 20 4C 4F 41 44 2F 53 41 56 45 0D 20 4A 53 |KE LOAD/SAVE. JS| 00001790: 52 20 43 4B 4F 55 54 0D 20 42 4E 45 20 50 55 54 |R CKOUT. BNE PUT| 000017A0: 34 30 30 20 3B 42 52 41 4E 43 48 20 41 4C 57 41 |400 ;BRANCH ALWA| 000017B0: 59 53 0D 50 55 54 43 52 20 4C 44 41 20 23 24 30 |YS.PUTCR LDA #$0| 000017C0: 44 20 3B 53 45 4E 44 20 28 43 52 29 20 46 4F 52 |D ;SEND (CR) FOR| 000017D0: 20 45 4E 44 20 4F 46 20 4C 49 4E 45 0D 20 4A 53 | END OF LINE. JS| 000017E0: 52 20 42 53 4F 55 54 0D 20 4A 53 52 20 49 4E 43 |R BSOUT. JSR INC| 000017F0: 54 52 20 3B 53 4B 49 50 20 4C 4F 20 4C 49 4E 4B |TR ;SKIP LO LINK| 00001800: 0D 50 55 54 34 30 30 20 4A 53 52 20 4C 4F 41 44 |.PUT400 JSR LOAD| 00001810: 54 52 20 3B 47 45 54 20 48 49 20 4C 49 4E 4B 20 |TR ;GET HI LINK | 00001820: 2D 20 44 4F 4E 45 20 3F 0D 20 42 45 51 20 50 55 |- DONE ?. BEQ PU| 00001830: 54 44 4F 4E 20 3B 59 45 53 0D 20 4A 53 52 20 43 |TDON ;YES. JSR C| 00001840: 4D 50 4E 55 4D 20 3B 44 4F 4E 45 20 4C 49 4E 45 |MPNUM ;DONE LINE| 00001850: 20 52 41 4E 47 45 0D 20 42 43 43 20 50 55 54 44 | RANGE. BCC PUTD| 00001860: 4F 4E 20 3B 59 45 53 0D 50 55 54 36 30 30 20 4A |ON ;YES.PUT600 J| 00001870: 53 52 20 4C 4F 41 44 54 52 20 3B 47 45 54 20 41 |SR LOADTR ;GET A| 00001880: 20 43 48 41 52 0D 20 42 45 51 20 50 55 54 43 52 | CHAR. BEQ PUTCR| 00001890: 20 3B 45 4E 44 20 4F 46 20 4C 49 4E 45 0D 20 4A | ;END OF LINE. J| 000018A0: 53 52 20 42 53 4F 55 54 20 3B 4F 55 54 50 55 54 |SR BSOUT ;OUTPUT| 000018B0: 20 49 54 0D 20 43 4C 56 0D 20 42 56 43 20 50 55 | IT. CLV. BVC PU| 000018C0: 54 36 30 30 20 3B 42 52 41 4E 43 48 20 41 4C 57 |T600 ;BRANCH ALW| 000018D0: 41 59 53 0D 50 55 54 44 4F 4E 20 4A 53 52 20 43 |AYS.PUTDON JSR C| 000018E0: 4C 4F 53 45 2B 33 20 3B 43 4C 4F 53 45 20 43 48 |LOSE+3 ;CLOSE CH| 000018F0: 41 4E 4E 45 4C 0D 20 4A 4D 50 20 46 49 4E 49 20 |ANNEL. JMP FINI | 00001900: 3B 46 49 58 20 4C 49 4E 4B 20 41 4E 59 57 41 59 |;FIX LINK ANYWAY| 00001910: 0D 3B 0D 3B 20 52 45 50 45 41 54 20 45 4E 41 42 |.;.; REPEAT ENAB| 00001920: 4C 45 20 43 4D 44 0D 3B 0D 52 45 50 43 4D 44 20 |LE CMD.;.REPCMD | 00001930: 53 45 49 20 3B 53 54 4F 50 20 49 52 51 0D 20 4C |SEI ;STOP IRQ. L| 00001940: 44 41 20 23 3C 52 45 50 45 41 54 0D 20 53 54 41 |DA #<REPEAT. STA| 00001950: 20 43 49 4E 56 0D 20 4C 44 41 20 23 3E 52 45 50 | CINV. LDA #>REP| 00001960: 45 41 54 0D 20 53 54 41 20 43 49 4E 56 2B 31 0D |EAT. STA CINV+1.| 00001970: 20 4C 44 41 20 23 31 20 3B 53 54 41 52 54 20 44 | LDA #1 ;START D| 00001980: 45 4C 41 59 20 4C 4F 57 0D 20 53 54 41 20 52 45 |ELAY LOW. STA RE| 00001990: 50 44 59 0D 20 43 4C 49 0D 20 52 54 53 0D 3B 0D |PDY. CLI. RTS.;.| 000019A0: 3B 20 53 51 55 49 53 48 20 4C 49 4E 45 20 23 20 |; SQUISH LINE # | 000019B0: 41 4E 44 20 4F 4E 45 20 53 50 41 43 45 20 46 4F |AND ONE SPACE FO| 000019C0: 52 20 4E 45 57 20 4C 49 4E 45 0D 3B 0D 43 4F 4D |R NEW LINE.;.COM| 000019D0: 50 43 54 20 4C 44 58 20 23 24 46 46 0D 20 4C 44 |PCT LDX #$FF. LD| 000019E0: 59 20 23 30 0D 43 4F 4D 31 30 30 20 49 4E 58 0D |Y #0.COM100 INX.| 000019F0: 20 4C 44 41 20 42 55 46 4F 46 53 2C 58 20 3B 53 | LDA BUFOFS,X ;S| 00001A00: 4B 49 50 20 53 50 41 43 45 53 0D 20 43 4D 50 20 |KIP SPACES. CMP | 00001A10: 23 24 32 30 0D 20 42 45 51 20 43 4F 4D 31 30 30 |#$20. BEQ COM100| 00001A20: 0D 20 2E 42 59 54 45 20 24 32 34 20 3B 53 4B 49 |. .BYTE $24 ;SKI| 00001A30: 50 20 31 20 42 59 54 45 0D 43 4F 4D 32 30 30 20 |P 1 BYTE.COM200 | 00001A40: 49 4E 58 0D 20 4C 44 41 20 42 55 46 4F 46 53 2C |INX. LDA BUFOFS,| 00001A50: 58 20 3B 53 4B 49 50 20 4E 55 4D 42 45 52 53 0D |X ;SKIP NUMBERS.| 00001A60: 20 43 4D 50 20 23 24 33 30 20 3B 4C 45 53 53 20 | CMP #$30 ;LESS | 00001A70: 54 48 41 4E 20 30 0D 20 42 43 43 20 43 4F 4D 32 |THAN 0. BCC COM2| 00001A80: 35 30 20 3B 53 54 4F 50 20 53 4B 49 50 49 4E 47 |50 ;STOP SKIPING| 00001A90: 0D 20 43 4D 50 20 23 24 33 41 20 3B 4D 4F 52 45 |. CMP #$3A ;MORE| 00001AA0: 20 54 48 41 4E 20 39 0D 20 42 43 43 20 43 4F 4D | THAN 9. BCC COM| 00001AB0: 32 30 30 20 3B 4E 4F 20 2D 20 41 20 23 20 53 4B |200 ;NO - A # SK| 00001AC0: 49 50 20 49 54 0D 43 4F 4D 32 35 30 20 4C 44 41 |IP IT.COM250 LDA| 00001AD0: 20 42 55 46 4F 46 53 2C 58 20 3B 53 4B 49 50 20 | BUFOFS,X ;SKIP | 00001AE0: 4F 4E 45 20 4D 4F 52 45 20 53 50 41 43 45 0D 20 |ONE MORE SPACE. | 00001AF0: 43 4D 50 20 23 24 32 30 0D 20 42 4E 45 20 43 4F |CMP #$20. BNE CO| 00001B00: 4D 33 30 30 0D 20 49 4E 58 0D 43 4F 4D 33 30 30 |M300. INX.COM300| 00001B10: 20 4C 44 41 20 42 55 46 4F 46 53 2C 58 20 3B 43 | LDA BUFOFS,X ;C| 00001B20: 4F 4D 50 52 45 53 53 20 42 55 46 46 45 52 0D 20 |OMPRESS BUFFER. | 00001B30: 42 45 51 20 43 4F 4D 45 4E 44 20 3B 45 4E 44 20 |BEQ COMEND ;END | 00001B40: 4F 46 20 42 55 46 46 45 52 0D 20 41 4E 44 20 23 |OF BUFFER. AND #| 00001B50: 24 37 46 20 3B 4E 4F 20 47 52 41 50 48 49 43 53 |$7F ;NO GRAPHICS| 00001B60: 20 46 4F 52 20 4E 4F 57 0D 20 53 54 41 20 42 55 | FOR NOW. STA BU| 00001B70: 46 4F 46 53 2C 59 0D 20 49 4E 58 0D 20 49 4E 59 |FOFS,Y. INX. INY| 00001B80: 0D 20 42 4E 45 20 43 4F 4D 33 30 30 20 3B 42 52 |. BNE COM300 ;BR| 00001B90: 41 4E 43 48 20 41 4C 57 41 59 53 0D 43 4F 4D 45 |ANCH ALWAYS.COME| 00001BA0: 4E 44 20 53 54 41 20 42 55 46 4F 46 53 2C 59 20 |ND STA BUFOFS,Y | 00001BB0: 3B 46 49 58 20 46 41 4B 45 20 4C 49 4E 4B 0D 20 |;FIX FAKE LINK. | 00001BC0: 49 4E 59 0D 20 49 4E 59 0D 20 53 54 41 20 42 55 |INY. INY. STA BU| 00001BD0: 46 4F 46 53 2C 59 0D 20 49 4E 59 0D 20 49 4E 59 |FOFS,Y. INY. INY| 00001BE0: 0D 20 49 4E 59 0D 20 52 54 53 0D 3B 0D 3B 20 52 |. INY. RTS.;.; R| 00001BF0: 45 50 45 41 54 20 4B 45 59 20 46 55 4E 43 54 49 |EPEAT KEY FUNCTI| 00001C00: 4F 4E 0D 3B 20 48 4F 4C 44 20 41 4E 59 20 4B 45 |ON.; HOLD ANY KE| 00001C10: 59 20 46 4F 52 20 31 2F 32 20 53 45 43 2C 20 49 |Y FOR 1/2 SEC, I| 00001C20: 54 20 52 45 50 45 41 54 53 0D 3B 0D 52 45 50 45 |T REPEATS.;.REPE| 00001C30: 41 54 20 4C 44 41 20 4C 53 54 58 20 3B 47 45 54 |AT LDA LSTX ;GET| 00001C40: 20 4C 41 53 54 20 4B 45 59 0D 20 43 4D 50 20 53 | LAST KEY. CMP S| 00001C50: 41 56 43 48 52 20 3B 53 41 4D 45 20 41 53 20 4C |AVCHR ;SAME AS L| 00001C60: 41 53 54 20 54 49 4D 45 0D 20 42 45 51 20 52 45 |AST TIME. BEQ RE| 00001C70: 50 31 30 30 20 3B 59 45 53 0D 20 53 54 41 20 53 |P100 ;YES. STA S| 00001C80: 41 56 43 48 52 20 3B 4E 4F 20 2D 20 53 41 56 45 |AVCHR ;NO - SAVE| 00001C90: 20 4E 45 57 20 43 48 41 52 0D 20 4C 44 41 20 23 | NEW CHAR. LDA #| 00001CA0: 24 31 30 20 3B 53 45 54 20 44 45 4C 41 59 20 43 |$10 ;SET DELAY C| 00001CB0: 54 52 0D 20 53 54 41 20 44 45 4C 41 59 0D 52 50 |TR. STA DELAY.RP| 00001CC0: 45 58 49 54 20 4A 4D 50 20 49 52 51 56 45 43 0D |EXIT JMP IRQVEC.| 00001CD0: 52 45 50 31 30 30 20 43 4D 50 20 23 24 46 46 20 |REP100 CMP #$FF | 00001CE0: 3B 49 53 20 54 48 49 53 20 41 20 4E 4F 20 4B 45 |;IS THIS A NO KE| 00001CF0: 59 20 3F 0D 20 42 45 51 20 52 50 45 58 49 54 20 |Y ?. BEQ RPEXIT | 00001D00: 3B 59 45 53 0D 20 4C 44 41 20 44 45 4C 41 59 20 |;YES. LDA DELAY | 00001D10: 3B 44 45 4C 41 59 45 44 20 45 4E 4F 55 47 48 20 |;DELAYED ENOUGH | 00001D20: 3F 0D 20 42 45 51 20 52 45 50 32 30 30 20 3B 59 |?. BEQ REP200 ;Y| 00001D30: 45 53 0D 20 44 45 43 20 44 45 4C 41 59 20 3B 4E |ES. DEC DELAY ;N| 00001D40: 4F 20 2D 20 42 55 4D 50 20 43 54 52 0D 20 42 4E |O - BUMP CTR. BN| 00001D50: 45 20 52 50 45 58 49 54 0D 52 45 50 32 30 30 20 |E RPEXIT.REP200 | 00001D60: 44 45 43 20 52 45 50 44 59 20 3B 54 49 4D 45 20 |DEC REPDY ;TIME | 00001D70: 54 4F 20 52 45 50 45 41 54 0D 20 42 4E 45 20 52 |TO REPEAT. BNE R| 00001D80: 50 45 58 49 54 20 3B 4E 4F 0D 20 4C 44 41 20 23 |PEXIT ;NO. LDA #| 00001D90: 24 30 34 20 3B 59 45 53 20 2D 20 52 45 53 45 54 |$04 ;YES - RESET| 00001DA0: 20 43 54 52 0D 20 53 54 41 20 52 45 50 44 59 0D | CTR. STA REPDY.| 00001DB0: 20 4C 44 41 20 23 24 30 30 20 3B 54 45 4C 4C 20 | LDA #$00 ;TELL | 00001DC0: 49 52 51 20 54 4F 20 52 45 50 45 41 54 0D 20 53 |IRQ TO REPEAT. S| 00001DD0: 54 41 20 4C 53 54 58 0D 20 4C 44 41 20 23 24 30 |TA LSTX. LDA #$0| 00001DE0: 32 20 3B 46 49 58 20 54 48 45 20 42 4C 49 4E 4B |2 ;FIX THE BLINK| 00001DF0: 20 4F 4E 20 43 52 53 52 0D 20 53 54 41 20 42 4C | ON CRSR. STA BL| 00001E00: 4E 43 54 0D 20 42 4E 45 20 52 50 45 58 49 54 20 |NCT. BNE RPEXIT | 00001E10: 3B 42 52 41 4E 43 48 20 41 4C 57 41 59 53 0D 3B |;BRANCH ALWAYS.;| 00001E20: 0D 3B 20 43 41 53 53 45 54 54 45 20 43 41 4C 4C |.; CASSETTE CALL| 00001E30: 53 20 44 49 53 41 42 4C 45 20 52 45 50 45 41 54 |S DISABLE REPEAT| 00001E40: 0D 3B 0D 53 41 56 45 20 4A 53 52 20 46 49 58 49 |.;.SAVE JSR FIXI| 00001E50: 52 51 0D 20 4A 4D 50 20 43 53 41 56 45 0D 4C 4F |RQ. JMP CSAVE.LO| 00001E60: 41 44 20 4A 53 52 20 46 49 58 49 52 51 0D 20 4A |AD JSR FIXIRQ. J| 00001E70: 4D 50 20 43 4C 4F 41 44 0D 3B 0D 46 49 58 49 52 |MP CLOAD.;.FIXIR| 00001E80: 51 20 4C 44 58 20 23 31 32 0D 20 4A 4D 50 20 42 |Q LDX #12. JMP B| 00001E90: 53 49 56 20 3B 52 45 53 54 4F 52 45 20 4F 4C 44 |SIV ;RESTORE OLD| 00001EA0: 20 49 52 51 0D 3B 0D 3B 0D 3B 20 50 41 52 53 45 | IRQ.;.;.; PARSE| 00001EB0: 20 22 53 54 52 49 4E 47 22 2C 46 41 23 2C 53 41 | "STRING",FA#,SA| 00001EC0: 23 0D 3B 0D 50 41 52 53 49 54 20 4C 44 58 20 23 |#.;.PARSIT LDX #| 00001ED0: 30 20 3B 53 45 54 20 44 45 46 41 55 4C 54 53 0D |0 ;SET DEFAULTS.| 00001EE0: 20 53 54 58 20 53 41 54 55 53 0D 20 53 54 58 20 | STX SATUS. STX | 00001EF0: 46 4E 4C 45 4E 0D 20 4C 44 58 20 23 38 0D 20 53 |FNLEN. LDX #8. S| 00001F00: 54 58 20 4C 41 0D 20 53 54 58 20 53 41 0D 20 4A |TX LA. STX SA. J| 00001F10: 53 52 20 50 41 52 53 31 31 20 3B 46 49 4E 49 53 |SR PARS11 ;FINIS| 00001F20: 48 20 49 54 0D 20 4C 44 41 20 46 41 20 3B 47 45 |H IT. LDA FA ;GE| 00001F30: 54 20 44 45 56 49 43 45 20 23 0D 20 43 4D 50 20 |T DEVICE #. CMP | 00001F40: 23 33 20 3B 41 20 43 41 53 53 45 54 54 45 0D 20 |#3 ;A CASSETTE. | 00001F50: 42 43 43 20 50 52 53 32 30 30 20 3B 4E 4F 0D 20 |BCC PRS200 ;NO. | 00001F60: 4A 53 52 20 46 49 58 49 52 51 20 3B 44 49 53 41 |JSR FIXIRQ ;DISA| 00001F70: 42 4C 45 20 52 45 50 45 41 54 53 0D 50 52 53 32 |BLE REPEATS.PRS2| 00001F80: 30 30 20 4A 53 52 20 43 48 52 47 4F 54 20 3B 47 |00 JSR CHRGOT ;G| 00001F90: 45 54 20 4C 41 53 54 20 43 48 41 52 0D 20 42 45 |ET LAST CHAR. BE| 00001FA0: 51 20 50 52 53 33 30 30 20 3B 53 4B 49 50 20 49 |Q PRS300 ;SKIP I| 00001FB0: 46 20 45 4E 44 0D 20 4A 53 52 20 43 48 4B 43 4F |F END. JSR CHKCO| 00001FC0: 4D 20 3B 43 48 45 43 4B 20 46 4F 52 20 41 20 43 |M ;CHECK FOR A C| 00001FD0: 4F 4D 4D 41 0D 50 52 53 33 30 30 20 4A 53 52 20 |OMMA.PRS300 JSR | 00001FE0: 52 41 4E 47 45 20 3B 53 45 54 20 4C 49 4E 45 20 |RANGE ;SET LINE | 00001FF0: 23 20 52 41 4E 47 45 0D 20 4A 53 52 20 4F 50 45 |# RANGE. JSR OPE| 00002000: 4E 2B 33 20 3B 4F 50 45 4E 20 54 48 45 20 46 49 |N+3 ;OPEN THE FI| 00002010: 4C 45 0D 20 4C 44 58 20 4C 41 0D 20 52 54 53 0D |LE. LDX LA. RTS.| 00002020: 3B 0D 3B 20 53 54 4F 52 45 20 41 20 41 54 20 4C |;.; STORE A AT L| 00002030: 4F 57 54 52 0D 3B 0D 53 54 4F 52 34 20 4A 53 52 |OWTR.;.STOR4 JSR| 00002040: 20 53 54 4F 52 32 20 3B 53 54 4F 52 45 20 34 20 | STOR2 ;STORE 4 | 00002050: 54 49 4D 45 53 0D 53 54 4F 52 32 20 4A 53 52 20 |TIMES.STOR2 JSR | 00002060: 53 54 4F 52 54 52 20 3B 53 54 4F 52 45 20 32 20 |STORTR ;STORE 2 | 00002070: 54 49 4D 45 53 0D 53 54 4F 52 54 52 20 4C 44 59 |TIMES.STORTR LDY| 00002080: 20 23 30 0D 20 53 54 41 20 28 4C 4F 57 54 52 29 | #0. STA (LOWTR)| 00002090: 2C 59 0D 3B 0D 3B 20 49 4E 43 20 4C 4F 57 54 52 |,Y.;.; INC LOWTR| 000020A0: 0D 3B 0D 49 4E 43 54 52 20 49 4E 43 20 4C 4F 57 |.;.INCTR INC LOW| 000020B0: 54 52 0D 20 42 4E 45 20 49 4E 43 32 30 30 0D 20 |TR. BNE INC200. | 000020C0: 49 4E 43 20 4C 4F 57 54 52 2B 31 0D 49 4E 43 32 |INC LOWTR+1.INC2| 000020D0: 30 30 20 52 54 53 0D 3B 0D 3B 20 4C 4F 41 44 20 |00 RTS.;.; LOAD | 000020E0: 41 20 46 52 4F 4D 20 4C 4F 57 54 52 0D 3B 0D 4C |A FROM LOWTR.;.L| 000020F0: 4F 41 44 32 20 4A 53 52 20 4C 4F 41 44 54 52 20 |OAD2 JSR LOADTR | 00002100: 3B 4C 4F 41 44 20 54 57 49 43 45 0D 4C 4F 41 44 |;LOAD TWICE.LOAD| 00002110: 54 52 20 4A 53 52 20 49 4E 43 54 52 20 3B 49 4E |TR JSR INCTR ;IN| 00002120: 43 20 46 49 52 53 54 0D 4C 4F 44 31 30 30 20 4C |C FIRST.LOD100 L| 00002130: 44 59 20 23 30 0D 20 4C 44 41 20 28 4C 4F 57 54 |DY #0. LDA (LOWT| 00002140: 52 29 2C 59 0D 20 52 54 53 0D 3B 0D 3B 20 43 4F |R),Y. RTS.;.; CO| 00002150: 50 59 20 54 58 54 54 41 42 20 49 4E 54 4F 20 49 |PY TXTTAB INTO I| 00002160: 4E 44 45 58 31 0D 3B 0D 43 4F 50 54 41 42 20 4C |NDEX1.;.COPTAB L| 00002170: 44 41 20 54 58 54 54 41 42 0D 20 53 54 41 20 4C |DA TXTTAB. STA L| 00002180: 4F 57 54 52 0D 20 4C 44 41 20 54 58 54 54 41 42 |OWTR. LDA TXTTAB| 00002190: 2B 31 0D 20 53 54 41 20 4C 4F 57 54 52 2B 31 0D |+1. STA LOWTR+1.| 000021A0: 20 52 54 53 0D 3B 0D 3B 20 44 45 4C 45 54 45 20 | RTS.;.; DELETE | 000021B0: 41 20 52 41 4E 47 45 20 4F 46 20 53 4F 55 52 43 |A RANGE OF SOURC| 000021C0: 45 0D 3B 0D 3B 20 53 59 4E 54 41 58 0D 3B 20 44 |E.;.; SYNTAX.; D| 000021D0: 45 4C 45 54 45 20 46 52 4F 4D 23 2C 54 4F 23 0D |ELETE FROM#,TO#.| 000021E0: 3B 0D 44 45 4C 45 54 45 20 4A 53 52 20 52 41 4E |;.DELETE JSR RAN| 000021F0: 47 45 20 3B 47 45 54 20 4C 49 4E 45 20 23 20 52 |GE ;GET LINE # R| 00002200: 41 4E 47 45 0D 20 4C 44 41 20 4C 4F 57 54 52 20 |ANGE. LDA LOWTR | 00002210: 3B 53 41 56 45 20 49 54 0D 20 4C 44 58 20 4C 4F |;SAVE IT. LDX LO| 00002220: 57 54 52 2B 31 0D 20 53 54 41 20 49 4E 44 45 58 |WTR+1. STA INDEX| 00002230: 32 0D 20 53 54 58 20 49 4E 44 45 58 32 2B 31 0D |2. STX INDEX2+1.| 00002240: 20 4A 53 52 20 46 4E 44 4C 49 4E 20 3B 46 49 4E | JSR FNDLIN ;FIN| 00002250: 44 20 49 54 0D 20 42 43 43 20 44 45 4C 33 30 30 |D IT. BCC DEL300| 00002260: 20 3B 53 4B 49 50 20 49 46 20 4E 4F 54 20 46 4F | ;SKIP IF NOT FO| 00002270: 55 4E 44 0D 20 4C 44 59 20 23 31 0D 20 4C 44 41 |UND. LDY #1. LDA| 00002280: 20 28 4C 4F 57 54 52 29 2C 59 20 3B 41 54 20 45 | (LOWTR),Y ;AT E| 00002290: 4E 44 20 4F 46 20 53 4F 55 52 43 45 20 3F 0D 20 |ND OF SOURCE ?. | 000022A0: 42 45 51 20 44 45 4C 33 30 30 20 3B 59 45 53 0D |BEQ DEL300 ;YES.| 000022B0: 20 54 41 58 0D 20 44 45 59 0D 20 4C 44 41 20 28 | TAX. DEY. LDA (| 000022C0: 4C 4F 57 54 52 29 2C 59 0D 20 53 54 41 20 4C 4F |LOWTR),Y. STA LO| 000022D0: 57 54 52 20 3B 49 4E 43 4C 55 44 45 20 54 4F 20 |WTR ;INCLUDE TO | 000022E0: 4C 49 4E 45 20 23 0D 20 53 54 58 20 4C 4F 57 54 |LINE #. STX LOWT| 000022F0: 52 2B 31 0D 44 45 4C 33 30 30 20 4C 44 41 20 49 |R+1.DEL300 LDA I| 00002300: 4E 44 45 58 32 20 3B 43 48 45 43 4B 20 46 52 4F |NDEX2 ;CHECK FRO| 00002310: 4D 3C 54 4F 23 0D 20 53 45 43 0D 20 53 42 43 20 |M<TO#. SEC. SBC | 00002320: 4C 4F 57 54 52 20 3B 47 45 4E 20 4E 45 47 20 44 |LOWTR ;GEN NEG D| 00002330: 45 4C 54 41 0D 20 54 41 58 0D 20 4C 44 41 20 49 |ELTA. TAX. LDA I| 00002340: 4E 44 45 58 32 2B 31 0D 20 53 42 43 20 4C 4F 57 |NDEX2+1. SBC LOW| 00002350: 54 52 2B 31 0D 20 54 41 59 0D 20 42 43 53 20 4E |TR+1. TAY. BCS N| 00002360: 4F 54 44 45 4C 20 3B 4E 4F 20 47 4F 4F 44 0D 20 |OTDEL ;NO GOOD. | 00002370: 54 58 41 0D 20 43 4C 43 0D 20 41 44 43 20 56 41 |TXA. CLC. ADC VA| 00002380: 52 54 41 42 20 3B 47 45 4E 20 4E 45 57 20 45 4E |RTAB ;GEN NEW EN| 00002390: 44 20 4F 46 20 53 4F 55 52 43 45 0D 20 53 54 41 |D OF SOURCE. STA| 000023A0: 20 56 41 52 54 41 42 0D 20 54 59 41 0D 20 41 44 | VARTAB. TYA. AD| 000023B0: 43 20 56 41 52 54 41 42 2B 31 0D 20 53 54 41 20 |C VARTAB+1. STA | 000023C0: 56 41 52 54 41 42 2B 31 0D 20 4C 44 59 20 23 30 |VARTAB+1. LDY #0| 000023D0: 0D 44 45 4C 35 30 30 20 4C 44 41 20 28 4C 4F 57 |.DEL500 LDA (LOW| 000023E0: 54 52 29 2C 59 20 3B 4D 4F 56 45 20 53 4F 55 52 |TR),Y ;MOVE SOUR| 000023F0: 43 45 20 44 4F 57 4E 0D 20 53 54 41 20 28 49 4E |CE DOWN. STA (IN| 00002400: 44 45 58 32 29 2C 59 0D 20 49 4E 59 0D 20 42 4E |DEX2),Y. INY. BN| 00002410: 45 20 44 45 4C 35 30 30 0D 20 49 4E 43 20 4C 4F |E DEL500. INC LO| 00002420: 57 54 52 2B 31 0D 20 49 4E 43 20 49 4E 44 45 58 |WTR+1. INC INDEX| 00002430: 32 2B 31 0D 20 4C 44 41 20 56 41 52 54 41 42 2B |2+1. LDA VARTAB+| 00002440: 31 20 3B 44 4F 4E 45 20 4F 4E 45 20 45 58 54 52 |1 ;DONE ONE EXTR| 00002450: 41 20 50 41 47 45 0D 20 43 4D 50 20 49 4E 44 45 |A PAGE. CMP INDE| 00002460: 58 32 2B 31 0D 20 42 43 53 20 44 45 4C 35 30 30 |X2+1. BCS DEL500| 00002470: 20 3B 4E 4F 0D 4E 4F 54 44 45 4C 20 4A 4D 50 20 | ;NO.NOTDEL JMP | 00002480: 46 49 4E 49 0D 3B 0D 3B 0D 3B 0D 3B 2B 2B 2B 2B |FINI.;.;.;.;++++| 00002490: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 000024A0: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 0D 3B 2B 0D |++++++++++++.;+.| 000024B0: 3B 2B 20 46 49 4E 44 20 33 2E 38 0D 3B 2B 0D 3B |;+ FIND 3.8.;+.;| 000024C0: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 000024D0: 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B 2B |++++++++++++++++| 000024E0: 0D 3B 0D 3B 20 43 48 41 4E 47 45 20 41 4E 44 20 |.;.; CHANGE AND | 000024F0: 46 49 4E 44 20 43 4D 44 53 0D 3B 0D 43 48 41 4E |FIND CMDS.;.CHAN| 00002500: 47 45 20 53 54 41 20 43 4F 55 4E 54 20 3B 53 41 |GE STA COUNT ;SA| 00002510: 56 45 20 44 45 4C 49 4D 49 54 45 52 0D 20 4C 44 |VE DELIMITER. LD| 00002520: 58 20 23 30 0D 20 53 54 58 20 46 52 45 54 4F 50 |X #0. STX FRETOP| 00002530: 20 3B 5A 45 52 4F 20 32 4E 44 20 53 54 52 49 4E | ;ZERO 2ND STRIN| 00002540: 47 20 50 54 52 0D 20 4A 53 52 20 47 45 54 53 54 |G PTR. JSR GETST| 00002550: 52 20 3B 52 45 41 44 20 4F 4C 44 20 53 54 52 49 |R ;READ OLD STRI| 00002560: 4E 47 0D 20 4C 44 58 20 23 32 0D 20 53 54 58 20 |NG. LDX #2. STX | 00002570: 4C 53 54 50 4E 54 20 3B 53 45 54 20 43 48 41 4E |LSTPNT ;SET CHAN| 00002580: 47 45 20 46 4C 41 47 0D 20 42 4E 45 20 46 4E 44 |GE FLAG. BNE FND| 00002590: 30 35 30 20 3B 42 52 41 4E 43 48 20 41 4C 57 41 |050 ;BRANCH ALWA| 000025A0: 59 53 0D 46 49 4E 44 20 53 54 41 20 43 4F 55 4E |YS.FIND STA COUN| 000025B0: 54 20 3B 53 41 56 45 20 44 45 4C 49 4D 49 54 45 |T ;SAVE DELIMITE| 000025C0: 52 0D 20 4C 44 58 20 23 30 20 3B 46 4C 41 47 20 |R. LDX #0 ;FLAG | 000025D0: 46 4F 52 20 46 49 4E 44 0D 20 53 54 58 20 4C 53 |FOR FIND. STX LS| 000025E0: 54 50 4E 54 0D 46 4E 44 30 35 30 20 4A 53 52 20 |TPNT.FND050 JSR | 000025F0: 47 45 54 53 54 52 20 3B 49 4E 50 55 54 20 53 45 |GETSTR ;INPUT SE| 00002600: 41 52 43 48 20 53 54 52 49 4E 47 0D 20 4A 53 52 |ARCH STRING. JSR| 00002610: 20 43 48 52 47 45 54 20 3B 4D 4F 52 45 20 53 54 | CHRGET ;MORE ST| 00002620: 55 46 46 20 28 52 41 4E 47 45 29 0D 20 42 45 51 |UFF (RANGE). BEQ| 00002630: 20 46 4E 44 31 30 30 20 3B 4E 4F 0D 20 4A 53 52 | FND100 ;NO. JSR| 00002640: 20 43 48 4B 43 4F 4D 20 3B 50 52 4F 50 45 52 20 | CHKCOM ;PROPER | 00002650: 44 45 4C 49 4D 49 54 45 52 0D 46 4E 44 31 30 30 |DELIMITER.FND100| 00002660: 20 4A 53 52 20 52 41 4E 47 45 20 3B 47 45 54 20 | JSR RANGE ;GET | 00002670: 52 41 4E 47 45 20 53 45 54 20 50 54 52 53 0D 20 |RANGE SET PTRS. | 00002680: 4A 53 52 20 43 52 44 4F 20 3B 50 52 54 20 28 43 |JSR CRDO ;PRT (C| 00002690: 52 29 20 28 4C 46 29 0D 20 42 4E 45 20 46 4E 44 |R) (LF). BNE FND| 000026A0: 32 30 30 20 3B 42 52 41 4E 43 48 20 41 4C 57 41 |200 ;BRANCH ALWA| 000026B0: 59 53 0D 46 4E 44 31 35 30 20 49 4E 59 0D 20 54 |YS.FND150 INY. T| 000026C0: 59 41 0D 20 43 4C 43 0D 20 41 44 43 20 4C 4F 57 |YA. CLC. ADC LOW| 000026D0: 54 52 20 3B 43 41 4C 43 20 50 54 52 20 54 4F 20 |TR ;CALC PTR TO | 000026E0: 4E 45 58 54 20 4C 49 4E 45 0D 20 53 54 41 20 4C |NEXT LINE. STA L| 000026F0: 4F 57 54 52 0D 20 42 43 43 20 46 4E 44 32 30 30 |OWTR. BCC FND200| 00002700: 0D 20 49 4E 43 20 4C 4F 57 54 52 2B 31 0D 46 4E |. INC LOWTR+1.FN| 00002710: 44 32 30 30 20 4A 53 52 20 4C 4F 41 44 54 52 20 |D200 JSR LOADTR | 00002720: 3B 45 4E 44 20 4F 46 20 53 4F 55 52 43 45 0D 20 |;END OF SOURCE. | 00002730: 42 45 51 20 46 44 4F 4E 45 20 3B 59 45 53 20 2D |BEQ FDONE ;YES -| 00002740: 20 44 4F 4E 45 0D 20 4A 53 52 20 43 4D 50 4E 55 | DONE. JSR CMPNU| 00002750: 4D 20 3B 43 48 45 43 4B 20 4C 49 4E 45 20 52 41 |M ;CHECK LINE RA| 00002760: 4E 47 45 0D 20 42 43 53 20 46 4E 44 34 30 30 20 |NGE. BCS FND400 | 00002770: 3B 4E 4F 54 20 44 4F 4E 45 0D 46 44 4F 4E 45 20 |;NOT DONE.FDONE | 00002780: 4A 4D 50 20 46 49 4E 49 20 3B 46 49 58 20 4C 49 |JMP FINI ;FIX LI| 00002790: 4E 4B 53 0D 46 4E 44 34 30 30 20 4C 44 58 20 53 |NKS.FND400 LDX S| 000027A0: 54 52 45 4E 44 20 3B 53 54 41 52 54 20 4F 46 20 |TREND ;START OF | 000027B0: 43 4F 4D 50 41 49 52 20 53 54 52 49 4E 47 0D 20 |COMPAIR STRING. | 000027C0: 4C 44 41 20 53 54 52 45 4E 44 2B 31 20 3B 53 45 |LDA STREND+1 ;SE| 000027D0: 54 20 43 4D 50 20 43 54 52 0D 20 53 54 41 20 57 |T CMP CTR. STA W| 000027E0: 53 57 0D 46 4E 44 35 30 30 20 49 4E 59 0D 20 4C |SW.FND500 INY. L| 000027F0: 44 41 20 28 4C 4F 57 54 52 29 2C 59 20 3B 45 4E |DA (LOWTR),Y ;EN| 00002800: 44 20 4F 46 20 4C 49 4E 45 20 3F 0D 20 42 45 51 |D OF LINE ?. BEQ| 00002810: 20 46 4E 44 31 35 30 20 3B 59 45 53 20 2D 20 53 | FND150 ;YES - S| 00002820: 54 41 52 54 20 4E 45 57 20 4C 49 4E 45 0D 20 43 |TART NEW LINE. C| 00002830: 4D 50 20 42 55 46 4F 46 53 2C 58 20 3B 4D 41 54 |MP BUFOFS,X ;MAT| 00002840: 43 48 20 3F 0D 20 42 4E 45 20 46 4E 44 34 30 30 |CH ?. BNE FND400| 00002850: 20 3B 4E 4F 0D 20 49 4E 58 0D 20 44 45 43 20 57 | ;NO. INX. DEC W| 00002860: 53 57 20 3B 4D 41 54 43 48 45 44 20 41 4C 4C 20 |SW ;MATCHED ALL | 00002870: 3F 0D 20 42 4E 45 20 46 4E 44 35 30 30 20 3B 4E |?. BNE FND500 ;N| 00002880: 4F 0D 20 53 54 59 20 43 4F 55 4E 54 20 3B 59 45 |O. STY COUNT ;YE| 00002890: 53 20 2D 20 53 41 56 45 20 4C 41 53 54 20 59 0D |S - SAVE LAST Y.| 000028A0: 20 53 54 59 20 54 32 0D 20 4C 44 41 20 4C 53 54 | STY T2. LDA LST| 000028B0: 50 4E 54 20 3B 41 20 43 48 41 4E 47 45 20 3F 0D |PNT ;A CHANGE ?.| 000028C0: 20 42 45 51 20 50 52 54 49 54 20 3B 4E 4F 20 2D | BEQ PRTIT ;NO -| 000028D0: 20 50 52 49 4E 54 49 54 0D 43 48 47 49 54 20 4A | PRINTIT.CHGIT J| 000028E0: 53 52 20 53 45 54 50 54 52 20 3B 53 45 54 20 42 |SR SETPTR ;SET B| 000028F0: 4F 54 48 20 49 4E 44 45 58 53 0D 20 4C 44 41 20 |OTH INDEXS. LDA | 00002900: 46 52 45 54 4F 50 2B 31 20 3B 43 41 4C 43 20 44 |FRETOP+1 ;CALC D| 00002910: 49 46 46 20 4F 46 20 53 54 52 49 4E 47 53 0D 20 |IFF OF STRINGS. | 00002920: 53 45 43 0D 20 53 42 43 20 53 54 52 45 4E 44 2B |SEC. SBC STREND+| 00002930: 31 0D 20 53 54 41 20 54 31 0D 20 42 45 51 20 4D |1. STA T1. BEQ M| 00002940: 4F 56 4E 4F 54 20 3B 53 54 52 49 4E 47 53 20 45 |OVNOT ;STRINGS E| 00002950: 47 55 41 4C 20 4E 4F 20 4D 4F 56 45 0D 54 45 53 |GUAL NO MOVE.TES| 00002960: 54 4C 4E 20 49 4E 59 0D 54 44 4F 4E 45 20 42 45 |TLN INY.TDONE BE| 00002970: 51 20 46 44 4F 4E 45 20 3B 32 35 36 20 57 52 41 |Q FDONE ;256 WRA| 00002980: 50 20 2D 20 47 45 54 20 4F 55 54 0D 20 4C 44 41 |P - GET OUT. LDA| 00002990: 20 28 4C 4F 57 54 52 29 2C 59 20 3B 45 4E 44 20 | (LOWTR),Y ;END | 000029A0: 4F 46 20 4C 49 4E 45 0D 20 42 4E 45 20 54 45 53 |OF LINE. BNE TES| 000029B0: 54 4C 4E 20 3B 4E 4F 0D 20 43 4C 43 0D 20 54 59 |TLN ;NO. CLC. TY| 000029C0: 41 0D 20 41 44 43 20 54 31 0D 20 43 4D 50 20 23 |A. ADC T1. CMP #| 000029D0: 32 20 3B 4C 49 4E 45 20 54 4F 4F 20 53 48 4F 52 |2 ;LINE TOO SHOR| 000029E0: 54 20 54 4F 20 43 48 41 4E 47 45 20 3F 0D 20 42 |T TO CHANGE ?. B| 000029F0: 43 43 20 50 52 54 49 54 20 3B 59 45 53 20 2D 20 |CC PRTIT ;YES - | 00002A00: 4A 55 53 54 20 50 52 54 0D 20 43 4D 50 20 23 24 |JUST PRT. CMP #$| 00002A10: 34 42 20 3B 4C 49 4E 45 20 54 4F 4F 20 4C 4F 4E |4B ;LINE TOO LON| 00002A20: 47 20 3F 0D 20 42 43 53 20 50 52 54 49 54 20 3B |G ?. BCS PRTIT ;| 00002A30: 59 45 53 0D 20 4C 44 41 20 54 31 20 3B 53 45 54 |YES. LDA T1 ;SET| 00002A40: 20 50 4C 55 53 2F 4D 49 4E 55 53 0D 20 42 50 4C | PLUS/MINUS. BPL| 00002A50: 20 43 48 47 31 30 30 20 3B 4E 4F 20 42 4F 52 52 | CHG100 ;NO BORR| 00002A60: 4F 57 0D 20 44 45 43 20 57 53 57 20 3B 48 49 20 |OW. DEC WSW ;HI | 00002A70: 42 59 54 45 20 4E 45 47 0D 43 48 47 31 30 30 20 |BYTE NEG.CHG100 | 00002A80: 43 4C 43 0D 20 41 44 43 20 43 4F 55 4E 54 20 3B |CLC. ADC COUNT ;| 00002A90: 43 41 4C 43 20 4D 4F 56 45 20 54 4F 20 50 54 52 |CALC MOVE TO PTR| 00002AA0: 0D 20 53 54 41 20 54 32 0D 20 42 43 53 20 44 57 |. STA T2. BCS DW| 00002AB0: 4E 44 57 4E 20 3B 41 20 4D 4F 56 45 20 44 4F 57 |NDWN ;A MOVE DOW| 00002AC0: 4E 0D 55 50 55 50 20 4A 53 52 20 4D 4F 56 45 55 |N.UPUP JSR MOVEU| 00002AD0: 50 20 3B 4D 4F 56 45 20 55 50 0D 20 42 45 51 20 |P ;MOVE UP. BEQ | 00002AE0: 4D 4F 56 4E 4F 54 20 3B 42 52 41 4E 43 48 20 41 |MOVNOT ;BRANCH A| 00002AF0: 4C 57 41 59 53 0D 44 57 4E 44 57 4E 20 4A 53 52 |LWAYS.DWNDWN JSR| 00002B00: 20 4D 4F 56 44 57 4E 0D 4D 4F 56 4E 4F 54 20 4C | MOVDWN.MOVNOT L| 00002B10: 44 41 20 54 32 20 3B 43 41 4C 43 20 42 45 47 49 |DA T2 ;CALC BEGI| 00002B20: 4E 20 4F 4C 44 20 53 54 52 0D 20 53 45 43 0D 20 |N OLD STR. SEC. | 00002B30: 53 42 43 20 46 52 45 54 4F 50 2B 31 0D 20 54 41 |SBC FRETOP+1. TA| 00002B40: 59 0D 20 49 4E 59 0D 20 4C 44 41 20 46 52 45 54 |Y. INY. LDA FRET| 00002B50: 4F 50 2B 31 0D 20 42 45 51 20 4D 4E 54 32 30 30 |OP+1. BEQ MNT200| 00002B60: 20 3B 4E 45 57 20 53 54 52 49 4E 47 20 45 4D 50 | ;NEW STRING EMP| 00002B70: 54 59 2C 53 4B 49 50 0D 20 53 54 41 20 54 33 20 |TY,SKIP. STA T3 | 00002B80: 3B 4E 45 57 20 53 54 52 20 43 54 52 0D 20 4C 44 |;NEW STR CTR. LD| 00002B90: 58 20 46 52 45 54 4F 50 20 3B 49 4E 44 45 58 20 |X FRETOP ;INDEX | 00002BA0: 54 4F 20 4E 45 57 20 53 54 52 49 4E 47 0D 4D 4E |TO NEW STRING.MN| 00002BB0: 54 31 30 30 20 4C 44 41 20 42 55 46 4F 46 53 2C |T100 LDA BUFOFS,| 00002BC0: 58 20 3B 47 45 54 20 4E 45 57 20 53 54 52 0D 20 |X ;GET NEW STR. | 00002BD0: 53 54 41 20 28 4C 4F 57 54 52 29 2C 59 0D 20 49 |STA (LOWTR),Y. I| 00002BE0: 4E 58 0D 20 49 4E 59 0D 20 44 45 43 20 54 33 20 |NX. INY. DEC T3 | 00002BF0: 3B 44 4F 4E 45 0D 20 42 4E 45 20 4D 4E 54 31 30 |;DONE. BNE MNT10| 00002C00: 30 0D 4D 4E 54 32 30 30 20 43 4C 43 0D 20 4C 44 |0.MNT200 CLC. LD| 00002C10: 41 20 56 41 52 54 41 42 20 3B 43 41 4C 43 20 4E |A VARTAB ;CALC N| 00002C20: 45 57 20 45 4E 44 20 4F 46 20 4D 45 4D 4F 52 59 |EW END OF MEMORY| 00002C30: 0D 20 41 44 43 20 54 31 0D 20 53 54 41 20 56 41 |. ADC T1. STA VA| 00002C40: 52 54 41 42 0D 20 4C 44 41 20 56 41 52 54 41 42 |RTAB. LDA VARTAB| 00002C50: 2B 31 0D 20 41 44 43 20 57 53 57 0D 20 53 54 41 |+1. ADC WSW. STA| 00002C60: 20 56 41 52 54 41 42 2B 31 0D 50 52 54 49 54 20 | VARTAB+1.PRTIT | 00002C70: 4C 44 58 20 49 4E 50 50 54 52 20 3B 47 45 54 20 |LDX INPPTR ;GET | 00002C80: 4C 49 4E 45 20 23 20 4C 4F 0D 20 4C 44 41 20 49 |LINE # LO. LDA I| 00002C90: 4E 50 50 54 52 2B 31 20 3B 47 45 54 20 4C 49 4E |NPPTR+1 ;GET LIN| 00002CA0: 45 20 23 20 48 49 0D 20 4A 53 52 20 4C 49 4E 50 |E # HI. JSR LINP| 00002CB0: 52 54 20 3B 50 52 54 20 4C 49 4E 45 20 23 0D 20 |RT ;PRT LINE #. | 00002CC0: 4C 44 59 20 23 30 0D 20 4C 44 41 20 23 24 32 30 |LDY #0. LDA #$20| 00002CD0: 20 3B 50 52 54 20 53 50 41 43 45 0D 50 52 54 32 | ;PRT SPACE.PRT2| 00002CE0: 30 30 20 4A 53 52 20 42 53 4F 55 54 0D 20 49 4E |00 JSR BSOUT. IN| 00002CF0: 59 0D 20 42 4E 45 20 50 52 54 32 35 30 20 3B 4C |Y. BNE PRT250 ;L| 00002D00: 49 4E 45 20 4C 4F 4E 47 45 52 20 32 35 36 20 53 |INE LONGER 256 S| 00002D10: 54 4F 50 0D 20 4A 4D 50 20 46 49 4E 49 0D 50 52 |TOP. JMP FINI.PR| 00002D20: 54 32 35 30 20 4C 44 41 20 28 4C 4F 57 54 52 29 |T250 LDA (LOWTR)| 00002D30: 2C 59 20 3B 44 4F 4E 45 0D 20 42 4E 45 20 50 52 |,Y ;DONE. BNE PR| 00002D40: 54 32 30 30 0D 20 4A 53 52 20 43 52 44 4F 20 3B |T200. JSR CRDO ;| 00002D50: 28 43 52 29 20 28 4C 46 29 0D 20 4A 53 52 20 47 |(CR) (LF). JSR G| 00002D60: 45 54 49 4E 20 3B 53 54 4F 50 20 48 45 52 45 0D |ETIN ;STOP HERE.| 00002D70: 20 42 45 51 20 50 52 54 35 30 30 20 3B 4E 4F 0D | BEQ PRT500 ;NO.| 00002D80: 50 52 54 33 30 30 20 43 4D 50 20 23 24 30 33 20 |PRT300 CMP #$03 | 00002D90: 3B 53 54 4F 50 20 4B 45 59 20 3F 0D 20 42 45 51 |;STOP KEY ?. BEQ| 00002DA0: 20 54 44 4F 4E 45 20 3B 59 45 53 0D 50 52 54 34 | TDONE ;YES.PRT4| 00002DB0: 30 30 20 4A 53 52 20 47 45 54 49 4E 20 3B 47 4F |00 JSR GETIN ;GO| 00002DC0: 20 4F 4E 20 3F 0D 20 42 45 51 20 50 52 54 34 30 | ON ?. BEQ PRT40| 00002DD0: 30 20 3B 4E 4F 20 2D 20 57 41 49 54 0D 50 52 54 |0 ;NO - WAIT.PRT| 00002DE0: 35 30 30 20 4C 44 59 20 54 32 20 3B 43 4F 4E 54 |500 LDY T2 ;CONT| 00002DF0: 49 4E 55 45 20 4F 4E 0D 20 4A 4D 50 20 46 4E 44 |INUE ON. JMP FND| 00002E00: 34 30 30 0D 3B 0D 3B 0D 3B 20 47 45 54 20 53 54 |400.;.;.; GET ST| 00002E10: 52 49 4E 47 53 20 46 4F 52 20 46 49 4E 44 20 41 |RINGS FOR FIND A| 00002E20: 4E 44 20 43 48 41 4E 47 45 0D 3B 0D 47 45 54 53 |ND CHANGE.;.GETS| 00002E30: 54 52 20 4C 44 59 20 54 58 54 50 54 52 20 3B 53 |TR LDY TXTPTR ;S| 00002E40: 54 41 52 54 20 4F 46 20 46 49 52 53 54 20 53 54 |TART OF FIRST ST| 00002E50: 52 49 4E 47 0D 20 49 4E 59 0D 20 53 54 59 20 53 |RING. INY. STY S| 00002E60: 54 52 45 4E 44 2C 58 20 3B 53 45 54 20 42 45 47 |TREND,X ;SET BEG| 00002E70: 49 4E 20 4F 46 20 53 54 52 49 4E 47 20 50 54 52 |IN OF STRING PTR| 00002E80: 0D 20 4C 44 41 20 23 30 0D 20 53 54 41 20 53 54 |. LDA #0. STA ST| 00002E90: 52 45 4E 44 2B 31 2C 58 20 3B 5A 45 52 4F 20 4C |REND+1,X ;ZERO L| 00002EA0: 45 4E 47 54 48 0D 47 54 53 32 30 30 20 4C 44 41 |ENGTH.GTS200 LDA| 00002EB0: 20 42 55 46 4F 46 53 2C 59 20 3B 45 4E 44 0D 20 | BUFOFS,Y ;END. | 00002EC0: 42 45 51 20 52 4E 47 45 52 52 20 3B 59 45 53 20 |BEQ RNGERR ;YES | 00002ED0: 2D 20 47 45 54 20 4F 55 54 0D 20 43 4D 50 20 43 |- GET OUT. CMP C| 00002EE0: 4F 55 4E 54 20 3B 4E 4F 20 2D 20 44 45 4C 49 4D |OUNT ;NO - DELIM| 00002EF0: 49 54 45 52 20 3F 0D 20 42 45 51 20 47 54 53 35 |ITER ?. BEQ GTS5| 00002F00: 30 30 20 3B 59 45 53 0D 20 49 4E 43 20 53 54 52 |00 ;YES. INC STR| 00002F10: 45 4E 44 2B 31 2C 58 20 3B 49 4E 43 20 53 54 52 |END+1,X ;INC STR| 00002F20: 49 4E 47 20 4C 45 4E 47 54 48 0D 20 49 4E 59 0D |ING LENGTH. INY.| 00002F30: 20 42 4E 45 20 47 54 53 32 30 30 0D 47 54 53 35 | BNE GTS200.GTS5| 00002F40: 30 30 20 53 54 59 20 54 58 54 50 54 52 20 3B 46 |00 STY TXTPTR ;F| 00002F50: 49 58 20 54 45 58 54 20 50 54 52 0D 20 52 54 53 |IX TEXT PTR. RTS| 00002F60: 0D 3B 0D 3B 20 42 52 45 41 4B 20 54 4F 20 4D 4F |.;.; BREAK TO MO| 00002F70: 4E 49 54 4F 52 0D 3B 0D 42 52 45 41 4B 20 50 4C |NITOR.;.BREAK PL| 00002F80: 41 0D 20 50 4C 41 0D 20 42 52 4B 0D 20 4A 4D 50 |A. PLA. BRK. JMP| 00002F90: 20 57 41 52 4D 20 3B 47 4F 20 57 41 52 4D 20 53 | WARM ;GO WARM S| 00002FA0: 54 41 52 54 20 42 41 53 49 43 0D 3B 0D 3B 20 49 |TART BASIC.;.; I| 00002FB0: 4E 50 55 54 20 52 41 4E 47 45 20 50 41 52 4D 53 |NPUT RANGE PARMS| 00002FC0: 0D 3B 0D 3B 20 31 30 30 2D 32 30 30 0D 3B 20 31 |.;.; 100-200.; 1| 00002FD0: 30 30 2D 0D 3B 20 2D 32 30 30 0D 3B 20 31 30 30 |00-.; -200.; 100| 00002FE0: 0D 3B 0D 52 41 4E 47 45 20 42 43 43 20 52 4E 47 |.;.RANGE BCC RNG| 00002FF0: 31 30 30 20 3B 46 52 4F 4D 20 43 48 52 47 4F 54 |100 ;FROM CHRGOT| 00003000: 20 41 20 23 20 3F 0D 20 42 45 51 20 52 4E 47 31 | A # ?. BEQ RNG1| 00003010: 30 30 20 3B 41 20 54 45 52 49 4D 41 54 4F 52 0D |00 ;A TERIMATOR.| 00003020: 20 43 4D 50 20 23 27 2D 20 3B 41 20 44 41 53 48 | CMP #'- ;A DASH| 00003030: 0D 20 42 45 51 20 52 4E 47 31 30 30 0D 52 4E 47 |. BEQ RNG100.RNG| 00003040: 45 52 52 20 4A 4D 50 20 53 4E 45 52 52 20 3B 53 |ERR JMP SNERR ;S| 00003050: 59 4E 54 41 58 20 45 52 52 4F 52 0D 52 4E 47 31 |YNTAX ERROR.RNG1| 00003060: 30 30 20 4A 53 52 20 4C 49 4E 47 45 54 20 3B 47 |00 JSR LINGET ;G| 00003070: 45 54 20 23 0D 20 4A 53 52 20 46 4E 44 4C 49 4E |ET #. JSR FNDLIN| 00003080: 20 3B 46 49 4E 44 20 4F 52 20 53 45 54 20 50 54 | ;FIND OR SET PT| 00003090: 52 53 0D 20 4A 53 52 20 43 48 52 47 4F 54 20 3B |RS. JSR CHRGOT ;| 000030A0: 47 45 54 20 4C 41 53 54 20 43 48 41 52 0D 20 42 |GET LAST CHAR. B| 000030B0: 45 51 20 52 4E 47 32 30 30 20 3B 53 4B 49 50 20 |EQ RNG200 ;SKIP | 000030C0: 44 4F 4E 45 0D 20 43 4D 50 20 23 27 2D 20 3B 41 |DONE. CMP #'- ;A| 000030D0: 20 44 41 53 48 0D 20 42 4E 45 20 52 4E 47 45 52 | DASH. BNE RNGER| 000030E0: 52 20 3B 53 59 4E 54 41 58 20 45 52 52 4F 52 0D |R ;SYNTAX ERROR.| 000030F0: 20 4A 53 52 20 43 48 52 47 45 54 20 3B 59 45 53 | JSR CHRGET ;YES| 00003100: 20 2D 20 53 4B 49 50 20 44 41 53 48 0D 20 4A 53 | - SKIP DASH. JS| 00003110: 52 20 4C 49 4E 47 45 54 20 3B 47 45 54 20 54 4F |R LINGET ;GET TO| 00003120: 20 23 0D 20 42 4E 45 20 52 4E 47 45 52 52 20 3B | #. BNE RNGERR ;| 00003130: 4E 4F 54 20 41 20 4E 55 4D 42 45 52 20 45 52 52 |NOT A NUMBER ERR| 00003140: 0D 52 4E 47 32 30 30 20 4C 44 41 20 4C 49 4E 4E |.RNG200 LDA LINN| 00003150: 55 4D 0D 20 4F 52 41 20 4C 49 4E 4E 55 4D 20 3B |UM. ORA LINNUM ;| 00003160: 41 20 54 4F 20 23 20 3F 0D 20 42 4E 45 20 52 4E |A TO # ?. BNE RN| 00003170: 47 52 54 53 20 3B 59 45 53 0D 20 4C 44 41 20 23 |GRTS ;YES. LDA #| 00003180: 24 46 46 20 3B 4E 4F 20 2D 20 4D 41 4B 45 20 4D |$FF ;NO - MAKE M| 00003190: 41 58 0D 20 53 54 41 20 4C 49 4E 4E 55 4D 0D 20 |AX. STA LINNUM. | 000031A0: 53 54 41 20 4C 49 4E 4E 55 4D 2B 31 0D 52 4E 47 |STA LINNUM+1.RNG| 000031B0: 52 54 53 20 52 54 53 0D 3B 0D 3B 20 43 4F 4D 50 |RTS RTS.;.; COMP| 000031C0: 41 49 52 53 20 28 4C 4F 57 54 52 29 2C 59 20 57 |AIRS (LOWTR),Y W| 000031D0: 49 54 48 20 4C 49 4E 4E 55 4D 0D 3B 0D 3B 20 43 |ITH LINNUM.;.; C| 000031E0: 3D 31 20 4C 49 4E 4E 55 4D 3D 3E 28 4C 4F 57 54 |=1 LINNUM=>(LOWT| 000031F0: 52 29 2C 59 0D 3B 20 43 3D 30 20 4C 49 4E 4E 55 |R),Y.; C=0 LINNU| 00003200: 4D 3C 20 28 4C 4F 57 54 52 29 2C 59 0D 3B 0D 43 |M< (LOWTR),Y.;.C| 00003210: 4D 50 4E 55 4D 20 4A 53 52 20 4C 4F 41 44 54 52 |MPNUM JSR LOADTR| 00003220: 20 3B 47 45 54 20 23 20 4C 4F 0D 20 53 54 41 20 | ;GET # LO. STA | 00003230: 49 4E 50 50 54 52 20 3B 53 41 56 45 20 54 4F 20 |INPPTR ;SAVE TO | 00003240: 50 52 54 20 4C 41 54 45 52 0D 20 4A 53 52 20 4C |PRT LATER. JSR L| 00003250: 4F 41 44 54 52 0D 20 53 54 41 20 49 4E 50 50 54 |OADTR. STA INPPT| 00003260: 52 2B 31 0D 20 53 45 43 0D 20 4C 44 41 20 4C 49 |R+1. SEC. LDA LI| 00003270: 4E 4E 55 4D 0D 20 53 42 43 20 49 4E 50 50 54 52 |NNUM. SBC INPPTR| 00003280: 0D 20 4C 44 41 20 4C 49 4E 4E 55 4D 2B 31 0D 20 |. LDA LINNUM+1. | 00003290: 53 42 43 20 49 4E 50 50 54 52 2B 31 0D 20 52 54 |SBC INPPTR+1. RT| 000032A0: 53 0D 3B 0D 3B 20 53 45 54 53 20 49 4E 44 45 58 |S.;.; SETS INDEX| 000032B0: 31 20 41 4E 44 20 49 4E 44 45 58 32 0D 3B 0D 3B |1 AND INDEX2.;.;| 000032C0: 20 49 4E 44 45 58 31 20 3D 20 4C 4F 57 54 52 0D | INDEX1 = LOWTR.| 000032D0: 3B 20 49 4E 44 45 58 32 20 3D 20 56 41 52 54 41 |; INDEX2 = VARTA| 000032E0: 42 0D 3B 0D 53 45 54 50 54 52 20 4C 44 41 20 4C |B.;.SETPTR LDA L| 000032F0: 4F 57 54 52 0D 20 53 54 41 20 49 4E 44 45 58 31 |OWTR. STA INDEX1| 00003300: 0D 20 4C 44 41 20 4C 4F 57 54 52 2B 31 0D 20 53 |. LDA LOWTR+1. S| 00003310: 54 41 20 49 4E 44 45 58 31 2B 31 0D 20 4C 44 41 |TA INDEX1+1. LDA| 00003320: 20 56 41 52 54 41 42 0D 20 53 54 41 20 49 4E 44 | VARTAB. STA IND| 00003330: 45 58 32 0D 20 4C 44 41 20 56 41 52 54 41 42 2B |EX2. LDA VARTAB+| 00003340: 31 0D 20 53 54 41 20 49 4E 44 45 58 32 2B 31 0D |1. STA INDEX2+1.| 00003350: 20 52 54 53 0D 3B 0D 3B 20 43 4F 4D 50 41 49 52 | RTS.;.; COMPAIR| 00003360: 53 20 49 4E 44 45 58 31 20 41 4E 44 20 49 4E 44 |S INDEX1 AND IND| 00003370: 45 58 32 0D 3B 0D 43 4D 50 49 4E 44 20 4C 44 41 |EX2.;.CMPIND LDA| 00003380: 20 49 4E 44 45 58 31 0D 20 43 4D 50 20 49 4E 44 | INDEX1. CMP IND| 00003390: 45 58 32 0D 20 42 4E 45 20 43 4D 50 52 54 53 0D |EX2. BNE CMPRTS.| 000033A0: 20 4C 44 41 20 49 4E 44 45 58 31 2B 31 0D 20 43 | LDA INDEX1+1. C| 000033B0: 4D 50 20 49 4E 44 45 58 32 2B 31 0D 43 4D 50 52 |MP INDEX2+1.CMPR| 000033C0: 54 53 20 52 54 53 0D 3B 0D 3B 20 4D 4F 56 45 53 |TS RTS.;.; MOVES| 000033D0: 20 4D 45 4D 4F 52 59 20 44 4F 57 4E 0D 3B 0D 4D | MEMORY DOWN.;.M| 000033E0: 4F 56 44 57 4E 20 4C 44 59 20 43 4F 55 4E 54 0D |OVDWN LDY COUNT.| 000033F0: 20 49 4E 59 0D 20 4C 44 41 20 28 49 4E 44 45 58 | INY. LDA (INDEX| 00003400: 31 29 2C 59 0D 20 4C 44 59 20 54 32 0D 20 49 4E |1),Y. LDY T2. IN| 00003410: 59 0D 20 53 54 41 20 28 49 4E 44 45 58 31 29 2C |Y. STA (INDEX1),| 00003420: 59 0D 20 4A 53 52 20 43 4D 50 49 4E 44 20 3B 44 |Y. JSR CMPIND ;D| 00003430: 4F 4E 45 20 3F 0D 20 42 4E 45 20 4D 44 4E 31 30 |ONE ?. BNE MDN10| 00003440: 30 20 3B 4E 4F 0D 20 52 54 53 0D 4D 44 4E 31 30 |0 ;NO. RTS.MDN10| 00003450: 30 20 49 4E 43 20 49 4E 44 45 58 31 0D 20 42 4E |0 INC INDEX1. BN| 00003460: 45 20 4D 4F 56 44 57 4E 0D 20 49 4E 43 20 49 4E |E MOVDWN. INC IN| 00003470: 44 45 58 31 2B 31 0D 20 42 4E 45 20 4D 4F 56 44 |DEX1+1. BNE MOVD| 00003480: 57 4E 0D 3B 0D 3B 20 4D 4F 56 45 20 4D 45 4D 4F |WN.;.; MOVE MEMO| 00003490: 52 59 20 55 50 0D 3B 0D 4D 4F 56 45 55 50 20 4C |RY UP.;.MOVEUP L| 000034A0: 44 59 20 43 4F 55 4E 54 0D 20 4C 44 41 20 28 49 |DY COUNT. LDA (I| 000034B0: 4E 44 45 58 32 29 2C 59 0D 20 4C 44 59 20 54 32 |NDEX2),Y. LDY T2| 000034C0: 0D 20 53 54 41 20 28 49 4E 44 45 58 32 29 2C 59 |. STA (INDEX2),Y| 000034D0: 0D 20 4A 53 52 20 43 4D 50 49 4E 44 20 3B 44 4F |. JSR CMPIND ;DO| 000034E0: 4E 45 20 3F 0D 20 42 4E 45 20 4D 55 50 31 30 30 |NE ?. BNE MUP100| 000034F0: 20 3B 4E 4F 0D 20 52 54 53 0D 4D 55 50 31 30 30 | ;NO. RTS.MUP100| 00003500: 20 4C 44 41 20 49 4E 44 45 58 32 20 3B 5A 45 52 | LDA INDEX2 ;ZER| 00003510: 4F 20 3F 0D 20 42 4E 45 20 4D 55 50 32 30 30 20 |O ?. BNE MUP200 | 00003520: 3B 4E 4F 20 2D 20 4E 4F 20 42 4F 52 52 4F 57 0D |;NO - NO BORROW.| 00003530: 20 44 45 43 20 49 4E 44 45 58 32 2B 31 0D 4D 55 | DEC INDEX2+1.MU| 00003540: 50 32 30 30 20 44 45 43 20 49 4E 44 45 58 32 0D |P200 DEC INDEX2.| 00003550: 20 4A 4D 50 20 4D 4F 56 45 55 50 0D 3B 0D 3B 20 | JMP MOVEUP.;.; | 00003560: 43 4F 4D 4D 41 4E 44 20 4C 49 53 54 0D 3B 0D 43 |COMMAND LIST.;.C| 00003570: 4C 49 53 54 20 2E 42 59 54 45 20 27 41 55 54 27 |LIST .BYTE 'AUT'| 00003580: 2C 24 43 46 0D 20 2E 42 59 54 45 20 27 42 52 45 |,$CF. .BYTE 'BRE| 00003590: 41 27 2C 24 43 42 0D 20 2E 42 59 54 45 20 27 43 |A',$CB. .BYTE 'C| 000035A0: 48 41 4E 47 27 2C 24 43 35 0D 20 2E 42 59 54 45 |HANG',$C5. .BYTE| 000035B0: 20 27 44 45 4C 45 54 27 2C 24 43 35 0D 20 2E 42 | 'DELET',$C5. .B| 000035C0: 59 54 45 20 27 46 49 4E 27 2C 24 43 34 0D 20 2E |YTE 'FIN',$C4. .| 000035D0: 42 59 54 45 20 27 47 45 27 2C 24 44 34 0D 20 2E |BYTE 'GE',$D4. .| 000035E0: 42 59 54 45 20 27 4B 49 4C 27 2C 24 43 43 0D 20 |BYTE 'KIL',$CC. | 000035F0: 2E 42 59 54 45 20 27 4C 4F 41 27 2C 24 43 34 0D |.BYTE 'LOA',$C4.| 00003600: 20 2E 42 59 54 45 20 27 4E 55 4D 42 45 27 2C 24 | .BYTE 'NUMBE',$| 00003610: 44 32 0D 20 2E 42 59 54 45 20 27 50 55 27 2C 24 |D2. .BYTE 'PU',$| 00003620: 44 34 0D 20 2E 42 59 54 45 20 27 52 45 50 45 41 |D4. .BYTE 'REPEA| 00003630: 27 2C 24 44 34 0D 20 2E 42 59 54 45 20 27 53 41 |',$D4. .BYTE 'SA| 00003640: 56 27 2C 24 43 35 0D 20 2E 42 59 54 45 20 24 30 |V',$C5. .BYTE $0| 00003650: 30 0D 3B 0D 3B 0D 43 41 44 52 20 2E 57 4F 52 44 |0.;.;.CADR .WORD| 00003660: 20 41 55 54 4F 2D 31 0D 20 2E 57 4F 52 44 20 42 | AUTO-1. .WORD B| 00003670: 52 45 41 4B 2D 31 0D 20 2E 57 4F 52 44 20 43 48 |REAK-1. .WORD CH| 00003680: 41 4E 47 45 2D 31 0D 20 2E 57 4F 52 44 20 44 45 |ANGE-1. .WORD DE| 00003690: 4C 45 54 45 2D 31 0D 20 2E 57 4F 52 44 20 46 49 |LETE-1. .WORD FI| 000036A0: 4E 44 2D 31 0D 20 2E 57 4F 52 44 20 47 45 54 2D |ND-1. .WORD GET-| 000036B0: 31 0D 20 2E 57 4F 52 44 20 4B 49 4C 4C 2D 31 0D |1. .WORD KILL-1.| 000036C0: 20 2E 57 4F 52 44 20 4C 4F 41 44 2D 31 0D 20 2E | .WORD LOAD-1. .| 000036D0: 57 4F 52 44 20 4E 55 4D 42 45 52 2D 31 0D 20 2E |WORD NUMBER-1. .| 000036E0: 57 4F 52 44 20 50 55 54 2D 31 0D 20 2E 57 4F 52 |WORD PUT-1. .WOR| 000036F0: 44 20 52 45 50 43 4D 44 2D 31 0D 20 2E 57 4F 52 |D REPCMD-1. .WOR| 00003700: 44 20 53 41 56 45 2D 31 0D 3B 0D 3B 0D 3B 0D 3B |D SAVE-1.;.;.;.;| 00003710: 0D 20 2E 45 4E 44 0D FF |. .END.. |
;++++++++++++++++++++++++++++++++++.;+.; + MINI-EDITOR.;+.;+ VERSION 6.8.3.;+.;+ 6/28/79.;+.;++++++++++++++++++++++++++++ ++++++.;.SAVCHR = $00 ;SAVE NEW CHAR FOR REPEAT.DELAY = $01 ;DELAY BEFORE REPEAT .REPDY = $02 ;DELAY BETWEEN REPEATS.COUN T = $05.LINNUM = $11.INDEX1 = $1F.INDEX2 = $21.TXTTAB = $28 ;BEGIN OF SOURCE.VAR TAB = $2A ;BYTE AFTER TRIP ZEROS.STREND = $2E.FRETOP = $30.MEMSIZ = $34 ;TOP OF MEMORY SPACE.OLDLIN = $38.INPPTR = $40.L STPNT = $46.LOWTR = $5C.FACHO = $5F ;FLO AT ACCUM.TXTPTR = $77.CINV = $90 ;INDIRE CT IRQ VECTOR.SATUS = $96 ;I/O STATUS.LS TX = $97 ;LAST KEY HIT.NDX = $9E ;NUMBER CHAR IN BUFFER.BLNCT = $A8 ;CTR BETWEEN CRSR BLINKS.WSW = $B3.T1 = $B4.T2 = $B5 .T3 = $B6.FNLEN = $D1.LA = $D2 ;LOGICAL ADR.SA = $D3 ;SECOND ADR.FA = $D4 ;FIRST ADR.TBUF = $D6 ;ACTIVE CASSETTE BUF PTR .FNADR = $DA.BUFOFS = $0200 ;BASIC INPUT BUFFER.CHRGET = $0070 ;GET CHAR ROUTINE .CHRGOT = $0076 ;GET LAST CHAR.CHRRTS = $0087.KEYD = $026F ;KEYBOARD INPUT BUF.B EGIN = $7000 ;BEGIN MINI-EDITOR HERE.WAR M = $C389 ;WARM START OF BASIC.INSERT = $C3B1 ;INSERT LINE INTO SOURCE.FINI = $C 439 ;FIXES LINKS BACK TO READY.FNDLIN = $C52C ;FINDS LINE IN SOURCE.SCRTCH = $C5 5D ;NEW ALL.LINGET = $C873 ;GETS ASCII N UM INTO LINNUM.CRDO = $C9E2 ;(CR) (LF).C HKCOM = $CDF8 ;CHECKS FOR A COMMA.SNERR = $CE03 ;SYNTAX ERROR.GETBYT = $D676 ;GE TS BYTE INTO X REG.GETNUM = $D6C6 ;GETS NUM INTO LINUM.FLOATC = $DB55 ;FLOAT 16B IT INT.LINPRT = $DCD9 ;PRT LINE #.FOUT = $DCE9 ;MAKE ASCII # IN $0101.IRQVEC = $ E62E ;KEYBOARD IRQ.PARS11 = $F447 ;PARSE LIKE LOAD/SAVE.CLSEI = $F62E ;CLOSE CHA NNEL.BSIV = $FC9B ;IRQ FIXER ROUTINE.OPE N = $F521 ;OPEN LOGICAL FILE.CLOSE = $F2 A9 ;CLOSE LOGICAL FILE.CHKIN = $FFC6 ;SE TUP FOR INPUT.CKOUT = $FFC9 ;SETUP FOR O UTPUT.CLRCH = $FFCC ;CLEARS ACTIVE CHANN EL.BASIN = $FFCF ;GETS A CHAR FROM FILE. BSOUT = $FFD2 ;SEND CHAR TO FILE.CLOAD = $FFD5 ;CASSETTE LOAD.CSAVE = $FFD8 ;CAS SETTE SAVE.STOP = $FFE1 ;TEST STOP KEY.G ETIN = $FFE4 ;GET ONE CHAR.CLALL = $FFE7 ;CLOSE ALL FILES.;+++++++++++++++++++++ +++++++++++++.;+.;+ MINI.;+.;+ VERSION 6 .2.;+.;+++++++++++++++++++++++++++++++++ +.;. *= BEGIN.;.; ENABLE WEDGE CODE.;.SE TW LDA #0 ;INSERT A JMP TO WEDGE. STA OL DLIN ;CLEAR AUTO MODE. STA OLDLIN+1. LDA #<BEGIN. STA MEMSIZ ;PROTECT MINI-EDITO R. LDA #>BEGIN. STA MEMSIZ+1. LDA #$4C ; INSERT A JMP TO WEDGE. .BYTE $2C ;SKIP 2 BYTES.;.; DISABLE WEDGE CODE.;.KILL LDA #$60 ;INSERT A RTS. STA CHRRTS. LDA #<W EDGE. STA CHRRTS+1. LDA #>WEDGE. STA CHR RTS+2. RTS.;.; SAVE ALL REGISTERS.;.SAVR EG STA WSW ;SAVE A. PHP. PLA. STA T1 ;SA VE STATUS. STX T2 ;SAVE X. STY T3 ;SAVE Y. RTS.;.; WEDGE CODE INTERCEPTS SCAN CH ARS.;.WEDGE JSR SAVREG ;SAVE ALL REGS. T SX ;SEE WHO CALLED CHRGET. LDA $0101,X ; WAS IT MAIN ?. CMP #$9B. BNE RESREG ;NO. LDA $0102,X ;MAYBE. CMP #$C3. BEQ WSTAR T ;YES - START WEDGE CODE.;.; RESTORE AL L REGISTERS.;.RESREG LDY T3 ;RESTORE Y. LDX T2 ;RESTORE X. LDA T1 ;RESTORE STATU S. PHA. LDA WSW. PLP. RTS.;.WSTART LDA T 1 ;GET STATUS REG. LSR A ;WAS IT A NUMBE R ?. BCC WNUMB ;YES.PARSE LDX #0 ;CHECK FOR MINI-EDITOR CMD. STX COUNT ;ZERO IND EX INTO CMD ADDRESS. DEX ;X=FF.PAR100 IN X. LDY TXTPTR ;START AT BEGIN.PAR200 LDA BUFOFS,Y. SEC ;DO CMP. SBC CLIST,X ;CHA R SAME. BEQ PAR300 ;YES. CMP #$80 ;SAME AND FOUND CMD ?. BEQ PAR400 ;YES. INC CO UNT ;NO - TRY NEXT.PAR250 INX ;SKIP REST OF CMD NAME. LDA CLIST-1,X ;END OF CMD NAME ?. BPL PAR250 ;NO. LDA CLIST,X ;END OF CMD NAME TABLE ?. BNE PAR200 ;NO - L OOK ON. BEQ RESREG ;YES - NOT MINI-EDITO R CMD.PAR300 INX ;MATCH TRY NEXT CHAR. I NY. BNE PAR200 ;BRANCH ALWAYS.PAR400 STY TXTPTR ;POINT TXTPTR AT LAST CHAR. LDA COUNT ;FOUND CMD JMP TO IT. ASL A ;ADRS ARE 2 BYTES. TAX. LDA CADR+1,X ;DO INDIR ECT JMP. PHA. LDA CADR,X. PHA. JSR RESRE G ;RESTORE ALL REGS. JMP CHRGET.;.; AUTO LINE #.;.; SYNTAX.; AUTO INC# - ENABLE AUTO.; AUTO - DISABLE AUTO.;.AUTO JSR LI NGET ;GET START #. LDA LINNUM ;SAVE IT. STA OLDLIN. LDA LINNUM+1. STA OLDLIN+1. RTS.;.; HANDLES A NEW LINE WITH NUMBER.; .WNUMB PLA ;REMOVE JUNK FROM STACK. PLA. JSR RESREG ;RESTORE REG. JSR LINGET ;GE T LINE # INTO LINNUM. BEQ WNB900 ;LINE # ONLY.WNB400 LDA OLDLIN ;IN AUTO MODE ?. ORA OLDLIN+1. BEQ WNB900 ;NO.WNB600 LDA LINNUM ;LINE # FOR NEXT LINE. CLC. ADC OLDLIN. STA FACHO+1. LDA LINNUM+1. ADC O LDLIN+1. STA FACHO. LDX #$90. SEC. JSR F LOATC ;FLOAT IT. JSR FOUT ;MAKE ASCII #. LDX #0 ;PUT ASCII # IN KEYB. LDA #$20 ; PUT 1 SPACE BEFORE #. STA KEYD,X. INX.WN B700 LDA $0100,X. BEQ WNB800 ;DONE. STA KEYD,X. INX. BNE WNB700 ;BRANCH ALWAYS.W NB800 LDA #$20 ;PUT IN EXTRA SPACE. STA KEYD,X. INX. STX NDX ;SET # CHAR IN BUF. WNB900 JSR COMPCT ;SQUISH IT. JMP INSERT ;GO INSERT IT.;.; RENUMBERS SOURCE FILE .;.; SYNTAX.; NUMBER START#,NEW#,INC#.;. NUMBER JSR LINGET ;GET START NUMBER. JSR FNDLIN ;FIND IT IN SOURCE. JSR CHKCOM ; CHECK FOR COMMA. JSR LINGET ;GET NEW STA RT NUMBER. LDA LINNUM ;SAVE IT. STA FNAD R. LDA LINNUM+1. STA FNADR+1. JSR CHKCOM ;COMMA ?. JSR LINGET ;GET INC.NUM100 JS R LOADTR ;GET HI LINK. BEQ NDONE ;EQUAL ZERO THEN DONE. JSR INCTR ;SKIP LINE# LO . CLC. LDA FNADR ;GET NEW NUMBER LO BYTE . JSR STORTR ;INSTALL IT. ADC LINNUM ;GE N NEW. STA FNADR. LDA FNADR+1 ;GET NEW N UMBER HI BYTE. JSR STORTR ;INSTALL IT. A DC LINNUM+1 ;GEN NEW. STA FNADR+1.NUM500 JSR LOADTR ;END OF LINE ?. BNE NUM500 ; NO. JSR INCTR ;YES - SKIP IT. BNE NUM100 ;BRANCH ALWAYS.NDONE JMP FINI ;FIX LINK S.;.; GET PURE ASCII SOURCE.;.GET JSR PA RSIT ;PARSE LIKE LOAD/SAVE. JSR CHKIN.GE T100 LDA #1 ;JUNK FOR LINKS. JSR STOR4 ; FAKE LINKS AND LINE#.GET500 JSR BASIN ;G ET A CHAR. CMP #$0D ;END OF A LINE ?. BE Q GET600 ;YES. JSR STORTR ;NO - SAVE IT. BNE GET500 ;BRANCH ALWAYS.GET600 LDA #0 ;NULL BASIC END OF LINE. JSR STORTR. LD A SATUS ;EOI - ALL DONE ?. BEQ GET100 ;N O. TYA. JSR STOR2 ;MAKE ZERO LINK. LDA L OWTR ;GEN NEW SOURCE END. STA VARTAB. LD A LOWTR+1. STA VARTAB+1. JSR CLOSE+3 ;CL OSE CHANNEL. JSR CRDO ;PRT (CR) (LF). JS R COPTAB ;RESET PTR TO BEGINNING. LDA #1 0 ;START LINE# 10 AND. STA FNADR ;NUMBER BY 10. STA LINNUM. TYA. STA FNADR+1. ST A LINNUM+1. BEQ NUM100 ;GO RENUMBER FILE .;.; OUTPUT PURE ASCII SOURCE.;.PUT JSR PARSIT ;PARSE LIKE LOAD/SAVE. JSR CKOUT. BNE PUT400 ;BRANCH ALWAYS.PUTCR LDA #$0 D ;SEND (CR) FOR END OF LINE. JSR BSOUT. JSR INCTR ;SKIP LO LINK.PUT400 JSR LOAD TR ;GET HI LINK - DONE ?. BEQ PUTDON ;YE S. JSR CMPNUM ;DONE LINE RANGE. BCC PUTD ON ;YES.PUT600 JSR LOADTR ;GET A CHAR. B EQ PUTCR ;END OF LINE. JSR BSOUT ;OUTPUT IT. CLV. BVC PUT600 ;BRANCH ALWAYS.PUTD ON JSR CLOSE+3 ;CLOSE CHANNEL. JMP FINI ;FIX LINK ANYWAY.;.; REPEAT ENABLE CMD.; .REPCMD SEI ;STOP IRQ. LDA #<REPEAT. STA CINV. LDA #>REPEAT. STA CINV+1. LDA #1 ;START DELAY LOW. STA REPDY. CLI. RTS.;. ; SQUISH LINE # AND ONE SPACE FOR NEW LI NE.;.COMPCT LDX #$FF. LDY #0.COM100 INX. LDA BUFOFS,X ;SKIP SPACES. CMP #$20. BE Q COM100. .BYTE $24 ;SKIP 1 BYTE.COM200 INX. LDA BUFOFS,X ;SKIP NUMBERS. CMP #$3 0 ;LESS THAN 0. BCC COM250 ;STOP SKIPING . CMP #$3A ;MORE THAN 9. BCC COM200 ;NO - A # SKIP IT.COM250 LDA BUFOFS,X ;SKIP ONE MORE SPACE. CMP #$20. BNE COM300. IN X.COM300 LDA BUFOFS,X ;COMPRESS BUFFER. BEQ COMEND ;END OF BUFFER. AND #$7F ;NO GRAPHICS FOR NOW. STA BUFOFS,Y. INX. INY . BNE COM300 ;BRANCH ALWAYS.COMEND STA B UFOFS,Y ;FIX FAKE LINK. INY. INY. STA BU FOFS,Y. INY. INY. INY. RTS.;.; REPEAT KE Y FUNCTION.; HOLD ANY KEY FOR 1/2 SEC, I T REPEATS.;.REPEAT LDA LSTX ;GET LAST KE Y. CMP SAVCHR ;SAME AS LAST TIME. BEQ RE P100 ;YES. STA SAVCHR ;NO - SAVE NEW CHA R. LDA #$10 ;SET DELAY CTR. STA DELAY.RP EXIT JMP IRQVEC.REP100 CMP #$FF ;IS THIS A NO KEY ?. BEQ RPEXIT ;YES. LDA DELAY ;DELAYED ENOUGH ?. BEQ REP200 ;YES. DEC DELAY ;NO - BUMP CTR. BNE RPEXIT.REP200 DEC REPDY ;TIME TO REPEAT. BNE RPEXIT ;N O. LDA #$04 ;YES - RESET CTR. STA REPDY. LDA #$00 ;TELL IRQ TO REPEAT. STA LSTX. LDA #$02 ;FIX THE BLINK ON CRSR. STA BL NCT. BNE RPEXIT ;BRANCH ALWAYS.;.; CASSE TTE CALLS DISABLE REPEAT.;.SAVE JSR FIXI RQ. JMP CSAVE.LOAD JSR FIXIRQ. JMP CLOAD .;.FIXIRQ LDX #12. JMP BSIV ;RESTORE OLD IRQ.;.;.; PARSE "STRING",FA#,SA#.;.PARS IT LDX #0 ;SET DEFAULTS. STX SATUS. STX FNLEN. LDX #8. STX LA. STX SA. JSR PARS1 1 ;FINISH IT. LDA FA ;GET DEVICE #. CMP #3 ;A CASSETTE. BCC PRS200 ;NO. JSR FIXI RQ ;DISABLE REPEATS.PRS200 JSR CHRGOT ;G ET LAST CHAR. BEQ PRS300 ;SKIP IF END. J SR CHKCOM ;CHECK FOR A COMMA.PRS300 JSR RANGE ;SET LINE # RANGE. JSR OPEN+3 ;OPE N THE FILE. LDX LA. RTS.;.; STORE A AT L OWTR.;.STOR4 JSR STOR2 ;STORE 4 TIMES.ST OR2 JSR STORTR ;STORE 2 TIMES.STORTR LDY #0. STA (LOWTR),Y.;.; INC LOWTR.;.INCTR INC LOWTR. BNE INC200. INC LOWTR+1.INC2 00 RTS.;.; LOAD A FROM LOWTR.;.LOAD2 JSR LOADTR ;LOAD TWICE.LOADTR JSR INCTR ;IN C FIRST.LOD100 LDY #0. LDA (LOWTR),Y. RT S.;.; COPY TXTTAB INTO INDEX1.;.COPTAB L DA TXTTAB. STA LOWTR. LDA TXTTAB+1. STA LOWTR+1. RTS.;.; DELETE A RANGE OF SOURC E.;.; SYNTAX.; DELETE FROM#,TO#.;.DELETE JSR RANGE ;GET LINE # RANGE. LDA LOWTR ;SAVE IT. LDX LOWTR+1. STA INDEX2. STX I NDEX2+1. JSR FNDLIN ;FIND IT. BCC DEL300 ;SKIP IF NOT FOUND. LDY #1. LDA (LOWTR) ,Y ;AT END OF SOURCE ?. BEQ DEL300 ;YES. TAX. DEY. LDA (LOWTR),Y. STA LOWTR ;INC LUDE TO LINE #. STX LOWTR+1.DEL300 LDA I NDEX2 ;CHECK FROM<TO#. SEC. SBC LOWTR ;G EN NEG DELTA. TAX. LDA INDEX2+1. SBC LOW TR+1. TAY. BCS NOTDEL ;NO GOOD. TXA. CLC . ADC VARTAB ;GEN NEW END OF SOURCE. STA VARTAB. TYA. ADC VARTAB+1. STA VARTAB+1 . LDY #0.DEL500 LDA (LOWTR),Y ;MOVE SOUR CE DOWN. STA (INDEX2),Y. INY. BNE DEL500 . INC LOWTR+1. INC INDEX2+1. LDA VARTAB+ 1 ;DONE ONE EXTRA PAGE. CMP INDEX2+1. BC S DEL500 ;NO.NOTDEL JMP FINI.;.;.;.;++++ ++++++++++++++++++++++++++++.;+.;+ FIND 3.8.;+.;++++++++++++++++++++++++++++++++ .;.; CHANGE AND FIND CMDS.;.CHANGE STA C OUNT ;SAVE DELIMITER. LDX #0. STX FRETOP ;ZERO 2ND STRING PTR. JSR GETSTR ;READ OLD STRING. LDX #2. STX LSTPNT ;SET CHAN GE FLAG. BNE FND050 ;BRANCH ALWAYS.FIND STA COUNT ;SAVE DELIMITER. LDX #0 ;FLAG FOR FIND. STX LSTPNT.FND050 JSR GETSTR ; INPUT SEARCH STRING. JSR CHRGET ;MORE ST UFF (RANGE). BEQ FND100 ;NO. JSR CHKCOM ;PROPER DELIMITER.FND100 JSR RANGE ;GET RANGE SET PTRS. JSR CRDO ;PRT (CR) (LF). BNE FND200 ;BRANCH ALWAYS.FND150 INY. T YA. CLC. ADC LOWTR ;CALC PTR TO NEXT LIN E. STA LOWTR. BCC FND200. INC LOWTR+1.FN D200 JSR LOADTR ;END OF SOURCE. BEQ FDON E ;YES - DONE. JSR CMPNUM ;CHECK LINE RA NGE. BCS FND400 ;NOT DONE.FDONE JMP FINI ;FIX LINKS.FND400 LDX STREND ;START OF COMPAIR STRING. LDA STREND+1 ;SET CMP CT R. STA WSW.FND500 INY. LDA (LOWTR),Y ;EN D OF LINE ?. BEQ FND150 ;YES - START NEW LINE. CMP BUFOFS,X ;MATCH ?. BNE FND400 ;NO. INX. DEC WSW ;MATCHED ALL ?. BNE F ND500 ;NO. STY COUNT ;YES - SAVE LAST Y. STY T2. LDA LSTPNT ;A CHANGE ?. BEQ PRT IT ;NO - PRINTIT.CHGIT JSR SETPTR ;SET B OTH INDEXS. LDA FRETOP+1 ;CALC DIFF OF S TRINGS. SEC. SBC STREND+1. STA T1. BEQ M OVNOT ;STRINGS EGUAL NO MOVE.TESTLN INY. TDONE BEQ FDONE ;256 WRAP - GET OUT. LDA (LOWTR),Y ;END OF LINE. BNE TESTLN ;NO. CLC. TYA. ADC T1. CMP #2 ;LINE TOO SHOR T TO CHANGE ?. BCC PRTIT ;YES - JUST PRT . CMP #$4B ;LINE TOO LONG ?. BCS PRTIT ; YES. LDA T1 ;SET PLUS/MINUS. BPL CHG100 ;NO BORROW. DEC WSW ;HI BYTE NEG.CHG100 CLC. ADC COUNT ;CALC MOVE TO PTR. STA T2 . BCS DWNDWN ;A MOVE DOWN.UPUP JSR MOVEU P ;MOVE UP. BEQ MOVNOT ;BRANCH ALWAYS.DW NDWN JSR MOVDWN.MOVNOT LDA T2 ;CALC BEGI N OLD STR. SEC. SBC FRETOP+1. TAY. INY. LDA FRETOP+1. BEQ MNT200 ;NEW STRING EMP TY,SKIP. STA T3 ;NEW STR CTR. LDX FRETOP ;INDEX TO NEW STRING.MNT100 LDA BUFOFS, X ;GET NEW STR. STA (LOWTR),Y. INX. INY. DEC T3 ;DONE. BNE MNT100.MNT200 CLC. LD A VARTAB ;CALC NEW END OF MEMORY. ADC T1 . STA VARTAB. LDA VARTAB+1. ADC WSW. STA VARTAB+1.PRTIT LDX INPPTR ;GET LINE # L O. LDA INPPTR+1 ;GET LINE # HI. JSR LINP RT ;PRT LINE #. LDY #0. LDA #$20 ;PRT SP ACE.PRT200 JSR BSOUT. INY. BNE PRT250 ;L INE LONGER 256 STOP. JMP FINI.PRT250 LDA (LOWTR),Y ;DONE. BNE PRT200. JSR CRDO ; (CR) (LF). JSR GETIN ;STOP HERE. BEQ PRT 500 ;NO.PRT300 CMP #$03 ;STOP KEY ?. BEQ TDONE ;YES.PRT400 JSR GETIN ;GO ON ?. B EQ PRT400 ;NO - WAIT.PRT500 LDY T2 ;CONT INUE ON. JMP FND400.;.;.; GET STRINGS FO R FIND AND CHANGE.;.GETSTR LDY TXTPTR ;S TART OF FIRST STRING. INY. STY STREND,X ;SET BEGIN OF STRING PTR. LDA #0. STA ST REND+1,X ;ZERO LENGTH.GTS200 LDA BUFOFS, Y ;END. BEQ RNGERR ;YES - GET OUT. CMP C OUNT ;NO - DELIMITER ?. BEQ GTS500 ;YES. INC STREND+1,X ;INC STRING LENGTH. INY. BNE GTS200.GTS500 STY TXTPTR ;FIX TEXT PTR. RTS.;.; BREAK TO MONITOR.;.BREAK PL A. PLA. BRK. JMP WARM ;GO WARM START BAS IC.;.; INPUT RANGE PARMS.;.; 100-200.; 1 00-.; -200.; 100.;.RANGE BCC RNG100 ;FRO M CHRGOT A # ?. BEQ RNG100 ;A TERIMATOR. CMP #'- ;A DASH. BEQ RNG100.RNGERR JMP SNERR ;SYNTAX ERROR.RNG100 JSR LINGET ;G ET #. JSR FNDLIN ;FIND OR SET PTRS. JSR CHRGOT ;GET LAST CHAR. BEQ RNG200 ;SKIP DONE. CMP #'- ;A DASH. BNE RNGERR ;SYNTA X ERROR. JSR CHRGET ;YES - SKIP DASH. JS R LINGET ;GET TO #. BNE RNGERR ;NOT A NU MBER ERR.RNG200 LDA LINNUM. ORA LINNUM ; A TO # ?. BNE RNGRTS ;YES. LDA #$FF ;NO - MAKE MAX. STA LINNUM. STA LINNUM+1.RNG RTS RTS.;.; COMPAIRS (LOWTR),Y WITH LINN UM.;.; C=1 LINNUM=>(LOWTR),Y.; C=0 LINNU M< (LOWTR),Y.;.CMPNUM JSR LOADTR ;GET # LO. STA INPPTR ;SAVE TO PRT LATER. JSR L OADTR. STA INPPTR+1. SEC. LDA LINNUM. SB C INPPTR. LDA LINNUM+1. SBC INPPTR+1. RT S.;.; SETS INDEX1 AND INDEX2.;.; INDEX1 = LOWTR.; INDEX2 = VARTAB.;.SETPTR LDA L OWTR. STA INDEX1. LDA LOWTR+1. STA INDEX 1+1. LDA VARTAB. STA INDEX2. LDA VARTAB+ 1. STA INDEX2+1. RTS.;.; COMPAIRS INDEX1 AND INDEX2.;.CMPIND LDA INDEX1. CMP IND EX2. BNE CMPRTS. LDA INDEX1+1. CMP INDEX 2+1.CMPRTS RTS.;.; MOVES MEMORY DOWN.;.M OVDWN LDY COUNT. INY. LDA (INDEX1),Y. LD Y T2. INY. STA (INDEX1),Y. JSR CMPIND ;D ONE ?. BNE MDN100 ;NO. RTS.MDN100 INC IN DEX1. BNE MOVDWN. INC INDEX1+1. BNE MOVD WN.;.; MOVE MEMORY UP.;.MOVEUP LDY COUNT . LDA (INDEX2),Y. LDY T2. STA (INDEX2),Y . JSR CMPIND ;DONE ?. BNE MUP100 ;NO. RT S.MUP100 LDA INDEX2 ;ZERO ?. BNE MUP200 ;NO - NO BORROW. DEC INDEX2+1.MUP200 DEC INDEX2. JMP MOVEUP.;.; COMMAND LIST.;.C LIST .BYTE 'AUT',$CF. .BYTE 'BREA',$CB. .BYTE 'CHANG',$C5. .BYTE 'DELET',$C5. .B YTE 'FIN',$C4. .BYTE 'GE',$D4. .BYTE 'KI L',$CC. .BYTE 'LOA',$C4. .BYTE 'NUMBE',$ D2. .BYTE 'PU',$D4. .BYTE 'REPEA',$D4. . BYTE 'SAV',$C5. .BYTE $00.;.;.CADR .WORD AUTO-1. .WORD BREAK-1. .WORD CHANGE-1. .WORD DELETE-1. .WORD FIND-1. .WORD GET- 1. .WORD KILL-1. .WORD LOAD-1. .WORD NUM BER-1. .WORD PUT-1. .WORD REPCMD-1. .WOR D SAVE-1.;.;.;.;. .END..
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL