542 Commits

Author SHA1 Message Date
sinamas
881138560f save state selection
save state osd preview snapshots
fix a few potential security holes when loading invalid state
get rid of some undefined behaviour in statesaver
always draw in rgb32, color convert afterwards, too bad for maemo/16-bit
depth users
get rid of silly c string stuff


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@142 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-05-05 01:07:25 +00:00
sinamas
91baf38ddf don't build xf86vidmodetoggler by default
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@141 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-04-06 05:46:53 +00:00
sinamas
81fdc1e2bb - add direct3d9 blitter with support for vsync, bf,
page flipping, triple buffering, device selection,
  multi-head etc. d3d9.dll loaded at runtime
- more strict and thorough exclusive mode handling to support d3d fullscreen
- work around file open dialog not returning focus properly
- gditoggler: use current registry settings for return modes
- directsoundengine: set DSBCAPS_GETCURRENTPOSITION2 flag
- revert bad macx return from fullscreen on menu-toggle


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@140 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-25 23:59:42 +00:00
sinamas
37161f3599 directsoundengine: add device selection.
directdrawblitter: only list devices if there are more than 2 devices (including primary)
directdrawblitter: use private static member rather than global friend enumeration callback
capitalization changes


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@139 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-19 14:23:01 +00:00
sinamas
cdf2af953a Add directdraw device selection.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@138 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-19 13:08:34 +00:00
sinamas
e3f8f0cba7 gditoggler: add multi-monitor support (win32)
videodialog: save actual hz values for real this time
quartztoggler: avoid potentially reverting to the wrong mode on double setFullMode(false) in multi-head configs
make sure window is within screen after mode change, so Qt doesn't reset it to the primary screen
revert to previous win32 fullscreen geometry correction behaviour so that the geometry gets properly reset after fullscreen



git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@137 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-19 00:15:56 +00:00
sinamas
957e6615c9 fix silly initstate ifreg regression
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@136 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-18 10:25:23 +00:00
sinamas
83b4aaf1e6 refactor Blitterwidget::sync
directdrawblitter: remove unecessary turbo conditions


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@135 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-17 20:34:54 +00:00
sinamas
a639d756f5 fix win32 compilation
refix win32 fullscreen geometry correction
neater win32 BlitterWidget::sync
avoid misleading minimize on fullscreen close


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@134 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-17 15:28:21 +00:00
sinamas
ae33ac33e5 - macx fixed/variable window size change issue fixed
- macx opengl drawbuffer change issues worked around
- add openal engine, default on macx
- add macx quartz video mode toggler
- multi-head infrastructure
- support multiple monitors in macx quartz toggler
- more work-arounds for Qt failing to set correct geometry on video mode changes.
- more explicit fast-forward button handling, to avoid missed key press/release events on macx
- opengl doublebuffer preblitting, try to make actual screen updates as close to right after sync wait is over as possible
- add xf86vidmode toggler (xrandrtoggler is default)
- x11blitter: check for other supported visuals if the default is unsupported.
- temporarily return to original video mode and minimize on full screen alt-tab (except on macx or if there are multiple screens), switch back on focus-in
- hide mouse cursor after move timeout, or key/joystick pressed (more sane on macx)
- exit fullscreen rather than toggle menubar on macx (note that the menubar will automatically pop-up on macx full screen if the mouse is moved to the top of the primary screen)
- add (independent) pause counter for non-client pauses.
- reset X11 screen saver on joystick activity
- change "turbo"-mode to temporarily set frametime as a way of avoiding vsync issues (for a laugh, check out the video dialog while in fast-forward mode and see "Sync to vertical blank in 65535 and 131070 Hz modes").


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@133 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-15 06:29:29 +00:00
sinamas
4f4eca0f0c less bloated
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@132 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-05 18:38:41 +00:00
sinamas
5c67ae2bc0 exclude iostream
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@131 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-05 14:37:05 +00:00
sinamas
279b71edf3 center linear weighing bias
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@130 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-05 14:34:39 +00:00
sinamas
12aa59020f save savedata before loading state
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@129 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-04 06:07:32 +00:00
sinamas
5b67580b0c remove forgotten static qualifiers
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@128 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-03 12:05:59 +00:00
sinamas
8e861b603a add unrestricted fast bilinear and nearest neighbor sw scaling to x11/qpainter blitter
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@127 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-03 12:01:59 +00:00
sinamas
6c6cf96f81 save state infrastructure,
clean up video timing code,
use save state for initialization and reset,
do color conversion outside filters, fast rgb32ToUyvy,
add overlooked oamdma event,
adjust subcycle irq timing (shouldn't affect anything),
various refactoring


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@126 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-03-03 11:59:46 +00:00
sinamas
e0a9a25623 fix blittercontainer incorrectly using minimumSize for integer scaling
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@125 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-02-16 02:16:21 +00:00
sinamas
aea92e4d6b fix 24-bit depth non-shm ximage creation
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@124 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-02-15 01:36:56 +00:00
sinamas
5551605e04 clarify that "samples" refers to stereo samples
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@123 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-02-12 21:24:46 +00:00
sinamas
d14b943b27 add sampleRate info to MediaSource::setSampleBuffer.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@122 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-02-12 20:58:51 +00:00
sinamas
2bddacb1c3 improved ALSA buffer reporting last update, changed some whitespace this update to get it logged.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@121 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-02-12 13:02:34 +00:00
sinamas
bcae9f7213 Decouple Qt GUI from gambatte.
Lots of cleanups, flexibility added, setting of various properties, frame time,
aspect ratio, button events, video sources, sample rates, pauseOnDialogExec, custom menus etc.
Document some interfaces.
Support for setting approximate sound buffer latency.
Use rational math for 100% exact timers (even though the actual system timers are unlikely to be accurate).
Add fast-forward to input settings.
Scalebuffer dstpitch aware.
timeGetTime() fallback for win32
Store full screen mode values/text rather than less reliable indexes.
Repaint on xvblitter port changes to avoid color key not getting repainted.
stuff I forgot


git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@120 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-02-12 12:59:18 +00:00
sinamas
e3d69acf23 preoffset mem pointers. get rid of unused memory.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@119 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-31 11:36:04 +00:00
sinamas
a05aa50c68 various oamdma accuracy. oamdma bus conflicts with cpu, ppu, cgbdma. rewritten memory read/write methods. accurate timing of ppu sprite mapping reads. fix recent cgb sprite cycles sorting slip up.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@118 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-31 07:43:54 +00:00
sinamas
dde80f8d6d more oamdma tests
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@117 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-20 23:57:16 +00:00
sinamas
cdb8eb4e3d add hwtests for oam dma, m3 cycles wo bg
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@116 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-16 20:44:38 +00:00
sinamas
c287f73ec9 0xFEA0-0xFEFF not writable when OAM isn't. unusable ioram bits fixes. dmg ioram startup state fixes.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@115 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-10 04:47:59 +00:00
sinamas
42f490721f cgb dma from various areas results in 0xFF being written.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@114 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-09 01:08:46 +00:00
sinamas
6eb9761b10 wx affects sprite m3 cycles. cache m3 cycles, related refactoring. readjust cgb dma cycles to previously changed m3 timing. clean up goofy lyc calculation.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@113 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2008-01-08 05:02:29 +00:00
sinamas
630e0e6c3a int width deps. Gambatte namespace
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@112 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-12-25 19:32:18 +00:00
sinamas
1943a07254 more type width dependency fixes
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@111 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-28 16:57:26 +00:00
sinamas
d515059073 less int > 16-bits assumptions
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@110 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-27 05:01:13 +00:00
sinamas
a381fc4551 hopefully fix opengl clearing issues
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@109 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-18 16:44:45 +00:00
sinamas
c4139c1153 macx build fixes
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@108 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-18 15:25:24 +00:00
sinamas
142db80a37 Fix fixed window size issues with various window managers (metacity, xfwm4...)
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@107 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-18 15:15:41 +00:00
sinamas
c79b4b4875 fix broken volume on/off event notification
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@106 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-18 13:10:36 +00:00
sinamas
103520f934 do sprite sorting and cycle calculations pr line as needed instead of all at once
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@105 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-17 23:31:39 +00:00
sinamas
b2a10dc275 Skip potential high frequency events when they don't matter.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@104 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-16 22:15:46 +00:00
sinamas
63a416449c more likely to build on mac os x
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@103 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-12 03:03:30 +00:00
sinamas
2a3d61c539 slightly faster sprite mapping
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@102 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-10 05:22:12 +00:00
sinamas
a583fe1413 less fixed-width type dependencies. don't assume unsigned int > 16 bits
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@101 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-11-10 05:19:42 +00:00
sinamas
0eff1ebf58 saner placement of fill_buffer function
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@100 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-27 08:23:38 +00:00
sinamas
2a88f2e4c5 less retarded indenting
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@99 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-27 08:19:57 +00:00
sinamas
1434744b5b actually enable POV-hat events.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@98 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-26 20:26:33 +00:00
sinamas
fc7b1f3daa add changelog entry for 0.3.0
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@97 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-26 10:55:48 +00:00
sinamas
8bfdce90cd Add global buffer option
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@96 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-25 13:24:32 +00:00
sinamas
3fe3972702 avoid signed conversion warning
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@95 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-25 13:24:08 +00:00
sinamas
8b57e80a67 update documentation
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@94 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-25 11:57:46 +00:00
sinamas
0c98dea2a3 Add support for DMG palette customization.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@93 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2007-10-25 08:04:24 +00:00