diff --git a/Machines/AtariST/AtariST.cpp b/Machines/AtariST/AtariST.cpp
index 4e4001993..da56271ee 100644
--- a/Machines/AtariST/AtariST.cpp
+++ b/Machines/AtariST/AtariST.cpp
@@ -8,10 +8,39 @@
 
 #include "AtariST.hpp"
 
+#include "../CRTMachine.hpp"
+
+namespace {
+
+const int CLOCK_RATE = 8000000;
+
+using Target = Analyser::Static::Target;
+
+class ConcreteMachine:
+	public Atari::ST::Machine,
+	public CRTMachine::Machine {
+	public:
+		ConcreteMachine(const Target &target, const ROMMachine::ROMFetcher &rom_fetcher) {
+			set_clock_rate(CLOCK_RATE);
+		}
+
+		void set_scan_target(Outputs::Display::ScanTarget *scan_target) final {
+		}
+
+		Outputs::Speaker::Speaker *get_speaker() final {
+			return nullptr;
+		}
+
+		void run_for(const Cycles cycles) final {
+		}
+};
+
+}
+
 using namespace Atari::ST;
 
 Machine *Machine::AtariST(const Analyser::Static::Target *target, const ROMMachine::ROMFetcher &rom_fetcher) {
-	return nullptr;
+	return new ConcreteMachine(*target, rom_fetcher);
 }
 
 Machine::~Machine() {}