1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-11-26 23:52:26 +00:00

Sketch out remaining necessary @c AccessTypes.

This commit is contained in:
Thomas Harte 2023-02-04 11:02:02 -05:00
parent d41081c59f
commit 38950fe241

View File

@ -73,15 +73,27 @@ struct Command {
// from or writing to @c value. It should not be performed until at least // from or writing to @c value. It should not be performed until at least
// @c cycles have passed. // @c cycles have passed.
enum class AccessType { enum class AccessType {
/// Plots a single pixel of the current contextual colour at @c location, /// Plots a single pixel of the current contextual colour at @c destination,
/// which occurs as a read, then a 24-cycle pause, then a write. /// which occurs as a read, then a 24-cycle gap, then a write.
PlotPoint, PlotPoint,
/// Blocks until the next CPU write to the colour register. /// Blocks until the next CPU write to the colour register.
WaitForColourReceipt, WaitForColourReceipt,
/// Writes an entire byte to the location containing the current @c location. /// Writes an entire byte to the address containing the current @c destination.
WriteByte, WriteByte,
/// Copies a single pixel from @c source location to @c destination,
/// being a read, a 32-cycle gap, then a PlotPoint.
CopyPoint,
/// Copies a complete byte from @c source location to @c destination,
/// being a read, a 24-cycle gap, then a write.
CopyByte,
// ReadPoint,
// ReadByte,
// WaitForColourSend,
}; };
AccessType access = AccessType::PlotPoint; AccessType access = AccessType::PlotPoint;
int cycles = 0; int cycles = 0;