Thomas Harte
|
bbccc5d6d6
|
Route other holdover TMS modes through the Yamaha logic.
|
2023-02-16 22:07:18 -05:00 |
|
Thomas Harte
|
dbfc9a14aa
|
Introduce SMS fetcher, eliminating all macros.
|
2023-02-16 22:01:20 -05:00 |
|
Thomas Harte
|
9630a1bc39
|
Use a fetcher for character modes.
|
2023-02-16 13:15:18 -05:00 |
|
Thomas Harte
|
3847c9c281
|
Add missing underscore.
|
2023-02-15 21:22:51 -05:00 |
|
Thomas Harte
|
3f2a5929a3
|
Consolidate text output and support blinking; add sprites-enabled flag.
|
2023-02-15 20:18:56 -05:00 |
|
Thomas Harte
|
9b71f42375
|
Collect colours.
|
2023-02-14 21:18:10 -05:00 |
|
Thomas Harte
|
9c43776392
|
Fix 80-column address generation.
|
2023-02-14 21:14:35 -05:00 |
|
Thomas Harte
|
35a0a1447e
|
Further clarify different usages of storage.
|
2023-02-14 20:23:17 -05:00 |
|
Thomas Harte
|
bf0ed2813c
|
Make faulty attempt at 80-column text.
|
2023-02-14 20:13:51 -05:00 |
|
Thomas Harte
|
5c7367b262
|
Route Yamaha 40-column text mode appropriately.
|
2023-02-13 22:24:39 -05:00 |
|
Thomas Harte
|
c1457cc5e0
|
Attempt text mode data collection.
|
2023-02-13 22:20:47 -05:00 |
|
Thomas Harte
|
169d7a7418
|
Fix[/revert]: the fetch pointer should be _ahead_.
|
2023-02-13 21:10:14 -05:00 |
|
Thomas Harte
|
5143960970
|
Add notes to self on how to collect text.
|
2023-02-13 21:09:31 -05:00 |
|
Thomas Harte
|
40894964bc
|
Move VerticalState to live with ScreenMode and FetchMode.
|
2023-02-13 09:54:29 -05:00 |
|
Thomas Harte
|
927e61484f
|
Map all events lists appropriately.
|
2023-02-12 23:02:51 -05:00 |
|
Thomas Harte
|
dce04e7219
|
Add a generator for character modes.
|
2023-02-12 22:54:08 -05:00 |
|
Thomas Harte
|
f5814b4c75
|
Add text-mode events list.
|
2023-02-12 22:45:11 -05:00 |
|
Thomas Harte
|
815a75d9b6
|
Extend generator to handle sprite collection.
|
2023-02-12 22:28:34 -05:00 |
|
Thomas Harte
|
4ad84e5047
|
Use generator for no-sprite events list.
|
2023-02-12 22:12:23 -05:00 |
|
Thomas Harte
|
8665dca7f0
|
Permit generator-based event-table generation.
|
2023-02-12 21:58:50 -05:00 |
|
Thomas Harte
|
41d57e03a6
|
Split out LineBuffer and Storage to make 9918Base more manageable.
|
2023-02-12 12:58:46 -05:00 |
|
Thomas Harte
|
914a9e0c84
|
Yamaha: don't touch address at all unless a RAM access.
|
2023-02-11 22:43:29 -05:00 |
|
Thomas Harte
|
8768ee1504
|
Merge branch 'MSX2' of github.com:TomHarte/CLK into MSX2
|
2023-02-11 22:40:03 -05:00 |
|
Thomas Harte
|
8e6c36bb15
|
Yamaha: don't part-modify address.
|
2023-02-11 10:35:42 -05:00 |
|
Thomas Harte
|
c6401f0444
|
Add TODO.
|
2023-02-07 22:28:18 -05:00 |
|
Thomas Harte
|
3c3efe3e22
|
Don't be so fussy.
|
2023-02-06 22:16:42 -05:00 |
|
Thomas Harte
|
7028bdd05d
|
Limit to 14 bits in old modes.
|
2023-02-06 22:16:31 -05:00 |
|
Thomas Harte
|
7cb51c021b
|
Observation: offset is needed only ephemerally.
|
2023-02-06 21:45:35 -05:00 |
|
Thomas Harte
|
a3df106f92
|
Reset write phase only upon traditional register accesses.
|
2023-02-06 20:32:24 -05:00 |
|
Thomas Harte
|
b538407386
|
Introduce separate state for palette entries.
|
2023-02-06 19:12:02 -05:00 |
|
Thomas Harte
|
c04d292c8e
|
Make this more obviously correct, albeit arbitrarily.
Comparing just a single bit would do.
|
2023-02-05 22:53:08 -05:00 |
|
Thomas Harte
|
f9c88fd598
|
Fix memory mask; mildly improve commentary.
|
2023-02-05 22:51:16 -05:00 |
|
Thomas Harte
|
7fcb1b29dd
|
Keep source within rectangle.
This gives something vaguely recognisable, sort of, for the test program I'm using.
|
2023-02-04 21:37:08 -05:00 |
|
Thomas Harte
|
6786e3e78c
|
Initialise to zero, for completeness.
|
2023-02-04 21:32:31 -05:00 |
|
Thomas Harte
|
67755c3811
|
Attempt [H/L]MMM.
|
2023-02-04 21:29:44 -05:00 |
|
Thomas Harte
|
c6372295c5
|
Complete ReadSourcePixel & ReadSourceByte paths.
|
2023-02-04 21:23:41 -05:00 |
|
Thomas Harte
|
a2786e6266
|
Invest Colour with its own logic, including potential emptiness.
|
2023-02-04 21:14:20 -05:00 |
|
Thomas Harte
|
a892523c09
|
Advance to the next breaking point.
|
2023-02-04 11:43:06 -05:00 |
|
Thomas Harte
|
ab595f5e8d
|
Merge branch 'MSX2' of github.com:TomHarte/CLK into MSX2
|
2023-02-04 11:02:10 -05:00 |
|
Thomas Harte
|
38950fe241
|
Sketch out remaining necessary @c AccessTypes.
|
2023-02-04 11:02:02 -05:00 |
|
Thomas Harte
|
46d009f27b
|
Add logical fill.
|
2023-02-04 10:31:41 -05:00 |
|
Thomas Harte
|
34722bae89
|
Start pivoting to a more natural expression of TMS patterns.
|
2023-02-03 23:06:27 -05:00 |
|
Thomas Harte
|
d41081c59f
|
Fix sections.
|
2023-02-02 21:55:00 -05:00 |
|
Thomas Harte
|
ec227ce021
|
Generalise rectangular operations.
|
2023-02-02 21:49:05 -05:00 |
|
Thomas Harte
|
83f6d1cda3
|
Prepare for source/destination operations.
|
2023-02-02 21:16:24 -05:00 |
|
Thomas Harte
|
6d315b4660
|
Switch to specifying number of bits, to reduce potential error.
|
2023-02-02 12:12:11 -05:00 |
|
Thomas Harte
|
debdad350d
|
Don't allow a disabled screen to interfere with Yamaha addressing.
|
2023-02-02 12:03:33 -05:00 |
|
Thomas Harte
|
0d4dc214fb
|
Merge branch 'MSX2' of github.com:TomHarte/CLK into MSX2
|
2023-02-02 11:38:45 -05:00 |
|
Thomas Harte
|
5d4c49c913
|
Attempt to enable high-speed fill.
|
2023-02-01 22:57:33 -05:00 |
|
Thomas Harte
|
8f5c7fcabc
|
Merge branch 'MSX2' of github.com:TomHarte/CLK into MSX2
|
2023-02-01 22:25:12 -05:00 |
|
Thomas Harte
|
115acf835e
|
Vertical state is actually tristate.
|
2023-02-01 22:25:00 -05:00 |
|
Thomas Harte
|
c0fec8db15
|
Clean up macro.
|
2023-02-01 15:05:21 -05:00 |
|
Thomas Harte
|
f0e70f18fd
|
Fix seeding of output_pointer_.
|
2023-02-01 14:59:42 -05:00 |
|
Thomas Harte
|
9d2841bf6a
|
Reenable full ram pointer capture. Thanks @PatrickvL !
|
2023-02-01 14:55:33 -05:00 |
|
Thomas Harte
|
4cc34fd557
|
Resolve GCC complaint.
|
2023-02-01 14:28:19 -05:00 |
|
Thomas Harte
|
3636383b1f
|
Silence abstract/non-virtual-destructor warning.
|
2023-02-01 14:20:11 -05:00 |
|
Thomas Harte
|
1264600bab
|
Shorten long lines.
|
2023-02-01 14:18:36 -05:00 |
|
Thomas Harte
|
002d27d9c2
|
Resolve various type conversion errors, and reduce duplication.
|
2023-02-01 14:17:49 -05:00 |
|
Thomas Harte
|
90e8ce3253
|
Fix lines.
TODO: determine whether I really need `location` as distinct from `.destination`.
|
2023-01-31 21:33:57 -05:00 |
|
Thomas Harte
|
a315384e30
|
Provide context for byte-by-byte commands.
|
2023-01-31 21:29:55 -05:00 |
|
Thomas Harte
|
c5c722ae56
|
Generalise axis steps; begin HMMV.
|
2023-01-31 13:35:39 -05:00 |
|
Thomas Harte
|
872b9e5021
|
Predict Yamaha horizontal retrace interrupts.
|
2023-01-30 21:33:47 -05:00 |
|
Thomas Harte
|
492a170b20
|
Implement much of Yamaha line interrupts.
|
2023-01-30 21:24:53 -05:00 |
|
Thomas Harte
|
30a2b1611f
|
Merge branch 'MSX2' of github.com:TomHarte/CLK into MSX2
|
2023-01-30 21:06:23 -05:00 |
|
Thomas Harte
|
29af5542f8
|
Make an effort at doing _something_ for G4.
|
2023-01-30 21:06:04 -05:00 |
|
Thomas Harte
|
bc4c54800e
|
Type out just a little of status register 1.
|
2023-01-30 20:20:33 -05:00 |
|
Thomas Harte
|
8f20cb93e9
|
Note missed status accesses.
|
2023-01-29 21:20:50 -05:00 |
|
Thomas Harte
|
73e79b14ea
|
Use Yamaha palette pervasively.
|
2023-01-29 21:17:00 -05:00 |
|
Thomas Harte
|
3142f5c21d
|
Be overt about what replaces LineMode.
|
2023-01-29 21:04:15 -05:00 |
|
Thomas Harte
|
6d7f189ce7
|
Attempt the full panoply of logical pixel modes, across all graphics modes.
|
2023-01-29 18:28:49 -05:00 |
|
Thomas Harte
|
a91a5b8d07
|
Refer to actual field.
|
2023-01-29 18:02:09 -05:00 |
|
Thomas Harte
|
4cdcd3ac7d
|
Retain logical operation, take colour combination outside the loop.
|
2023-01-29 13:29:19 -05:00 |
|
Thomas Harte
|
0576451102
|
Be overt about colour direction.
|
2023-01-29 13:22:56 -05:00 |
|
Thomas Harte
|
3f12a28f4f
|
Locate first pixel correctly.
|
2023-01-28 22:50:04 -05:00 |
|
Thomas Harte
|
41ba883fb6
|
Honour direction, start transfer immediately.
|
2023-01-28 22:47:27 -05:00 |
|
Thomas Harte
|
1e646eb57b
|
Improve transfer flag for LMMC.
|
2023-01-28 21:45:05 -05:00 |
|
Thomas Harte
|
2d6afe1013
|
Reduce repetition, tidy slightly.
|
2023-01-28 21:43:14 -05:00 |
|
Thomas Harte
|
d3c446d91b
|
Take a shot at LMMC.
|
2023-01-28 21:30:45 -05:00 |
|
Thomas Harte
|
975ead5d01
|
Edge towards not assuming graphics mode. Much more to do here.
|
2023-01-28 13:54:26 -05:00 |
|
Thomas Harte
|
c6cda7c401
|
Switch to absolute placement of deferred events; properly serialise commands.
|
2023-01-28 11:55:12 -05:00 |
|
Thomas Harte
|
7e69e33ec2
|
Use paletted Yamaha border colour.
|
2023-01-27 22:42:02 -05:00 |
|
Thomas Harte
|
95e00dd958
|
Take slightly wrong-headed steps towards proper command timing.
|
2023-01-27 22:20:36 -05:00 |
|
Thomas Harte
|
8a673a697b
|
Further adapt internal terminology.
|
2023-01-27 12:30:09 -05:00 |
|
Thomas Harte
|
75ad4cdb67
|
Fix line semantics.
|
2023-01-27 11:57:40 -05:00 |
|
Thomas Harte
|
d42b6df570
|
Retain extra pattern name address bits.
|
2023-01-27 06:44:11 -05:00 |
|
Thomas Harte
|
81b00c6d97
|
Add notes.
|
2023-01-26 22:25:10 -05:00 |
|
Thomas Harte
|
1e5f751bc0
|
Require STOP in order to stop.
|
2023-01-26 22:08:36 -05:00 |
|
Thomas Harte
|
9a65fffe16
|
That's PSET, not POINT.
|
2023-01-26 22:02:40 -05:00 |
|
Thomas Harte
|
515fa22bfe
|
Implement point.
|
2023-01-26 21:52:41 -05:00 |
|
Thomas Harte
|
66ac089cc2
|
Deallocate.
|
2023-01-26 21:49:32 -05:00 |
|
Thomas Harte
|
5d5098acb2
|
Hack in vertical scrolling.
|
2023-01-26 21:38:51 -05:00 |
|
Thomas Harte
|
1bf8406e7e
|
Correct deserialisation order.
|
2023-01-26 21:34:56 -05:00 |
|
Thomas Harte
|
75acbd2d6c
|
A quick hack shows some part of the MSX logo.
|
2023-01-26 21:31:49 -05:00 |
|
Thomas Harte
|
baa6f9b3cd
|
Implements the Command side of the line command.
|
2023-01-26 21:17:11 -05:00 |
|
Thomas Harte
|
1c6a0ad3f7
|
Clean up repetition.
|
2023-01-26 19:51:56 -05:00 |
|
Thomas Harte
|
fbfa26ad5e
|
Minor steps towards implementing Line .
|
2023-01-26 12:55:08 -05:00 |
|
Thomas Harte
|
b12fd00145
|
Generate an appropriate instance for line drawing.
|
2023-01-26 12:09:06 -05:00 |
|
Thomas Harte
|
0c8815d6a0
|
Retain command-engine context.
|
2023-01-26 11:59:27 -05:00 |
|
Thomas Harte
|
700470915a
|
Add pixel serialisation for Yamaha graphics mode 5.
|
2023-01-24 23:07:29 -05:00 |
|
Thomas Harte
|
f8b42d4107
|
While being lazy with types, implement 4/5/6/7 fetching.
|
2023-01-24 13:15:00 -05:00 |
|