SuuperW
84e8057682
Resize the window when changing the screen gap.
2018-07-18 12:20:03 -05:00
SuuperW
a4411086e0
Fix issue with resizing the window vertically.
2018-07-18 12:19:33 -05:00
SuuperW
842ed1b93c
Put HUD drawing back to before applying the video filter.
2018-07-18 10:09:59 -05:00
SuuperW
77c0b6e702
Fix bug where OpenGL HUD would be stretched with 90 or 270 degree rotation. (regression from commit 6fc7161
)
2018-07-18 01:58:56 -05:00
SuuperW
15957ba792
Remove use of backlight intensity when using DirectDraw. (previously removed it with OpenGL in commit 6fc7161
)
2018-07-17 11:40:05 -05:00
SuuperW
60aedec5d2
Scale HUD when using DirectDraw. (fix regression from commit 5906d44
)
2018-07-17 11:38:59 -05:00
SuuperW
6fc7161f19
Rework HUD rendering with OpenGL.
...
-Fixes regression from commit 5906d44
where HUD would appear smaller when using HD scaling. (only fixed with OpenGL for now)
-Remove use of backlightIntensity for displaying. Fixes bug where screen would appear dark on the first frame after loading a save state. Underlying cause should probably still be fixed, though. (Why would the backlight level affect the display anyway? That setting on the DS is only present because it has its own physical screens and makes no sense here.)
2018-07-12 11:23:23 -05:00
SuuperW
dc41f09189
some code cleanup; fix crash on changing to 15 bpp from a higher bpp
2018-07-09 11:41:46 -05:00
SuuperW
b95f58826e
Fix ordering of fonts
2018-07-08 11:28:29 -05:00
SuuperW
5496c8e024
Remove the now unused firstTime parameter of DoDisplay.
2018-07-06 11:45:38 -05:00
SuuperW
5906d44c2d
On Windows, draw HUD before the filter to avoid having to scale it separately. (significant performance boost when using a filter)
2018-07-06 11:45:07 -05:00
SuuperW
e4d5da97c0
Add prefilterWidth/Height
2018-07-06 11:44:11 -05:00
retr0s4ge
7548294333
1- Apply WiFi-ONLY related fixes from desmume-reloaded project by Jackobo Le Chocobo to desmume project (code base 22/06/2018).
...
2-Add required include and define statement to aviout.h to fix build error.
(cherry picked from commit 470e54e361
)
2018-06-29 09:31:30 +02:00
zeromus
bd63ff1bd1
Merge pull request #148 from SuuperW/master
...
Do not allow skipping display frames (except in extreme lag).
2018-06-28 12:50:47 -04:00
SuuperW
ee8fdebcf1
Do not allow skipping display frames (except in extreme lag), so that the user sees every emulated frame and the HUD updates every frame.
2018-06-28 11:34:38 -05:00
Ingo Saitz
0e86cf128d
Call XInitThreads() in posix frontend
...
XInitThreads() is needed in multi-threading X applications when multiple
threads try to access the Xlib. Add the call to the three frontends in
posix/ and add the required autoconf-stuff, too.
2018-06-27 14:41:02 -05:00
zeromus
23f4dcc009
Merge pull request #147 from SuuperW/master
...
Reduce RAM usage
2018-06-27 12:59:03 -04:00
SuuperW
a8fa8a44d6
Do not reset buffers when calling SetPrescale with the current scaling values.
2018-06-27 11:27:05 -05:00
SuuperW
35a2ca9721
Redraw display after changing video filter. (Regression from commit 8622a33.)
2018-06-27 11:25:48 -05:00
SuuperW
8622a334a2
Rework buffer size allocations to only allocate as much space as is actually required.
2018-06-27 11:23:36 -05:00
zeromus
0f4b3ead00
replace SMLAL_BB and friends with more clear logic that hopefully isnt bugged
...
but I couldnt find a game exercising it, so I dont know whether it's correct.
should fix #139
2018-06-15 17:48:28 -04:00
zeromus
022d24b5c2
gfx3d - savestate `renderState` along with `state`
...
there's really nothing more to it than this. it should have been done from the beginning.
you wouldn't notice this unless you had a game that stopped rendering 3d, though.
(re #141 )
2018-05-25 11:39:58 -04:00
rogerman
932cdd6366
Cocoa Port:
...
- Do a bunch of code refactoring and cleanup.
- Add some new UI for an upcoming new feature.
2018-05-17 21:22:51 -07:00
rogerman
c024a78a43
GPU / SoftRasterizer: Fix a build issue for Altivec-enabled code. (Related to commits c41a006
and 43d3883.)
2018-05-17 20:06:31 -07:00
zeromus
9c128460c4
winport - make it so you can only open one of each disassembler views at a time (reportedly theyre crashy if theres more than one of them open.. seems likely to be the case for any of our tool windows)
2018-04-18 13:14:01 -05:00
zeromus
deffcaa075
added /LARGEADDRESSAWARE so we can get more than 6x or 7x scaling in 32bit builds
2018-04-12 21:48:22 -05:00
rogerman
24d941d02e
Colorspace Handler: Fix some bugs in AVX2. (Regression from commit 858b05d
. Fixes #131.)
2018-03-11 14:13:26 -07:00
rogerman
ab3c221bf6
Windows Port: In Sound Settings, under the Interpolation menu, remove the obsolete performance notes, as these options do not actually affect performance. Instead, provide a better description of the effects caused by these options as experienced by the end-user.
2018-03-05 12:06:10 -08:00
rogerman
92924db136
Windows Port: Related to commit 8d011f8
-- check the flag first to try to avoid the more expensive system calls.
2018-03-04 17:39:27 -08:00
rogerman
42c0379cbb
OpenGL Renderer: Fix one more possible crash that may occur if the 3D framebuffer is read before the 3D renderer has a chance to render at least once. (Related to commit f8bbbec.)
2018-03-04 17:20:21 -08:00
rogerman
8d011f8344
Windows Port: Optimize input handling, reducing CPU usage when the emulator is idle. (Related to commit 8fb0d6d.)
2018-03-04 17:17:26 -08:00
rogerman
8fb0d6ddc5
Windows Port: Reduce CPU usage while the emulator is idle.
2018-03-03 20:41:23 -08:00
rogerman
e825cddbe5
Windows Port: Fix a rare and intermittent bug that could cause the AVI recording to accidentally stop in between AVI segments. (Regression from commit db1a19a.)
2018-03-02 15:59:37 -08:00
rogerman
b8c006b0b5
Windows Port: Do some minor code cleanup related to commit 8763a61
.
2018-03-02 14:00:52 -08:00
rogerman
8763a6169a
Windows Port: AVI recording now maintains many more frames in memory. Also, the framebuffer color conversion threads and file writing thread are more free running threads.
...
- These changes help to stabilize the performance of AVI recording, making it less sensitive to sudden changes in disk writing speed.
- The maximum amount of frames maintained in memory will either be 1.5 GB worth or 180 frames (or 3 seconds) worth, whichever is less.
2018-03-02 13:09:39 -08:00
rogerman
db1a19ad86
Windows Port: Do a complete code cleanup and refactor of aviout.cpp to use proper C++ objects.
...
- aviout.cpp now uses Windows-style line-endings instead of Unix-style line-endings.
- AVI segments now fill up much closer to the 2 GB file limit than before.
- Error handling in the file writing thread is much more robust.
2018-03-01 08:47:24 -08:00
rogerman
cbe4717d2f
Windows Port: When recording AVIs, video framebuffer conversions and file write operations are performed asynchronously with the main thread. This should greatly increase AVI recording performance.
2018-02-25 16:00:31 -08:00
rogerman
c7ca122d95
Windows Port: Fix building on Windows. (Regression from commit c7bb41e.)
2018-02-19 12:46:41 -08:00
rogerman
c7bb41e4b1
matrix.cpp: Rework all matrix function parameters for explicit array sizing in order to aid compiler optimization and (hopefully) aid in code readability. Also add SSE4.1 versions for the main matrix functions.
2018-02-19 11:43:55 -08:00
rogerman
5a61a08727
matrix.cpp: Do some more code cleanup.
2018-02-16 20:11:36 -08:00
rogerman
249afccfca
matrix.cpp: Do a bunch of code cleanup.
2018-02-16 11:59:19 -08:00
rogerman
c41a006b2a
GPU: Add additional basic SIMD-accelerated functions for memset_u16(), memset_u16_fast(), memset_u32(), and memset_u32_fast() for AVX2 and Altivec.
2018-02-13 14:45:17 -08:00
rogerman
5fbaa53b46
GPU: If a custom-sized layer is to be rendered first, GPUEngineBase::_TransitionLineNativeToCustom() will do a line clear instead of an upscaled line copy.
...
- Since this is a very common occurrence in many games, and since doing a clear is faster than doing an upscaled copy, this should give a small performance improvement for the larger framebuffer sizes.
2018-02-13 13:54:10 -08:00
rogerman
43d3883986
SoftRasterizer: Framebuffer clears are now accelerated using AVX2 and Altivec.
2018-02-12 18:03:52 -08:00
rogerman
ab18de05ef
SoftRasterizer: Oops! Fix a performance regression in SoftRasterizerRenderer_SSE2::ClearUsingValues() where the framebuffer was accidentally being cleared twice. (Regression from commit 7509d46.)
2018-02-12 13:42:42 -08:00
rogerman
7509d469b9
SoftRasterizer: Do some multithreading improvements, and also clean up and refactor RasterizerUnit.
...
- Completely encapsulate all stray global variables into the SoftRasterizer class where they belong.
- Framebuffer clears are now fully multithreaded, significantly improving clearing performance.
- Doing multithreaded texture loads and vertex calculations now requires a minimum of 2 threads, down from 4 threads.
- The maximum amount of SoftRasterizer threads has been increased from 16 to 32.
2018-02-12 11:35:21 -08:00
rogerman
9e3b694ace
Cocoa Port: Do some minor code cleanup.
2018-02-05 20:29:09 -08:00
rogerman
d1dcbb8218
Cocoa Port: Fix a potential deadlock that may occur on emulation reset.
2018-02-04 13:07:59 -08:00
rogerman
9ee7cd8ec0
NDSSystem.cpp: Check for the GPU struct before calling GPUSubsystem::ForceFrameStop() in GameInfo::closeROM().
2018-02-03 21:59:00 -08:00
rogerman
23be799a67
Cocoa Port: Metal display views no longer lose visible frames when running multiple display views.
2018-02-03 21:21:54 -08:00