Thomas Harte
|
c3e719c4ab
|
Added missile-to-player offsetting. Completing the list of graphics-related TODOs.
|
2016-05-22 17:01:56 -04:00 |
|
Thomas Harte
|
4c6d4d899d
|
Ensured that resetting the horizontal timer affects phase.
|
2016-05-22 16:29:53 -04:00 |
|
Thomas Harte
|
df93d7849d
|
Re-enabled the ball.
|
2016-05-22 14:38:14 -04:00 |
|
Thomas Harte
|
0242924fb4
|
Various bits of caveman debugging appearing and disappearing, switched to latching ball behaviour.
|
2016-05-22 14:26:02 -04:00 |
|
Thomas Harte
|
5e220562e4
|
Actually, the four-clock delay, with palette taking effect immediately, appears to be correct. So back to the drawing board on that.
|
2016-05-21 21:44:54 -04:00 |
|
Thomas Harte
|
4eded9b9d0
|
Re-enabled collisions.
|
2016-05-21 13:05:36 -04:00 |
|
Thomas Harte
|
b1c84f5402
|
Counters run every scan line regardless of blank and sync. Also played further with timing.
|
2016-05-21 12:54:39 -04:00 |
|
Thomas Harte
|
470c90428a
|
Switched to two-register implementation of VDELP, etc.
|
2016-05-21 10:26:27 -04:00 |
|
Thomas Harte
|
36d19cb6cf
|
Made an attempt at properly pumping timers during hmove.
|
2016-05-21 10:18:15 -04:00 |
|
Thomas Harte
|
a952813036
|
Fixed missile sizes, played about with ball placement.
|
2016-05-19 18:30:17 -04:00 |
|
Thomas Harte
|
cf5b8ab92e
|
This is now approximately back to where it was on Cosmic Ark.
|
2016-05-19 08:30:10 -04:00 |
|
Thomas Harte
|
40600b4bcb
|
Made sprite placement consistent at least. Not necessarily yet correct.
|
2016-05-18 22:07:24 -04:00 |
|
Thomas Harte
|
e61392d3fb
|
Fixed incorrect duplication.
|
2016-05-18 21:50:28 -04:00 |
|
Thomas Harte
|
3765c5fbb5
|
Fixed error that would prevent an interrupting frame from ever being drawn.
|
2016-05-18 21:45:35 -04:00 |
|
Thomas Harte
|
8c7ce1ec3f
|
Attempted to fix sprite sizing and, again, missile repetition.
|
2016-05-18 21:41:25 -04:00 |
|
Thomas Harte
|
d013d46337
|
Fixed object motion decoding and checking of the repeat mask for missile graphics.
|
2016-05-18 21:36:28 -04:00 |
|
Thomas Harte
|
83ed6a82cf
|
Fixed: asserting vertical blank doesn't affect underlying timing.
|
2016-05-18 18:49:40 -04:00 |
|
Thomas Harte
|
877c55b5c5
|
Threw in missiles. To 'complete' graphics output. Or, rather, to move me on to debugging.
|
2016-05-18 07:54:44 -04:00 |
|
Thomas Harte
|
354143a78c
|
Reintroduced an attempt to plot sprites.
|
2016-05-18 07:51:25 -04:00 |
|
Thomas Harte
|
0b99649b0f
|
Had a first shot at triggering player and missile resets.
|
2016-05-18 07:31:05 -04:00 |
|
Thomas Harte
|
b8708b805c
|
The vertical blank flag now works again.
|
2016-05-17 22:02:57 -04:00 |
|
Thomas Harte
|
a1e63e8320
|
Attempted to generalise on pixel counter storage, at least. Further adjusted background timing but I'm still not sure.
|
2016-05-17 21:41:32 -04:00 |
|
Thomas Harte
|
ad6f405483
|
Fixed: was off by one on pixels, allowing four extra pixel output cycles per line.
|
2016-05-17 19:02:32 -04:00 |
|
Thomas Harte
|
c96674b341
|
Made genuine first approximate attempt at hmove.
|
2016-05-17 18:35:40 -04:00 |
|
Thomas Harte
|
d170bb14e6
|
Extended scheduling plans, inserted initial events for hmove, albeit not yet implemented.
|
2016-05-17 18:21:49 -04:00 |
|
Thomas Harte
|
6a961c4d28
|
Added something of the ball counter, but without yet a working HMOVE it's prone to error.
|
2016-05-17 07:18:14 -04:00 |
|
Thomas Harte
|
7d3cf76576
|
Generalised slightly, to allow events to be queued up to eight cycles in advance; most importantly each event gets to pick its own delay.
|
2016-05-17 07:09:18 -04:00 |
|
Thomas Harte
|
3d003070b3
|
Made an attempt better to generalise the idea of things with 4 CLK delays.
|
2016-05-16 21:54:27 -04:00 |
|
Thomas Harte
|
4ad074fc78
|
Introduced a four-cycle delay between playfield fetch and display, curing Yar's Revenge. Also disabled barrel roll scanling colouring again. I really need to make my mind up on that.
|
2016-05-16 19:55:56 -04:00 |
|
Thomas Harte
|
f19ed2e8f8
|
Started merely attempting to reintroduce the background layer.
|
2016-05-16 19:04:13 -04:00 |
|
Thomas Harte
|
9d92ad659f
|
Established the basic timing loop, albeit without clocking delays yet.
|
2016-05-16 08:01:29 -04:00 |
|
Thomas Harte
|
bf2932cd57
|
Merge pull request #16 from TomHarte/UniformSetters
Implemented deferred setting of shader uniforms
|
2016-05-15 15:22:06 -04:00 |
|
Thomas Harte
|
00a2b42080
|
Made thread-safe.
|
2016-05-15 15:19:52 -04:00 |
|
Thomas Harte
|
091516e3cb
|
The semantics might need better exposition but: fixed UniformXfv calls plus matrix calls, documented new semantics on all setters.
|
2016-05-15 14:59:59 -04:00 |
|
Thomas Harte
|
328fabcd10
|
Ensured values aren't dangling pointers.
|
2016-05-14 18:15:10 -04:00 |
|
Thomas Harte
|
492dc7ccbf
|
Made an attempt to queue uniform changes until the next call to bind . That's to allow usage from other threads.
|
2016-05-14 18:06:55 -04:00 |
|
Thomas Harte
|
cca53598d3
|
Made another run at 2600 colours.
|
2016-05-14 16:52:24 -04:00 |
|
Thomas Harte
|
30f335fa35
|
Switched pervasively to using the named slot uniform setters on Shader .
|
2016-05-13 22:08:32 -04:00 |
|
Thomas Harte
|
f487062c62
|
Merge pull request #15 from TomHarte/2600PAL
Adds an implementation of the PAL-region colour phase shift formula
|
2016-05-13 09:00:25 -04:00 |
|
Thomas Harte
|
8d52765f40
|
Realised why new shaders weren't taking. Very negligibly decreased Atari drawing cost.
|
2016-05-12 22:22:24 -04:00 |
|
Thomas Harte
|
6d65bc9b3a
|
Permitted a wider error window on vertical sync, tidied things up a little and started trying to move towards full implementation of the OpenGL contract.
|
2016-05-11 22:11:01 -04:00 |
|
Thomas Harte
|
4b3c4082d2
|
These functions appear correctly to model the NTSC and PAL palettes; the CRT's attempt to switch function doesn't work properly yet though.
|
2016-05-11 21:07:18 -04:00 |
|
Thomas Harte
|
93760bf8fa
|
Merge pull request #12 from TomHarte/FixedTests
Ensured that calling `return_from_subroutine` really does unjam the processor if required
|
2016-05-10 21:45:24 -04:00 |
|
Thomas Harte
|
e636ae37b4
|
Ensured that calling return_from_subroutine really does unjam the processor if required, causing all tests once again to pass.
|
2016-05-10 21:44:11 -04:00 |
|
Thomas Harte
|
5a4262d74e
|
Confirmed: it is inaccurate for a 6502 to self reset at power up. So that responsibility now rests in the machines.
|
2016-05-10 21:05:52 -04:00 |
|
Thomas Harte
|
fab59cbc64
|
Merge pull request #11 from TomHarte/SourceInstancing
Following the output run switch, switched also to instanced rendering for intermediate scans.
|
2016-05-10 20:00:32 -04:00 |
|
Thomas Harte
|
a8ce021136
|
Fixed comment.
|
2016-05-10 19:59:03 -04:00 |
|
Thomas Harte
|
0d2d6a452d
|
Fixed some dangling buffer management issues.
|
2016-05-10 19:55:34 -04:00 |
|
Thomas Harte
|
b6d2c8cb63
|
Switched to instaced drawing for source[/intermediate] runs too, reducing that data transfer footprint by 50%.
|
2016-05-10 19:50:12 -04:00 |
|
Thomas Harte
|
7369139f7e
|
Realised that phase time can fit inside a single byte, since it's always (well) within the first quarter of the line — and if it somehow weren't (?) then taking it modulo the frequency would do.
|
2016-05-10 19:14:57 -04:00 |
|