diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt
index 2be6fe996..959084cdf 100644
--- a/src/common/CMakeLists.txt
+++ b/src/common/CMakeLists.txt
@@ -32,7 +32,6 @@ set(HEADERS
             common_funcs.h
             common_paths.h
             common_types.h
-            debug_interface.h
             emu_window.h
             file_util.h
             hash.h
diff --git a/src/common/break_points.cpp b/src/common/break_points.cpp
index 023a485a4..e7d0d3e43 100644
--- a/src/common/break_points.cpp
+++ b/src/common/break_points.cpp
@@ -2,7 +2,6 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "common/debug_interface.h"
 #include "common/break_points.h"
 #include "common/logging/log.h"
 
@@ -101,92 +100,3 @@ void BreakPoints::Clear()
 
     m_BreakPoints.clear();
 }
-
-MemChecks::TMemChecksStr MemChecks::GetStrings() const
-{
-    TMemChecksStr mcs;
-    for (auto memcheck : m_MemChecks)
-    {
-        std::stringstream mc;
-        mc << std::hex << memcheck.StartAddress;
-        mc << " " << (memcheck.bRange ? memcheck.EndAddress : memcheck.StartAddress) << " "
-            << (memcheck.bRange  ? "n" : "")
-            << (memcheck.OnRead  ? "r" : "")
-            << (memcheck.OnWrite ? "w" : "")
-            << (memcheck.Log     ? "l" : "")
-            << (memcheck.Break   ? "p" : "");
-        mcs.push_back(mc.str());
-    }
-
-    return mcs;
-}
-
-void MemChecks::AddFromStrings(const TMemChecksStr& mcs)
-{
-    for (auto mcs_item : mcs)
-    {
-        TMemCheck mc;
-        std::stringstream mcstr;
-        mcstr << std::hex << mcs_item;
-        mcstr >> mc.StartAddress;
-        mc.bRange   = mcs_item.find("n") != mcs_item.npos;
-        mc.OnRead   = mcs_item.find("r") != mcs_item.npos;
-        mc.OnWrite  = mcs_item.find("w") != mcs_item.npos;
-        mc.Log      = mcs_item.find("l") != mcs_item.npos;
-        mc.Break    = mcs_item.find("p") != mcs_item.npos;
-        if (mc.bRange)
-            mcstr >> mc.EndAddress;
-        else
-            mc.EndAddress = mc.StartAddress;
-        Add(mc);
-    }
-}
-
-void MemChecks::Add(const TMemCheck& rMemoryCheck)
-{
-    if (GetMemCheck(rMemoryCheck.StartAddress) == 0)
-        m_MemChecks.push_back(rMemoryCheck);
-}
-
-void MemChecks::Remove(u32 Address)
-{
-    auto cond = [&Address](const TMemCheck& mc) { return mc.StartAddress == Address; };
-    auto it   = std::find_if(m_MemChecks.begin(), m_MemChecks.end(), cond);
-    if (it != m_MemChecks.end())
-        m_MemChecks.erase(it);
-}
-
-TMemCheck *MemChecks::GetMemCheck(u32 address)
-{
-    for (auto i = m_MemChecks.begin(); i != m_MemChecks.end(); ++i)
-    {
-        if (i->bRange)
-        {
-            if (address >= i->StartAddress && address <= i->EndAddress)
-                return &(*i);
-        }
-        else if (i->StartAddress == address)
-            return &(*i);
-    }
-
-    // none found
-    return 0;
-}
-
-void TMemCheck::Action(DebugInterface *debug_interface, u32 iValue, u32 addr,
-                        bool write, int size, u32 pc)
-{
-    if ((write && OnWrite) || (!write && OnRead))
-    {
-        if (Log)
-        {
-            LOG_DEBUG(Debug_Breakpoint, "CHK %08x (%s) %s%i %0*x at %08x (%s)",
-                pc, debug_interface->getDescription(pc).c_str(),
-                write ? "Write" : "Read", size*8, size*2, iValue, addr,
-                debug_interface->getDescription(addr).c_str()
-                );
-        }
-        if (Break)
-            debug_interface->breakNow();
-    }
-}
diff --git a/src/common/break_points.h b/src/common/break_points.h
index f0a55e7b1..b0629df37 100644
--- a/src/common/break_points.h
+++ b/src/common/break_points.h
@@ -18,31 +18,6 @@ struct TBreakPoint
     bool bTemporary;
 };
 
-struct TMemCheck
-{
-    TMemCheck():
-        StartAddress(0), EndAddress(0),
-        bRange(false), OnRead(false), OnWrite(false),
-        Log(false), Break(false), numHits(0)
-    { }
-
-    u32  StartAddress;
-    u32  EndAddress;
-
-    bool bRange;
-
-    bool OnRead;
-    bool OnWrite;
-
-    bool Log;
-    bool Break;
-
-    u32  numHits;
-
-    void Action(DebugInterface *dbg_interface, u32 iValue, u32 addr,
-                bool write, int size, u32 pc);
-};
-
 // Code breakpoints.
 class BreakPoints
 {
@@ -73,27 +48,3 @@ private:
     TBreakPoints m_BreakPoints;
     u32          m_iBreakOnCount;
 };
-
-
-// Memory breakpoints
-class MemChecks
-{
-public:
-    typedef std::vector<TMemCheck> TMemChecks;
-    typedef std::vector<std::string> TMemChecksStr;
-
-    TMemChecks m_MemChecks;
-
-    const TMemChecks& GetMemChecks() { return m_MemChecks; }
-
-    TMemChecksStr GetStrings() const;
-    void AddFromStrings(const TMemChecksStr& mcs);
-
-    void Add(const TMemCheck& rMemoryCheck);
-
-    // memory breakpoint
-    TMemCheck *GetMemCheck(u32 address);
-    void Remove(u32 _Address);
-
-    void Clear() { m_MemChecks.clear(); };
-};
diff --git a/src/common/debug_interface.h b/src/common/debug_interface.h
deleted file mode 100644
index 32f55cb59..000000000
--- a/src/common/debug_interface.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#pragma once
-
-#include <cstring>
-#include <string>
-
-class DebugInterface
-{
-protected:
-    virtual ~DebugInterface() {}
-
-public:
-    virtual void disasm(unsigned int /*address*/, char *dest, int /*max_size*/) {strcpy(dest, "NODEBUGGER");}
-    virtual void getRawMemoryString(int /*memory*/, unsigned int /*address*/, char *dest, int /*max_size*/) {strcpy(dest, "NODEBUGGER");}
-    virtual int getInstructionSize(int /*instruction*/) {return 1;}
-    virtual bool isAlive() {return true;}
-    virtual bool isBreakpoint(unsigned int /*address*/) {return false;}
-    virtual void setBreakpoint(unsigned int /*address*/){}
-    virtual void clearBreakpoint(unsigned int /*address*/){}
-    virtual void clearAllBreakpoints() {}
-    virtual void toggleBreakpoint(unsigned int /*address*/){}
-    virtual bool isMemCheck(unsigned int /*address*/) {return false;}
-    virtual void toggleMemCheck(unsigned int /*address*/){}
-    virtual unsigned int readMemory(unsigned int /*address*/){return 0;}
-    virtual void writeExtraMemory(int /*memory*/, unsigned int /*value*/, unsigned int /*address*/) {}
-    virtual unsigned int readExtraMemory(int /*memory*/, unsigned int /*address*/){return 0;}
-    virtual unsigned int readInstruction(unsigned int /*address*/){return 0;}
-    virtual unsigned int getPC() {return 0;}
-    virtual void setPC(unsigned int /*address*/) {}
-    virtual void step() {}
-    virtual void runToBreakpoint() {}
-    virtual void breakNow() {}
-    virtual void insertBLR(unsigned int /*address*/, unsigned int /*value*/) {}
-    virtual void showJitResults(unsigned int /*address*/) {};
-    virtual int getColor(unsigned int /*address*/){return 0xFFFFFFFF;}
-    virtual std::string getDescription(unsigned int /*address*/) = 0;
-};