Commit Graph

4209 Commits

Author SHA1 Message Date
rogerman 14d6e53f54 OpenGL Renderer:
- Fix bug with automatic renderer selection.
- Do some code cleanup.
2013-02-05 06:36:47 +00:00
zeromus f2d177b23a win32-fix magnification filters in ogl display mode 2013-02-05 00:44:04 +00:00
zeromus 98f9f0b64e win32-support ogl 3.2 and oglOld driver choices independently, and fallback to oglOld when ogl3.2 cant initialize 2013-02-05 00:35:57 +00:00
zeromus f09aaa3205 win32-clarify threading logic in ogl display method 2013-02-05 00:10:40 +00:00
zeromus 5538270c1a win32-make ogl display method not leak gdi handles like theyre going out of style, and run more peacefully with new opengl code (i.e. not at 2fps) 2013-02-05 00:02:59 +00:00
rogerman 5b215efacc OpenGL Renderer:
- Major rewrite of the OpenGL rendering code! Most important changes listed below.
- Encapsulate 3D rendering code in C++ classes.
- Add support for 3.2 Core Profile contexts, while preserving backwards compatibility with legacy contexts.
- Initialize the renderer to choose the best OpenGL entry points available from the driver, automatically falling back to legacy entry points as needed.
- Remove multithreading code. New and previous optimizations have obsoleted the need for it, so remove it to reduce code complexity.
- Obsolete shaders.h and add the shader code directly into the .cpp files. Ports can safely remove the shaders.h file from their project/make files.
2013-02-04 22:30:20 +00:00
zeromus d310766240 win32-add opengl display method 2013-02-03 23:05:40 +00:00
rogerman 6506df3a30 OpenGL Renderer:
- Temporary compile fix: Don't dynamically link glActiveTextureARB for Linux/X11 platforms.
2013-01-27 01:12:36 +00:00
rogerman a340c63734 OpenGL Renderer:
- Use ARB version of glActiveTexture() to improve backwards compatibility.
2013-01-26 22:04:32 +00:00
zeromus 02d131a365 win32-fix tiny buglet in gethostbyname call ? 2013-01-22 20:16:25 +00:00
squall-leonhart 6b7896cf93 replaces all instances of >un7z_and_touch.bat with >call un7z_and_touch.bat to make VS2010 and 2012 builds compile first time instead of having to run the build 2-3 times to extract all libs. 2013-01-22 19:10:18 +00:00
rogerman ed2ef989d7 OpenGL Renderer:
- Move lookup table initialization to its own function + bugfixes.
2013-01-21 22:58:56 +00:00
mtabachenko a1fbdd04a6 - fix crash when use wrong index bridge adapter; 2013-01-20 16:32:23 +00:00
rogerman e751cfb9bd OpenGL Renderer:
- Lots of refactoring and code cleanup (important points listed below).
- Clean up #include stuff.
- Make dynamic extension linking a bit nicer.
- Remove ARB and EXT tokens and replace with 3.2 Core Profile tokens. Add backwards compatibility for pre-3.0 OpenGL headers.
- Check for GL_ARB_texture_mirrored_repeat, GL_EXT_blend_func_separate, and GL_EXT_blend_equation_separate. Older GPUs that don't support these extensions should no longer malfunction.
2013-01-20 01:33:12 +00:00
rogerman 2914677ad6 Cocoa Port:
- Add the (Get/Set)FilterParameter family of methods for video filters that need parameters.
- Make VideoFilter::RunFilter() and the destructor a little bit more thread-safe.
- Do some minor code cleanup.
2013-01-18 07:53:09 +00:00
rogerman 4abb36899b OpenGL Renderer:
- Fix compiling on OS X.
2013-01-17 09:14:06 +00:00
zeromus f3bbcfcd63 fix windows compiling by adding GL prototypes for newly-required MSAA junk. not sure what the implications are on old opengl drivers. we'll have to wait for someone to complain. 2013-01-17 06:34:21 +00:00
rogerman 91c53cc772 Cocoa Port:
- New feature: Add support for the OpenGL renderer's multisample antialiasing (MSAA) feature.
- Update UI tooltips for the 3D renderers to reflect the current state of the code.
2013-01-17 01:22:53 +00:00
rogerman 72eb5e6d12 OpenGL Renderer:
- New feature: Support multisample antialiasing (MSAA). This can be enabled through the CommonSettings.GFX3D_Renderer_Multisample setting (disabled by default).
- Do some cleanup of the init code.
2013-01-17 01:19:08 +00:00
rogerman c15911a1b1 GFX3D:
- Do various stability improvements.

task.cpp:
- Fix race condition on Windows.
- Do some minor code cleanup.
2013-01-16 23:38:47 +00:00
zeromus 39997cfebf fix bug from r4479 in windows with softrasterizer task freezing 2013-01-16 09:24:53 +00:00
rogerman fb60a9bcd8 OpenGL Renderer:
- Do some more code cleanup.
2013-01-16 06:17:24 +00:00
rogerman a2f078ec81 GFX3D:
- Remove NDS_3D_GetLineData(), as it wasn't appropriately named or used for its intended purpose.
- Add NDS_3D_RenderFinish(), which is what should have been used in the first place. (Purpose: Blocks the thread until 3D rendering is finished.)
- Optimize gpu3DNull so that it doesn't have to clear the 3D layer every frame.

task.h:
- Fix multiple #include compiling bug.

SoftRasterizer:
- Improve the performance of rendering in multithreaded mode.
- Improve the stability of reset and shutdown in multithreaded mode.
- Do some minor code cleanup.

OpenGL Renderer:
- Improve the stability of reset and shutdown.
- Do some minor code cleanup.
2013-01-15 09:36:17 +00:00
rogerman ad65e6abf7 OpenGL Renderer:
- Make PBO feature support check a little less strict.
- Do some small optimizations to the DS framebuffer color conversion and ClearImage buffers.
- Do a big round of code cleanup.
2013-01-15 00:27:38 +00:00
riccardom 7e9a80c4a1 gtk: correct file name in header 2013-01-12 18:03:52 +00:00
riccardom 8faddbfdc8 gtk: add fullscreen view
Can't see how it is useful on big screen but who am i to
disagree :)

From Alberto, #3597339
2013-01-12 15:19:07 +00:00
riccardom a38920d612 gtk: start the emulation automatically
Like on windows, From Alberto #3597339
2013-01-12 15:17:50 +00:00
riccardom 34e6c5a5f5 gtk: correct audio state with --disable-sound
Audio enabled check was always set even if called with
--disable-sound.

Fix #3574138
2013-01-12 15:06:53 +00:00
squall-leonhart d46f75c188 correct reference casing to fix building on linux
mtabachenko, Unix filesystems are case sensitive(insane, i know), file names in source and make files must match the file name casing or build fails.
2013-01-11 14:45:43 +00:00
rogerman 2cac9d3be3 Cocoa Port:
- Make the video filters code more cross-platform friendly by adding #includes for Linux.
- Do more parameter checks in RunFilterCustom() and also add more helpful comments.
2013-01-11 09:27:07 +00:00
rogerman c0181e741d OpenGL Renderer:
- Small optimization to texture handling.
- Rewrite console info strings for better reading, and also prefix all lines with "OpenGL:".
- Report basic GPU info in the console on init.
- Check for a minimum OpenGL header version of v2.0 and a minimum OpenGL GPU version of v1.2. (Note that these requirements were always implied by the code, but now we can explicitly check for them.)
- Do even more code cleanup.
2013-01-10 22:02:10 +00:00
rogerman 9e1837dc4b JIT:
- Fix compiling on non-Windows platforms. (Regression from r4469)
- Fix compiling for 32-bit. (Regression from r4469)

asmjit Library:
- Do temporary fix for compiling on OS X for SDKs earlier than v10.7.

Cocoa Port:
- Update Xcode project files to include the new asmjit library from r4469.
- Limit OS X SDK version to v10.6 in the Xcode 3 project.
2013-01-10 21:35:32 +00:00
mtabachenko a03d04a335 - update asmjit library; 2013-01-10 10:51:22 +00:00
rogerman a2315eb314 Cocoa Port:
- Fixed dimension bug in VideoFilter::RunFilterCustom().
- Do some minor code cleanup of the video filters code.
- Fixed bug in setting GPU layer states where the Main and Sub GPUs were swapped.
- Add DS_DISPLAY_VERTICAL_GAP_TO_HEIGHT_RATIO token.
2013-01-09 08:31:21 +00:00
squall-leonhart c5a389684a since vs2010 sp1 fixes the bugs that previously caused the softraster to crash, i've re-enabled SSE2 and brought the build settings to be closer to the vs2008 project
This reduces the binary size down a bit from 5.3 and 7.1MB, to 4.7 and 6.4MB's for the 32 and 64bit 2010 release binaries respectively
2013-01-09 05:25:17 +00:00
rogerman c3af0b199f OpenGL Renderer:
- Remove compile dependency for cocoa/macasx_10_4_compat.h
2013-01-08 21:49:06 +00:00
rogerman 30ea51bce0 OpenGL Renderer:
- Copy read PBO pixels into our own buffer before unmapping the pointer. This is to help avoid tripping up certain drivers.
- Do some minor code cleanup.
2013-01-08 01:06:35 +00:00
zeromus c7466bc4a1 fix r4410/r4411 (WRAMCNT memory mapping) regression in firmware bootup: WRAMCNT=3 must happen before firmware boot programs are copied in; continue cleaning up the monumentally chaotic boot process code. 2013-01-07 20:12:36 +00:00
rogerman effc847ee0 Cocoa Port:
- Do some small optimizations to the windowing system.
- Fix an occasional crashing bug that sometimes occurred when changing the display mode.
- Do some code cleanup.
2013-01-05 01:32:05 +00:00
rogerman 777fd6bc78 Cocoa Port:
- Optimize some utility functions
- Make the OpenGL renderer the default 3D renderer in the legacy port
- Fix compiling issue in the legacy port
- Build frameworks now all use SDK relative paths instead of absolute paths

OpenGL Renderer:
- Allow it to compile using the OS X v10.4 Tiger SDK
- OpenGL feature support checks now run an SDK check in addition to the GPU check
2013-01-04 01:40:52 +00:00
rogerman 9ab3c45c2a Cocoa Port:
- Do many optimizations to the OpenGL blitter.
2013-01-03 22:41:35 +00:00
rogerman bd9d8c9612 OpenGL Renderer:
- Do small VBO optimization.
2013-01-02 06:51:09 +00:00
rogerman 46cad337e2 OpenGL Renderer:
- Fix one more bug with VAO support detection.
2013-01-02 04:10:38 +00:00
rogerman 1c08348f4d Video Filters:
- Fix out-of-bounds memory reads on HQ4x and HQ4xS filters that might cause a crash.
2013-01-02 02:58:27 +00:00
rogerman b3fa10446a OpenGL Renderer:
- Fix small bug with VAO support detection.
2013-01-02 02:34:04 +00:00
rogerman e20037f4c7 OpenGL Renderer:
- Add VAO support.
- Fix compiling on Windows.
- Do some minor code cleanup.
2013-01-02 02:20:38 +00:00
rogerman 3389e5974f GFX3D:
- User settings for 3D rendering states now control all 3D renderers.
2013-01-02 00:42:42 +00:00
rogerman 86e6c34f98 OpenGL Renderer:
- Shaders now use generic vertex attributes instead of relying on fixed-function attributes.
2013-01-02 00:28:53 +00:00
rogerman d37650a8a5 Cocoa Port:
- Fix some compilation issues related to r4452.
- Switch the order of model identifier info and OS info in the About box.
- Do some minor code cleanup.
2012-12-31 02:01:37 +00:00
rogerman 6c66a740c6 Cocoa Port:
- New feature: Users can now use some very user-friendly forms for submitting support requests and bug reports. The new forms can be found in the Help menu.
- The About box now shows the model identifier and running OS version.
- The About box display font for the read me files has been changed to Monaco 10.
2012-12-30 09:08:19 +00:00