[Coco] DW4 problems
Bob Devries
devries.bob at gmail.com
Tue Oct 23 05:39:52 EDT 2012
Aaron,
at this time the FIFO is set to one character. I tried with the FIFO off,
but no go.
What I want to try is to connect to one of the serial ports on this PC
(yeah, I have real serial ports, too). I just need to make up a cable.
I think your idea about an extra character being inserted into the stream is
a possibility, but where? Is it possible that the coco driver is
malfunctioning somehow?
Regards, Bob Devries
Dalby, QLD, Australia
----- Original Message -----
From: "Aaron Wolfe" <aawolfe at gmail.com>
To: "CoCoList for Color Computer Enthusiasts" <coco at maltedmedia.com>
Sent: Tuesday, October 23, 2012 7:08 PM
Subject: Re: [Coco] DW4 problems
On Tue, Oct 23, 2012 at 4:23 AM, Bob Devries <devries.bob at gmail.com> wrote:
> Some more interesting things: It may be coincidence but...
>
> I got this error:
>
> Tue Oct 23 2012 17:46:26.218 WARN DWProtocolHandler dwproto-0-10
> DoOP_WRITE: Bad checksum, drive: 2 LSN: 159015 CocoSum: 23 ServerSum: 6127
>
> Please note that the HEX value of the Coco checksum is $17, and that of
> the
> server is $17EF. Note also that the next line:
>
> Tue Oct 23 2012 17:46:26.218 WARN DWProtocolHandler dwproto-0-10
> UNKNOWN OPCODE: 239 ï
>
> The hexadecimal of 239 is....$EF
>
> Coincidence? Could be...
> In cases where I get a checksum error, it appears that when converted to
> hexadecimal, the first byte of the server checksum is the same as the
> second
> byte of the coco checksum. Makes you wonder, right?
>
>
in an op_write, the coco sends 262 bytes:
Byte Value
0 OP_WRITE ($57)
1 Drive number
2 Bits 23-16 of LSN
3 Bits 15-8 of LSN
4 Bits 7-0 of LSN
5-260 256 bytes of sector data to write
261 Bits 15-8 of checksum (computed by CoCo)
262 Bits 7-0 of checksum (computed by CoCo)
this is a fixed size operation, so the server always reads 262 bytes as
well.
Is the first byte of the coco checksum (as reported by DW) always 0?
If the checksums line up otherwise, we're getting an extra byte from
somewhere but the data bytes are transferring OK (or the checksums
would be different).
Assuming that's correct, it almost means it has to be an extra 0 (or
non zero if you've seen that) *after* the sector data and *before* the
coco sends its checksum. This would mean somehow a byte is coming out
of nowhere.. I think I am even more suspicious of the buffering in
your adapter now. If you have any way to swap it out, I think that
will be a very good test to do next.
--
Coco mailing list
Coco at maltedmedia.com
http://five.pairlist.net/mailman/listinfo/coco
More information about the Coco
mailing list