Compucolor.org – Virtual Media

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

100 REM  ** CHANGE DIRECTORY NAME **
110 REM
120 REM  ** MOVE END OF BASIC BACK 130 BYTES
130 AD= PEEK (32941)* 256+ PEEK (32940):AD= AD- 130
140 POKE 32941,INT (AD/ 256):POKE 32940,AD- INT (AD/ 256)* 256
150 CLEAR 200
160 REM
170 REM  ** FIND NEW END OF BASIC
180 AD= PEEK (32941)* 256+ PEEK (32940):A= AD+ 1
190 REM
200 REM ** CONVERT ADDRESS TO HEX
210 V= INT (A/ 4096):A= A- V* 4096:GOSUB 250
220 V= INT (A/ 256):A= A- V* 256:GOSUB 250
230 V= INT (A/ 16):A= A- V* 16:GOSUB 250
240 V= INT (A):A= A- V:GOSUB 250:GOTO 330
250 IF V< 10THEN ADR$= ADR$+ RIGHT$ (STR$ (V),1)
260 IF V= 10THEN ADR$= ADR$+ "A"
270 IF V= 11THEN ADR$= ADR$+ "B"
280 IF V= 12THEN ADR$= ADR$+ "C"
290 IF V= 13THEN ADR$= ADR$+ "D"
300 IF V= 14THEN ADR$= ADR$+ "E"
310 IF V= 15THEN ADR$= ADR$+ "F"
320 RETURN
330 REM
340 REM ** READ FIRST BLOCK OF DISK INTO MEMORY
350 PLOT 27,4:PRINT "READ 0 "+ ADR$+ " 0080":PLOT  27,27
360 REM
370 REM ** FIND THE CURRENT DIRECTORY NAME
380 FOR I= AD+ 4TO AD+ 13:X= PEEK (I):N$= N$+ CHR$ (X):NEXT I
390 PRINT
400 PRINT "THE CURRENT DISK NAME IS: ";N$:PRINT
410 REM
420 REM ** REPLACE OLD NAME WITH NEW NAME
430 INPUT "ENTER THE DESIRED NEW NAME: ";S$
440 IF S$= "0"OR S$= ""THEN 530
450 IF LEN (S$)> 10THEN PRINT "NAME TOO LONG":GOTO 430
460 S$= S$+ "          ":J= 0
470 FOR I= AD+ 4TO AD+ 13:J= J+ 1
480 X= ASC (MID$ (S$,J,1)):POKE I,X:NEXT I
490 REM
500 REM ** WRITE THE BLOCK BACK TO THE DISK
510 PLOT 27,4:PRINT "WRITE 0 "+ ADR$+ " 0080":PLOT  27,27
520 REM
530 REM ** PUT END OF BASIC BACK WHERE IT WAS
540 AD= AD+ 130
550 POKE 32941,INT (AD/ 256):POKE 32940,AD- INT (AD/ 256)* 256
560 CLEAR 100