Maxim Poliakovski
|
c0cd6eb38f
|
Add missing licence headers, update license date.
|
2021-10-23 21:00:31 +02:00 |
|
Maxim Poliakovski
|
9329d56d83
|
Move devices into dedicated subdirectories.
|
2021-10-23 20:17:47 +02:00 |
|
Maxim Poliakovski
|
2a9d364b1b
|
ppcmmu: implement separate TLB pointers for read/write.
|
2021-10-10 22:01:02 +02:00 |
|
Maxim Poliakovski
|
3eb2d3cba7
|
ppcmmu: verbose MMU state with mmu_print_regs().
|
2021-10-10 22:01:02 +02:00 |
|
Maxim Poliakovski
|
bde5b71167
|
ppcmmu: re-arrange code to avoid formward declarations.
|
2021-10-10 22:01:02 +02:00 |
|
Maxim Poliakovski
|
bb0ca2ac40
|
ppcmmu: fix TLB flushing.
|
2021-10-10 22:01:02 +02:00 |
|
Maxim Poliakovski
|
b4d399ffa2
|
Improve three logging messages.
|
2021-09-30 23:01:56 +02:00 |
|
Maxim Poliakovski
|
22827642e4
|
ppcmmu: implement 601-style BAT.
|
2021-09-27 12:37:35 +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
|
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
|
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
|
4da95a66d7
|
Make emulated memory loads to use SoftTLB.
|
2021-06-20 22:33:10 +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
|
0c1c59ffa7
|
ppcmmu: set type of the profiling variables to uint64_t.
|
2021-04-29 01:30:27 +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
|
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 |
|
Maxim Poliakovski
|
7628ec92c0
|
Rename memreadwrite.h to memaccess.h
|
2021-02-03 12:19:18 +01:00 |
|
Maxim Poliakovski
|
a775007d3a
|
MMU: implement misaligned cross-page accesses.
|
2020-11-29 00:23:30 +01:00 |
|
Maxim Poliakovski
|
2b19b0b237
|
ppcmmu: better initialization of last used entries.
|
2020-11-14 02:57:36 +01:00 |
|
Waqar Ahmed
|
0ab9380be3
|
clang-format everything
|
2020-05-12 23:55:45 +05:00 |
|
Maxim Poliakovski
|
695044cf0e
|
Support more than one I/O region per device.
|
2020-03-31 18:48:04 +02:00 |
|
dingusdev
|
60ffa5bfac
|
Initial attempt at fixing SDL2 building for Windows
|
2020-03-22 20:15:12 -07:00 |
|
Maxim Poliakovski
|
8e34c1657c
|
Mock up DBDMA channel execution for sound.
|
2020-03-19 02:00:18 +01:00 |
|
Maxim Poliakovski
|
9be3250142
|
Fix MMU region bounds check.
|
2020-03-15 20:08:53 +01:00 |
|
dingusdev
|
e31f7873f5
|
Fixed redunant variable names for PPC emulation.
|
2020-03-04 21:29:04 -07:00 |
|
dingusdev
|
354409812e
|
Updating files with proper licensing header
|
2020-02-28 09:04:28 -07:00 |
|
dingusdev
|
d91950e582
|
Further logging code.
|
2020-02-23 22:36:31 -07:00 |
|
Maxim Poliakovski
|
461d859e73
|
ppcmmu: add debug memory reading function.
This function saves and restores the MMU state
so no invalid user input can break CPU execution.
|
2020-02-23 16:41:58 +01:00 |
|
Maxim Poliakovski
|
fe57beb983
|
Revert "Disassembler added"
This reverts commit 37078ddfe1 .
|
2020-02-04 14:20:10 +01:00 |
|
dingusdev
|
37078ddfe1
|
Disassembler added
Created by maximumspatium, with some additions by me.
|
2020-02-03 08:03:24 -07:00 |
|
Maxim Poliakovski
|
043aedb9ad
|
ppcmmu: implement BAT protection.
|
2020-01-30 00:57:45 +01:00 |
|
Maxim Poliakovski
|
354b7b65be
|
ppcmmu: handle unaligned reads and writes.
|
2020-01-30 00:45:39 +01:00 |
|
dingusdev
|
aa20d64b48
|
SPRs now use symbolic names
|
2020-01-27 20:39:23 -07:00 |
|
Maxim Poliakovski
|
2953eaa538
|
Restructure main.cpp, remove obsolete code.
|
2020-01-28 02:20:43 +01:00 |
|
Maxim Poliakovski
|
f6f7bb4d0a
|
ppcmmu.cpp: remove unneeded includes.
|
2020-01-27 12:33:05 +01:00 |
|
Maxim Poliakovski
|
7ae87e39c1
|
Refactor usage of the memory access functions.
Memory access function have better names now.
Global variable return_value has been removed.
lhbrx emulation has been fixed.
|
2020-01-27 01:36:52 +01:00 |
|
Maxim Poliakovski
|
cdd7f228a4
|
ppcmmu: refactor memory access functions.
Reduces code duplication.
|
2020-01-26 23:46:13 +01:00 |
|
dingusdev
|
7c6d875ec8
|
Refactored floating point emulation
Refactored for better 64-bit value loading and storing. I also added missing opcodes.
|
2020-01-25 19:30:55 -07:00 |
|
dingusdev
|
6dd8d55577
|
Profiler + Missing Instruction Added
|
2020-01-14 20:50:01 -07:00 |
|
Maxim Poliakovski
|
0b0c00b653
|
Add aligned macros for reading ints from memory.
|
2020-01-13 03:05:50 +01:00 |
|
Maxim Poliakovski
|
2d5e436ad4
|
Refactor PPC exception handling, part 1.
|
2020-01-12 02:35:54 +01:00 |
|
Maxim Poliakovski
|
bd5ae4a45a
|
More memreadwrite macros usage.
|
2020-01-06 03:46:23 +01:00 |
|