Commit graph

973 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
strmnnrmn
7422eb6f6c [*] Move PixelFormatPSP from SysPSP to common Graphics, rename to NativePixelFormat.h. Remove some of the namespaces to make use of native/n64 pixelformats more obvious when reading the code.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1106 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-02 14:34:51 +00:00
strmnnrmn
18e14dcb76 [+] OSX: implement a generic fragment shader that can handle all of the n64's mux/cycle modes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1104 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-02 10:10:34 +00:00
strmnnrmn
0e6ee06c9e [+] Rendering works on OSX now
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1101 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-02 10:10:11 +00:00
strmnnrmn
ffba6be50c [\!] calculation of display_x/display_y could result in arithmetic underflow, as the calculation was performed on unsigned int and assigned to signed in. Also, ignore the PSP specific display constants on OSX
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1100 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-03-02 10:10:02 +00:00
strmnnrmn
de11411cbc [~] Tidy up GraphicsContext Clear functions - the overloading was a bit confusing so I renamed them. Clear(bool,bool) only ever took (true,true) as arguments, so just call it ClearToBlack and simplify the code a bit
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1089 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-24 11:09:22 +00:00
strmnnrmn
997c07e717 [~] ifdef out some PSPRenderer code so it compiles on OSX
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1079 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:52:43 +00:00
strmnnrmn
7b37631972 [~] Add a Round function to Math.h, to provide some platform independence for pspFpuRound
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1078 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:52:36 +00:00
strmnnrmn
2cd54e7536 [~] GraphicsContext UpdateFrame return was unused. Rename GetBufferSize to GetScreenSize, and use to avoid exposing SCR_WIDTH/SCR_HEIGHT
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1077 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:52:29 +00:00
strmnnrmn
6b17ef92bc [~] Move gFrameskipActive to DLParser.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1073 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:51:56 +00:00
strmnnrmn
15d2222666 [~] Avoid casting away constness
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1072 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:51:48 +00:00
strmnnrmn
47af5b53cc [~] Make some const casting clearer
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1071 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:51:41 +00:00
strmnnrmn
e9cb09a141 [~] Fix indentation
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1070 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:51:35 +00:00
strmnnrmn
40aa5b71df [~] filepath can never be null here \!
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1067 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:51:14 +00:00
strmnnrmn
cfbfb6f4b0 [~] Silence a warning about an unused variable
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1066 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-23 15:51:07 +00:00
strmnnrmn
7257c5f190 [~] Replace uses of pspFpuAbs with an Abs wrapper function (platform independence)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1046 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-20 22:07:34 +00:00
strmnnrmn
5ecb4a0edb [!] RDP_MoveMemViewport was trying to printf past the end of the scale and trans arrays (thanks clang\!)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1045 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-20 22:07:25 +00:00
strmnnrmn
bcdaf8e22c [~] Fix some whitespace issues
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1043 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-20 22:07:12 +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
066b94e0f7 [~] There's no need to use the fast PSP-specific versions of these functions
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1022 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-18 21:00:11 +00:00
strmnnrmn
319601baa1 [~] Encapsulate some display list debugger state
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1021 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-18 21:00:03 +00:00
strmnnrmn
9269769d4a [~] Remove a cyclic dependency between Microcode.cpp and DLParser.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1020 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-18 20:59:55 +00:00
strmnnrmn
a629bb2803 [~] Move some DL debugging code (printf style, not the interactive debugger) to a separate DLDebug.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1019 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-17 21:27:37 +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
strmnnrmn
0017427c39 [~] Fix linendings on a couple of files in HLEGraphics. Otherwise no functional changes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@1003 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-17 19:44:08 +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
Corn
fd472f60df [!] PspFastRand() is now just FastRand().
[!] Make sure to invalidate regs when exiting a fragment.

git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@937 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 21:59:04 +00:00
strmnnrmn
3e18c63840 [~] RDP_SetTile and RSP_SetTileSize are no longer defined
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@921 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 17:41:43 +00:00
strmnnrmn
1f2d4ff37e [~] Fix a misnamed variable
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@920 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 17:41:38 +00:00
strmnnrmn
a1e3d5f1b4 [~] Fix some formatting
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@919 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 17:41:32 +00:00
strmnnrmn
46dec91c54 [~] RDP_NOIMPL macros aren't used. Merge some formatting changes.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@918 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-03 17:41:27 +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
strmnnrmn
7b26f510d4 [~] pspFastRand only exists on PSP. TODO: add a wrapper for this to avoid ifdef DAEDALUS_PSP everywhere
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@915 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-02 12:33:38 +00:00
strmnnrmn
e99609635a [~] Merge some minor alignment changes
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@914 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-02 12:33:12 +00:00
strmnnrmn
8d02eaa1e8 [~] Fix inconsistent line endings (no functional changes)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@913 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-02 12:12:00 +00:00
strmnnrmn
34004d0248 [~] Merge some minor whitespace fixes to RDP.h
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@912 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-02 12:11:51 +00:00
salvy
432d158b54 [+] Handle size 32bit in fillrect (fixes the sky in SuperMan 64, Lambo's intro bg looks correct now too)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@908 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-02-01 02:44:39 +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
Corn
cede927eb8 [!] small improvement to memcpy and some clean up
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@881 42e9bfbe-799a-4a2d-bad1-236e862a387a
2013-01-02 12:03:50 +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
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
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
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
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