Commit Graph

  • 051edd5e38 Subtraction operation fixes in progress dingusdev 2020-02-08 20:35:11 -07:00
  • 8d03d24c77 Complete tests for the integer instructions. Maxim Poliakovski 2020-02-08 23:23:58 +01:00
  • 532e67164f debugger: replace stol with stoul. Maxim Poliakovski 2020-02-04 14:26:57 +01:00
  • 439e5795ea Revert "Write to GPRs in debugger + VS 2019 compile fix" Maxim Poliakovski 2020-02-04 14:21:59 +01:00
  • fe57beb983 Revert "Disassembler added" Maxim Poliakovski 2020-02-04 14:20:10 +01:00
  • 09ac682dd2 Revert "Revert strcat_s/strcpy_s to strcat/strcpy." Maxim Poliakovski 2020-02-04 14:19:26 +01:00
  • 5d5c568714 Revert strcat_s/strcpy_s to strcat/strcpy. Maxim Poliakovski 2020-02-04 13:05:22 +01:00
  • b364aa0ae4 Patching up Subtraction Opcodes dingusdev 2020-02-03 22:32:56 -07:00
  • f52be627b5 Fixed subfo(.) dingusdev 2020-02-03 17:28:41 -07:00
  • 1c5d0e640e Add tests for all subtraction variants. Maxim Poliakovski 2020-02-04 01:00:37 +01:00
  • 03439b2a49 Placeholders for SUBFEO[.], SUBFMEO[.] and SUBFZEO[.]. Maxim Poliakovski 2020-02-04 00:58:04 +01:00
  • d25ce6a244 Add tests for shifts and fix their emulation. Maxim Poliakovski 2020-02-03 20:36:22 +01:00
  • 8c1c1e0a0d Fix and refactor additions with OE=1. Maxim Poliakovski 2020-02-03 19:42:33 +01:00
  • 37078ddfe1 Disassembler added dingusdev 2020-02-03 08:03:24 -07:00
  • 4e4d0370be Modularize build system. Maxim Poliakovski 2020-02-03 14:36:30 +01:00
  • 90e229d9b4 Write to GPRs in debugger + VS 2019 compile fix dingusdev 2020-02-02 19:18:20 -07:00
  • eb476adf87 Small fix to addeo dingusdev 2020-02-02 16:36:47 -07:00
  • 60bf5dfa6a ADDO(.) and ADDCO(.) fixed dingusdev 2020-02-02 11:54:33 -07:00
  • fe6ea7d9f6 Division ops fixed dingusdev 2020-02-01 10:51:59 -07:00
  • 0b2de4ac4c Division Ops Fixes WIP dingusdev 2020-01-31 21:06:06 -07:00
  • 8c10004f52 Fixed all multiplication issues dingusdev 2020-01-31 18:17:01 -07:00
  • 99e8bc98f3 Fix mulhw/mulhw. emulation. Maxim Poliakovski 2020-02-01 01:48:09 +01:00
  • ddae141c22 Overflow fixes in progress dingusdev 2020-01-31 16:54:37 -07:00
  • cc7814a722 Fix ORIS bug in the test suite. Maxim Poliakovski 2020-02-01 00:42:57 +01:00
  • a27d7436ad Fix ppctests.cpp and add more instructions. Maxim Poliakovski 2020-01-31 21:53:02 +01:00
  • b007dbc743 More PPC instruction tests. Maxim Poliakovski 2020-01-31 18:04:50 +01:00
  • aad75266f7 Fix cntlzw emulation. Maxim Poliakovski 2020-01-31 18:03:27 +01:00
  • 7d7b0b7de3 Initial PPC emulation tests. Maxim Poliakovski 2020-01-31 04:10:53 +01:00
  • 29fa6e6174 Move mem_ctrl_instance to ppcexec. Maxim Poliakovski 2020-01-31 04:08:22 +01:00
  • 304409b496 ppcexec: break long strings, correct spelling. Maxim Poliakovski 2020-01-31 00:13:26 +01:00
  • df4a963558 Quick build fix dingusdev 2020-01-29 21:13:36 -07:00
  • 3dead1f65c Updated TBRs correctly in mtspr dingusdev 2020-01-29 21:08:42 -07:00
  • e1c0ec3dd2 Fixed MTSPR for time base regs dingusdev 2020-01-29 20:47:12 -07:00
  • 043aedb9ad ppcmmu: implement BAT protection. Maxim Poliakovski 2020-01-30 00:57:45 +01:00
  • 354b7b65be ppcmmu: handle unaligned reads and writes. Maxim Poliakovski 2020-01-30 00:45:39 +01:00
  • f364efb4b0 Fixed up floating-point value saving dingusdev 2020-01-28 18:45:36 -07:00
  • aa20d64b48 SPRs now use symbolic names dingusdev 2020-01-27 20:39:23 -07:00
  • 2953eaa538 Restructure main.cpp, remove obsolete code. Maxim Poliakovski 2020-01-28 02:20:18 +01:00
  • 117b3f1aa8 Move CPU initialization to ppcexec.cpp. Maxim Poliakovski 2020-01-28 01:24:12 +01:00
  • f6f7bb4d0a ppcmmu.cpp: remove unneeded includes. Maxim Poliakovski 2020-01-27 12:33:05 +01:00
  • 7ae87e39c1 Refactor usage of the memory access functions. Maxim Poliakovski 2020-01-27 01:36:22 +01:00
  • cdd7f228a4 ppcmmu: refactor memory access functions. Maxim Poliakovski 2020-01-26 23:45:29 +01:00
  • 0c3223454a ppcemu.h: remove initializers from typedef. Maxim Poliakovski 2020-01-26 20:37:15 +01:00
  • 1882244fa3 Update CONTRIBUTING.md dingusdev 2020-01-25 21:10:37 -07:00
  • b3989269d0 Starting some contribution rules dingusdev 2020-01-25 20:55:58 -07:00
  • 7ae5baaee7 Fixed the opcode table formatting dingusdev 2020-01-25 20:34:07 -07:00
  • 7c6d875ec8 Refactored floating point emulation dingusdev 2020-01-25 19:30:55 -07:00
  • a3601f224c Fix NVRAM->Heathrow connection. Maxim Poliakovski 2020-01-08 19:33:38 +01:00
  • e1793b6305 Fix compilation warnings from previous commits. Maxim Poliakovski 2020-01-22 12:42:22 +01:00
  • 6a083869e1 Started a massive FP fix-up dingusdev 2020-01-21 19:25:50 -07:00
  • 29d0ce362c Fix 4 for the opcodes dingusdev 2020-01-18 07:08:11 -07:00
  • bed665076d Update 3 for the opcodes dingusdev 2020-01-17 21:37:54 -07:00
  • 3dc46ae664 Further opcode fixing dingusdev 2020-01-17 21:26:09 -07:00
  • add1ac7a3d Corrected several loading instructions dingusdev 2020-01-17 21:06:26 -07:00
  • b414c68d81 Opcode table fix for tlbsync dingusdev 2020-01-17 18:58:40 -07:00
  • 3010708f2a mfsrin fixed dingusdev 2020-01-16 19:25:41 -07:00
  • 0b0c545ad9 Debugger: implement 'set' command. Maxim Poliakovski 2020-01-16 12:29:01 +01:00
  • 1a44d8e16c ViaCuda: allocate PRAM object dinamically. Maxim Poliakovski 2020-01-15 18:15:08 +01:00
  • 6dd8d55577 Profiler + Missing Instruction Added dingusdev 2020-01-14 20:50:01 -07:00
  • 3650b655d7 Proper NVRAM deletion dingusdev 2020-01-13 20:43:09 -07:00
  • 5b8a787e9a Simplified PRAM emulation dingusdev 2020-01-13 19:48:29 -07:00
  • 1cff216e82 Quick Cuda PRAM implementation dingusdev 2020-01-12 20:31:10 -07:00
  • 0b0c00b653 Add aligned macros for reading ints from memory. Maxim Poliakovski 2020-01-13 03:04:06 +01:00
  • 720b35aa26 Move endian swapping code to endianswap.h. Maxim Poliakovski 2020-01-12 22:51:07 +01:00
  • fbe82010f8 Fixing up FPU opcodes further dingusdev 2020-01-11 21:17:29 -07:00
  • ea7c34f0d9 Merge branch 'master' of https://github.com/dingusdev/dingusppc dingusdev 2020-01-11 19:44:46 -07:00
  • c5ac0a2420 FPU Fixing + Preparing for more debugging dingusdev 2020-01-11 18:43:47 -07:00
  • 2d5e436ad4 Refactor PPC exception handling, part 1. Maxim Poliakovski 2020-01-11 21:48:56 +01:00
  • add0d5877c Add missing includes to fix GCC compilation. Maxim Poliakovski 2020-01-08 00:24:31 +01:00
  • 6dbd9f1c99 Remove superfluous asserts. Maxim Poliakovski 2020-01-07 12:43:16 +01:00
  • c2bbdc4144 Finish NVRAM implementation. Maxim Poliakovski 2020-01-07 11:52:38 +01:00
  • bd5ae4a45a More memreadwrite macros usage. Maxim Poliakovski 2020-01-06 03:46:23 +01:00
  • f51e479e5c Quick fix for NVRAM dingusdev 2020-01-05 10:44:50 -07:00
  • b92fe60fad Header updates + NVRAM Fix dingusdev 2020-01-05 10:38:32 -07:00
  • b5074e4ce1 Started work on NVRAM dingusdev 2020-01-05 09:52:46 -07:00
  • 0221bcb9a2 Fixed gitignore to recognize directories dingusdev 2020-01-04 10:07:05 -07:00
  • 741ad89c55 Updating gitignore to include VS directories dingusdev 2020-01-03 18:54:55 -07:00
  • e76ef61f53 ppcexec: pagewise MMU translation for code. Maxim Poliakovski 2020-01-03 21:01:02 +01:00
  • 99288e44d1 ppcmmu: add a comment describing missing features. Maxim Poliakovski 2020-01-03 20:36:00 +01:00
  • 7bae155fc3 ppcemu: add PTEG integrity check. Maxim Poliakovski 2020-01-03 20:28:37 +01:00
  • 74882c8082 ppcemu: remove unused global variables. Maxim Poliakovski 2020-01-03 20:09:07 +01:00
  • 4b843157d9 ppcemu: refactor page address translation. Maxim Poliakovski 2020-01-03 16:17:45 +01:00
  • 241031dfe7 Move big-endian memory access to memreadwrite.h. Maxim Poliakovski 2020-01-03 16:08:00 +01:00
  • 14e203f528 Add missing includes. Maxim Poliakovski 2019-12-29 13:53:26 +01:00
  • 01dffb84f3 Move all PPC code execution to ppcexec.cpp. Maxim Poliakovski 2019-12-28 02:49:58 +01:00
  • 2d8150a201 Move opcode decoding tables to ppcexec.cpp. Maxim Poliakovski 2019-12-28 01:58:51 +01:00
  • db89c23bf0 Move ppcemumain.h to /cpu/ppc/ppcemu.h. Maxim Poliakovski 2019-12-27 20:10:36 +01:00
  • 87ca977ae7 Rename ppcmemory to ppcmmu. Maxim Poliakovski 2019-12-27 20:00:53 +01:00
  • 134eda8c12 Clean up some comments and messages. Maxim Poliakovski 2019-12-27 00:42:02 +01:00
  • b311cea4e5 Remove optimization options from CMakeLists.txt. Maxim Poliakovski 2019-12-26 23:56:53 +01:00
  • e2a151265e Remove CBP file dingusdev 2019-12-24 18:06:19 -07:00
  • ad5f3a9435 Move PPC emulation code into /cpu/ppc subdirectory. Maxim Poliakovski 2019-12-23 10:38:16 +01:00
  • c220a2e87b Simplify CMakeLists.txt using file wildcards. Maxim Poliakovski 2019-12-16 16:31:33 +01:00
  • 202ce280aa Slight tweak for better placement of binary dingusdev 2019-12-15 16:24:14 -07:00
  • 71a1b2eb63 Fixed CMakeLists errors and deleted makefile dingusdev 2019-12-14 12:56:43 -07:00
  • 684a8dee8e Move debugger sources into a dedicated subdirectory. Maxim Poliakovski 2019-12-14 13:48:54 +01:00
  • 0411a3a10f Fixed address issues dingusdev 2019-10-15 21:48:31 -07:00
  • 97e87dea9e Prevents the non-trivial array initialization error dingusdev 2019-10-15 21:19:00 -07:00
  • e7564ab0a5 Fixing compilation files and changed the authorship credits dingusdev 2019-10-15 21:15:12 -07:00
  • e50f4396db Merge branch 'devices' into 'master'. Maxim Poliakovski 2019-10-15 11:41:00 +02:00