Commit graph

953 commits

Author SHA1 Message Date
Tyler Stachecki
cab3a7cbac Fix another handful of remaining bugs. 2014-04-20 12:35:14 -04:00
Tyler Stachecki
3bb8d496b4 Fix a slew of bugs in the pipeline. 2014-04-20 12:07:33 -04:00
Tyler Stachecki
cbb4c4ea07 Fix some issues with recent commits. 2014-04-20 08:21:26 -04:00
Tyler Stachecki
a251d182e3 Allow the window to be resized. 2014-04-20 08:02:34 -04:00
Tyler Stachecki
91f098991f VR4300: Add support for DIV, DIVU instructions. 2014-04-20 08:02:13 -04:00
Tyler Stachecki
cc771420c0 Hack the pipeline enough to turn over. 2014-04-19 18:02:19 -04:00
Tyler Stachecki
a7484376fc Cleanup some issues with raising exceptions? 2014-04-19 17:46:56 -04:00
Tyler Stachecki
454033499d Start integrating OpenGL (GLFW) and friends. 2014-04-19 17:14:45 -04:00
Tyler Stachecki
1de84ca1ed Use the right mask for RCP interrupts. 2014-04-19 16:28:10 -04:00
Tyler Stachecki
ad1076c794 VR4300: Add support for the SD instruction. 2014-04-19 15:58:13 -04:00
Tyler Stachecki
1594ef4b3f VR4300: Start actually serving interrupts. 2014-04-19 15:54:04 -04:00
Tyler Stachecki
d498ac07e2 VR4300: Improve decoder, add ERET instruction. 2014-04-19 14:54:08 -04:00
Tyler Stachecki
3a7442d7f6 Get closer to implementing interrupts. 2014-04-19 12:20:39 -04:00
Tyler Stachecki
eb55cb7e9c Another temporary fix for buggy load/stores. 2014-04-19 08:55:41 -04:00
Tyler Stachecki
10503b750f VR4300: Add support for the MT{HI,LO} instructions. 2014-04-19 08:14:44 -04:00
Tyler Stachecki
a5f7925912 Add a temporary fix for buggy load/stores. 2014-04-19 08:06:07 -04:00
Tyler Stachecki
ab4f705b35 Fix a bug with doubleword reads. 2014-04-18 23:36:05 -04:00
Tyler Stachecki
b951f9ccf5 Start integrating interrupt support. 2014-04-18 22:59:48 -04:00
Tyler Stachecki
053d166b0c VR4300: Add support for the SLTIU instruction. 2014-04-18 22:24:43 -04:00
Tyler Stachecki
12935a4b97 VR4300: Add support for the SRA instruction. 2014-04-18 22:21:50 -04:00
Tyler Stachecki
db4d11a225 VR4300: Add support for the DDIVU instruction. 2014-04-18 22:21:34 -04:00
Tyler Stachecki
b7fe07049b VR4300: Add support for DSLL32, DSRA32 instructions. 2014-04-18 22:15:43 -04:00
Tyler Stachecki
a5e2258026 VR4300: Add support for the DMULTU instruction. 2014-04-18 22:11:13 -04:00
Tyler Stachecki
1bd542d918 Wrap some unimplemented instructions in macros. 2014-04-18 22:03:49 -04:00
Tyler Stachecki
809cbe1eb5 Fix issues with loads, hack LD into the pipeline. 2014-04-18 22:03:00 -04:00
Tyler Stachecki
3276177460 Add some temporary placeholder functions. 2014-04-18 21:28:13 -04:00
Tyler Stachecki
9127d539f8 Add support for PI DMAs, correctly initialize RDRAM. 2014-04-18 21:15:38 -04:00
Tyler Stachecki
664731d298 Configure build system for maximum performance. 2014-04-18 21:12:58 -04:00
Tyler Stachecki
e4104f4cea Implement RDRAM base reads and writes. 2014-04-18 18:14:49 -04:00
Tyler Stachecki
9feac3fe38 VR4300: Add support for SLT, SLTI instructions. 2014-04-18 17:52:07 -04:00
Tyler Stachecki
66f1d1a88d VR4300: Add support for J, JAL instructions. 2014-04-18 17:45:43 -04:00
Tyler Stachecki
3a126249c9 Allow PI to perform cartridge ROM reads. 2014-04-18 17:18:12 -04:00
Tyler Stachecki
e605bcc232 Use similar length fields for MMIO register debug. 2014-04-18 17:17:26 -04:00
Tyler Stachecki
744e7ba269 Handle endian-ness at memory level, not in logic.
Also fix buggy logic in PIF RAM read.
2014-04-18 17:16:01 -04:00
Tyler Stachecki
13f0d2c9e5 Bus: Pass the correct instance to cart accessor. 2014-04-18 17:14:21 -04:00
Tyler Stachecki
c96270e53a VR4300: Fix inconsistent spacing in pipeline.c. 2014-04-18 17:13:37 -04:00
Tyler Stachecki
f22903b2ed VR4300: Initialize MI registers.
Set MI_VERSION_REG and MI_INIT_MODE_REG at initialization time.
2014-04-18 17:12:41 -04:00
Tyler Stachecki
93a9617641 Fix sign-extension issue in VR4300_SHRL. 2014-04-18 17:11:40 -04:00
Tyler Stachecki
644802b5ea Fix buggy mask operation in VR4300_JALR_JR. 2014-04-18 16:07:29 -04:00
Tyler Stachecki
9f1847ce29 Fix a access violation in pif_ram_read. 2014-04-18 15:17:34 -04:00
Tyler Stachecki
85356dbee5 VR4300: Add support for SLLV, SRLV instructions. 2014-04-18 15:14:03 -04:00
Tyler Stachecki
706c9c4462 VR4300: Add support for the SLTU instruction. 2014-04-18 15:08:33 -04:00
Tyler Stachecki
91f0b758fa VR4300: Add support for MF{HI,LO], MULT{,U} instructions. 2014-04-18 15:05:57 -04:00
Tyler Stachecki
b3e5d94811 Implement external PIF RAM read/write. 2014-04-18 14:15:18 -04:00
Tyler Stachecki
80fdac1231 VR4300: Add support for SLL, SRL instructions. 2014-04-18 13:55:44 -04:00
Tyler Stachecki
9d2bbdfa9c Implement external SP mem read/write. 2014-04-18 13:41:29 -04:00
Tyler Stachecki
25a6ae8431 Mask bus writes to requested type, etc. 2014-04-18 13:34:23 -04:00
Tyler Stachecki
9098266156 VR4300: Add support for JALR, JR instructions. 2014-04-18 13:04:35 -04:00
Tyler Stachecki
d114038a2b Add option for debugging MMIO register access. 2014-04-18 12:44:57 -04:00
Tyler Stachecki
4560adf7a7 Populate with interfaces and devices. 2014-04-18 11:24:43 -04:00