Allow mload to handle more than 255 bytes

This commit is contained in:
2023-02-21 19:04:06 +01:00
parent ad6067f14c
commit 27e2b86965

View File

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