Commit graph

5223 commits

Author SHA1 Message Date
Brett Lawson
eede5c5dc4 Fixup fmadd operation. 2015-10-20 21:43:04 +01:00
Brett Lawson
132f50e62a Fix fadd and fadds for negative numbers. 2015-10-20 21:42:40 +01:00
Brett Lawson
9e2dae6910 Fix lots of interpreter instructions. 2015-10-20 21:41:59 +01:00
Brett Lawson
85d51e4aca Further improve FPU emulation accuracy. 2015-10-20 21:41:26 +01:00
Brett Lawson
48538b6132 Stub more kernel calls. 2015-10-19 22:47:17 -04:00
Brett Lawson
bb309a3383 Use VirtualAlloc and PAGE_NOACCESS to lock down unimplemented data.
If the WiiU process attempts to read or write any unimplemented
data, the emulator will now break rather than continueing
with potentially unexpected results.
2015-10-19 22:47:09 -04:00
James
cb82c1f254 Add appveyor build status to README.md 2015-10-20 02:33:58 +01:00
James Benton
3984f29236 Revert "Add fctiw, fctiwz, frsp, fabs, fnabs, fmr, and fneg to the JIT, with implementations ported from Dolphin"
This reverts commit df6cf15cda.
2015-10-20 02:15:45 +01:00
James Benton
6d10ff6636 Implement FSChangeDir. 2015-10-20 02:05:42 +01:00
James
4cf281307a Merge pull request #56 from MoochMcGee/master
Add fctiw, fctiwz, frsp, fabs, fnabs, fmr, and fneg to the JIT.
2015-10-20 02:03:48 +01:00
James Benton
4797e23b76 Clear floating exceptions after reading them. 2015-10-20 00:49:55 +01:00
James Benton
adffdd1a5c Fix updateFPRF setting positive flag for +0. 2015-10-20 00:49:49 +01:00
James Benton
bc55f7b6c5 Fix fabs.
std::fabs is weird, clear the bit manually.
2015-10-20 00:49:41 +01:00
Darius Goad
df6cf15cda Add fctiw, fctiwz, frsp, fabs, fnabs, fmr, and fneg to the JIT, with implementations ported from Dolphin 2015-10-19 17:46:22 -05:00
James Benton
7398b647af Merge branch 'master' of github.com:exjam/wiiu-emu 2015-10-19 21:11:27 +01:00
James Benton
1f4cc6dbb3 Fix carry for sraw. 2015-10-19 21:11:00 +01:00
James Benton
8cfb5a9ce7 Fix eqv instruction not being registered. 2015-10-19 21:10:57 +01:00
James Benton
893481c053 Fix slw failing for shifts > 31. 2015-10-19 21:10:54 +01:00
James Benton
6dabd92733 Fix divw, apparently -N / 0 = -1 and +N / 0 = 0. 2015-10-19 21:10:52 +01:00
James Benton
d01388668e Fix addicx, it should not update overflow register. 2015-10-19 21:10:47 +01:00
James Benton
89109d0f14 Update SPRs with values from wiiubrew. 2015-10-19 21:09:34 +01:00
Lioncash
db8d511fda be_val: Default initialize value member
Puts the object in a valid state when no constructor argument is given
2015-10-19 21:09:34 +01:00
James
994f3e72e3 Merge pull request #54 from lioncash/memcpy
bitutils: Use memcpy instead of reinterpret_cast for bit_cast
2015-10-19 09:48:55 +01:00
James
8c80476fb5 Merge pull request #55 from lioncash/bit
bitutils: Make bit_width constexpr
2015-10-19 09:48:50 +01:00
Lioncash
f4ce6f0537 bitutils: Make bit_width constexpr 2015-10-18 22:35:48 -04:00
Lioncash
e0c7ae7c42 bitutils: Use memcpy instead of reinterpret_cast for bit_cast
Doesn't have the potential to break strict aliasing or alignment
requirements this way.
2015-10-18 22:14:29 -04:00
James Benton
242c6b5783 Update SPRs with values from wiiubrew. 2015-10-18 13:06:34 +01:00
James
ff2056a651 Merge pull request #52 from lioncash/init
be_val: Default initialize value member
2015-10-18 00:22:15 +01:00
Brett Lawson
1c8a1edd23 Fuzzing works now! Lot simpler code too... 2015-10-17 03:01:09 -03:00
Brett Lawson
f577a21d1b A bunch of stuff I'm about to overwrite... 2015-10-17 01:58:27 -03:00
Lioncash
0042d84f09 be_val: Default initialize value member
Puts the object in a valid state when no constructor argument is given
2015-10-16 13:57:58 -04:00
Brett Lawson
667f03899c CPU should not rely on any external components. 2015-10-16 03:10:07 -03:00
Brett Lawson
265da06dfd Began refactor of CPU/Memory structure. 2015-10-16 02:39:42 -03:00
Brett Lawson
1b3fa1d646 More tracer stuff... 2015-10-15 17:28:06 -03:00
Brett Lawson
04967a537e Added actual instruction generator to fuzzer. 2015-10-15 14:24:15 -03:00
Brett Lawson
1fe681256f Merge pull request #51 from Tilka/fmul
Interpreter: fix inputs for float multiplies
2015-10-15 14:23:36 -03:00
Tillmann Karras
83d1c8736e Interpreter: fix inputs for float multiplies 2015-10-15 18:38:44 +02:00
James
34cacba224 Merge pull request #50 from Tilka/normalize
Normalize file flags and line endings
2015-10-15 17:26:00 +01:00
Tillmann Karras
757afe2ef5 Normalize line endings to LF only 2015-10-15 18:22:16 +02:00
Tillmann Karras
dff76190c6 Make files not executable
find * -type f -executable -execdir chmod -x {} \;
2015-10-15 18:20:42 +02:00
James Benton
ca6ed6d5b5 Add gx2 vsync alarm. 2015-10-15 02:16:08 +01:00
James Benton
a6d47ce43a padscore merge 2015-10-15 02:15:29 +01:00
James Benton
333777df21 Add nn_nfp.
Standardise nn::Result.
Rename the nn_* libraries.
2015-10-15 02:15:23 +01:00
James Benton
aa8934673d Some KPAD/VPAD stuff. 2015-10-15 02:15:17 +01:00
James Benton
62c69e8dff Add a comment to virtual_ptr to try appease Brett 2015-10-15 02:15:11 +01:00
James Benton
2eb7e447b9 Fix interrupt checker when tCurrentCore is not set.
This happens when running tests.
2015-10-15 02:15:04 +01:00
Brett Lawson
93b722f3ab Fix kc implementation bug. 2015-10-15 01:36:29 -04:00
Brett Lawson
e0e98b5e18 Started work on instruction fuzzing.
Added some additional meta-data to the instruction list to
allow us to identify incorrectly written instruction data
(fixed a few).
2015-10-15 02:41:05 -03:00
Brett Lawson
c32ecd8c26 Various fixes for the JIT.
--jitdebug now runs AmiiboSettings again, though it
appears to fail on --jit for some reason...
2015-10-14 20:04:05 -03:00
Brett Lawson
afa32b9b81 Add better error logging for JIT generation failures. 2015-10-14 20:04:05 -03:00