[net.micro.pc] CHMOD for DOS 2.0

jph@whuxlb.UUCP (Jim HOLTMAN) (08/22/83)

 Latest copy of CHMOD with error messages
This BASIC program creates a file CHMOD.COM which is a
'change mode' command (CHMOD) for DOS 2.0. It expects 2
parameter (file name and attribute in HEX). The
allowable attributes are:

	1 - read only (cannot be DELeted)
	2 - hidden
	4 - System file
       20 - set archive bit

Add up appropriate values.

Example
	chmod file 1	#make read only
	chmod file 3	#make hidden and read only
 ===============================
 10 CLS:PRINT"This basic program was created by CONVERT.BAS":KEY OFF:DEFINT A-Z:FALSE=0:TRUE=NOT FALSE
 20 PRINT"Copyright 1983 ,Rich Schinnell Rockville,MD. Not for Sale."
 30 PRINT "This program will create  you a program named CHMOD.COM":PRINT 
 40 ON ERROR GOTO 5000
 50 INPUT "PLACE the disk to write the file TO in Drive A: Press <ENTER> "; CAPITAL$
 90 CLS:LOCATE 12,5:PRINT "Now writing file named CHMOD.COM standby please  "
100 RESTORE
110 OPEN "R", #1,"CHMOD.COM",1 
120 FIELD #1, 1 AS N$
130 READ N:LL=(N/28)+1
140 FOR I = 1 TO N
150 READ X$,CHECK:FOR C=1 TO LEN(X$) STEP 2:CC$="&H"+MID$(X$,C,2):IF CHECK=9999 THEN 170
155 LSET N$=CHR$(VAL(CC$)):PUT #1:CHECK=CHECK-VAL(CC$):NEXT C:IF CHECK<>0 THEN 5000
160 LOCATE 14,5:PRINT TIME$;" Reading data line #";(1000+I);" lines left=";LL-I;:NEXT I:CLOSE
170 LOCATE 16,5:PRINT "CHMOD.COM CREATED * *":GOTO 5010
1000 DATA  253
1001 DATA FC33EDFE0E80007C6C8A0E800032EDBF8200B020F2AE7555C645FF00,3404
1002 DATA 8BDF880E8000803E8000007E268A07B91000BF7E01F2AE750D81EF7F,2827
1003 DATA 01B90400D3E503EFEB06BA8E01EB319043FE0E8000EBD3B801438BCD,3375
1004 DATA BA8200CD2173103D02007505BABD01EB03BACF01EB0E90EB06BAA701,2866
1005 DATA EB0690EB07BAA701B409CD21CD203031323334353637383941424344,2436
1006 DATA 454607496C6C6567616C20484558206368617261637465720A0D2407,2144
1007 DATA 546F6F2066657720706172616D65746572730A0D240746696C65206E,2360
1008 DATA 6F7420666F756E640A0D24074163636573732064656E696564202D20,2217
1009 DATA 70726F6261626C7920696C6C6567616C206174747269627574650A0D,2656
1010 DATA 24,36
1011 DATA 000000,9999
5000 PRINT "* * ERROR VERIFY FOLLOWING DATA * * * "
5005 PRINT X$;",";CHECK 
5010 KEY ON:CLOSE:END