pureikyubu
pureikyubu copied to clipboard
Fix GekkoCore lurking bugs
After adding MMU emulation and cache, some strange bugs appeared. It is necessary to localize and eliminate them.
- [x] MMU ARAM mapping fails at random address
- [x] Bust-a-Move does not start due to some cache problems
- [x] FIFO integrity is violated (it doesn’t apply to GekkoCore, but it appeared after the implementation of GatherBuffer)
- [x] GCLinux does not want to start (MMU?)
- [x] Locked Cache bugs
- [ ] Samurai Jack: dcbi 0xE000'0000 before LCEnable (#DSI)
- [x] FF:Crystal Chronicles: dcbf 0x8180'0000 (#DSI)
- [ ] I-Ninja: dcbf 0 (#DSI)
- [x] IPL DCFI causes to blr 0
- [ ] IPL __init_data crashes
- DCInvalidate (0xE000'0000);
- LCEnable
- Complain on Twitter that when you were a developer, the GameCube had buggy hardware
IPL __init_data crashes
Fixed by implementing proper instruction cache.
Closing this Issue, will create others on vm.a library (SDR1 usage) and on random DSI/ISI when booting from a DVD