初めてお目にかかります。
今、PC98で書き込みを行ったフロッピーディスクを読み取るプログラムを作成しています。
インターネットにて調べて見ましたが、うまくいかない状態です。
問題点等あれば教えていただきたいと思います。
実行環境:Windows XP SP2
ドライブ:LOGITEC LFD-31U4 (USB:3モード)
開発言語:VC++(VS2005にて)
BOOL Direct_Drive_Access(char *Drive){
HANDLE hHandle;
DISK_GEOMETRY disket;
DWORD dw1;
BOOL ret;
//ハンドルの取得
hHandle = CreateFile(Drive,GENERIC_READ , FILE_SHARE_READ,NULL,OPEN_EXISTING, NULL, NULL);
if ( hHandle != INVALID_HANDLE_VALUE ){
//FDの情報を取得
ret = DeviceIoControl(hHandle,IOCTL_DISK_GET_DRIVE_GEOMETRY,NULL,0,&disket,sizeof(disket),&dw1,NULL);
if (!ret) return FALSE;
}
}
上記のソースにて取得したdisketの内容が、1.44MBのフロッピーでした。
(この情報だと、次のReadFile関数で"1785:フォーマットされていません"のエラーが返ります)
実際は、Cylinder - 77 Track - 2 Sector - 26 Byte - 256
でフォーマットしているフロッピーです。
BIOS経由のアクセスも調べましたが、32bitOSのため、使用できない様でした。
これから何を調べていいかも分からない状態なので、アドバイスをお願いします。
No.3ベストアンサー
- 回答日時:
>Cylinder - 77 Track - 2 Sector - 26 Byte - 256
ということは、N88DISK-BASICなり(FDの場合、Cylinder, HeadまちたはSurface, Sector)、IBM互換なりのフォーマットですよね。とすると、Cyliner0 Head0は単密度でセクタ長は128なので、Nが変わりますが、これは大丈夫ですか(Head1は倍密度だったと思う)。
なお、3モードはドライバが組み込まれていれば、OSからはパラメータ変更だけでINITかければ使えると聞いたことがあります(やったことはない)
DOSの領域のディスクを作って、FD起動でDOS立ち上げてCからATのシステムコールを使った方が簡単だと思うなあ
この回答への補足
>N88DISK-BASICなり(FDの場合、Cylinder, HeadまちたはSurface, Sector)、IBM互換なりのフォーマットですよね。
ご指摘の通り、IBMフォーマットのディスクをPC98のFD-BIOSで書き出したファイルです。
16bitのときにはBIOSのINT13Hのコールでよさそうですが、NT系のOSでもしかしたらサポートして無いかな?
と思い質問いたしました、32bitの場合は難しそうですね…
他のファイル変換ソフトを使用し、バイナリダンプ作成後に処理を行う等の方法を検討してみます。
ありがとうございました。
No.2
- 回答日時:
NNo1です。
引き続き・・・「Windows XP は 1.44 MB ディスク形式のフォーマットのみをサポートします。3 モード フロッピー ドライブ (720 KB、1.2 MB、および 1.44 MB 3.5 インチ フロッピーディスクを読み書き可能なドライブ) は特別なドライバのサポートが必要であり、Windows XP ではサポートしていません。」
http://support.microsoft.com/default.aspx?scid=k …
だそうです。。。
かくなる上は、ハードウェア直接制御、でしょうか。。
ドライバとか作らないと、無理そうですね。。
参考URL:http://support.microsoft.com/default.aspx?scid=k …
この回答への補足
返事が遅くなり申し訳ありません。
ドライバ…難しいですね…
XPではドライバ無しでは1.25MBは読めないみたいですね…
考慮して再度考えて見ます。
ありがとうございました。
No.1
- 回答日時:
「フォーマットされていません」ということは、
rawアクセスできていないのではないでしょうか?
デバイス名はあってますか?
http://support.microsoft.com/kb/100027/ja
参考URL:http://support.microsoft.com/kb/100027/ja
この回答への補足
YAMAMAYAさん
早速の回答ありがとうございます。
デバイス名は"\\\\.\\A:"を渡しており、試しに1.44MBの
フロッピーでプログラムを実行した所、ReadFileまで
正常に動作しました。
DeviceIoControlで、1.44MBのフロッピーを読んでも、1.25MBの
フロッピーを読んでも結局同じdisketが返ってきてしまいます。
1.25MBのダイレクトセクタアクセスは出来ないのでしょうか…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ローカルディスクCとボリューム...
-
RAID解除したHDDを初期化できない
-
BD-R、BD-REのフォーマットがで...
-
PC-9821のフロッピーを開く方法...
-
WindowsのDドライブをフォーマ...
-
物理フォーマットした、MO
-
PostgreSQLがインストールでき...
-
アクセスが拒否されまましたと...
-
フロッピーディスクドライブの...
-
CD-R フォーマットのし方
-
ハードディスク(Cドライブ)の...
-
Dドライブのフォーマットができ...
-
DVD-RAMへのExcelデータの保存方法
-
CD-RW、フォーマット後、...
-
DELL VOSTRO230 のOS再インス...
-
MOのフォーマットはFAT16ですべ...
-
コムテク製ドライブレコーダー...
-
HDDクローン作成、CドライブがB...
-
VBA PDFファイル印刷後のAcroba...
-
XPローカルプロファイルがたび...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ローカルディスクCとボリューム...
-
BD-R、BD-REのフォーマットがで...
-
CDRの中身を確認したい
-
CD-RW、フォーマット後、...
-
ハードディスク(Cドライブ)の...
-
ワープロのフロッピーをPCで...
-
フロッピーディスクのフォーマ...
-
動画ファイルが移動できない
-
テレビ録画のUSB-HDDをPC用に戻...
-
RAID解除したHDDを初期化できない
-
OSが入ったハードディスクのフ...
-
数年前にps4の読み込み速度が上...
-
HDDのフォーマット中
-
物理フォーマットした、MO
-
windows95のFD版について
-
空のCD-Rのみ認識しない。...
-
CD-R フォーマットのし方
-
PC-9800用のA列車で行こう(3)...
-
WindowsXPの入っているCドライ...
-
WindowsのDドライブをフォーマ...
おすすめ情報