strmnnrmn
9bc86745b7
[~] stdafx cleanup: Pull in Utility/Profiler.h directly
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1689 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-05-18 16:05:14 +00:00
salvy
176f84db75
[~] Very minor typo from previous commit
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1660 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-05-03 07:24:11 +00:00
salvy
80de2072d5
[+] Implemented task freeze (DK64 gets in game now!, intro works fine too, in game has core issues though)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1659 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-05-03 06:56:45 +00:00
Corn
1573d89716
[!] bugfix to LWL/LWR in combination with dynarec memory opt. make sure to invalidate cached loadbase address before and after the OP (fixes Banjo-Kazzoie)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1398 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-24 20:08:02 +00:00
Corn
e1975480ac
[!] Fixed some typos and optimization for DDIV/DDIVU
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1099 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-26 13:49:33 +00:00
Corn
53cc23d9ed
[!] Fixed and enabled DDIV/DDIVU instructions in Dynarec
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1098 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-24 18:22:17 +00:00
Corn
e988445c84
[!] Keep cached known values once they get loaded into a cached register
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1086 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 18:05:48 +00:00
Corn
67dd282e40
[!] Base regs gets reused for loads/stores (not LWL/LWR) until the base reg gets modified (small speedup ~2%)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1058 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-22 21:31:12 +00:00
Corn
7071846c2d
[!] Use K0/K1 regs to store current load/store base reg address
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1053 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-21 20:46:15 +00:00
Corn
577fc3cd72
[!] Handle LWL/LWR in direct load path too (fixes Rayman2)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1052 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-21 20:07:37 +00:00
salvy
0091202937
[`] Fixed various typos from my previous commits
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1049 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-21 17:29:00 +00:00
salvy
6f304819d1
[!] x86 platform compiles now
...
[!] Fixed virtual alloc (x86)
[-] Removed debug COP2 code
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1040 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-20 20:39:26 +00:00
Corn
7c69ec021a
[!] Fixed and enabled LWL/LWR instructions in DynaRec
...
[!] WIP on DDIV(U) instructions
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1032 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-19 20:54:29 +00:00
strmnnrmn
2994b74fdd
Fix trailing whitespace
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@975 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-17 15:04:18 +00:00
Corn
4be4e488f7
[+] Implemented DSRA and DSLL (used in Doom64)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@955 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-12 20:53:04 +00:00
Corn
b11fa5b80e
[!] corrected typo in DMULTU ASM
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@954 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-11 21:50:32 +00:00
Corn
b264f93b28
[!] Added DMULT & DMULTU to dynarec (nice boost in Doom64 and others)
...
[!] reverted sign extension removal of MULTU
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@951 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-11 19:16:30 +00:00
Corn
c04455bc57
[!] Dynarec now compiles code within a fragment so the result from MULT(U)/DIV(U) is taken directly from HI/LO regs.
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@949 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-10 19:10:20 +00:00
Corn
1e81ff15b6
[!] Avoid using A1/V1 registers if possible (since these store current pre-calculated load/store base address)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@948 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-09 18:55:28 +00:00
Corn
a469003dfa
[!] Fix crash in Aerogauge
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@945 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-07 13:43:14 +00:00
Corn
1984a9a9d9
[!] Ops seems all games but SM64 liked last commit, small fixed it
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@943 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-05 19:59:57 +00:00
Corn
f6d332ac84
[!] Additional improvements to Dynarec Memory opt.
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@942 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-05 19:38:59 +00:00
Corn
13b4b02ff9
[!] Optimized Dynarec Memory opt. to keep both load and store regs also when COP1 opcodes are issued.
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@941 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-05 15:12:14 +00:00
Corn
fd472f60df
[!] PspFastRand() is now just FastRand().
...
[!] Make sure to invalidate regs when exiting a fragment.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@937 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 21:59:04 +00:00
strmnnrmn
0f7e430619
[~] Merge whitespace fixes to some dynarec files
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@910 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-02 12:11:42 +00:00
Corn
be3e511061
[!] Some cleanup and optimization in DynaRecStubs.S
...
[!] fixed CRLF on additional files
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@906 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-30 19:47:24 +00:00
Corn
ed3a2cf7f6
[!] Made it possible to print values from ASM ( make sure value is in A0 and call JAL( CCodeLabel( (void*)_printf_asm ), true ); )
...
[!] small optimization of HandleException_extern()
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@899 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-26 13:29:01 +00:00
Corn
63abfdd381
[!] Optimization (interpreter) avoid excessive branching for floating point compare instructions
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@891 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-16 21:34:57 +00:00
salvy
b9378e1b4e
[+] Implemented FLOOR_W_S in dynarec (used in Yoshi Story)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@890 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-11 18:56:13 +00:00
Corn
8cb35c0708
[!] Simulated CVT_D_S causes issues (in EWJ/PPGirls/Tom&Jerry/Mario Party) It is now made compatible with both interpreter and dynarec simdoubles
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@889 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-11 13:59:23 +00:00
Corn
c0b2ff0c69
[!] Power Puff Girls is now playable(textures are mostly fixed, use video rate match enabled)
...
[!] No need to use simulate doubles in Conker/Tom&Jerry/Mario Party Draft mini game/Earth Worm Jim/Power Puff Girls
[!] Fixed a subtle bug in MOV.D (both in interpreter and dynarec) that caused problems in Conker(and possibly other games)
[!] Added direct access to doubles in the emulated registers (FPUD)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@888 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-11 11:39:06 +00:00
Corn
49d6192e46
[!] Freed usage of T0/T1 registers in Dynarec. temp regs are now A0/A1 & V0/V1 (A2/A3 are still not freed but are unused)
...
[!] Use of two scratch registers in the CPU register struct for easy storage of temp variables (mainly used in Dynarecstubs.S)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@869 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-16 16:36:37 +00:00
Corn
da636325dd
[!] Free up AT register for use as cached register in dynarec (case must be taken not to use A0 for load/store of variables)
...
[!] Removed usage of T0/T1 register (use V0/V1) except for in load/store OPs in dynarec.
[!] Some additional fixes to Fastmemcopy (and removed usage in PSPrenderer) tnx Salvy.
[!] Slight improvement of SW ep1 racer shadows (blendmode)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@859 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-10 18:57:31 +00:00
strmnnrmn
96daafcb4c
[~] Rename g_ReadAddressLookupTableForDynarec to g_MemoryLookupTableReadForSynarec (match C variable name)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@853 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 15:40:04 +00:00
strmnnrmn
ba29dea5cc
Fix line endings - mostly LF with a dash of CRLF
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@851 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:20:44 +00:00
strmnnrmn
8ef65c6894
Fix mixed Windows/Unix line endings in a bunch of files. Add missing newlines before EOLs
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@849 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:20:20 +00:00
Corn
a39afafcb4
[-] Removed the usage of K0/K1 registers for the DYNAREC
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@826 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-02 09:24:09 +00:00
strmnnrmn
d7d116642a
Fix more trailing whitespace (files with CRLF line endings?)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@825 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-28 23:23:11 +00:00
strmnnrmn
767e4efd9c
Fix line endings
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@822 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-28 22:11:57 +00:00
salvy
53a80ed3ae
[-] Removed Jump table for Dynarec
...
[!] Increased hash table size for fragment cache to 2048 entries
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@797 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-31 20:03:51 +00:00
Corn
86687f701c
[!] Tidy up RDPStateManager
...
[!] Brought back old DYNAREC compiler with a #define in CodeGenerator.h (until new one is bug free)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@796 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-31 13:05:51 +00:00
salvy
9a93540add
[!] Clean ups/improvements to dynarec jump table
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@795 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-30 20:29:05 +00:00
salvy
3cd7395f61
[+] Use a Jump table for Dynarec (this is very dirty due the restrictions of C++..) WIP!!
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@793 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-30 19:37:03 +00:00
Corn
f7ba7a5e21
[!] Disable Dynarec implementation of LWR/LWL and SWR/SWL unaligned load/store used in OOT animations
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@764 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-09-04 18:33:15 +00:00
Corn
7daabc6eda
[!] Optimized branch delay slots in dynarec service routines
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@750 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 18:48:53 +00:00
Corn
fc3435211f
[!] Fixed dynarec access to broken pointer from previous rev
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@749 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 17:54:28 +00:00
salvy
ed7c346f47
[!] Optimized memory pointer table optimization (faster, and no longer computes the address twice when table is invalid) (Note: Dynarec is broken! Need to update DynaRecStubs.s)
...
[~] Removed "fast" memory write table (pointer table was already optimizing out) (saves memory too!)
[!] Increased maximum of clipped verts (Fixes Mortal Kombat 4) (Thnx jeanpave for reporting it)
[-] Reverted previous commit (I assumed wrongly that memory alloc was done in word size.. thnx Corn for pointing out!)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@747 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 00:27:28 +00:00
salvy
cfb4c3a995
[!] FPU reg is now 32bit
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@734 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 14:53:35 +00:00
salvy
36f553f465
[!] FPUControl is now 32bit
...
[!] Some small optimizations in OSHLE
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@733 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 14:37:15 +00:00
Corn
9f6a16deb7
[!] CPUControl is now 32bit (from 64bit)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@730 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-16 09:51:56 +00:00