Compucolor.org – Virtual Media

Listing of file='CONVRT.BAS;01' on disk='vmedia/compuwriter_1-sector.ccvf'

0 REM K
1 REM              PROGRAM: CONVRT.BAS
2
3 REM  CONVERTS ANY ASCII FILE TO A .DOC FILE FOR USE
4 REM  WITH THE COMP-U-WRITER WORD PROCESSOR AND SAVES
5 REM  THE .DOC COPY ON DISK.
6
7 REM      WRITTEN BY J J CHARLES & J J CHARLES JR
8 REM             OCT 10, 1982   8:21  PM
9
10 REM  POKE DEFAULT VALUES INTO MEMORY AT 9000
20
30 FOR I= 0TO 63:READ DV:POKE 36864+ I,DV:NEXT I
40
50 REM  GET DIRECTORY INFORMATION FROM USER
60
70 PLOT 15,12
80 INPUT "INPUT DISK DRIVE NUMBER: ";DN
90 IF DN< > 0AND DN< > 1THEN 80
100 PLOT 6,6
110 PLOT 12,27,4:PRINT "DIR";DN;":":PLOT 27,27
120 INPUT "ENTER THE FILE NAME: ";FI$
130 INPUT "ENTER THE FILE TYPE: ";FT$
140 INPUT "ENTER THE VERSION NUMBER: ";VN
150 INPUT "FILE SIZE FROM DIRECTORY (4 DIGITS):  ";SZ$
160 INPUT "FILE LAST BLOCK COUNT (LBC-2 DIGITS): ";LBC$
170
180 REM  LOAD .SRC TYPE FILE AT 9040
190
200 PLOT 27,4:PRINT "LOA ";DN;":";FI$;".";FT$;";";VN;" 9040":PLOT 27,27
210 REM  CONVERT NUMBER OF SECTORS TO DEC
220
230 N$= SZ$:GOSUB 5000
240 SZ= N
250
260 REM  CONVERT NUMBER OF BYTES IN LAST SECTOR TO DEC
270
280 N$= "00"+ LBC$:GOSUB 5000
290
300 REM  CALCULATE FILE SIZE IN DECIMAL
310
320 NN= (SZ- 1)* 128+ N
330
340 REM  CALCULATE END OF FILE LOCATION
350
360 NN= NN+ 36927
370 PRINT :PRINT "FILE END (DEC) = ";NN
380
390 REM  CONVERT TO HEX
400
410 GOSUB 6000
420 PRINT "FILE END (HEX) = ";N$
430
440 REM  SAVE FILE AS .DOC TYPE
450
460 PRINT "INSERT THE DISK ON WHICH YOU WISH TO SAVE THE FILE"
470 INPUT "IN DRIVE 0 AND HIT RETURN";AZ
480 PLOT 27,4:PRINT "SAVE ";FI$;".DOC 9000-";N$:PLOT 27,27
490 INPUT "DO YOU WISH TO CONVERT ANOTHER FILE? ";AN$
500 IF AN$= "Y"GOTO 70
1000 END
4997
4998 REM  *****  HEXADECIMAL TO DECIMAL SUBROUTINE  *****
4999
5000 N= 0
5001 FOR I= 0TO 3
5002   N1$= MID$ (N$,4- I,1)
5003   N1= ASC (N1$)
5004   IF N1> = 48AND N1< = 57OR N1> = 65AND N1< = 70GOTO 5006
5005   RETURN
5006   IF N1> = 65THEN N2= N1- 55
5007   IF N1< = 57THEN N2= N1- 48
5008   N= N+ N2* 16^ I
5009 NEXT I
5010 RETURN
5997
5998 REM *****  DECIMAL TO HEXADECIMAL CONVERSION  *****
5999
6000 N= NN
6010 IF NN> = 0AND NN< = 65535GOTO 6030
6020 N= - 1:PLOT 6,2:RETURN
6030 FOR I= 3TO 0STEP - 1
6040   FOR J= 15TO 0STEP - 1
6050     T= J* 16^ I
6060     IF T> NNTHEN NEXT J
6070   D(I)= J
6080   NN= NN- T
6090 NEXT I
6100 N$= ""
6110 FOR I= 3TO 0STEP - 1
6120   IF D(I)> = 0AND D(I)< = 9THEN N$= N$+ CHR$ (D(I)+ 48)
6130   IF D(I)> = 10AND D(I)< = 15THEN N$= N$+ CHR$ (D(I)+ 55)
6140 NEXT I
6150 RETURN
9998
9999 REM       COMP-U-WRITER'S 64 DEFAULT VALUES
10000 DATA 55,0,56,0,8,0,0,0,128,37,1,0,255,255,0,0,0,0,0,0
10010 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
10020 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,0,0
10030 DATA 0,0,72,0