Commit Graph

67 Commits

Author SHA1 Message Date
Gregory Hainaut aa4b2d9f3a gsdx sw: wrap GS memory
Cost ought to remain small. Worst case is 2 extra "and" operation by group of pixels in scanline renderer

I think PixelAddressN functions are mostly call in the init.
2016-11-01 13:33:11 +01:00
Akash 45be4626f6 GSDX: Add an enum for texture filtering
Also re-order the combobox to make it look consistent with the tooltip description.
2016-10-16 17:36:30 +01:00
Gregory Hainaut 335d7f3ae5 gsdx: add a nice enum for min filter 2016-10-13 20:16:38 +02:00
Gregory Hainaut 22ebdcf1cf gsdx debug: create a nice dump function for kernel gs registers
Add missing register
2016-10-08 23:42:39 +02:00
Gregory Hainaut 1c900e780a gsdx memory: add a PS GPU 24 bits format
Same swizzle as 16 bits. But contains tightly packed RGB pixels.
2016-10-05 21:06:38 +02:00
Akash fdc10e13ec GSDX: Better detection of default renderer
* Better detection of default renderer based on the vendor ID ( Nvidia, AMD , Intel)
* GSUtil: Add a dedicated function for identifying best renderer
2016-06-09 15:27:11 +05:30
Gregory Hainaut a648e2db70 gsdx: switch to dx10/11 as default on Windows
1/ Detecting Dx level requires a DX context.
2/ Dx9 GPU market is 1-2% (I'm not even sure they can run latest windows 10)
2016-05-28 10:07:27 +02:00
Gregory Hainaut a9c18c57e4 gsdx option: use the new GetConfig* function
v2:
add PSX stuff
ssakash review
2016-05-28 10:07:27 +02:00
Jonathan Li db81925c4b Merge pull request #1335 from turtleli/freebsd
Support FreeBSD
2016-05-25 18:55:51 +01:00
Jonathan Li da2046e90e gsdx: Use alignas instead of __aligned
__aligned is defined in FreeBSD headers and will cause compile errors.
2016-05-21 13:23:11 +01:00
Akash 58b43dbb6c GSDX: Rework video mode detection code
* Use some nice enums instead of macros
* properly detect 720P/1080I separately.
* Some code cleanup, extended variable names and added few comments
2016-05-19 14:02:50 +05:30
Akash 21e6a344a2 GSDX: Improvements to the GSDX dialog (#1284)
GSDX: Improvements to the config interface.

- GSDX: Add new logos to dialog
- GSDX: Remove all the extra null renderers
- GSDX: Changes to renderer combobox
- Sort all the renderers in ascending order. (the fact that D3D11 was
above D3D9 really annoyed me >_<)
- Properly display usage of D3D10/D3D11 on the combobox.
- Use highest available version of DX by default.
- GSDX: gray out upscaling hacks at native resolution
- GSDX-PSX: Modifications to the dialog
- Add new logos
- Remove SDL renderer from combobox since it was removed long ago.
2016-05-01 17:33:53 +01:00
Akash 1445bf7fb1 GSDX: Extend macros for all video modes.
The following patch detects the other video modes based on Phased lock loop divider (LC)
2016-02-12 04:43:57 +05:30
Gregory Hainaut 85f64b8c08 Merge pull request #1137 from PCSX2-Alpha/CRTC_Scaling
PCRTC: Proper handling for 720P/1080P video modes.
2016-02-01 10:11:58 +01:00
Akash 7407162dfe GSDX: Add some nice macros 2016-01-30 05:19:53 +05:30
Jonathan Li 0f11838d93 gsdx: s/_WINDOWS/_WIN32/
It's the proper Windows preprocessor macro.
2016-01-27 22:41:45 +00:00
willkuer 0c4b25bcec gsdx: defaulting extra rendering threads to 2 2015-12-28 01:05:25 +05:30
ramapcsx2 9092be3a52 GSdx: better default renderer selection. Thanks, Gregory :) 2015-12-20 16:03:58 +01:00
ramapcsx2 43b9caf735 GSdx: default renderer to DX11 hw. SPU2-X: default output module to xaudio2 (portaudio has issues selecting the proper hardware device) 2015-12-20 14:46:59 +01:00
willkuer 9245d3ed7e gsdx: RendererEnum
1. Add GS_Renderer Enum

Replace all instances of int/uint32 renderer identifier by a strongly
typed enum and appropriate casts.

Only instances in GS[*].cpp/h classes were touched. GPU[*].cpp/h classes
do not to follow the same convention.

2. Add default renderer according to OS

The default renderer is OS dependent (Win -> Dx9HW, others -> OGLHW).
Consequently one should always check againt the appropriate default
value on config load.

The old behaviour was only - if a at all - problematic if the respective
element in the gsdx.ini was missing and probably even then didn't create
issues. The current implementation is still more stable and does not
depend on the implementation of GS.cpp -> GetConfig()
2015-11-10 00:26:39 +01:00
Gregory Hainaut ae3b768de9 bump gsdx version to 1.0.0 2015-07-01 09:36:53 +02:00
Gregory Hainaut 35081f922a gsdx: GS kinds of support draw without framebuffer
Gow uses 24 bits buffer, so only color is updated but blending is configured as Cd
so it is a NOP

In this case, we don't lookup the target in the texture cache. It reduces the complexity
to handle depth which can be located at same address as RT

Note: please test DX renderer
2015-07-01 09:30:20 +02:00
gregory.hainaut 86a2f5a8ec gcc:
* Fix a couple of GCC warning
* Fix build with gcc4.8 (issue 1392)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5618 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-04-14 10:48:50 +00:00
gregory.hainaut e06484adb8 gsdx: update the copyrigh address thank to sed
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5412 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-09 18:16:11 +00:00
sudonim1@gmail.com 1f8c4ddc22 GSDx: Just slapping some consts on methods I needed to use with const references in testing.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5342 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-07-21 03:45:40 +00:00
gregory.hainaut b8b451340c zzogl: use the EXT version of fbo (fix the build on windows)
gsdx:
* add some parenthesis to shup up very verbose gcc warning
* adapt ogl to latest sudonim change


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5290 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-13 10:43:04 +00:00
gregory.hainaut cfeb7a5b0a copyright: remove the special copyright note. Only impact trivial code (enum and register definition)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5241 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-29 06:59:33 +00:00
gregory.hainaut 7d7ca41187 gsdx, zzogl: avoid nested class inside GSVertexArrayOGL.h
zzogl: rework the shader interface to use struct like CG. Shader are still broken because some variables (gl_color & gl_secondary_color) are not supported in vertex shader...


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5209 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-13 17:22:36 +00:00
gabest11 fcc09c2cca GSdx: fixing two different bugs of the sw renderer, addressing outside the texture in region wrap mode (skygunner), and little gaps in shadows and other random places (dq8, rogue galaxy, okami).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5085 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-29 10:12:20 +00:00
gabest11 915a57d9f3 GSdx: more fun with shaders but nothing works yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5083 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-27 11:56:49 +00:00
gabest11 20cd5e9b81 GSdx: next attempt to fix frame skipping
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5078 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-21 12:34:36 +00:00
gabest11 9b8c753ead GSdx: broken frame skipping should be fixed, and a few random sw renderer optimizations.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5077 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-21 04:44:04 +00:00
gabest11 9ec7f14fa8 GSdx: Simplified vertex formats and the related code, everything works with the basic GSVertex until it gets uploaded to the vertex buffer.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5074 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-19 04:53:36 +00:00
gabest11 9aabcc1701 GSdx: added a shortcut in GSState::Transfer for the most frequent vertex format I found (helps quite a lot), less thread-syncing for the sw renderer, and the bios boot logo was fixed (just had to clear the memory on reset).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5072 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-18 11:47:31 +00:00
gabest11 da4ea83134 GSdx: nothing really new, just testing the compute shader, if you are an expert take a look and tell me your opinion :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5068 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-13 18:10:05 +00:00
gabest11 2eec75c2ae GSdx: sps fixed, some code clean up and optimization, ps2 logo still broken in hw mode, I'll check it later
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5062 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 17:10:00 +00:00
gabest11 f68f007f00 GSdx: the promised index buffer update, needed a lot of changes, expect bugs in the next dozen revisions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5045 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-05 02:40:24 +00:00
gabest11 b31634df8f GSdx: using mipmap levels (only per batch, no tri-linear) and a couple of small changes, including the stdcall fix for linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4419 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 22:10:58 +00:00
gabest11 d44def8c0b Fixed many gcc errors, there are still plenty. Intel's compiler might be a better alternative.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4311 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-18 01:56:05 +00:00
gabest11 ca7abd983a Mostly code cleanups, XBYAK 2.99, VEX conversion for the sw renderer (3-5% faster), GSState::Move fix for dark cloud 2 invention crash.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4287 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-07 01:59:05 +00:00
ramapcsx2 1b1f112533 Avih (of Firefox plugin "Smoothwheel" fame ;) ) worked on bringing back that extended GSdx information we lost in the merge to the new WX Gui.
Here's his changelog:

GSdx, PCSX2: Fixed broken GS info at the title bar
* If the plugin doesn't support the API, PCSX2 will display only the image mode (progressive/interlaced field/frame), NON i18n!
* If the plugin does support the API, PCSX2 will not display the image mode, and instead display the info from the plugin
* GSdx now properly sends title info: resolution, image mode, deinterlace mode (weave - bff, etc)
* To enable the full GSdx title info as it used to work before it got broken: uncomment //#define GSTITLEINFO_API_FORCE_VERBOSE at GS.h of GSdx.
NOTE: When using an older pcsx2.exe with newer GS plugin, the title would contain duplicate image mode info. All other combos work fine.
* PCSX2 still displays the performance info, etc in the title bar.

Thanks a bunch for bringing this information back, Avih! :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4070 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-02 22:48:56 +00:00
Jake.Stine 645188e0e8 GSdx: Minor optimization and some code simplifications relating to VertexKick/DrawingKick and the Packed register handlers. I also added preliminary work for a switch-based packed register dispatcher (WIP, doesn't support frameskipping yet).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3649 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-17 04:38:49 +00:00
sudonim1 c7aa146489 I hate D3D.
32-bit depth buffers for D3D9 users if available.  Lots of code shuffling for reasons I don't even remember.  Stuff.  Pretty much just the 32-bit depth buffers.  That's good though, you don't have to envy D3D10 users half as much now.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3002 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-05-14 14:05:39 +00:00
sudonim1 4457fe40fc Removed all trailing whitespace in *.c *.cpp *.h because it irritates me.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2897 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-25 00:31:27 +00:00
sudonim1 3f36d66116 I'm an idiot and committed with the crippling macros uncommented, undoing the work in r2702 and taking the software renderer down a peg.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2705 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 02:19:06 +00:00
sudonim1 3f45a3b8b1 GSDX: added a couple of macros to cripple gsdx for developer use in diagnosing problems.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2703 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-12 22:47:59 +00:00
ramapcsx2 77a40e3c6e Increase version of SPU2-X and GSdx, as enough changes have accumulated.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2693 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 06:46:19 +00:00
arcum42 01aff16aac GSdx: A few minor cleanups to nudge GSdx a little closer to being cross-platform compatible,
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2405 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-01-01 05:18:32 +00:00
Jake.Stine c9c924fe35 Yay, craploads of fixups for the new gui:
* Lots of crashfixes and threading rules compliance (like using wxYield instead of ProcessPendingEvents)
 * Killed off some memory corruption
 * Better error handling and reporting
 * Much speedier suspend/resume during emulation
 * Revamped entire savestate system to use a RIFF-style file format (untested, will work on it soon)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1832 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-16 17:23:02 +00:00
gabest11 3435ca8b74 GSdx: fixed the crash when booting through the bios
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1600 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-03 11:01:36 +00:00