2010/02/18時点では,単に指定した位置を読み書きしてるだけで,実用性のあるコードにはなってないです><
ソースはgithubに.
処理内容は読み込みとほぼ一緒で,論理セクタの設定方法は,あたりまえだけど,読み込み時とまったく一緒です.
読み込み時はコマンドレジスタに0x20を書いて,読み込みを実施しますが,書き込み時は0x30を書きます.
後は,16bitずつデータを読むところを16bitずつデータを書き込んであげればOKです.
仮想HDD上のテキストファイルのデータを
0001bc00 41 42 43 44 45 0a 00 00 00 00 00 00 00 00 00 00 |ABCDE...........| 0001bc10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
こんな感じに書き換えることに成功しました.
0001bc00 61 62 63 64 65 a0 00 00 00 00 00 00 00 00 00 00 |abcde...........| 0001bc10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|