240118 PS/55エミュ製作 [29]画面解像度1040x768
この開発はこれ以上進展しそうにないので、これで打ち止めとしますか。Win 3.0はほぼ正常に動作しているので、いい線まで行っていると思うんだけど、やっぱりWin 3.1のディスプレイドライバーはダメだ。
CPUの書き込みデータのうち1のビットはテキストの前景色、0のビットは背景色になるようにGraphics ControllerのSet/ResetレジスターとEnable Set/Resetレジスターをセットしていることは分かるが、なぜ反転色でセットしてそれがどう働くのかが分からない。恐らくVRAMのデータとXOR演算して、反転色の上に書き込むとそのまま反転色、それ以外の所で書き込むと反転色が反転して通常色になるはずなのだが、この処理を実装すると今度はアイコンの色が反転してしまう。まだ何かが間違っている。
手がかりになりそうなのは$BITBLT.SYS。これの使い方が分かればな。DOS J4.0のBIOSインターフェイス技術解説書とかに載っているんだろうか。
この前、JDOSに1040×725のグラフィックモードが存在することを確認したが、Windows 3.xでの解像度は1040×768(またはそれに近い)であることが分かった。垂直方向の解像度を増やすとリフレッシュレートが下がり、CRTモニターではちらつきに影響が出るが、実際の所問題なかったのだろうか(→そもそもグラフィックモードの解像度が1024×768なので、それと大して変わらないか)。
DOSVAX 変更点 (4483PS13→ 4483PS14)
- Build 4483PS14 (2024/01/18)
- Windows 3.0 (IBMJ OEM) を PS/55 高解像度ディスプレイ ドライバーを使用してスタンダードモードで実行するための BitBlt 操作を追加しました。 (ただし、Windows 3.1 ではテキストの色が正しく表示されません)
- いくつかのデバッグ コマンド、VRAMDUMP (ビデオ メモリ ダンプ)、PLTDUMP (パレット ダンプ)、および BLTDUMP (bitblt regs ログ ダンプ) が追加されました。
- ビデオ BIOS での PS/55 テキスト モードの初期化が属性バッファーの外側のメモリをクリアする問題を修正します。
- PS/55 ディスプレイ アダプターを再アクティブ化すると画面が乱れる問題を修正します。
ダウンロード
→ GitHub - akmed772/dosvax: A folk of DOSBox that emulates the Japanese AX and PS/55 computers.