Commit Graph

769 Commits

Author SHA1 Message Date
Arisotura 22f3cae067 fix potential out-of-bounds write 2019-07-13 02:54:14 +02:00
Arisotura ff27036b35 start botching the FPS limiter
results in shitty audio because it's overflowing the buffer
2019-07-12 22:04:55 +02:00
Arisotura 504ccb7044 don't allow modifier mappings in input config dialog, either 2019-07-09 18:41:44 +02:00
Arisotura 592e493a7a input: don't check modifiers for regular input 2019-07-09 18:39:50 +02:00
Arisotura 36f1e6f475 remove glBindImageTexture (4.2) 2019-06-30 16:57:30 +02:00
Arisotura 1b98a3e3a0 fix 'shift by register' operands: always only take the lower 8 bits of the register, fix handling for LSL/LSR >32
fixes #479
2019-06-27 14:05:51 +02:00
Arisotura 204b5d8700 HARK HARK HARK 2019-06-25 19:29:21 +02:00
Arisotura 4d775dcf85 fix OpenGL deinit when closing emu 2019-06-25 17:37:32 +02:00
Arisotura 1d8902c631 remove stupid hack that caused more problems than it fixed 2019-06-25 13:09:06 +02:00
Arisotura 58575f82b7 libui/windows: backport fix for #471 2019-06-25 12:29:56 +02:00
Arisotura 49b2f8d969 raise kMaxIterationCycles to 64 2019-06-25 02:05:48 +02:00
Arisotura e2dc98d144 fix bug when mapping a joystick axis control but no button 2019-06-20 16:31:28 +02:00
Arisotura f59094e033 OpenGL: disable vsync, atleast under Windows 2019-06-20 16:00:12 +02:00
Arisotura 77bf92a272 Merge branch 'master' of https://github.com/Arisotura/melonDS 2019-06-20 13:57:34 +02:00
Arisotura 6d01677a57 add 32bit writes to some IO ports. fixes #313 2019-06-20 13:57:14 +02:00
RSDuck dac9ccc577 fix OGL renderer not working at all on some GPUs 2019-06-17 13:14:52 +02:00
StapleButter c4182b5ad3 BAHAHHAHAHAHH 2019-06-12 14:03:06 +02:00
Arisotura 34c60eaca4 fix bugs with line polygons 2019-06-12 13:14:11 +02:00
Arisotura 886bf6bc10 prevent loading savestates that are too recent 2019-06-12 12:49:52 +02:00
Arisotura 27f758d353 hack so that the GL renderer can render lines 2019-06-12 03:55:40 +02:00
Arisotura 4553da720c add setting for showing/hiding OSD 2019-06-12 03:32:25 +02:00
Arisotura ea5dc39e83 cheapass fix for texture positions, atleast effective at 1xIR 2019-06-12 02:55:38 +02:00
Arisotura a3fed77da3 somewhat better edge marking 2019-06-12 02:23:40 +02:00
Arisotura 711fda469e stop fast-forward hotkeys from getting lost every damn time 2019-06-12 01:39:12 +02:00
Arisotura 4abf0473c2 add pause/reset hotkeys 2019-06-12 01:12:49 +02:00
Arisotura 1cb8f3c8b2 rework input/hotkey code to suck less, implement the new features 2019-06-12 00:59:51 +02:00
Arisotura 82f4f4fdcb fix bugs, make it more responsive 2019-06-11 23:48:49 +02:00
Arisotura bfc12a038e add ability to map joystick axes, too
and add support for multiple hats
2019-06-11 23:41:48 +02:00
Arisotura 1ea25ac6f1 add ability to map keys with modifiers, only in config UI for now 2019-06-11 23:16:15 +02:00
Arisotura 4447e010d7 actually save the current joystick ID 2019-06-11 18:57:22 +02:00
Arisotura b9183b8818 begin work on multiple joystick support 2019-06-11 18:55:04 +02:00
Arisotura 543a40c7cb add some OSD messages. prepare shit. 2019-06-11 04:04:49 +02:00
Arisotura 3c70015da7 software renderer: fix rendering of line polygons. fixes #350 2019-06-11 03:10:32 +02:00
Arisotura 09cfdc6e76 pft 2019-06-10 18:24:38 +02:00
Arisotura fd28391160 fix ass-stupid bug in CP15 PU region setup 2019-06-10 15:29:40 +02:00
Arisotura d28035674a GPU2D: hardware renders sprites one scanline in advance.
fixes #375 (midframe OAM update)
2019-06-10 03:05:26 +02:00
Arisotura 9ab331c6dd fix more stupid shit. askzjkdsf 2019-06-09 20:44:35 +02:00
Arisotura c056dfe509 fix fog alpha 2019-06-09 19:53:28 +02:00
Arisotura 086354a420 miserable, feeble little attempt at edge marking 2019-06-09 19:32:02 +02:00
Arisotura 434a3007e2 fasterer BG/OBJ VRAM reads 2019-06-09 16:06:01 +02:00
Arisotura 00a5576492 fasterer IRQ check. clean up code. 2019-06-08 22:16:51 +02:00
Arisotura 8fc30d69c5 fix last bugs when changing video settings with no game loaded 2019-06-08 13:06:36 +02:00
Arisotura bc53ff35a9 this is the same thing, but, for the sake of consistency 2019-06-08 12:39:52 +02:00
Arisotura eaaf5ec93b also, don't hardcode the timer interval in the callback 2019-06-04 16:19:49 +02:00
Arisotura 86b4cbcb03 when closing an input config dialog, remove SDL timer if needed
fixes #429
2019-06-04 16:17:30 +02:00
Arisotura c8472a67c1 make capitalization consistent 2019-06-04 15:56:09 +02:00
Arisotura 97f4b5f70b
Merge branch 'master' into fast-forward-hotkey 2019-06-04 15:53:08 +02:00
Arisotura 3134c8fc66 add support for setting key mappings to none 2019-06-04 15:44:40 +02:00
Arisotura e3dc4e122a use OSD for some actual purposes 2019-06-03 17:01:53 +02:00
Arisotura 2b3ca2089f take the OSD shito somewhere 2019-06-03 16:45:55 +02:00
Arisotura 4a4415fc2e more work on OSD 2019-06-03 15:00:49 +02:00
Arisotura 43e3e53afc fix some shito 2019-06-02 21:45:36 +02:00
Arisotura 5487a4e71c fix bugs when changing 3D renderer with no game loaded 2019-06-02 15:22:37 +02:00
Arisotura 6de19645f8 fix potential crash when running the software renderer (oops) 2019-06-02 14:57:59 +02:00
Arisotura 3aa971403b lay base for OSD 2019-06-02 14:33:20 +02:00
Arisotura 78208a9728 OpenGL: fix cases of layers/sprites blending over the 3D layer 2019-06-01 03:39:35 +02:00
Arisotura 27d21e06df use regular slash instead of backslash in config file name. fixes #413 2019-06-01 02:54:38 +02:00
Arisotura 06e08b053f do binding of VS inputs and FS outputs before linking shader programs, as per OpenGL standard.
should fix the rendering issues with strict drivers (AMD, Intel).
2019-05-31 02:26:13 +02:00
StapleButter 6f5e45ef2c also, properly delete glarea framebuffers on exit 2019-05-30 23:16:56 +02:00
StapleButter b9529e8361 Linux: fix uiGLGetProcAddress() 2019-06-01 00:27:54 +02:00
Arisotura 5d5e8ceced BAHAHAHAHAHHAHHHHH-~*+ 2019-05-31 21:57:11 +02:00
Arisotura f6814e02c0 * add needed libui functions under Windows, even if they don't do a whole lot
* fix ass-stupid fog bug
2019-05-31 21:37:30 +02:00
StapleButter 65ccf2a717 blarg 2019-05-31 19:29:48 +02:00
StapleButter 1a3314f0bd GL: don't draw the screens when nothing is running 2019-05-31 12:25:16 +02:00
StapleButter 464b116916 fix the whole mutex shito
fixes potential crash when resizing window
2019-05-31 04:15:37 +02:00
StapleButter d8d7ba9251 fix potential crash when switching video output methods 2019-05-31 03:18:09 +02:00
StapleButter c49dec1acd try to fix fog consecutively to the Intel fix. still not perfect for whatever reason
also clean up more code
2019-05-31 03:00:53 +02:00
StapleButter 3ef00f8fa6 attempt at fixing THE FLICKERING without making everything shitty. also, clean up code 2019-05-31 02:21:41 +02:00
StapleButter 27d451d07a clean up code, attempt at shit 2019-05-31 01:46:47 +02:00
StapleButter ea669190aa fix crash when using -O3.
gcc will try to optimize the memfill with MMX opcodes, but those seem to crash if the memory isn't aligned to a 8-byte boundary.
2019-05-30 18:05:52 +02:00
StapleButter ce9d728fb6 fix cleanup of libui objects when closing melonDS
fixes to Cmake shito
attempt shit
2019-05-30 17:29:41 +02:00
StapleButter ee61b97ec9 OpenGL renderer: fix for Intel driver (doesn't like RGB8UI framebuffers) 2019-05-30 02:44:49 +02:00
StapleButter 891ab9fd3c Linux: start getting somewhere with the whole OpenGL shito 2019-05-28 19:48:59 +02:00
PoroCYon ebad773a38 apply tgsm's changes (see PR #411 ) 2019-05-26 00:50:27 +02:00
PoroCYon 38f61a24fc 'port' libui GL stuff to Linux
Only implemented the functions needed by melonDS, and only tested using
a very recent mesa+libglvnd+nouveau. Will most likely bork using
proprietary nvidia or old(er) drivers (see gl.c)
2019-05-26 00:38:24 +02:00
PoroCYon 31e0f15797 fix oudated CMake compile settings, add OpenGL dependency for Linux 2019-05-26 00:37:51 +02:00
StapleButter 99dbbb0b04 gfghfshdf 2019-05-25 22:23:43 +02:00
Arisotura dd14a3e88e for config dialogs that reflect changes instantly, make behavior of window close button consistent with that of Cancel button 2019-05-25 21:03:39 +02:00
Arisotura eb6fe823f8 close any opened dialogs when closing the main window 2019-05-25 20:58:32 +02:00
Arisotura af581513fb * remove old 'threaded 3D' setting from emu settings dialog
* remove 'antialiasing' for now
2019-05-25 20:51:26 +02:00
Arisotura 94f5ecb647 Merge branch 'blackmagic'
BAHAHAHHAHAHAHAAHAHAHAHHH

HARK HARK HARK HARK HA-*~
2019-05-25 20:42:27 +02:00
Arisotura 9ed1dda9ca fix possible crash 2019-05-25 19:52:56 +02:00
Arisotura 956c2c5d86 finalize the GL/software switch 2019-05-25 19:47:19 +02:00
Arisotura 70a3243714 simpler GPU-compositing. will make it easier to grab neighbor 2D/3D pixels individually for filtering. 2019-05-25 19:36:47 +02:00
Arisotura 8c93a45574 also support alpha-only fog 2019-05-25 13:45:00 +02:00
Arisotura 478ca019da implement fog correctly
also some base work for edgemarking
2019-05-25 13:43:06 +02:00
Arisotura 7cdeb7fa4e feeble, miserable little attempt at emulating fog 2019-05-25 04:28:00 +02:00
Arisotura 04f1809dd1 finish fixing shadows 2019-05-25 02:34:14 +02:00
Arisotura 182e123598 fix shadow bugs
bahaahah
2019-05-25 01:55:44 +02:00
Arisotura 8a63c76f4f of course
I'm a complete and absolute fucking idiot
2019-05-24 02:41:24 +02:00
Arisotura 9e2f47f4a0 fix more bugs 2019-05-24 02:35:25 +02:00
Arisotura 0bb3321262 getting somewhere?? 2019-05-24 02:29:16 +02:00
Arisotura 79ea104931 properly recreate window based on changes to either video output method or 3D renderer 2019-05-24 02:12:46 +02:00
Arisotura 667dee6754 more code botching
it's less shitty tho

but still has bugs
2019-05-24 02:04:41 +02:00
Arisotura e5236f0cde add API for getting/setting window size
bahahahaaa
2019-05-23 22:50:46 +02:00
Arisotura 3915b8cb4e botch the code 2019-05-23 22:41:21 +02:00
Arisotura db396e992b welp.
progress
2019-05-21 22:28:46 +02:00
Arisotura c835b24f07 modify libui GL support so that it will be compatible with GTK 2019-05-21 14:53:22 +02:00
Arisotura 139c2d24ec burp 2019-05-20 22:24:11 +02:00
Arisotura b493c24128 remove reference to GL version 4.3 from filenames and namespaces 2019-05-20 00:05:37 +02:00