IDEバスの調査・解析
SP808とロジアナを接続して動作を調査中。IDE(ATA)バスはホストがATAコマンドを接続されたHDDなどのデバイスに送って各種の動作を行うみたい。IDEは最大2台までデバイスを繋げられる(MASTER,、SLAVE)がSP-808は1台で固定されているので色々と省略されているかも。電源ONから全ての動作を調べるのは大変なのでZIPディスクに関係するところを先に調べようと思う。
ZIPドライブをPCに接続した場合のATAコマンドの流れは以下のとおり。
ディスク挿入時
「GET MEDIA STATUS」→「READ VERIFY SECTORS」→「IDENTIFY DEVICE」
ディスクRead/Write
「READ SECTOR(S)」/「WRITE SECTOR(S)」
ディスクイジェクト
「MEDIA UNLOCK」→「MEDIA EJECT」
これらのコマンドが発行される前にバスの状態を調べたりパラメータをレジスタに入れたりする必要がある。たとえばFUTUREコマンドでは「SUB COMMAND 」をATAレジスタに書き込んでからコマンドを発行する必要がある。コマンドのコードがデータバスに現れたらコマンド発行・・・ではなく結構動作が複雑なのでなかなか目的のコマンドでトリガーが掛からない。
ATAコマンドでトリガーをかける
/DIOWが立ち上がったところのデータバス下位8ビットがATAコマンドになるが、他のコマンドのパラメータで同じ値になる場合が有るかもしれないので前後の信号線やバスの状態で推測する必要がある。
とりあえず色々波形を録ってみたが今のところ目的のコマンドが見つかっていないので、もう少しトリガー条件を組みなおして録ってみたい。
この記事が気に入ったらサポートをしてみませんか?