Commit graph

2808 commits

Author SHA1 Message Date
Corn
92c451823f [!] FastMemcpy now uses 32bit reads also for unaligned transfers.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@878 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-28 13:32:57 +00:00
salvy
d0f03d3de5 [!] ~50% speed up of unaligned copies in fast memcpy swizzle (Noticed 99% of the time we are atleast word aligned)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@877 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-26 03:46:29 +00:00
salvy
947f1f5dfa [!] Just call builtin_bswap32 instead
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@876 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-25 08:59:22 +00:00
salvy
748a68932e [!] Use PSP's wsbw opcode for swapping four bytes in a 32bit value
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@875 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-25 06:06:57 +00:00
salvy
81c4c5f03e [~] Forgot this...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@874 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-24 19:29:02 +00:00
salvy
5308274e8f [!] Fixed bug with savestate screenshot when having more than 64 more folders (Corn)
[+] Added Azimer's DK64 hack(DK64 boots now, make sure to have Double Display List off)
[!] Set EEPROM4k for DK64 (fixes hang when entering main menu in DK64) 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@873 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-24 19:27:20 +00:00
salvy
d2de763192 [!] Used a temporal buffer for storing screenshots for savestates
[!] Take savestate screenshot after the next frame rather than storing it in a buffer
[!] Optimized Patch_osCreateThread


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@872 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-21 21:02:39 +00:00
Corn
e3a7eb552b [+] Added storing and displaying previews to Save States (Uses a 128kByte buffer)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@871 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-21 17:38:31 +00:00
salvy
2bc64156e6 [!] Some clean ups
[!] Made guRotateF and volatile memory platform independent 
[!] Check for invalid reads/writes to PIF

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@870 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-20 21:50:27 +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
salvy
f3a82901af [!] Make sure FlashRead/Write regions are valid
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@868 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-15 01:34:15 +00:00
salvy
85fea84831 [!] Fixed bug in memcpy_vfpu_swizzle when size is less than what we are aligning to
[!] Some optimizations to osStartThread

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@867 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-14 18:55:39 +00:00
salvy
dfa4ebfb4f [+] Added QuickRead16Bits/QuickWrite16Bits (will start optimizing oshle functions more aggressively soon)
[!] Optimized osViSwapBuffer

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@866 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-13 22:31:14 +00:00
salvy
4b1a0b3354 [-] Removed RR64 hack in OSHLE (doesn't seem to be needed anymore)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@865 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-13 21:34:37 +00:00
salvy
bf7f70dd41 [!] Fixed build not compiling
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@864 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-13 21:13:44 +00:00
salvy
def84ecf72 [!] Unrolled goto in aligned path in memcpy_vfpu_swizzle
[!] Some clean ups

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@863 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-13 14:47:18 +00:00
salvy
5fb82a2cc6 [!] Fixed async audio broken (VFPU and MediaEngine don't mix!)
[!] Made fast memcpy truly platform independent
[~] Some more fixes and improvements to memcpy_vfpu_swizzle from last commit

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@862 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-13 02:23:32 +00:00
salvy
b92892effa [~] Some fixes and improvements to my previous commit
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@861 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-11 18:45:14 +00:00
salvy
de473de9b9 [~] simplify conditions for memcpy_cpu_LE and memcpy_vfpu_BE
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@860 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-11 04:35:08 +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
salvy
5dd320480d [~] Opps
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@858 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-09 03:27:18 +00:00
salvy
dbcaadabb1 [~] Made InitMempackContent table non static
[~] Some clean ups in PIF

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@857 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-09 03:25:17 +00:00
Corn
3b94307914 [!] Fixed normal and swizzled versions of VFPU memcpy
[+] Enabled VFPU memcpy in PSPrenderer and DMA 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@856 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 18:37:03 +00:00
strmnnrmn
74b132f9f0 [~] Move memcpy_cpu_LE to a platform-independent Source/Utility/FastMemcpy.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@855 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 15:40:15 +00:00
strmnnrmn
45580e16c2 Delete some commented out code. Merge a couple of changes from OSX port
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@854 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 15:40:09 +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
0e698c385d Fix all the remaining mixed newlines
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@852 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:21: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
7fba1278a6 Fix more mixed newlines
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@850 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:20:28 +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
strmnnrmn
6f65366fb6 Fix compile error in Microcode.cpp in debug builds - custom_ucode wasn't defined
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@847 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:19:52 +00:00
strmnnrmn
22f9d4f0d7 Fix some CRLF/LF inconsistencies
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@845 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:19:43 +00:00
strmnnrmn
3a37f8ac57 Make FastMemcpy a bit more platform independenty and move to the main Utility dir. I removed the timing test and wrapped it up in a function (what it loses from the function call, it gains from being able to inline GetCurrent)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@844 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:19:36 +00:00
strmnnrmn
1e970537f8 Fix some indentation in AudioHLEProcessor.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@843 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-08 14:19:23 +00:00
salvy
35e55f149e [-] Removed cheat frequency option (cheats no longer cause much overhead anyways)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@842 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-05 21:25:35 +00:00
salvy
ef46b718db [=>] Merge from GIT repo
[!] Use ROM_GetCountryNameFromID when inserting country ID for cheats
[~] Small typo when inserting country id in cheats
[!] Simplified abit when applying cheats
[!] Optimize cheatcode apply (cheats will be applied directly to RDRAM) Will remove cheat frequency option eventually, since there's isn't much overhead from cheats now
[+] When disabling cheats, sure we can save the most recent value later on
[!] More lean ups/Optimisations to cheat feature

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@841 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-05 20:58:47 +00:00
salvy
4536c5c170 By StrmnNrmn : …
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
2012-12-05 20:07:03 +00:00
strmnnrmn
e1e167d8db Fix compressed rom support (still disabled in psp build).
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@839 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-04 09:32:21 +00:00
strmnnrmn
57e39ec213 Merge some trivial changes from multi-platform build
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@838 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-04 09:32:14 +00:00
strmnnrmn
03ab67a298 Move IO::Path::Tidy to String.h - it's not really anything to do with paths
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@837 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:51:11 +00:00
strmnnrmn
7008e95d44 Fix inconsistent line endings in Translate.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@836 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:51:05 +00:00
strmnnrmn
6f7f5ce558 Fix inconsistent line endings in IOPSP.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@835 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:51:01 +00:00
strmnnrmn
5dab177d4c Fix inconsistent line endings in Cheats.cpp/h
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@834 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:50:56 +00:00
strmnnrmn
0affcb7359 #endif comments were inaccurate
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@833 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:50:52 +00:00
strmnnrmn
07c715c978 SWAP_PIF isn't used
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@832 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:50:48 +00:00
strmnnrmn
7e94b19491 Merge some tidying to Interrupt.h/cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@831 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-03 22:50:44 +00:00
strmnnrmn
7eac7e42f2 Don't need to write to MEM_UNUSED
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@830 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-02 18:52:14 +00:00
strmnnrmn
ddebde05aa Remove some dead code, other minor edits to Memory code
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@829 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-02 18:52:09 +00:00
strmnnrmn
20bb7396fa Unecessary return statement
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@828 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-02 16:01:07 +00:00
strmnnrmn
b19424211a Define DAEDALUS_ENDIAN_MODE in SysXXX/Include/Platform.h, so it can be set on a per-platform basis
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@827 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-12-02 16:01:03 +00:00