Commit Graph

43 Commits

Author SHA1 Message Date
Aaron Culliney
46c286719f Fix Android build after Mac iteration 2015-11-14 11:09:33 -08:00
Aaron Culliney
a61fd339a6 Various fixes to get Mac build compiling 2015-11-14 08:01:20 -08:00
Aaron Culliney
2cc23cf35d Upgrade to GPLv3 "or later" and update copyrights 2015-10-22 21:09:13 -07:00
Aaron Culliney
51f5bc64ba Expose macro globally 2015-10-04 14:39:53 -07:00
Aaron Culliney
f4fa5670b4 Add function-call time tracing for Linux/Android 2015-10-04 14:22:26 -07:00
Aaron Culliney
ed60b2ea73 Refactor VM initialization and shutdown 2015-09-11 23:03:17 -07:00
Aaron Culliney
704c381ea8 Logging should automatically print function 2015-08-21 23:43:19 -07:00
Aaron Culliney
25b9f3d3f3 Android lifecycle cleanups
- Differentiate between cpu_pause() when going to menu (and app is still foregrounded, and cpu_pauseBackground()
      when a system backgrounding event has occurred.
    - Destroy/free audio resources owned by CPU thread when background is requested, put CPU thread into waiting upon
      pthread condition to resume.
    - Mobile device now always signals pthread condition to force CPU thread resume from background
2015-07-27 22:36:39 -07:00
Aaron Culliney
7ca4a2646d Optimize video drawing and API cleanup
- Enforces synchronized access to video dirty bit
2015-07-12 14:13:13 -07:00
Aaron Culliney
5f4bf6b1a7 Use single buffer queue callback for OpenSLES/Android
- OpenSLES Callback now performs simple mix of 2 sources (speaker and mockingboard)
    - Avoids multiple callbacks which was a performance penalty especially for low-end droids
2015-07-12 12:59:49 -07:00
Aaron Culliney
b717e829a7 Override assert() to get messages 2015-07-04 18:08:43 -07:00
Aaron Culliney
2aba9a5ba1 Better OpenSLES backend implementation for Android
- Uses buffer values gleaned from Android system
    - Removes completely unnecessary playq and uses ringBuffer instead with read/write heads
    - ringBuffer includes a certain amount of "overflow" space for callback convenience
2015-07-04 18:01:44 -07:00
Aaron Culliney
a9307aa827 Remove hardcoded sample rate and buffer sizes
- Audio backend now specifies the sample rate and min/ideal buffer size for mono and stereo audio
    - Increase maximum speaker amplitude
2015-07-02 20:24:59 -07:00
Aaron Culliney
951b4518c1 Expose device-preferred audio parameters to native 2015-06-28 12:49:26 -07:00
Aaron Culliney
0aecc83744 Refactor : shuffle moar code around for clarity 2015-06-20 12:11:53 -07:00
Aaron Culliney
59e95a19b1 Refactor : add annotations to a few more functions 2015-06-14 14:56:53 -07:00
Aaron Culliney
29006f9c5c path handling cleanups 2015-06-01 22:25:29 -07:00
Aaron Culliney
1126a319ec Misc tweaks to various GL interface objects 2015-04-26 18:12:56 -07:00
Aaron Culliney
dcd0207525 Fix ctor load priorities 2015-04-17 22:12:13 -07:00
Aaron Culliney
e876cd03b6 REFACTOR : begin consolidating common code for OpenGL HUD interfaces 2015-04-11 11:42:18 -07:00
Aaron Culliney
829ee225e6 Android variant compiles/links 2015-02-17 20:28:23 -08:00
Aaron Culliney
d9ce113aa0 WIP : Android armeabi target compiles 2015-02-16 08:47:26 -08:00
Aaron Culliney
35458b2839 Change LOG() macro to accommodate Android logging 2015-02-16 08:47:26 -08:00
Aaron Culliney
b4516b49df Add general-use branch-prediction macros 2015-01-23 23:34:03 -08:00
Aaron Culliney
191a1b7395 Fix Mac builds 2015-01-16 21:11:29 -08:00
Aaron Culliney
a24436e88f Gamepad clamp-beyond-radius implemented 2014-12-05 22:31:12 -08:00
Aaron Culliney
b6e329a3c6 Prevent segfault in glGetError() during app initialization 2014-11-29 13:31:21 -08:00
Aaron Culliney
a2a55d53ed Fixes for various clang static analyzer issues 2014-10-25 11:53:44 -07:00
Aaron Culliney
d083fa958f do not use vgl.h, use glUtil.h 2014-10-07 21:26:50 -07:00
Aaron Culliney
6858e51a75 Apple2Mac first cut and refactor common rendering code
* Based on NSOpenGLView and Apple's GLEssentials sample code
    * CVDisplayLink- or NSTimer-driven rendering
    * Works in window or fullscreen mode on Mac OSX Lion or later

TODO FIXME:
    * Breaks Linux/Posix build
    * Cocoa menu interfaces
    * Key/mouse/joystick/gamepad handling
2014-09-30 21:01:58 -07:00
Aaron Culliney
df8ae3d018 First cut at basic OpenGLES 2.0 renderer
* Compiles/runs on Linux
    * X11 renderer is now deprecated
2014-09-16 21:34:04 -07:00
Aaron Culliney
8621b1ac53 Refactor: macro should be capitalized 2014-09-06 19:47:59 -07:00
Aaron Culliney
8ded3fa0f1 Expose unused variables and improve logging
* Adds support for RELEASE_ logging (logging even with NDEBUG builds)
2014-06-14 11:26:33 -07:00
Aaron Culliney
98cd975328 ifndef MIN() & MAX() macros 2014-03-30 10:39:45 -07:00
Aaron Culliney
8976808568 More updates to support testsuite 2014-01-25 22:10:33 -08:00
asc
3abd2e87aa Refactor to use GNU build tools
* Added configure.ac and non-recursive Makefile.am
    * Modularized source into subdirectories
    * Simplified header inclusion
2014-01-22 20:51:50 -08:00
Aaron Culliney
cec59bda47 Removed some gotos and redundant code paths 2013-11-30 20:00:34 -08:00
Aaron Culliney
97282fa916 fix backspacing disk path in parameters interface 2013-11-24 12:19:54 -08:00
Aaron Culliney
06c6fd9feb don't redefine if defined already 2013-10-22 21:18:03 -07:00
Aaron Culliney
c39bea9580 Partial fix debugger for multithreaded environment
* Fixes crashing observed when trying to use debugger

    * Various refactoring whitespace fixes
2013-10-06 21:01:00 -07:00
Aaron Culliney
0f26899420 macro refactoring for clarity [sic] 2013-10-05 23:13:24 -07:00
Aaron Culliney
b0236992d2 style cleanups and an ERRQUIT 2013-09-12 20:47:00 -07:00
Aaron Culliney
ae6790ab97 debug logging support 2013-07-07 14:01:21 -07:00