Commit graph

2745 commits

Author SHA1 Message Date
salvy
47604559d0 [!] Skip sign extension for registers mapped as 32bit
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@710 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-22 06:35:04 +00:00
Corn
1d8e3bcc1b [!] Fix proper N64 to PSP scaling for large textures(see Worms, still don't work for 4:3 unscaled screen)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@709 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-21 19:16:26 +00:00
salvy
757cf58ae7 [+] Added compile flag to disable checking if logic is 32bit in dynarec
[!] More aggressive checking if logic is 32bit

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@708 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-21 09:18:21 +00:00
salvy
4dc7789914 [-] Removed optimization in GenerateAND (Breaks SW - Racer)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@707 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-20 19:08:52 +00:00
salvy
899571ac6c [!] Simplify IgnoreHi, It'll only check if gate logic is non negative
[!] Fixed Duck Dodgers not longer working with optimization in GenerateAND

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@706 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-20 18:09:55 +00:00
Corn
4d99abae21 [!] fixed audio pitch when using PAL ROMs (tnx re4thewin to point that out)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@705 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-17 08:34:29 +00:00
Corn
655b092461 [!] Additional fixes/optimizations to dynarec sim-doubles (SSV works now as well as most other games)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@704 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-14 19:21:38 +00:00
Corn
ba02be8004 [!] Small optimation in dynarec simdouble loading
[!] rearrangement in Dynarec options 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@703 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-13 12:53:59 +00:00
salvy
b163d14186 [!] Don't check hi part of known value when probing if high bits aren't needed (Fixes text being missing in OOT)
[!] Check if register is mapped as 32bit, this will improve detection when high bits aren't needed (Experimental!)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@702 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-13 09:54:13 +00:00
salvy
308b5d6045 [!] Improved previous optimization in GenerateADDU
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@701 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-11 03:08:13 +00:00
salvy
42da530ddb [!] optimization in GenerateADD/U when rs/rt is R0 and register is known
[!] optimization in GenerateAND when high bits aren't needed

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@700 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-11 00:53:30 +00:00
Corn
4f8db9c505 [!] Better compatibility using Doubles Opt. (fixes a few games)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@699 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-10 07:01:38 +00:00
salvy
673a287f0f [!] Made more robust optimizations in GenerateOR (we'll check more throughly if we need hi bits) (small speed up)
[!] New optimization in GenerateOR when rs/rt is R0 and register is known

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@698 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-10 03:14:18 +00:00
Corn
b39e0b1c0b [!] Reverted MFC1 optimization, sign ext. is needed (broke DKR)
[!] Various cleanup/bugfixes to SimDoubles

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@697 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-09 19:28:55 +00:00
Corn
cacf5b012f [+] Added more float/double conversion to dynarec doubles optimization
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@696 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-07 13:31:20 +00:00
salvy
592db1c5c5 [!] Use more complex blit algorithm from latest version of TriEngine (fixes large texture used in StarSoldier (640x320)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@695 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-07 00:01:35 +00:00
salvy
2b3cfdf371 [+] Implemented blit (code taken from The TriEngine)
[!] Use blitting to support large textures (since the PSP hardware can only handle up to 512x512)

Worms - Armageddon is now playable

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@694 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-06 17:30:53 +00:00
Corn
a01b055016 [!] added dynarec simulated float caching in FPU and some clean up
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@693 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-05 20:41:02 +00:00
Corn
af43f1eace [+] New Speed up option: Dynarec Doubles Optimizations (advanced menu) when enabled dynarec compiles code to simulate doubles with floats
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@692 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-04 18:50:57 +00:00
salvy
4200ebdfc4 [!] Reverted optimization for ADDIU
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@691 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-03 22:58:30 +00:00
salvy
435aa824e4 [-] Removed optimization in ANDI (since we zero'd the hi reg regardless)
[!] Optimization in OR

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@690 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-02 08:12:58 +00:00
salvy
8d98903504 [!} Opps typo!
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@689 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-01 02:46:20 +00:00
salvy
151441ba62 [!] Optimization in ADDIU & ANDI (Dynarec)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@688 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-01 02:42:19 +00:00
Corn
af5e1c9378 [!] Aerogauge fix
[!] small optimization in floats branching when fast mode fails

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@687 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-31 19:18:36 +00:00
salvy
9842e2e7be [!] Fixed regression in Aerogauge
[!] Optimization in XORI and ORI

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@686 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-31 00:58:46 +00:00
Corn
14e7a42018 [+] Dynarec: Added DADDI/DADDIU, DSRA32 and DSLL32
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@685 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-27 19:49:51 +00:00
Corn
3a0eed9c4a [+] Added INS/EXT and CFC1 OpCodes to AssemblyWriterPSP
[!] Dynarec: Optimized float compare (no branch)
[!] Small fix/optimization to PIF swizzle 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@684 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-27 12:50:06 +00:00
salvy
f4d2fe488a [!] Bring back changes to PIF/DMA changes (This is was the proper way, PJ64 are compatible now)
[!] Added workaround to support older savestates created after rev 715

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@683 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-26 07:49:21 +00:00
Corn
f6c89b1ec2 [!] Proper double handling in interpreter (and some clean up)
[!] Reverted PIF/DMA changes (Incompatible with older SaveStates)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@682 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-25 21:15:11 +00:00
Corn
95b398565f [!] reverted ADDIU optimization (CBFD BSOD)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@681 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-25 20:40:39 +00:00
Corn
23fe749799 [!] Dynarec implemented LD/SD (load/store 64bit integer)
[!] Dynarec partly implemented LDC1/SDC1 (load/store 64bit float)
[!] Dynarec if source reg is SP, ADDIU wont do sign extension.
[!] Dynarec Skip sign extending CFC1

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@680 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-23 16:54:56 +00:00
salvy
945d0c432e [+] Added known value optimizations to SLTx ops (32bit only!) in dynarec (they are disabled since I'm not sure is worth to handle them)
[!] PIF Ram - swap while copying in one go and fuses 4 transfers in one (slight speed-up) (Salvy & Corn)


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@679 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-22 09:08:52 +00:00
Corn
81439edd67 [!] Made BC1T/BC1F branching more robust (fixes RR64)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@678 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-21 20:12:16 +00:00
salvy
f060f741c4 [!] Simplified branch type even more
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@677 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-21 00:28:21 +00:00
Corn
50c3f2efaf [!] Dynarec: Improved performance of float compare and branching (BC1F/BC1T) (speedup)
[!] Dynarec: Removed exception check after interpreter calls from dynarec (speedup)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@676 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-18 20:14:57 +00:00
salvy
90964de902 [!] Simplified branch type functions (Compiler was adding a bound checking, also reorder Enum to allow other optimizations)
[-] Removed svnversion.h (this created automatically anyways)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@675 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-18 10:55:24 +00:00
salvy
443022494e [!] Update InsertTimer base pointer when is modified (fixes Animal Crossing no longer Quick methods in osInsertTimer)
[!] Enable TLUT hack for Beetle Racing (Game works fine now, Thanks King Pepper for reporting it!)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@674 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-16 18:45:56 +00:00
salvy
cf8f01eaca [+] Added Polish translation by malymi45
[!] Removed hacks used to correct string length of translated strings 
[!] Avoid computing strlen twice when translating strings

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@673 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-15 18:47:19 +00:00
Corn
0bcbaae951 [!] reverted change that causes Yoshi to BSOD
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@672 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-15 17:20:42 +00:00
salvy
bae36ad5ba [!] Fixed debug build
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@671 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-15 16:48:08 +00:00
salvy
341cd0b5b3 [~] Forgot this
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@670 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-14 02:41:49 +00:00
salvy
411c6061cc [!] Simplified ConvertToPhysics (Check k0/1 in one go)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@669 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-14 02:39:07 +00:00
salvy
b5b996df10 [-] Removed Memory_ReadInternal (only used for debug purposes anyways, saves memory too!)
Note: Debug build is busted!

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@668 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-14 00:04:19 +00:00
Corn
cb9f855f66 [!] Dynarec: Disabled divide by zero check for DIV/DIVU
[!] Dynarec: Removed sign extension on MULT/MULTU & DIV/DIVU

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@667 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-13 13:03:23 +00:00
Corn
2becc08549 [!] minor cleanup in Codegenerator
[!] Added K0 & K1 as non temp registers

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@666 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-12 19:47:51 +00:00
salvy
d619f9d975 [!] Some more optimizations with QuickWrite/Read methods
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@665 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-08 19:23:02 +00:00
Corn
868f19f55e [!] Clean up of GU HLE patches and made them compatible with CPU only
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@664 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-08 18:45:24 +00:00
salvy
d52b7793bd [!] Optimized HLE osSendMesg/osRecvMesg patches (saved 145 ops, yay QuickRead/Write)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@663 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-08 06:17:42 +00:00
salvy
61fa6af06e [!} Optimizations to HLE gu patches (saved over 160 ops)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@662 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-08 05:26:51 +00:00
Corn
c1133f7877 [!] reverted HLE cache patch (while it does cause issues there are more HLE issues in Fzero)
[-] removed redundant SP register update code in dynarec

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@661 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-07 20:02:37 +00:00