Carlos R
e0070b6861
Fix for blast corps and more bound checks
...
*Properly trigger DP interrupt, some games are very sensitive when we ignore it. Blast Corps no longer hangs after the Rare logo. Also ensure to trigger the interrupt when frameskip its enabled to avoid stalls
*Added bound checks for DLinMem and DLCount
*Disabled invalid address bound checks for the PSP. With the recent changes, now its safer to disable it
2020-07-12 15:10:16 -07:00
Carlos R
b39e6d119e
*Do not set the texture tile and scale when texture its disabled, also handle properly when the texture scale its 0, DKR does this
...
*Convert segment address to a physical address (fixes an ancient bug discovered by recent changes to RDPSegAddr (fixes a crash in DKR)
2020-07-11 15:29:31 -07:00
Carlos R
6733dbc19d
F3D improvements
...
*Implemented CullDL for F3D microcode, small speed up for games that use this, ex Wave Race 64
*Fixed max light constant for F3D/EX/2
*Continue WIP to optimize the vertex indices at compile time (F3D its done now)
2020-07-02 22:37:56 -07:00
Carlos R
f70c0180b5
Prep work to add more custom ucode implementations
...
*Refactored RDP_MoveMemLight to prevent duplicate code and simplified it for adding custom lighting impls. Also added bound checks for invalid light index and addresses
*Added hash for Rogue Squadron (this a custom GBI1 ucode), currently unimplemented
*Do not hardcode GBI commands when patching custom ucode tables
*Fixed DKR's index mtx address, thanks Rinnegatamante for pointing out this error
2020-07-02 09:15:45 -07:00
Carlos R
4e48f03020
Fix some uninitialised states in the renderer which was breaking lightning in debug builds. Thanks StrmnNrmn!
2020-07-01 22:44:17 -07:00
Carlos R
ee22e26003
More bound checks
...
*Implemented IsVertexInfoValid to add proper bound checking our vertextinfo
*Implemented IsAddressValid to add proper bound checking when referencing an N64 ram address, currently its only used for DMA_Tri_DKR
*Fixed bug bugged addresses in DKR ucode
*Removed now redundant bound checks, some of these were either wrong pr inconsistent
2020-06-27 13:53:06 -07:00
=
3707c880c2
Revert move to HWFog, we'll re-add this at a later date.
2020-05-28 09:38:37 +10:00
Rinnegatamante
839825dce3
Move to hw fog usage.
2020-04-27 15:11:35 +02:00
Ben Slater
6a725bf99e
Removed a bunch of asserts / debug options from release build, stabs a bunch of compiler warnings
2019-05-03 17:43:44 +10:00
Ben Slater
c562b76641
*Clean build from StrmnNrmns repo
2019-02-27 17:04:51 +11:00
mrbenslater
2e6cf17baa
Move more debug stuff out of Release
2019-01-21 19:58:47 +11:00
salvy
351e16a38c
[!] Fixed PC build
...
[!] No longer needed to clear tnl flags
[~] Removed unused variable
2013-09-25 12:31:58 -07:00
CornN64
bfd94b655c
[!] Some WIP for vertex fog on PSP (functions on many games that uses the standard TnL. It uses a second pass to blend in the fog)
...
[-] Reverted some changes from previous commit since it broke texturing in some games and CBFD lights.
2013-09-21 18:31:48 +02:00
salvy
9e88e012b5
[!] Always set SkipIfZero when LigtCol is set
...
[!] Refactored MV_LIGHT
[!] Removed invalid light direction check (This was for the PSP, I don't think is required)
2013-08-19 08:18:22 +01:00
salvy
7320eaef08
[!] Make sure to clear TnL flags, also rename it from TnLPSP to TnLMode
2013-08-19 08:18:22 +01:00
CornN64
11703ec45a
[!] Optimized GBI2/MM point light calculations and light struct for CBFD and MM
2013-08-19 08:18:22 +01:00
salvy
be0f32311c
[!] Implemented proper lightning for Majora's Mask
...
[!] Improved N64Light struct, it can now handle GBI2 (thnx corn for helping!)
[!] Fixed compiled error in SetNewVertexInfoPD, and some clean ups
2013-08-19 08:18:12 +01:00
salvy
d10ff1ca11
[+] Implemented lightning for Conker rendering (PC/OSX only for now) (Corn & Salvy)
...
[!] PSP VFPU ASM compatible with new light struct as well possible to interface with Conker's new TnL. (Corn)
[!] Slight tidy in audio Alist processing loop. (Corn)
2013-07-31 13:56:36 -07:00
salvy
20ca36cb1a
[!] Fixed light in Majora's Mask
2013-06-13 00:41:30 -07:00
Paul Holden
49a06ed319
[~] Make header guards consistently use FULL_PATH_TO_FILE_H_, with script
2013-06-04 22:02:30 +01:00
salvy
dd678a0964
[!] Fixed graphics glitching out in Banjo Tooie
...
[!] Fixed sun glare in Banjo Tooie (looks great now!)
2013-06-02 18:21:58 -07:00
salvy
4954df3879
[!} Fixed DK going through walls (Note: 64bit compares didn't impact performance on PSP, Note2: this has to be fixed on the PSP dynarec too)
...
[!] Fixed audio in DK64 and use our memcpy_byteswap (W32)
[~] Some small clean ups
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1725 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-05-30 07:32:59 +00:00
salvy
581072f5e2
[!] Fixed MSVC warnings
...
[!] Optimization for Sprite2D, only update the counter individually when next command doesn't match
[!] Fixed and optimized guNormalize_Rugrats (Still can't find any game that uses this errg)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1599 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-04-18 22:05:31 +00:00
salvy
38da6cd456
[~] Opps gGeometryMode has to be global (sorry!)
...
[!] Added blender for Donald Duck (W32/OSX)
[~] Some small changes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1502 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-04-01 05:32:31 +00:00
salvy
58216d067f
[~] gGeometryMode can be local (saves quiet bit of ops)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1501 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-04-01 04:00:16 +00:00
strmnnrmn
ca48a42999
[+] Rewrite DLDebug_DumpRDPOtherMode so that we can see the settings that were actually applied. Without this the code just dumps the entire othermode state every time a single setting is changed, which makes the debug output hard to follow
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1479 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-30 10:21:03 +00:00
strmnnrmn
c643ce340d
[~] Fix some mixed LF/CRLF
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1381 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-24 12:51:49 +00:00
salvy
1d61dd19e6
[!] Need to set depth state in Draw2Texture (Fixes logo in Wipeout)
...
[-] Don't update shademodel ( I don't think this required, and was breaking tiger's honey hunt)
[!] Fixed crash in Wetrix
[!] Removed unused hacks
[~] Banjo K needs tlut hack for fast tmem (Fixes Nintendo logo)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1369 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-23 03:33:13 +00:00
salvy
8df469af4c
[~] Clean ups to previous commit
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1236 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-10 16:30:28 +00:00
salvy
88ba769ea0
[!] The projection mat stack is 1 matrix deep, so it cannot be popped/pushed.
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1235 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-10 11:06:58 +00:00
strmnnrmn
3afdce3310
[~] Rename RDP_SetOtherMode to DLDebug_DumpRDPOtherMode, and make it use the passed arguments
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1211 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-09 13:59:13 +00:00
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
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
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
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
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
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
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
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
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
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
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
Corn
17df2a3c7f
[!] load matrix directly to stack to avoid copying data twice (setproject, setmodelview and force_matrix)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@524 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-09 20:46:26 +00:00
Salvy
12c3f0454c
[!] Use LoadUcode to switch to S2DEX2 to avoid adding overhead to GBI2 ucodes (our ucode cache should handle off any overhead from LoadUcode anyways)
...
[!] Added detection for S2DEX2 ucodes
[!] Some more optimizations in copying data with vectors (~30 ops)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@522 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-12-09 19:57:26 +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
a7b4e02fee
[!] Force disable loop opt for Rayman2
...
[!] Removed a forced blend mode that made shadows in Rayman2 invisible
[!] Minor fix to texture scaling to proper match 1.000 scale
[!] Removed extra test for disabling blending
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@488 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-20 16:47:28 +00:00
Corn
32b96decfb
[!] Fixed some compile errors and rendering logic
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@486 42e9bfbe-799a-4a2d-bad1-236e862a387a
2011-11-17 19:25:23 +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