00000000: 01 04 3B 04 0A 00 3B 20 22 46 49 4E 44 4D 4E 22 |..;...; "FINDMN"|
00000010: 20 AB AB 20 4C 4F 4F 4B 53 20 54 48 52 4F 55 47 | .. LOOKS THROUG|
00000020: 48 20 4D 4E 45 4D 91 49 43 53 20 81 20 4D 41 54 |H MNEM.ICS . MAT|
00000030: 43 48 20 A4 20 4C 41 42 45 4C 2E 00 84 04 14 00 |CH . LABEL......|
00000040: 3B 20 57 45 20 4A 4D 50 20 A4 20 54 48 49 53 20 |; WE JMP . THIS |
00000050: 46 52 4F 4D 20 45 C5 2E 20 20 26 20 4A 4D 50 20 |FROM E.. & JMP |
00000060: 42 41 43 4B 20 A4 20 31 20 4F 46 20 32 20 4C 4F |BACK . 1 OF 2 LO|
00000070: 43 41 54 49 91 53 20 28 4A 4D 50 20 81 20 53 50 |CATI.S (JMP . SP|
00000080: 45 45 44 29 00 96 04 1E 00 46 49 4E 44 4D 4E 20 |EED).....FINDMN |
00000090: 4C 44 59 20 23 30 00 CA 04 28 00 4C 44 58 20 23 |LDY #0...(.LDX #|
000000A0: 32 35 35 3B 20 50 52 45 50 41 52 45 20 58 20 A4 |255; PREPARE X .|
000000B0: 20 CB 20 A4 20 5A 45 52 4F 20 41 54 20 53 54 41 | . . ZERO AT STA|
000000C0: 52 54 20 4F 46 20 4C 4F 4F 50 00 F9 04 32 00 4C |RT OF LOOP...2.L|
000000D0: 4F 4F 50 20 49 4E 58 3B 20 58 20 52 41 49 53 45 |OOP INX; X RAISE|
000000E0: 44 20 A4 20 5A 45 52 4F 20 41 54 20 53 54 41 52 |D . ZERO AT STAR|
000000F0: 54 20 4F 46 20 4C 4F 4F 50 00 27 05 3C 00 4C 44 |T OF LOOP.'.<.LD|
00000100: 41 20 4D 4E 45 4D 91 49 43 53 2C 59 3B 20 4C 4F |A MNEM.ICS,Y; LO|
00000110: 4F 4B 20 49 4E 20 54 41 42 4C 45 20 4F 46 20 4D |OK IN TABLE OF M|
00000120: 4E 45 4D 91 49 43 53 00 64 05 46 00 43 4D 50 20 |NEM.ICS.d.F.CMP |
00000130: 4C 41 42 45 4C 3B 20 43 4F 4D 50 41 52 45 20 49 |LABEL; COMPARE I|
00000140: 54 20 A4 20 31 53 54 20 43 48 41 52 2E 20 4F 46 |T . 1ST CHAR. OF|
00000150: 20 57 B0 44 20 49 4E 20 4C 41 42 45 4C 20 42 55 | W.D IN LABEL BU|
00000160: 46 46 45 52 00 9C 05 50 00 42 45 51 20 4D B0 45 |FFER...P.BEQ M.E|
00000170: 3B 20 8B 20 B2 2C 20 43 4F 4D 50 41 52 45 20 32 |; . ., COMPARE 2|
00000180: 4E 44 20 88 54 45 52 53 20 4F 46 20 54 41 42 4C |ND .TERS OF TABL|
00000190: 45 20 56 53 2E 20 42 55 46 46 45 52 00 DC 05 5A |E VS. BUFFER...Z|
000001A0: 00 49 4E 59 3B 20 4F 54 48 45 52 57 49 53 45 20 |.INY; OTHERWISE |
000001B0: CB 20 55 50 20 54 48 52 45 45 20 49 4E 20 54 48 |. UP THREE IN TH|
000001C0: 45 20 54 41 42 4C 45 20 A4 20 46 49 4E 44 20 54 |E TABLE . FIND T|
000001D0: 48 45 20 82 20 4D 4E 45 4D 91 49 43 00 E4 05 64 |HE . MNEM.IC...d|
000001E0: 00 49 4E 59 00 EC 05 6E 00 49 4E 59 00 1A 06 78 |.INY...n.INY...x|
000001F0: 00 43 50 58 20 23 35 37 3B 20 48 41 56 45 20 57 |.CPX #57; HAVE W|
00000200: 45 20 43 48 45 43 4B 45 44 20 41 4C 4C 20 35 36 |E CHECKED ALL 56|
00000210: 20 4D 4E 45 4D 91 49 43 53 2E 00 49 06 82 00 42 | MNEM.ICS..I...B|
00000220: 4E 45 20 4C 4F 4F 50 3B 20 8B 20 A8 2C 20 9A 49 |NE LOOP; . ., .I|
00000230: 4E 55 45 20 54 52 59 49 4E 47 20 A4 20 46 49 4E |NUE TRYING . FIN|
00000240: 44 20 41 20 4D 41 54 43 48 00 87 06 8C 00 4E 4F |D A MATCH.....NO|
00000250: 4D 41 54 43 48 20 4A 4D 50 20 45 51 4C 41 42 45 |MATCH JMP EQLABE|
00000260: 4C 3B 20 44 49 44 4E 27 54 20 46 49 4E 44 20 41 |L; DIDN'T FIND A|
00000270: 20 4D 41 54 43 48 20 28 53 4F 20 CB 20 42 41 43 | MATCH (SO . BAC|
00000280: 4B 20 A4 20 45 C5 29 00 A5 06 96 00 4D B0 45 20 |K . E.).....M.E |
00000290: 49 4E 59 3B 20 43 4F 4D 50 41 52 45 20 32 4E 44 |INY; COMPARE 2ND|
000002A0: 20 88 54 45 52 00 B8 06 A0 00 4C 44 41 20 4D 4E | .TER.....LDA MN|
000002B0: 45 4D 91 49 43 53 2C 59 00 C8 06 AA 00 43 4D 50 |EM.ICS,Y.....CMP|
000002C0: 20 4C 41 42 45 4C AA 31 00 FA 06 B4 00 42 45 51 | LABEL.1.....BEQ|
000002D0: 20 4D B0 45 31 3B 20 8B 20 B2 2C 20 CB 20 91 20 | M.E1; . ., . . |
000002E0: A4 20 43 4F 4D 50 41 52 45 20 33 52 44 20 AF 20 |. COMPARE 3RD . |
000002F0: 46 49 4E 41 4C 20 88 54 45 52 00 02 07 BE 00 49 |FINAL .TER.....I|
00000300: 4E 59 00 0A 07 C8 00 49 4E 59 00 46 07 D2 00 42 |NY.....INY.F...B|
00000310: 4E 45 20 4C 4F 4F 50 3B 20 32 4E 44 20 88 54 45 |NE LOOP; 2ND .TE|
00000320: 52 20 44 49 44 4E 27 54 20 4D 41 54 43 48 2C 20 |R DIDN'T MATCH, |
00000330: 54 52 59 20 82 20 4D 4E 45 4D 91 49 43 20 28 59 |TRY . MNEM.IC (Y|
00000340: 20 B3 B1 20 30 29 00 7F 07 DC 00 42 45 51 20 4E | .. 0).....BEQ N|
00000350: 4F 4D 41 54 43 48 20 3B 20 8B 20 59 20 B2 20 30 |OMATCH ; . Y . 0|
00000360: 2C 20 57 45 27 56 45 20 CB 4E 45 20 50 41 53 54 |, WE'VE .NE PAST|
00000370: 20 54 41 42 4C 45 20 28 8E 20 A4 20 45 C5 29 00 | TABLE (. . E.).|
00000380: 9E 07 E6 00 4D B0 45 31 20 49 4E 59 3B 20 43 4F |....M.E1 INY; CO|
00000390: 4D 50 41 52 45 20 33 52 44 20 88 54 45 52 00 B1 |MPARE 3RD .TER..|
000003A0: 07 F0 00 4C 44 41 20 4D 4E 45 4D 91 49 43 53 2C |...LDA MNEM.ICS,|
000003B0: 59 00 C1 07 FA 00 43 4D 50 20 4C 41 42 45 4C AA |Y.....CMP LABEL.|
000003C0: 32 00 F9 07 04 01 42 45 51 20 46 4F 55 4E 44 3B |2.....BEQ FOUND;|
000003D0: 20 8B 20 33 52 44 20 88 54 45 52 53 20 41 52 45 | . 3RD .TERS ARE|
000003E0: 20 B2 2C 20 57 45 27 56 45 20 46 4F 55 4E 44 20 | ., WE'VE FOUND |
000003F0: 4F 55 52 20 4D 41 54 43 48 00 01 08 0E 01 49 4E |OUR MATCH.....IN|
00000400: 59 00 27 08 18 01 42 4E 45 20 4C 4F 4F 50 3B 20 |Y.'...BNE LOOP; |
00000410: 4F 54 48 45 52 57 49 53 45 20 54 52 59 20 82 20 |OTHERWISE TRY . |
00000420: 4D 4E 45 4D 91 49 43 00 37 08 22 01 42 45 51 20 |MNEM.IC.7.".BEQ |
00000430: 4E 4F 4D 41 54 43 48 00 82 08 2C 01 46 4F 55 4E |NOMATCH...,.FOUN|
00000440: 44 20 4C 44 41 20 4C 41 42 45 4C AA 33 3B 20 54 |D LDA LABEL.3; T|
00000450: 48 45 20 34 54 48 20 43 48 41 52 2E 20 4D 55 53 |HE 4TH CHAR. MUS|
00000460: 54 20 42 45 20 41 20 42 4C 41 4E 4B 20 81 20 54 |T BE A BLANK . T|
00000470: 48 49 53 20 A4 20 42 45 20 41 20 4D 4E 45 4D 91 |HIS . BE A MNEM.|
00000480: 49 43 00 8E 08 36 01 43 4D 50 20 23 33 32 00 CE |IC...6.CMP #32..|
00000490: 08 40 01 42 45 51 20 46 4F 31 3B 20 8B 20 53 4F |.@.BEQ FO1; . SO|
000004A0: 2C 20 53 A4 52 45 20 83 20 41 42 4F 55 54 20 54 |, S.RE . ABOUT T|
000004B0: 48 49 53 20 4D 4E 45 4D 4F 4E 49 43 20 26 20 52 |HIS MNEMONIC & R|
000004C0: 45 54 55 52 4E 20 54 4F 20 45 56 41 4C 2E 00 17 |ETURN TO EVAL...|
000004D0: 09 4A 01 43 4D 50 20 23 30 3B 20 B0 20 8B 20 80 |.J.CMP #0; . . .|
000004E0: 20 4F 46 20 4C 49 4E 45 2C 20 49 54 20 57 4F 55 | OF LINE, IT WOU|
000004F0: 4C 44 20 42 45 20 41 4E 20 49 4D 50 4C 49 45 44 |LD BE AN IMPLIED|
00000500: 20 41 44 44 52 2E 20 4D 4E 45 4D 91 49 43 20 4C | ADDR. MNEM.IC L|
00000510: 49 4B 45 20 49 4E 59 00 56 09 54 01 42 4E 45 20 |IKE INY.V.T.BNE |
00000520: 4E 4F 4D 41 54 43 48 3B 20 4F 54 48 45 52 57 49 |NOMATCH; OTHERWI|
00000530: 53 45 2C 20 4E 4F 20 4D 41 54 43 48 20 46 4F 55 |SE, NO MATCH FOU|
00000540: 4E 44 20 28 49 54 27 53 20 A8 20 41 20 4D 4E 45 |ND (IT'S . A MNE|
00000550: 4D 91 49 43 29 2E 00 7C 09 5E 01 46 4F 31 20 4C |M.IC)..|.^.FO1 L|
00000560: 44 41 20 54 59 50 45 53 2C 58 3B 20 53 A4 52 45 |DA TYPES,X; S.RE|
00000570: 20 41 44 44 52 2E 20 54 59 50 45 2E 00 87 09 68 | ADDR. TYPE....h|
00000580: 01 53 54 41 20 54 50 00 A2 09 72 01 4C 44 59 20 |.STA TP...r.LDY |
00000590: 4F 50 53 2C 58 3B 20 53 A4 52 45 20 4F 50 43 4F |OPS,X; S.RE OPCO|
000005A0: 44 45 00 AD 09 7C 01 53 54 59 20 4F 50 00 E6 09 |DE...|.STY OP...|
000005B0: 86 01 80 20 4A 4D 50 20 45 56 41 52 3B 20 4D 41 |... JMP EVAR; MA|
000005C0: 54 43 48 20 46 4F 55 4E 44 20 53 4F 20 4A 55 4D |TCH FOUND SO JUM|
000005D0: 50 20 A4 20 45 56 41 52 20 52 4F 55 54 49 4E 45 |P . EVAR ROUTINE|
000005E0: 20 49 4E 20 45 C5 00 F4 09 90 01 2E 46 49 4C 45 | IN E.......FILE|
000005F0: 20 A1 53 41 00 00 00 | .SA... |
..;...; "FINDMN" .. LOOKS THROUGH MNEM.I
CS . MATCH . LABEL......; WE JMP . THIS
FROM EE. & JMP BACK . 1 OF 2 LOCATI.S (
JMP . SPEED).....FINDMN LDY #0.J.(.LDX #
255; PREPARE X . K . ZERO AT START OF LO
OP...2.LOOP INX; X RAISED . ZERO AT STAR
T OF LOOP.'.<.LDA MNEM.ICS,Y; LOOK IN TA
BLE OF MNEM.ICS.D.F.CMP LABEL; COMPARE I
T . 1ST CHAR. OF W.D IN LABEL BUFFER...P
.BEQ M.E; . ., COMPARE 2ND .TERS OF TABL
E VS. BUFFER...Z.INY; OTHERWISE K UP THR
EE IN THE TABLE . FIND THE . MNEM.IC...D
.INY...N.INY...X.CPX #57; HAVE WE CHECKE
D ALL 56 MNEM.ICS..I...BNE LOOP; . ., .I
NUE TRYING . FIND A MATCH.....NOMATCH JM
P EQLABEL; DIDN'T FIND A MATCH (SO K BAC
K . EE).....M.E INY; COMPARE 2ND .TER...
.LDA MNEM.ICS,Y.H...CMP LABEL.1.....BEQ
M.E1; . ., K . . COMPARE 3RD . FINAL .T
ER.....INY...H.INY.F.R.BNE LOOP; 2ND .TE
R DIDN'T MATCH, TRY . MNEM.IC (Y .. 0).
...BEQ NOMATCH ; . Y . 0, WE'VE KNE PAST
TABLE (. . EE).....M.E1 INY; COMPARE 3R
D .TER.....LDA MNEM.ICS,Y.A...CMP LABEL.
2.....BEQ FOUND; . 3RD .TERS ARE ., WE'V
E FOUND OUR MATCH.....INY.'...BNE LOOP;
OTHERWISE TRY . MNEM.IC.7.".BEQ NOMATCH.
..,.FOUND LDA LABEL.3; THE 4TH CHAR. MUS
T BE A BLANK . THIS . BE A MNEM.IC...6.C
MP #32.N.@.BEQ FO1; . SO, S.RE . ABOUT T
HIS MNEMONIC & RETURN TO EVAL....J.CMP #
0; . . . OF LINE, IT WOULD BE AN IMPLIED
ADDR. MNEM.IC LIKE INY.V.T.BNE NOMATCH;
OTHERWISE, NO MATCH FOUND (IT'S . A MNE
M.IC)..|.^.FO1 LDA TYPES,X; S.RE ADDR. T
YPE....H.STA TP...R.LDY OPS,X; S.RE OPCO
DE...|.STY OP...... JMP EVAR; MATCH FOUN
D SO JUMP . EVAR ROUTINE IN EE......FILE
.SA...
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL