[English] [Japanese]

Linux CD-ROM ゲームシステム

 
  YAMAMORI Takenori ●yamamori@kt.rim.or.jp

●FDにゲームのデータがセーブされるようにする

ここで、ゲームのデータがFD上にセーブされるように修正を行なう。 FDは、マウントポイントとして/tmp/gamefdというディレクトリを作り、 ここにマウントするようにする。 /tmp/gamefdというディレクトリは、あとでCD-ROMになった場合でも ここはRAMディスクとなり、書き込み可である。 したがって、たとえFDを挿入しなかった場合でもデータは /tmp/gamefdディレクトリに書き込まれ、 マシンを起動している間はデータは保存される。

セーブデータの具体的なファイル名はゲームによって異なるが、 circuslinuxの場合は$HOME/.circuslinuxというファイルになる。 実際には、シングルユーザモードで、HOME=/rootの状態で実行されるので、 /root/.circuslinuxとなる。 これをシンボリックリンクでFD上に飛ばすようにする。

なお、FDの論理フォーマットは、Linuxユーザとしてはext2にしたいところだが、 ここは汎用性を考えて、DOSフォーマットにする。 ファイル名も、いわゆる8.3形式に収まるように変更してシンボリックリンクする。

具体的には以下のような手順になる。

----
# cd /root
# rm .circuslinux
# mkdir /tmp/gamefd
# ln -s /tmp/gamefd/circus .circuslinux
----

なお、Linux上でもDOSのファイルシステムのFDが作成できるよう、 以下のパッケージをVineのCD-ROMからインストールしておくとよい。

# rpm -ivh mkdosfs-ygg-0.3b-11.i386.rpm

物理フォーマット済みのFDをDOSファイルシステムに論理フォーマットするには 以下のようにコマンドを実行する。

# /sbin/mkdosfs /dev/fd0

そしてDOSのFDをドライブに入れ、手動で以下のようにしてマウントする。

# mount -t vfat /dev/fd0 /tmp/gamefd

そしてこの状態で、rootcircuslinuxを起動して、終了してみる。 するとFD上にcircusというファイル名でセーブデータがセーブされたはずだ。


To 『Linux CD-ROM ゲームシステム』index


このページは、(株)アスキー TECH Linux Vol. 2 『CD-ROMだけですぐに遊べる! Linux ゲームシステム全解説!!』の原稿を元に、Web 用に再構成したものです。
To 謎の処理系 SunOS 4.1.4 Home
YAMAMORI Takenori 山森丈範
yamamori@kt.rim.or.jp