1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-07 03:13:49 +00:00
Commit Graph

3555 Commits

Author SHA1 Message Date
Sergey Lipskiy
3380451e00 Fix texture cache verification. 2015-05-13 10:10:15 +06:00
Sergey Lipskiy
02c1884382 Fix pointer compare in FrameBufferToRDRAM::CopyAuxBufferToRDRAM 2015-05-13 10:10:14 +06:00
Sergey Lipskiy
26ab545b8a Fix FrameBuffer_RenderBuffer to work on Linux. 2015-05-13 10:10:13 +06:00
Sergey Lipskiy
1b9c04ade5 Fix Linux compilation. 2015-05-13 10:10:12 +06:00
Sergey Lipskiy
407edd8ea8 Rewrite LOD calculation using dFdx and dFdy functions to get texture coordinates diff.
Many code became useless and thus removed.
2015-05-13 10:10:12 +06:00
Sergey Lipskiy
5cedc0e6e7 Implement VI emulation: treat main frame buffer as TV screen and render
FBO buffers on it according to VI registers values.
2015-05-13 10:10:11 +06:00
Sergey Lipskiy
4e39f37a34 Increase CFB mode frames limit 2015-05-13 10:10:10 +06:00
Sergey Lipskiy
62e3f2404e Copy whole frame buffer to RDRAM, without offset. 2015-05-13 10:10:09 +06:00
Sergey Lipskiy
95acb76460 Render RDRAM buffer only when it is not blank. 2015-05-13 10:10:09 +06:00
Sergey Lipskiy
fb0ba864d1 Force CFB mode if current frame is shown more than 4 times in succession (<15 fps) 2015-05-13 10:10:08 +06:00
Sergey Lipskiy
d6a3b265a5 Cosmetic changes in VI_UpdateScreen(). 2015-05-13 10:10:08 +06:00
Sergey Lipskiy
e788b638b7 Don't copy to RDRAM in CFB mode. 2015-05-13 10:10:07 +06:00
Sergey Lipskiy
a7b5127743 FrameBufferToRDRAM cosmetic changes 2015-05-13 10:10:06 +06:00
Sergey Lipskiy
5f57aa5c48 Implement copy RDRAM to frame buffer. 2015-05-13 10:10:05 +06:00
Sergey Lipskiy
35ab89d379 Fix bug in FrameBuffer_SaveBuffer:
don't use removed buffer
2015-05-13 10:10:05 +06:00
Sergey Lipskiy
31d236f59b Rewrite FrameBuffer_CopyToRDRAM.
Use Pixel Buffer Object for async read from video memory.
2015-05-13 10:10:04 +06:00
Sergey Lipskiy
ae91daa5ca Remove unused gDPUpdateColorImage() function. 2015-05-13 10:10:03 +06:00
Sergey Lipskiy
ca99c49bc7 Remove duplicated code from FrameBuffer functions. 2015-05-13 10:10:03 +06:00
Sergey Lipskiy
72e7d41673 Remove unused function FrameBuffer_RestoreBuffer() 2015-05-13 10:10:02 +06:00
Sergey Lipskiy
fead6f6ad7 Add list of frame buffer emulation issues. 2015-05-13 10:10:01 +06:00
Sergey Lipskiy
bd51edec41 Temporal hackish solution for scoreboard problem in Mario Tennis:
copy aux frame buffer content to RDRAM and delete the buffer.

Need to implement proper solution.
2015-05-13 10:10:01 +06:00
Sergey Lipskiy
0c9c9d4e27 Fix bufEndAddress check in CheckForFrameBufferTexture 2015-05-13 10:10:00 +06:00
Sergey Lipskiy
a93923cbff Add support for Mario Kart microcode 2015-05-13 10:09:59 +06:00
Sergey Lipskiy
efee40c2c7 Implement copy texture frame buffer to RDRAM. 2015-05-13 10:09:59 +06:00
Sergey Lipskiy
971bd9d0ec Frame buffer fixes for Mario Tennis.
Implemented various methods for testing buffer validity.
2015-05-13 10:09:58 +06:00
Sergey Lipskiy
7056d29c0f Fix screen shot capture. 2015-05-13 10:09:57 +06:00
Sergey Lipskiy
d27daf1009 Correct LOD test shader 2015-05-13 10:09:57 +06:00
Sergey Lipskiy
758e0efbff Correct LOD calculation. Not sure, that it is correct. 2015-05-13 10:09:56 +06:00
Sergey Lipskiy
1ac9e4e696 Fix min_lod and lod_frac read in RDP_SetPrimColor. 2015-05-13 10:09:55 +06:00
Sergey Lipskiy
53d5b994f5 Fix depth buffer clear when it is used as an auxilary color buffer. 2015-05-13 10:09:55 +06:00
Sergey Lipskiy
c8f83889a8 Fix vertex st scaling, when gSPModifyVertex is used.
Fix st scaling when otherMode.texturePersp is off.
2015-05-13 10:09:54 +06:00
Sergey Lipskiy
1e4870e6b9 Change way of color buffer address range calculation:
on buffers swap use actual color image height to re-calculate end address.
2015-05-13 10:09:53 +06:00
Sergey Lipskiy
1341f7bf15 Frame buffer emulation fixes:
save pointer to the load tile in the frame buffer.

Game: Mario Tennis
2015-05-13 10:09:52 +06:00
Sergey Lipskiy
7418f76968 Frame buffer emulation fixes:
clear color buffer when size is changed but address is the same.
2015-05-13 10:09:52 +06:00
Sergey Lipskiy
4fa08bd906 Fix mask calculation in SetOtherMode_L functions.
Need other corrections/optimizations. Functions inside switch look useless now.
2015-05-13 10:09:51 +06:00
Sergey Lipskiy
b33f643905 Tuned condition for correctness of found frame buffer. 2015-05-13 10:09:50 +06:00
Sergey Lipskiy
620c809727 Fixed frame buffer height calculation. 2015-05-13 10:09:49 +06:00
Sergey Lipskiy
f66c03d2e7 Fix FillRect in Fill mode.
Fixed frame buffer clear in Lego Racers, broken after previous commit.
2015-05-13 10:09:49 +06:00
Sergey Lipskiy
de6aa21d11 Fix combiner for FILL mode. 2015-05-13 10:09:48 +06:00
Sergey Lipskiy
c9ddb8e1a6 Fix read alpha from frame buffer textures.
When gDP.otherMode.imageRead is off, alpha is replaced by the fixed value.
2015-05-13 10:09:47 +06:00
Sergey Lipskiy
562612a21a Texture load status is now set per tile. 2015-05-13 10:09:47 +06:00
Sergey Lipskiy
fe550b7b6b Code cleanup: remove duplicated code in OGL_UpdateStates(). 2015-05-13 10:09:46 +06:00
Sergey Lipskiy
70417de37c Fix viewport set for texture buffer in OGL_DrawRect(). 2015-05-13 10:09:45 +06:00
Sergey Lipskiy
cfc85d2c92 Fix frame buffer texture coordinates calculation for T1. 2015-05-13 10:09:44 +06:00
Sergey Lipskiy
5092cf5891 Code cleanup: Remove duplicated code in FrameBuffer_ActivateBufferTexture(). 2015-05-13 10:09:43 +06:00
Sergey Lipskiy
03dfe205f8 Texrect hack for 512 width.
Fixed motion blur in Rally Challenge 2000.

Need to find a proper solution.
2015-05-13 10:09:43 +06:00
Sergey Lipskiy
ad9e3d3bee Correct texture buffer shift in loadblock mode. 2015-05-13 10:09:42 +06:00
Sergey Lipskiy
f5bcc81414 Correct color buffer height calculation. 2015-05-13 10:09:41 +06:00
Sergey Lipskiy
aec5094967 Add support for 8bit frame buffers.
Fixed dynamic shadow in Banjo-Tooie
2015-05-13 10:09:41 +06:00
Sergey Lipskiy
c38958f12c Don't clear gDP.colorImage.changed flag in gDPSetColorImage.
Fixed Zelda MM motion blur.
2015-05-13 10:09:40 +06:00