On 4/21/23 09:50, Stephen Adolph wrote:
Hi,
Does anyone know of an example of tpdd1 sector access code?
Thw software manual is ok but actual working code is better.
Thanks
Steve
The software manual actually lays it all out.
pdd.sh does client-side sector access for both tpdd1 and 2
https://github.com/bkw777/pdd.sh
dlplus does server-side sector access for both tpdd1 and 2
https://github.com/bkw777/dlplus
The bash code in pdd.sh is probably hard to read, so I am willing to
explain it in some other posts or off-list.
Or better yet, write up stuff in the discussions or wiki feature on github.
like
https://github.com/bkw777/dlplus/wiki
or
https://github.com/bkw777/dlplus/discussions
That way the documentation that gets written up is still there for
others later.
enabling debug to higher levels essentially prints the bytes that go
over the wire so you could then figure out your own way to do the same
thing. But some of it is timing dependant and some of it involves rules
where just looking a the traffic doesn't necessarily show what makes
some things valid vs invalid.
The real drive is a strict and crude state machine with practically no
give or self-recovery. Once you do almost anything unexpected or
illegal, it generally just locks up and the only fix is to power-cycle
the drive, so it means that writing a reliable client involves being
super careful to never go outside the lines in the first place, since
there's no sort of reset or retrain command you can send from the client
in a lot of cases.
I'll send a separate post with an example and explaination of the
sequence of a transaction.
--
bkw