00000000: 01 04 44 04 0A 00 3B 20 22 4D 41 54 48 22 20 20 |..D...; "MATH" |
00000010: 54 48 49 53 20 52 4F 55 54 49 4E 45 20 48 AF 4C |THIS ROUTINE H.L|
00000020: 45 53 20 AA 20 20 20 49 54 20 43 4F 4D 45 53 20 |ES . IT COMES |
00000030: 46 52 4F 4D 20 45 C5 20 41 46 54 45 52 20 49 4E |FROM E. AFTER IN|
00000040: 44 49 53 4B 00 7E 04 14 00 3B 20 49 54 20 4C 45 |DISK.~...; IT LE|
00000050: 41 56 45 53 20 54 48 45 20 B5 80 45 44 20 41 44 |AVES THE ..ED AD|
00000060: 44 49 54 49 91 20 49 4E 20 54 48 45 20 56 41 52 |DITI. IN THE VAR|
00000070: 49 41 42 4C 45 20 22 41 44 44 4E 55 4D 22 00 B8 |IABLE "ADDNUM"..|
00000080: 04 1E 00 3B 20 28 41 44 44 4E 55 4D 20 49 53 20 |...; (ADDNUM IS |
00000090: 41 44 44 45 44 20 A4 20 22 52 45 53 55 4C 54 22 |ADDED . "RESULT"|
000000A0: 20 49 4E 20 54 48 45 20 C5 44 45 43 20 53 55 42 | IN THE .DEC SUB|
000000B0: 50 52 4F 47 52 41 4D 29 00 DC 04 28 00 4D 41 54 |PROGRAM)...(.MAT|
000000C0: 48 20 4C 44 59 20 23 30 3B 20 53 45 54 20 49 4E |H LDY #0; SET IN|
000000D0: 44 45 58 45 53 20 A4 20 5A 45 52 4F 00 E7 04 32 |DEXES . ZERO...2|
000000E0: 00 4C 44 58 20 23 30 00 23 05 3C 00 4D 41 54 48 |.LDX #0.#.<.MATH|
000000F0: 31 20 4C 44 41 20 4C 41 42 45 4C 2C 59 3B 20 4C |1 LDA LABEL,Y; L|
00000100: 4F 4F 4B 20 81 20 4C 4F 43 41 54 49 91 20 4F 46 |OOK . LOCATI. OF|
00000110: 20 22 2B 22 20 53 59 4D 42 4F 4C AB AB AB AB AB | "+" SYMBOL.....|
00000120: AB AB AB 00 2F 05 46 00 43 4D 50 20 23 34 33 00 |..../.F.CMP #43.|
00000130: 3D 05 50 00 42 45 51 20 4D 41 54 48 32 00 45 05 |=.P.BEQ MATH2.E.|
00000140: 5A 00 49 4E 59 00 82 05 64 00 4A 4D 50 20 4D 41 |Z.INY...d.JMP MA|
00000150: 54 48 31 3B AB AB AB AB AB AB AB AB AB AB AB AB |TH1;............|
00000160: AB 20 4E 4F 57 20 50 4F B5 20 A4 20 31 53 54 20 |. NOW PO. . 1ST |
00000170: 4E 55 4D 42 45 52 20 46 4F 4C 4C 4F 57 49 4E 47 |NUMBER FOLLOWING|
00000180: 20 AA 00 90 05 6E 00 4D 41 54 48 32 20 49 4E 59 | ....n.MATH2 INY|
00000190: 00 A0 05 78 00 4C 44 41 20 4C 41 42 45 4C 2C 59 |...x.LDA LABEL,Y|
000001A0: 00 E3 05 82 00 4A 53 52 20 52 41 4E 47 45 43 4B |.....JSR RANGECK|
000001B0: 3B 20 43 48 45 43 4B 20 A4 20 53 45 45 20 8B 20 |; CHECK . SEE . |
000001C0: 54 48 49 53 20 49 53 20 42 45 54 57 45 45 4E 20 |THIS IS BETWEEN |
000001D0: 34 38 20 AB 20 35 38 20 28 C6 49 49 20 81 20 30 |48 . 58 (.II . 0|
000001E0: AB 39 29 00 26 06 8C 00 42 43 53 20 C5 49 54 3B |.9).&...BCS .IT;|
000001F0: 20 8B 20 A8 2C 20 45 58 49 54 20 54 48 49 53 20 | . ., EXIT THIS |
00000200: 52 4F 55 54 49 4E 45 20 28 57 45 27 56 45 20 53 |ROUTINE (WE'VE S|
00000210: A4 52 45 44 20 54 48 45 20 4E 55 4D 42 45 52 20 |.RED THE NUMBER |
00000220: AF 20 48 41 56 45 00 64 06 96 00 53 54 41 20 48 |. HAVE.d...STA H|
00000230: 45 58 42 55 46 2C 58 3B 20 4C 4F 43 41 54 45 44 |EXBUF,X; LOCATED|
00000240: 20 53 4F 4D 45 54 48 49 4E 47 20 4F 54 48 45 52 | SOMETHING OTHER|
00000250: 20 54 48 41 4E 20 41 4E 20 C6 49 49 20 4E 55 4D | THAN AN .II NUM|
00000260: 42 45 52 29 00 9A 06 A0 00 49 4E 58 3B 20 4B 45 |BER).....INX; KE|
00000270: 45 50 20 53 A4 52 49 4E 47 20 C5 49 44 20 C6 49 |EP S.RING .ID .I|
00000280: 49 20 4E 55 4D 42 45 52 53 20 49 4E 20 48 45 58 |I NUMBERS IN HEX|
00000290: 42 55 46 20 42 55 46 46 45 52 00 BC 06 AA 00 4A |BUF BUFFER.....J|
000002A0: 4D 50 20 4D 41 54 48 32 3B AB AB AB AB AB AB AB |MP MATH2;.......|
000002B0: AB AB AB AB AB AB AB AB AB AB AB AB 00 F1 06 B4 |................|
000002C0: 00 52 41 4E 47 45 43 4B 20 43 4D 50 20 23 35 38 |.RANGECK CMP #58|
000002D0: 3B AB AB AB AB AB AB AB AB AB AB AB AB AB AB 20 |;.............. |
000002E0: 49 53 20 54 48 49 53 20 B1 34 37 20 AF 20 B3 35 |IS THIS .47 . .5|
000002F0: 38 00 FF 06 BE 00 42 43 53 20 4D 41 54 48 33 00 |8.....BCS MATH3.|
00000300: 07 07 C8 00 53 45 43 00 13 07 D2 00 53 42 43 20 |....SEC.....SBC |
00000310: 23 34 38 00 1B 07 DC 00 53 45 43 00 3B 07 E6 00 |#48.....SEC.;...|
00000320: 53 42 43 20 23 32 30 38 3B 20 49 53 20 49 54 20 |SBC #208; IS IT |
00000330: B1 20 34 37 20 26 20 B3 20 35 38 00 49 07 F0 00 |. 47 & . 58.I...|
00000340: 4D 41 54 48 33 20 52 54 53 00 86 07 FA 00 C5 49 |MATH3 RTS......I|
00000350: 54 20 4C 44 41 20 23 30 3B AB AB AB AB AB AB AB |T LDA #0;.......|
00000360: AB AB AB 20 54 55 52 4E 20 49 54 20 46 52 4F 4D |... TURN IT FROM|
00000370: 20 C6 49 49 20 B5 4F 20 41 20 32 AB 42 59 54 45 | .II .O A 2.BYTE|
00000380: 20 B5 45 47 45 52 00 C3 07 04 01 53 54 41 20 48 | .EGER.....STA H|
00000390: 45 58 42 55 46 2C 58 3B 20 50 55 54 20 5A 45 52 |EXBUF,X; PUT ZER|
000003A0: 4F 20 41 54 20 80 20 4F 46 20 C6 49 49 20 4E 55 |O AT . OF .II NU|
000003B0: 4D 42 45 52 20 28 41 53 20 44 45 4C 49 4D 49 54 |MBER (AS DELIMIT|
000003C0: 45 52 29 00 FD 07 0E 01 4C 44 41 20 23 B3 48 45 |ER).....LDA #.HE|
000003D0: 58 42 55 46 3B 20 50 4F B5 20 22 54 45 4D 50 22 |XBUF; PO. "TEMP"|
000003E0: 20 50 4F B5 45 52 20 A4 20 C6 49 49 20 4E 55 4D | PO.ER . .II NUM|
000003F0: 42 45 52 20 49 4E 20 42 55 46 46 45 52 00 0A 08 |BER IN BUFFER...|
00000400: 18 01 53 54 41 20 54 45 4D 50 00 1B 08 22 01 4C |..STA TEMP...".L|
00000410: 44 41 20 23 B1 48 45 58 42 55 46 00 2A 08 2C 01 |DA #.HEXBUF.*.,.|
00000420: 53 54 41 20 54 45 4D 50 AA 31 00 6C 08 36 01 4A |STA TEMP.1.l.6.J|
00000430: 53 52 20 C5 44 45 43 3B 20 52 4F 55 54 49 4E 45 |SR .DEC; ROUTINE|
00000440: 20 57 48 49 43 48 20 54 55 52 4E 53 20 C6 49 49 | WHICH TURNS .II|
00000450: 20 4E 55 4D 42 45 52 20 B5 4F 20 B5 45 47 45 52 | NUMBER .O .EGER|
00000460: 20 49 4E 20 22 52 45 53 55 4C 54 22 00 AE 08 40 | IN "RESULT"...@|
00000470: 01 4C 44 41 20 52 45 53 55 4C 54 3B 20 4D 4F 56 |.LDA RESULT; MOV|
00000480: 45 20 52 45 53 55 4C 54 20 A4 20 54 45 4D 50 B0 |E RESULT . TEMP.|
00000490: 41 52 59 20 41 44 44 49 54 49 91 20 56 41 52 49 |ARY ADDITI. VARI|
000004A0: 41 42 4C 45 2C 20 22 41 44 44 4E 55 4D 22 00 BD |ABLE, "ADDNUM"..|
000004B0: 08 4A 01 53 54 41 20 41 44 44 4E 55 4D 00 CE 08 |.J.STA ADDNUM...|
000004C0: 54 01 4C 44 41 20 52 45 53 55 4C 54 AA 31 00 DF |T.LDA RESULT.1..|
000004D0: 08 5E 01 53 54 41 20 41 44 44 4E 55 4D AA 31 00 |.^.STA ADDNUM.1.|
000004E0: F3 08 68 01 52 54 53 3B 20 8E 20 A4 20 43 41 4C |..h.RTS; . . CAL|
000004F0: 4C 45 52 00 02 09 72 01 2E 46 49 4C 45 20 99 4F |LER...r..FILE .O|
00000500: 50 53 00 00 00 |PS... |
..D...; "MATH" THIS ROUTINE H.LES . I
T COMES FROM EE AFTER INDISK.~...; IT LE
AVES THE ..ED ADDITI. IN THE VARIABLE "A
DDNUM".....; (ADDNUM IS ADDED . "RESULT"
IN THE EDEC SUBPROGRAM)...(.MATH LDY #0
; SET INDEXES . ZERO...2.LDX #0.#.<.MATH
1 LDA LABEL,Y; LOOK . LOCATI. OF "+" SYM
BOL........./.F.CMP #43.=.P.BEQ MATH2.E.
Z.INY...D.JMP MATH1;............. NOW PO
. . 1ST NUMBER FOLLOWING ....N.MATH2 INY
. .X.LDA LABEL,Y.....JSR RANGECK; CHECK
. SEE . THIS IS BETWEEN 48 . 58 (FII . 0
.9).&...BCS EIT; . ., EXIT THIS ROUTINE
(WE'VE S.RED THE NUMBER . HAVE.D...STA H
EXBUF,X; LOCATED SOMETHING OTHER THAN AN
FII NUMBER)... .INX; KEEP S.RING EID FI
I NUMBERS IN HEXBUF BUFFER.....JMP MATH2
;........................RANGECK CMP #58
;.............. IS THIS .47 . .58.....BC
S MATH3...H.SEC...R.SBC #48.....SEC.;...
SBC #208; IS IT . 47 & . 58.I...MATH3 RT
S.....EIT LDA #0;.......... TURN IT FROM
FII .O A 2.BYTE .EGER.C...STA HEXBUF,X;
PUT ZERO AT . OF FII NUMBER (AS DELIMIT
ER).....LDA #.HEXBUF; PO. "TEMP" PO.ER .
FII NUMBER IN BUFFER.....STA TEMP...".L
DA #.HEXBUF.*.,.STA TEMP.1.L.6.JSR EDEC;
ROUTINE WHICH TURNS FII NUMBER .O .EGER
IN "RESULT"...@.LDA RESULT; MOVE RESULT
. TEMP.ARY ADDITI. VARIABLE, "ADDNUM"..
.J.STA ADDNUM.N.T.LDA RESULT.1...^.STA A
DDNUM.1...H.RTS; . . CALLER...R..FILE .O
PS...
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL