Commit Graph

531 Commits

Author SHA1 Message Date
dingusdev fb277945c2 Floating point test fixes 2021-10-19 07:16:15 -07:00
Maxim Poliakovski 331b93d4d6 Fix compilation with Clang 11. 2021-10-17 23:41:53 +02:00
dingusdev 3c7fc58ac0 Small test case fixes for floating points 2021-10-16 22:33:56 -07:00
dingusdev 00dd99d851 Temporarily removing comparisons
These seem to cause the test program to crash. Will reinstate once the cause of the crash is resolved.
2021-10-15 20:02:00 -07:00
dingusdev 7d7a4b453f Partial test file reading fix 2021-10-15 06:28:11 -07:00
dingusdev 7ce94a6ab5 Further fixing the test code 2021-10-14 21:05:58 -07:00
dingusdev 061b061813 Floating point overhaul, part 4
Reworked the INF/NAN checks again - This time, only checking them when the result is calculated
2021-10-14 20:31:10 -07:00
dingusdev 9251745d6f Fixed floating-point test generation 2021-10-14 07:19:04 -07:00
dingusdev 5672a154cb Floating-point refactor, part 3
Condensed code to shorten enum names and remove casting.

Condensed mffs and partially fixed NAN checks for FADD(S).
2021-10-10 07:48:49 -07:00
dingusdev 2d65ed47fc Floating point overhaul, part 2
Further formatting fixes. Removed obsoleted separation definitions. Fixed rounding to nearest.
2021-10-09 19:42:25 -07:00
dingusdev e344b089b3 Floating point overhaul, part 1
Cleaned up formatting and reworked the INF/NAN checks
2021-10-09 15:08:53 -07:00
dingusdev d5960ca70b Fixed warnings for frsqrte and fsqrts 2021-10-06 18:59:31 -07:00
dingusdev 2106c4ca47 Fixed floating-point opcode table issues
fmuls, fmsubs, fmadds, fnmsubs, and fnmadds are all properly mapped now.
2021-10-06 18:36:23 -07:00
dingusdev ad6a2a9f17
Merge pull request #20 from dingusdev/floating-point
Merging floating point branch
2021-10-06 18:32:23 -07:00
dingusdev 1922a20cdd Partial revert for exception handling
This will be for a future update regarding 601 instructions
2021-10-05 17:42:55 -07:00
dingusdev f605c484dd ecowx and eciwx added 2021-10-05 17:40:09 -07:00
Maxim Poliakovski 69c357b70f ppcopcodes: fix compilation error with Clang 11. 2021-10-05 00:40:12 +02:00
Maxim Poliakovski c313a9c8bb Use std::bind() based callbacks. 2021-10-05 00:29:27 +02:00
Maxim Poliakovski 03e58dac35 Overhaul AWACs and implement PDM sound HW. 2021-10-05 00:29:27 +02:00
dingusdev 983e278498 Refactoring 601 opcode emulation - part 1
All opcodes should be emulated now. There was also a significant amount of clean-up, particularly with lscbx and the bit rotation/shifting instructions.
2021-10-01 22:37:28 -07:00
Maxim Poliakovski 3ca7a78a37 AWAC-PDM control and status registers. 2021-10-01 01:02:43 +02:00
Maxim Poliakovski 0f55877137 Add basic PDM I/O emulation. 2021-09-30 23:01:56 +02:00
Maxim Poliakovski b4d399ffa2 Improve three logging messages. 2021-09-30 23:01:56 +02:00
Maxim Poliakovski 8c9f23daf4 Fix memory controller interface for PDM. 2021-09-30 22:55:10 +02:00
Maxim Poliakovski 22827642e4 ppcmmu: implement 601-style BAT. 2021-09-27 12:37:35 +02:00
Maxim Poliakovski e9fcc51b93 Debugger fixes for PDM. 2021-09-26 14:21:31 +02:00
Maxim Poliakovski f104a634ea ppcmmu: some more cleanup. 2021-09-26 14:20:46 +02:00
Maxim Poliakovski 81ea96a058 ppcmmu.cpp: fix includes. 2021-09-25 23:38:27 +02:00
Maxim Poliakovski e052eb4a87 Merge branch 'atirage-hacks'. 2021-09-25 23:16:38 +02:00
Maxim Poliakovski d2cd43fcb1 Merge branch 'machine-pdm'. 2021-09-25 22:30:31 +02:00
Maxim Poliakovski 4b16cb826e Merge branch 'soft-tlb'. 2021-09-25 19:58:09 +02:00
Maxim Poliakovski 40d0aa70da zdocs: improve MMU emulation documentation. 2021-09-25 19:13:50 +02:00
Maxim Poliakovski 212cd58f40 ppcmmu: refactor and clean up. 2021-09-25 19:13:40 +02:00
Maxim Poliakovski 5b54cd69ef ppcmmu: better fatal error handling with ABORT_F. 2021-09-25 19:13:40 +02:00
Maxim Poliakovski 501f24f0d3 ppcmmu: implement SoftTLB for instructions. 2021-09-25 19:13:40 +02:00
Maxim Poliakovski 2a79c9a63c ppcmmu.c: restructure and clean up. 2021-09-25 19:13:40 +02:00
Maxim Poliakovski f0b03aa1a2 zdocs: describe Heathrow ATA cells. 2021-09-18 02:26:32 +02:00
Maxim Poliakovski de8d6487f9 Add forgotten include path for CLI11. 2021-09-17 13:27:49 +02:00
Maxim Poliakovski ed56d018b0
zdocs: fix table in the Heathrow doc. 2021-09-16 16:35:37 +02:00
Maxim Poliakovski 8c13c30162 zdocs: rewamp Heathrow doc, part 1. 2021-09-16 16:29:36 +02:00
Maxim Poliakovski 84e111290f Fix includes for loguru and SDL. 2021-09-16 00:46:38 +02:00
dingusdev 1c77057860 Fixed building through CMake 2021-09-12 08:08:22 -07:00
dingusdev 738e2d3bd1 Fixed compiling for Visual Studio 2019 2021-09-11 22:55:24 -07:00
Maxim Poliakovski ea5b0d9f52 atirage: framebuffer rendering and various improvements. 2021-09-11 21:02:46 +02:00
Maxim Poliakovski 16d9e6c681 Basic MESH emulation skeleton with events logging. 2021-08-23 00:20:28 +02:00
Maxim Poliakovski 9ce15be106 ppcmmu.c: restructure and clean up. 2021-08-22 21:33:59 +02:00
Maxim Poliakovski e3a4539b02 WIP: Improve MMU emulation documentation. 2021-08-22 21:33:59 +02:00
Maxim Poliakovski c5f45c6f9a SIGINT invokes the built-in debugger. 2021-08-22 17:34:23 +02:00
Maxim Poliakovski a8f400287a Add TLB profiling. 2021-08-22 17:34:23 +02:00
Maxim Poliakovski 089645e830 Implement SoftTLB for writes. 2021-08-22 17:34:23 +02:00