Commit Graph

68 Commits

Author SHA1 Message Date
pierre 2e0274dd1f Core/DSPCore: Implement Jit emitters for all extended operations.
May break things, although my testing didn't reveal any regressions.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6357 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 23:43:26 +00:00
pierre 6d2c35a332 Core/DSPCore: Jit: only end emitting the current block when hitting an
unconditional branch(or idle skip), emit check g_dsp.pc and return when
hitting a conditional branch.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6281 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-14 13:17:38 +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 d86167961c DSP Jit enable ls* and sl* in jit.
Anyone feel like helping with the unit test?


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5390 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-19 13:29:05 +00:00
nakeee 282cf6c6b5 DSP jit: 'mv 's 'sn are now jitted. Added
void pushExtValueFromReg(u16 dreg, u16 sreg);
	void popExtValueToReg();
instead of the backlog.
Someone might want to add it to the Unit test


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5389 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-19 13:02:24 +00:00
nakeee e7dc6c26ce UnitTests compiles on non win32
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5343 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-12 05:33:17 +00:00
nakeee d950726041 DSP Jit: Jit some more AR action and added compile SR which suppose to hold the status for
flags such as S40 which we can use to optimize compile.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5331 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-11 18:06:29 +00:00
nakeee 7c35138435 DSP JIT reenable nr with a small fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5327 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-11 12:14:51 +00:00
j4ck.fr0st 57a3c87815 DSPJit: disabled NR again until we fix DSPEmitter::increase_addr_reg.
And to help test things like that: DSPJitTester (use with caution on x64, most likely fails there; r5250 might be why)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5306 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-09 19:18:50 +00:00
nakeee 91c6f5acba DSP Jit removed useless push/pop (at least I hope they were useless).
enabled nr in jit after getting skid_au's help in writing the inscrease_addr_reg.
ector can you please take a look and see if the loop code makes sense? it seems
no one it really sure how loops suppose to work in jit 


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5301 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-09 15:11:02 +00:00
nakeee 499936561a DSP LLE Jit, joined work with XK and skidu.
VERY EXPERIMENTAL DON'T EXPECT HIGH PERFORMANCE!.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5288 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-07 15:04:45 +00:00
XTra.KrazzY a8865d21b3 DSPLLE: Opcode LUT Cleanup
ABI: Far Call --> Call (thanks to correct vcproj settings)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5250 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-29 01:18:05 +00:00
Marko Pusljar 6bcae13ff8 DSPLLE - small idleskip improvment for zelda
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5248 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-28 17:10:36 +00:00
Marko Pusljar 095f81e2f9 DSPLLE - 5 new conditions added (not used atm), 4 used ones are now correct
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5231 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-24 14:51:04 +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 cac8fa8afc DSPLLE - small fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5221 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-22 16:32:48 +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 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 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 fbdf721e0e ROM dissasm "refresh" + RE + small fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4938 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-24 00:31:20 +00:00
Shawn Hoffman 94570d31f5 DSP: fix disassembler a little.
addis, cmpis, xori operate on ACx.M instead of ACCx
addax, subax, movax use whole AXx reg, not just AXx.L
addpaxz uses whole AXx instead of AXx.H

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4817 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 00:19:02 +00:00
Marko Pusljar f4bca6e21c DSPLLE stuff (2 new opcodes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4660 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-08 22:44:11 +00:00
Shawn Hoffman dc75095f99 re-apply dsp-related changes from r4533
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4569 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 17:45:35 +00:00
Shawn Hoffman 06aa62504c revert to r4531, but keep the changes from the following revisions: 4533,4550-4551,4556-4559
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4566 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 17:08:32 +00:00
Marko Pusljar b858befba2 DSPLLE small mul fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4533 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-12 16:17:22 +00:00
Marko Pusljar 10d7e1bf3e DSPLLE dissasm fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4501 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-06 13:28:03 +00:00
nakeee 7a0055e113 DSPLLE: made not into notc
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4499 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-05 09:06:21 +00:00
Marko Pusljar 10fb287311 DSPLLE stuff - no real progress, mostly useful as a reference for HLE improvement, Pikmin 1 has sound in intro though (can't be sure if its ok, because its too slow)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4496 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-04 12:49:26 +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 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
XTra.KrazzY c86d2e5129 Now ALL copyright dates are fixed to the legally correct year: The year in which the project began. Now we don't have to change it every year :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-28 21:32:10 +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 a9b7813462 DSPLLE: lordmark's fix for ilrrn opcode + some mask fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3888 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26 20:19:26 +00:00
nakeee e79b11af5b DSPLLE: fixed the unknown opcode errors
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3883 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-25 20:12:38 +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
Shawn Hoffman 89c55c32ec add a ucode to dspspy to dump rom areas from dsp to sd card
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3834 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-18 16:34:11 +00:00
luigi2us f5cb2efb3e That's what happens when you get excited and go too fast...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3804 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 17:59:16 +00:00
luigi2us e81c99da92 DSPLLE: Fix LSRNR.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3803 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 17:57:35 +00:00
nakeee 90f595bada DSPLLE: added lsrnr (based on lordmark and luigi suggestions) Still somethings seems wrong as it didn't fix the zelda problem:(
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3800 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 15:12:42 +00:00
nakeee 1654c582ab DSPLLE: razi approved condition code naming.
(we need to go over the dspspy code to see that we use the right names)



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3698 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-07 10:01:34 +00:00
LPFaint99 a41c1b2d0a add *.user, Win32, and x64 build dir to ignore list for DebuggerUICommon and Unit Tests
add *.aps to ignore list for DolphinWX dir
add eol-style native to 120 or so files

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3689 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-06 02:10:26 +00:00
Shawn Hoffman 16bf555f7b dsp lle: add default names for pdlabels[], so you don't get "(null)" with the disassembler
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3641 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-01 22:49:32 +00:00
hrydgard 04105baf4e DSPLLE: sort of semi-working breakpoints and stepping, if you flip an #ifdef. more work to do, for some reason it gets very slow when you enable it atm
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3573 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-28 16:23:40 +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
hrydgard f6ebaae792 dsp: disable the newfangled ext stuff until it can be verified and used. fix typo.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3527 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-21 13:11:47 +00:00
hrydgard 37375c7115 Implement the newly discovered DSP opcodes that I named LSRN and ASRN. Also (attempt to) implement reading ARAM through 0xFFD3, like the zelda ucode does.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3523 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-21 12:09:17 +00:00
hrydgard aecaf271f1 New DSP debugger: step one. (not ready yet, but try loading zelda WW and look at the dsp debugger..).
Had to shuffle around quite a lot of code to be able to extract the CodeView into a library nicely so it can be used from both the main dolphin and the LLE plugin...  also extracted the symboldb code.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3517 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-21 08:39:21 +00:00
Shawn Hoffman ff7f9020fe dsp: renamed R09 to WR1 in some tests, removed unused code in DSPTables.cpp, added showing of origin file in dspspy (please fix if [runningUcode - 1] is wrong)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3417 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-13 04:55:58 +00:00
hrydgard 0772db6af6 DSP: add a crazy little shell script that will build DSPCore into DSPSpy. make DSPCore build in gekko mode. re-add GC-pad controls to DSPSpy (now it can run inside Dolphin, kind of neat but not super useful for the obvious reasons).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3141 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-03 11:15:17 +00:00