Thomas Harte
|
d72287a776
|
Looked up normal retrace time (it's a lot less than 16µs and 26 scanlines — more like 7 and 10) and that the visible portion of a line is defined to start about 12 µs after the start of hsync, put the first two numbers into my CRT to make that more accurate, then derived a newer guess about what the Atari 2600 does for each of its 228 cycles. The text version of a frame is now looking pretty good. So it's probably time to hit OpenGL and the OS X side of things. Though I'll have a quick look to find out whether I can learn the exact real Atari 2600 timings before moving on.
|
2015-07-23 19:24:25 -04:00 |
|
Thomas Harte
|
529f61caa1
|
Removed a stray newline.
|
2015-07-22 20:45:21 -04:00 |
|
Thomas Harte
|
065050115f
|
Made an attempt to switch to a triple-buffering scheme for CRT outputs, with an eye towards asynchronicity.
|
2015-07-22 20:33:20 -04:00 |
|
Thomas Harte
|
963cb2f6fb
|
Attempted to switch to slightly more meaningful names within the CRT and implemented a delegate to investigate output. Working on it.
|
2015-07-22 18:15:18 -04:00 |
|
Thomas Harte
|
a1a1b15d18
|
Made a quick attempt to accumulate a list of detected output runs. Which means finally having to specify normal frame height. I'm already at too many magic formulae though, so this will need proper revision when I'm next awake. Definitely my horizontal position advancement is way off.
|
2015-07-20 23:18:56 -04:00 |
|
Thomas Harte
|
4e4c082a05
|
Made some minor attempt at proper sync response. I think I've gone way off piste and overcomplicated it.
|
2015-07-19 23:43:22 -04:00 |
|
Thomas Harte
|
4a1e9fe2a8
|
Rephrased the CRT as owning an arbitrary number of buffers and vending storage space for pixel output. That much better maps to potential implementations of this thing in GLSL, with ES 2.0's limitations kept in mind.
|
2015-07-19 21:21:34 -04:00 |
|
Thomas Harte
|
4d1e410150
|
Fix 1: _horizontalTimer should be treated as read only out here.
|
2015-07-19 16:51:11 -04:00 |
|
Thomas Harte
|
6f78ecdc9c
|
Made first genuine attempt at outputting a meaningful CRT stream. Which shows some significant errors. So work to do.
|
2015-07-19 16:48:14 -04:00 |
|
Thomas Harte
|
2d0f861474
|
Incoming: a 'CRT' class, to receive information intended for a cathode ray tube. To decode sync, etc.
|
2015-07-19 13:36:27 -04:00 |
|
Thomas Harte
|
03a25c8ff2
|
Fixed playfield pixel logic.
|
2015-07-19 10:56:04 -04:00 |
|
Thomas Harte
|
3e0679235a
|
This now goes just far enough to create an instance of Atari2600::Machine and push a ROM to it. Next jobs are to get a basic CRT emulation wired up, outputting to the window.
|
2015-07-16 20:40:46 -04:00 |
|
Thomas Harte
|
6558ae1425
|
Imported what little I have so far in the way of a memory-access cycle complete 6502 and just enough of a pretend Atari 2600 on top to be able to see some playfields in ASCII art.
|
2015-07-16 19:56:02 -04:00 |
|