Commit Graph

181 Commits

Author SHA1 Message Date
zeromus f7638e8352 "fix" client.bufferwidth and client.bufferheight .... I dont understand why they were doing what they were doing. It seems like such a simple thing, just return the dimensions of the core's videoprovider. Someone should rethink all these (and the surface names, and the padding names) and craft a complete, new design. 2017-01-26 00:54:44 -06:00
zeromus 676b5791f6 lua: add gui.DrawFinish() which will let you choose when to finish drawing; and add optional argument to gui.DrawNew which when set to false lets you keep it from being cleared. 2016-04-21 16:43:37 -05:00
zeromus 3adc8f7c82 dont send 0-sized framebuffers deep into displaymanager (prevents crashes when sending fullscreen windows to other monitors sometimes, and probably other bugs) 2016-04-20 12:33:59 -05:00
zeromus 1a1a688b96 remove NeedsToPaint; client now repaints ~100fps while paused all the time. as it already did when input display was enabled. fixes #615.. probably 2016-04-20 12:17:41 -05:00
zeromus f1ea49133d fix bug in d3d alternate vsync + frame advance 2016-03-29 03:05:00 -05:00
zeromus 17cae0ad1c fix old bug in raw screenshot with game extra padding 2016-03-27 21:02:18 -05:00
zeromus e426b33017 fix new bug in game extra padding 2016-03-27 21:02:18 -05:00
zeromus 10272b4857 add alternate vsync method for d3d display method, in case youre the lucky owner of a system that sucks 2016-03-27 04:49:17 -05:00
zeromus 406b431280 add comments for later about triple buffering 2016-03-26 12:39:31 -05:00
zeromus 3deb7fcb31 add autoprescale concept. default it to on, since really I can't think of when you'd ever not want it, except in some very low-spec system scenarios. Add NOP concept to filter chain, potentially troublesome 2016-03-23 20:26:31 -05:00
zeromus 86b3ecf7b8 displaymanager: change how windows shrink to <1:1 by shrinking content instead of attempting to inversely 'letterbox' it by shoving it offscreen (fixes #579) 2016-03-04 01:59:25 -06:00
zeromus 95bc69b448 some prepwork for opengl texture ID importing (skip rendertarget resolve on OGL display method) but there are still problems and it can't be enabled yet 2016-02-22 00:23:20 -06:00
zeromus 07e93e6b4f add comments about what not to do in DisplayManager 2016-02-06 15:00:05 -06:00
zeromus e0d74c7718 better error handling in shader compiling. kind of sloppy, but gets the job done. entire system could use a little rethinking, if i ever revisit filters 2016-02-03 02:28:03 -06:00
feos 128c09e7b4 progress with lua:
- added fceux and gens/snes9x pixelated fonts
- added gui.pixelFont() function for them (no resizing, so perfectly scalable)
- added background to drawText and pixelText (halo was painfully slow, so just a box)
- reordered fore and back colors for gui.text (no need to specify back every time we want to change fore). thought its back color was shadow, that is obsoleted by halo now, whose color we can't change. anyway, it's way slower than simple text functions, so they should be used mostly.
- option to toggle all scripts if none is selected. greatly reduces routine when heavily tweaking a script, and is just generally pretty.
2015-11-28 22:19:15 +03:00
feos 1928d04137 default font now has halo.
if someone really prefers the shadow way (why would anyone?), it can be made optional. well, halo color can't be edited. regarding lua, this only affects gui.text, since it uses the same bitmap font.
2015-11-26 22:51:48 +03:00
zeromus ea45f40743 fix error in sizing of lua draw buffers with SetGameExtraPadding (and probably ClientExtraPadding) use 2015-11-13 15:07:14 -06:00
zeromus 4fe51a1364 support custom AR selection in addition to custom exact-specified resolution 2015-10-25 02:15:59 -05:00
zeromus 3919f5f5d3 support #include in .cg files 2015-10-18 21:13:12 -05:00
zeromus bd795ed162 validate shaders when selecting them from display manager config dialog to prevent setting broken shaders. also specifically reject .cgp containing .glsl references 2015-10-17 19:28:57 -05:00
zeromus c3ff70b864 fix gameExtraPadding coordinate translation and revise lua autodoc for the concerned functions. Presently the entire assortment of functions is confusing, but at least it does something that works. 2015-10-16 19:17:23 -05:00
zeromus 19b3f8b205 retro shaders no longer need sampler to be named s_p 2015-10-15 20:10:58 -05:00
zeromus 7f5546fac4 tidy some oddities with the scanline filter 2015-10-15 20:10:35 -05:00
zeromus cfe215d6c0 repair lousy assortment of built-in shaders (fixes #518) 2015-10-13 17:18:41 -05:00
zeromus 21579c1c86 lua - add client.SetClientExtraPadding 2015-10-12 20:30:09 -05:00
zeromus 787cb82e28 fix problem with client.SetGameExtraPadding distortion in >1x window scales. This logic is insanely complex, so regressions are possible. 2015-10-12 19:57:11 -05:00
adelikat 08978978d0 issue #493 - add option to not display OSD messages 2015-09-05 16:48:37 -04:00
zeromus 7e828d5618 d3d display method 2015-08-24 13:10:50 -05:00
zeromus 3f78e2e70f add feature to display config > misc tab for disabling display of screen and hud for true maximum turbo performance. also display FPS in window caption during that mode, so you can still tell what's going on 2015-08-17 23:26:19 -05:00
zeromus 0cd3a82862 psx - improve framebuffer clipping method, add deinterlacer settings, fix some PAR for PAL games; fix bugs in GameExtraPadding handling 2015-08-09 13:57:45 -05:00
adelikat 791089a06d Rerecord count OSD: don't display "Rerecords: " 2015-07-09 14:14:06 -04:00
zeromus db1191dc48 emuhawk - add experimental prescale option to display manager 2015-07-06 12:31:30 -05:00
zeromus e77c1455b3 canvas extension: ok, this works better 2015-03-23 03:43:39 +00:00
zeromus dfafee2b25 here's one way of extending the canvas. I dont think it's right. I can't test it now anyway, I'm checking it in for reference. I will probably revert it and do it another way: add a filter after the input filter but before the "emu" surface filter. 2015-03-23 03:19:06 +00:00
adelikat eccbe1ce2a MultiHawk - removing more stuff 2015-03-09 21:06:40 +00:00
adelikat 307845b3b5 Lua - recover from a locked drawing surface exception and log to the console, rather than crash the emulator 2015-01-29 02:14:39 +00:00
jdpurcell 798f882457 Redo r8309. Try a different fix for vsync not taking effect at startup. 2015-01-15 15:56:23 +00:00
jdpurcell 28f1ad1c0e Allow clock throttle to take over for audio / vsync throttles during fast forward or rewind for proper speed control. 2015-01-13 04:21:32 +00:00
hegyak 9dea7cf0b0 Hide Frame Count on Null Emulator. 2014-12-16 04:31:07 +00:00
hegyak 69473b842c Correct Issue 343 2014-12-16 03:36:38 +00:00
zeromus 979fa2c0f7 displaymanager - maybe, just maybe, successfully get rid of the need for 0xFF000000 in the VideoProvider buffers. Should enable some little speedups and cleanups of other code that had to add the 0xFF000000 alpha channel 2014-12-13 23:04:22 +00:00
zeromus ba3a6ca817 display manager: dont crash when receiving 0,0 buffer size to autosize to, even though that was probably a mistake 2014-12-12 00:39:50 +00:00
zeromus f1bd6f0086 less amount / more useful chatter when changing client dimensions 2014-12-10 19:36:16 +00:00
zeromus 08ae448257 start adding d3d9 display method, but.. it was more work than gdi+, as I expected. I'll finish it another time. 2014-12-08 02:15:42 +00:00
zeromus 556b7b0123 gdi+ display method! 2014-12-07 02:26:52 +00:00
adelikat f5cc38c9cd AsInputPollable() 2014-12-05 00:59:00 +00:00
adelikat a83d714c42 Break off IsLagFrame and LagCount from IEmulator and put into its own interface IInputPollable, and refactor cores as necessary. EmuHawk - account for the possibility that a core is not an IInputPollable, and do things like disable the lag counter menu item. Still some front end todos. Also still todo, move the InputCallbackSystem from CoreComm to IInputPollable 2014-11-30 20:29:30 +00:00
zeromus 86e24011ae address some problems with fast forward vs vsync (mostly, it not working) 2014-10-11 09:01:50 +00:00
zeromus ede78865b2 fix a bug in point transformation when using system-suggested (non-1.0 AR). Was probably breaking zapper coords when that feature was used, but unproven. Anyway, someone should test that. 2014-10-10 00:21:43 +00:00
zeromus 9b6add0e40 basic TransformPoint work 2014-10-10 00:15:15 +00:00
zeromus 7e3144fd07 support custom AR and display client size while resizing. fixes Issue #251 . 2014-09-14 00:51:30 +00:00
adelikat 0a608edd07 some renaming and cleanup of the Multitrack object 2014-08-17 15:04:23 +00:00
zeromus f46973119b add ctrl+shift+c to copy current client area as a screenshot (as opposed to the ctrl+c raw copy) so you can get scaling and filters too 2014-07-22 00:04:28 +00:00
zeromus 6f919c64a7 client sizing / AR revisions 2014-07-20 06:51:31 +00:00
adelikat 3a011ad788 Refactor to put multitrack logic into the multitrack object itself instead of in the OSD manager and hotkey logic 2014-06-29 23:13:44 +00:00
adelikat 9fd640ff4b Remove some unused code 2014-06-29 02:33:50 +00:00
adelikat ab5cfab035 remove redundant code throughout the emuhawk project 2014-06-29 02:28:48 +00:00
adelikat 721dbe8d3b Input adpaters - some reorg and add extensions for create And and Or adapters and simplify some calling code 2014-06-26 19:07:17 +00:00
adelikat f561528846 More input display fixes 2014-06-19 21:55:15 +00:00
adelikat 7f070737cc clean up some debugging code, and remove a warning 2014-06-19 21:37:28 +00:00
adelikat 031eb5a282 Some input display fixes for bk2 format 2014-06-19 21:29:57 +00:00
adelikat 19feaaa3ba Remove some more usages of IMovie.GetInput() 2014-06-19 00:37:42 +00:00
adelikat 9a16540e14 Movie 2.0 - simplify some code 2014-06-18 19:34:27 +00:00
adelikat 451049fee8 Fix some bk2 crash bugs 2014-06-18 19:18:35 +00:00
adelikat 3eff547413 Remove some more usages of GetInput() 2014-06-18 02:39:29 +00:00
adelikat fcd4a4eb65 Bk2 - basic movie playback now works. You can now record shooting ducks 2014-06-17 00:33:33 +00:00
adelikat 6b73891a91 More bk2 progress 2014-06-15 14:44:26 +00:00
adelikat c807e27496 Some movie code reorg and cleanup 2014-06-15 13:03:24 +00:00
adelikat 6ec1a45b70 Major cleanup of MnemonicsGenerator - change it to a LogEntryGenerator notion, and only expose it through a movie implementation, via an ILogEntryGenerator interface 2014-06-14 22:36:32 +00:00
zeromus b96ebaafeb dont get stuck if the user specifies a crashing retroshader 2014-06-13 01:27:26 +00:00
zeromus d2ea92d254 support filter_linear in retroshaders 2014-06-12 08:10:14 +00:00
zeromus eeff15b099 fix bug in displaymanager: sometimes emulator output source textures were getting filtered 2014-06-12 07:57:01 +00:00
adelikat a682c667dd Nuke IMovieHeader, put necessary methods into IMovie instead, and some todos on trouble spots for movie 2.0 2014-06-11 01:41:41 +00:00
adelikat bac9d90440 Fix bug in input display with read-only where the previous frame's input was showing instead of the current 2014-06-10 00:49:52 +00:00
zeromus 3ea6495031 give yabause its own GL context. gets gl+yabause minimally working. maybe still loadstate-related crashes. 2014-06-08 23:30:34 +00:00
adelikat 6b2889957a Some refactoring of movie code to make the Header less implementation specific, and start Movie2.cs which will be a Movie 2.0 implementation 2014-06-08 22:12:15 +00:00
zeromus 05c08806d1 fix bugs in resize filters support. everyone check your AR correction scenarios, please 2014-06-03 03:16:38 +00:00
zeromus f75142213b make lua surface clearing more robust 2014-06-03 03:09:43 +00:00
zeromus bb1b1ff5b5 fix av dumping with osd enabled (screenshots as well);
default av dumping extension to the dumper plugin's desired default
2014-06-02 20:16:59 +00:00
zeromus 49def8a758 fix some AR correction scenarios 2014-05-28 02:19:51 +00:00
zeromus af60a42003 fix bug 1x'ing client window size in some cores 2014-05-26 18:37:39 +00:00
zeromus 81bd846a0c finetune displaymanager sizing to eliminate sidebars from default 2x NES scenario. please check platforms you care about (a2600 mostly) to make sure they havent regressed 2014-05-23 00:50:19 +00:00
adelikat f69fd00458 Only make the Frame count Red in the frame counter display when lag (and not tne movie length and finished indicator) 2014-05-18 16:58:17 +00:00
adelikat 1306830c58 Frame Counter red when a lag frame, not sure when this got broke 2014-05-17 20:55:10 +00:00
zeromus f9477bb0f1 automatic client 1x/2x etc sizing should respect console and user AR options 2014-05-17 03:50:19 +00:00
zeromus 6b1fa399c5 fix bug where lua layers wreck AR logic 2014-05-07 01:27:41 +00:00
adelikat de53d1d810 Fix crash on input display for dual gameboy 2014-05-03 12:58:34 +00:00
zeromus 26c30c44ca improve AR integerization 2014-05-03 03:25:09 +00:00
zeromus 61c7537bfc fix issues with integerizing logic in association with system AR correction enabling 2014-05-03 02:52:35 +00:00
adelikat 18b4402e85 Slight fix to input display colors when a movie was loaded and stopped 2014-05-02 20:07:50 +00:00
zeromus d2232e616b minimal implementation of AR correction. this isn't completely satisfying. we need to run the frontend 1x/2x/etc sizing through it, and I'm feeling like we need two tiers of AR suggestion strengths.. we may want a2600 fixing AR out of the box, but NES fixing AR by default is unacceptable 2014-05-02 04:27:08 +00:00
zeromus f84ddbaa08 fix bug with lua console wrecking mainform rendering; fix clear button in lua console to actually work 2014-05-01 07:10:07 +00:00
zeromus 358b9b9328 fix vsync setting 2014-05-01 06:37:51 +00:00
adelikat c863d57113 Better color coding of input display, auto-holds show red, previous frame shows orange, restore ability to show immediate input, also fix but in autofire-autohold 2014-04-28 00:39:40 +00:00
adelikat 36c09eea0f more cleanup of osd message display 2014-04-27 18:45:21 +00:00
adelikat c4a4ca069d More cleanup on osd messages 2014-04-27 13:53:20 +00:00
adelikat 0acf6ed0d6 Some simplifying of logic for drawing frame counter, lag counter, etc 2014-04-27 13:17:35 +00:00
adelikat bbf7c43b6d Rip out the Alert font from OSD Manager since it wasn't being used for anything useful anymore, Ram Watch on screen display - show frozen addresses in a cyan color instead of red to be consistent with the rest of the system 2014-04-27 13:01:10 +00:00
zeromus ca6f993b7c workarounds for lousy intel gpus 2014-04-26 21:55:04 +00:00
zeromus 1f9cf53a76 fix a crashy bug in displaymanager when OSD layer is removed 2014-04-16 16:31:37 +00:00