UI.MIKE@cu20b.arpa (Michael Ardai) (09/26/85)
A warning about using wildcards (*) on Commodore 1541 DOS: deleting *1.6 will delete all of the files on the disk, not just the ones ending in 1.6 Michael L. Ardai Columbia University Center for Computing Activities ARPANET: UI.Mike@CU20B.ARPA Bitnet : MIAUS @CUVMA Usenet : ...seismo!columbia!cucca!mike USnail : 803 Watson Labs, 612 West 115th Street, New York, N.Y. 10025 -------
CHIASSON@DREA-XX.ARPA (Don Chiasson) (09/29/85)
A potential problem with C64 DOS was noted: > From: Michael Ardai <UI.MIKE@cu20b.arpa> > > A warning about using wildcards (*) on Commodore 1541 DOS: > deleting *1.6 will delete all of the files on the disk, not just the > ones ending in 1.6 > I made this mistake of misinterpreting how wild carding worked. I did a delete *A, and noted that it took a long time. A directory of the disk showed what happened, that all my files had been deleted. I immediately write protected the disk so nothing would change, and went and read the 1541 book. On page 26, it talks about the directory format. Note that when a file is deleted, all DOS initially does is to change byte zero in the directory entry to zero. I then got my disk utility that lets me examine and change individual sectors on disk. Changing the values of byte zero on all the files let me undelete them. Three notes: First, I did not write to the disk after I made my original mistake. If I had, I would have overwritten some of my data. Second, when doing the disk debugging, I did NOT do it on the original disk. I used a disk copy utility to copy all the original disk to another disk and worked on the new one. I didn't blow it, but it is easy to make mistakes at this level. Finally, it took a couple of passes to get it right. Byte zero tells what kind of file it is (SEQ, PROG, etc), and some programs care. I hope I was of some help. Good luck, Don -------