Commit Graph

30 Commits

Author SHA1 Message Date
pierre 98752f2a1e Core/DSPCore: Changed g_dsp._r back to g_dsp.r. Removed the check*Exclude
functions accidentally added. Fixed the jitted ar register arithmetic.
Added a CMakeList.txt for the UnitTests, but did not add the subdirectory
to Source/CMakeLists.txt.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6687 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 20:20:52 +00:00
pierre fc1db5eaa0 Core/DSPCore: Reorganize register layout for accessing accumulators
(acc and ax) and product register with one read/write.

Gives a minuscule speedup of not more than 4%. In exchange, breaks all
your out-of-tree changes to dsp. Tests are not building again, yet.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6680 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 02:12:06 +00:00
pierre 4b9831cdce Core/DSPCore: Extended opcode handling fixes
* Make writeToBackLog private to DSPIntExtOps.cpp 
  (JIT variants of 'l and 'ln are disabled and broken as is)
* Make zeroing of the backlog conditional on doing an interpreter fallback and
  do it at a few more places
* Fix selection of cleanup for extended opcodes.
* Fix the DSP unit tests to correctly emit the function prolog/epilog
  (else EBX wouldn't be saved)
* Add a few more DSP unit tests


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6325 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-31 23:26:18 +00:00
Marko Pusljar 0a606d7356 fixes for my previous commits
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6095 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-14 09:07:28 +00:00
Marko Pusljar a0c44df6c0 misc stuff
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5468 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-23 08:41:58 +00:00
Marko Pusljar f6ce87765f DSPLLE - AR decrement fixed, +other small fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5437 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-07 19:32:16 +00:00
nakeee 2e622c17dc Remove the UDSP union
functions are passed by value rather than by reference
This is part of a bigger change so please report if it broke compile


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5228 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-24 05:05:25 +00:00
Marko Pusljar 503bf545a3 DSPLLE - 0xa100 figured out = abs(), small mul fix, cleaning, some extra comments
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5216 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-19 21:53:41 +00:00
Marko Pusljar d9714c3c9d DSPLLE - tons of bugs fixed... try Zelda ucode games under LLE now (like Luigi Mansion :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5211 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-18 00:18:36 +00:00
Marko Pusljar 70a712c065 DSPLLE - flags&stuff,xar->subarn,0x80 kinda figured out,... (experimental)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5174 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-08 21:25:35 +00:00
Marko Pusljar ff8ce634e3 DSPLLE - addaxl,mulc,'ln fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5138 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-27 21:24:25 +00:00
Marko Pusljar 74a6b5638f DSPLLE - 2 new opcodes (TSTPROD,MULAXH)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5104 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-22 00:22:04 +00:00
Marko Pusljar f7bf29a528 DSPLLE - 'L ext opcode fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5095 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-21 13:23:29 +00:00
nakeee fd40513fed Better comment the writelog code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4822 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 11:09:20 +00:00
Shawn Hoffman 3848e68585 DSP LLE: code cleanup that doesn't affect behavior.
Make DSPCore build properly in debugfast (breakpoints work again)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4816 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 00:11:29 +00:00
hrydgard af08186daa DSP comments & minor reorganization (moved all DSP state into the g_dsp struct). No functionality change.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4813 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-12 21:38:39 +00:00
Marko Pusljar 4d5eba2ec9 just a small fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4342 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-29 18:10:54 +00:00
Marko Pusljar d1f0294053 DSPLLE + 2 small fixes, many GC AX games are almost perfect (sound wise, ex. Super Monkey Ball 1/2), if PC is fast enough (3GHz C2D+), Zelda type games too slow to be testable
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4340 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-28 16:39:29 +00:00
nakeee 56c4eea4c1 DSPLLE: trying to optimize a bit (based on drkrazi's suggestion)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4019 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-20 07:01:04 +00:00
nakeee b787f5f8f7 DSPLLE: attempt to fix extended ops please review this patch carefully.
thinks to note
- All ext commands should call zeroWriteBackLog() (before changing any 
reg)
- increase/decrease ar functions now only return a value not actually 
change anything


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4018 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-19 21:37:24 +00:00
nakeee 8155439dd1 DSPLLE fix for latest commit (thanks lp)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4017 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-18 15:57:41 +00:00
nakeee 13a901146f DSPLLE:
- Extension fixes (Joined work with LM)
- Shuffle fix for my off by one error



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3958 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-10 09:20:12 +00:00
nakeee 45a71bf3ef DSPLLE: fix some comments, returned andc and orc (according to tests)
but andc'ls still behaves strange and we couldn't merge them together.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3915 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-31 15:21:35 +00:00
nakeee 6a92924636 DSPLLE: remove the if 0 around SR_MUL_UNSIGNED in hope to figure out why it makes AX games sound bad
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3892 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-27 16:41:11 +00:00
nakeee 07617f757c DSPLLE added new LD code (please report games misbehaving)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3887 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26 16:36:22 +00:00
nakeee 3b0e949c93 DSPLLE: make ext opcodes to use table as well (tell me if you get
unknown opcodes or the like). LD changes are reverted until we get the 
right code.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3880 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-24 16:04:29 +00:00
nakeee ef6b00f9b0 DSPLLE: LD now doesn't give memory errors, still need to be tested with LDM/N and if it really takes 0x00
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3870 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-22 06:28:04 +00:00
nakeee 94cc33cb0c DSPLLE: ld only increase 0x3 by one
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3867 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-20 22:12:53 +00:00
hrydgard ccebd7512e Fix a DSP disasm problem, misc minor stuff .. not much to see here
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3745 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-11 10:18:25 +00:00
hrydgard 895b02f410 DSP: Add txt file with luigi ucode comments (very basic). Rename some stuff. Remove function pointer in g_dsp structure, replace with a "Host" function call. Fix a problem where symbols weren't loaded into DSP debugger.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3563 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-28 10:00:25 +00:00