Commit Graph

509 Commits

Author SHA1 Message Date
Aaron Culliney
4c9c1fb62a First cut at a facility to do CPU tracing
* Also includes a test that traces booting the test disk
2014-10-11 18:28:48 -07:00
Aaron Culliney
815ee171fc HACK that allows rebuilding cpu.S with new preprocessor settings
* Is this an automake bug or "feature"?
2014-10-11 16:53:32 -07:00
Aaron Culliney
15927d1554 test raw disk stream 2014-10-11 10:44:20 -07:00
Aaron Culliney
d6b8057c57 Beginning of VM Tests on Mac 2014-10-10 20:05:46 -07:00
Aaron Culliney
6eaf4e1871 Get CPU test running on Mac 2014-10-10 19:14:46 -07:00
Aaron Culliney
bad54cce05 Better name 2014-10-10 19:13:03 -07:00
Aaron Culliney
0b9515f2cd Excise ALSA, only use OpenAL 2014-10-09 21:17:54 -07:00
Aaron Culliney
429561643e Fix build for testvm and testdisplay 2014-10-09 20:54:11 -07:00
Aaron Culliney
96c7544feb Support fullscreen mode with GLUT/Linux 2014-10-07 22:22:21 -07:00
Aaron Culliney
09eb430ac5 Gets Mac project building again 2014-10-07 22:11:27 -07:00
Aaron Culliney
ca29ec543d Get Linux build working with OpenGL changes 2014-10-07 22:05:14 -07:00
Aaron Culliney
69bd40216b Refactor to rename Basic.vert and Basic.frag 2014-10-07 22:04:23 -07:00
Aaron Culliney
e696f7882f Refactor for whitespace and clarity 2014-10-07 21:59:21 -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
f794098a02 Bugfix : properly handle control-modified keys
* GLUT sends the raw ascii ctrl-values, so we merely send them along in a "cooked" mode
        + It may be that some strange ctrl combinations (saw CTRL-~ or CTRL-ESC) are not properly handled this way, but
        ... not sure what can be done about this (doesn't seem to be a way to force glut to send us the non-cooked keys)
    * Legacy X11 input continues to be sent as raw values (which arguably is a better way)
2014-09-21 17:26:37 -07:00
Aaron Culliney
db8ac1c98b Refactor : separate glut input handling into its own file 2014-09-21 16:06:32 -07:00
Aaron Culliney
d0800fd347 Remove deadc0de key handling paths (leftover from X11) 2014-09-21 15:44:25 -07:00
Aaron Culliney
804f60d6a0 Fix key input handling in GLUT/glvideo
* TIL GLUT constants for certain special keys map to ascii (for example GLUT_KEY_ALT_L == 116/'t') ... of course
      this was playing hell with the emulator's key input handling
    * Now we directly convert regular keys rather than pushing them down the special path
    * Also separateds CAPS_LOCK hack into its own inline function
2014-09-21 15:37:38 -07:00
Aaron Culliney
5e9e98bf88 Fixes keypad joystick emulation with glvideo
* This prevents resetting the joystick to the origin too soon when key is being held down
    * Verified doesn't affect legacy X11 xvideo input processing
2014-09-21 15:01:02 -07:00
Aaron Culliney
c3ac3e8f1c Get the PC Joystick working with glvideo renderer 2014-09-21 14:33:54 -07:00
Aaron Culliney
c162617234 Remove a bunch of deadc0de 2014-09-21 13:35:37 -07:00
Aaron Culliney
1e97564ea7 Clean up colormap initialization and fix lo and dhires Medium blue color 2014-09-18 23:03:42 -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
eb2e038bf0 Refactor classic interface to run within its own thread
* previously this classic interface acted as an oldschool modal dialog (which worked fine with the X11 renderer
      where we actively pumped the event loop)
2014-09-16 20:42:07 -07:00
Aaron Culliney
afc15e0b63 Refactor INTERFACE_CLASS stuff out of disk API 2014-09-16 20:40:42 -07:00
Aaron Culliney
1b8387d214 cput_thread() now has correct pthread function prototype 2014-09-16 20:39:08 -07:00
Aaron Culliney
a929ef854c Refactor video_sync() and friends
- main thread render loop goes into X11 video driver
    - removes video_sync()
2014-09-16 20:38:14 -07:00
Aaron Culliney
8621b1ac53 Refactor: macro should be capitalized 2014-09-06 19:47:59 -07:00
Aaron Culliney
77e8f88edc Refactoring colormap to internal structure/array 2014-08-17 15:31:49 -07:00
Aaron Culliney
4fb69a3196 Slight refactoring of key handling
* Adds a mapping from common ASCII to internal scancodes
    * Renaming for consistency
2014-08-17 15:29:06 -07:00
Aaron Culliney
e0dbcf4afc Work around an apparent clang bug
* tests were previously reported to fail with -O2 optimization
2014-08-16 11:25:07 -07:00
Aaron Culliney
a99b5a1d68 HACKs around bizarre bytecode generation on Darwin
* CPU tests pass now, w00t!
2014-06-25 23:01:22 -07:00
Aaron Culliney
e527e40a6a Remove XCTest stuff and roll our own
* Eh, not sure what bennies going with XCTest offers, use our existing stuff
    * Also appears that XCTest does some real whacky dloading jazz that doesn't play well with our hand-rolled assembly
2014-06-25 22:55:58 -07:00
Aaron Culliney
576df53cb4 Rename CPU Test 2014-06-25 21:30:52 -07:00
Aaron Culliney
eb51f5e23f ROM shim for Xcode builds 2014-06-22 12:26:40 -07:00
Aaron Culliney
3b344ed8e7 Don't fail build if ROM generation fails 2014-06-22 11:25:57 -07:00
Aaron Culliney
10e03e9bc5 Get tests working again
* Refactor naming of saved CPU state variables
    * Allows convenient addressing from assembly
2014-06-22 11:17:44 -07:00
Aaron Culliney
a3973b2e35 ROM generation 2014-06-22 11:09:59 -07:00
Aaron Culliney
670a776571 Fixes for Linux build 2014-06-21 23:40:04 -07:00
Aaron Culliney
fd2f143c64 OS X Cocoa target "hello world" 2014-06-21 22:05:38 -07:00
Aaron Culliney
a69d8685eb Reset Darwin target(s)
* Unfortunately cocos2d doesn't support what I'd like to do with a Mac target at this point, maybe sometime...
2014-06-21 20:37:48 -07:00
Aaron Culliney
3a3219234f Get tests building on OS X 2014-06-21 15:43:24 -07:00
Aaron Culliney
6e4b390b0d HACK until audio system refactored 2014-06-21 14:55:30 -07:00
Aaron Culliney
4597bb2a7e use arc4random_uniform() 2014-06-21 14:52:13 -07:00
Aaron Culliney
ea71d197e0 Handle unlikely overflow and silence clang warning 2014-06-21 14:51:41 -07:00
Aaron Culliney
cecc78e824 Silence clang warnings 2014-06-21 14:51:25 -07:00
Aaron Culliney
a9d094c112 Misc tweaks to get OS X target building 2014-06-21 14:28:50 -07:00
Aaron Culliney
ed8b41c9a0 New CPP macros to accommodate Darwin 2014-06-21 14:21:33 -07:00
Aaron Culliney
d650982e51 Slightly less hackishly, use "private" pointers to set struct vals 2014-06-21 14:21:05 -07:00