1
0
mirror of https://github.com/livingcomputermuseum/ContrAlto.git synced 2026-03-07 19:21:46 +00:00

Initial commit of changes for 1.2.3. This includes:

- Scripting support: Allows for recording and playback of mouse/keyboard input and various system control actions.  Simple (i.e. basic) scripting format.

- Fix for stale packets left in ethernet input queue; packets received by pcap while Alto's receiver is off are discarded.

- Mouse input made more accurate, and tweaked to avoid Alto microcode bug that causes erroneous mouse inputs under very rare circumstances on real hardware, but much more frequently under emulation.

- Small code cleanup here and there.  Moved many UI strings to resources, many more to go.
This commit is contained in:
Josh Dersch
2018-03-20 14:16:07 -07:00
parent 6f20ebbfe7
commit d96d232fd3
39 changed files with 2733 additions and 510 deletions

View File

@@ -143,7 +143,7 @@ namespace Contralto.Display
/// <param name="timeNsec"></param>
/// <param name="skewNsec"></param>
/// <param name="context"></param>
private void VerticalBlankScanlineCallback(ulong timeNsec, ulong skewNsec, object context)
private void VerticalBlankScanlineCallback(ulong skewNsec, object context)
{
// End of VBlank scanline.
_vblankScanlineCount++;
@@ -189,7 +189,7 @@ namespace Contralto.Display
/// <param name="timeNsec"></param>
/// <param name="skewNsec"></param>
/// <param name="context"></param>
private void HorizontalBlankEndCallback(ulong timeNsec, ulong skewNsec, object context)
private void HorizontalBlankEndCallback(ulong skewNsec, object context)
{
// Reset scanline word counter
_word = 0;
@@ -220,7 +220,7 @@ namespace Contralto.Display
/// <param name="timeNsec"></param>
/// <param name="skewNsec"></param>
/// <param name="context"></param>
private void WordCallback(ulong timeNsec, ulong skewNsec, object context)
private void WordCallback(ulong skewNsec, object context)
{
if (_display == null)
{
@@ -254,11 +254,11 @@ namespace Contralto.Display
_display.DrawCursorWord(_scanline, _cursorXLatched, _whiteOnBlack, _cursorRegLatched);
}
_scanline += 2;
_scanline += 2;
if (_scanline >= 808)
{
// Done with field.
// Done with field.
// Draw the completed field to the emulated display.
_display.Render();
@@ -271,7 +271,7 @@ namespace Contralto.Display
// More scanlines to do.
// Run CURT and MRT at end of scanline
_system.CPU.WakeupTask(TaskType.Cursor);
_system.CPU.WakeupTask(TaskType.Cursor);
_system.CPU.WakeupTask(TaskType.MemoryRefresh);
// Schedule HBlank wakeup for end of next HBlank