中学校の頃、プログラミングの勉強をしたかった私は、親にPCをねだりましたが、裕福な家庭ではありませんでしたので、買ってもらえませんでした。家でノートにプログラムをコーディングし、それを中学校にあったPC-8001mkⅡに入力し、プログラムを学習していました。20年近く前の事です。
その後、MSXというパソコンがあると知ったのですが、PC-8001mkⅡやPC-8801mkⅡSR,PC-9801VM等のNEC製コンピュータから入った私には、MSXはゲーム機の拡張版みたいなもので、コンピュータとしてみていませんでした。
その後、MSX界にシューティングの傑作「GRADIUS2」が発売され、そのゲーム遊びたさにMSXを手に入れ、他のKONAMIの名作ゲーム群の前に私はずぶずぶとMSXの沼にはまっていきました。私とMSXとの付き合いはそうして始まるのですが、当然プログラムの勉強もMSXでやりましたので、今の私があるのはMSXのおかげといっても過言ではないのです。
時代は、Windows一色となり、あの頃のような個性的なPCはなくなりました。ハードの進化により、PC上でエミュレータで動くMSXが開発され、気軽にMSXが楽しめるようになりました。
エミュレータの仮想ディスクは、ファイルシステムの勉強になると思い、以前仮想ディスクのファイルを直接Windowsのエディタで編集、書き込みできるツールを開発していました。(未完成、未公開)
その頃のノウハウを活かして、C#で何か作ってみたい、そういえばMSXのFDの仮想化ツールで正式にWindows10を謳っているツールは少ないので、作ってみようと思い立ったのが「MSX Floppy Disk Manager」です。
2019年4月に開発を始めたのですが、
- 実FDから仮想FDの作成
- 仮想FDイメージの書き戻し
- 仮想FD内のファイルのWindowsとのやりとり(コピー&ペースト、削除)
の実装を目指して開発をスタートしました。
作成し始めた頃は、FDのイメージ読み書きにRAWデバイスアクセスが必要だとか知りもせず、この後、色々とはまる事になるのですが、Google先生、TwitterのMSXヘビーユーザの方々の力もお借りしながら、技術的な事を少しずつ解決してきました。
その過程を、Blogにまとめることで皆さんに還元できればと考えています。