Common Source Code Projectの、ePX-7のMSX1部分を変更したものを仮公開します。変更部分のソースもバイナリも同梱です。
2014-04-01のソースがベースです。
仮の名前を yayaPX-7 とします。(yet another yet anotherではなく、程度を表す日本語の「やや」。)
私はPX-7について知識がありませんし、MSX1エミュレータとしても完全無欠ではないので。
サポートはありません。

……ここに置こうと思ったのですが、zipファイルは置けないみたいです。外部に置いてみます。
http://kie.nu/1ObM kie.nuのアップローダーサービスは終了したみたいです。
yaya2014-04-01plus1.zip 147,379バイト
CRC32 09AA2A14
MD5 13787DE468DA435797B6F3749A13FB65
SHA1 AE0A1B58A48AADF884D7B383CABBD2C399845C63

使用するファイル
"BASIC.ROM"(MSX1のメインROM)
"EXT.ROM"(PX-7固有の内蔵ROM、これが無くてもMSX1エミュレータとしては動作する)

特殊キーの割り当ては、同梱の"keycode.cfg"を使用しない場合は
 [カタカナひらがな]かな
 [Caps Lock]CAPS
 [F9]SELECT
 [Pause]STOP
ですが、キー入力が少し怪しいように思うかもしれません。
同梱の"keycode.cfg"をexeファイルやBIOSファイルと同じフォルダに置けば、旧yaMSX1(本家Common Source Code Projectに一旦マージされる前のもの)準拠のキー割り当て
 [F6]かな
 [F7]CAPS
 [F8]SELECT
 [F9]STOP
が使えます。これでキー入力は怪しくなくなると思いますが、PX-7エミュレータとしてはダメかもしれません。
同梱の"keycode.cfg"を旧yaMSX1等と同じフォルダに置くのはダメです。


変更点は以下のとおり。
msx.cpp, msx.h
カートリッジスロット2のための定義。
自動キー入力のための値を変更。
PSGの音程調整。
スプライトの横並び個数制限を有効に。
その他、以下の処理に関係する変更。
joystick.cpp
2つのジョイスティックの状態が入れ替わる可能性があったのを修正。
memory.cpp, memory.h
速度調整。
sound1bit.cpp, sound1bit.h
PCM1BITクラスではキークリック音が実機と似ていないので、似て異なるクラスを作成して使用する。
psgsafe.cpp, psgsafe.h
フラッピーリミテッド'85の不正処理対策。

現状で実装されていないが、MSXエミュレータとしては求められるかもしれない機能?
MSX2以降の機能
メガROM
SCC音源
FM音源
フロッピーディスクドライブ
ハードディスクドライブ
マウス
PSGのハードウェアエンベロープが32段階(?)の機種も存在する
スロット構成の柔軟性、および拡張スロット
日本向け以外のMSXへの対応
など。

戻る

なお、2014-04-10以降の本家バイナリやソースには、上記の変更点相当の内容が全て反映されています。実装方法は違っていても、目的は同じです。
よって、"keycode.cfg"が必要なければyaya2014-04-01plus1.zipをダウンロードする必要もありません。本家のほうが進んでいる部分も多々あります。

(yaya2014-04-01plus1.zip 自体は変えてませんが、ここの説明文書は初公開時以降にも随時書き換えされます。)


アクセス解析 SEO/SEO対策