Compucolor.org – Virtual Media

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

10 REM  TXT TO SRC AND V/V CONVERSION AUG '85
20 REM  BY K.G. WINDER, AUGUST 1985. CUVIC.
30 REM
40 PLOT 15,12,6,2:RESTORE
50 PLOT 3,9,2:PRINT "TEXT FILE CONVERTER FOR .TXT/.SRC/.TXT FILES"
60 PRINT TAB( 9)"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
70 PRINT
80 GOSUB 1000
90 PRINT :INPUT "             ENTER NAME OF PROG TO CHANGE - ";F$
100 PRINT :INPUT "                TYPE OF FILE, SRC OR TXT - ";G$
110 PRINT :J$= F$+ "."+ G$
120 PLOT 27,4:PRINT "LOA ";J$;" ";9000"
130 PLOT 27,27:T= 0
140 GOSUB 540:REM  START BLOCK
150 GOSUB 500:GOSUB 2000:REM  PROG SIZE
160 PRINT :PRINT TAB( 16)"FILE SIZE ";DN;" DEC. = ";H$;" HEX."
170 IF G$= "TXT"THEN T= 1:GOTO 190:REM  DIRECTION SELECTION
180 POKE 36617,10:POKE 36633,13:GOTO 200
190 POKE 36617,13:POKE 36633,10
200 PRINT :PLOT 3,27,16:PRINT "WORKING!"
210 P= CALL (0)
220 D$= "0"
230 PLOT 3,20,16:PRINT " DONE ! -  NOW SAVING"
240 L$= "TXT":IF T= 1THEN L$= "SRC"
250 PRINT :INPUT "              TO WHICH DRIVE TO SAVE? -  0 OR 1 ";D$
260 S$= H$
270 PLOT 27,4:PRINT "SAV";D$+ ":"+ F$;".";L$;" 9000,";S$;" 0000":PLOT 27,27
280 PRINT :PLOT 27,4:PRINT "DIR";D$+ ":":PLOT 27,27:
290 FOR I= 1TO 6000:NEXT
300 GOTO 40
310 REM
500 REM  PROG BYTE SIZE
510 X= PEEK (33029):Y= PEEK (33030):Z= PEEK (33031):N= (X- 1)* 128+ (Y* 256* 128)+ Z:REM  FILE SIZE = N
520 J= INT (N/ 256):K= N- (J* 256):POKE 36612,K:POKE 36613,J
530 RETURN
535 REM  DISK START BLOCK
540 A= PEEK (33027):B= PEEK (33028):C= (B* 256)+ A
550 N= C:GOSUB 2000
560 C$= H$:PRINT TAB( 17)"FILE STARTED AT BLOCK  ";C$;" HEX"
570 RETURN
580 REM  LOAD PRG
1000 DATA  33,0,144,1,0,0,3,126,254,0,204,24,143,35,11,120,177
1010 DATA  194,7,143,33,0,144,201,62,0,119,201
1020 FOR I= 0TO 27:READ H:POKE 36608+ I,H:NEXT
1030 POKE 33282,195:POKE 33283,0:POKE 33284,143
1040 RETURN
1050 REM
2000 REM  DECIMAL TO HEX ROUTINE
2010 DN= N:REM  N IN - H$ OUT
2020 H$= ""
2030 NN= N- (16* INT (N/ 16)):IF NN< 10THEN N$= STR$ (NN):H$= RIGHT$ (N$,1)+ H$:GOTO 2050
2040 H$= CHR$ (NN+ 55)+ H$
2050 N= INT (N/ 16):IF N= 0THEN RETURN
2060 GOTO 2030
2070 END