| カテゴリ | 重要度 | ステータス | 解決状況 | 登録日時 | 最終更新 |
|---|---|---|---|---|---|
システムコア | 低 | 解決済み | 修正済み | 2025-05-16 20:03 | 2025-05-17 03:52 |
| テスター | Peer | 担当者 | Peer | ソース | |
| バージョン | 0.277 | 発生バージョン | 修正バージョン | 0.278 | |
| 修正コミット | 35b7abd | プルリク | |||
| フラグ | コード検証済み | ||||
| セット | CPU Hitachi HD6309 | ||||
| セット詳細 | |||||
| 概 要 | ネイティブモードでのブランチ命令のサイクルカウントが間違っている。 | ||||
| 詳 細 | The cycle counts of the relative-branch-instructions of the hd6309 CPU in native-mode are the same as in emulation-mode. The only exceptions are the BRA and LBRA instructions. All others have the same cycle counts. However, the code in devices/cpu/m6809/base6x09.lst gives all branch instructions in native-mode one cycle less than in emulation-mode. | ||||
| 再現手順 | Just check the code in devices/cpu/m6809/base6x09.lst and compare their timing to the cycles counts listed in "Motorola 6809 and Hitachi 6309 Programming Reference" by Darren Atkinson. | ||||
| 追加情報 | I have a real Vectrex console with a real Hitachi hd6309 CPU inside, running a customized 6309 BIOS in native-mode, with all cycle-dependent routines adapted to the 6309 native-mode timing. I have compiled a custom mame version, which uses the hd6309 CPU inside vextrec.cpp, and which loads my custom 6309 BIOS file. This shows the simulation mismatch to my real system. Fixing the cycle-counts in devices/cpu/m6809/base6x09.lst leads to my mame version correctly emulating the behavior of the real console. | ||||
| 添付ファイル | |||||