Commit graph

1115 commits

Author SHA1 Message Date
tehpola
cb801caebc Classic controller now uses 1.1-style controls and a bit of GC controller refactoring and commenting. 2010-05-24 14:42:07 +00:00
sepp256
e084c1deaa Some improvements to the button mapping frame.
This is a WIP, so further tweaks are needed.
Classic & WMNC are incomplete and will crash if you try to map their buttons.
2010-05-24 14:38:47 +00:00
emukidid
6abf74f69b MEM1 ROM cache for GC 2010-05-24 07:48:08 +00:00
emukidid
5aa1fe5d8b Small fixup to the ARAM-blocks.c 2010-05-24 07:47:01 +00:00
sepp256
588d5d27af Implemented Default, Load, and Save Button Mappings.
TODO: read/write button mappings to file in the input plugin.
2010-05-24 07:42:44 +00:00
sepp256
3afb16515e Fixed "None" button mapping for GC pads. 2010-05-24 07:42:15 +00:00
sepp256
69fe20becc Reverted some parts of input plugin to use controller_config_t* in virtualControllers[].
Now, the configs are saved in controller_t, virtualControllers[].config points to the one we're using.
Added index to button mappings, so that we can easily cycle through them.
Updated Button Configuration Frame.
Note: Classic and WM+NC still broken. Only GC controllers work.
2010-05-24 07:41:24 +00:00
emukidid
c443291153 Improved DVD read speed, reduced GC Recomp-Cache, increased GC texture cache 2010-05-23 22:19:06 +00:00
emukidid
0f52f3a704 Made ARAM-blocks cache have 8x4kb MEM1 cached blocks, fixes Dynarec performance on GC. Fixed ROM-Cache.c function header. 2010-05-23 22:17:41 +00:00
sepp256
288827860d Rough implementation of reconfigurable button mapping in the menu.
Added default, current, and save config slots to the input plugin.
Currently only GC controllers work. Classic and WM+NC needs to be updated.
The menu layouts need a lot of tweaking, but I wanted to update SVN in case tehpola works on Classic/WM+NC code.
2010-05-23 04:40:07 +00:00
tehpola
6e7ffef1de Adding invertedY flag 2010-05-23 03:29:08 +00:00
tehpola
014f16edf8 Demo implementation for fully configurable controls. This currently leaves WiimoteNunchuk and Classic as broken so those won't build until we've decided on this method or not. 2010-05-23 03:25:44 +00:00
tehpola
8e140b39f6 Removing constant propagation and an unfinished function from dynarec. It'll remain in the tehpola branch, but doesn't really need to be here now. 2010-05-23 02:26:22 +00:00
emukidid
fab771a95b Fixup for GC and wrappers.c 2010-05-23 02:22:17 +00:00
emukidid
a6af2bf913 Ported dynarec from /tehpola (with func linking and constant propagation) 2010-05-23 02:20:16 +00:00
tehpola
0f5f64a1ab Changing start_addr and end_addr in funcs to be 32-bit instead of the shortened 16-bit addresses previously used. This allows links_out to use func trees correctly (previously conflicts would arise between links that had overlapping 16-bit addresses). 2010-05-22 11:58:11 +00:00
sepp256
a16995ceed Fixed PAL video mode issue which caused a crash on Load ROM. 2010-05-22 08:08:17 +00:00
emukidid
5d215b35f1 ROM-Cache-MEM2 bug fixup (length/4 would round much causing bad reads) 2010-05-21 16:03:38 +00:00
tehpola
5629955b53 Linking on the PS3 now uses CTR to branch to an absolute address so there are no issues if the code is too far apart. 2010-05-21 15:37:45 +00:00
tehpola
31cecb51b7 Adding DCFlushRange and ICInvalidateRange from libogc to make sure that code is properly flushed and invalidated when modified. 2010-05-21 15:36:06 +00:00
tehpola
aed2fe7c96 I recently realized that mtfsf uses a FPR as its source register, not a GPR, so I've adjusted the CVT_W_FP code to work properly based on that. Currently, however, this runs the risk of unsetting IEEE mode and/or enabling inexact exceptions.
Also, I've added the nonvolatile func register to the clobber list of dyna_run.
2010-05-21 15:33:10 +00:00
emukidid
5f5e7f7d46 Code formatting cleaned up in exception.c and interupt.c 2010-05-21 15:27:50 +00:00
tehpola
985b1e3ce3 Bringing ps3 branch up to speed with changes made locally on my PS3. 2010-05-19 00:14:08 +00:00
tehpola
e0511214d6 Porting over fix from r396 from ps3. I had ensured that the jump pad would be created of the last instruction in a block (usually a delay slot) is branched to. 2010-05-19 00:02:28 +00:00
tehpola
cfb476738d Porting latest func linking LRU fixes to PS3 for further debugging. 2010-05-18 23:55:49 +00:00
tehpola
eca4bbffff Fixing issues with previous committed code. The LRU preservation when linking still crashes for now. 2010-05-18 23:28:49 +00:00
emukidid
5160b54f8b Fix TLB-Cache.c compile issues 2010-05-18 22:33:05 +00:00
tehpola
94c3efb75b Refactored TLB-Cache to reduce code duplication. 2010-05-18 16:50:30 +00:00
tehpola
32df09cf36 Updating my ROM-Cache code which was somewhat missing from the repository. 2010-05-18 16:48:09 +00:00
tehpola
43cd92577a Adding missing profiling defines and printing. 2010-05-18 16:46:49 +00:00
tehpola
95da7d5425 Attempt at maintaining LRU when linking. This adds 4 instructions to direct branches out. This hasn't been tested yet, but does compile. 2010-05-18 16:45:26 +00:00
tehpola
f8f923aebe Changed the freed_funcs tree to a linked list so that there was no need to dereference the necessarily freed pointers. Func linking seems to work now, but LRU won't be preserved through links currently. 2010-05-18 16:43:28 +00:00
tehpola
06e1452165 Porting previous commit to PS3 branch so that it won't link from freed funcs. 2010-05-18 16:38:22 +00:00
tehpola
0e5d263187 In Recompile.c, I create a tree of freed funcs which I can test the source of a link against to avoid trying to link an old func with its new hole. 2010-05-18 16:33:30 +00:00
tehpola
a7282f94c6 Looks like I had written the unlinking code before I added the func field to the link node structure because I was testing whether the branch of a potentially outgoing link resided in the func's code rather than just checking whether the link belonged to this func. 2010-05-18 14:15:51 +00:00
tehpola
97a5010e1c Fixing some typos from previous commit 2010-05-18 14:13:34 +00:00
tehpola
a27820ee71 Replacing direct branches to external functions with lis/ori/mtctr/bctrl in generated code. 2010-05-18 14:10:14 +00:00
emukidid
9333e6f4c0 LWC1 / LDC1 FASTMEM ported to googlecode 2010-05-18 14:05:11 +00:00
tehpola
98e311e261 Fastmem LWC1/LDC1 2010-05-18 12:02:28 +00:00
sepp256
2fb62692cf Tweak to fog parameter calculation. 2010-05-18 05:28:26 +00:00
sepp256
9f7de0a9b7 Always use software matrix transforms because hardware ones break on Goldeneye. 2010-05-18 05:28:03 +00:00
tehpola
3a6cfab57f Rewrote execute-from-ROM support to use ROMCache_pointer 2010-05-15 03:50:03 +00:00
tehpola
0494f986b5 ...and to the ROM-Cache header 2010-05-15 03:48:03 +00:00
tehpola
24d074e235 Adding ROMCache_pointer to ROM-Cache-MEM2 2010-05-15 03:46:48 +00:00
tehpola
0bae5a6eef Removing ROMCache-MEM2's L1 2010-05-15 03:45:39 +00:00
emukidid
7b3411d899 GOLDENEYE WORKING IN DYNAREC!!! 2010-05-15 03:42:42 +00:00
tehpola
628a9ca5c7 Merging func linking into ps3 branch for debugging. This may not compile, and most certainly won't be stable. 2010-04-27 23:17:30 +00:00
tehpola
98f9f195e5 Actually enabling FP to/from long instructions via Interpreter defines 2010-04-27 23:13:19 +00:00
emukidid
aba3e986c1 - Full TLB in ARAM for GC (-DARAM_TLBCACHE & TLB-Cache.c)
- GC ROM cache is ~3.93MB (63x64Kb blocks) in ARAM
- Moved ARQ_Init and ARQ_Reset to ARAM_manager_init
- TODO: revise ROM cache or possibly remove it from ARAM to L1
2010-04-27 22:17:27 +00:00
emukidid
7105989276 Whoops, I forgot to add the actual ARAM-blocks.c and ARAM-blocks.h files 2010-04-27 22:16:22 +00:00