mirror of
https://github.com/TomHarte/CLK.git
synced 2025-08-09 05:25:01 +00:00
Merge pull request #439 from TomHarte/ASCII
Eliminates all non-ASCII codes from all crossplatform code
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 07/05/2018.
|
// Created by Thomas Harte on 07/05/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ActivityObserver_h
|
#ifndef ActivityObserver_h
|
||||||
@@ -15,7 +15,7 @@ namespace Activity {
|
|||||||
|
|
||||||
/*!
|
/*!
|
||||||
Provides a purely virtual base class for anybody that wants to receive notifications of
|
Provides a purely virtual base class for anybody that wants to receive notifications of
|
||||||
'activity' — any feedback from an emulated system which a user could perceive other than
|
'activity': any feedback from an emulated system which a user could perceive other than
|
||||||
through the machine's native audio and video outputs.
|
through the machine's native audio and video outputs.
|
||||||
|
|
||||||
So: status LEDs, drive activity, etc. A receiver may choose to make appropriate noises
|
So: status LEDs, drive activity, etc. A receiver may choose to make appropriate noises
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 07/05/2018.
|
// Created by Thomas Harte on 07/05/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ActivitySource_h
|
#ifndef ActivitySource_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/01/2018.
|
// Created by Thomas Harte on 21/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "ConfidenceCounter.hpp"
|
#include "ConfidenceCounter.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/01/2018.
|
// Created by Thomas Harte on 21/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ConfidenceCounter_hpp
|
#ifndef ConfidenceCounter_hpp
|
||||||
@@ -24,10 +24,10 @@ class ConfidenceCounter: public ConfidenceSource {
|
|||||||
/*! @returns The computed probability, based on the history of events. */
|
/*! @returns The computed probability, based on the history of events. */
|
||||||
float get_confidence() override;
|
float get_confidence() override;
|
||||||
|
|
||||||
/*! Records an event that implies this is the appropriate class — pushes probability up towards 1.0. */
|
/*! Records an event that implies this is the appropriate class: pushes probability up towards 1.0. */
|
||||||
void add_hit();
|
void add_hit();
|
||||||
|
|
||||||
/*! Records an event that implies this is not the appropriate class — pushes probability down towards 0.0. */
|
/*! Records an event that implies this is not the appropriate class: pushes probability down towards 0.0. */
|
||||||
void add_miss();
|
void add_miss();
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/01/2018.
|
// Created by Thomas Harte on 21/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ConfidenceSource_hpp
|
#ifndef ConfidenceSource_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/01/2018.
|
// Created by Thomas Harte on 21/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "ConfidenceSummary.hpp"
|
#include "ConfidenceSummary.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/01/2018.
|
// Created by Thomas Harte on 21/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ConfidenceSummary_hpp
|
#ifndef ConfidenceSummary_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/01/2018.
|
// Created by Thomas Harte on 29/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiCRTMachine.hpp"
|
#include "MultiCRTMachine.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/01/2018.
|
// Created by Thomas Harte on 29/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiCRTMachine_hpp
|
#ifndef MultiCRTMachine_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/02/2018.
|
// Created by Thomas Harte on 09/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiConfigurable.hpp"
|
#include "MultiConfigurable.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/02/2018.
|
// Created by Thomas Harte on 09/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiConfigurable_hpp
|
#ifndef MultiConfigurable_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/01/2018.
|
// Created by Thomas Harte on 29/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiConfigurationTarget.hpp"
|
#include "MultiConfigurationTarget.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/01/2018.
|
// Created by Thomas Harte on 29/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiConfigurationTarget_hpp
|
#ifndef MultiConfigurationTarget_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/02/2018.
|
// Created by Thomas Harte on 09/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiJoystickMachine.hpp"
|
#include "MultiJoystickMachine.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/02/2018.
|
// Created by Thomas Harte on 09/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiJoystickMachine_hpp
|
#ifndef MultiJoystickMachine_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/02/2018.
|
// Created by Thomas Harte on 09/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiKeyboardMachine.hpp"
|
#include "MultiKeyboardMachine.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/02/2018.
|
// Created by Thomas Harte on 09/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiKeyboardMachine_hpp
|
#ifndef MultiKeyboardMachine_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 18/02/2018.
|
// Created by Thomas Harte on 18/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiSpeaker.hpp"
|
#include "MultiSpeaker.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 18/02/2018.
|
// Created by Thomas Harte on 18/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiSpeaker_hpp
|
#ifndef MultiSpeaker_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 28/01/2018.
|
// Created by Thomas Harte on 28/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "MultiMachine.hpp"
|
#include "MultiMachine.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 28/01/2018.
|
// Created by Thomas Harte on 28/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef MultiMachine_hpp
|
#ifndef MultiMachine_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 24/01/2018.
|
// Created by Thomas Harte on 24/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Machines_h
|
#ifndef Machines_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 18/09/2016.
|
// Created by Thomas Harte on 18/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Disk.hpp"
|
#include "Disk.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 18/09/2016.
|
// Created by Thomas Harte on 18/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Acorn_Disk_hpp
|
#ifndef StaticAnalyser_Acorn_Disk_hpp
|
||||||
@@ -16,7 +16,7 @@ namespace Analyser {
|
|||||||
namespace Static {
|
namespace Static {
|
||||||
namespace Acorn {
|
namespace Acorn {
|
||||||
|
|
||||||
/// Describes a DFS- or ADFS-format catalogue(/directory) — the list of files available and the catalogue's boot option.
|
/// Describes a DFS- or ADFS-format catalogue(/directory): the list of files available and the catalogue's boot option.
|
||||||
struct Catalogue {
|
struct Catalogue {
|
||||||
std::string name;
|
std::string name;
|
||||||
std::vector<File> files;
|
std::vector<File> files;
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 18/09/2016.
|
// Created by Thomas Harte on 18/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Acorn_File_hpp
|
#ifndef StaticAnalyser_Acorn_File_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/08/2016.
|
// Created by Thomas Harte on 29/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
@@ -50,7 +50,7 @@ static std::vector<std::shared_ptr<Storage::Cartridge::Cartridge>>
|
|||||||
// 1/(2^32) *
|
// 1/(2^32) *
|
||||||
// ( ((2^24)-1)/(2^24)*(1/4) + 1/(2^24) ) *
|
// ( ((2^24)-1)/(2^24)*(1/4) + 1/(2^24) ) *
|
||||||
// 1/4
|
// 1/4
|
||||||
// = something very improbable — around 1/16th of 1 in 2^32, but not exactly.
|
// = something very improbable, around 1/16th of 1 in 2^32, but not exactly.
|
||||||
acorn_cartridges.push_back(cartridge);
|
acorn_cartridges.push_back(cartridge);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/08/2016.
|
// Created by Thomas Harte on 29/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Acorn_StaticAnalyser_hpp
|
#ifndef StaticAnalyser_Acorn_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/08/2016.
|
// Created by Thomas Harte on 29/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Tape.hpp"
|
#include "Tape.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 29/08/2016.
|
// Created by Thomas Harte on 29/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Acorn_Tape_hpp
|
#ifndef StaticAnalyser_Acorn_Tape_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/03/2018.
|
// Created by Thomas Harte on 09/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_Acorn_Target_h
|
#ifndef Analyser_Static_Acorn_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 30/07/2017.
|
// Created by Thomas Harte on 30/07/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 30/07/2017.
|
// Created by Thomas Harte on 30/07/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_AmstradCPC_StaticAnalyser_hpp
|
#ifndef Analyser_Static_AmstradCPC_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/03/2018.
|
// Created by Thomas Harte on 09/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_AmstradCPC_Target_h
|
#ifndef Analyser_Static_AmstradCPC_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 14/04/2018.
|
// Created by Thomas Harte on 14/04/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 14/04/2018.
|
// Created by Thomas Harte on 14/04/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_AppleII_StaticAnalyser_hpp
|
#ifndef Analyser_Static_AppleII_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/04/2018.
|
// Created by Thomas Harte on 21/04/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Target_h
|
#ifndef Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 15/09/2016.
|
// Created by Thomas Harte on 15/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 15/09/2016.
|
// Created by Thomas Harte on 15/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Atari_StaticAnalyser_hpp
|
#ifndef StaticAnalyser_Atari_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/03/2018.
|
// Created by Thomas Harte on 09/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_Atari_Target_h
|
#ifndef Analyser_Static_Atari_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 23/02/2018.
|
// Created by Thomas Harte on 23/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 23/02/2018.
|
// Created by Thomas Harte on 23/02/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Coleco_StaticAnalyser_hpp
|
#ifndef StaticAnalyser_Coleco_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 13/09/2016.
|
// Created by Thomas Harte on 13/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Disk.hpp"
|
#include "Disk.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 13/09/2016.
|
// Created by Thomas Harte on 13/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Commodore_Disk_hpp
|
#ifndef StaticAnalyser_Commodore_Disk_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 10/09/2016.
|
// Created by Thomas Harte on 10/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "File.hpp"
|
#include "File.hpp"
|
||||||
@@ -21,7 +21,7 @@ bool Analyser::Static::Commodore::File::is_basic() {
|
|||||||
// [4 bytes: address of start of next line]
|
// [4 bytes: address of start of next line]
|
||||||
// [4 bytes: this line number]
|
// [4 bytes: this line number]
|
||||||
// ... null-terminated code ...
|
// ... null-terminated code ...
|
||||||
// (with a next line address of 0000 indicating end of program)ß
|
// (with a next line address of 0000 indicating end of program)
|
||||||
while(1) {
|
while(1) {
|
||||||
if(static_cast<size_t>(line_address - starting_address) >= data.size() + 2) break;
|
if(static_cast<size_t>(line_address - starting_address) >= data.size() + 2) break;
|
||||||
|
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 10/09/2016.
|
// Created by Thomas Harte on 10/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef File_hpp
|
#ifndef File_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 06/09/2016.
|
// Created by Thomas Harte on 06/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 06/09/2016.
|
// Created by Thomas Harte on 06/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Commodore_StaticAnalyser_hpp
|
#ifndef StaticAnalyser_Commodore_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 24/08/2016.
|
// Created by Thomas Harte on 24/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Tape.hpp"
|
#include "Tape.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 24/08/2016.
|
// Created by Thomas Harte on 24/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Commodore_Tape_hpp
|
#ifndef StaticAnalyser_Commodore_Tape_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/03/2018.
|
// Created by Thomas Harte on 09/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_Commodore_Target_h
|
#ifndef Analyser_Static_Commodore_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 10/11/2016.
|
// Created by Thomas Harte on 10/11/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "6502.hpp"
|
#include "6502.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 10/11/2016.
|
// Created by Thomas Harte on 10/11/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Disassembler_6502_hpp
|
#ifndef StaticAnalyser_Disassembler_6502_hpp
|
||||||
@@ -21,7 +21,7 @@ namespace Static {
|
|||||||
namespace MOS6502 {
|
namespace MOS6502 {
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Describes a 6502 instruciton — its address, the operation it performs, its addressing mode
|
Describes a 6502 instruciton: its address, the operation it performs, its addressing mode
|
||||||
and its operand, if any.
|
and its operand, if any.
|
||||||
*/
|
*/
|
||||||
struct Instruction {
|
struct Instruction {
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 30/12/2017.
|
// Created by Thomas Harte on 30/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "AddressMapper.hpp"
|
#include "AddressMapper.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 30/12/2017.
|
// Created by Thomas Harte on 30/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef AddressMapper_hpp
|
#ifndef AddressMapper_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 31/12/2017.
|
// Created by Thomas Harte on 31/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Kernel_hpp
|
#ifndef Kernel_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 30/12/2017.
|
// Created by Thomas Harte on 30/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Z80.hpp"
|
#include "Z80.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 30/12/2017.
|
// Created by Thomas Harte on 30/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Disassembler_Z80_hpp
|
#ifndef StaticAnalyser_Disassembler_Z80_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 03/05/2018.
|
// Created by Thomas Harte on 03/05/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 03/05/2018.
|
// Created by Thomas Harte on 03/05/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_DiskII_StaticAnalyser_hpp
|
#ifndef Analyser_Static_DiskII_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/01/2018.
|
// Created by Thomas Harte on 25/01/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Cartridge_hpp
|
#ifndef Cartridge_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/11/2017.
|
// Created by Thomas Harte on 25/11/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/11/2017.
|
// Created by Thomas Harte on 25/11/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_MSX_StaticAnalyser_hpp
|
#ifndef StaticAnalyser_MSX_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/12/2017.
|
// Created by Thomas Harte on 25/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Tape.hpp"
|
#include "Tape.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/12/2017.
|
// Created by Thomas Harte on 25/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_MSX_Tape_hpp
|
#ifndef StaticAnalyser_MSX_Tape_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 02/04/2018.
|
// Created by Thomas Harte on 02/04/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_MSX_Target_h
|
#ifndef Analyser_Static_MSX_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 11/10/2016.
|
// Created by Thomas Harte on 11/10/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 11/10/2016.
|
// Created by Thomas Harte on 11/10/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Oric_StaticAnalyser_hpp
|
#ifndef StaticAnalyser_Oric_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 06/11/2016.
|
// Created by Thomas Harte on 06/11/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "Tape.hpp"
|
#include "Tape.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 06/11/2016.
|
// Created by Thomas Harte on 06/11/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_Oric_Tape_hpp
|
#ifndef StaticAnalyser_Oric_Tape_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/03/2018.
|
// Created by Thomas Harte on 09/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_Oric_Target_h
|
#ifndef Analyser_Static_Oric_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 23/08/2016.
|
// Created by Thomas Harte on 23/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 23/08/2016.
|
// Created by Thomas Harte on 23/08/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef StaticAnalyser_hpp
|
#ifndef StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 04/06/2017.
|
// Created by Thomas Harte on 04/06/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "StaticAnalyser.hpp"
|
#include "StaticAnalyser.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 04/06/2017.
|
// Created by Thomas Harte on 04/06/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_ZX8081_StaticAnalyser_hpp
|
#ifndef Analyser_Static_ZX8081_StaticAnalyser_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 09/03/2018.
|
// Created by Thomas Harte on 09/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Analyser_Static_ZX8081_Target_h
|
#ifndef Analyser_Static_ZX8081_Target_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 22/07/2017.
|
// Created by Thomas Harte on 22/07/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ClockReceiver_hpp
|
#ifndef ClockReceiver_hpp
|
||||||
@@ -121,7 +121,7 @@ template <class T> class WrappedInt {
|
|||||||
inline int as_int() const { return length_; }
|
inline int as_int() const { return length_; }
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Severs from @c this the effect of dividing by @c divisor — @c this will end up with
|
Severs from @c this the effect of dividing by @c divisor; @c this will end up with
|
||||||
the value of @c this modulo @c divisor and @c divided by @c divisor is returned.
|
the value of @c this modulo @c divisor and @c divided by @c divisor is returned.
|
||||||
*/
|
*/
|
||||||
inline T divide(const T &divisor) {
|
inline T divide(const T &divisor) {
|
||||||
@@ -147,7 +147,7 @@ template <class T> class WrappedInt {
|
|||||||
int length_;
|
int length_;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Describes an integer number of whole cycles — pairs of clock signal transitions.
|
/// Describes an integer number of whole cycles: pairs of clock signal transitions.
|
||||||
class Cycles: public WrappedInt<Cycles> {
|
class Cycles: public WrappedInt<Cycles> {
|
||||||
public:
|
public:
|
||||||
inline Cycles(int l) : WrappedInt<Cycles>(l) {}
|
inline Cycles(int l) : WrappedInt<Cycles>(l) {}
|
||||||
@@ -155,7 +155,7 @@ class Cycles: public WrappedInt<Cycles> {
|
|||||||
inline Cycles(const Cycles &cycles) : WrappedInt<Cycles>(cycles.length_) {}
|
inline Cycles(const Cycles &cycles) : WrappedInt<Cycles>(cycles.length_) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Describes an integer number of half cycles — single clock signal transitions.
|
/// Describes an integer number of half cycles: single clock signal transitions.
|
||||||
class HalfCycles: public WrappedInt<HalfCycles> {
|
class HalfCycles: public WrappedInt<HalfCycles> {
|
||||||
public:
|
public:
|
||||||
inline HalfCycles(int l) : WrappedInt<HalfCycles>(l) {}
|
inline HalfCycles(int l) : WrappedInt<HalfCycles>(l) {}
|
||||||
@@ -184,7 +184,7 @@ class HalfCycles: public WrappedInt<HalfCycles> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Severs from @c this the effect of dividing by @c divisor — @c this will end up with
|
Severs from @c this the effect of dividing by @c divisor; @c this will end up with
|
||||||
the value of @c this modulo @c divisor and @c divided by @c divisor is returned.
|
the value of @c this modulo @c divisor and @c divided by @c divisor is returned.
|
||||||
*/
|
*/
|
||||||
inline Cycles divide_cycles(const Cycles &divisor) {
|
inline Cycles divide_cycles(const Cycles &divisor) {
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 01/08/2017.
|
// Created by Thomas Harte on 01/08/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef ForceInline_hpp
|
#ifndef ForceInline_hpp
|
||||||
|
@@ -3,14 +3,14 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 20/08/2017.
|
// Created by Thomas Harte on 20/08/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef Sleeper_hpp
|
#ifndef Sleeper_hpp
|
||||||
#define Sleeper_hpp
|
#define Sleeper_hpp
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
A sleeper is any component that sometimes requires a clock but at other times is 'asleep' — i.e. is not doing
|
A sleeper is any component that sometimes requires a clock but at other times is 'asleep', i.e. is not doing
|
||||||
any clock-derived work, so needn't receive a clock. A disk controller is an archetypal example.
|
any clock-derived work, so needn't receive a clock. A disk controller is an archetypal example.
|
||||||
|
|
||||||
A sleeper will signal sleeps and wakes to an observer.
|
A sleeper will signal sleeps and wakes to an observer.
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 21/03/2018.
|
// Created by Thomas Harte on 21/03/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef TimeTypes_h
|
#ifndef TimeTypes_h
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 17/09/2016.
|
// Created by Thomas Harte on 17/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "1770.hpp"
|
#include "1770.hpp"
|
||||||
@@ -522,7 +522,7 @@ void WD1770::posit_event(int new_event_type) {
|
|||||||
type2_write_loop:
|
type2_write_loop:
|
||||||
/*
|
/*
|
||||||
This deviates from the data sheet slightly since that would prima facie request one more byte
|
This deviates from the data sheet slightly since that would prima facie request one more byte
|
||||||
of data than is actually written — the last time around the loop it has transferred from the
|
of data than is actually written; the last time around the loop it has transferred from the
|
||||||
data register to the data shift register, set data request, written the byte, checked that data
|
data register to the data shift register, set data request, written the byte, checked that data
|
||||||
request has been satified, then finally considers whether all bytes are done. Based on both
|
request has been satified, then finally considers whether all bytes are done. Based on both
|
||||||
natural expectations and the way that emulated machines responded, I believe that to be a
|
natural expectations and the way that emulated machines responded, I believe that to be a
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 17/09/2016.
|
// Created by Thomas Harte on 17/09/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef _770_hpp
|
#ifndef _770_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 06/06/2016.
|
// Created by Thomas Harte on 06/06/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef _522_hpp
|
#ifndef _522_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 04/09/2017.
|
// Created by Thomas Harte on 04/09/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "../6522.hpp"
|
#include "../6522.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 04/09/2017.
|
// Created by Thomas Harte on 04/09/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
template <typename T> void MOS6522<T>::set_register(int address, uint8_t value) {
|
template <typename T> void MOS6522<T>::set_register(int address, uint8_t value) {
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 04/09/2017.
|
// Created by Thomas Harte on 04/09/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef _522Storage_hpp
|
#ifndef _522Storage_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 04/09/2017.
|
// Created by Thomas Harte on 04/09/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "../6522.hpp"
|
#include "../6522.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 19/06/2016.
|
// Created by Thomas Harte on 19/06/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef _532_hpp
|
#ifndef _532_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 05/06/2016.
|
// Created by Thomas Harte on 05/06/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "6560.hpp"
|
#include "6560.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 05/06/2016.
|
// Created by Thomas Harte on 05/06/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef _560_hpp
|
#ifndef _560_hpp
|
||||||
@@ -107,7 +107,7 @@ template <class BusHandler> class MOS6560 {
|
|||||||
void set_output_mode(OutputMode output_mode) {
|
void set_output_mode(OutputMode output_mode) {
|
||||||
output_mode_ = output_mode;
|
output_mode_ = output_mode;
|
||||||
|
|
||||||
// Luminances are encoded trivially: on a 0–255 scale.
|
// Luminances are encoded trivially: on a 0-255 scale.
|
||||||
const uint8_t luminances[16] = {
|
const uint8_t luminances[16] = {
|
||||||
0, 255, 64, 192,
|
0, 255, 64, 192,
|
||||||
128, 128, 64, 192,
|
128, 128, 64, 192,
|
||||||
@@ -115,7 +115,7 @@ template <class BusHandler> class MOS6560 {
|
|||||||
192, 192, 128, 255
|
192, 192, 128, 255
|
||||||
};
|
};
|
||||||
|
|
||||||
// Chrominances are encoded such that 0–128 is a complete revolution of phase;
|
// Chrominances are encoded such that 0-128 is a complete revolution of phase;
|
||||||
// anything above 191 disables the colour subcarrier. Phase is relative to the
|
// anything above 191 disables the colour subcarrier. Phase is relative to the
|
||||||
// colour burst, so 0 is green.
|
// colour burst, so 0 is green.
|
||||||
const uint8_t pal_chrominances[16] = {
|
const uint8_t pal_chrominances[16] = {
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 31/07/2017.
|
// Created by Thomas Harte on 31/07/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef CRTC6845_hpp
|
#ifndef CRTC6845_hpp
|
||||||
@@ -35,7 +35,7 @@ class BusHandler {
|
|||||||
void perform_bus_cycle_phase1(const BusState &) {}
|
void perform_bus_cycle_phase1(const BusState &) {}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Performs the second phase of a 6845 bus cycle. Some bus state — including sync — is updated
|
Performs the second phase of a 6845 bus cycle. Some bus state, including sync, is updated
|
||||||
directly after phase 1 and hence is visible to an observer during phase 2. Handlers may therefore
|
directly after phase 1 and hence is visible to an observer during phase 2. Handlers may therefore
|
||||||
implement @c perform_bus_cycle_phase2 to be notified of the availability of that state without
|
implement @c perform_bus_cycle_phase2 to be notified of the availability of that state without
|
||||||
having to wait until the next cycle has begun.
|
having to wait until the next cycle has begun.
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 01/08/2017.
|
// Created by Thomas Harte on 01/08/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef i8255_hpp
|
#ifndef i8255_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 05/08/2017.
|
// Created by Thomas Harte on 05/08/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "i8272.hpp"
|
#include "i8272.hpp"
|
||||||
@@ -434,7 +434,7 @@ void i8272::posit_event(int event_type) {
|
|||||||
ClearControlMark();
|
ClearControlMark();
|
||||||
if(event_type == static_cast<int>(Event::Token)) {
|
if(event_type == static_cast<int>(Event::Token)) {
|
||||||
if(get_latest_token().type != Token::Data && get_latest_token().type != Token::DeletedData) {
|
if(get_latest_token().type != Token::Data && get_latest_token().type != Token::DeletedData) {
|
||||||
// Something other than a data mark came next — impliedly an ID or index mark.
|
// Something other than a data mark came next, impliedly an ID or index mark.
|
||||||
SetMissingAddressMark();
|
SetMissingAddressMark();
|
||||||
SetMissingDataAddressMark();
|
SetMissingDataAddressMark();
|
||||||
goto abort; // TODO: or read_next_data?
|
goto abort; // TODO: or read_next_data?
|
||||||
@@ -828,7 +828,7 @@ void i8272::posit_event(int event_type) {
|
|||||||
|
|
||||||
goto post_result;
|
goto post_result;
|
||||||
|
|
||||||
// Posts whatever is in result_stack_ as a result phase. Be aware that it is a stack — the
|
// Posts whatever is in result_stack_ as a result phase. Be aware that it is a stack, so the
|
||||||
// last thing in it will be returned first.
|
// last thing in it will be returned first.
|
||||||
post_result:
|
post_result:
|
||||||
printf("Result to %02x, main %02x: ", command_[0] & 0x1f, main_status_);
|
printf("Result to %02x, main %02x: ", command_[0] & 0x1f, main_status_);
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 05/08/2017.
|
// Created by Thomas Harte on 05/08/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef i8272_hpp
|
#ifndef i8272_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/11/2017.
|
// Created by Thomas Harte on 25/11/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "9918.hpp"
|
#include "9918.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 25/11/2017.
|
// Created by Thomas Harte on 25/11/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef TMS9918_hpp
|
#ifndef TMS9918_hpp
|
||||||
@@ -56,7 +56,7 @@ class TMS9918: public TMS9918Base {
|
|||||||
|
|
||||||
/*!
|
/*!
|
||||||
Runs the VCP for the number of cycles indicate; it is an implicit assumption of the code
|
Runs the VCP for the number of cycles indicate; it is an implicit assumption of the code
|
||||||
that the input clock rate is 3579545 Hz — the NTSC colour clock rate.
|
that the input clock rate is 3579545 Hz, the NTSC colour clock rate.
|
||||||
*/
|
*/
|
||||||
void run_for(const HalfCycles cycles);
|
void run_for(const HalfCycles cycles);
|
||||||
|
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 14/12/2017.
|
// Created by Thomas Harte on 14/12/2017.
|
||||||
// Copyright © 2017 Thomas Harte. All rights reserved.
|
// Copyright 2017 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef TMS9918Base_hpp
|
#ifndef TMS9918Base_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 14/10/2016.
|
// Created by Thomas Harte on 14/10/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "AY38910.hpp"
|
#include "AY38910.hpp"
|
||||||
@@ -103,7 +103,7 @@ void AY38910::get_samples(std::size_t number_of_samples, int16_t *target) {
|
|||||||
noise_shift_register_ >>= 1;
|
noise_shift_register_ >>= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ... and the envelope generator. Table based for pattern lookup, with a 'refill' step — a way of
|
// ... and the envelope generator. Table based for pattern lookup, with a 'refill' step: a way of
|
||||||
// implementing non-repeating patterns by locking them to table position 0x1f.
|
// implementing non-repeating patterns by locking them to table position 0x1f.
|
||||||
if(envelope_divider_) envelope_divider_--;
|
if(envelope_divider_) envelope_divider_--;
|
||||||
else {
|
else {
|
||||||
@@ -130,7 +130,7 @@ void AY38910::evaluate_output_volume() {
|
|||||||
// The output level for a channel is:
|
// The output level for a channel is:
|
||||||
// 1 if neither tone nor noise is enabled;
|
// 1 if neither tone nor noise is enabled;
|
||||||
// 0 if either tone or noise is enabled and its value is low.
|
// 0 if either tone or noise is enabled and its value is low.
|
||||||
// The tone/noise enable bits use inverse logic — 0 = on, 1 = off — permitting the OR logic below.
|
// The tone/noise enable bits use inverse logic; 0 = on, 1 = off; permitting the OR logic below.
|
||||||
#define tone_level(c, tone_bit) (tone_outputs_[c] | (output_registers_[7] >> tone_bit))
|
#define tone_level(c, tone_bit) (tone_outputs_[c] | (output_registers_[7] >> tone_bit))
|
||||||
#define noise_level(c, noise_bit) (noise_output_ | (output_registers_[7] >> noise_bit))
|
#define noise_level(c, noise_bit) (noise_output_ | (output_registers_[7] >> noise_bit))
|
||||||
|
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 14/10/2016.
|
// Created by Thomas Harte on 14/10/2016.
|
||||||
// Copyright © 2016 Thomas Harte. All rights reserved.
|
// Copyright 2016 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef AY_3_8910_hpp
|
#ifndef AY_3_8910_hpp
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 17/04/2018.
|
// Created by Thomas Harte on 17/04/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "AudioToggle.hpp"
|
#include "AudioToggle.hpp"
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
// Clock Signal
|
// Clock Signal
|
||||||
//
|
//
|
||||||
// Created by Thomas Harte on 17/04/2018.
|
// Created by Thomas Harte on 17/04/2018.
|
||||||
// Copyright © 2018 Thomas Harte. All rights reserved.
|
// Copyright 2018 Thomas Harte. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef AudioToggle_hpp
|
#ifndef AudioToggle_hpp
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user