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$
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