Aaron Culliney
fa2f8569f8
Brighter half-scanlines and commentary
2018-11-10 10:28:53 -08:00
Aaron Culliney
a0f2819a4e
Misc display fixes
2018-11-10 10:27:05 -08:00
Aaron Culliney
227098ec52
Refactor video/display rendering
...
- Import NTSC video display modes
- Migrate to using full-color framebuffers
- Mac and Android builds somewhat working
- TODO : likely breaks display testing
2018-11-04 14:07:30 -08:00
Aaron Culliney
50d440df1b
Fix interpolated color after recent upheaval
2018-08-24 17:41:44 -07:00
Aaron Culliney
6ee8699079
Rename color_mode_t values for clarity
2018-08-11 15:54:00 -07:00
Aaron Culliney
55ca51262b
First cut at monochrome for LORES80
2018-08-05 17:19:15 -07:00
Aaron Culliney
b403ee7b6e
Fix LORES80 shifting algorithm
...
- Previous variant was not properly truncating bit 9
2018-08-05 17:18:48 -07:00
Aaron Culliney
58488ab8e9
Remove a conditional codepath in LORES40 drawing
2018-08-05 16:00:53 -07:00
Aaron Culliney
dc49060eda
Remove old unused display code
2018-07-29 19:53:41 -07:00
Aaron Culliney
75edac3ace
First cut at implementing conformant video scanner
2018-07-29 18:33:17 -07:00
Aaron Culliney
aa41c89e68
Lite refactor video timing
2018-05-06 10:14:47 -07:00
Aaron Culliney
234caa8c9c
Consolidate hires page write handlers
2018-04-22 08:43:53 -07:00
Aaron Culliney
1de71d1ff4
monocolor mode for LORES
2018-03-31 12:27:50 -07:00
Aaron Culliney
3c04e12db0
Add proper monocolor mode for HIRES80
2018-03-11 16:30:17 -07:00
Aaron Culliney
cedf7b9d0e
Minor clean-up deadc0de in HGR40 generation
2018-03-11 16:28:07 -07:00
Aaron Culliney
dd42645c4c
Silence some Xcode compiler warnings
2018-01-22 07:33:06 -08:00
Aaron Culliney
e4e0c941d3
Refactor CPU assembly for simplicity and efficiency
...
- Variables needed in assembly now accessible in a struct pointer that avoids __PIC__ nastiness
- Reduces code size and execution time for CPU thread
2018-01-15 16:19:21 -08:00
Aaron Culliney
7a99b72f20
Allow different colorschemes with HUD devices
2017-11-11 16:02:38 -08:00
Aaron Culliney
53459c9e78
Clean up a number of Xcode build warnings
2017-09-28 16:27:12 -07:00
Aaron Culliney
b5b79faf1d
First cut at CLI ncurses video renderer
...
- Currently supports 40/80col TEXT modes
- TODO : graphics scaling
2017-09-09 18:06:43 -10:00
Aaron Culliney
ae76537a19
Name colormap indices
2017-09-09 16:53:10 -10:00
Aaron Culliney
861cb3320c
Display further refactored for text mode callbacks
2017-08-15 18:44:49 -10:00
Aaron Culliney
f8b4602fca
Beginning to refactor display and backend video
...
- Futher disentangle display, interface, and video backends
- Backend video owns the staging/intermediate framebuffer for now
- Add the beginnings of display update callbacks
2017-08-06 12:12:12 -10:00
Aaron Culliney
98aecedd65
Null renderer build can now execute tests
2017-07-30 12:42:31 -10:00
Aaron Culliney
3b1c72e872
Excise RELEASE_LOG() and RELEASE_BREAK() macros
...
- LOG() and assert() work just fine ;)
2017-07-15 14:19:31 -10:00
Aaron Culliney
3c1dcd4a69
Refactor to enable loading multiple AV backends
...
- Includes default 'null' backends with lowest priority
2017-07-15 13:25:00 -10:00
Aaron Culliney
31aca92ffd
video flags are unsigned long
2017-05-28 08:47:59 -10:00
Aaron Culliney
b62f5e9e7f
Hackishly enforce determinism to trace testing
2016-07-15 20:28:23 -07:00
Aaron Culliney
76f29d0865
Allow emulator shutdown state to be queried as needed
2016-04-17 12:18:48 -07:00
Aaron Culliney
db816ad502
Refactor Android variant to use common shared JSON preferences
...
- Eliminates a whole bunch of boilerplate setter/getter code in various places
- Accesses preferences directly from JSON data through custom json_parse.h API
- Improves code locality for Java menus/settings
2016-04-11 22:01:30 -07:00
Aaron Culliney
b065da9f4b
Various test suite improvements
...
- Possibly breaking changes for mobile ... #willunbreaklater
2016-03-26 14:56:34 -07:00
Aaron Culliney
74a5b74ae3
Refactor prefs into JSON publish/subscribe API
...
- Breaking changes currently only tested on Linux desktop build =P
- Goal is to eventually eliminate most/many of the disparate getter/setter functions to allow better
modularity/scaling and platform portability
2016-03-26 13:44:13 -07:00
Aaron Culliney
3120b75e00
Enforce module ctor priorities
2016-02-22 22:41:37 -08:00
Aaron Culliney
7ef70e7943
Make use of the video memory dirty bit
2016-02-15 13:30:35 -08:00
Aaron Culliney
829291feba
Refactor all drawing to run on video thread in one scanner pass
...
- Moves extra work off CPU/audio thread
- Prepares the way to possibly remove the vestigal intermediate indexed framebuffer and do direct RGBA_8888 writes
to XImage or OpenGL texture
- Prepares the ground for possible better emulation of video scanner hardware
Conflicts:
src/display.c
src/video/glvideo.c
src/video/video.h
2016-02-15 13:29:58 -08:00
Aaron Culliney
5354b0cfd5
First cut at allowing portrait mode (on mobile devices)
2016-02-14 20:18:07 -08:00
Aaron Culliney
261ae2efae
Refactor to not use video_backend in so many places
2016-02-07 14:42:32 -08:00
Aaron Culliney
5fec80a33a
Refactor video_shutdown() to appease Valgrind
...
- This likely breaks Darwin ports ... will fix soon[ish]
2016-02-07 14:42:28 -08:00
Aaron Culliney
edaae0bc89
Refactor glvideo to be the root glnode, begin to privatize video_backend APIs
2016-02-07 14:42:16 -08:00
Aaron Culliney
f8e4ba3551
FLASHing text is handled by CPU timing and not render loop
2016-01-20 23:17:39 -08:00
Aaron Culliney
edfd5243ff
First cut at LORES80 graphics
...
- This comes with the caveat that all video modes will need to be refactored to take into account proper timing
2016-01-20 23:16:42 -08:00
Aaron Culliney
090f5f4db4
Don't actually draw unless byte written to active page or page was swapped
...
- Avoids "flicker" in 80's apps that use double buffering
- Possibly improves performance since we only take the render hit in page swap (or direct render to visible page)
2016-01-20 23:16:34 -08:00
Aaron Culliney
a8e6f4fc92
Refactor : coalesced text/mixed drawing codepath
2016-01-16 22:05:28 -08:00
Aaron Culliney
8626215205
Silence a number of spurious compiler warnings
...
- Existing warnings are now a good proxy for areas of code smell ;-)
2016-01-10 12:09:04 -08:00
Aaron Culliney
4436b9b7ca
Fix semi-opaque glyph shading with scales > 2
...
- Also add defensive coding in debug builds
2016-01-05 23:04:27 -08:00
Aaron Culliney
b9d6d38b17
First cut at save/restore emulator state feature
...
- This adds to overall UX ... (you can finally finish some very difficult arcade games by strategically leveraging
this feature)
- Currently enabled for Android, but not Android-specific
2015-11-22 18:22:01 -10:00
Aaron Culliney
616428a03f
Slightly improved DHIRES colors
2015-10-26 23:11:29 -07:00
Aaron Culliney
2cc23cf35d
Upgrade to GPLv3 "or later" and update copyrights
2015-10-22 21:09:13 -07:00
Aaron Culliney
ed60b2ea73
Refactor VM initialization and shutdown
2015-09-11 23:03:17 -07:00
Aaron Culliney
2c97f7af19
Excise HEADLESS ... it was only being used by testcpu
2015-09-06 17:14:38 -07:00