Commit Graph

394 Commits

Author SHA1 Message Date
Brandon Wright a48703796a GTK+: Use std::string here. 2018-11-18 13:08:42 -06:00
Brandon Wright 870bda8efb GTK+: More cleaning. 2018-11-18 12:30:58 -06:00
Brandon Wright 09f06a6167 GTK+: Clean up autotools files. 2018-11-18 12:21:16 -06:00
Brandon Wright 862e2b66fe Turn these into inline functions for sanity. 2018-11-18 12:02:12 -06:00
Brandon Wright 047cfe2f9d Use a sstrncpy function that behaves like strlcpy. 2018-11-18 11:18:27 -06:00
Brandon Wright 600de05244 String bounds-checking. 2018-11-17 18:41:37 -06:00
Brandon Wright 7bb5b00504 GTK+: Patch into S9xCustomDisplayString.
Fix issue with overlay on overscanned height.
2018-11-17 16:12:06 -06:00
Brandon Wright 4471bacf18 GTK+: Silence NULL pointer arithmetic warning. 2018-11-17 15:24:56 -06:00
Brandon Wright 5d1db07e85 GTK+: OpenGL: WaylandEGLContext is a class. 2018-11-17 14:54:57 -06:00
Brandon Wright 1cd825090b GTK+: OpenGL: Don't reset state we don't change. 2018-11-17 12:19:16 -06:00
Brandon Wright f0ddb097f9 Mark all of GTK+ with header stub, and a couple others. 2018-11-15 17:42:29 -06:00
Brandon Wright 5f56cadafb Use a license stub everywhere.
This points to the full license in the root directory.
2018-11-15 17:31:39 -06:00
Brandon Wright 54a3d41d61 GTK+: Implement a different overlay font.
It's the same font, but with kerning added and the black outline
replaced with a translucent background.
2018-11-15 17:03:49 -06:00
Brandon Wright 7a64ed801d GTK+: Don't translate config file entries. 2018-11-14 14:51:39 -06:00
Brandon Wright a9adb88e25 GTK+: Remove doc directory. GTK+ port is now only Snes9x-licensed. 2018-11-13 19:17:30 -06:00
Brandon Wright 61cced4734 GTK+: Use root snes_ntsc implementation.
Implement scanlines there.
2018-11-12 16:51:21 -06:00
Brandon Wright 33d1840877 GTK+: Make Wayland support removable. 2018-11-09 16:20:00 -06:00
Brandon Wright ffdf886a0a GTK+: GL: Use PBOs by default, disable on GL < 1.5 2018-11-09 15:54:07 -06:00
Brandon Wright b6858adf11 GTK+: OpenGL: Only do this part on non-legacy. 2018-11-09 15:47:38 -06:00
Brandon Wright 21c1863782 GTK+: OpenGL: Allow legacy, no shader, paths. 2018-11-09 15:46:13 -06:00
Brandon Wright 3e87063780 GTK+: Mandate OpenGL on Wayland.
Warn users if their OpenGL stack is too old.
2018-11-09 14:55:33 -06:00
Brandon Wright e5aed9f8d5 Update 1.56.2 to 1.57 everywhere but appveyor. 2018-11-08 19:00:36 -06:00
Brandon Wright c878b35610 GTK+: OSS: Try /dev/dspN 1 through 9. 2018-11-08 15:12:47 -06:00
Brandon Wright 7ae93a539e GTK+: Save controller ports to config file. 2018-11-08 14:59:24 -06:00
Brandon Wright 8c7b326254 GTK+: Add hotkey to capture the mouse. 2018-11-08 14:23:37 -06:00
Brandon Wright af2df5869d GTK+: Remove goofy headerbar experiment. 2018-11-07 15:09:27 -06:00
Brandon Wright a9cc03c06c GTK+: Consolidate includes to compat header. 2018-11-06 18:46:44 -06:00
Brandon Wright 0f15a398f9 GTK+: Fix GTK+ 2.0 compatibility again. 2018-11-06 18:04:10 -06:00
Brandon Wright 528839a13b GTK+: lint the snes9x.ui file. 2018-11-06 16:39:23 -06:00
Brandon Wright cadffa0073 GTK+: Relative save slots. 2018-11-06 16:39:23 -06:00
Brandon Wright fcdbe149ba GTK+: Remove extraneous Cg directory. 2018-11-06 11:57:19 -06:00
Brandon Wright de4699bd24 GTK+: Use glXQueryExtension, not epoxy_has_glx. 2018-11-06 11:39:17 -06:00
Brandon Wright d3b42751b9 GTK+: Fix some typos and add comments to config. 2018-11-05 18:40:16 -06:00
Brandon Wright 5e2049ac55 GTK+: Don't append "- Snes9x" to game name. 2018-11-05 18:17:48 -06:00
Brandon Wright b5b7c4390c GTK+: Add support for header bar. 2018-11-02 19:20:46 -05:00
Brandon Wright c5038bc9fe GTK+/style: Remove explicit returns in void funcs. 2018-11-02 16:48:20 -05:00
Brandon Wright a04ccfc02c GTK+: Style: Remove voids from parameter list. 2018-11-02 15:52:26 -05:00
Brandon Wright 4536194e32 GTK+: More consts and enums instead of #defines. 2018-11-02 15:47:31 -05:00
Brandon Wright 61d691a523 GTK+: Clean up control stuff a bit. 2018-11-02 15:27:12 -05:00
Brandon Wright 7700efe1fc GTK+: Fix OpenGL without NPOT. 2018-11-02 15:25:32 -05:00
Brandon Wright 43c61d1c77 GTK+: Get rid of # in joystick binding name.
Rename a couple bindings.
2018-11-01 21:11:39 -05:00
Brandon Wright 0c3bc1d350 GTK+: Remove XML config format. 2018-11-01 21:11:39 -05:00
Brandon Wright b590115594 GTK+, libretro: Don't clip between fields. 2018-11-01 17:14:38 -05:00
Brandon Wright e665f339f0 GTK+: Human-readable bindings in config file. 2018-10-30 19:26:01 -05:00
Brandon Wright d3115c87d6 GTK+: OpenGL+: Check context size on expose.
Also, fix splash drawing on Wayland/OpenGL.
2018-10-29 16:41:41 -05:00
Brandon Wright a3ecddc0bc GTK+: Never let GTK+ paint the output window. 2018-10-29 16:14:40 -05:00
Brandon Wright 6d0eddf02a GTK+: Don't pass draw signal on OpenGL/Wayland.
Also, don't pass draw signal on to GTK+, period.
2018-10-29 16:02:45 -05:00
Brandon Wright 4af57d8d98 GTK+: Disable sound sync by default. 2018-10-28 19:46:08 -05:00
Brandon Wright 79b1ab0250 GTK+: Clean up speed throttling.
No more frameskip selection, only 4 options:

* Timer throttling to Settings.FrameRate
* Same, but skips frames when late
* Wait on sound buffer
* Don't throttle.

Dynamic rate control is automatically disabled for option 3.
2018-10-28 16:55:33 -05:00
Brandon Wright 7dcf6a0ce4 GTK+: Turn context structs into classes.
Remove placeholder "#pragma once" uses.
2018-10-28 11:29:51 -05:00
Brandon Wright c4412fa77b GTK+: Use a GLSL 1.10 shader for OpenGL < 3.0. 2018-10-28 11:22:00 -05:00
Brandon Wright f1b508de1c GTK+: Faster cairo software output path. 2018-10-27 19:07:49 -05:00
Brandon Wright 09498e72e0 GTK+: Modernize OpenGL code.
Requires OpenGL 2.0 or above. Everything is core-compatible now.
2018-10-27 18:13:51 -05:00
Brandon Wright 8c8e04fec2 Remove support for old-style XML shaders. 2018-10-27 16:16:41 -05:00
Brandon Wright aa2db4c186 Remove excess styling. 2018-10-27 16:06:16 -05:00
Brandon Wright 0ce6970cd6 GTK+: Force OpenGL 2.0 compatibility. 2018-10-27 15:56:22 -05:00
Brandon Wright 94c2c4c460 Remove 24-bit PBO format. It's actually useless. 2018-10-27 15:33:55 -05:00
Brandon Wright dc3dd8e709 Support context creation on GLX 1.3. 2018-10-27 15:12:21 -05:00
Brandon Wright 752da257b8 Remove reconfigure method. 2018-10-26 19:14:25 -05:00
Brandon Wright d58c37c4da Be conservative with OpenGL version for now. 2018-10-26 18:54:28 -05:00
Brandon Wright f9b553638f Make OpenGL context management separate. 2018-10-26 18:22:51 -05:00
Brandon Wright b35d8d9ae5 Rename Wayland helpers to Wayland egl context. 2018-10-26 15:49:56 -05:00
Brandon Wright 84b9d5acaa Fix compilation with GTK2. 2018-10-26 15:46:55 -05:00
Brandon Wright e2640286b7 Clean overscan area when turning off extended. 2018-10-24 16:05:44 -05:00
Brandon Wright ad373237e4 GTK: No, the other way. 2018-10-24 15:45:01 -05:00
Brandon Wright 94ec890ac6 GTK: Move centered 224/239 to y=8 instead of y=7. 2018-10-24 15:41:24 -05:00
Brandon Wright a0931d6058 More XRandR not to compile if not X11. 2018-10-22 15:08:11 -05:00
Brandon Wright 1b6690b1fe Invalidate on init to reset GTK spacing. 2018-10-22 15:06:12 -05:00
Brandon Wright a48cbf72da Set output window size. 2018-10-22 14:53:12 -05:00
Brandon Wright 32633bd664 Request compositor protocol v3. Set buffer scale. 2018-10-22 14:36:52 -05:00
Brandon Wright 85608d9384 NULL out region 2018-10-21 18:49:13 -05:00
Brandon Wright 35cdf9c182 Add wayland helper files. 2018-10-21 18:03:35 -05:00
Brandon Wright daec5ccc57 Better Wayland OpenGL.
Still breaks with scale factors.
2018-10-21 17:05:37 -05:00
Brandon Wright 5b76a2b6c7 EGL X11 leaks badly. Revert Wayland/GL stuff ATM. 2018-10-20 16:47:43 -05:00
Brandon Wright 434c943a0b Pass input through subsurface. 2018-10-18 18:08:01 -05:00
Brandon Wright f9f7be1f6f Use a flush instead of commit. 2018-10-18 18:00:27 -05:00
Brandon Wright ae01dbb92c Fix fullscreen in Wayland/GL. 2018-10-18 17:53:07 -05:00
Brandon Wright e70675db98 Basic OpenGL on Wayland. Fullscreen is broken. 2018-10-18 17:47:39 -05:00
Brandon Wright a47e9773d6 Software Wayland mostly works. 2018-10-16 17:26:24 -05:00
Brandon Wright 02ce1fcb35 Better driver failure behavior. 2018-10-15 14:54:36 -05:00
Brandon Wright 34268314c4 Conditional set_bypass_compositor. 2018-10-15 14:31:42 -05:00
Brandon Wright 3829408d3d Allow XV only in GTK/X11. 2018-10-15 14:25:26 -05:00
Rémi Calixte 5e4f12a12b wayland: fix fullscreen mode 2018-10-15 14:20:13 -05:00
Rémi Calixte 58f6099730 wayland: handle screensaver 2018-10-15 14:19:51 -05:00
Rémi Calixte 549e98e5e7 wayland: make xrandr query conditional 2018-10-15 14:19:22 -05:00
Brandon Wright 62f3761aa6 Remove 'else', fix formatting. 2018-10-15 14:18:21 -05:00
Rémi Calixte e7f4bd63fa wayland: implement Snes9xWindow::get_refresh_rate 2018-10-15 14:16:40 -05:00
Rémi Calixte c6731024ca wayland: include X11 libraries only if it is an available GDK backend 2018-10-15 14:15:52 -05:00
Brandon Wright 55723df0a6 GTK: Add EGL WSI for OpenGL. 2018-10-15 14:04:28 -05:00
Brandon Wright daee29865f win32: add InitialSnapshotFilename support. 2018-10-03 17:06:41 -05:00
Brandon Wright 602919d522 GTK+: Don't override command-line port choice. 2018-10-03 16:58:40 -05:00
Brandon Wright 8db667fe13 Don't black out screen when no data in savestate. 2018-08-16 11:01:39 -05:00
Brandon Wright 0b75e2de9d GTK+: Add dangerous hacks. 2018-08-14 17:33:03 -05:00
Brandon Wright 37f6259f06 Fix Chrono Trigger bug where screen jumps. 2018-08-06 12:54:38 -05:00
Brandon Wright 6d15bf7d94 Make interpolation config a little cleaner.
Add config file option to all ports.
2018-08-06 12:31:07 -05:00
Brandon Wright a1b9a89718 GTK+: Update interlaced drawing.
Apply vsync on resize.
2018-08-05 17:03:36 -05:00
orbea 1a9a30ac93 gtk: Use datarootdir instead of datadir. 2018-07-28 16:33:23 -07:00
Brandon Wright d5eeda8bbc Fix with_system_zip variable name. 2018-07-28 17:58:33 -05:00
Brandon Wright 2de55719de Check for NULL Display. 2018-07-12 10:15:37 -05:00
Brandon Wright 95ee47ac06 Use port commands for quickload to allow undo. 2018-06-21 14:23:43 -05:00