Commit graph

262 commits

Author SHA1 Message Date
Salvy
14ac722e27 [!] Don't use primitive colour when filling rectangles in 1/2 cycle, just clear to black (was causing issues in MK64)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@508 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-02 15:57:27 +00:00
Corn
91d33ecd33 [!] avoid downsizing texel buffer
[!] some optimizations in copying data with vectors
[!] TnLVFPU Passing more data through a struct rather than function parameters


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@507 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-01 20:57:29 +00:00
Salvy
835ee2b017 [!] Clear color buffer in fillrect (fixes several glitches in many games ex Worms - Armageddon, Superman, Command & Conquer and other games.
[!] Add back check to ignore unnecessary loads to fillrect (Issue breaking the sky in Superman is sorted, we can add this back)
[~] Removed scissoring check in fillrect (no longer needed)
[!] Proper fillrect for 1/2 cycle mode

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@505 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-30 22:14:26 +00:00
Salvy
de39e31c8d [!] Texrect, Texrect Flip, and Fillrect now uses 60% less verts (PSP only)
[+] Added STRIP version for texrect as reference for future ports (uses 40% less verts)
[-] Removed annoying assert from fillrect

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@498 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-25 09:55:26 +00:00
Salvy
5f68383588 [~] Forgot this
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@490 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-23 20:31:08 +00:00
Salvy
efcc46eb8f [!] Some clean ups and made several globals static in DLParser.cpp
[!] Implemented bg1cyc correctly (fixes sprite errors in Worms - Armageddon and other games that use this cmd)
[!] Tidy GBI1/2_Texture

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@489 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-23 20:26:48 +00:00
Corn
092dc48a18 [!] Made inline of some functions in PSPRenderer
[!] Made Debug Dlist spam less for cleaner looking output to file

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@483 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-10 18:02:35 +00:00
Corn
a7275ea718 [!] Fixed potential ROM hack bug
[!] Updated S2DEX_ObjLoadTxtr
[~] Trimmed some debug info

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@482 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-10 10:44:26 +00:00
Corn
bff27b756a [!] Fixed Profiler
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@479 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-08 23:45:02 +00:00
Corn
650c9878eb [!] Rayman 2 textures stretching should work now
[-] Reverted GBI1_EndDL change

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@478 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-08 10:01:53 +00:00
Corn
0165eb67ed [!] bail audio mixer when called with bogus values (YOSHI)
[!] small improvement in color adjustment process
[!] call popDL directly instead of endDL if possible
[!] Instruction count should now match in debug dlist with value shown in Dlist length
[!] reworked blend explorer and cleaned up debug info and reordered some code


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@475 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-07 08:42:56 +00:00
Corn
896a905413 [!] Reorganized and optimized MemRect for Yoshi (small speedup)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@474 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-05 09:37:37 +00:00
Corn
6c4d2df0c6 [!] Semi fixed Extreme-G2 with a hack(does not clear zbuffer and uses setprimdepth on geometry)
[!] 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
2011-11-02 16:54:45 +00:00
Corn
e4463fa3e0 [!] Fixed broken sprites in Yoshi
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@464 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-31 13:42:21 +00:00
Corn
8b4e3cddae [+] Possible to single step frames in Debug Dlist mode
[!] Textures and Dlist are not automatically dumped (need a button press)
[!] rejigged Dlist processing
[!] made gettexturepalette() safe and should not return NULL anymore (fixes Extreme-G and others)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@445 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-16 19:18:37 +00:00
Salvy
e03350e430 [!] Initial work to get S2DEX_Bg1cyc working for Yoshi [WIP] (Note : the BG still stretches mostly in the edges of the screen)
[!} Removed unused entries in MoveMemViewport

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@444 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-14 23:35:27 +00:00
Salvy
40c4452bbd [!] Some code clean ups
[!] Simplified and unified GBI2_PopMtx

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@443 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-14 20:11:34 +00:00
Salvy
87884e3bf0 [!] forgot this
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@440 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-11 23:03:49 +00:00
Salvy
1910ee981d [!] BranchZ, given address from RDP_HALF1 rather display stack (cheaper)
[!] Yoshi_Memrect no longer adds any overhead to RDP cmds, instead we'll just retrieve from LoadDetailsMap
[~] Small clean ups..

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@439 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-11 23:03:03 +00:00
Corn
e3aad9c0cd [!] Rewrote parsing of GeometryMode and how values are passed to PSP TnL
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@433 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-07 19:20:03 +00:00
Salvy
479fa8b569 [!] Some clean ups
[!] Moved Yoshi_MemRect to S2DEX, also it'll be used from S2DEX_RDPHalf_0 to avoid adding overhead to TexRect
[!] Fixed debug build
[!] Removed redundancy in makefile



git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@432 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-07 15:13:45 +00:00
Salvy
f18c1141d5 [!] Simplified Yoshi_MemRect
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@431 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-06 20:26:45 +00:00
Salvy
77cb88c72f [+] Background in Yoshi Story works now (THis is based from Glide Napalm, props to them \o/)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@430 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-06 19:44:58 +00:00
Salvy
c1ba13865e [!] Several clean ups and sorting in DLParser
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@429 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-06 16:03:54 +00:00
Salvy
471de9639f [!] Clean ups in DLParser_SetUcode
[~] Reverted change from 421, was breaking several games (thx re4thewin for reporting it)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@428 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-05 00:01:01 +00:00
Corn
5b794fb14f [!] fixed dlist debug text and warnings
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@427 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-04 21:00:41 +00:00
Salvy
9354bcde92 [!] Simplified and set custom ucode names in one go
[!] Patch ucode name table to create custom name tables (Dlist dumps for custom ucodes are accurate now)
[+] Added GBI1_S2DEX ucode name table

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@426 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-04 20:31:26 +00:00
Salvy
cb4be11d60 [!] Revert 423, won't work the way I had it planned
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@425 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-04 18:52:00 +00:00
Corn
baed613924 [!] Various improvements and simplifications in TnL of Conker and PD
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@424 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-03 19:18:32 +00:00
Salvy
3d09115ae4 [!] Patch uCode tables directly to create custom tables
Note : The benefit of modifying our ucode tables directly
1 - We don't need to build any array which can be really expensive if it happens
2 - No need for a another InstructionLookup
Only issue is that I need to find a clean way to undo any patching to avoid creating conflicts

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@423 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-10-03 00:48:22 +00:00
Salvy
76d2d84362 [~] Silly typo from last commit
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@415 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-25 07:29:34 +00:00
Salvy
a8ec3958e9 [!] Simplified and added comments to SetUcode (~100 ops)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@414 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-25 07:22:16 +00:00
Corn
a1bf2d6f62 [!] reduced memory usage for new TMEM implementation(1/4 of original)
[!] fixed textures in Golden Eye
[~] some cleaning in DLparser.

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@413 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-23 21:13:33 +00:00
Salvy
2197a90dbd [+] Patch normal ucode tables to create "custom" ucode tables
[!] Removed all custom ucode tables since they aren't needed anymore (saves alot of space to binary)
[!] Set ucode, patch ucodes, set vtx multiplier in one go (ToDo : set ucode names in one go too)


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@412 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-23 19:16:09 +00:00
Salvy
7eb1546f77 [~] Removed SetTextureGenLin by error :P
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@411 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-23 07:28:06 +00:00
Salvy
047ab425a8 [!] Code clean ups and simplified some things here and there
[!] Make DLParser_PopDL static to hint compiler to inline (saves ~20 ops)
[!] Reverted changes to DLParser_GBI2_GeometryMode, only made code less readable and slower (saves ~10 ops)


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@410 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-23 07:18:13 +00:00
Salvy
ea5ee1c7f6 [!] Forgot to sort MoveMem and MoveWord
[!] Some clean up, mostly in S2DEX
[!] Reverted changes to DLParser_InitGeometryMode, it only made the code less readable and slower (+10 ops)


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@409 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-23 01:06:48 +00:00
Corn
bbbababc74 [+] Optimized palette loading (bypassing copy to TMEM) for a speed up in some games
[+] 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
2011-09-22 20:51:06 +00:00
Salvy
32acd8a57b [!] Sorted all ucodes and moved them to headers to make development easier and make sure cod placement is optimal (Note : More clean ups and sorting are needed)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@407 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-22 15:47:29 +00:00
Salvy
6f8b3a1217 [!] Forgot to update the vertex multiplier table (this was breaking most custom ucodes, sorry!)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@400 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-16 23:26:21 +00:00
Corn
6f4e0e8659 [-] Reverted Texrect since it does not work well with GE after all
[!] Reduced MaxUcode to 11 (saves some memory)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@399 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-15 20:31:32 +00:00
Salvy
bafa94cb03 [~] Some code reordering and small clean ups
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@398 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-14 05:05:47 +00:00
Corn
acfae3d956 [!] TEXRECT seems to work fine even in GE when discarding decimal part in coordinates (tnx Salvy)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@393 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-05 21:43:52 +00:00
Corn
b0ee3c6f13 [!] modified/reverted some of the previous commit since it breaks scaling and debug outputs
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@392 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-05 06:33:16 +00:00
Salvy
f0bf5d10ee [~] Minor optimizations in GFX plugin
[!] Don't declare blendmodes as statics since it only makes the binary larger and most games only use a few blends.


git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@391 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-05 05:42:29 +00:00
Corn
c73d9486dc [!] Some rendering pipeline fixes and optimizations
[!] Changed amount and order of render states
[!] Updated DList debug output

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@390 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-09-04 16:05:24 +00:00
Salvy
fb29b30d2a [!] Fixed a blendmode for Majora's Mask
[-] Removed RDP_EMULATE_TMEM option (It only slowed down and never helped any game, also added more logic to our code)
[!] Avoid setting Tile/TileSize twice
[!] Simplified parameters for SetTile/SetTileSize
[!] Simplified setting pitch tile

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@385 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-08-29 01:34:19 +00:00
Salvy
18bcf76810 [!] Fixed static in textures in DKR/Mickey/JetForce Gemini
[!] Simplified DLInMem (heavily used by DKR)
[!] Fixed bug in ucode cache that was breaking menu in SSV
[+] Added blendmode for Mountains in Majora's Mask (thx chito for reporting it)

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@373 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-08-23 00:53:47 +00:00
Salvy
cf95d74258 [!] Simplified alpha test checks
[!] Simplified and inline SetMux
[~] Removed hack for Aidyn (no longer needed)
[~] Do not test for GU_GREATER in alpha threshold mode (was breaking Aidym)
[!] Fixed debug build

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@331 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-08-01 17:18:22 +00:00
Salvy
89dd5e5359 [!] Simplified DMA_PI_CopyFromRDRAM (we only for DOM2/ADDR2 anyways)
[!] Simplified WriteValue_Cartridge (Added notes too for games that write to ROM in DOM1/ADDR2..)
[!] Moved RTC READ out of ProcessEeprom to keep code clean, and added an assert for NOP cmds in PIF.
[~] Killed a couple of dead externals
[!] Signed extend DADD/DADDU and also operand in 32bit (fixes Excite Bike and saves 4 ops)
[~] Small clean ups here and there..

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@307 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-06-17 22:48:30 +00:00