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 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL