10 REM - DUMPR.BA - Milton van der Veen, 72135,1430, October 11, 1984 20 CLEAR1000:MAXFILES=2:CLS:DEFSTRA-E:DIMA(17) 21 D="":E=CHR$(27):T=54:G=63:SCREEN,0 29 'Setup the display 30 CLS:PRINT@121,E"p DUMPR ";:PRINT@161,"M v/d V"E"q" 31 PRINT@171,"Select output device.":LINE(5,23)-(233,43),1,B 40 PRINT@242,"COM: Baud Rate" 41 PRINT@281,"300 1200 9600 19K RAM: CAS: LPT: Menu"; 42 LINE(4,46)-(108,G),1,B:FORH=0TO3:LINE(118+H*30,T)-(144+H*30,G),1,B:NEXTH 49 'Setup the function keys 50 ONKEYGOSUB61,62,63,64,65,66,67,68:KEYON 60 IFD=""THEN60ELSE70 61 D="COM:37E1E":RETURN 62 D="COM:57E1E":RETURN 63 D="COM:87E1E":RETURN 64 D="COM:97E1E":RETURN 65 PRINT@171,"Destination file: ";:INPUTD:RETURN 66 D="CAS:":RETURN 67 D="LPT:":RETURN 68 MENU 70 CLS:OPENDFOROUTPUTAS2 79 'Find all .DO files in directory 80 FORX=0TO15:Y=X*11+63919 90 IFPEEK(Y)<>192THEN110ELSEFORZ=3TO10:A(X)=A(X)+CHR$(PEEK(Y+Z)):NEXTZ 100 GOSUB120 110 NEXTX:PRINT#2,CHR$(26):CLOSE:MENU 119 'Heading ==> Output file/device 120 PRINT#2,CHR$(123):PRINT#2,"Dump of ";A(X):PRINT#2,"Date:";DATE$ 121 PRINT#2,"Time:";TIME$:PRINT#2,"" 129 'Heading ==> Screen 130 PRINT@49,E"p Dumping: ";E"q "A(X):PRINT@132,E"p Date: "E"q "DATE$ 131 PRINT@172,E"p Time: ";E"q "TIME$:PRINT@245,E"p Destination: "E"q "D 139 '.DO files ==> Output file/device 140 OPENA(X)FORINPUTAS#1 150 IFEOF(1)THEN160ELSELINEINPUT#1,C :PRINT#2,C:GOTO150 160 CLOSE#1:RETURN 169 'To compact program and save bytes: 179 '1. Delete REMs [Lines ending in 9] 189 '2. Combine 20<=21, 30<=31, 40<=41<=42, 120<=121, 130<=131