These are the values found in the 'last version' of NitrOS-9 v3.3.0 for Dragon64:fridgemagnet wrote:Here's the relevant bit from one of the offending disks:
0000100: 0005 a012 00b4 0001 0000 1200 00ff add9 ................
0000110: 0300 1200 0000 0000 0000 5806 0c11 0a50 ..........X....P
. . . . . . . . . . FILENAME . . . . . . . . . . . . Bytes 0-2. . . .Byte 3 . . .Byte 7 . . . . . .Byte 16. . .
nos96809l1v030300d64_40s_1.dsk . . . . . . $0002D0 . . . . . 12 . . . . . . 01 . . . . . . . . . 02 . . . . So Total = $12 * 40 *(01) * (1 + 02.bit0) = 720 => $02D0
nos96809l1v030300d64_40d_1.dsk . . . . . . $0005A0 . . . . . 12 . . . . . . 01 . . . . . . . . . 03 . . . . . . . . . . = $12 * 40 *(01) * (1 + 03.bit0) = 1,440 => $05A0
nos96809l1v030300d64_80d.dsk . . . . . . . $000B40 . . . . . .12 . . . . . . 02 . . . . . . . . . 03 . . . . . . . . . . = $12 * 40 *(02) * (1 + 03.bit0) = 2,880 => $0B40
So, I can see that the info is absolutely consistent (as is in your disk too):
The number of total sectors (bytes 0-1-2) equals the result of the formula that simply doubles the default 720 number of sectors if byte_16.bit0 is set
and doubles again if byte_7 equals 2 (number of sectors per cluster, maybe number of sides(?))
So I don't see any reason for that disk to fail when copying from a floppy to a VDK file unless it had a damaged sector (?)
Both dweebs do only accept offsets 0-1-2 if they are one of the three above mentioned values, else an error message is sent and the program ends.
If it's OK, then it uses $C026 to read floppy sectors passing the 'absolute' sector number in register Y (no worry about track-sector numbers)
If there were an error, it should be caught ... if the DOS had signaled it by setting register B to something different than 0.
cheers
pere
Ps. I have downloaded the file you added to your last message and will look at it to see what could be used in these dweebs.