Tyler Stachecki
8debccc73e
Add SDC1, CP1 comment fixes.
2014-07-04 13:52:56 -04:00
Tyler Stachecki
a88f03f045
Fix a LWC1 dependency issue.
2014-07-04 13:41:29 -04:00
Tyler Stachecki
31d9f611d1
Implement a handful of CP1 instructions.
2014-07-04 13:17:32 -04:00
Tyler Stachecki
92887871f0
Forward CP1 registers in EX logic.
2014-07-04 11:01:25 -04:00
Tyler Stachecki
f4a54051cd
Fill in comment block after last commit.
2014-07-02 23:37:08 -04:00
Tyler Stachecki
d71cc95a0d
Add CP1 instructions to decoder logic.
2014-07-02 23:08:36 -04:00
Tyler Stachecki
691d3009e4
Housekeeping: Move CP0/CP1 functions around.
2014-07-02 21:43:07 -04:00
Tyler Stachecki
2484f31253
Experimental fixes for LWC1/MTC1.
2014-07-02 01:43:41 -04:00
Tyler Stachecki
c11f271348
Add initial MTC1 implementation.
2014-07-02 00:05:42 -04:00
Tyler Stachecki
e8d7ece375
Add initial LDC1 implementation, fix LWC1 entry.
2014-07-01 23:58:43 -04:00
Tyler Stachecki
c564685da4
Make sure CE bits get set on CPU exception.
2014-07-01 23:49:17 -04:00
Tyler Stachecki
62bdd33a58
More preliminary FPU work.
2014-07-01 23:35:09 -04:00
Tyler J. Stachecki
11407b32ff
Don't use -finline-limit with Clang.
2014-07-01 23:15:05 -04:00
Tyler J. Stachecki
3c5a1850ee
Use different mask for CAUSE in faults.
2014-07-01 23:14:58 -04:00
Tyler J. Stachecki
d031e75fd5
Aggressive inlining for release builds.
2014-07-01 23:14:53 -04:00
Tyler J. Stachecki
c2429cb613
Only do LDI on reads, not writes.
2014-07-01 23:14:49 -04:00
Tyler Stachecki
89b327ed9a
Remove some artifacts from CMakeLists.
2014-07-01 22:57:17 -04:00
Tyler Stachecki
e16a997119
Squash the longstanding memory bug.
...
Forgot to mask the data by the dqm before writing it on the bus.
We should do this before putting the data on the bus to prevent
the extra operation in each consumer.
2014-07-01 22:03:11 -04:00
Tyler Stachecki
dc64648776
Mark any TLB probes as failures.
2014-07-01 21:28:14 -04:00
Tyler J. Stachecki
a13f1fc3b7
Start prepping FPU.
2014-06-25 21:45:29 -04:00
Tyler Stachecki
05db88349e
Improve build environment.
...
* Add compiler version string macro.
* Add REQUIRED tags to CMake packages.
Signed-off-by: Tyler Stachecki <tstache1@binghamton.edu>
2014-06-24 21:18:36 -04:00
Tyler Stachecki
3749f22139
Cleanup clang build warnings.
2014-06-24 20:09:54 -04:00
Tyler Stachecki
084d3ed853
vr4300: Add support for several instructions.
...
Thanks go out to krom for the work in this commit.
Instructions added: DADD, DSUB, DADDI, DADDIU, DADDU, DSUBU,
DDIV, DMULT, DSLL, DSLLV, DSRA, DSRAV, DSRL, DSRLV, DSRL32 NOR.
Signed-off-by: Tyler Stachecki <tstache1@binghamton.edu>
2014-06-24 19:54:09 -04:00
Tyler Stachecki
7ed27cefe6
os/unix: Set default to windowed-mode.
2014-05-23 09:05:40 -04:00
Tyler Stachecki
07a3a079f6
Cleanup the OS interface somewhat.
2014-05-22 17:42:28 -04:00
Tyler Stachecki
45a06d3532
Allow instructions to raise exceptions, add some CP1.
2014-05-20 22:16:12 -04:00
Tyler Stachecki
6612ed356b
Link against fewer shared libraries.
2014-05-19 23:00:43 -04:00
Tyler Stachecki
2c51f781d4
os/unix: Use consistent comment style.
2014-05-19 22:46:13 -04:00
Tyler Stachecki
93438cbdd4
os/windows: Handle window close and resize events.
2014-05-19 22:43:51 -04:00
Tyler Stachecki
f1b32654bc
os/unix: Handle X11 window close and resize events.
2014-05-19 21:06:27 -04:00
Tyler Stachecki
4ec3ca0f24
os/windows: Fix comment in header.
2014-05-18 15:48:44 -04:00
Tyler Stachecki
46c65991d8
os/windows; Pass argc and argv to cen64_main.
2014-05-18 15:43:20 -04:00
Tyler Stachecki
48b9585778
os/windows; Add various fixes.
2014-05-18 14:32:05 -04:00
Tyler Stachecki
520c616369
Create gl_window before performing GL calls.
2014-05-18 14:20:31 -04:00
Tyler Stachecki
9b0a04fcf7
Commit initial OS interface.
2014-05-18 14:13:27 -04:00
Tyler Stachecki
9ae2fdbcf8
Start integrating data cache into DC stage.
2014-05-10 15:21:55 -04:00
Tyler Stachecki
656103920b
VR4300: Start adding data cache support.
2014-05-06 19:49:03 -04:00
Tyler Stachecki
49cbfc8994
VR4300: Start adding instruction cache support.
2014-05-06 19:11:51 -04:00
Tyler Stachecki
6dc8c06f20
Various subtle fixes and hacks.
2014-04-25 21:28:18 -04:00
Tyler Stachecki
e912d835e6
Clean up some more things.
2014-04-21 15:02:27 -04:00
Tyler Stachecki
09b0d6fba2
Remove conditionals from the fast path.
2014-04-21 14:28:34 -04:00
Tyler Stachecki
d5170999d5
VR4300: Add support for SRAV instruction.
2014-04-21 14:02:13 -04:00
Tyler Stachecki
bce0070159
VR4300: Add support for LWL, LWR instructions.
2014-04-21 13:55:09 -04:00
Tyler Stachecki
451cbfe451
Allow some ROMs to proceed temporarily.
2014-04-21 12:42:50 -04:00
Tyler Stachecki
4361c9e48e
Cleanup some random bits and pieces.
2014-04-21 11:50:32 -04:00
Tyler Stachecki
0c312ebe2d
Fix more undefined behaviour.
2014-04-21 10:57:36 -04:00
Tyler Stachecki
e6ea9584dc
Add preliminary support for Clang.
2014-04-21 10:38:50 -04:00
Tyler Stachecki
33145e4bd4
Fix some undefined behaviour.
2014-04-21 10:18:21 -04:00
Tyler Stachecki
9cc3a31767
Fix some bugs with stores and such.
2014-04-21 09:29:43 -04:00
Tyler Stachecki
99d5eea419
VR4300: Add support for SWL, SWR instructions.
2014-04-20 13:21:08 -04:00