Commit Graph

817 Commits

Author SHA1 Message Date
Aaron Culliney
53f0999f5a Bugfix : use int64_t for onTouchEvent flags 2015-08-01 16:41:49 -07:00
Aaron Culliney
0d658932b6 Expose particular settings back to Android so we can persist the values 2015-07-30 23:12:00 -07:00
Aaron Culliney
0bc8869627 nativeOnTouch() now returns various state flags
- Allows playing of a key click sound if a keyboard item tapped
    - Improves stovepiping the native request to show the Android main menu
2015-07-30 22:05:21 -07:00
Aaron Culliney
abfa6e743b Bugfix : properly show icon for joystick or keyboard 2015-07-29 21:18:25 -07:00
Aaron Culliney
7067d10949 Android touch menu configurations 2015-07-28 22:22:25 -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
a0cadc83c6 Refactor timing locking behavior
- Do not start CPU thread until after splash screen
    - Insure that only CPU thread can actually create/destroy the audio interfaces
2015-07-26 13:48:24 -07:00
Aaron Culliney
fa1de4dee7 Silence some logging 2015-07-26 10:41:12 -07:00
Aaron Culliney
36baaa04d5 Allow dynamic configuration of audio latency
- This allows for user-configured device-specific tuning (which makes sense in the Android world with 10,000+
      different devices out there ;-)
2015-07-25 12:57:16 -07:00
Aaron Culliney
bca223780c Properly set speaker volume 2015-07-24 22:21:01 -07:00
Aaron Culliney
5291ee750d Add MB_ISEnabled() function 2015-07-23 23:46:23 -07:00
Aaron Culliney
2ae8468b10 Fix desktop Linux build break 2015-07-12 14:29:47 -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
2a0a9c03b7 Misc speaker codepath tweaks 2015-07-12 13:01:25 -07:00
Aaron Culliney
432d2fb563 Renamed some speaker API methods 2015-07-12 13:00:39 -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
2381868c63 Enable speaker stereo output 2015-07-11 14:21:07 -07:00
Aaron Culliney
1b4962169a Enabled backfilling quiet samples for stereo
- This is a bit of a hack that fixes mockingboard glitching
2015-07-08 20:14:16 -07:00
Aaron Culliney
60d32583ae Gets mockingboard playing with OpenSLES backend
- At ring buffer boundaries, we submit first the beginning of the samples buffer and then the end
2015-07-07 21:36:42 -07:00
Aaron Culliney
0cefe60e06 Force OpenSLES to start playback immediately
- Without this, mockingboard will queue a few samples on U5 boot, but then it won't restart
2015-07-07 21:32:43 -07:00
Aaron Culliney
edaa7be34f Avoid segfaults and deadlocks in backgrounding/foregrounding on Android 2015-07-05 13:40:50 -07:00
Aaron Culliney
38813bb2a1 Revert "Avoid segfault in render thread on mobile shutdown codepath"
This reverts commit ddefceaf08.

    - need an additional boolean instead
2015-07-05 13:29:35 -07:00
Aaron Culliney
4305909d67 Expose some timing constants 2015-07-05 13:17:41 -07:00
Aaron Culliney
dfbb13906a Working buffer size should be around 0.1-0.3 sec of data
- This appears to work on a wide grange of older Gingerbread through to the latest Nexus class devices
    - TODO : we really should write a dynamic calculation/adjustment routine to determine the best working buffer for
      any device this code runs on =)
2015-07-05 13:16:20 -07:00
Aaron Culliney
8ecab7cf91 Eliminate using a local variable 2015-07-05 12:58:43 -07:00
Aaron Culliney
e04f5c046c Just use the workingBytes for bytes_queued calculation 2015-07-05 12:57:24 -07:00
Aaron Culliney
ddefceaf08 Avoid segfault in render thread on mobile shutdown codepath 2015-07-04 18:18:06 -07:00
Aaron Culliney
ada6d7a0be Pause/resume CPU/audio together 2015-07-04 18:17:04 -07:00
Aaron Culliney
c036c8dc84 Defensive coding around case where backend soundsystem is unavailable 2015-07-04 18:13:01 -07:00
Aaron Culliney
2910b6180e Avoid speaker_going_silent codepath on Android 2015-07-04 18:11:58 -07:00
Aaron Culliney
43f6eff62e Avoid segfaults if mockingboard not initialized 2015-07-04 18:11:12 -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
0c6fe702e5 Simplify the going-silent logic 2015-07-02 20:37:06 -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
d5b7b5263c Misc tweaks 2015-06-30 22:10:30 -07:00
Aaron Culliney
951b4518c1 Expose device-preferred audio parameters to native 2015-06-28 12:49:26 -07:00
Aaron Culliney
d01b220b21 Remove spurious checkin 2015-06-28 10:56:11 -07:00
Aaron Culliney
afeffdab79 Tweak to avoid GCC complaint 2015-06-27 13:14:32 -07:00
Aaron Culliney
bb8d51817b First cut at Android OpenSLES backend 2015-06-27 11:48:00 -07:00
Aaron Culliney
c4397123cb Assert that there is only one backend renderer 2015-06-22 22:21:27 -07:00
Aaron Culliney
5b7afea0b4 Refactor : use the new common playqueue code 2015-06-22 22:21:09 -07:00
Aaron Culliney
7a2d1725c7 A simple audio buffer play queue implementation 2015-06-22 22:20:32 -07:00
Aaron Culliney
be7a6267e2 Refactor : call openal_systemShutdown from failed creation 2015-06-20 14:28:27 -07:00
Aaron Culliney
20054a9171 Refactor : avoid early return 2015-06-20 13:49:35 -07:00
Aaron Culliney
2839e92ce4 Refactor : simplify check for available buffers 2015-06-20 13:16:24 -07:00
Aaron Culliney
9a7090c3a4 Refactor : begin excising use of uthash
- While uthash is excellent, it is too heavyweight for a custom collection that has a maximum of 4 elements
2015-06-20 13:02:18 -07:00
Aaron Culliney
2824dfa752 Refactor : clarify buffer play list variable 2015-06-20 12:18:42 -07:00
Aaron Culliney
0aecc83744 Refactor : shuffle moar code around for clarity 2015-06-20 12:11:53 -07:00
Aaron Culliney
8ab4c18de5 Refactor : shuffled code locations to eliminate forward declarations 2015-06-20 11:51:15 -07:00
Aaron Culliney
7b0c5be7c8 Refactor : style and API cleanups 2015-06-20 11:39:23 -07:00
Aaron Culliney
b5ebec1939 Refactor : various style tweaks and optimizations 2015-06-20 11:19:29 -07:00
Aaron Culliney
81941295e6 Refactor : simplify audio buffer API 2015-06-20 00:01:17 -07:00
Aaron Culliney
3ed43fa43c Refactor : remove enumerate devices and other API simplifications 2015-06-19 22:03:48 -07:00
Aaron Culliney
f353a11ec5 Refactor : clarify _this and _internal parameters 2015-06-17 20:54:51 -07:00
Aaron Culliney
5beb1ce476 Fix build break 2015-06-17 20:39:12 -07:00
Aaron Culliney
433f079610 Refactor : renamed methods and eliminated unused parameters 2015-06-16 23:32:19 -07:00
Aaron Culliney
060c95e873 Refactor : remove unnecessary DSGetLock() 2015-06-16 23:19:02 -07:00
Aaron Culliney
72389b941a Refactor : clarify basic subsystem interface 2015-06-16 23:02:25 -07:00
Aaron Culliney
107db0dbde Refactor : remove apparently unneeded call to GetStatus 2015-06-16 22:47:37 -07:00
Aaron Culliney
6059bf370b Refactor : change API method to return error code instead of a success boolean 2015-06-16 22:43:50 -07:00
Aaron Culliney
17cfb8c3a3 Refactor : remove unused code and make constant code constant 2015-06-16 22:39:35 -07:00
Aaron Culliney
6a4fe7bfa1 Refactor : prettify get buffer lock function 2015-06-16 22:28:53 -07:00
Aaron Culliney
e0fe2e62f7 Refactor : remove moar deadcode! 2015-06-16 22:19:19 -07:00
Aaron Culliney
f41dc9b68a Refactor : remove enumerated audio devices from file scope and eliminate \n from logs 2015-06-16 22:17:18 -07:00
Aaron Culliney
26d3cda215 Refactor : initialization and shutdown codepath cleanup 2015-06-16 21:45:45 -07:00
Aaron Culliney
43d98235fd Refactor : cleaned up a bit of deadcode 2015-06-16 21:33:31 -07:00
Aaron Culliney
a2663298d1 Refactor : coalesce two structs into one for clarity 2015-06-16 21:18:52 -07:00
Aaron Culliney
ba42037473 Refactor : remove PVOICE typedef 2015-06-16 20:41:18 -07:00
Aaron Culliney
7552d64d74 Refactor : rename variable for clarity 2015-06-15 22:33:18 -07:00
Aaron Culliney
6a12ae4081 Refactor : simplify function-pointer assignment 2015-06-15 22:24:51 -07:00
Aaron Culliney
538b0aacd7 Refactor : rename some structures for clarity 2015-06-15 22:19:23 -07:00
Aaron Culliney
aedada03e9 Refactor : remove unused ivars 2015-06-15 22:07:09 -07:00
Aaron Culliney
d6b5c19584 Refactor : rename a number of structures and constify a few public API methods 2015-06-15 21:50:46 -07:00
Aaron Culliney
8dd82642d3 Refactor : rename audio subsystem initialization and shutdown functions 2015-06-14 15:05:44 -07:00
Aaron Culliney
59e95a19b1 Refactor : add annotations to a few more functions 2015-06-14 14:56:53 -07:00
Aaron Culliney
33a13abbc2 Refactor : Better segregation and modularization of the audio backend functions 2015-06-14 14:46:15 -07:00
Aaron Culliney
7fd1b350c2 Refactor : hide non-public OpenAL internal API 2015-06-14 14:07:33 -07:00
Aaron Culliney
ec4ff3de10 Refactor : shuffle moar macros into mockingboard.c 2015-06-14 14:07:33 -07:00
Aaron Culliney
af1c6bf159 Refactor : audio system functions return nonzero on failure 2015-06-14 14:07:33 -07:00
Aaron Culliney
c8834a91e3 Refactor: Rename and remove some macros and variables 2015-06-14 14:07:33 -07:00
Aaron Culliney
27a3fea005 Refactor : kill ds-shim.h 2015-06-14 14:07:33 -07:00
Aaron Culliney
93a578d40a Refactor : remove and rename certain globals 2015-06-14 14:07:33 -07:00
Aaron Culliney
4d0ca2b6e3 Refactor : move another function to mockingboard module 2015-06-14 14:07:33 -07:00
Aaron Culliney
1679b8e76a Refactor : excised more DS deadc0de 2015-06-14 14:07:33 -07:00
Aaron Culliney
3767f55846 Refactor : rename and coalesce audio buffer initialization structs 2015-06-14 14:07:33 -07:00
Aaron Culliney
49d2fe6e09 Refactor : excise deadc0de 2015-06-14 14:07:32 -07:00
Aaron Culliney
1707c60701 Refactor : completely excise win-shim
- Moves remaining shim code into mockingboard.c
    - Breaks Mac builds for now =P
2015-06-14 14:07:32 -07:00
Aaron Culliney
994e1a4568 Refactor FALSE -> false 2015-06-14 14:07:32 -07:00
Aaron Culliney
f89c734996 Refactor : excise various macro defs 2015-06-14 14:07:32 -07:00
Aaron Culliney
b9371d3a38 Refactor : LPDWORD > unsigned long* 2015-06-14 14:07:32 -07:00
Aaron Culliney
7513f5e938 Refactor UINT -> unsigned int 2015-06-14 14:07:32 -07:00
Aaron Culliney
92f21a65ca Refactor : LPVOID > void* 2015-06-14 14:07:32 -07:00
Aaron Culliney
e63afea069 Refactor : excise LPBYTE, LPLONG 2015-06-14 14:07:32 -07:00
Aaron Culliney
8cba7de872 Refactor : excise unused macro defs 2015-06-14 14:07:32 -07:00
Aaron Culliney
7263e161e4 Refactor : LONG -> long 2015-06-14 14:07:32 -07:00
Aaron Culliney
5312ddee00 Refactor : ULONG -> unsigned long 2015-06-14 14:07:32 -07:00
Aaron Culliney
109dfa855b Refactor : DWORD -> unsigned long 2015-06-14 14:07:32 -07:00
Aaron Culliney
7051e6d906 Refactor : SHORT -> int16_t 2015-06-14 14:07:32 -07:00
Aaron Culliney
57cd12f1cc Refactor : BYTE -> uint8_t 2015-06-14 14:07:32 -07:00
Aaron Culliney
6d252b0b3e Refactor : WORD -> uint16_t 2015-06-14 14:07:32 -07:00
Aaron Culliney
4b28e33906 Refactor USHORT -> uint16_t 2015-06-14 14:07:32 -07:00
Aaron Culliney
a5d36c7dff Refactor : remove unused macro defs 2015-06-14 14:07:32 -07:00
Aaron Culliney
a46a882a3d Refactor length types 2015-06-14 14:07:32 -07:00
Aaron Culliney
c5fb837314 Refactor BOOL -> bool 2015-06-14 14:07:32 -07:00
Aaron Culliney
87e7ec24ff Refactor HRESULT -> int 2015-06-14 14:07:32 -07:00
Aaron Culliney
20bbfcd286 Fixes for Tap Delay thread
- Now signals TD thread on each touch event that resulted in a change to the buttons.trackingIndex or a change to
      the chosen button (buttons.touchDownButton, buttons.northButton, or buttons.southButton)
    - Uses mutex (un)locking to avoid races around buttons.trackingIndex and chosen button
    - Adds an equal delay on TD thread loop finish to ensure the touchDown/touchUp or touchDown/move/touchUp event
      sequence is the same basic duration as received
2015-06-14 13:59:51 -07:00
Aaron Culliney
5e1d8552ef Ensure file globals are in file scope 2015-06-14 13:59:29 -07:00
Aaron Culliney
c47afc4ccb Bugfix disk selection on Linux desktop 2015-06-07 11:25:50 -07:00
Aaron Culliney
f28b708449 Delay joystick button touches FTW
- Previously a touch down event would trigger a joystick button, but now this slight delay in processing allows us
      to discard this if the user really issued a tap-move combo
2015-06-06 21:44:11 -07:00
Aaron Culliney
1da7acbaba Properly hook up Android shutdown paths 2015-06-06 21:18:27 -07:00
Aaron Culliney
26d7e7da3d Reminder for a future rethink/refactor 2015-06-06 13:00:53 -07:00
Aaron Culliney
3108e035ed Implement sticky-CTRL key for touch keyboard 2015-06-06 12:02:03 -07:00
Aaron Culliney
1cdbaa460a Change joystick glyph 2015-06-03 22:21:33 -07:00
Aaron Culliney
5773ef2e8d Simplify touch menu to just one model/texture
- Also seamlessly complements gltouchkbd layout
2015-06-03 22:13:19 -07:00
Aaron Culliney
f2abf4ce35 Fix emulator quit path on Android 2015-06-01 22:50:44 -07:00
Aaron Culliney
29006f9c5c path handling cleanups 2015-06-01 22:25:29 -07:00
Aaron Culliney
064070be7c Kill a magic number and ensure file_name is nul-terminated 2015-06-01 22:08:58 -07:00
Aaron Culliney
3f38467c93 Silence Valgrind complaint about gzread() 2015-06-01 22:04:01 -07:00
Aaron Culliney
adb09dc84e Avoid buffer overflow +1, thank you Valgrind 2015-06-01 21:17:48 -07:00
Aaron Culliney
9d26e2c6f0 Tweak comments 2015-05-31 16:33:39 -07:00
Aaron Culliney
4c8856fb04 Comment unused/untested codepaths 2015-05-31 16:31:57 -07:00
Aaron Culliney
3b13fc29a4 Don't leak stuff-n-things, thank you Valgrind =)
- Major : Previously leaking interface threads
    - Major : Leak of FILE* resources in inflate routine
    - Minor : previous leak-on-exit of enumerated sound devices
2015-05-31 14:11:57 -07:00
Aaron Culliney
80b880550f Fix shutdown codepaths
- Ensures various shutdown codepaths (interface, cpu/audio, main/video, ...) run on proper thread(s)
    - Actually now runs the CloseAL() code
    - Try to ensure all detached threads exit ... seems to help keep Valgrind happy =)
2015-05-31 13:43:51 -07:00
Aaron Culliney
a796a9f14c c_mygetch is strictly INTERFACE_CLASSIC 2015-05-31 12:57:33 -07:00
Aaron Culliney
6a453c3973 Don't exit in video_shutdown() 2015-05-31 11:25:23 -07:00
Aaron Culliney
a4f185d197 Bugfix: allow unsigned indexing 2015-05-31 11:23:49 -07:00
Aaron Culliney
5816962f32 Make RGBA_4444 codepaths available to HUD models 2015-05-30 23:18:08 -07:00
Aaron Culliney
bcb36a4801 add codepath for RGBA_4444 textures 2015-05-30 18:58:34 -07:00
Aaron Culliney
a3b2afe18f Adds a semi-opaque halo effect around keyboard and menu glyphs for better contrast 2015-05-30 12:18:42 -07:00
Aaron Culliney
31cef9eb58 Avoid overflowing when rerendering character. 2015-05-29 22:14:53 -07:00
Aaron Culliney
cb72d483c0 Refactor INTERPOLATED_PIXEL_ADJUSTMENT calculations just to codepaths actually touching the internal framebuffers 2015-05-29 21:47:49 -07:00
Aaron Culliney
aee1111cb0 Better derivation of framebuffer macros 2015-05-29 21:46:37 -07:00
Aaron Culliney
1ca1e7d2cc Use parens around SCANSTEP macro 2015-05-29 21:46:14 -07:00
Aaron Culliney
1506aba551 Refactor: rename to video_reset() for clarity 2015-05-29 21:46:07 -07:00
Aaron Culliney
27ade69757 Refactor various display initialization routines to CTOR 2015-05-29 21:46:01 -07:00
Aaron Culliney
966ba0a2d8 No disk in drive (or invalid track) should return 0xFF
- Bug introduced in e01e437
    - Bugfix allows U5 Journey Onward to work =P
2015-05-25 13:36:17 -07:00
Aaron Culliney
0cb3086622 gltouchjoy and keyboard are now toggle options 2015-05-23 23:30:18 -07:00
Aaron Culliney
692a6793cb Default enable touch joystick instead of keyboard 2015-05-23 23:25:32 -07:00
Aaron Culliney
4d3de200d9 Extra/configurable defaults to uppercase for U4 keys... 2015-05-21 22:32:38 -07:00
Aaron Culliney
13a7dbfbb0 defensive coding 2015-05-21 22:31:06 -07:00
Aaron Culliney
df218fed05 Improved keyboard with semi-inline arrows 2015-05-17 22:05:15 -07:00
Aaron Culliney
8e73b70f95 Touch keyboard now supports special keys 2015-05-10 15:25:50 -07:00
Aaron Culliney
68011fa8f2 First cut at touch menu HUD
- Enables choosing touch keyboard or touch joystick
    - Enables increasing/decreasing speed
    - Enables opening main popup menu
    - Also migrates all gesture responsibility away from Java side of things
2015-05-09 19:23:52 -07:00
Aaron Culliney
1126a319ec Misc tweaks to various GL interface objects 2015-04-26 18:12:56 -07:00
Aaron Culliney
e7c0d8fe48 Comments, and avoid NULL deref on app resume 2015-04-22 23:40:48 -07:00
Aaron Culliney
4e23795cfd First cut at GL touch keyboard 2015-04-22 23:32:36 -07:00
Aaron Culliney
725cf68011 Move common function to base class 2015-04-19 14:28:47 -07:00
Aaron Culliney
142f0181bc support showing hourglass pause animation 2015-04-19 14:28:09 -07:00
Aaron Culliney
eee0dd45e3 zero-initialize buffers 2015-04-19 14:26:40 -07:00
Aaron Culliney
2b658954f9 Various additions/changes to interface glyphs 2015-04-19 14:25:53 -07:00
Aaron Culliney
629e44b210 Slightly more idiomatic way to upload texture pixels 2015-04-18 15:29:55 -07:00
Aaron Culliney
c2bd14f9b5 REFACTOR : glcpuanim now manages all generic alert messages 2015-04-18 15:15:09 -07:00
Aaron Culliney
592c80344f Add new custom bitmap glyphs, and change load positions 2015-04-18 14:50:02 -07:00
Aaron Culliney
dcd0207525 Fix ctor load priorities 2015-04-17 22:12:13 -07:00
Aaron Culliney
2bc846d1fe Revert "Fix non-deterministic ctor load issues and use singleton for video_backend module access"
This reverts commit af95212a19.

    TODO : make ctor loads deterministic
2015-04-17 21:40:56 -07:00
Aaron Culliney
e2272132c2 Do not destroy OpenGL needful things for VAO codepath
- Gets Mac build rendering again
2015-04-16 21:53:44 -07:00
Aaron Culliney
af95212a19 Fix non-deterministic ctor load issues and use singleton for video_backend module access 2015-04-16 21:53:12 -07:00
Aaron Culliney
e2794070dd fix typos to allow gltouchjoy to build 2015-04-12 16:20:01 -07:00
Aaron Culliney
ca139ee94a REFACTOR : glanimation rechristend, touch handling genericized
- 'animation' was too constrained a name to what these do, so switch to the overloaded term 'node' ;-)
    - Touch handling is no longer the sole purview of the touchjoy, (in prep for touchable HUD elements)
2015-04-12 15:55:06 -07:00
Aaron Culliney
5b5c6fa533 REFACTOR : interface menus/HUDs
- menu/HUD creation functions moved to better location and renamed
    - CPU change animation now default displays on desktop Linux (exercise common HUD codepaths with mobile)
2015-04-12 14:23:35 -07:00
Aaron Culliney
121e250c62 REFACTOR : GLModel render pass is common for HUD models 2015-04-12 11:27:33 -07:00
Aaron Culliney
06051e44e7 REFACTOR : CPU animation is now a HUD model 2015-04-12 00:41:41 -07:00
Aaron Culliney
19e1a8e3d8 REFACTOR : beginnings of object-oriented approach for HUD models 2015-04-12 00:40:43 -07:00
Aaron Culliney
60d7e2b305 touchjoy render pass optimizations : avoid OpenGL calls if alpha is zero 2015-04-11 12:18:36 -07:00
Aaron Culliney
e876cd03b6 REFACTOR : begin consolidating common code for OpenGL HUD interfaces 2015-04-11 11:42:18 -07:00
Aaron Culliney
5712850e84 REFACTOR : demoModel -> GLModel 2015-04-11 11:42:18 -07:00
Aaron Culliney
9bbb180feb Bugfix touchjoy : make sure only the correct button is firing 2015-04-11 11:42:18 -07:00
Aaron Culliney
afc8c8bb24 Old Spamsung devices running Gingerbread cannot handle dangerous characters like backslash '\' in their OpenGL shader parsers 2015-04-07 23:17:13 -07:00
Aaron Culliney
985cec7725 Baseline GL touch joystick functionality (for AXIS_EMULATED_DEVICE type)
- Also updates GL touch joystick to allow dynamic HUD re-positioning
2015-04-04 20:35:34 -07:00
Aaron Culliney
23171c65fc unnecessary to send alpha parameter into function 2015-04-04 12:49:05 -07:00
Aaron Culliney
30236cb400 First cut at GL Touch Joystick 2015-04-01 19:59:38 -07:00
Aaron Culliney
d63bd7b412 macro defines for various mousetext characters 2015-04-01 19:57:12 -07:00
Aaron Culliney
c40f9f7487 X11 renderer : don't change XImage from different thread
- Only allow the X11 renderer thread to change the XImage
2015-03-23 22:05:08 -07:00
Aaron Culliney
30c59bd43f X11 renderer still works! 2015-03-23 21:45:46 -07:00
Aaron Culliney
5f210bfcf3 HACK around lingering issues with speed adjustment on mobile 2015-03-22 19:14:35 -07:00
Aaron Culliney
af42dc36b2 Squashed commit of the following:
CPU speed animation touch-ups, and enable building for desktop
    Rename/shuffle animation declarations and code
    Refactor backend video system to be a dynamically initialized module
    Basic CPU speed texture animation works on desktop Linux and Android
    Use static pixel buffers to avoid malloc/free churn
    Improve CPU animations
    First cut at CPU speed message animation
    Refactor some of the classic interface functions to be potentially reusable elsewhere
2015-03-22 18:53:13 -07:00
Aaron Culliney
358541b8cc Simplify BranchXCycles 2015-03-22 15:46:58 -07:00
Aaron Culliney
8c66a91e14 REFACTOR : shuffle some code for improved legibility 2015-03-14 15:52:15 -07:00
Aaron Culliney
e5fde057c9 Don't create new cpu_thread on app resume 2015-03-12 14:45:17 -07:00
Aaron Culliney
2965afe12e Two-finger-touch pops up softkeyboard and adjusts GL viewport 2015-03-11 12:54:50 -07:00
Aaron Culliney
e839baa931 Updates to prepare/support Android Studio / Gradle builds 2015-03-10 13:15:36 -07:00
Aaron Culliney
abe520d8b7 Remove unnecessary instructions in CPU tracing 2015-03-10 11:15:28 -07:00
Aaron Culliney
f12a4c7142 Bugfix : assure that ARM processor flags are cleared 2015-03-10 11:13:59 -07:00
Aaron Culliney
7e249745d8 Make disk loading faster on slow Android devices
- So for now we are not "conformant" on Android, but it appears to be worth the disk image loading times
2015-03-10 10:23:52 -07:00
Aaron Culliney
09ff973016 Work around lack of GLSL version string in older Android device(s) 2015-03-10 10:23:52 -07:00
Aaron Culliney
8d6961c0cb Callee is responsible for saving higher regs 2015-03-10 10:23:52 -07:00
Aaron Culliney
199300ba39 Bugfix bank maybewrite glue 2015-03-10 10:23:52 -07:00
Aaron Culliney
d30a7b8a38 Codepath is now similar to x86 variant 2015-03-10 10:23:52 -07:00
Aaron Culliney
ee73c5890b base_c4rom is a flexible pointer 2015-03-10 10:23:52 -07:00
Aaron Culliney
347ed76034 Mark some VM tests as needing attention 2015-03-10 10:23:52 -07:00
Aaron Culliney
36b78f657f Remove an uppity assert
- Manifesting on Mac ... believed to be spurious and more fallout from auto-speed adjustment refactor
2015-03-10 10:22:47 -07:00
Aaron Culliney
2855d15f9b Get graphics working again on Mac and add another snide Android compiler warning =P 2015-03-10 10:22:47 -07:00
Aaron Culliney
d657ab8c46 Unstick Mac builds and tests 2015-03-10 10:22:47 -07:00
Aaron Culliney
b329ac2bff Remove some redundant code 2015-03-05 21:25:14 -08:00
Aaron Culliney
e7ad98535a Correct order for CPU tracing arguments 2015-03-05 21:23:36 -08:00
Aaron Culliney
9cbceac80b Fix bug in GetZPage_X and GetZPage_Y macros 2015-03-05 21:06:42 -08:00
Aaron Culliney
2ec4e46012 Expose a test failure on ARM 2015-03-05 20:59:51 -08:00
Aaron Culliney
c3969f9d1d Fixes to get Android tests rendering 2015-02-24 20:53:19 -08:00
Aaron Culliney
fadb806c92 DSK image loading considered slow, Use NIB image for faster tests (not specifically exercising DSK codepaths)
- There may be some wins in optimizing the DSK codepaths, but I think these are inherently slow now that we have
      brought in Applewin's conformant code
    - It's possible that the best option will be to bring back the non-conformant-but-faster DSK codepaths originally in
      this emulator but ...
2015-02-24 20:42:30 -08:00