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
Aaron Culliney
a4670b1eda
Use CPP macro for duplicate assembly
2014-06-21 14:20:28 -07:00
Aaron Culliney
c13caa0798
add callLQ preprocessor macro
2014-06-21 14:05:00 -07:00
Aaron Culliney
44f06dfb48
don't {Pre,Post}fix Project Preprocessor macro with __
2014-06-21 13:46:02 -07:00
Aaron Culliney
02a4feba78
Build shim for glue.S and Mac project tweaks
2014-06-21 13:43:13 -07:00
Aaron Culliney
51e261fc9d
Add font.c to reduce Xcode project build complexity
...
* font.c shouldn't change if font.txt isn't tweaked
* easy to regenerate without needing Xcode
2014-06-21 12:17:59 -07:00
Aaron Culliney
ac55dee266
Adds unit test target to project, moves existing tests to that target
2014-06-21 12:14:15 -07:00
Aaron Culliney
b9cdf663a0
Shim clock_gettime
2014-06-21 10:02:26 -07:00