1
0
mirror of https://github.com/TomHarte/CLK.git synced 2025-02-20 14:29:11 +00:00

Merge pull request #1134 from TomHarte/WorkingTests

Clean up various long-dangling issues.
This commit is contained in:
Thomas Harte 2023-05-11 08:21:53 -05:00 committed by GitHub
commit 7f5d129b13
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
308 changed files with 3846 additions and 11829 deletions

View File

@ -11,8 +11,7 @@
#include "ConfidenceSource.hpp" #include "ConfidenceSource.hpp"
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides a confidence source that calculates its probability by virtual of a history of events. Provides a confidence source that calculates its probability by virtual of a history of events.
@ -41,7 +40,6 @@ class ConfidenceCounter: public ConfidenceSource {
int misses_ = 1; int misses_ = 1;
}; };
}
} }
#endif /* ConfidenceCounter_hpp */ #endif /* ConfidenceCounter_hpp */

View File

@ -9,8 +9,7 @@
#ifndef ConfidenceSource_hpp #ifndef ConfidenceSource_hpp
#define ConfidenceSource_hpp #define ConfidenceSource_hpp
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides an abstract interface through which objects can declare the probability Provides an abstract interface through which objects can declare the probability
@ -22,7 +21,6 @@ struct ConfidenceSource {
virtual float get_confidence() = 0; virtual float get_confidence() = 0;
}; };
}
} }
#endif /* ConfidenceSource_hpp */ #endif /* ConfidenceSource_hpp */

View File

@ -13,8 +13,7 @@
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Summaries a collection of confidence sources by calculating their weighted sum. Summaries a collection of confidence sources by calculating their weighted sum.
@ -40,7 +39,6 @@ class ConfidenceSummary: public ConfidenceSource {
float weight_sum_; float weight_sum_;
}; };
}
} }
#endif /* ConfidenceSummary_hpp */ #endif /* ConfidenceSummary_hpp */

View File

@ -15,8 +15,7 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides a class that multiplexes the configurable interface to multiple machines. Provides a class that multiplexes the configurable interface to multiple machines.
@ -36,7 +35,6 @@ class MultiConfigurable: public Configurable::Device {
std::vector<Configurable::Device *> devices_; std::vector<Configurable::Device *> devices_;
}; };
}
} }
#endif /* MultiConfigurable_hpp */ #endif /* MultiConfigurable_hpp */

View File

@ -14,8 +14,7 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides a class that multiplexes the joystick machine interface to multiple machines. Provides a class that multiplexes the joystick machine interface to multiple machines.
@ -34,7 +33,6 @@ class MultiJoystickMachine: public MachineTypes::JoystickMachine {
std::vector<std::unique_ptr<Inputs::Joystick>> joysticks_; std::vector<std::unique_ptr<Inputs::Joystick>> joysticks_;
}; };
}
} }
#endif /* MultiJoystickMachine_hpp */ #endif /* MultiJoystickMachine_hpp */

View File

@ -15,8 +15,7 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides a class that multiplexes the keyboard machine interface to multiple machines. Provides a class that multiplexes the keyboard machine interface to multiple machines.
@ -55,7 +54,6 @@ class MultiKeyboardMachine: public MachineTypes::KeyboardMachine {
Inputs::Keyboard &get_keyboard() final; Inputs::Keyboard &get_keyboard() final;
}; };
}
} }
#endif /* MultiKeyboardMachine_hpp */ #endif /* MultiKeyboardMachine_hpp */

View File

@ -15,8 +15,7 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides a class that multiplexes the media target interface to multiple machines. Provides a class that multiplexes the media target interface to multiple machines.
@ -35,7 +34,6 @@ struct MultiMediaTarget: public MachineTypes::MediaTarget {
std::vector<MachineTypes::MediaTarget *> targets_; std::vector<MachineTypes::MediaTarget *> targets_;
}; };
}
} }
#endif /* MultiMediaTarget_hpp */ #endif /* MultiMediaTarget_hpp */

View File

@ -19,8 +19,7 @@
#include <mutex> #include <mutex>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
template <typename MachineType> class MultiInterface { template <typename MachineType> class MultiInterface {
public: public:
@ -116,7 +115,5 @@ class MultiAudioProducer: public MultiInterface<MachineTypes::AudioProducer>, pu
*/ */
} }
}
#endif /* MultiProducer_hpp */ #endif /* MultiProducer_hpp */

View File

@ -16,8 +16,7 @@
#include <mutex> #include <mutex>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides a class that multiplexes calls to and from Outputs::Speaker::Speaker in order Provides a class that multiplexes calls to and from Outputs::Speaker::Speaker in order
@ -55,7 +54,6 @@ class MultiSpeaker: public Outputs::Speaker::Speaker, Outputs::Speaker::Speaker:
bool stereo_output_ = false; bool stereo_output_ = false;
}; };
}
} }
#endif /* MultiSpeaker_hpp */ #endif /* MultiSpeaker_hpp */

View File

@ -22,8 +22,7 @@
#include <mutex> #include <mutex>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Dynamic {
namespace Dynamic {
/*! /*!
Provides the same interface as to a single machine, while multiplexing all Provides the same interface as to a single machine, while multiplexing all
@ -80,7 +79,6 @@ class MultiMachine: public ::Machine::DynamicMachine, public MultiTimedMachine::
bool has_picked_ = false; bool has_picked_ = false;
}; };
}
} }
#endif /* MultiMachine_hpp */ #endif /* MultiMachine_hpp */

View File

@ -12,9 +12,7 @@
#include "File.hpp" #include "File.hpp"
#include "../../../Storage/Disk/Disk.hpp" #include "../../../Storage/Disk/Disk.hpp"
namespace Analyser { namespace Analyser::Static::Acorn {
namespace Static {
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 {
@ -31,8 +29,6 @@ struct Catalogue {
std::unique_ptr<Catalogue> GetDFSCatalogue(const std::shared_ptr<Storage::Disk::Disk> &disk); std::unique_ptr<Catalogue> GetDFSCatalogue(const std::shared_ptr<Storage::Disk::Disk> &disk);
std::unique_ptr<Catalogue> GetADFSCatalogue(const std::shared_ptr<Storage::Disk::Disk> &disk); std::unique_ptr<Catalogue> GetADFSCatalogue(const std::shared_ptr<Storage::Disk::Disk> &disk);
}
}
} }
#endif /* Disk_hpp */ #endif /* Disk_hpp */

View File

@ -13,9 +13,7 @@
#include <string> #include <string>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::Acorn {
namespace Static {
namespace Acorn {
struct File { struct File {
std::string name; std::string name;
@ -60,8 +58,6 @@ struct File {
std::vector<Chunk> chunks; std::vector<Chunk> chunks;
}; };
}
}
} }
#endif /* File_hpp */ #endif /* File_hpp */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Acorn {
namespace Static {
namespace Acorn {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* AcornAnalyser_hpp */ #endif /* AcornAnalyser_hpp */

View File

@ -14,14 +14,10 @@
#include "File.hpp" #include "File.hpp"
#include "../../../Storage/Tape/Tape.hpp" #include "../../../Storage/Tape/Tape.hpp"
namespace Analyser { namespace Analyser::Static::Acorn {
namespace Static {
namespace Acorn {
std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape); std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape);
}
}
} }
#endif /* Tape_hpp */ #endif /* Tape_hpp */

View File

@ -13,9 +13,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Acorn {
namespace Static {
namespace Acorn {
struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> {
bool has_acorn_adfs = false; bool has_acorn_adfs = false;
@ -37,8 +35,6 @@ struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<
} }
}; };
}
}
} }
#endif /* Analyser_Static_Acorn_Target_h */ #endif /* Analyser_Static_Acorn_Target_h */

View File

@ -13,15 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Amiga {
namespace Static {
namespace Amiga {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
} }
}
}
#endif /* Analyser_Static_Amiga_StaticAnalyser_hpp */ #endif /* Analyser_Static_Amiga_StaticAnalyser_hpp */

View File

@ -12,9 +12,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::Amiga {
namespace Static {
namespace Amiga {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(ChipRAM, ReflectableEnum(ChipRAM,
@ -41,8 +39,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_Amiga_Target_h */ #endif /* Analyser_Static_Amiga_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::AmstradCPC {
namespace Static {
namespace AmstradCPC {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* Analyser_Static_AmstradCPC_StaticAnalyser_hpp */ #endif /* Analyser_Static_AmstradCPC_StaticAnalyser_hpp */

View File

@ -14,9 +14,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::AmstradCPC {
namespace Static {
namespace AmstradCPC {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(Model, CPC464, CPC664, CPC6128); ReflectableEnum(Model, CPC464, CPC664, CPC6128);
@ -32,8 +30,5 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
}; };
} }
}
}
#endif /* Analyser_Static_AmstradCPC_Target_h */ #endif /* Analyser_Static_AmstradCPC_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::AppleII {
namespace Static {
namespace AppleII {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* Analyser_Static_AppleII_StaticAnalyser_hpp */ #endif /* Analyser_Static_AppleII_StaticAnalyser_hpp */

View File

@ -13,9 +13,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::AppleII {
namespace Static {
namespace AppleII {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(Model, ReflectableEnum(Model,
@ -51,8 +49,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_AppleII_Target_h */ #endif /* Analyser_Static_AppleII_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::AppleIIgs {
namespace Static {
namespace AppleIIgs {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* Analyser_Static_AppleIIgs_StaticAnalyser_hpp */ #endif /* Analyser_Static_AppleIIgs_StaticAnalyser_hpp */

View File

@ -13,9 +13,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::AppleIIgs {
namespace Static {
namespace AppleIIgs {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(Model, ReflectableEnum(Model,
@ -42,8 +40,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_AppleIIgs_Target_h */ #endif /* Analyser_Static_AppleIIgs_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Atari2600 {
namespace Static {
namespace Atari2600 {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -11,9 +11,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::Atari2600 {
namespace Static {
namespace Atari2600 {
struct Target: public ::Analyser::Static::Target { struct Target: public ::Analyser::Static::Target {
enum class PagingModel { enum class PagingModel {
@ -38,8 +36,6 @@ struct Target: public ::Analyser::Static::Target {
Target() : Analyser::Static::Target(Machine::Atari2600) {} Target() : Analyser::Static::Target(Machine::Atari2600) {}
}; };
}
}
} }
#endif /* Analyser_Static_Atari_Target_h */ #endif /* Analyser_Static_Atari_Target_h */

View File

@ -13,15 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::AtariST {
namespace Static {
namespace AtariST {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
} }
}
}
#endif /* Analyser_Static_AtariST_StaticAnalyser_hpp */ #endif /* Analyser_Static_AtariST_StaticAnalyser_hpp */

View File

@ -12,9 +12,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::AtariST {
namespace Static {
namespace AtariST {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(MemorySize, ReflectableEnum(MemorySize,
@ -31,8 +29,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_AtariST_Target_h */ #endif /* Analyser_Static_AtariST_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Coleco {
namespace Static {
namespace Coleco {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -14,14 +14,10 @@
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::Commodore {
namespace Static {
namespace Commodore {
std::vector<File> GetFiles(const std::shared_ptr<Storage::Disk::Disk> &disk); std::vector<File> GetFiles(const std::shared_ptr<Storage::Disk::Disk> &disk);
}
}
} }
#endif /* Disk_hpp */ #endif /* Disk_hpp */

View File

@ -12,9 +12,7 @@
#include <string> #include <string>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::Commodore {
namespace Static {
namespace Commodore {
struct File { struct File {
std::wstring name; std::wstring name;
@ -35,8 +33,6 @@ struct File {
bool is_basic(); bool is_basic();
}; };
}
}
} }
#endif /* File_hpp */ #endif /* File_hpp */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Commodore {
namespace Static {
namespace Commodore {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* CommodoreAnalyser_hpp */ #endif /* CommodoreAnalyser_hpp */

View File

@ -12,14 +12,10 @@
#include "../../../Storage/Tape/Tape.hpp" #include "../../../Storage/Tape/Tape.hpp"
#include "File.hpp" #include "File.hpp"
namespace Analyser { namespace Analyser::Static::Commodore {
namespace Static {
namespace Commodore {
std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape); std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape);
}
}
} }
#endif /* Tape_hpp */ #endif /* Tape_hpp */

View File

@ -14,9 +14,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Commodore {
namespace Static {
namespace Commodore {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
enum class MemoryModel { enum class MemoryModel {
@ -71,8 +69,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_Commodore_Target_h */ #endif /* Analyser_Static_Commodore_Target_h */

View File

@ -16,9 +16,7 @@
#include <set> #include <set>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::MOS6502 {
namespace Static {
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
@ -95,7 +93,5 @@ Disassembly Disassemble(
std::vector<uint16_t> entry_points); std::vector<uint16_t> entry_points);
} }
}
}
#endif /* Disassembler6502_hpp */ #endif /* Disassembler6502_hpp */

View File

@ -11,9 +11,7 @@
#include <functional> #include <functional>
namespace Analyser { namespace Analyser::Static::Disassembler {
namespace Static {
namespace Disassembler {
/*! /*!
Provides an address mapper that relocates a chunk of memory so that it starts at Provides an address mapper that relocates a chunk of memory so that it starts at
@ -25,8 +23,6 @@ template <typename T> std::function<std::size_t(T)> OffsetMapper(T start_address
}; };
} }
}
}
} }
#endif /* AddressMapper_hpp */ #endif /* AddressMapper_hpp */

View File

@ -9,9 +9,7 @@
#ifndef Kernel_hpp #ifndef Kernel_hpp
#define Kernel_hpp #define Kernel_hpp
namespace Analyser { namespace Analyser::Static::Disassembly {
namespace Static {
namespace Disassembly {
template <typename D, typename S> struct PartialDisassembly { template <typename D, typename S> struct PartialDisassembly {
D disassembly; D disassembly;
@ -45,8 +43,6 @@ template <typename D, typename S, typename Disassembler> D Disassemble(
return partial_disassembly.disassembly; return partial_disassembly.disassembly;
} }
}
}
} }
#endif /* Kernel_hpp */ #endif /* Kernel_hpp */

View File

@ -15,9 +15,7 @@
#include <set> #include <set>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::Z80 {
namespace Static {
namespace Z80 {
struct Instruction { struct Instruction {
/*! The address this instruction starts at. This is a mapped address. */ /*! The address this instruction starts at. This is a mapped address. */
@ -84,7 +82,5 @@ Disassembly Disassemble(
std::vector<uint16_t> entry_points); std::vector<uint16_t> entry_points);
} }
}
}
#endif /* StaticAnalyser_Disassembler_Z80_hpp */ #endif /* StaticAnalyser_Disassembler_Z80_hpp */

View File

@ -13,15 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::DiskII {
namespace Static {
namespace DiskII {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
} }
}
}
#endif /* Analyser_Static_DiskII_StaticAnalyser_hpp */ #endif /* Analyser_Static_DiskII_StaticAnalyser_hpp */

View File

@ -13,15 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Enterprise {
namespace Static {
namespace Enterprise {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
} }
}
}
#endif /* Analyser_Static_Enterprise_StaticAnalyser_hpp */ #endif /* Analyser_Static_Enterprise_StaticAnalyser_hpp */

View File

@ -15,9 +15,7 @@
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Enterprise {
namespace Static {
namespace Enterprise {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(Model, Enterprise64, Enterprise128, Enterprise256); ReflectableEnum(Model, Enterprise64, Enterprise128, Enterprise256);
@ -50,8 +48,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_Enterprise_Target_h */ #endif /* Analyser_Static_Enterprise_Target_h */

View File

@ -11,9 +11,7 @@
#include "../../../Storage/Cartridge/Cartridge.hpp" #include "../../../Storage/Cartridge/Cartridge.hpp"
namespace Analyser { namespace Analyser::Static::MSX {
namespace Static {
namespace MSX {
/*! /*!
Extends the base cartridge class by adding a (guess at) the banking scheme. Extends the base cartridge class by adding a (guess at) the banking scheme.
@ -33,8 +31,6 @@ struct Cartridge: public ::Storage::Cartridge::Cartridge {
Storage::Cartridge::Cartridge(segments), type(type) {} Storage::Cartridge::Cartridge(segments), type(type) {}
}; };
}
}
} }
#endif /* Cartridge_hpp */ #endif /* Cartridge_hpp */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::MSX {
namespace Static {
namespace MSX {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_MSX_StaticAnalyser_hpp */ #endif /* StaticAnalyser_MSX_StaticAnalyser_hpp */

View File

@ -14,9 +14,7 @@
#include <string> #include <string>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::MSX {
namespace Static {
namespace MSX {
struct File { struct File {
std::string name; std::string name;
@ -37,8 +35,6 @@ struct File {
std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape); std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape);
}
}
} }
#endif /* StaticAnalyser_MSX_Tape_hpp */ #endif /* StaticAnalyser_MSX_Tape_hpp */

View File

@ -14,9 +14,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::MSX {
namespace Static {
namespace MSX {
struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> {
bool has_disk_drive = false; bool has_disk_drive = false;
@ -46,8 +44,6 @@ struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<
} }
}; };
}
}
} }
#endif /* Analyser_Static_MSX_Target_h */ #endif /* Analyser_Static_MSX_Target_h */

View File

@ -13,15 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Macintosh {
namespace Static {
namespace Macintosh {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
} }
}
}
#endif /* Analyser_Static_Macintosh_StaticAnalyser_hpp */ #endif /* Analyser_Static_Macintosh_StaticAnalyser_hpp */

View File

@ -13,9 +13,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::Macintosh {
namespace Static {
namespace Macintosh {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(Model, Mac128k, Mac512k, Mac512ke, MacPlus); ReflectableEnum(Model, Mac128k, Mac512k, Mac512ke, MacPlus);
@ -30,8 +28,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_Macintosh_Target_h */ #endif /* Analyser_Static_Macintosh_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Oric {
namespace Static {
namespace Oric {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -14,9 +14,7 @@
#include <string> #include <string>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static::Oric {
namespace Static {
namespace Oric {
struct File { struct File {
std::string name; std::string name;
@ -33,8 +31,6 @@ struct File {
std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape); std::vector<File> GetFiles(const std::shared_ptr<Storage::Tape::Tape> &tape);
}
}
} }
#endif /* Tape_hpp */ #endif /* Tape_hpp */

View File

@ -14,9 +14,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Oric {
namespace Static {
namespace Oric {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(ROM, ReflectableEnum(ROM,
@ -56,8 +54,6 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Ta
} }
}; };
}
}
} }
#endif /* Analyser_Static_Oric_Target_h */ #endif /* Analyser_Static_Oric_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::Sega {
namespace Static {
namespace Sega {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -13,9 +13,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::Sega {
namespace Static {
namespace Sega {
struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public Analyser::Static::Target, public Reflection::StructImpl<Target> {
enum class Model { enum class Model {
@ -52,8 +50,6 @@ constexpr bool is_master_system(Analyser::Static::Sega::Target::Model model) {
return model >= Analyser::Static::Sega::Target::Model::MasterSystem; return model >= Analyser::Static::Sega::Target::Model::MasterSystem;
} }
}
}
} }
#endif /* Analyser_Static_Sega_Target_h */ #endif /* Analyser_Static_Sega_Target_h */

View File

@ -21,8 +21,7 @@
#include <string> #include <string>
#include <vector> #include <vector>
namespace Analyser { namespace Analyser::Static {
namespace Static {
struct State; struct State;
@ -79,7 +78,6 @@ TargetList GetTargets(const std::string &file_name);
*/ */
Media GetMedia(const std::string &file_name); Media GetMedia(const std::string &file_name);
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::ZX8081 {
namespace Static {
namespace ZX8081 {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -14,9 +14,7 @@
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::ZX8081 {
namespace Static {
namespace ZX8081 {
struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(MemoryModel, ReflectableEnum(MemoryModel,
@ -40,8 +38,6 @@ struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<
} }
}; };
}
}
} }
#endif /* Analyser_Static_ZX8081_Target_h */ #endif /* Analyser_Static_ZX8081_Target_h */

View File

@ -13,14 +13,10 @@
#include "../../../Storage/TargetPlatforms.hpp" #include "../../../Storage/TargetPlatforms.hpp"
#include <string> #include <string>
namespace Analyser { namespace Analyser::Static::ZXSpectrum {
namespace Static {
namespace ZXSpectrum {
TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms); TargetList GetTargets(const Media &media, const std::string &file_name, TargetPlatform::IntType potential_platforms);
}
}
} }
#endif /* StaticAnalyser_hpp */ #endif /* StaticAnalyser_hpp */

View File

@ -13,9 +13,7 @@
#include "../../../Reflection/Struct.hpp" #include "../../../Reflection/Struct.hpp"
#include "../StaticAnalyser.hpp" #include "../StaticAnalyser.hpp"
namespace Analyser { namespace Analyser::Static::ZXSpectrum {
namespace Static {
namespace ZXSpectrum {
struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> { struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<Target> {
ReflectableEnum(Model, ReflectableEnum(Model,
@ -38,8 +36,6 @@ struct Target: public ::Analyser::Static::Target, public Reflection::StructImpl<
} }
}; };
}
}
} }
#endif /* Target_h */ #endif /* Target_h */

View File

@ -14,8 +14,7 @@
#include "../../Storage/MassStorage/SCSI/SCSI.hpp" #include "../../Storage/MassStorage/SCSI/SCSI.hpp"
namespace NCR { namespace NCR::NCR5380 {
namespace NCR5380 {
/*! /*!
Models the NCR 5380, a SCSI interface chip. Models the NCR 5380, a SCSI interface chip.
@ -86,7 +85,6 @@ class NCR5380 final: public SCSI::Bus::Observer {
bool phase_matches() const; bool phase_matches() const;
}; };
}
} }
#endif /* ncr5380_hpp */ #endif /* ncr5380_hpp */

View File

@ -15,8 +15,7 @@
#include "../../ClockReceiver/ClockReceiver.hpp" #include "../../ClockReceiver/ClockReceiver.hpp"
namespace MOS { namespace MOS::MOS6522 {
namespace MOS6522 {
enum Port { enum Port {
A = 0, A = 0,
@ -138,7 +137,6 @@ template <class BusHandlerT> class MOS6522: public MOS6522Storage {
void evaluate_port_b_output(); void evaluate_port_b_output();
}; };
}
} }
#include "Implementation/6522Implementation.hpp" #include "Implementation/6522Implementation.hpp"

View File

@ -12,8 +12,7 @@
// //
// PB6 count-down mode for timer 2. // PB6 count-down mode for timer 2.
namespace MOS { namespace MOS::MOS6522 {
namespace MOS6522 {
template <typename T> void MOS6522<T>::access(int address) { template <typename T> void MOS6522<T>::access(int address) {
switch(address) { switch(address) {
@ -494,4 +493,3 @@ template <typename T> void MOS6522<T>::shift_out() {
} }
} }
}

View File

@ -11,8 +11,7 @@
#include <cstdint> #include <cstdint>
namespace MOS { namespace MOS::MOS6522 {
namespace MOS6522 {
class MOS6522Storage { class MOS6522Storage {
protected: protected:
@ -107,7 +106,6 @@ class MOS6522Storage {
} }
}; };
}
} }
#endif /* _522Storage_hpp */ #endif /* _522Storage_hpp */

View File

@ -14,8 +14,7 @@
#include "Implementation/6526Storage.hpp" #include "Implementation/6526Storage.hpp"
#include "../Serial/Line.hpp" #include "../Serial/Line.hpp"
namespace MOS { namespace MOS::MOS6526 {
namespace MOS6526 {
enum Port { enum Port {
A = 0, A = 0,
@ -86,7 +85,6 @@ template <typename PortHandlerT, Personality personality> class MOS6526:
bool serial_line_did_produce_bit(Serial::Line<true> *line, int bit) final; bool serial_line_did_produce_bit(Serial::Line<true> *line, int bit) final;
}; };
}
} }
#include "Implementation/6526Implementation.hpp" #include "Implementation/6526Implementation.hpp"

View File

@ -12,8 +12,7 @@
#include <cassert> #include <cassert>
#include <cstdio> #include <cstdio>
namespace MOS { namespace MOS::MOS6526 {
namespace MOS6526 {
enum Interrupts: uint8_t { enum Interrupts: uint8_t {
TimerA = 1 << 0, TimerA = 1 << 0,
@ -238,7 +237,6 @@ bool MOS6526<BusHandlerT, personality>::serial_line_did_produce_bit(Serial::Line
return true; return true;
} }
}
} }
#endif /* _526Implementation_h */ #endif /* _526Implementation_h */

View File

@ -13,8 +13,7 @@
#include "../../../ClockReceiver/ClockReceiver.hpp" #include "../../../ClockReceiver/ClockReceiver.hpp"
namespace MOS { namespace MOS::MOS6526 {
namespace MOS6526 {
class TODBase { class TODBase {
public: public:
@ -333,7 +332,6 @@ struct MOS6526Storage {
int pending_ = 0; int pending_ = 0;
}; };
}
} }
#endif /* _526Storage_h */ #endif /* _526Storage_h */

View File

@ -15,8 +15,7 @@
#include "../../Outputs/Speaker/Implementation/LowpassSpeaker.hpp" #include "../../Outputs/Speaker/Implementation/LowpassSpeaker.hpp"
#include "../../Outputs/Speaker/Implementation/SampleSource.hpp" #include "../../Outputs/Speaker/Implementation/SampleSource.hpp"
namespace MOS { namespace MOS::MOS6560 {
namespace MOS6560 {
// audio state // audio state
class AudioGenerator: public ::Outputs::Speaker::SampleSource { class AudioGenerator: public ::Outputs::Speaker::SampleSource {
@ -520,7 +519,6 @@ template <class BusHandler> class MOS6560 {
OutputMode output_mode_ = OutputMode::NTSC; OutputMode output_mode_ = OutputMode::NTSC;
}; };
}
} }
#endif /* _560_hpp */ #endif /* _560_hpp */

View File

@ -14,8 +14,7 @@
#include <cstdint> #include <cstdint>
#include <cstdio> #include <cstdio>
namespace Motorola { namespace Motorola::CRTC {
namespace CRTC {
struct BusState { struct BusState {
bool display_enable = false; bool display_enable = false;
@ -269,7 +268,6 @@ template <class T> class CRTC6845 {
unsigned int character_is_visible_shifter_ = 0; unsigned int character_is_visible_shifter_ = 0;
}; };
}
} }
#endif /* CRTC6845_hpp */ #endif /* CRTC6845_hpp */

View File

@ -15,8 +15,7 @@
#include "../../ClockReceiver/ClockingHintSource.hpp" #include "../../ClockReceiver/ClockingHintSource.hpp"
#include "../Serial/Line.hpp" #include "../Serial/Line.hpp"
namespace Motorola { namespace Motorola::ACIA {
namespace ACIA {
class ACIA: public ClockingHint::Source, private Serial::Line<false>::ReadDelegate { class ACIA: public ClockingHint::Source, private Serial::Line<false>::ReadDelegate {
public: public:
@ -126,7 +125,6 @@ class ACIA: public ClockingHint::Source, private Serial::Line<false>::ReadDelega
uint8_t get_status(); uint8_t get_status();
}; };
}
} }
#endif /* Motorola_ACIA_6850_hpp */ #endif /* Motorola_ACIA_6850_hpp */

View File

@ -14,8 +14,7 @@
#include <cstdint> #include <cstdint>
namespace Motorola { namespace Motorola::MFP68901 {
namespace MFP68901 {
class PortHandler { class PortHandler {
public: public:
@ -182,7 +181,6 @@ class MFP68901: public ClockingHint::Source {
} }
}; };
}
} }
#endif /* MFP68901_hpp */ #endif /* MFP68901_hpp */

View File

@ -11,8 +11,7 @@
#include <cstdint> #include <cstdint>
namespace Intel { namespace Intel::i8255 {
namespace i8255 {
class PortHandler { class PortHandler {
public: public:
@ -88,7 +87,6 @@ template <class T> class i8255 {
T &port_handler_; T &port_handler_;
}; };
}
} }
#endif /* i8255_hpp */ #endif /* i8255_hpp */

View File

@ -15,8 +15,7 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
namespace Intel { namespace Intel::i8272 {
namespace i8272 {
class BusHandler { class BusHandler {
public: public:
@ -130,7 +129,6 @@ class i8272 : public Storage::Disk::MFMController {
bool is_sleeping_ = false; bool is_sleeping_ = false;
}; };
}
} }
#endif /* i8272_hpp */ #endif /* i8272_hpp */

View File

@ -11,8 +11,7 @@
#include <cstdint> #include <cstdint>
namespace Zilog { namespace Zilog::SCC {
namespace SCC {
/*! /*!
Models the Zilog 8530 SCC, a serial adaptor. Models the Zilog 8530 SCC, a serial adaptor.
@ -110,7 +109,5 @@ class z8530 {
}; };
} }
}
#endif /* z8530_hpp */ #endif /* z8530_hpp */

View File

@ -14,8 +14,7 @@
#include "../../Reflection/Struct.hpp" #include "../../Reflection/Struct.hpp"
namespace GI { namespace GI::AY38910 {
namespace AY38910 {
/*! /*!
A port handler provides all input for an AY's two 8-bit ports, and may optionally receive A port handler provides all input for an AY's two 8-bit ports, and may optionally receive
@ -219,7 +218,6 @@ struct State: public Reflection::StructImpl<State> {
} }
}; };
}
} }
#endif /* AY_3_8910_hpp */ #endif /* AY_3_8910_hpp */

View File

@ -11,8 +11,7 @@
#include <array> #include <array>
namespace Apple { namespace Apple::Clock {
namespace Clock {
/*! /*!
Models Apple's real-time clocks, as contained in the Macintosh and IIgs. Models Apple's real-time clocks, as contained in the Macintosh and IIgs.
@ -293,7 +292,6 @@ class ParallelClock: public ClockStorage {
uint8_t control_; uint8_t control_;
}; };
}
} }
#endif /* Apple_RealTimeClock_hpp */ #endif /* Apple_RealTimeClock_hpp */

View File

@ -11,8 +11,7 @@
#include "IWM.hpp" #include "IWM.hpp"
namespace Apple { namespace Apple::Disk {
namespace Disk {
class DiskIIDrive: public IWMDrive { class DiskIIDrive: public IWMDrive {
public: public:
@ -27,7 +26,6 @@ class DiskIIDrive: public IWMDrive {
int stepper_position_ = 0; int stepper_position_ = 0;
}; };
}
} }
#endif /* DiskIIDrive_hpp */ #endif /* DiskIIDrive_hpp */

View File

@ -11,8 +11,7 @@
#include "IWM.hpp" #include "IWM.hpp"
namespace Apple { namespace Apple::Macintosh {
namespace Macintosh {
class DoubleDensityDrive: public IWMDrive { class DoubleDensityDrive: public IWMDrive {
public: public:
@ -47,7 +46,6 @@ class DoubleDensityDrive: public IWMDrive {
int step_direction_ = 1; int step_direction_ = 1;
}; };
}
} }
#endif /* MacintoshDoubleDensityDrive_hpp */ #endif /* MacintoshDoubleDensityDrive_hpp */

View File

@ -13,8 +13,7 @@
#include <functional> #include <functional>
#include "LowFrequencyOscillator.hpp" #include "LowFrequencyOscillator.hpp"
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
/*! /*!
Models an OPL-style envelope generator. Models an OPL-style envelope generator.
@ -258,7 +257,6 @@ template <int envelope_precision, int period_precision> class EnvelopeGenerator
} }
}; };
}
} }
#endif /* EnvelopeGenerator_h */ #endif /* EnvelopeGenerator_h */

View File

@ -9,8 +9,7 @@
#ifndef KeyLevelScaler_h #ifndef KeyLevelScaler_h
#define KeyLevelScaler_h #define KeyLevelScaler_h
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
template <int frequency_precision> class KeyLevelScaler { template <int frequency_precision> class KeyLevelScaler {
public: public:
@ -51,8 +50,6 @@ template <int frequency_precision> class KeyLevelScaler {
int shift_ = 0; int shift_ = 0;
}; };
}
} }
#endif /* KeyLevelScaler_h */ #endif /* KeyLevelScaler_h */

View File

@ -11,8 +11,7 @@
#include "../../../Numeric/LFSR.hpp" #include "../../../Numeric/LFSR.hpp"
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
/*! /*!
Models the output of the OPL low-frequency oscillator, which provides a couple of optional fixed-frequency Models the output of the OPL low-frequency oscillator, which provides a couple of optional fixed-frequency
@ -62,7 +61,6 @@ class LowFrequencyOscillator {
Numeric::LFSR<int, 0x800302> noise_source_; Numeric::LFSR<int, 0x800302> noise_source_;
}; };
}
} }
#endif /* LowFrequencyOscillator_hpp */ #endif /* LowFrequencyOscillator_hpp */

View File

@ -12,8 +12,7 @@
#include "../../../Outputs/Speaker/Implementation/SampleSource.hpp" #include "../../../Outputs/Speaker/Implementation/SampleSource.hpp"
#include "../../../Concurrency/AsyncTaskQueue.hpp" #include "../../../Concurrency/AsyncTaskQueue.hpp"
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
template <typename Child> class OPLBase: public ::Outputs::Speaker::SampleSource { template <typename Child> class OPLBase: public ::Outputs::Speaker::SampleSource {
public: public:
@ -34,7 +33,6 @@ template <typename Child> class OPLBase: public ::Outputs::Speaker::SampleSource
uint8_t selected_register_ = 0; uint8_t selected_register_ = 0;
}; };
}
} }
#endif /* OPLBase_h */ #endif /* OPLBase_h */

View File

@ -13,8 +13,7 @@
#include "LowFrequencyOscillator.hpp" #include "LowFrequencyOscillator.hpp"
#include "Tables.hpp" #include "Tables.hpp"
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
/*! /*!
Models an OPL-style phase generator of templated precision; having been told its period ('f-num'), octave ('block') and Models an OPL-style phase generator of templated precision; having been told its period ('f-num'), octave ('block') and
@ -119,7 +118,6 @@ template <int precision> class PhaseGenerator {
int enable_vibrato_ = 0; int enable_vibrato_ = 0;
}; };
}
} }
#endif /* PhaseGenerator_h */ #endif /* PhaseGenerator_h */

View File

@ -9,8 +9,7 @@
#ifndef Tables_hpp #ifndef Tables_hpp
#define Tables_hpp #define Tables_hpp
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
/* /*
These are the OPL's built-in log-sin and exponentiation tables, as recovered by These are the OPL's built-in log-sin and exponentiation tables, as recovered by
@ -221,7 +220,6 @@ inline int LogSign::level(int fractional) const {
return power_two(*this, fractional); return power_two(*this, fractional);
} }
}
} }
#endif /* Tables_hpp */ #endif /* Tables_hpp */

View File

@ -12,8 +12,7 @@
#include "Tables.hpp" #include "Tables.hpp"
#include "LowFrequencyOscillator.hpp" #include "LowFrequencyOscillator.hpp"
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
enum class Waveform { enum class Waveform {
Sine, HalfSine, AbsSine, PulseSine Sine, HalfSine, AbsSine, PulseSine
@ -86,7 +85,6 @@ template <int phase_precision> class WaveformGenerator {
} }
}; };
}
} }
#endif /* WaveformGenerator_h */ #endif /* WaveformGenerator_h */

View File

@ -18,8 +18,7 @@
#include <atomic> #include <atomic>
namespace Yamaha { namespace Yamaha::OPL {
namespace OPL {
class OPLL: public OPLBase<OPLL> { class OPLL: public OPLBase<OPLL> {
public: public:
@ -125,7 +124,6 @@ class OPLL: public OPLBase<OPLL> {
const uint8_t *instrument_definition(int instrument, int channel); const uint8_t *instrument_definition(int instrument, int channel);
}; };
}
} }
#endif /* OPLL_hpp */ #endif /* OPLL_hpp */

View File

@ -14,8 +14,7 @@
#include <array> #include <array>
#include <cstdint> #include <cstdint>
namespace Ricoh { namespace Ricoh::RP5C01 {
namespace RP5C01 {
class RP5C01 { class RP5C01 {
public: public:
@ -56,8 +55,5 @@ class RP5C01 {
}; };
} }
}
#include <stdio.h>
#endif /* RP5C01_hpp */ #endif /* RP5C01_hpp */

View File

@ -14,8 +14,7 @@
// Subject to corrections: // Subject to corrections:
// //
// * CWAI and the pushes and pulls at 0x3x are immediate, not inherent. // * CWAI and the pushes and pulls at 0x3x are immediate, not inherent.
namespace InstructionSet { namespace InstructionSet::M6809 {
namespace M6809 {
enum class AddressingMode { enum class AddressingMode {
Illegal, Illegal,
@ -239,7 +238,6 @@ template <int i, typename SchedulerT> void OperationMapper<Page::Page2>::dispatc
} }
} }
}
} }
#endif /* InstructionSets_M6809_OperationMapper_hpp */ #endif /* InstructionSets_M6809_OperationMapper_hpp */

View File

@ -20,5 +20,4 @@ enum class AccessType {
} }
#endif /* AccessType_h */ #endif /* AccessType_h */

View File

@ -14,8 +14,7 @@
#include <cstddef> #include <cstddef>
#include <utility> #include <utility>
namespace InstructionSet { namespace InstructionSet::M50740 {
namespace M50740 {
class Decoder { class Decoder {
public: public:
@ -33,7 +32,6 @@ class Decoder {
Instruction instr_; Instruction instr_;
}; };
}
} }
#endif /* InstructionSets_M50740_Decoder_hpp */ #endif /* InstructionSets_M50740_Decoder_hpp */

View File

@ -18,8 +18,7 @@
#include <cstdint> #include <cstdint>
#include <vector> #include <vector>
namespace InstructionSet { namespace InstructionSet::M50740 {
namespace M50740 {
class Executor; class Executor;
using CachingExecutor = CachingExecutor<Executor, 0x1fff, 255, Instruction, false>; using CachingExecutor = CachingExecutor<Executor, 0x1fff, 255, Instruction, false>;
@ -174,7 +173,6 @@ class Executor: public CachingExecutor {
inline void subtract_duration(int duration); inline void subtract_duration(int duration);
}; };
}
} }
#endif /* Executor_h */ #endif /* Executor_h */

View File

@ -15,8 +15,7 @@
#include <sstream> #include <sstream>
#include "../AccessType.hpp" #include "../AccessType.hpp"
namespace InstructionSet { namespace InstructionSet::M50740 {
namespace M50740 {
enum class AddressingMode { enum class AddressingMode {
Implied, Accumulator, Immediate, Implied, Accumulator, Immediate,
@ -236,7 +235,5 @@ inline std::ostream &operator <<(std::ostream &stream, const Instruction &instru
} }
} }
}
#endif /* InstructionSets_M50740_Instruction_h */ #endif /* InstructionSets_M50740_Instruction_h */

View File

@ -13,8 +13,7 @@
#include "Decoder.hpp" #include "Decoder.hpp"
#include "../AccessType.hpp" #include "../AccessType.hpp"
namespace InstructionSet { namespace InstructionSet::M50740 {
namespace M50740 {
template<typename Target, bool include_entries_and_accesses> struct Parser { template<typename Target, bool include_entries_and_accesses> struct Parser {
void parse(Target &target, const uint8_t *storage, uint16_t start, uint16_t closing_bound) { void parse(Target &target, const uint8_t *storage, uint16_t start, uint16_t closing_bound) {
@ -119,7 +118,6 @@ template<typename Target, bool include_entries_and_accesses> struct Parser {
} }
}; };
}
} }
#endif /* InstructionSets_M50740_Parser_hpp */ #endif /* InstructionSets_M50740_Parser_hpp */

View File

@ -13,8 +13,7 @@
#include "Model.hpp" #include "Model.hpp"
#include "../../Numeric/Sizes.hpp" #include "../../Numeric/Sizes.hpp"
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
/*! /*!
A stateless decoder that can map from instruction words to preinstructions A stateless decoder that can map from instruction words to preinstructions
@ -115,7 +114,6 @@ template <Model model> class Predecoder {
static constexpr Operation operation(OpT op); static constexpr Operation operation(OpT op);
}; };
}
} }
#endif /* InstructionSets_M68k_Decoder_hpp */ #endif /* InstructionSets_M68k_Decoder_hpp */

View File

@ -9,8 +9,7 @@
#ifndef InstructionSets_M68k_ExceptionVectors_hpp #ifndef InstructionSets_M68k_ExceptionVectors_hpp
#define InstructionSets_M68k_ExceptionVectors_hpp #define InstructionSets_M68k_ExceptionVectors_hpp
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
enum Exception { enum Exception {
InitialStackPointer = 0, InitialStackPointer = 0,
@ -44,7 +43,6 @@ enum Exception {
MMUAccessLevelViolationError = 58, MMUAccessLevelViolationError = 58,
}; };
}
} }
#endif /* InstructionSets_M68k_ExceptionVectors_hpp */ #endif /* InstructionSets_M68k_ExceptionVectors_hpp */

View File

@ -16,8 +16,7 @@
#include "RegisterSet.hpp" #include "RegisterSet.hpp"
#include "Status.hpp" #include "Status.hpp"
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
/// Maps the 68k function codes such that bits 0, 1 and 2 represent /// Maps the 68k function codes such that bits 0, 1 and 2 represent
/// FC0, FC1 and FC2 respectively. /// FC0, FC1 and FC2 respectively.
@ -163,7 +162,6 @@ template <Model model, typename BusHandler> class Executor {
} state_; } state_;
}; };
}
} }
#include "Implementation/ExecutorImplementation.hpp" #include "Implementation/ExecutorImplementation.hpp"

View File

@ -15,8 +15,7 @@
#include <cassert> #include <cassert>
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
#define An(x) state_.registers[8 + x] #define An(x) state_.registers[8 + x]
#define Dn(x) state_.registers[x] #define Dn(x) state_.registers[x]
@ -749,7 +748,6 @@ void Executor<model, BusHandler>::State::movem_toR(Preinstruction instruction, u
#undef An #undef An
#undef AccessException #undef AccessException
}
} }
#endif /* InstructionSets_M68k_ExecutorImplementation_hpp */ #endif /* InstructionSets_M68k_ExecutorImplementation_hpp */

View File

@ -9,8 +9,7 @@
#ifndef InstructionSets_68k_InstructionOperandFlags_hpp #ifndef InstructionSets_68k_InstructionOperandFlags_hpp
#define InstructionSets_68k_InstructionOperandFlags_hpp #define InstructionSets_68k_InstructionOperandFlags_hpp
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
template <Model model, Operation t_operation> constexpr uint8_t operand_flags(Operation r_operation) { template <Model model, Operation t_operation> constexpr uint8_t operand_flags(Operation r_operation) {
switch((t_operation != Operation::Undefined) ? t_operation : r_operation) { switch((t_operation != Operation::Undefined) ? t_operation : r_operation) {
@ -168,7 +167,6 @@ template <Model model, Operation t_operation> constexpr uint8_t operand_flags(Op
} }
} }
}
} }
#endif /* InstructionSets_68k_InstructionOperandFlags_hpp */ #endif /* InstructionSets_68k_InstructionOperandFlags_hpp */

View File

@ -9,8 +9,7 @@
#ifndef InstructionSets_68k_InstructionOperandSize_hpp #ifndef InstructionSets_68k_InstructionOperandSize_hpp
#define InstructionSets_68k_InstructionOperandSize_hpp #define InstructionSets_68k_InstructionOperandSize_hpp
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
template <Operation t_operation> template <Operation t_operation>
constexpr DataSize operand_size(Operation r_operation) { constexpr DataSize operand_size(Operation r_operation) {
@ -128,7 +127,6 @@ constexpr DataSize operand_size(Operation r_operation) {
} }
} }
}
} }
#endif /* InstructionSets_68k_InstructionOperandSize_hpp */ #endif /* InstructionSets_68k_InstructionOperandSize_hpp */

View File

@ -15,8 +15,7 @@
#include <cassert> #include <cassert>
#include <cmath> #include <cmath>
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
/// Sign-extend @c x to 32 bits and return as an unsigned 32-bit int. /// Sign-extend @c x to 32 bits and return as an unsigned 32-bit int.
inline uint32_t u_extend16(uint16_t x) { return uint32_t(int16_t(x)); } inline uint32_t u_extend16(uint16_t x) { return uint32_t(int16_t(x)); }
@ -1030,7 +1029,6 @@ template <
} }
}
} }
#endif /* InstructionSets_M68k_PerformImplementation_h */ #endif /* InstructionSets_M68k_PerformImplementation_h */

View File

@ -15,8 +15,7 @@
#include <cstdint> #include <cstdint>
#include <string> #include <string>
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
enum class Operation: uint8_t { enum class Operation: uint8_t {
Undefined, Undefined,
@ -494,7 +493,6 @@ class Preinstruction {
const char *operation_string() const; const char *operation_string() const;
}; };
}
} }
#include "Implementation/InstructionOperandSize.hpp" #include "Implementation/InstructionOperandSize.hpp"

View File

@ -9,8 +9,7 @@
#ifndef InstructionSets_M68k_Model_hpp #ifndef InstructionSets_M68k_Model_hpp
#define InstructionSets_M68k_Model_hpp #define InstructionSets_M68k_Model_hpp
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
enum class Model { enum class Model {
M68000, M68000,
@ -20,7 +19,6 @@ enum class Model {
M68040, M68040,
}; };
}
} }
#endif /* InstructionSets_M68k_Model_hpp */ #endif /* InstructionSets_M68k_Model_hpp */

View File

@ -14,8 +14,7 @@
#include "Status.hpp" #include "Status.hpp"
#include "../../Numeric/RegisterSizes.hpp" #include "../../Numeric/RegisterSizes.hpp"
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
struct NullFlowController { struct NullFlowController {
// //
@ -167,7 +166,6 @@ template <
Operation operation = Operation::Undefined Operation operation = Operation::Undefined
> void perform(Preinstruction instruction, CPU::RegisterPair32 &source, CPU::RegisterPair32 &dest, Status &status, FlowController &flow_controller); > void perform(Preinstruction instruction, CPU::RegisterPair32 &source, CPU::RegisterPair32 &dest, Status &status, FlowController &flow_controller);
}
} }
#include "Implementation/PerformImplementation.hpp" #include "Implementation/PerformImplementation.hpp"

View File

@ -9,8 +9,7 @@
#ifndef InstructionSets_M68k_RegisterSet_h #ifndef InstructionSets_M68k_RegisterSet_h
#define InstructionSets_M68k_RegisterSet_h #define InstructionSets_M68k_RegisterSet_h
namespace InstructionSet { namespace InstructionSet::M68k {
namespace M68k {
struct RegisterSet { struct RegisterSet {
uint32_t data[8], address[7]; uint32_t data[8], address[7];
@ -25,7 +24,6 @@ struct RegisterSet {
} }
}; };
}
} }
#endif /* InstructionSets_M68k_RegisterSet_h */ #endif /* InstructionSets_M68k_RegisterSet_h */

Some files were not shown because too many files have changed in this diff Show More