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
Maxim Poliakovski
6d80ead5b1
Fix spelling in openfirmware.md.
2021-08-07 22:26:27 +02:00
Maxim Poliakovski
29dcd11648
Another small fix in openfirmware.md.
2021-08-07 22:24:46 +02:00
Maxim Poliakovski
62070659f8
Update openfirmware.md
2021-08-07 22:19:25 +02:00
Maxim Poliakovski
87ccfaed53
zdocs: rewrite OpenFirmware description.
2021-08-07 16:00:56 +02:00
Maxim Poliakovski
4f3dd797be
Clean up memaccess header.
2021-07-27 12:58:42 +02:00
Maxim Poliakovski
22a15f4780
ppcfpopcodes: fix mtfsb0 & mtfsb1 emulation.
2021-07-09 01:07:42 +02:00
dingusdev
48a65279e1
Fixed crf_d for mtfsb0 and mtfsb1
2021-07-07 18:58:02 -07:00
dingusdev
6abe86589b
Update ppcfpopcodes.cpp
2021-07-07 08:00:37 -07:00
dingusdev
07a4166eef
Preliminary work on floating point tests
2021-06-25 21:20:53 -07:00
Maxim Poliakovski
094d9a9c2f
Remove inline to fix compiler warnings.
2021-06-21 00:11:14 +02:00
Maxim Poliakovski
4da95a66d7
Make emulated memory loads to use SoftTLB.
2021-06-20 22:33:10 +02:00
Maxim Poliakovski
592d32017e
memaccess: fix [-Wshift-count-overflow] compiler warning.
2021-06-20 22:28:48 +02:00
Maxim Poliakovski
7d8f4d4e61
Finalize SoftTLB for reads.
2021-05-16 22:00:00 +02:00
Maxim Poliakovski
a5ddb51a3b
ppcmmu: initial TLB implementation for reads.
2021-05-16 00:53:15 +02:00
Maxim Poliakovski
05330bc942
memctrlbase: allocate address map entries with new().
2021-05-16 00:50:44 +02:00
Maxim Poliakovski
6f9ee10de5
Rework PPC CPU profiler.
2021-04-29 02:26:17 +02:00
Maxim Poliakovski
0c1c59ffa7
ppcmmu: set type of the profiling variables to uint64_t.
2021-04-29 01:30:27 +02:00
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