Commit Graph

837 Commits

Author SHA1 Message Date
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
Maxim Poliakovski
a3601f224c Fix NVRAM->Heathrow connection. 2020-01-24 16:20:20 +01:00
Maxim Poliakovski
e1793b6305 Fix compilation warnings from previous commits. 2020-01-22 21:45:46 +01:00
dingusdev
6a083869e1 Started a massive FP fix-up 2020-01-21 19:25:50 -07:00
dingusdev
29d0ce362c
Fix 4 for the opcodes 2020-01-18 07:08:11 -07:00
dingusdev
bed665076d
Update 3 for the opcodes 2020-01-17 21:37:54 -07:00
dingusdev
3dc46ae664
Further opcode fixing 2020-01-17 21:26:09 -07:00
dingusdev
add1ac7a3d
Corrected several loading instructions 2020-01-17 21:06:26 -07:00
dingusdev
b414c68d81
Opcode table fix for tlbsync 2020-01-17 18:58:40 -07:00
dingusdev
3010708f2a
mfsrin fixed 2020-01-16 19:25:41 -07:00
Maxim Poliakovski
0b0c545ad9 Debugger: implement 'set' command. 2020-01-16 12:29:29 +01:00
Maxim Poliakovski
1a44d8e16c ViaCuda: allocate PRAM object dinamically. 2020-01-15 18:23:15 +01:00
dingusdev
6dd8d55577 Profiler + Missing Instruction Added 2020-01-14 20:50:01 -07:00
dingusdev
3650b655d7 Proper NVRAM deletion
And slowly preparing for a response method from the Cuda to the host
2020-01-13 20:43:09 -07:00
dingusdev
5b8a787e9a Simplified PRAM emulation 2020-01-13 19:48:29 -07:00
dingusdev
1cff216e82 Quick Cuda PRAM implementation 2020-01-12 20:31:10 -07:00
Maxim Poliakovski
0b0c00b653 Add aligned macros for reading ints from memory. 2020-01-13 03:05:50 +01:00
Maxim Poliakovski
720b35aa26 Move endian swapping code to endianswap.h.
Remove superfluous endian swapping wrappers.
2020-01-12 22:51:37 +01:00
dingusdev
fbe82010f8 Fixing up FPU opcodes further 2020-01-11 21:17:29 -07:00
dingusdev
ea7c34f0d9 Merge branch 'master' of https://github.com/dingusdev/dingusppc 2020-01-11 19:44:46 -07:00
dingusdev
c5ac0a2420 FPU Fixing + Preparing for more debugging 2020-01-11 18:43:47 -07:00
Maxim Poliakovski
2d5e436ad4 Refactor PPC exception handling, part 1. 2020-01-12 02:35:54 +01:00
Maxim Poliakovski
add0d5877c Add missing includes to fix GCC compilation. 2020-01-08 00:24:31 +01:00
Maxim Poliakovski
6dbd9f1c99 Remove superfluous asserts.
Operator new will throw std::bad_alloc
when running out of memory.
2020-01-07 12:46:32 +01:00
Maxim Poliakovski
c2bbdc4144 Finish NVRAM implementation. 2020-01-07 12:08:38 +01:00
Maxim Poliakovski
bd5ae4a45a More memreadwrite macros usage. 2020-01-06 03:46:23 +01:00
dingusdev
f51e479e5c Quick fix for NVRAM 2020-01-05 10:44:50 -07:00
dingusdev
b92fe60fad Header updates + NVRAM Fix 2020-01-05 10:38:32 -07:00
dingusdev
b5074e4ce1 Started work on NVRAM
Tried to also fix some issued with MSVC
2020-01-05 09:52:46 -07:00
dingusdev
0221bcb9a2
Fixed gitignore to recognize directories 2020-01-04 10:07:05 -07:00
dingusdev
741ad89c55 Updating gitignore to include VS directories 2020-01-03 18:54:55 -07:00
Maxim Poliakovski
e76ef61f53 ppcexec: pagewise MMU translation for code. 2020-01-04 02:07:36 +01:00
Maxim Poliakovski
99288e44d1 ppcmmu: add a comment describing missing features. 2020-01-03 21:21:41 +01:00
Maxim Poliakovski
7bae155fc3 ppcemu: add PTEG integrity check. 2020-01-03 21:18:07 +01:00
Maxim Poliakovski
74882c8082 ppcemu: remove unused global variables. 2020-01-03 21:18:07 +01:00
Maxim Poliakovski
4b843157d9 ppcemu: refactor page address translation.
The refactored code is UNTESTED. Moreover,
no TLB is currently implemeneted.
2020-01-03 16:22:38 +01:00
Maxim Poliakovski
241031dfe7 Move big-endian memory access to memreadwrite.h. 2020-01-03 16:08:00 +01:00
Maxim Poliakovski
14e203f528 Add missing includes. 2019-12-29 13:53:26 +01:00
Maxim Poliakovski
01dffb84f3 Move all PPC code execution to ppcexec.cpp. 2019-12-28 02:49:58 +01:00
Maxim Poliakovski
2d8150a201 Move opcode decoding tables to ppcexec.cpp. 2019-12-28 01:58:51 +01:00
Maxim Poliakovski
db89c23bf0 Move ppcemumain.h to /cpu/ppc/ppcemu.h. 2019-12-27 20:10:36 +01:00
Maxim Poliakovski
87ca977ae7 Rename ppcmemory to ppcmmu. 2019-12-27 20:00:53 +01:00
Maxim Poliakovski
134eda8c12 Clean up some comments and messages. 2019-12-27 00:42:02 +01:00
Maxim Poliakovski
b311cea4e5 Remove optimization options from CMakeLists.txt.
Update the COMPILE section in the README.
2019-12-26 23:57:04 +01:00
dingusdev
e2a151265e
Remove CBP file
Not needed at this time. I'll be moving over to Visual Studio 2019 for further development. CodeBlocks was nice while it lasted.
2019-12-24 18:06:19 -07:00
Maxim Poliakovski
ad5f3a9435 Move PPC emulation code into /cpu/ppc subdirectory. 2019-12-23 10:38:16 +01:00
Maxim Poliakovski
c220a2e87b Simplify CMakeLists.txt using file wildcards. 2019-12-16 16:31:33 +01:00
dingusdev
202ce280aa
Slight tweak for better placement of binary 2019-12-15 16:24:14 -07:00
dingusdev
71a1b2eb63 Fixed CMakeLists errors and deleted makefile 2019-12-14 12:56:43 -07:00
Maxim Poliakovski
684a8dee8e Move debugger sources into a dedicated subdirectory. 2019-12-14 13:48:54 +01:00