Re[2]: [cc65] First Try of CBM File-IO

Date view Thread view Subject view

From: groepaz (groepaz_at_gmx.net)
Date: 2001-08-13 18:14:47


Hello MagerValp,

g>> you should _NEVER_ use that "@" method to overwrite a file (there is a
g>> known bug in some 154x drives' kernal that sometimes causes broken
g>> files on the disc)

M> Actually it nukes track 18 :/ But doesn't @0: get around that bug?
M> IIRC it's due to old 1541:s' dir cache being confused about drive 0
M> and drive 1 (which doesn't exist). The bug also doesn't exist in
M> 1541-II, 1571, 1581, and drives with JiffyDOS.

well no THAT is yet another problem (which is much less critical
actually) ... the 'real' bug is when you have a disc that has only
little free blocks, less than needed for the program you want to
overwrite that is.... the DOS doesnt actually 'overwrite' the blocks
already in use by the other file (the one you are overwriting), but
first saves the new blocks to disc (creating a new file chain) and
THEN kills the old (no more needed) blocks..... obviously this
approach is doomed to fail ;=) i guess the DOS does it coz when an
error occours while overwriting, the old file would still be there and
useable. (which isnt the case if you scratch the old file in advance
or 'really' write over it)

oh and the other bug... "18:01 read error" .... its not tied to
overwriting files, its tied to writing files in general (and it
is present in every kernal i have seen so far - even the newest)

you can recover the 18:01 error more or less easily though by using
some "unformat" tool.... since it doesnt really fuck up important data
(just the directory).... the "@" bug on the other hand DOES fuck up
important data (always hits the most important file on the disc, you
know it ,=)) so it is really highly recommended to fight this bug in
all your applications (you cant really do anything about the 18:01 bug
since the only way to 100% avoid it would be not writing any files at
all ;=))

-- 
Best regards,
 groepaz                            mailto:groepaz_at_gmx.net


----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.


Date view Thread view Subject view

This archive was generated by hypermail 2.1.3 : 2001-12-14 22:05:41 CET