- also check that load "<filename>",8,1 would work
Regarding 2nd byte in the last block of dir, shouldn't that always be $ff?
Quoting tlr- also check that load "<filename>",8,1 would workPlease elaborate. Do you mean a special check option to make sure that a given filename can be loaded?
I ment that it should check if loading the filename listed in the directory will actually work, e.g by adding load and ,8,1 to what is listed when doing load "$",8 (or $, DOS"$, etc...) I think it would be good if it performs checks that load also works for popular traditional carts like FC3, AR6 and such in case there are filename limitations there. Maybe a load address check too to flag things like needing ,8,1 for a file that is supposed to be basic runnable, e.g load address is $0800.
Quoting tlrMaybe a load address check too to flag things like needing ,8,1 for a file that is supposed to be basic runnable, e.g load address is $0800.Can you detail those checks? It all seems awfully close to trying to solve the halting problem, imho. =)
Maybe a load address check too to flag things like needing ,8,1 for a file that is supposed to be basic runnable, e.g load address is $0800.
The interesting thing here is that there seems to be a bug in 1541's DOS 2.6, such that blocks aren't all-zeroes after format. The first byte may be anything. Apparently some off-by-one thing.
IIRC a DOS 2.6 formatted disk always gives an initial $4b, followed by all $01's.
Quoting tlrIIRC a DOS 2.6 formatted disk always gives an initial $4b, followed by all $01's.Yes about the $01s, but at least in VICE, the first byte can also be $00 or $08 (seen on track 1 after format).
FC86: E8 INX FC87: 8A TXA FC88: 9D 00 05 STA $0500,X FC8B: E8 INX FC8C: D0 FA BNE $FC88 ... FC9E: A9 05 LDA #$05 FCA0: 85 31 STA $31 ; buffer pointer to $500 FCA2: 20 E9 F5 JSR $F5E9 ; calculate parity for data buffer FCA5: 85 3A STA $3A ; and save FCA7: 20 8F F7 JSR $F78F ; block -> GCR