Commit graph

1103 commits

Author SHA1 Message Date
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
emukidid
c785428d7d - ARAM-blocks blocks array in ARAM for GC (use -DARAM_BLOCKCACHE)
- recompCache on GC bumped up to 8MB
- ROM cache now 11.75MB for GC
- L1 ROM cache for GC increased (but still disabled)
- Wii uses inline funcs which use blocks[] array, no difference
2010-04-27 22:15:02 +00:00
tehpola
7108755e55 Stop rumble for Classic and Wiimote+Nunchuk when game is paused 2010-04-27 14:16:40 +00:00
tehpola
9d9f4ddf5a Implemented TILT_AS_ANALOG flag for Wiimote+Nunchuk 2010-04-27 14:15:19 +00:00
tehpola
50060ceaac Added "Shooter" configuration to Wiimote+Nunchuk and implemented NUNCHUK_AS_C and IR_AS_ANALOG flags for that config 2010-04-27 14:13:57 +00:00
sepp256
cc85641a6d Logo texture now chosen by compile define. 2010-04-27 00:35:48 +00:00
sepp256
5ad57b779a Simplifying libgui/menu headers. 2010-04-27 00:25:32 +00:00
tehpola
ec1ecd205c Infrastructure for controller configurations. Only one configuration exists for each type so far. 2010-04-16 14:59:07 +00:00
emukidid
2b7961db26 Added appropriate headers to libgui and menu to fix compile issues with latest libogc/devkitPPC r18. 2010-04-16 12:23:08 +00:00
emukidid
e1fc243af9 fixed libDI fail if we DI_Close before DI_Init.
changed powerpc-gekko* to powerpc-eabi* in Makefile.menu2_*
2010-04-16 12:16:22 +00:00
tehpola
e2e1f7147f Constant propagating through ADDI 2010-04-15 15:43:28 +00:00
tehpola
ee879ed0b7 Very basic constant propagation: LUI creates a constant that LW will consume if it is otherwise untouched 2010-04-15 15:42:31 +00:00
tehpola
a297a97cf1 Constant propagation Register-Cache code. Now it just needs to be used 2010-04-15 14:37:35 +00:00