Program to migrate files from Larken disk system to cassette tape.
Source Code
1 REM THE MACHINE CODE USED IN THIS PROGRAM 2068 TURBOLOADER IS COPYWRITED AND WAS PUBLISHED BY SPECIAL PERMISSION IN THE JULY/AUG '88 ISSUE OF TDM. THEREFOR THE MACHINE CODE IN THIS PROGRAM CAN NOT BE PUBLISHED AND THE PROGRAM IN ITS ENTIRETY CAN ONLY BE PROVIDED TO SUBSCRIBERS OF TDM. THE MACHINE CODE WAS MODIFIED BY POKEING A ZERO INTO ADDRESSES 64815,64816, AND 64817. 5 PRINT FLASH 1;AT 9,10;"STOP THE TAPE": PAUSE 240: CLS 7 PRINT "THE MACHINE CODE USED IN THIS PROGRAM 2068 TURBOLOADER IS COPYWRITED AND WAS PUBLISHED BY SPECIAL PERMISSION IN THE JULY/AUG '88 ISSUE OF TDM. THEREFOR THE MACHINE CODE IN THIS PROGRAM CAN NOT BE PUBLISHED AND THE PROGRAM IN ITS ENTIRETY CAN ONLY BE PROVIDED TO SUBSCRIBERS OF TDM."'"THE MACHINE CODE WAS MODIFIED BY POKEING A ZERO INTO ADDRESSES 64815,64816, AND 64817": GO SUB 100 10 PRINT AT 9,7;"LKDOS DISK TO TAPE";AT 10,2;"(FOR PROGRAMS IN BASIC ONLY)";AT 11,6;"CASSETTE VERSION (V1)";AT 12,9;"BY DUNNINGTON": GO SUB 100 20 CLEAR 63379: PRINT AT 9,0;"PLEASE SPECIFY DRIVE NUMBER DESIRED FROM 0 TO 4 (4 IS RAMDISK)": INPUT "TYPE THE NUMBER,THEN PRESS ENTER ";A 30 RANDOMIZE USR 100: OPEN #4,"dd": PRINT #4: GO TO A 40 IF A=4 THEN GO TO 60 50 CLS : PRINT AT 9,0;"PLEASE INSERT UNPROTECTED DISK TO BE COPIED IN DRIVE #";A: GO SUB 100: GO TO 70 60 CLS : PRINT FLASH 1;AT 9,0;"IS THE WRITE PROTECT SWITCH OFF?": GO SUB 100 70 PRINT FLASH 1;AT 9,5;"START THE TAPE": LOAD "turbo.C2"CODE : CLS : LOAD "DSKTAP.B3" 100 PRINT #0;"TO CONTINUE PRESS ANY KEY": PAUSE 0: CLS : RETURN 10050 CLS : STOP 10051 RANDOMIZE USR VAL "100": CAT "",: LET A=SIN PI: LET B=SIN PI: LET D=SIN PI: DIM A$(VAL "44",VAL "9") 10052 GO SUB VAL "10059": LET A=VAL "16": LET B=VAL "22": LET D=SIN PI: GO SUB VAL "10059": CLS 10053 LET A=SIN PI: FOR N=SGN PI TO VAL "44": FOR M=SGN PI TO VAL "8": IF A$(N,M)="." AND A$(N,M+SGN PI)="B" THEN LET A=A+SGN PI 10054 NEXT M: NEXT N: DIM B$(A,VAL "9"): LET B=SGN PI: FOR N=SGN PI TO VAL "44": FOR M=SGN PI TO VAL "8": IF A$(N,M)="." AND A$(N,M+SGN PI)="B" THEN LET B$(B)=A$(N): LET B=B+SGN PI 10055 NEXT M: NEXT N: DIM A$(1,1): PRINT #SIN PI;"LOAD A BLANK TAPE,START THE RECORDER, THEN PRESS A KEY": PAUSE SIN PI: FOR N=SGN PI TO A 10056 FOR M=VAL "9" TO VAL "4" STEP -SGN PI: IF B$(N,M)=" " THEN NEXT M 10057 LET C$=B$(N, TO M): PRINT C$: RANDOMIZE USR VAL "100": SAVE "dsktap.B1" LINE VAL "10058": RANDOMIZE USR VAL "100": MERGE C$: PAUSE VAL "400": RANDOMIZE USR VAL "63600": RUN 1500: SAVE C$: RANDOMIZE USR VAL "100": LOAD "dsktap.B1" 10058 NEXT N: RANDOMIZE USR VAL "100": ERASE "dsktap.B1",: PRINT "ALL BASIC PROGRAMS ON TAPE": STOP 10059 FOR N=B TO B+VAL "21": LET C=SGN PI: FOR M=A TO A+VAL "8": LET A$(N+SGN PI,C)=SCREEN$ (D,M): LET C=C+SGN PI: NEXT M: LET D=D+SGN PI: NEXT N: RETURN