Commit graph

623 commits

Author SHA1 Message Date
salvy
fbcfff31df [~] Fixed debug build
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@736 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-18 08:02:06 +00:00
Corn
585696e11f [!] Some cleanup after 64bit to 32bit register changes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@735 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 19:05:23 +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
salvy
c630081391 [!] SDC1,LDC1,LDL,LDR,COP0 (except ERET) don't need PC, removed entries which are already handled in dynarec too
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@724 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-13 11:19:02 +00:00
Corn
196a2dcaca [!] Reworked exception/BSOD information screen and log
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@720 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-11 16:42:22 +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
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
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
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
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
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
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
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
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
8f5e06f6a5 [!} Some clean ups and simplifies
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@653 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-05-01 19:20:18 +00:00
salvy
bde08d245f [!] Some CodeGen logic optimizations
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@648 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-22 02:37:55 +00:00
salvy
8b72c5085d [!] Removed SimulateDoubleDisabled option (was replaced with specific game hacks)
[!] Tyde R4300_Cop1_CTC1 (saves 7 ops)
[!] Made all instances of FPUControl[31] to 32bit (Compiler was already optimizing it off anyways)
[!] Fixed languages not being unloaded properly when switching to default language
[!] Tyde when loading languages

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@645 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-18 03:33:42 +00:00
salvy
1fb864e9c9 [!] Rewrote COP1 unusable handler (again..) (Based from Strmn's original approach which is alot cheaper, since it doesn't add overhead to FPU heavy games like Zelda) - Note : All games that didn't like it, work fine now.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@644 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-16 01:52:48 +00:00
Corn
3f1e612b52 [-] Reverted LWC1/SWC1 FPU OPs (caused to many issues need more work)
[!] Reorganized Build Config flags

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@643 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-13 13:12:34 +00:00
salvy
ffe6238764 [!] Code clean ups, mostly made debug only code which is obsolete in release
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@642 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-13 07:40:03 +00:00
Corn
4e7d69e889 [+] Dynarec: Added K0 and K1 to available cashed regs
[!] Dynarec: Skip sign extension on GP and SP regs on update
[!] Dynarec: Optimized ADDU when when source reg is R0
[!] Dynarec: Optimized ADDUI not to store sign extension on SP reg
[+] Dynarec: Implemented LWC1 and SWC1 to load and store directly to FPU
[!] Fixed some ASSERTs
[-] Removed automatic fragment dump on ROM exit

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@641 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-10 14:55:18 +00:00
Corn
85f3b021fe [!] Fixed various compile errors for debug versions (Dynarec stats work now)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@640 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-03 19:26:29 +00:00
salvy
77a7fa15ea [!] Removed completely overhead of "Disable Simulate Doubles" (we now patch the R4300 jumptable as needed)
[~] Removed some unused code

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@636 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-30 22:12:38 +00:00
Corn
7d6b56ceb3 [!] more optimizations to float to int conversions
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@635 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-30 17:59:00 +00:00
Corn
bad448cd27 [!] Fix float to int conversion
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@634 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-29 19:27:13 +00:00
salvy
1c1894afd8 [!] Removed overhead of Buck Bumble hack from Cop1_D_ADD, biggest win is for games that need simulate doubles disabled
[!] Enabled simulate doubles for Buck Bumble (slight speed up) 
[!] Use pspfpu math for interpreted Opcodes that use floorf,roundf,truncf etc (generates much better assembly, for example our own implementation added mfc1) 
[!] Do proper floorf,roundf,truncf for Double precision Opcodes that use them (we should use double precision from libc actually( Im sure this the reason we didn't handled them in the first place?).. but since we simulate doubles for most games and doing it natively with single precision is alot faster, better than not handling them at all ;). Should fix some random bugs)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@632 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-27 22:09:42 +00:00
salvy
c3671ef59e [!] Simplified as much as possible DMA_PI_CopyToRDRAM (based from Mupen's dma_pi_write)
[~] Some clean ups

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@630 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-21 01:30:39 +00:00
Corn
0d1cb7d636 [!] Fix rayman hack
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@629 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-16 20:23:27 +00:00
salvy
7b2183b505 [~] Removed unused code from Fragment.cpp
[+] Added const and pure attributes which when given correctly the compiler can do some additional optimisations

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@628 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-16 17:27:58 +00:00
Corn
81c6fb5c64 [!] optimization and additional fixes for rayman hack
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@627 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-16 16:59:08 +00:00
Salvy
3ad78170bc [!] Fixed potential bug in our home button implementation with signed builds under FW 6XX or higher
[!] Slight change to our loading screen for ROM buffer

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@617 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-17 21:11:50 +00:00
Corn
ac5f60f2e4 [!] Fixed loading screen showing progress bar
[!] fixed text for buffer modes

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@615 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-13 18:33:50 +00:00
Salvy
1e18d8e339 [+] Added quick loading bar for ROM buffer (based from our compressed Rom loading bar, pretty much a test, doesn't work with many games, ex SM64)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@614 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-13 01:40:28 +00:00
Salvy
ec58ebcab3 [!] Updated French translation (niccoooodu61)
[!] Huge clean up (redundant code, unnecessary checks/asserts etc) in our RomFile code
[!] Removed nasty hack I had when either reading to header of Rom or loading Rom completely (everything is allocated separately now to avoid this sort of bugs..)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@613 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-13 00:42:15 +00:00
Salvy
ee3e1c854b [~] More clean ups to ROMFileMemory
[!] Made more robust when Allocating and freeing ROM Cache/Buffer
[+] Create memory pool for PHAT as well to avoid fragmentation and keep things neat

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@612 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-11 22:09:03 +00:00
Salvy
89b4f4bf4c [!] Fixed PHAT compatibility with recent changes
[!] Made conditions when using large Rom cache or Rom buffer, more safely to avoid any unwelcome bugs ;)
[!] Some clean ups 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@610 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-08 22:54:44 +00:00
Salvy
f5e0eff5b6 [!] Allocate the entire extra memory of PSP Slim and newer models (32mbs in total)
[+] Added a new option (Found in Global Settings) which allows you to use either Rom cache (default, slower but faster boot time) or Rom Buffer (faster, but slower boot time, since it has to buffer the entire Rom to the Ram, Note: Any Rom biger than 32mbs will fall back to use Rom Cache)
[!] Don't allocate RomCache if we load the whole ROM (Rom Buffer)
[!] Don't allocate memory for VideoManager (Was used to fall back if running out of VRAM, happens very rare [about 3 known games, we could use the volatile memory for this eventually?] )

All of these is a nop for PSP Phat.
Note: This is a WIP!!!!

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@607 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-07 01:42:32 +00:00
Salvy
7acfbde220 [!] Updated Spanish translation (Ricot)
[!] Updated French translation (niccoooodu61)
[!] Tyde compile flag to disable compressed Roms support, also disabled remaining code used for it.
[~] Reverted Rom cache size change for Phat PSPs
[~] Some small cleans ups

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@606 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-04 21:49:35 +00:00
Salvy
e8e47d4f74 [!] Fixed memory leak in cheat feature
[!] Fixed translations switching to default when accessing pause menu (thnx Ricot for reporting it)
[!] Fixed language list being inconsistent (thnx Ricot for reporting it)
[!] One more fix when wrapping translated text (thnx pzu for reporting it)
[!] Simplify getting language name
[!] No longer register a sysevent handler when using volatile memory (Was breaking exception handler, also volatile memory now works in signed builds)
[!] Use scePowerLock to disable power switch and thus "disable" suspend mode (needed when using volatile memory)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@585 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-01-19 01:16:27 +00:00
Salvy
e48a3db53b [+] Daedalus can now be translated to any language (not used yet, will add Spanish translation as example and leave the rest to the community)
[~] Some clean ups to some redundant code

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@572 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-01-05 02:19:08 +00:00
Corn
9cee33185a [!] Indice buffer is now 256
[!] Clean up among the hacks

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@569 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-01-02 19:28:24 +00:00
Corn
f54eb0706e [!] Fixed BSOD in Duck Dodgers (TMEM palette)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@560 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-23 14:08:46 +00:00
Salvy
cea2eb445b [!] Parse cheat file when ROM boots if cheat feature is enabled or forced
[!] Forced cheat feature to Pilot Wings and Pokemon Snap (we need cheats for these games to work properly *wink*)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@559 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-22 00:46:14 +00:00
Salvy
f56ade7a72 [!] Fixed bug in cheat parser for large cheats (Pilot Wing's shadow fix works properly now)
[-] Removed Pilot Wings hack (again), no longer needed ^

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@558 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-22 00:24:18 +00:00
Corn
8cf41c9d99 [+] Hack for SOTE to show text and menus (clean scene has to be enabled)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@556 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-21 20:17:27 +00:00
Corn
c33c2b0a84 [-] Removed forced speed hack since its optional now
[-] Removed forced Loop Opt. off from roms.ini
[+] Brought back Pilotwing 64 hack (since cheat version still has issues)


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@555 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-21 15:52:53 +00:00