Commit Graph

460 Commits

Author SHA1 Message Date
Maxim Poliakovski 048b4f5f20 Fix forgotten include. 2021-04-19 00:13:33 +02:00
Maxim Poliakovski 085877a8bf ppcmmu: add MMU profiling (disabled by default). 2021-04-18 20:49:58 +02:00
Maxim Poliakovski bc59bf7c43 ppcmmu: replace macros with function templates. 2021-04-18 20:05:15 +02:00
Maxim Poliakovski ed6c316c82 profiler: add reset command. 2021-04-14 17:04:14 +02:00
Maxim Poliakovski 31b5290ac9 New profiler API. 2021-04-14 01:27:07 +02:00
Maxim Poliakovski 0375b6a687 ppcmmu: invert BAT mask to speed up match. 2021-04-11 02:03:20 +02:00
Maxim Poliakovski d545780071 ppcmmu: fix calculation for BAT access_bits. 2021-04-10 23:51:00 +02:00
dingusdev e7e28b4497 Compilation fix for Raspberry Pi 2021-02-14 08:41:48 -07:00
Maxim Poliakovski baa7f8b211 atirage: use standard names for common pixel formats. 2021-02-08 22:25:36 +01:00
Maxim Poliakovski 2f4a3b955e atirage: calculation of display parameters. 2021-02-08 02:20:55 +01:00
dingusdev 19ca37c4ba Started refactoring fctiw and fctiwz 2021-02-05 12:45:57 -07:00
Maxim Poliakovski a4eb658309 atirage: increase PLL registers count to 64. 2021-02-05 02:01:31 +01:00
Maxim Poliakovski 508ef2eaa9 atirage: increase registers array and add boundary checks. 2021-02-05 01:23:04 +01:00
Maxim Poliakovski a5ef814ec4 atirage: add reading and writing of PLL registers. 2021-02-05 01:23:04 +01:00
Maxim Poliakovski ace19c0bdf atirage: clean up register names. 2021-02-05 01:11:23 +01:00
Maxim Poliakovski 3a9ed2671c atirage: remove obsolete memaccess code. 2021-02-04 19:05:39 +01:00
Maxim Poliakovski 3c787a87cd atirage: add ASIC ID for Rage Pro. 2021-02-04 19:01:55 +01:00
dingusdev ce70b0f096 Removed obseleted function declarations 2021-02-03 20:01:02 -07:00
Maxim Poliakovski a0b43754a7 atirage: fix and clean up PCI interface. 2021-02-04 01:03:23 +01:00
Maxim Poliakovski 1adbf90e21 MPC106: use memaccess thoroughly. 2021-02-03 23:39:19 +01:00
Maxim Poliakovski aa0f43d89f memaccess: generic functions for accessing memory. 2021-02-03 23:36:32 +01:00
Maxim Poliakovski 478ca1065f MPC106: fix RAM size calculation. 2021-02-03 23:29:48 +01:00
Maxim Poliakovski 7628ec92c0 Rename memreadwrite.h to memaccess.h 2021-02-03 12:19:18 +01:00
dingusdev 7f0acaf3d3 Load and store instruction clean-up 2021-01-25 21:03:17 -07:00
Maxim Poliakovski 5961552ed9 ppcfpopcodes: fix register stores. 2021-01-25 17:19:32 +01:00
Maxim Poliakovski 2141a72b87 ppcfpopcodes: finish RFC of the loading helpers. 2021-01-25 02:27:58 +01:00
Maxim Poliakovski 9683c660bc ppcfpopcodes: RFC loading helpers, part 2.
Fix lfdx emulation along the way.
2021-01-25 01:30:19 +01:00
Maxim Poliakovski d8397906c2 ppcfpopcodes: start refactoring of loading helpers. 2021-01-24 23:06:33 +01:00
Maxim Poliakovski fd0f8e2ef5 ppcopcodes: revert inlining of helper functions. 2021-01-24 22:50:07 +01:00
dingusdev 60f84ef0d9 Refactoring interpreter value storage 2021-01-24 11:59:16 -07:00
Maxim Poliakovski 2f8694e57c Revert enabling PPC tests by default. 2021-01-24 11:45:12 +01:00
dingusdev 593230f326 Disassembler - floating point instruction fixes 2021-01-23 22:44:14 -07:00
dingusdev 680b437b74 Fixed disassembly for fctiwz, frsp, and fctiw 2021-01-23 21:30:29 -07:00
Maxim Poliakovski 3189876d41 ppcfpopcodes: fix fmul emulation. 2021-01-24 04:53:19 +01:00
dingusdev 2539faef7e Small typo fixes 2021-01-23 15:10:08 -07:00
Maxim Poliakovski 42184213e9 ppcexec: fix RC flag for subgroup 63. 2021-01-23 03:21:50 +01:00
Maxim Poliakovski bb3f4e596e ppcexec: fix subopcode 59 dispatching. 2021-01-23 03:12:39 +01:00
Maxim Poliakovski 014eefdf7e ppcdisasm: fix frsp and add tests for it. 2021-01-23 02:32:30 +01:00
Maxim Poliakovski d8f7588693 debugger: some fixes and improvements. 2021-01-12 15:17:51 +01:00
dingusdev 2bac606365 Added to Heathrow
Plus some debugging stuff to help figure out what register 0x34 is responsible for.
2021-01-08 15:29:43 -07:00
dingusdev df8ea1b276 Code clean-up for interpreter 2021-01-08 14:34:01 -07:00
dingusdev 9210244c0c Further ATI Rage registers 2021-01-08 14:32:06 -07:00
Maxim Poliakovski 358f018815 ppcopcodes: fix mcrf. 2021-01-08 21:59:18 +01:00
dingusdev 14d3874382 More ATI Rage register names added 2021-01-08 13:12:06 -07:00
Maxim Poliakovski b230299076 Make building of tests and benchmarks optional. 2021-01-08 20:38:40 +01:00
dingusdev 79e3d398ba mcrf implemented 2021-01-07 20:38:32 -07:00
Maxim Poliakovski 2f3938c23f ppcopcodes: fix dcbz. 2021-01-07 04:25:27 +01:00
Maxim Poliakovski dbbaf13a78 ppcopcodes: fix cntlzw to compile properly with Clang.
Enable USE_GCC_BUILTINS by default.
2020-12-18 18:33:00 +01:00
Maxim Poliakovski 99641b1b5e ppcopcodes: fix cntlzw with __builtin_clz.
The result of __builtin_clz is undefined when the source operand
is zero. Add a check for this case and handle it accordingly.
2020-12-07 14:37:20 +01:00
dingusdev 5cba9c1dae Merge branch 'cpu-refactor' 2020-12-04 11:01:34 -07:00