232 Commits

Author SHA1 Message Date
sinamas
013e8f7c59 gambatte_qt/framework/samplebuffer: ensure 32-bit alignment
in practice this should already be fine, but it's nice to comply with
c++98 which only guarantees alignment beyond the type allocated for char
arrays. just use quint32 here.
2013-03-29 13:18:56 +01:00
sinamas
f5e4f6c7ac gambatte_qt: non-framework code formatting/readability/consistency 2013-03-28 22:01:41 +01:00
sinamas
8e0ccda3ee auto_vec: disallow element assignment. add reset method. 2013-03-11 21:28:09 +01:00
sinamas
41877324b3 qglblitter: hide class definition 2013-03-10 18:25:32 +01:00
sinamas
13167187f9 xvblitter: hide class definition. improve shm error checking. cleanup.
use perror.
name constants.
drop some superfluous XSyncs.
2013-03-10 18:25:32 +01:00
sinamas
3283a08bb8 qpainterblitter: hide class definition 2013-03-10 18:25:32 +01:00
sinamas
37c0d3c7fc qglblitter: use QGLContext::getProcAddress rather than custom version
delete now unused x11getprocaddress.
2013-03-10 18:25:32 +01:00
sinamas
1ac47ad140 qglblitter: only create subwidget when used
avoid stale state hanging around.
more proper use of initializeGL.

add some conservative use of makeCurrent again and hope that we do
not run into common driver bugs this time.
2013-03-10 18:25:32 +01:00
sinamas
819dc1b16b swscale: support srcpitch. less casting. gcc x86 tweaks. 2013-03-10 18:25:31 +01:00
sinamas
43f53fde1d x11blitter: update new frontImage from backImage on resize if paused
make an effort to avoid losing paused picture on resize.
2013-03-10 18:25:31 +01:00
sinamas
5ceafb0e9e x11blitter: use image abstraction rather than subblitter abstraction
avoid touching back buffer on resize.
lock-free resizing.
more error checking.
use perror.
2013-03-10 18:25:31 +01:00
sinamas
3a585e703a x11blitter: hide class definition
get rid of Visual void *.
2013-03-10 18:25:31 +01:00
sinamas
c127146a55 x11blitter: use smart_ptrs to handle XFrees 2013-03-10 18:25:31 +01:00
sinamas
0e8c4fcb53 xvblitter: use smart_ptrs to handle XFrees 2013-03-10 18:25:30 +01:00
sinamas
3854550a19 qpainterblitter: update new frontbuffer from backbuffer on resize
make an effort to keep image data on resize.
2013-03-10 18:25:30 +01:00
sinamas
af7a84b1b2 qpainterblitter: always use image back buffer
get rid of union.
avoid touching back buffer on resize.
lock-free resize.
2013-03-10 18:25:30 +01:00
sinamas
4eab2ebe5f gambatte_qt/framework/qglblitter: formatting/readability/cleanup 2013-03-10 18:25:29 +01:00
sinamas
d68d5b9315 gambatte_qt/framework/qglblitter: clear thrice
more behind-your-back triple buffer semantics leaking through.

there does not seem to be any guarantee for how many buffers are actually
used with "double-buffered" opengl, but more than 3 seems unlikely.

contrary to popular belief avoiding clears actually matters in some relevant
scenarios, so let's just bump the number of clears to 3 and move on.
2013-03-10 18:24:10 +01:00
sinamas
1733b63057 gambatte_qt/gambattesource: drop use of volatile
the intention was probably to enforce ordering between stores to volatile
variables within the same thread, but that does not seem important here and
there's also no guarantee that they will be seen in that order from other
threads (which I knew so it must have been meant as an "increase probability"
thing), so it mostly just adds confusion and looks silly.
2013-02-27 22:20:58 +01:00
sinamas
a2fa681759 gambatte_qt/framework/xvblitter: formatting/readability/cleanup 2013-02-27 21:30:29 +01:00
sinamas
9a1dec4e08 gambatte_qt/framework/x11blitter: formatting/readability/cleanup 2013-02-27 21:28:43 +01:00
sinamas
abbd16ae5e gambatte_qt: use ptrdiff_t to represent pitch 2013-02-27 21:20:11 +01:00
sinamas
4a43b50acf gambatte_qt/ossengine: use /dev/audio on OpenBSD by default
requested by anthonyjbentley.
2013-02-24 16:53:12 +01:00
sinamas
99f8f0dfac gambatte_qt/framework: openbsd-*:LIBS += -lusbhid -lossaudio 2013-02-24 16:41:57 +01:00
sinamas
a9c95cc5a1 gambatte_qt: simplify .pro files HEADER deps by using wildcards
also fixes some missing header deps.
2013-02-24 16:24:28 +01:00
sinamas
704546fd8e gambatte_qt/framework: add common to dependpath
fixes no recompilation when touching common headers
2013-02-24 16:24:09 +01:00
sinamas
991e162ea8 vsync/frametime estimation improvements
use frametime samples below jitter limit as indication that we are not
blocking and slightly reduce current estimate to better support fifo triple
buffering implementations that implicitly avoid blocking on swapbuffers
when having a free buffer. intel linux opengl driver do this implicitly
when full screen for double buffered opengl, probably others do too. we
need to block to get usable estimates.

use a tighter sliding jitter window and allow slightly higher difference
from nominal rate because my quirky laptop thinks 60 Hz == 62.2 Hz.
2013-02-24 10:31:30 +01:00
sinamas
445efbc7e2 gambatte_qt/qglblitter: replace smart array with std::vector 2013-02-24 10:30:19 +01:00
sinamas
1a4b00bfb6 trailing whitespace 2013-02-20 20:05:25 +01:00
sinamas
c67feac659 gambatte_qt: excessive parentheses 2013-02-12 18:11:03 +01:00
sinamas
42f843ccc2 gambatte_qt: more ideomatic use of sizeof 2013-02-11 20:29:00 +01:00
sinamas
d93f228f09 openalengine: delete dead code 2013-02-11 20:24:20 +01:00
sinamas
182d09c65f mediaworker: prefer deque::assign to custom loop 2013-02-10 21:56:54 +01:00
sinamas
00a247e0ef gambatte_qt: c++11 narrowing conversion warnings 2013-02-10 21:36:02 +01:00
sinamas
ee9f1c67eb qglblitter: shut up warning 2013-02-10 21:31:00 +01:00
sinamas
45d7dd9e6a audioengine: remedy inexplicable lack of QMutexLocker 2013-02-10 21:24:29 +01:00
sinamas
2c2a7567c4 mediaworker: nonfunctional/readability. ws mostly. 2013-02-10 21:24:29 +01:00
sinamas
394bf20a31 mediaworker: remedy inexplicable lack of QMutexLocker 2013-02-10 21:24:29 +01:00
sinamas
efc990ca66 gambatte_qt: replace use of std::auto_ptr with scoped/transfer_ptr 2013-02-10 21:24:29 +01:00
sinamas
ba31613011 atomicvar: missing includes hidden by include order 2013-02-10 21:24:29 +01:00
sinamas
b480c28570 utilize defined_ptr
and prune some cruft.
2013-02-10 21:22:21 +01:00
sinamas
e634486fff qt/framework: define USBHID_NEW and USBHID_UCR_DATA on OpenBSD
may fix joystick build issues on OpenBSD.

git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@363 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-12-11 19:56:03 +00:00
sinamas
6b8b692138 ossengine: drop "sys/" from soundcard.h include-path if OpenBSD
suggested by Anthony J. Bentley ( anthonyjbentley ).

git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@362 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-12-11 19:55:13 +00:00
sinamas
c16828493c change default audio buffer latency to 68 ms.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@360 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-10-28 19:12:25 +00:00
sinamas
f1aa6de424 s/aamas@stud.ntnu.no/sinamas@users.sourceforge.net/
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@359 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-10-28 18:32:38 +00:00
sinamas
9db3603c9b add game pak info method. do not print in libgambatte.
do print rom title and game pak info in qt/sdl ports.
add header checksum info.
add [bad] to qt window title if header checksum is bad.

git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@346 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-09-10 21:49:36 +00:00
sinamas
7fa1c33a94 return more informative load result.
don't print errors in libgambatte.
use error code string in ports for more informative error message.

git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@345 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-09-10 21:46:38 +00:00
sinamas
ccf3bdd661 delete man pages
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@332 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-08-20 19:23:02 +00:00
sinamas
f3d875e288 index resamplers with size_t rather than unsigned int.
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@322 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-07-10 22:54:03 +00:00
sinamas
18d200aa86 less template bloat
git-svn-id: https://gambatte.svn.sourceforge.net/svnroot/gambatte@320 9dfb2916-2d38-0410-aef4-c5fe6c9ffc24
2012-07-08 15:39:27 +00:00