On 9/16/2020 1:21 PM, John R. Hogerhuis wrote:
" LaddieAlpha in RequestReadBlock() looks like it would just send back a 0x10 0x00 <CHKSUM> response, but command.tdd notes the read should send an EOF error if the file is finished."

Oh, you're talking about eof error, missed that.

Actually that sounds familiar. I'm pretty sure that I fixed a read-past-end issue in my unreleased version.
Any chance a release (or source dump) is forthcoming?
I think that was a bug I fixed while working on getting STARDISK to work (NEC 8401A/8500). STARDISK was reading past the end.

I added in the code to return it (or at least what I think *IT* is, since the wiki says ERR_EOF is 0x3f) if the condition develops (and sets state to IDLE).

Right now, (since you're listening), most of the TPDD.cs I grok, but I am wondering about a few things:

 * In FOrmatDirResponse, 0x1e is for a file larger than $ffff, I
   assumed that's an extension.
 * If the file < ffff, you send 0x9d as the sectors free, but I see
   other guidance saying just send 0x80 back.  Why 0x96d?
 * I assume the 'P', the len >> 24 and the len >> 16 is to send the
   upper 2 bytes of the > ffff size file, but why big endian when the
   original code was small endian?  And, is this part of the extension
   previously defined?
 * In SelectFile, it looks like the select code always tries to look
   for matches in the root dir that of DOS*.CO format.  Is there a reason?
 * Is reference.previous an extension?  Regardless, is there an app
   that uses it (PDDuino doesn't have that functionality, but I would
   like to add and test).
 * Not sure I see why there is an option for a FilteredRead in
   RequestReadBlock.  Is there more docs on this?

Jim

Reply via email to