00000000: 00 0A 20 6F 72 67 20 38 32 38 0D 20 6C 73 74 20 |.. org 828. lst |
00000010: 6F 66 66 0D 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |off.************|
00000020: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
00000030: 2A 2A 2A 2A 2A 0D 4C 4F 41 44 20 3D 20 24 46 46 |*****.LOAD = $FF|
00000040: 44 35 0D 53 41 56 45 20 3D 20 24 46 46 44 38 0D |D5.SAVE = $FFD8.|
00000050: 53 45 54 4C 46 53 20 3D 20 24 46 46 42 41 0D 53 |SETLFS = $FFBA.S|
00000060: 45 54 4E 41 4D 20 3D 20 24 46 46 42 44 0D 65 72 |ETNAM = $FFBD.er|
00000070: 72 6F 72 20 3D 20 24 65 33 38 62 0D 72 65 61 64 |ror = $e38b.read|
00000080: 73 74 20 3D 20 24 66 65 30 37 0D 63 68 6B 63 6F |st = $fe07.chkco|
00000090: 6D 20 3D 20 24 61 65 66 64 0D 66 72 6D 65 76 61 |m = $aefd.frmeva|
000000A0: 6C 20 3D 20 34 34 34 34 36 0D 66 72 65 73 74 72 |l = 44446.frestr|
000000B0: 20 3D 20 24 62 36 61 33 0D 6C 61 73 74 62 79 74 | = $b6a3.lastbyt|
000000C0: 20 3D 20 32 35 33 0D 62 61 73 6C 20 3D 20 32 35 | = 253.basl = 25|
000000D0: 31 0D 66 61 63 74 6F 69 6E 74 20 3D 20 24 62 63 |1.factoint = $bc|
000000E0: 39 62 0D 66 61 63 20 3D 20 24 36 31 0D 6C 65 6E |9b.fac = $61.len|
000000F0: 67 74 68 20 3D 20 32 35 30 0D 63 68 72 6F 75 74 |gth = 250.chrout|
00000100: 20 3D 20 24 66 66 64 32 0D 0D 4C 4F 41 44 46 49 | = $ffd2..LOADFI|
00000110: 4C 45 0D 2A A0 41 2C 58 A0 3D A0 4C 4F 41 44 A0 |LE.*.A,X.=.LOAD.|
00000120: 41 44 52 53 0D 2A A0 42 41 53 4C A0 2D 3E A0 53 |ADRS.*.BASL.->.S|
00000130: 54 41 52 54 A0 4F 46 A0 46 49 4C 45 4E 41 4D 45 |TART.OF.FILENAME|
00000140: 0D 2A A0 28 45 4E 44 49 4E 47 A0 57 2F A0 30 29 |.*.(ENDING.W/.0)|
00000150: 0D 0D 20 6A 73 72 20 67 65 74 69 6E 75 6D 62 65 |.. jsr getinumbe|
00000160: 72 0D 20 73 74 78 20 6C 61 64 64 6C 6F 2B 31 0D |r. stx laddlo+1.|
00000170: 20 73 74 79 20 6C 61 64 64 68 69 2B 31 0D 0D 20 | sty laddhi+1.. |
00000180: 6A 73 72 20 67 65 74 69 6E 73 74 72 0D 2A 0D 2A |jsr getinstr.*.*|
00000190: A0 A0 A0 6C 65 6E 67 74 68 A0 69 6E A0 61 63 63 |...length.in.acc|
000001A0: 75 6D 75 6C 61 74 6F 72 0D 2A A0 A0 A0 61 64 64 |umulator.*...add|
000001B0: 72 65 73 73 A0 69 6E A0 24 32 32 2D 32 33 0D 2A |ress.in.$22-23.*|
000001C0: 0D 20 73 74 61 20 6C 65 6E 67 74 68 0D 20 6C 64 |. sta length. ld|
000001D0: 61 20 24 32 32 0D 20 73 74 61 20 62 61 73 6C 0D |a $22. sta basl.|
000001E0: 20 6C 64 61 20 24 32 33 0D 20 73 74 61 20 62 61 | lda $23. sta ba|
000001F0: 73 6C 2B 31 0D 20 6C 64 79 20 23 24 30 30 0D 20 |sl+1. ldy #$00. |
00000200: 4A 53 52 20 53 45 54 44 49 53 4B 50 41 52 4D 53 |JSR SETDISKPARMS|
00000210: 0D 0D 6C 61 64 64 6C 6F 20 4C 44 58 20 23 24 46 |..laddlo LDX #$F|
00000220: 46 0D 6C 61 64 64 68 69 20 4C 44 59 20 23 24 46 |F.laddhi LDY #$F|
00000230: 46 0D 20 4C 44 41 20 23 30 0D 20 4A 53 52 20 4C |F. LDA #0. JSR L|
00000240: 4F 41 44 0D 0D 20 62 63 63 20 6C 6F 61 64 6F 6B |OAD.. bcc loadok|
00000250: 0D 20 6C 64 78 20 23 32 39 0D 20 6A 6D 70 20 65 |. ldx #29. jmp e|
00000260: 72 72 6F 72 0D 6C 6F 61 64 6F 6B 0D 20 53 54 58 |rror.loadok. STX|
00000270: 20 6C 61 73 74 62 79 74 0D 20 53 54 59 20 6C 61 | lastbyt. STY la|
00000280: 73 74 62 79 74 2B 31 0D 20 4C 44 41 20 23 30 0D |stbyt+1. LDA #0.|
00000290: 20 52 54 53 0D 0D 0D 2A 2A 2A 2A 2A 2A 2A 2A 2A | RTS...*********|
000002A0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
000002B0: 2A 2A 2A 2A 2A 2A 2A 0D 2A 2A 2A 2A 2A 2A 2A 2A |*******.********|
000002C0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
000002D0: 2A 2A 2A 2A 2A 2A 2A 2A 0D 53 45 54 44 49 53 4B |********.SETDISK|
000002E0: 50 41 52 4D 53 0D 20 4C 44 58 20 23 38 0D 20 4C |PARMS. LDX #8. L|
000002F0: 44 41 20 23 31 0D 20 4C 44 59 20 23 30 0D 20 4A |DA #1. LDY #0. J|
00000300: 53 52 20 53 45 54 4C 46 53 0D 0D 2A A0 42 41 53 |SR SETLFS..*.BAS|
00000310: 4C A0 3D A0 53 54 41 52 54 A0 4F 46 A0 46 49 4C |L.=.START.OF.FIL|
00000320: 45 4E 41 4D 45 0D 2A A0 6C 65 6E 67 74 68 A0 6E |ENAME.*.length.n|
00000330: 65 65 64 73 A0 74 6F A0 62 65 A0 69 6E A0 61 63 |eeds.to.be.in.ac|
00000340: 63 75 6D 0D 0D 20 6C 64 61 20 6C 65 6E 67 74 68 |cum.. lda length|
00000350: 0D 20 4C 44 58 20 62 61 73 6C 0D 20 4C 44 59 20 |. LDX basl. LDY |
00000360: 62 61 73 6C 2B 31 0D 20 4A 4D 50 20 53 45 54 4E |basl+1. JMP SETN|
00000370: 41 4D 0D 20 72 74 73 0D 44 49 53 4B 45 52 52 0D |AM. rts.DISKERR.|
00000380: 0D 20 52 54 53 0D 67 65 74 69 6E 75 6D 62 65 72 |. RTS.getinumber|
00000390: 0D 20 6A 73 72 20 63 68 6B 63 6F 6D 0D 20 6A 73 |. jsr chkcom. js|
000003A0: 72 20 66 72 6D 65 76 61 6C 0D 20 6A 73 72 20 66 |r frmeval. jsr f|
000003B0: 61 63 74 6F 69 6E 74 0D 20 6C 64 79 20 23 24 30 |actoint. ldy #$0|
000003C0: 30 0D 20 6C 64 61 20 66 61 63 2B 34 0D 20 74 61 |0. lda fac+4. ta|
000003D0: 78 0D 20 6C 64 61 20 66 61 63 2B 33 0D 20 74 61 |x. lda fac+3. ta|
000003E0: 79 0D 20 72 74 73 0D 0D 67 65 74 69 6E 73 74 72 |y. rts..getinstr|
000003F0: 0D 20 6A 73 72 20 63 68 6B 63 6F 6D 0D 20 6A 73 |. jsr chkcom. js|
00000400: 72 20 66 72 6D 65 76 61 6C 0D 20 6A 73 72 20 66 |r frmeval. jsr f|
00000410: 72 65 73 74 72 0D 20 72 74 73 0D |restr. rts. |
.. ORG 828. LST OFF.********************
*************.LOAD = $FFD5.SAVE = $FFD8.
SETLFS = $FFBA.SETNAM = $FFBD.ERROR = $E
38B.READST = $FE07.CHKCOM = $AEFD.FRMEVA
L = 44446.FRESTR = $B6A3.LASTBYT = 253.B
ASL = 251.FACTOINT = $BC9B.FAC = $61.LEN
GTH = 250.CHROUT = $FFD2..LOADFILE.* A,X
= LOAD ADRS.* BASL -> START OF FILENAME
.* (ENDING W/ 0).. JSR GETINUMBER. STX L
ADDLO+1. STY LADDHI+1.. JSR GETINSTR.*.*
LENGTH IN ACCUMULATOR.* ADDRESS IN
$22-23.*. STA LENGTH. LDA $22. STA BASL.
LDA $23. STA BASL+1. LDY #$00. JSR SETD
ISKPARMS..LADDLO LDX #$FF.LADDHI LDY #$F
F. LDA #0. JSR LOAD.. BCC LOADOK. LDX #2
9. JMP ERROR.LOADOK. STX LASTBYT. STY LA
STBYT+1. LDA #0. RTS...*****************
***************.************************
********.SETDISKPARMS. LDX #8. LDA #1. L
DY #0. JSR SETLFS..* BASL = START OF FIL
ENAME.* LENGTH NEEDS TO BE IN ACCUM.. LD
A LENGTH. LDX BASL. LDY BASL+1. JMP SETN
AM. RTS.DISKERR.. RTS.GETINUMBER. JSR CH
KCOM. JSR FRMEVAL. JSR FACTOINT. LDY #$0
0. LDA FAC+4. TAX. LDA FAC+3. TAY. RTS..
GETINSTR. JSR CHKCOM. JSR FRMEVAL. JSR F
RESTR. RTS.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL