Commit Graph

15 Commits

Author SHA1 Message Date
David Ludwig
8940880794 make build scripts reference both video_sdl.cpp and video_sdl2.cpp 2017-09-04 12:44:34 -04:00
David Ludwig
f8682679c2 moved SDL2 video code to video_sdl2.cpp; restored SDL1 implementation of video_sdl.cpp 2017-09-04 12:18:52 -04:00
David Ludwig
cd57af7795 Basilisk II, bug-fix: on Mac, mouse-grabbing via Ctrl+F5 wasn't changing the title of the window 2017-09-02 10:58:53 -04:00
David Ludwig
dbd997fa47 fixed issue #20: GTK preference UI was broken in both Linux and Mac OS X 2017-08-30 12:17:37 -04:00
David Ludwig
145ca0c210 fixed issue #15: BasiliskII: running an autotools build breaks ability to build with Xcode 2017-08-27 17:37:20 -04:00
David Ludwig
51a9eeae76 fixed issue #14: Basilisk II: make Xcode generate UAE's CPU-emulation sources at build-time 2017-08-27 17:05:02 -04:00
David Ludwig
53cadd7fd0 restored OSX 'DEBUG' macro to DEBUG=1 2017-08-14 13:57:11 -04:00
David Ludwig
6600081b29 build fix for OSX + Xcode 2017-08-14 13:56:36 -04:00
David Ludwig
54e03d9647 bug-fix, Issue #2: prevent SDL2 from installing keyboard shortcuts (Command+Q, etc.) on OSX hosts, as they interfere with guest OS use 2017-07-23 16:23:51 -04:00
David Ludwig
6e36c8dd30 include SDL2 as a git submodule, currently using v2.0.5; make Mac builds (of Basilisk II) build SDL
This should help with debugging windowing system issues, which may reside in SDL, which SDL may not provide adequate diagnostic info, or which Basilisk may not report
2017-07-23 14:09:19 -04:00
David Ludwig
a3f3d4f5d2 dropped Mac OS X deployment target down to 10.7 (from 10.12) 2017-07-22 22:01:13 -04:00
David Ludwig
ad747d2049 use HOME/.basilisk_ii_xpram for saving + restoring XPRAM 2017-07-22 21:16:32 -04:00
David Ludwig
b62b8fe5ad read/write preferences from HOME/.basilisk_ii_prefs 2017-07-22 21:09:53 -04:00
David Ludwig
cb982ee2ed use SDL 2.0.5+, rather than SDL 1.x
This change may end up being a bit slower on some systems, as the SDL backend will now render its content to two, new, SDL_Surfaces: one of which is in the guest OS' resolution, the other of which is application defined.

SDL2's SDL_Render API is used, which exposes some rudimentary elements of GPU + texture-based programming.  Basilisk II now maintains a single 'SDL_Texture' object, which is an SDL representation of a GPU texture.  The 'outer' surface will be used to update this texture, as requests to redraw are made.

TODO: look into removing the 'outer' SDL surface, and see if we can just copy the 'inner' surface to the SDL_Texture.
TODO: the entire SDL_Texture is updated, any time a request is made to draw.  Look into minimizing this a bit.
2017-07-22 20:29:30 -04:00
David Ludwig
9128314cb8 Basilisk II compiles on Xcode 8, as a 64-bit Mac app
SDL 1.x is used for display, rather than Mac OS X specific backend.  If time permits, I'll port it to SDL 2, if only to reduce Basilisk's overall code foot-print.

Lots of features are apt to be disabled, as many 'dummy' backends were used.

Video-depths other than 1-bit or 32-bit are untested, and in some cases (4-bit, at least) are currently non-functional.  This is due to a partial re-write of the SDL backend's blitting code, which was non-functional when low-bit-depths were used.

The SDL backend was also rewired, on OSX, to not attempt to align the display buffer on page-boundaries.  So far, this doesn't seem to cause any notice-able problems, however, that's only using limited knowledge and testing (System 7.5.x does boot and display at 640x480, though!).  The original display-buffer allocation code was failing to run, in some cases.

Preferences are, on Mac, currently hardcoded to be accessed at /tmp/BasiliskII/BasiliskII_Prefs.  The folder, "/tmp/BasiliskII/", may be a symbolic link to elsewhere, though.
2017-07-22 17:43:42 -04:00