~PC-8801
エミュレータ for UNIX/X11+SDL~
QUASI88とは | 機能紹介 | 使い方 | ダウンロード | スクリーンショット | 履歴 | 雑記帳 | お問い合わせ |
---|
ver 0.7.0 と、ver 0.7.1 の主な違いは以下の通り
64bit対応 (いまさらですが)
64bit版FreeBSD/Linux で fmgen + サウンドボードII (-fmgen -sd2)
を指定するとハングアップするバグも修正しています。
Makefile で設定ファイルなどのディレクトリ位置を指定できるようにしました (UNIX版)
ver 0.6.4 と、ver 0.7.0 の主な違いは以下の通り
SDL2 に対応
SDL2 以外の環境については非対応となります。
キーの割り当てを変更
SDL2 の対応に伴ってキーの処理を変更したため、一部のキーの
割り当てを変更しました。
左Altキーが「GRPH」、右Altキーが「カナ」、を基本としています。
MAME
サウンドドライバのリズム音を外部ファイルから読み込むように変更
リズム音ファイル「ym2608_adpcm_rom.bin」が必要となります。
ファイルがない場合、リズム音は鳴りません。
アイコンを新規に作成
ファイルの文字コードを UTF-8 に統一
clang や gcc でちゃんとコンパイルできるように修正
ver 0.6.3 と、ver 0.6.4 の主な違いは以下の通り
全体のループ処理シーケンスを変更
ソースコードを整理するために、ループ処理部分を見直しました。
これにより、リセットの処理や、サウンド出力タイミング、割り込みタイミングなどが従来よりも微妙に変わっております。
(もしかすると、動かないアプリケーションがでてくるかも…)。
また、モニターモードの一部機能が正常に動作しないかもしれません。
描画処理の変更
OS依存部、非依存部の処理を見直しました。また、若干高速化をしています。
UNIX/X11 版では、 XVideo に暫定対応 (RGBフォーマットのみ)
しました。(全画面表示ができる…ハズ)
サウンドドライバの更新
MAME 0.112/XMAME 0.106 のサウンドドライバを移植しました
(かなり古いバージョンですが、UNIX対応なのはこれが最終っぽいので…)。
コンパイル時に、従来のバージョンを組み込むこともできます。
シリアルマウス対応
ちゃんと動くかどうか怪しいですが・・・
ちょっとだけバグフィックス
FDC の SENSE INT STATUS 動作を修正/サウンドボードII
のADPCMレジスタ設定処理を修正
メニューモードを一部変更
メニューモードの操作性を若干変更しました (GTK や Windows
を真似てみました)
サウンドデバイスの設定を変更できるようにしました
(mame/fmgenの切り替えもできます)
ジョイスティックを2台まで使用できるようにしました
設定を保存できるようにしました
UTF-8 のファイル名を表示できるようにしました
(UNIX版。例によって、独自実装で、検証は不十分です)
WAV形式で、サウンド出力をファイル保存
GTK+1.2 および Win32API に実験的対応
ver 0.6.2 と、ver 0.6.3 の主な違いは以下の通り
キーボード処理の修正
正しいキー入力ができない問題 (主にウィンドウズ版)
を修正しました。
他にも、キー配置を設定ファイルでカスタマイズできるようにしてみました。
メニューモードの修正
メニューモードで、1000個以上ファイルのあるディレクトリを開くとメモリ不足で強制終了する問題を解決しました。
一部のファイル名が化ける現象も修正しています(ウインドウズ版)。
ver 0.6.1 と、ver 0.6.2 の主な違いは以下の通り
割り込みの発生条件と発生タイミングを見直し
VSYNC・RTC・サウンド割り込みの発生条件(割込マスク、割込優先度、割込クリアタイミングなど)を大きく見直しました。
ローグのテキスト崩れや、イースのボス戦でのサウンド停止が直っています。
かなり広範囲に影響が及ぶ修正なので、今まで動いていたアプリケーションが動作しなくなる可能性があります。
FDCの一部の処理(SEEKやREAD DIAGNOSTICなど)を修正
FDC の SEEK動作、READ
DIAGNOSTIC動作、エラー時のステータスなどを修正しました。
(プロテクトにひっかかっていたいくつかのアプリケーションが動作すると思います)。
また、旧バージョンで見つかった(めったに発生しない)バグについても修正しています。
マウス処理(移動量の設定タイミング)を修正
ver 0.6.1のバグフックス
ver 0.6.0 と、ver 0.6.1 の主な違いは以下の通り
ver 0.6.0 のバグフィックス
-cpu 1
オプション指定時に、メニューに入ると動作速度が落ちるバグ修正。
ソフトウェアNumLockが効きっぱなしになるバグ修正。
ブレークポイントが効かないバグ修正。
VSYNC・RTC割り込みのタイミングを若干変更
この変更のせいで、今まで動いていたアプリケーションが動作しなくなった場合はご連絡ください。
ver 0.5.5 と、ver 0.6.0 の主な違いは以下の通り
X11版 と SDL版 で、ソースコードを統合
画面表示やキー入力を中心にソースの見直しを行い、X11版とSDL版を統合しました
(よって今後はSDL版単独でのリリースはしないと思います)。
他にもあちこち、気のおもむくままにソースを修正したため不具合がでるかもしれません。機能的には変化はないはずです。
もしかすると若干処理速度があがっているかもしれません。(下がってたりして…)
PCG-8100対応 (表示のみ)
PCG-8100についてはよく知らないので、適当な実装です。作者はPCG-8100対応ソフトをもっていないので、ネット上に公開されている
PCG-8100対応イメージで動作確認しました。
サスペンドあらためステートセーブ機能を改善
以前までのバージョンではサスペンドと呼んでいた機能ですが、ステートセーブという一般的な呼び方に変えます。
テープイメージのアクセス中にちゃんとステートセーブできない問題を修正しました。(もっとも、エミュレータの設計上、
テープやディスクイメージのアクセ
ス中にステートセーブしないほうがいいと思います)
起動時だけでなく、起動後もメニューからステートロードできるようにしました。
設定ファイルなどのディレクトリ位置を変更
設定ファイルが ~/.quasi88rc から、 ~/.quasi88/quasi88.rc
に変更になりました。
また、起動時に指定したディスクイメージにあわせて、個別の設定ファイルを
~/.quasi88/rc/????????.rc から読み込むようになりました。
ステートファイルの保存先ディレクトリも ~/.quasi88/sta/
に変更しています。
Windows版やMacintosh版でも同様な変更を行っています。
ウインドウ下部に、ステータスを表示
今までどおり F11キー
でオフできます。従来のステータス表示や、起動時のロゴは無くなりました。
スクリーンスナップショットのフォーマットにBMP形式を追加
カーソルキー/ジョイスティック/マウスの移動に任意のキーを割り当て可
マウスを移動させることでテンキー入力なんてことができます。いや、特に意味はないですが…
カナをむりやりひらがなで表示する
単なるお遊びの機能です。内蔵フォントのデザインも一新しています。(相変わらず汚いです)
フォントも隙間を空けて表示するインタレース表示を復活
隙間を全く空けない、フォントだけは隙間を空けない、常に隙間を空ける、のいずれかの表示が選べます。
Mac用のファイル操作処理をソースに追加
(apaslothyさんのソースを借用)
FreeBSD USBジョイスティック対応/DGA処理改良/XDnD対応
いずれも、UNIX/X11版での機能です。
QUASI88の詳しい履歴 はこちら
ステートセーブ / ステートロードは 同一バージョン / 同一OS の QUASI88 で行なって下さい。 バージョンが異なると正常に状態の復元ができません。 ver 0.6.0以降は、なんとか互換性がとれるようにがんばります・・・