Commit graph

224 commits

Author SHA1 Message Date
strmnnrmn
1e9e443f79 [*] Get rid of the PSPRenderer singleton, and implement as a simple gRenderer pointer. This gets rid of the PSPRenderer typename everywhere, which will make the next step easier (adding an OSXRenderer, and making that and PSPRenderer derive from BaseRenderer. Also in this commit, fixed a bunch of mixed tabs/spaces and formatting.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1107 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-02 15:46:18 +00:00
salvy
9bcda57231 [!] Use triangle strip for Draw2DTexture (Since we need to flip some sprites)
[+] Implement sprite flip for Sprite2D (fixes SSV's sprites in main screen)
[!] Fixed sprites and text being scrambled in Wipeout (Text is being rendered as "A", texture update bug?)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1033 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-19 21:11:39 +00:00
salvy
dba8dfc796 [!] Fixed PSP debug build
[!] Fixed error in oshle that caused a branch assumption error
[!] Detect newer PSP revisions..ex E100 etc, also fixed a bad detection
[~] Some clean ups

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1029 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-18 23:07:58 +00:00
strmnnrmn
ae45a98925 [~] G_TT_RGBA16 etc were redefined from the values in ultra_gbi.h, which is confusing. Just define our own enum which defines these in the range 0..3
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1004 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-17 19:44:14 +00:00
Corn
da0a5b4461 [!] DKR: Use already available matrix stack(improve data cache locality) Removed global variable for stack indexing.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@957 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-16 12:36:39 +00:00
salvy
3c9d4dd45a [!] Clean ups in mtx code
[!] DKR, do not borrow from the mtx stack, just use an aligned variable (cheaper)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@956 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-16 08:17:10 +00:00
salvy
f40c2467c1 [-] Opps! Reverted previous commit
[~] Some minor clean ups

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@940 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-04 05:24:50 +00:00
salvy
ec720ad37c [!] Optimized Tri ucodes (convert MicroCodeCommand reference to pointer to easily access next command)
Note: We could avoid this convention by declaring MicroCodeCommand as pointer instead of reference, but this causes the compiler to no longer optimize our bitfields with (ext/inst)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@939 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-04 03:44:48 +00:00
salvy
55b6127d8d [!] Small optimization in DMA_Tri_DKR
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@938 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-04 03:09:31 +00:00
strmnnrmn
a64b8252fa [~] Some minor ucode cleanup
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@917 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 17:41:23 +00:00
salvy
aa22f40a05 [+] Optimized FetchNextCommand
[!] Yoshi_MemRect only need to fetch one instruction 
[-] Removed my previous optimizations to Texrect* cmds, FetchNextCommand now gives the same asm anyways 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@907 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-31 06:38:58 +00:00
salvy
df78281e03 [!} Optimized when fetching instructions for Texrect, Texrect_Flip, Yoshi_Memrect and TexRect_Last_Legion
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@894 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-18 01:06:40 +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
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
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
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
71803d2823 [!] Simplify when setting custom ucodes (now ucode modifier offset and array building is cached)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@814 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-23 09:51:10 +00:00
salvy
eaa0f2b641 [!] Opps reverted previous commit
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@810 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-14 20:42:24 +00:00
salvy
ce36d63b82 [!] Use TI hash to check if the texture is the same (we'll reuse it in the cache too)
Note: T1 hack is broken!! FIX ME

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@809 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-14 20:29:08 +00:00
Corn
7583bd0d59 [!] Some cleanup and minor (bug)fixes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@806 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-11 10:30:18 +00:00
salvy
3e7389df90 [!] Simplified when setting TlutAddress
[!] Moved out gVertexStride outside the Tris loop 
[!] Call directly TlutAddress (saves function call)
[!] Bring back recolour white texture (Is needed by Krby's clouds)
[~] Code clean ups etc

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@803 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-11-07 19:37:58 +00:00
Corn
38f073fce0 [!] Fixed Worms sprite flipping in S2DEX
[!] tweaked and fixed texture cache hashing
[!] fixed MK64 character selection textures (don't recall if this broke other stuff?)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@785 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-21 06:08:12 +00:00
Corn
7429e4701a [!] New TMEM implementation (that fixes palettes in a few games) now works without the need to copy TLUTs to TMEM.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@783 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-18 10:57:07 +00:00
Corn
862ea79f67 [!] Reverted to old hash for texture check
[!] Removed unneeded XORing of pointers for TLUTs while copying them (using TMEM)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@782 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-18 05:56:13 +00:00
salvy
c2b4887167 git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@781 42e9bfbe-799a-4a2d-bad1-236e862a387a 2012-10-15 10:05:31 +00:00
salvy
4f68cee2d2 [!] Optimized Dlist loop (Now it only checks the Dlist counter when needed, also counter resets in go)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@780 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-15 10:00:54 +00:00
salvy
12060459d0 [!] Forgot this
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@779 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-11 07:17:54 +00:00
salvy
9932094a4b [!} Some cleanups in S2DEX and Sprite2D
[!} Made palette loading in S2DEX compatible with recent changes (when using DAEDALUS_TMEM)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@778 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-11 07:07:29 +00:00
salvy
8f958d844b [!] Rewrote "full tmem" implementation (based from Rice plugin, doesn't need TLUT hack, can't return NULL, and can be modified by Sprite2D and S2DEX)
[!] Implemented correctly tlut state in Sprite2D (fixes Wipeout and other games, only when full TMEM is defined)

Note: These changes are NOP unless DAEDALUS_TMEM is defined, which is disabled since is slower and uses more memory than our fast implementation *Hopes Corn can port these improvements to it :)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@777 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-10-09 01:35:33 +00:00
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
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
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
dbef2f7350 [!] Simplified RDP_MoveMemLight (~30 ops)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@637 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-04-01 22:19:46 +00:00
Corn
f3406a94b2 [-] reverted ucode changes from previous rev since it broke ucode changes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@622 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-06 21:58:16 +00:00
salvy
722ea29353 [!] Play with pointers to avoid (expensive) array building for custom ucodes, removed array for custom ucodes too. (~20 ops)
[~] Some clean ups InitMicrocode
[+] Added -pipe option to makefile for faster compile time (Note: This will use more RAM from your computer, make sure to have atleast 512Mb+ when compiling Daedalus)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@621 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-03-04 02:57:31 +00:00
Salvy
410a4c24a6 [!] Do not render Conker's shadow (even though our generic blendmode does hide it fine, we can save some cycles by not rendering at all)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@620 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-25 23:56:06 +00:00
Corn
45f6ecc182 [!] Additional fixes to T1 hack
[!] Clean up tris culling
[!] Optimization of zero size tris for GE and PD

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@619 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-02-22 19:39:43 +00:00
Corn
0c0be70e76 [!] Check for Off screen rendering in Tri1, 2 and 4 is now for CBFD only and skips the whole list at once thus avoiding checking individual tris (small speed up)
[!] If Off screen rendering is true, TnL is skipped for Conker (small speed up)
[~] Small cosmetic change in GUI text (will this break translations?)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@590 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-01-20 13:26:07 +00:00
Salvy
aaa3660f51 [!] Simplified Light Colour (VFPU TnL needs to be updated!!)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@567 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-01-02 00:39:41 +00:00
Salvy
e2ce6d1d2f [!] Some more optimizations in copying data with vectors (~20 ops)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@566 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-31 01:49:51 +00:00
Corn
22241a22a7 [!] Fixed matrix alignment (including DKR)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@564 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-28 19:49:47 +00:00
Salvy
7f7ad04c40 [!] ForceMtx(2) takes two cmds (reduces significantly Dlist size of games that use it)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@561 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-28 02:28:33 +00:00
Salvy
39a80f3859 [!] Keep texture image address in range for Shadow of Empire (game is now playable with some minor issues, is recommended to use a savesatate to get in game)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@553 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-21 01:17:26 +00:00
Corn
fd193ee214 [!] Auto speed adjustment hack for Rayman/Donald duck/Tom and Jerry
[!] Removed some redundant checks for SOTE


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@550 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-20 14:09:13 +00:00
Corn
d736ccbc94 [+] Save more memory using TMEM table with only 64 entries for palette pointers
[+] TLUT hack for Resident Evil 2
[!] Disable Loop Opt for all WWF games 

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@544 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-18 12:20:25 +00:00
Salvy
8163d80a77 [!] Fixed bug? in FPU rendering (was breaking SSV's shade)
[!] Simplified abit HLE handling

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@539 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-16 22:07:53 +00:00
Corn
a86d2c6765 [!] Reworked Insert and Force matrix (speed up for games that uses it and WWF games should work better now)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@534 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-15 13:27:07 +00:00