Commit Graph

65 Commits

Author SHA1 Message Date
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 e5b75aef09 unbreak dsptool/dspspy
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3521 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-21 11:12:48 +00:00
nakeee 59487bddcf Some LLE memory access
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3520 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-21 09:56:39 +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
hrydgard 80217a6ed7 DSP: Fix the invalid memory accesses that the Zelda Ucode does in LLE. No LLE sound yet but at least no crazy errors :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3516 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-21 06:56:44 +00:00
nakeee 07af37d11a opsss..
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3493 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-18 21:15:49 +00:00
nakeee d91389fea2 dspcodeutil now name is always dsp_code as needed by main_spy.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3492 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-18 20:47:02 +00:00
nakeee 37ceb042e1 DSPCodeUtil some code fixing
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3485 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-17 23:36:04 +00:00
nakeee a536460067 Fixed buffer overflow in CodesToHeader, now dsptool -m creates files correctly as far as I could test
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3484 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-17 22:16:48 +00:00
nakeee 697ce7b1ab createtest fixes and compile fixes for linux
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3482 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-17 21:44:03 +00:00
hrydgard ff83f9eb71 sorry
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3481 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-17 21:18:56 +00:00
hrydgard 28122e0a9b Implement the findings about CR and lrs/srs in LLE plugin. Don't hear any difference in the few games i tried.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3480 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-17 21:08:49 +00:00
nakeee cac04c958b More work on create test (almost working beside some annoying bug)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3451 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-15 16:48:34 +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
sl1nk3.s d99deae17d Fix for tatsunoko vs capcom and those wii games getting corrupted memory error
+ a couple of (serious...) fixes for some of my mistakes, and some warning fixes

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3411 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-12 15:47:41 +00:00
XTra.KrazzY c4632fe345 DSPSpy can now dump all microcodes in a press of a button (2 on the Wii). Please test this
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3407 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-12 10:46:22 +00:00
XTra.KrazzY aeb7053230 DSPTool now accepts multiple files with the '-m' flag. See usage for more information.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3406 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-11 07:11:05 +00:00
XTra.KrazzY 2122da5cd2 DSPSpy: Added preliminary support for realtime multiple microcode processing
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3383 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-08 21:15:01 +00:00
hrydgard bb06a53e28 DSP LLE: Just some renaming and cleanup. Prepared for proper base address support in disassembly. Added a "DebugInterface" for the DSP which would allow us to hook up a CodeView .. although CoreView currently doesn't have any support for variable-length instructions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3351 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-07 11:06:40 +00:00
hrydgard 59ed31f291 (just some obsessive code cleanup)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3142 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-03 11:57:53 +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
hrydgard 2ca4567601 DSP: Improve multiplier code. Add support for unsigned operation - but temporarily disabled, since it somehow makes things sound even worse :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3139 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-02 22:17:24 +00:00
nakeee 4ae8ad7cf2 compile fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3136 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-02 19:42:19 +00:00
hrydgard e89af68f4d DSPLLE: Split the huge DSPInterpreter.cpp into separate files for the different categories of ops. Minor cleanups.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3134 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-02 16:15:52 +00:00
hrydgard 732562325d DSP: Document in a comment what CLR15/SET15 appears to do. (unsigned multiplication)
minor fix in op table.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3133 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-02 14:57:26 +00:00
hrydgard 474f1343f7 DSPLLE: Wrapping behaviour for single increments/decrements of address registers implemented. It made little/no difference as far as I can tell :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3129 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 22:17:22 +00:00
hrydgard 2352cf0fed DSPLLE:
Enable the SET40 sign extension stuff.
Try to separate the "core" from the "interpreter" logically, a little bit. It's still a bit of a fuzzy border. 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3128 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 20:06:24 +00:00
hrydgard dfb5fef792 oops
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3127 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 19:09:17 +00:00
hrydgard 0d57b7f01a DSP: I hereby name R08-R11 WR0-WR3, standing for Wrap control Registers 0-3.
Kill "CR". 
Document decrements a little bit.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3126 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 19:07:29 +00:00
XTra.KrazzY 397af9ade4 Tiny fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3119 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 14:52:54 +00:00
nakeee 6cc8c0744b DSP: Fixed case and some printing in asm
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3117 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 12:15:48 +00:00
nakeee e39f0f9ce8 DSP: reverting some condition code until we handle 0x1 and 0x2 correctly
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3115 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-01 09:26:47 +00:00
nakeee 1f4c000ae6 DSP: updated condition code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3099 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-28 09:12:29 +00:00
XTra.KrazzY 989e2590a2 Tiny fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3072 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-25 10:44:42 +00:00
XTra.KrazzY 1045fc7e98 Completely fixed DSPTool, on all of its memory leaks, bad API and bad C++. (compiling with include works perfectly)
More small leftover fixes

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3071 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-25 10:38:26 +00:00
XTra.KrazzY a8c224023c Fixed DSPTool include bugs and some leftover fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3069 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-25 02:13:33 +00:00
XTra.KrazzY e0a202b7ef Made DSPTool more informative and actually fail when compile fails (right now it kept creating invalid files)
Also, created an example test which uses the INCLUDE directive. Tests are much shorter and human-readable now!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3064 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-24 15:31:13 +00:00
nakeee 92e6d7c283 DSP: fixed compiler warnings and 2 crash bugs
made the dsp_code test use our lable table rather than the table which was there before (and had few mistakes).
The other tests need to be fixed as well.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3063 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-24 14:36:31 +00:00
nakeee 89178f411c DSP switched mode 16 and 40
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3045 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-22 19:08:13 +00:00
nakeee cf5b6efba0 DSP change condition code in accordance to latest finding
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3027 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-21 08:53:36 +00:00
hrydgard b4c22390ac More DSPSpy findings - nakee's "TSTAXL" isn't test. Not sure what it is though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3003 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 21:35:21 +00:00
nakeee d939afdcf2 one file missing in sconstruct
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3002 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 21:26:44 +00:00
hrydgard 10989fda06 DSP: Comment some new discoveries.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3001 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 20:44:42 +00:00
hrydgard 8716a58ae3 First DSPSpy results. cleanup and commenting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2999 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 19:26:06 +00:00
hrydgard 6ec5d28eda DSPSpy: First version submitted, resurrected from the ages of time. Build the dsp code by running dspbuild.bat (or an equivalent shell script), then build the elf using devkitpro/libogc and boot it on your Wii using Homebrew Channel or whatever. You'll get a lot of numbers on your screen.
DSPTool: build fix.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2995 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 14:02:34 +00:00
hrydgard ee933cb5d4 DSPtool: Better code comparer + cmdline interface added. header generator bugfixed. dsp_test.S now matches the binary.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2994 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 12:27:24 +00:00
hrydgard e7e4ef4481 DSP: More work on dsptool. Minor bugfixes. Add some testdata for dsptool.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2993 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-18 11:31:37 +00:00
nakeee 42726a7576 Trying clr15/set15, this is an educated guess after looking at ucodes. Please test it and tell me if you see any
real difference in sound beside on hermes' demo


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2985 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-16 21:46:55 +00:00
nakeee 508b32b94f dsp: small disasm fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2983 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-16 16:02:54 +00:00
nakeee 0801abdcc8 small cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2978 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-16 00:06:37 +00:00