Thomas Harte
2e379b0834
Adds latching of scroll values.
2018-10-10 21:28:18 -04:00
Thomas Harte
f00f6c8c23
Allows the frame interrupt to be placed anywhere in the frame.
2018-10-10 21:07:39 -04:00
Thomas Harte
50e23f4a2e
Fixes 16px-high sprites.
2018-10-10 20:34:00 -04:00
Thomas Harte
acdc84e08c
Improves test slightly, and fixes line interrupt reload value setting.
2018-10-09 22:14:35 -04:00
Thomas Harte
c128ddb549
Introduces a first unit test for line interrupts and corrects backup behaviour.
2018-10-09 21:49:21 -04:00
Thomas Harte
dccf17e770
Makes a first serious attempt at Master System line interrupts.
2018-10-09 20:51:09 -04:00
Thomas Harte
2d8ab72e22
Fixed proper starting position for (interrupted) tile drawing.
2018-10-08 23:13:37 -04:00
Thomas Harte
748366c70e
Corrects buffer overrun when the horizontal scroll lock is on.
2018-10-08 23:06:22 -04:00
Thomas Harte
7a74fe2ff7
Corrects tile plotting window and eliminates a redundant local.
2018-10-08 22:56:31 -04:00
Thomas Harte
e410302237
Switches to real SMS line output composition.
...
Including setting the sprite collision bit.
2018-10-08 22:43:10 -04:00
Thomas Harte
bca2161a05
Fixes TMS text mode for the new addressing order.
2018-10-07 21:09:01 -04:00
Thomas Harte
5f789092be
Flips sprite priority in the temporary renderer.
...
The better to test other issues in the interim.
2018-10-07 19:16:35 -04:00
Thomas Harte
6975ed22c0
Doubles down on address-storage format, and implements the vertical scrolling lock.
2018-10-07 18:55:35 -04:00
Thomas Harte
24644f1dd1
Adds a low-pass filter, picked entirely by ear, and switches to composite output, at least for now.
2018-10-07 18:39:03 -04:00
Thomas Harte
3bead07043
Introduces proper indirection for sprite patterns.
...
This seems to work, so the onus is now back on the rendering loop.
2018-10-07 17:15:42 -04:00
Thomas Harte
ee20e42372
Makes initial attempt at collecting sprite contents.
...
With test plotting, indicating some sort of issue.
2018-10-07 16:53:25 -04:00
Thomas Harte
df411b4ede
Corrects storage of visible sprites.
2018-10-07 16:40:32 -04:00
Thomas Harte
bfb9d8ccb6
At least attempts to use proper addressing for sprite info fetches.
2018-10-07 14:32:20 -04:00
Thomas Harte
338aec2930
Groups background fetches and experimentally seeks to daub sprites as white.
2018-10-06 22:07:04 -04:00
Thomas Harte
e6510dc87b
Attempts to get at least as far as picking visible sprite indices.
2018-10-06 19:27:19 -04:00
Thomas Harte
76f3b9f6ba
Fixed: paging writes don't obstruct RAM.
2018-10-06 14:26:00 -04:00
Thomas Harte
7830cda912
Implements line querying and most of line interrupts.
2018-10-04 22:50:35 -04:00
Thomas Harte
aac97a8983
Re-revokes fine scroll on the top two lines when requested.
2018-10-04 19:18:15 -04:00
Thomas Harte
ca26dfcd61
Correct Master System palette writes.
2018-10-04 19:12:31 -04:00
Thomas Harte
858721a7a5
Added left border hiding.
2018-10-04 18:52:23 -04:00
Thomas Harte
89db1d6a6a
Switches to a more accurate means of left-padding.
2018-10-04 18:44:49 -04:00
Thomas Harte
de4e5c40aa
Implements horizontal scrolling lock.
2018-10-03 23:28:33 -04:00
Thomas Harte
05248ab990
Starts to reimplement Master System output.
2018-10-03 23:13:21 -04:00
Thomas Harte
252f47a425
Ensures no pixel output on line one before end, and adds a temporary debugging test.
2018-10-02 22:59:20 -04:00
Thomas Harte
be52b31b5c
Attempts fully to revive text mode.
2018-10-02 22:05:58 -04:00
Thomas Harte
23c3fa6993
Fixed: it's the SMS that has 8 sprites, not text mode (which has none).
2018-10-02 22:01:43 -04:00
Thomas Harte
499fc62187
Sets things up for implementation of the inner mode-specific logic.
2018-10-02 21:58:09 -04:00
Thomas Harte
1dd5272190
Ensures real-time output of all areas, to ensure proper palette response.
2018-10-02 21:18:28 -04:00
Thomas Harte
5361120353
Restores a stable frame.
2018-10-02 21:05:30 -04:00
Thomas Harte
60bab8fdf1
Starts to reformulate TMS collection as coroutines.
...
For the time being, thereby breaks all video. A static screen of the border colour is all you'll see.
2018-10-01 23:03:17 -04:00
Thomas Harte
cc99b0f532
Fixes typo.
2018-09-30 20:48:55 -04:00
Thomas Harte
91aa8f9295
Amps up colour content a little.
2018-09-30 20:47:26 -04:00
Thomas Harte
e9328d819e
Switches to RGB output, at least for development.
2018-09-30 20:47:03 -04:00
Thomas Harte
48ece623e7
Adds the Sega Master System to SConstruct.
2018-09-30 20:46:38 -04:00
Thomas Harte
23191efc05
Starts writing and referring to colour RAM for colours.
2018-09-29 19:50:13 -04:00
Thomas Harte
0d8af010b6
Takes a stab at tile reversal and vertical scrolling.
2018-09-28 22:37:10 -04:00
Thomas Harte
7b9bb772ca
Corrected to give a not-exactly-indexed-correctly approximation of what's on display.
2018-09-28 21:03:51 -04:00
Thomas Harte
f7e211c245
Makes first attempt to put something vaguely like the Master System tile map on screen.
2018-09-28 20:39:14 -04:00
Thomas Harte
43bcb6415b
Merge branch 'master' into MasterSystemVDP
2018-09-27 22:38:15 -04:00
Thomas Harte
15ec4aaa43
Merge pull request #554 from TomHarte/65C02s
...
Corrects Rockwell and WDC references.
2018-09-27 22:37:45 -04:00
Thomas Harte
364859467f
Corrects Rockwell and WDC references.
...
Also shuffles the NES CPU type up into the top position, so this is a strict progression in terms of functionality.
2018-09-27 22:36:45 -04:00
Thomas Harte
35c2e74af8
Attempts to establish a coroutine-ish structure for access patterns.
...
The Master System mode, inevitably, is the test case.
2018-09-27 22:33:41 -04:00
Thomas Harte
19482a563f
Attempts to explicitly make room for the SMS VDP mode.
2018-09-27 21:22:57 -04:00
Thomas Harte
2e4c4c3e91
Makes some attempt to implement paging.
...
This causes several of the 32kb games to be recognised by the BIOS and permitted to start, so it really really may be time to stop deferring work on the VDP.
2018-09-24 21:34:42 -04:00
Thomas Harte
7515fa8a98
Ensures the SG1000 gets an unadulterated TMS and SN.
2018-09-23 22:24:29 -04:00