Multi-platform:
* Reintroduced a bunch of DAEDALUS_PSP ifdefs.
* Reintroduced a load of Win32/OSX code.
* R4300: To reduce some of the DAEDALUS_PSP ifdefs in R4300.cpp, added some
defines for R4300_IsNan etc.
* R4300: f32_to_s32_trunc etc. I think we should keep these as they provide some
abstraction between PSP/OSX/W32 etc and remove tons of ifdefs elsewhere.
I think I updated all of these correctly. Please check!
* Math/Math.h: we should provide a consistent interface here. e.g. rather than
exposing pspFpuSqrt(), we should have Sqrt() that's #defined (or a wrapper
function) to the most appropriate implementation for the platform.
Small improvements:
* Added a few DBGConsole_Msg lines to track down boot errors.
* CPU: gLastPC/gLastAddress were defined as static in CPU.h - that means they'd
be introduced into all compilation units that pulled in that header. Redefined
as extern.
* NativeTexture.h - GetScaleX/Y can just return an f32 (no need for reference)
* ROMFileCache: Just declare AddressToChunkMapIndex/GetChunkStartAddress as
inline functions in the .cpp file.
Tidying:
* Path: Moved IO::Path::Tidy to String.h (it's not really a Path function).
* Lots of whitespace fixes (git doesn't like whitespace at the end of lines)
* Started nuking lots of 'tractor lines' (//*********************)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@840 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] 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
[!] Only try to load language files once when system inits
[!] Fixed crash when number of language files changed
[+] Conserve the order of languages, regardless if their number was changed
[!] Increase ROM cache size for PHAT from 2MB to 4MB
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@616 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] 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
[!] 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
[+] 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
[!] 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
[!] Translations will fall back to use intrafont's manual linebreaking feature (our auto-linebreaking can't handle unicodes)
[+] Handle special chars as newline when parsing language files (Needed by intrafont's linebreaking)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@584 42e9bfbe-799a-4a2d-bad1-236e862a387a
[~] Simplified codebase abit more (All strings are interpreted as UTF8 anyways)
[!] Use INTRAFONT_CACHE_ALL instead of INTRAFONT_CACHE_ASCII (was causing some random issues with unicode strings)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@582 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Reduced the time a texture is cached unless used (should help Phat owners a bit since it saves some texture memory)
[!] Added TLUT hack and disabled Loop Opt. for Star soldier-vanishing earth
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@546 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Fixed BSOD in top gear rally (seems to have other issues too with floats)
[!] Fixed BSOD in Star Soldier - Vanishing Earth
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@545 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Simplify check to clear screen
[!] Decode fill color even when clearing screen (fixes bug in PD)
[!] Simplify DLParser_FillRect
[!] Load RDP_Combine in one go (saves 2 ops)
[!] Ignore mem0+mem1 blend in fillrect (is cheaper than handling in general blender after all..)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@513 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Made old TMEM implementation compatible with recent changes in S2DEX
[!] Big overhaul on Debug Dlist formating to make it easier to read
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@467 42e9bfbe-799a-4a2d-bad1-236e862a387a
[+] Old TMEM emulation is a compile option in buildconfig.h
[-] removed redundant texture info in struct
[-] TMEM is not using VRAM (was no speed benefit)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@408 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Fixed bug that caused viewport to to be override if it didn't changed
[!] Made if viewport changed check less hacky and cheaper
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@212 42e9bfbe-799a-4a2d-bad1-236e862a387a
[~] Code clean ups
[~} Removed usage of pspFpuMin/pspFpuMax
[!] Proper fix for width issues in Lode Runner (removed hack I had for it too)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@184 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Moved clean scene to BeginFrame()
[-] Removed residual fraction calculation in Insert matrix
[!] Corrected a few warnings
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@179 42e9bfbe-799a-4a2d-bad1-236e862a387a
[!] Using CPU instead of VFPU in memcpy_patch() since VFPU breaks clay fighter 63 1/3
[!] Optimized the little endian memcpy()
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@175 42e9bfbe-799a-4a2d-bad1-236e862a387a
[~] Simplify our dialogs abit
[~] Separate UpdateFrame for GUI (more clean ups are needed though)
[!] Use ClearZbuffer for clean scene
[~] Made exception handler release only (breaks gdb in debug builds)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@130 42e9bfbe-799a-4a2d-bad1-236e862a387a