Allow mload to handle more than 255 bytes
This commit is contained in:
@@ -46,12 +46,15 @@
|
||||
2100INPUT "Filename: ";H$
|
||||
2110WAIT:PRINT "Press PLAY on Tape"
|
||||
2120WAIT0:PRINT "Loading ";H$
|
||||
2130DIM V(B-A)
|
||||
2130DIM V((B-A)/255,255)
|
||||
2140OPEN "CAS:"+H$ FOR INPUT
|
||||
2150INPUT#1,V
|
||||
2150INPUT#1,V(*)
|
||||
2160CLOSE
|
||||
2165C=0:D=0
|
||||
2170FOR I=A TO B
|
||||
2180POKE I,V
|
||||
2180POKE I,V(C,D)
|
||||
2185D=D+1
|
||||
2186IF D>255 THEN D=0:=C+1
|
||||
2190NEXT I
|
||||
2999RETURN
|
||||
3000REM Saves a memory area to disk
|
||||
@@ -67,12 +70,15 @@
|
||||
3100INPUT "Filename: ";H$
|
||||
3110WAIT:PRINT "Press RECORD on Tape"
|
||||
3120WAIT0:PRINT "Saving ";H$
|
||||
3130DIM V(B-A)
|
||||
3140FOR I=1 TO B-A
|
||||
3150V(I)=PEEK(A+I-1)
|
||||
3130DIM V((B-A)/255,255)
|
||||
3135C=0:D=0
|
||||
3140FOR I=A TO B
|
||||
3150V(C,D)=PEEK(I)
|
||||
3155D=D+1
|
||||
3156IF D>255 THEN D=0:C=C+1
|
||||
3160NEXT I
|
||||
3170OPEN "CAS:"+H$ FOR OUTPUT
|
||||
3180PRINT#1,V
|
||||
3180PRINT#1,V(*)
|
||||
3190CLOSE
|
||||
3999RETURN
|
||||
4000REM Compares a memory area with the file on disk
|
||||
@@ -88,11 +94,14 @@
|
||||
4100INPUT "Filename: ";H$
|
||||
4110WAIT:PRINT "Press PLAY on Tape"
|
||||
4120WAIT0:PRINT "Loading ";H$
|
||||
4130DIM V(B-A)
|
||||
4130DIM V((B-A)/255,255)
|
||||
4140OPEN "CAS:"+H$ FOR INPUT
|
||||
4150INPUT#1,V
|
||||
4150INPUT#1,V(*)
|
||||
4160CLOSE
|
||||
4170FOR I=1 TO B-A
|
||||
4180IF V(I) <> PEEK(A+I-1) THEN PRINT "Error at address ";A;" Expected ";PEEK(A+I-1);" GOT ";V(I):BREAK
|
||||
4165C=0:D=0
|
||||
4170FOR I=A TO B
|
||||
4180IF V(C,D) <> PEEK(I) THEN PRINT "Error at address ";I;" Expected ";PEEK(I);" GOT ";V(C,D):BREAK
|
||||
4185D=D+1
|
||||
4186IF D>255 THEN D=0:C=C+1
|
||||
4190NEXT I
|
||||
4999RETURN
|
||||
|
||||
Reference in New Issue
Block a user