Common Source Code Project (2011/05/19) - 模擬器

Table of Contents

http://homepage3.nifty.com/takeda-toshiya/

色々と一気に更新しました。

5/19/2011

[VM/EVENT] fix to check registered count for frame/vline events
[VM/EVENT] clear event counts before other devices are initialized
[VM/HD46505] fix to update sync signals in more precise timing
[VM/HD46505] support notifying vline event to other devices
[VM/Z80DMA] fix issues for X1/X1turbo games (thanks Y.S.)
[VM/Z80DMA] fix to return current count/address for init read sequence command
[VM/Z80DMA] fix do_dma() routine



昨晩リリースしたMZ-800について、スクロールレジスタを修正しました。
CP/Mなどで、スクロールした際に画面が乱れる問題が解決しています。

普通の機種だと、スクロールレジスタって画面の表示上だけの機能なのですが、
MZ-800だと、CPUから見たVRAMのアドレスにも反映するみたいでして。
どれだけスクロールしても、画面の表示位置とCPUから見たVRAMのアドレスは
変わらないようになっています。なんと面妖な。



PC/JXで、高解像モードをサポートしました。
$A0000-$AFFFFに割り当てられる専用VRAMと漢字ROMの切り替え方と、
高解像モード・標準モードの切り替え方の調査にちょっと手間取ってました。



X1turboの方は、Y.S.さんからご提供いただいたZ80DMAの修正の取り込みと、
HD46505の信号発生タイミングの高精度化が中心です。
青き狼と白き牝鹿が動くようになっています、多謝多謝。

HD46505の修正はPC/JXにも関係してくるものですが、総スキャンライン数を#defineで
定数として宣言しているため、画面解像度の変更によってライン数が変更されたときに

信号の発生に問題が生じていました。
X1turboの方では無理やり誤魔化してましたが、今回JXでも同じ問題に直面したため、
この際一気に修正を図っています。

X1の方は、これで何か新しく動くようになったソフトがある訳でもないですが、
まあ自己満足ですね(苦笑)

--

All Comments