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

ARRAY

FILE INFORMATION

FILENAME(S): ARRAY

FILE TYPE(S): PRG

FILE SIZE: 4.4K

FIRST SEEN: 2025-11-30 16:59:36

APPEARS ON: 1 disk(s)

FILE HASH

87a937fbb8f86faa005b73026d39f90213269dd0d29444a38a655d3476cf1690

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
LADS64 ARRAY PRG High Voltage Complete C64 Collection 12 8 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 01 04 3F 04 0A 00 3B 20  22 41 52 52 41 59 22 20  |..?...; "ARRAY" |
00000010: 4C 4F 4F 4B 53 20 54 48  52 4F 55 47 48 20 4C 41  |LOOKS THROUGH LA|
00000020: 42 45 4C 20 54 41 42 4C  45 20 AF 20 50 55 54 53  |BEL TABLE . PUTS|
00000030: 20 C5 55 45 20 49 4E 20  52 45 53 55 4C 54 2E 00  | .UE IN RESULT..|
00000040: 65 04 14 00 3B 20 20 28  55 53 45 44 20 49 4E 20  |e...;  (USED IN |
00000050: 42 4F 54 48 20 50 41 53  53 20 31 20 AF 20 50 41  |BOTH PASS 1 . PA|
00000060: 53 53 20 32 29 00 AD 04  1E 00 41 52 52 41 59 20  |SS 2).....ARRAY |
00000070: 4C 44 41 20 41 52 52 41  59 A4 50 3B 50 55 54 20  |LDA ARRAY.P;PUT |
00000080: A4 50 AB 4F 46 AB 41 52  52 41 59 20 C5 55 45 20  |.P.OF.ARRAY .UE |
00000090: B5 4F 20 54 48 45 20 44  59 4E 41 4D 49 43 20 50  |.O THE DYNAMIC P|
000000A0: 4F B5 45 52 20 28 50 41  52 52 41 59 29 00 F5 04  |O.ER (PARRAY)...|
000000B0: 28 00 53 54 41 20 50 41  52 52 41 59 3B 20 49 4E  |(.STA PARRAY; IN|
000000C0: 20 4F 54 48 45 52 20 57  B0 44 53 2C 20 4D 41 4B  | OTHER W.DS, MAK|
000000D0: 45 20 50 41 52 52 41 59  20 50 4F B5 20 A4 20 54  |E PARRAY PO. . T|
000000E0: 48 45 20 48 49 47 48 45  53 54 20 57 B0 44 20 49  |HE HIGHEST W.D I|
000000F0: 4E 20 54 48 45 00 14 05  32 00 4C 44 41 20 41 52  |N THE...2.LDA AR|
00000100: 52 41 59 A4 50 AA 31 3B  20 4C 41 42 45 4C 20 41  |RAY.P.1; LABEL A|
00000110: 52 52 41 59 00 25 05 3C  00 53 54 41 20 50 41 52  |RRAY.%.<.STA PAR|
00000120: 52 41 59 AA 31 00 34 05  46 00 4A 53 52 20 44 45  |RAY.1.4.F.JSR DE|
00000130: 43 50 41 52 00 65 05 50  00 4C 44 41 20 23 24 46  |CPAR.e.P.LDA #$F|
00000140: 46 3B 20 53 45 54 20 55  50 20 81 20 42 4D 49 20  |F; SET UP . BMI |
00000150: 54 45 53 54 20 8B 20 4E  4F 20 4D 41 54 43 48 20  |TEST . NO MATCH |
00000160: 46 4F 55 4E 44 00 77 05  5A 00 53 54 41 20 46 4F  |FOUND.w.Z.STA FO|
00000170: 55 4E 44 46 4C 41 47 00  A3 05 64 00 53 54 41 52  |UNDFLAG...d.STAR|
00000180: 54 4C 4B 20 53 45 43 3B  20 53 54 41 52 54 20 4C  |TLK SEC; START L|
00000190: 4F 4F 4B 49 4E 47 20 81  20 4C 41 42 45 4C 20 4E  |OOKING . LABEL N|
000001A0: 41 4D 45 00 E0 05 6E 00  4C 44 41 20 4D 45 4D A4  |AME...n.LDA MEM.|
000001B0: 50 3B 20 43 48 45 43 4B  20 A4 20 53 45 45 20 8B  |P; CHECK . SEE .|
000001C0: 20 57 45 27 52 45 20 41  54 20 54 48 45 20 42 4F  | WE'RE AT THE BO|
000001D0: 54 A4 4D 20 4F 46 20 54  48 45 20 41 52 52 41 59  |T.M OF THE ARRAY|
000001E0: 00 EF 05 78 00 53 42 43  20 50 41 52 52 41 59 00  |...x.SBC PARRAY.|
000001F0: FF 05 82 00 4C 44 41 20  4D 45 4D A4 50 AA 31 00  |....LDA MEM.P.1.|
00000200: 10 06 8C 00 53 42 43 20  50 41 52 52 41 59 AA 31  |....SBC PARRAY.1|
00000210: 00 52 06 96 00 42 43 53  20 41 44 91 45 3B 20 8B  |.R...BCS AD.E; .|
00000220: 20 53 4F 2C 20 43 48 45  43 4B 20 8B 20 57 45 20  | SO, CHECK . WE |
00000230: 46 4F 55 4E 44 20 54 48  45 20 4C 41 42 45 4C 20  |FOUND THE LABEL |
00000240: 28 B0 20 46 4F 55 4E 44  20 49 54 20 54 57 49 43  |(. FOUND IT TWIC|
00000250: 45 29 00 81 06 A0 00 4C  44 58 20 23 30 3B 20 53  |E).....LDX #0; S|
00000260: 45 54 20 4C 41 42 45 4C  20 4E 41 4D 45 20 53 49  |ET LABEL NAME SI|
00000270: 5A 45 20 43 4F 55 4E 54  45 52 20 A4 20 5A 45 52  |ZE COUNTER . ZER|
00000280: 4F 00 C2 06 AA 00 53 45  43 3B 20 CB 20 44 4F 57  |O.....SEC; . DOW|
00000290: 4E 20 32 20 42 59 54 45  53 20 49 4E 20 4D 45 4D  |N 2 BYTES IN MEM|
000002A0: B0 59 20 28 50 41 53 54  20 54 48 45 20 B5 45 47  |.Y (PAST THE .EG|
000002B0: 45 52 20 C5 55 45 20 4F  46 20 41 20 4C 41 42 45  |ER .UE OF A LABE|
000002C0: 4C 29 00 D1 06 B4 00 4C  44 41 20 50 41 52 52 41  |L).....LDA PARRA|
000002D0: 59 00 DC 06 BE 00 53 42  43 20 23 32 00 EB 06 C8  |Y.....SBC #2....|
000002E0: 00 53 54 41 20 50 41 52  52 41 59 00 FC 06 D2 00  |.STA PARRAY.....|
000002F0: 4C 44 41 20 50 41 52 52  41 59 AA 31 00 07 07 DC  |LDA PARRAY.1....|
00000300: 00 53 42 43 20 23 30 00  18 07 E6 00 53 54 41 20  |.SBC #0.....STA |
00000310: 50 41 52 52 41 59 AA 31  00 23 07 F0 00 4C 44 59  |PARRAY.1.#...LDY|
00000320: 20 23 30 00 43 07 FA 00  3B AB AB AB AB AB AB AB  | #0.C...;.......|
00000330: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
00000340: AB AB AB 00 87 07 04 01  4C 50 41 52 20 4C 44 41  |........LPAR LDA|
00000350: 20 28 50 41 52 52 41 59  29 2C 59 3B 20 4C 4F 4F  | (PARRAY),Y; LOO|
00000360: 4B 20 81 20 41 20 37 54  48 20 42 49 54 20 53 45  |K . A 7TH BIT SE|
00000370: 54 20 28 53 54 41 52 54  20 4F 46 20 4C 41 42 45  |T (START OF LABE|
00000380: 4C 20 4E 41 4D 45 29 00  BF 07 0E 01 42 4D 49 20  |L NAME).....BMI |
00000390: 46 4F 55 4E 44 91 45 3B  20 8B 20 59 45 53 2C 20  |FOUND.E; . YES, |
000003A0: 57 45 27 56 45 20 CB 54  20 A4 20 54 48 45 20 53  |WE'VE .T . THE S|
000003B0: 54 41 52 54 20 4F 46 20  41 20 4E 41 4D 45 2E 00  |TART OF A NAME..|
000003C0: F0 07 18 01 4C 44 41 20  50 41 52 52 41 59 3B 20  |....LDA PARRAY; |
000003D0: 4F 54 48 45 52 57 49 53  45 20 CB 20 44 4F 57 4E  |OTHERWISE . DOWN|
000003E0: 20 31 20 42 59 54 45 20  49 4E 20 41 52 52 41 59  | 1 BYTE IN ARRAY|
000003F0: 00 FE 07 22 01 42 4E 45  20 4D 44 45 43 58 00 0F  |...".BNE MDECX..|
00000400: 08 2C 01 44 45 43 20 50  41 52 52 41 59 AA 31 00  |.,.DEC PARRAY.1.|
00000410: 24 08 36 01 4D 44 45 43  58 20 44 45 43 20 50 41  |$.6.MDECX DEC PA|
00000420: 52 52 41 59 00 4E 08 40  01 49 4E 58 3B 20 49 4E  |RRAY.N.@.INX; IN|
00000430: 43 52 45 41 53 45 20 4C  41 42 45 4C 20 4E 41 4D  |CREASE LABEL NAM|
00000440: 45 20 53 49 5A 45 20 43  4F 55 4E 54 45 52 00 5B  |E SIZE COUNTER.[|
00000450: 08 4A 01 4A 4D 50 20 4C  50 41 52 00 78 08 54 01  |.J.JMP LPAR.x.T.|
00000460: 3B AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |;...............|
00000470: AB AB AB AB AB AB AB AB  00 B8 08 5E 01 46 4F 55  |...........^.FOU|
00000480: 4E 44 91 45 20 4C 44 41  20 50 41 52 52 41 59 3B  |ND.E LDA PARRAY;|
00000490: 20 57 45 27 56 45 20 4C  4F 43 41 54 45 44 20 41  | WE'VE LOCATED A|
000004A0: 20 4C 41 42 45 4C 20 4E  41 4D 45 20 49 4E 20 54  | LABEL NAME IN T|
000004B0: 48 45 20 41 52 52 41 59  00 E2 08 68 01 53 54 41  |HE ARRAY...h.STA|
000004C0: 20 50 54 3B 20 8F 45 4D  42 45 52 20 49 54 27 53  | PT; .EMBER IT'S|
000004D0: 20 53 54 41 52 54 49 4E  47 20 4C 4F 43 41 54 49  | STARTING LOCATI|
000004E0: 4F 4E 00 F3 08 72 01 4C  44 41 20 50 41 52 52 41  |ON...r.LDA PARRA|
000004F0: 59 AA 31 00 00 09 7C 01  53 54 41 20 50 54 AA 31  |Y.1...|.STA PT.1|
00000500: 00 13 09 86 01 4C 44 41  20 28 50 41 52 52 41 59  |.....LDA (PARRAY|
00000510: 29 2C 59 00 57 09 90 01  43 4D 50 20 57 B0 4B 3B  |),Y.W...CMP W.K;|
00000520: 20 43 4F 4D 50 41 52 45  20 54 48 45 20 31 53 54  | COMPARE THE 1ST|
00000530: 20 88 54 45 52 20 57 49  54 48 20 54 48 45 20 31  | .TER WITH THE 1|
00000540: 53 54 20 88 54 45 52 20  4F 46 20 54 48 45 20 54  |ST .TER OF THE T|
00000550: 41 52 A1 20 57 B0 44 00  92 09 9A 01 42 45 51 20  |AR. W.D.....BEQ |
00000560: 4C 4B 4D B0 45 3B 20 4C  4F 4F 4B 20 4D B0 45 20  |LKM.E; LOOK M.E |
00000570: A0 4C 59 20 41 54 20 54  48 45 20 57 B0 44 2C 20  |.LY AT THE W.D, |
00000580: 8B 20 31 53 54 20 88 54  45 52 20 4D 41 54 43 48  |. 1ST .TER MATCH|
00000590: 45 44 00 D9 09 A4 01 4A  4D 50 20 53 54 41 52 A4  |ED.....JMP STAR.|
000005A0: 56 45 52 3B 20 8B 20 49  54 20 44 49 44 4E 27 54  |VER; . IT DIDN'T|
000005B0: 20 4D 41 54 43 48 2C 20  CB 20 44 4F 57 4E 20 49  | MATCH, . DOWN I|
000005C0: 4E 20 54 48 45 20 54 41  42 4C 45 20 26 20 46 49  |N THE TABLE & FI|
000005D0: 4E 44 20 82 20 57 B0 44  2E 00 FA 09 AE 01 3B AB  |ND . W.D......;.|
000005E0: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
000005F0: AB AB AB AB AB AB AB AB  AB AB 00 21 0A B8 01 4C  |...........!...L|
00000600: 4B 4D B0 45 20 49 4E 58  3B 20 52 41 49 53 45 20  |KM.E INX; RAISE |
00000610: C3 47 54 48 20 43 4F 55  4E 54 45 52 20 42 59 20  |.GTH COUNTER BY |
00000620: 31 00 3A 0A C2 01 53 54  58 20 57 B0 4B AA 31 3B  |1.:...STX W.K.1;|
00000630: 20 8F 45 4D 42 45 52 20  49 54 00 45 0A CC 01 4C  | .EMBER IT.E...L|
00000640: 44 58 20 23 31 00 8B 0A  D6 01 4C 44 41 20 42 55  |DX #1.....LDA BU|
00000650: 46 4C 41 47 3B 54 48 49  53 20 4D 45 41 4E 53 20  |FLAG;THIS MEANS |
00000660: 54 48 41 54 20 23 20 B0  20 28 20 43 4F 4D 45 20  |THAT # . ( COME |
00000670: 42 45 81 45 20 54 48 45  20 4E 41 4D 45 20 49 4E  |BE.E THE NAME IN|
00000680: 20 54 48 45 20 42 55 46  46 45 52 00 D1 0A E0 01  | THE BUFFER.....|
00000690: 42 45 51 20 4C 4B 4D 31  3B 20 8B 20 54 48 45 59  |BEQ LKM1; . THEY|
000006A0: 20 44 91 27 54 20 57 45  20 44 91 27 54 20 4E 45  | D.'T WE D.'T NE|
000006B0: 45 44 20 A4 20 52 41 49  53 45 20 59 20 49 4E 20  |ED . RAISE Y IN |
000006C0: B0 44 45 52 20 A4 20 49  47 4E B0 45 20 54 48 45  |.DER . IGN.E THE|
000006D0: 4D 00 D9 0A EA 01 49 4E  59 00 10 0B F4 01 4A 53  |M.....INY.....JS|
000006E0: 52 20 44 45 43 50 41 52  3B 20 4C 4F 57 45 52 20  |R DECPAR; LOWER |
000006F0: 54 48 45 20 49 4E 44 45  58 20 A4 20 43 4F 4D 50  |THE INDEX . COMP|
00000700: 45 4E 53 41 54 45 20 81  20 54 48 45 20 49 4E 59  |ENSATE . THE INY|
00000710: 00 16 0B FE 01 3B 00 23  0B 08 02 4C 4B 4D 31 20  |.....;.#...LKM1 |
00000720: 49 4E 59 00 4D 0B 12 02  4C 44 41 20 42 55 46 46  |INY.M...LDA BUFF|
00000730: 45 52 2C 59 3B 20 43 48  45 43 4B 20 42 55 46 46  |ER,Y; CHECK BUFF|
00000740: 45 52 AB 48 45 4C 44 20  4C 41 42 45 4C 00 95 0B  |ER.HELD LABEL...|
00000750: 1C 02 42 45 51 20 46 4F  55 4E 44 49 54 3B 20 8B  |..BEQ FOUNDIT; .|
00000760: 20 57 45 27 52 45 20 41  54 20 54 48 45 20 80 20  | WE'RE AT THE . |
00000770: 4F 46 20 54 48 45 20 57  B0 44 20 28 30 29 2C 20  |OF THE W.D (0), |
00000780: A7 20 57 45 27 56 45 20  46 4F 55 4E 44 20 41 20  |. WE'VE FOUND A |
00000790: 4D 41 54 43 48 00 DE 0B  26 02 43 4D 50 20 23 34  |MATCH...&.CMP #4|
000007A0: 38 3B 20 B0 20 54 48 45  52 45 27 53 20 41 20 4D  |8; . THERE'S A M|
000007B0: 41 54 43 48 20 8B 20 49  54 27 53 20 41 20 43 48  |ATCH . IT'S A CH|
000007C0: 41 52 41 43 54 45 52 20  4C 4F 57 45 52 20 54 48  |ARACTER LOWER TH|
000007D0: 41 4E 20 C6 49 49 20 30  20 28 2C B0 AA 29 00 EE  |AN .II 0 (,..)..|
000007E0: 0B 30 02 42 43 43 20 46  4F 55 4E 44 49 54 00 1B  |.0.BCC FOUNDIT..|
000007F0: 0C 3A 02 3B 20 A8 20 59  45 54 20 54 48 45 20 80  |.:.; . YET THE .|
00000800: 20 4F 46 20 54 48 45 20  22 42 55 46 46 45 52 22  | OF THE "BUFFER"|
00000810: 20 48 45 4C 44 20 4C 41  42 45 4C 00 23 0C 44 02  | HELD LABEL.#.D.|
00000820: 49 4E 58 00 63 0C 4E 02  43 4D 50 20 28 50 41 52  |INX.c.N.CMP (PAR|
00000830: 52 41 59 29 2C 59 3B 20  8B 20 41 52 52 41 59 20  |RAY),Y; . ARRAY |
00000840: 57 B0 44 20 53 54 49 4C  4C 20 41 47 52 45 45 53  |W.D STILL AGREES|
00000850: 20 57 49 54 48 20 42 55  46 46 45 52 20 57 B0 44  | WITH BUFFER W.D|
00000860: 2C 20 A7 00 8D 0C 58 02  42 45 51 20 4C 4B 4D 31  |, ....X.BEQ LKM1|
00000870: 3B 20 9A 49 4E 55 45 20  4C 4F 4F 4B 49 4E 47 20  |; .INUE LOOKING |
00000880: 41 54 20 54 48 45 53 45  20 57 B0 44 53 00 D5 0C  |AT THESE W.DS...|
00000890: 62 02 3B AB AB AB AB AB  AB AB AB AB AB AB AB AB  |b.;.............|
000008A0: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB 20 20  |..............  |
000008B0: 4E 4F 20 4D 41 54 43 48  2C 20 53 4F 20 4C 4F 4F  |NO MATCH, SO LOO|
000008C0: 4B 20 41 54 20 82 20 57  B0 44 20 44 4F 57 4E 20  |K AT . W.D DOWN |
000008D0: AB AB AB AB AB 00 12 0D  6C 02 53 54 41 52 A4 56  |........l.STAR.V|
000008E0: 45 52 20 4C 44 41 20 50  54 3B 20 50 55 54 20 50  |ER LDA PT; PUT P|
000008F0: 52 45 56 49 4F 55 53 20  57 B0 44 27 53 20 53 54  |REVIOUS W.D'S ST|
00000900: 41 52 54 20 41 44 44 52  2E 20 B5 4F 20 50 4F B5  |ART ADDR. .O PO.|
00000910: 45 52 00 21 0D 76 02 53  54 41 20 50 41 52 52 41  |ER.!.v.STA PARRA|
00000920: 59 00 2E 0D 80 02 4C 44  41 20 50 54 AA 31 00 3F  |Y.....LDA PT.1.?|
00000930: 0D 8A 02 53 54 41 20 50  41 52 52 41 59 AA 31 00  |...STA PARRAY.1.|
00000940: 88 0D 94 02 4A 53 52 20  44 45 43 50 41 52 3B 20  |....JSR DECPAR; |
00000950: 4C 4F 57 45 52 20 50 4F  B5 45 52 20 42 59 20 31  |LOWER PO.ER BY 1|
00000960: 20 28 53 54 41 52 54 4C  4B 20 57 49 4C 4C 20 4C  | (STARTLK WILL L|
00000970: 4F 57 45 52 20 49 54 20  41 4C 53 4F 2C 20 42 45  |OWER IT ALSO, BE|
00000980: 4C 4F 57 20 C5 55 45 29  00 B4 0D 9E 02 4A 4D 50  |LOW .UE).....JMP|
00000990: 20 53 54 41 52 54 4C 4B  3B 20 54 52 59 20 41 A8  | STARTLK; TRY A.|
000009A0: 48 45 52 20 57 B0 44 20  49 4E 20 54 48 45 20 41  |HER W.D IN THE A|
000009B0: 52 52 41 59 00 D1 0D A8  02 3B AB AB AB AB AB AB  |RRAY.....;......|
000009C0: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
000009D0: AB 00 E8 0D B2 02 41 44  91 45 20 4C 44 41 20 46  |......AD.E LDA F|
000009E0: 4F 55 4E 44 46 4C 41 47  00 0B 0E BC 02 42 4D 49  |OUNDFLAG.....BMI|
000009F0: 20 41 44 31 3B 20 44 49  44 4E 27 54 20 46 49 4E  | AD1; DIDN'T FIN|
00000A00: 44 20 54 48 45 20 4C 41  42 45 4C 00 2A 0E C6 02  |D THE LABEL.*...|
00000A10: 52 54 53 3B 20 41 4C 4C  20 49 53 20 57 45 4C 4C  |RTS; ALL IS WELL|
00000A20: 2E 20 20 8E 20 A4 20 45  C5 2E 00 3B 0E D0 02 41  |.  . . E...;...A|
00000A30: 44 31 20 4C 44 41 20 50  41 53 53 00 6D 0E DA 02  |D1 LDA PASS.m...|
00000A40: 42 4E 45 20 41 44 31 58  3B 20 32 4E 44 20 50 41  |BNE AD1X; 2ND PA|
00000A50: 53 53 AB AB 20 CB 20 41  48 45 41 44 20 AF 20 99  |SS.. . AHEAD . .|
00000A60: 20 45 52 52 B0 20 4D 45  53 53 41 47 45 00 B3 0E  | ERR. MESSAGE...|
00000A70: E4 02 42 45 51 20 41 44  91 45 31 3B 20 91 20 31  |..BEQ AD.E1; . 1|
00000A80: 53 54 20 50 41 53 53 2C  20 4D 49 47 48 54 20 A8  |ST PASS, MIGHT .|
00000A90: 20 59 45 54 20 42 45 20  96 49 4E 45 44 20 28 52  | YET BE .INED (R|
00000AA0: 41 49 53 45 20 49 4E 43  53 41 AD 32 53 20 B0 20  |AISE INCSA.2S . |
00000AB0: 33 53 29 00 FA 0E EE 02  41 44 31 58 20 4A 53 52  |3S).....AD1X JSR|
00000AC0: 20 45 52 52 49 4E 47 3B  20 4C 41 42 45 4C 20 A8  | ERRING; LABEL .|
00000AD0: 20 49 4E 20 54 41 42 4C  45 2E 20 20 28 54 52 45  | IN TABLE.  (TRE|
00000AE0: 41 54 20 49 54 20 41 53  20 41 20 32 AB 42 59 54  |AT IT AS A 2.BYT|
00000AF0: 45 20 41 44 44 52 45 53  53 29 00 0B 0F F8 02 4A  |E ADDRESS).....J|
00000B00: 53 52 20 50 52 4E 54 4C  49 4E 45 00 1D 0F 02 03  |SR PRNTLINE.....|
00000B10: 4A 53 52 20 50 52 4E 54  53 50 41 43 45 00 2D 0F  |JSR PRNTSPACE.-.|
00000B20: 0C 03 4C 44 41 20 23 B3  4E 4F 4C 41 42 00 3A 0F  |..LDA #.NOLAB.:.|
00000B30: 16 03 53 54 41 20 54 45  4D 50 00 4A 0F 20 03 4C  |..STA TEMP.J. .L|
00000B40: 44 41 20 23 B1 4E 4F 4C  41 42 00 59 0F 2A 03 53  |DA #.NOLAB.Y.*.S|
00000B50: 54 41 20 54 45 4D 50 AA  31 00 89 0F 34 03 4A 53  |TA TEMP.1...4.JS|
00000B60: 52 20 50 52 4E 54 4D 45  53 53 3B 20 52 49 4E 47  |R PRNTMESS; RING|
00000B70: 20 42 45 4C 4C 20 AF 20  99 20 A8 20 46 4F 55 4E  | BELL . . . FOUN|
00000B80: 44 20 4D 45 53 53 41 47  45 00 98 0F 3E 03 4A 53  |D MESSAGE...>.JS|
00000B90: 52 20 50 52 4E 54 43 52  00 A6 0F 48 03 41 44 91  |R PRNTCR...H.AD.|
00000BA0: 45 31 20 50 4C 41 00 AF  0F 52 03 50 4C 41 3B 00  |E1 PLA...R.PLA;.|
00000BB0: BA 0F 5C 03 4C 44 41 20  4F 50 00 C4 0F 66 03 AF  |..\.LDA OP...f..|
00000BC0: 20 23 33 31 00 D0 0F 70  03 43 4D 50 20 23 31 36  | #31...p.CMP #16|
00000BD0: 00 F7 0F 7A 03 42 45 51  20 41 44 4F 32 3B 20 43  |...z.BEQ ADO2; C|
00000BE0: 48 45 43 4B 20 8B 20 42  52 41 4E 43 48 20 49 4E  |HECK . BRANCH IN|
00000BF0: 53 54 52 55 43 54 2E 00  07 10 84 03 4C 44 41 20  |STRUCT......LDA |
00000C00: 42 59 54 46 4C 41 47 00  22 10 8E 03 42 4E 45 20  |BYTFLAG."...BNE |
00000C10: 41 44 4F 32 3B 20 B3 20  B0 20 B1 20 50 53 45 55  |ADO2; . . . PSEU|
00000C20: 44 4F 00 31 10 98 03 4A  4D 50 20 54 48 52 45 45  |DO.1...JMP THREE|
00000C30: 53 00 43 10 A2 03 41 44  4F 32 20 4A 4D 50 20 54  |S.C...ADO2 JMP T|
00000C40: 57 4F 53 00 49 10 AC 03  3B 00 86 10 B6 03 46 4F  |WOS.I...;.....FO|
00000C50: 55 4E 44 49 54 20 43 50  58 20 57 B0 4B AA 31 3B  |UNDIT CPX W.K.1;|
00000C60: 43 48 45 43 4B 20 4C 41  42 45 4C 20 C3 47 54 48  |CHECK LABEL .GTH|
00000C70: 20 41 47 41 49 4E 53 54  20 54 41 52 A1 20 57 B0  | AGAINST TAR. W.|
00000C80: 44 20 C3 47 54 48 00 CC  10 C0 03 42 45 51 20 46  |D .GTH.....BEQ F|
00000C90: 4F 55 4E 44 46 3B 20 54  48 45 59 20 4D 55 53 54  |OUNDF; THEY MUST|
00000CA0: 20 45 51 55 41 4C 20 A4  20 53 49 47 4E 8B 59 20  | EQUAL . SIGN.Y |
00000CB0: 41 20 4D 41 54 43 48 2E  20 28 99 AD 50 52 49 4E  |A MATCH. (..PRIN|
00000CC0: 20 57 4F 55 4C 44 20 46  41 49 4C 29 00 EB 10 CA  | WOULD FAIL)....|
00000CD0: 03 4A 4D 50 20 53 54 41  52 A4 56 45 52 3B 20 46  |.JMP STAR.VER; F|
00000CE0: 41 49 4C 45 44 20 4D 41  54 43 48 00 25 11 D4 03  |AILED MATCH.%...|
00000CF0: 46 4F 55 4E 44 46 20 49  4E 43 20 46 4F 55 4E 44  |FOUNDF INC FOUND|
00000D00: 46 4C 41 47 3B 20 52 41  49 53 45 20 46 4C 41 47  |FLAG; RAISE FLAG|
00000D10: 20 A4 20 5A 45 52 4F 20  28 46 49 52 53 54 20 4D  | . ZERO (FIRST M|
00000D20: 41 54 43 48 29 00 64 11  DE 03 42 45 51 20 46 4F  |ATCH).d...BEQ FO|
00000D30: 46 58 3B 20 8B 20 48 49  47 48 45 52 20 54 48 41  |FX; . HIGHER THA|
00000D40: 4E 20 30 2C 20 99 20 44  55 50 4C 49 43 41 54 49  |N 0, . DUPLICATI|
00000D50: 91 20 4C 41 42 45 4C 20  45 52 52 B0 20 4D 45 53  |. LABEL ERR. MES|
00000D60: 53 41 47 45 00 73 11 E8  03 4A 53 52 20 44 55 50  |SAGE.s...JSR DUP|
00000D70: 4C 41 42 00 86 11 F2 03  46 4F 46 58 20 4C 44 59  |LAB.....FOFX LDY|
00000D80: 20 57 B0 4B AA 31 00 A9  11 FC 03 4C 44 41 20 42  | W.K.1.....LDA B|
00000D90: 55 46 4C 41 47 3B 20 43  4F 4D 50 45 4E 53 41 54  |UFLAG; COMPENSAT|
00000DA0: 45 20 81 20 23 20 AF 20  28 00 B5 11 06 04 42 45  |E . # . (.....BE|
00000DB0: 51 20 46 4F 46 00 BD 11  10 04 49 4E 59 00 F5 11  |Q FOF.....INY...|
00000DC0: 1A 04 46 4F 46 20 4C 44  41 20 28 50 41 52 52 41  |..FOF LDA (PARRA|
00000DD0: 59 29 2C 59 3B 20 50 55  54 20 54 41 42 4C 45 20  |Y),Y; PUT TABLE |
00000DE0: 4C 41 42 45 4C 27 53 20  C5 55 45 20 49 4E 20 52  |LABEL'S .UE IN R|
00000DF0: 45 53 55 4C 54 00 04 12  24 04 53 54 41 20 52 45  |ESULT...$.STA RE|
00000E00: 53 55 4C 54 00 0C 12 2E  04 49 4E 59 00 1F 12 38  |SULT.....INY...8|
00000E10: 04 4C 44 41 20 28 50 41  52 52 41 59 29 2C 59 00  |.LDA (PARRAY),Y.|
00000E20: 30 12 42 04 53 54 41 20  52 45 53 55 4C 54 AA 31  |0.B.STA RESULT.1|
00000E30: 00 40 12 4C 04 4C 44 41  20 42 59 54 46 4C 41 47  |.@.L.LDA BYTFLAG|
00000E40: 00 63 12 56 04 42 45 51  20 43 4D 50 4D 4F 3B 20  |.c.V.BEQ CMPMO; |
00000E50: 49 53 20 49 54 20 B1 20  B0 20 B3 20 50 53 45 55  |IS IT . . . PSEU|
00000E60: 44 4F 99 00 6E 12 60 04  43 4D 50 20 23 32 00 7A  |DO..n.`.CMP #2.z|
00000E70: 12 6A 04 42 4E 45 20 41  52 80 00 A7 12 74 04 4C  |.j.BNE AR....t.L|
00000E80: 44 41 20 52 45 53 55 4C  54 AA 31 3B 20 53 A4 52  |DA RESULT.1; S.R|
00000E90: 45 20 48 49 47 48 20 42  59 54 45 20 B5 4F 20 4C  |E HIGH BYTE .O L|
00000EA0: 4F 57 20 42 59 54 45 00  B6 12 7E 04 53 54 41 20  |OW BYTE...~.STA |
00000EB0: 52 45 53 55 4C 54 00 E5  12 88 04 43 4D 50 4D 4F  |RESULT.....CMPMO|
00000EC0: 20 4C 44 41 20 50 4C 55  53 46 4C 41 47 3B 20 44  | LDA PLUSFLAG; D|
00000ED0: 4F 20 41 44 44 49 54 49  91 20 AA 20 50 53 45 55  |O ADDITI. . PSEU|
00000EE0: 44 4F 20 4F 50 00 F1 12  92 04 42 45 51 20 41 52  |DO OP.....BEQ AR|
00000EF0: 80 00 1D 13 9C 04 43 4C  43 3B 20 41 44 44 20 54  |......CLC; ADD T|
00000F00: 48 45 20 AA 20 4E 55 4D  42 45 52 20 22 41 44 44  |HE . NUMBER "ADD|
00000F10: 4E 55 4D 22 20 A4 20 52  45 53 55 4C 54 00 2C 13  |NUM" . RESULT.,.|
00000F20: A6 04 4C 44 41 20 41 44  44 4E 55 4D 00 3B 13 B0  |..LDA ADDNUM.;..|
00000F30: 04 41 44 43 20 52 45 53  55 4C 54 00 4A 13 BA 04  |.ADC RESULT.J...|
00000F40: 53 54 41 20 52 45 53 55  4C 54 00 5B 13 C4 04 4C  |STA RESULT.[...L|
00000F50: 44 41 20 41 44 44 4E 55  4D AA 31 00 6C 13 CE 04  |DA ADDNUM.1.l...|
00000F60: 41 44 43 20 52 45 53 55  4C 54 AA 31 00 7D 13 D8  |ADC RESULT.1.}..|
00000F70: 04 53 54 41 20 52 45 53  55 4C 54 AA 31 00 A8 13  |.STA RESULT.1...|
00000F80: E2 04 41 52 80 20 4C 44  41 20 50 41 53 53 3B 20  |..AR. LDA PASS; |
00000F90: 91 20 32 4E 44 20 50 41  53 53 2C 20 43 48 45 43  |. 2ND PASS, CHEC|
00000FA0: 4B 20 81 20 44 55 50 53  00 B6 13 EC 04 42 4E 45  |K . DUPS.....BNE|
00000FB0: 20 41 52 45 4E 58 00 CB  13 F6 04 52 54 53 3B 20  | ARENX.....RTS; |
00000FC0: CB 20 42 41 43 4B 20 A4  20 45 C5 00 0D 14 00 05  |. BACK . E......|
00000FD0: 41 52 45 4E 58 20 4A 4D  50 20 53 54 41 52 A4 56  |ARENX JMP STAR.V|
00000FE0: 45 52 3B 20 91 20 50 41  53 53 20 32 2C 20 4C 4F  |ER; . PASS 2, LO|
00000FF0: 4F 4B 20 81 20 44 55 50  53 20 28 53 4F 20 9A 49  |OK . DUPS (SO .I|
00001000: 4E 55 45 20 49 4E 20 41  52 52 41 59 29 00 30 14  |NUE IN ARRAY).0.|
00001010: 0A 05 3B AB AB AB AB AB  AB AB AB AB AB AB AB AB  |..;.............|
00001020: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
00001030: 00 5E 14 14 05 44 45 43  50 41 52 20 4C 44 41 20  |.^...DECPAR LDA |
00001040: 50 41 52 52 41 59 3B 20  4C 4F 57 45 52 20 41 52  |PARRAY; LOWER AR|
00001050: 52 41 59 20 50 4F B5 45  52 20 42 59 20 31 00 6B  |RAY PO.ER BY 1.k|
00001060: 14 1E 05 42 4E 45 20 4D  44 45 43 00 7C 14 28 05  |...BNE MDEC.|.(.|
00001070: 44 45 43 20 50 41 52 52  41 59 AA 31 00 90 14 32  |DEC PARRAY.1...2|
00001080: 05 4D 44 45 43 20 44 45  43 20 50 41 52 52 41 59  |.MDEC DEC PARRAY|
00001090: 00 98 14 3C 05 52 54 53  00 B0 14 46 05 3B 20 AB  |...<.RTS...F.; .|
000010A0: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
000010B0: 00 E7 14 50 05 44 55 50  4C 41 42 20 4A 53 52 20  |...P.DUPLAB JSR |
000010C0: 45 52 52 49 4E 47 3B 20  52 49 4E 47 20 42 45 4C  |ERRING; RING BEL|
000010D0: 4C 20 AF 20 99 20 44 55  50 20 4C 41 42 45 4C 20  |L . . DUP LABEL |
000010E0: 4D 45 53 53 41 47 45 00  F9 14 5A 05 4C 44 41 20  |MESSAGE...Z.LDA |
000010F0: 23 B3 4D 44 55 50 4C 41  42 00 06 15 64 05 53 54  |#.MDUPLAB...d.ST|
00001100: 41 20 54 45 4D 50 00 18  15 6E 05 4C 44 41 20 23  |A TEMP...n.LDA #|
00001110: B1 4D 44 55 50 4C 41 42  00 27 15 78 05 53 54 41  |.MDUPLAB.'.x.STA|
00001120: 20 54 45 4D 50 AA 31 00  38 15 82 05 4A 53 52 20  | TEMP.1.8...JSR |
00001130: 50 52 4E 54 4D 45 53 53  00 47 15 8C 05 4A 53 52  |PRNTMESS.G...JSR|
00001140: 20 50 52 4E 54 43 52 00  71 15 96 05 52 54 53 3B  | PRNTCR.q...RTS;|
00001150: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
00001160: AB AB AB AB AB AB AB AB  AB AB AB AB AB AB AB AB  |................|
00001170: AB 00 7E 15 A0 05 2E 46  49 4C 45 20 9F 31 00 00  |..~....FILE .1..|
00001180: 00                                                |.               |
..?...; "ARRAY" LOOKS THROUGH LABEL TABL
E . PUTS EUE IN RESULT..E...;  (USED IN 
BOTH PASS 1 . PASS 2).....ARRAY LDA ARRA
Y.P;PUT .P.OF.ARRAY EUE .O THE DYNAMIC P
O.ER (PARRAY)...(.STA PARRAY; IN OTHER W
.DS, MAKE PARRAY PO. . THE HIGHEST W.D I
N THE...2.LDA ARRAY.P.1; LABEL ARRAY.%.<
.STA PARRAY.1.4.F.JSR DECPAR.E.P.LDA #$F
F; SET UP . BMI TEST . NO MATCH FOUND.W.
Z.STA FOUNDFLAG...D.STARTLK SEC; START L
OOKING . LABEL NAME...N.LDA MEM.P; CHECK
 . SEE . WE'RE AT THE BOT.M OF THE ARRAY
...X.SBC PARRAY.....LDA MEM.P.1.....SBC 
PARRAY.1.R...BCS AD.E; . SO, CHECK . WE 
FOUND THE LABEL (. FOUND IT TWICE)... .L
DX #0; SET LABEL NAME SIZE COUNTER . ZER
O.B...SEC; K DOWN 2 BYTES IN MEM.Y (PAST
 THE .EGER EUE OF A LABEL).Q...LDA PARRA
Y.....SBC #2...H.STA PARRAY...R.LDA PARR
AY.1.....SBC #0.....STA PARRAY.1.#...LDY
 #0.C...;...............................
LPAR LDA (PARRAY),Y; LOOK . A 7TH BIT SE
T (START OF LABEL NAME).....BMI FOUND.E;
 . YES, WE'VE KT . THE START OF A NAME..
....LDA PARRAY; OTHERWISE K DOWN 1 BYTE 
IN ARRAY...".BNE MDECX...,.DEC PARRAY.1.
$.6.MDECX DEC PARRAY.N.@.INX; INCREASE L
ABEL NAME SIZE COUNTER.[.J.JMP LPAR.X.T.
;..........................^.FOUND.E LDA
 PARRAY; WE'VE LOCATED A LABEL NAME IN T
HE ARRAY...H.STA PT; .EMBER IT'S STARTIN
G LOCATION...R.LDA PARRAY.1...|.STA PT.1
.....LDA (PARRAY),Y.W...CMP W.K; COMPARE
 THE 1ST .TER WITH THE 1ST .TER OF THE T
AR. W.D.....BEQ LKM.E; LOOK M.E  LY AT T
HE W.D, . 1ST .TER MATCHED.Y...JMP STAR.
VER; . IT DIDN'T MATCH, K DOWN IN THE TA
BLE & FIND . W.D......;.................
...........!...LKM.E INX; RAISE CGTH COU
NTER BY 1.:.B.STX W.K.1; .EMBER IT.E.L.L
DX #1...V.LDA BUFLAG;THIS MEANS THAT # .
 ( COME BE.E THE NAME IN THE BUFFER.Q...
BEQ LKM1; . THEY D.'T WE D.'T NEED . RAI
SE Y IN .DER . IGN.E THEM.Y...INY.....JS
R DECPAR; LOWER THE INDEX . COMPENSATE .
 THE INY.....;.#...LKM1 INY.M...LDA BUFF
ER,Y; CHECK BUFFER.HELD LABEL.....BEQ FO
UNDIT; . WE'RE AT THE . OF THE W.D (0), 
. WE'VE FOUND A MATCH...&.CMP #48; . THE
RE'S A MATCH . IT'S A CHARACTER LOWER TH
AN FII 0 (,..)...0.BCC FOUNDIT...:.; . Y
ET THE . OF THE "BUFFER" HELD LABEL.#.D.
INX.C.N.CMP (PARRAY),Y; . ARRAY W.D STIL
L AGREES WITH BUFFER W.D, ....X.BEQ LKM1
; .INUE LOOKING AT THESE W.DS.U.B.;.....
......................  NO MATCH, SO LOO
K AT . W.D DOWN ........L.STAR.VER LDA P
T; PUT PREVIOUS W.D'S START ADDR. .O PO.
ER.!.V.STA PARRAY.....LDA PT.1.?...STA P
ARRAY.1.....JSR DECPAR; LOWER PO.ER BY 1
 (STARTLK WILL LOWER IT ALSO, BELOW EUE)
.....JMP STARTLK; TRY A.HER W.D IN THE A
RRAY.Q...;............................AD
.E LDA FOUNDFLAG.....BMI AD1; DIDN'T FIN
D THE LABEL.*.F.RTS; ALL IS WELL.  . . E
E..;.P.AD1 LDA PASS.M.Z.BNE AD1X; 2ND PA
SS.. K AHEAD . . ERR. MESSAGE.....BEQ AD
.E1; . 1ST PASS, MIGHT . YET BE .INED (R
AISE INCSA.2S . 3S).....AD1X JSR ERRING;
 LABEL . IN TABLE.  (TREAT IT AS A 2.BYT
E ADDRESS).....JSR PRNTLINE.....JSR PRNT
SPACE.-...LDA #.NOLAB.:...STA TEMP.J. .L
DA #.NOLAB.Y.*.STA TEMP.1...4.JSR PRNTME
SS; RING BELL . . . FOUND MESSAGE...>.JS
R PRNTCR...H.AD.E1 PLA...R.PLA;...\.LDA 
OP.D.F.. #31.P.P.CMP #16...Z.BEQ ADO2; C
HECK . BRANCH INSTRUCT......LDA BYTFLAG.
"...BNE ADO2; . . . PSEUDO.1...JMP THREE
S.C...ADO2 JMP TWOS.I...;.....FOUNDIT CP
X W.K.1;CHECK LABEL CGTH AGAINST TAR. W.
D CGTH.L...BEQ FOUNDF; THEY MUST EQUAL .
 SIGN.Y A MATCH. (..PRIN WOULD FAIL)...J
.JMP STAR.VER; FAILED MATCH.%.T.FOUNDF I
NC FOUNDFLAG; RAISE FLAG . ZERO (FIRST M
ATCH).D...BEQ FOFX; . HIGHER THAN 0, . D
UPLICATI. LABEL ERR. MESSAGE.S...JSR DUP
LAB.....FOFX LDY W.K.1.....LDA BUFLAG; C
OMPENSATE . # . (.....BEQ FOF.....INY...
..FOF LDA (PARRAY),Y; PUT TABLE LABEL'S 
EUE IN RESULT...$.STA RESULT.....INY...8
.LDA (PARRAY),Y.0.B.STA RESULT.1.@.L.LDA
 BYTFLAG.C.V.BEQ CMPMO; IS IT . . . PSEU
DO..N.`.CMP #2.Z.J.BNE AR....T.LDA RESUL
T.1; S.RE HIGH BYTE .O LOW BYTE...~.STA 
RESULT.....CMPMO LDA PLUSFLAG; DO ADDITI
. . PSEUDO OP.....BEQ AR......CLC; ADD T
HE . NUMBER "ADDNUM" . RESULT.,...LDA AD
DNUM.;...ADC RESULT.J...STA RESULT.[.D.L
DA ADDNUM.1.L.N.ADC RESULT.1.}.X.STA RES
ULT.1.....AR. LDA PASS; . 2ND PASS, CHEC
K . DUPS.....BNE ARENX.K...RTS; K BACK .
 EE.....ARENX JMP STAR.VER; . PASS 2, LO
OK . DUPS (SO .INUE IN ARRAY).0...;.....
.........................^...DECPAR LDA 
PARRAY; LOWER ARRAY PO.ER BY 1.K...BNE M
DEC.|.(.DEC PARRAY.1...2.MDEC DEC PARRAY
...<.RTS...F.; ....................P.DUP
LAB JSR ERRING; RING BELL . . DUP LABEL 
MESSAGE...Z.LDA #.MDUPLAB...D.STA TEMP..
.N.LDA #.MDUPLAB.'.X.STA TEMP.1.8...JSR 
PRNTMESS.G...JSR PRNTCR.Q...RTS;........
..........................~. ..FILE .1..
.
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL