w11 - cpp 0.794
Backend server for Rlink and w11
Loading...
Searching...
No Matches
Retro::Rw11Cpu Class Reference

FIXME_docs. More...

#include <Rw11Cpu.hpp>

Inheritance diagram for Retro::Rw11Cpu:
[legend]
Collaboration diagram for Retro::Rw11Cpu:
[legend]

Public Types

typedef std::map< std::string, std::shared_ptr< Rw11Cntl > > cmap_t
 

Public Member Functions

 Rw11Cpu (const std::string &type)
 Constructor.
 
virtual ~Rw11Cpu ()
 Destructor.
 
 Rw11Cpu (const Rw11Cpu &)=delete
 
Rw11Cpuoperator= (const Rw11Cpu &)=delete
 
void Setup (Rw11 *pw11)
 FIXME_docs.
 
Rw11W11 () const
 FIXME_docs.
 
RlinkServerServer () const
 FIXME_docs.
 
RlinkConnectConnect () const
 FIXME_docs.
 
RlogFileLogFile () const
 FIXME_docs.
 
const std::string & Type () const
 FIXME_docs.
 
size_t Index () const
 FIXME_docs.
 
uint16_t Base () const
 FIXME_docs.
 
uint16_t IBase () const
 FIXME_docs.
 
uint32_t MemSize () const
 FIXME_docs.
 
bool HasScnt () const
 FIXME_docs.
 
bool HasPcnt () const
 FIXME_docs.
 
bool HasCmon () const
 FIXME_docs.
 
uint16_t HasHbpt () const
 FIXME_docs.
 
bool HasIbmon () const
 FIXME_docs.
 
bool HasIbtst () const
 FIXME_docs.
 
bool HasM9312 () const
 FIXME_docs.
 
bool HasKw11l () const
 FIXME_docs.
 
bool HasKw11p () const
 FIXME_docs.
 
bool HasIist () const
 FIXME_docs.
 
void AddCntl (const std::shared_ptr< Rw11Cntl > &spcntl)
 FIXME_docs.
 
bool TestCntl (const std::string &name) const
 FIXME_docs.
 
void ListCntl (std::vector< std::string > &list) const
 FIXME_docs.
 
Rw11CntlCntl (const std::string &name) const
 FIXME_docs.
 
void Start ()
 FIXME_docs.
 
std::string NextCntlName (const std::string &base) const
 FIXME_docs.
 
int AddMembe (RlinkCommandList &clist, uint16_t be, bool stick=false)
 FIXME_docs.
 
int AddRibr (RlinkCommandList &clist, uint16_t ibaddr)
 FIXME_docs.
 
int AddWibr (RlinkCommandList &clist, uint16_t ibaddr, uint16_t data)
 FIXME_docs.
 
int AddRbibr (RlinkCommandList &clist, uint16_t ibaddr, size_t size)
 FIXME_docs.
 
int AddWbibr (RlinkCommandList &clist, uint16_t ibaddr, const std::vector< uint16_t > &block)
 FIXME_docs.
 
int AddWbibr (RlinkCommandList &clist, uint16_t ibaddr, std::vector< uint16_t > &&block)
 FIXME_docs.
 
int AddLalh (RlinkCommandList &clist, uint32_t addr, uint16_t mode=kCPAH_M_22BIT)
 FIXME_docs.
 
void ModLalh (RlinkCommandList &clist, size_t ind, uint32_t addr, uint16_t mode=kCPAH_M_22BIT)
 FIXME_docs.
 
int AddRMem (RlinkCommandList &clist, uint32_t addr, uint16_t *buf, size_t size, uint16_t mode=kCPAH_M_22BIT, bool singleblk=false)
 FIXME_docs.
 
int AddWMem (RlinkCommandList &clist, uint32_t addr, const uint16_t *buf, size_t size, uint16_t mode=kCPAH_M_22BIT, bool singleblk=false)
 FIXME_docs.
 
void ExecWibr (uint16_t ibaddr0, uint16_t data0, uint16_t ibaddr1=0, uint16_t data1=0, uint16_t ibaddr2=0, uint16_t data2=0)
 FIXME_docs.
 
uint16_t ExecRibr (uint16_t ibaddr)
 FIXME_docs.
 
bool MemRead (uint16_t addr, std::vector< uint16_t > &data, size_t nword, RerrMsg &emsg)
 FIXME_docs.
 
bool MemWrite (uint16_t addr, const std::vector< uint16_t > &data, RerrMsg &emsg)
 FIXME_docs.
 
bool MemWriteByte (uint32_t addr, uint8_t data, RerrMsg &emsg)
 FIXME_docs.
 
bool ProbeCntl (Rw11Probe &dsc)
 FIXME_docs.
 
bool LoadAbs (const std::string &fname, RerrMsg &emsg, uint16_t &start, bool trace=false)
 FIXME_docs.
 
bool Boot (const std::string &uname, RerrMsg &emsg)
 FIXME_docs.
 
void SetCpuActUp ()
 FIXME_docs.
 
void SetCpuActDown (uint16_t stat)
 FIXME_docs.
 
int WaitCpuActDown (const Rtime &tout, Rtime &twait)
 FIXME_docs.
 
bool CpuAct () const
 FIXME_docs.
 
uint16_t CpuStat () const
 FIXME_docs.
 
uint16_t IbusRemoteAddr (uint16_t ibaddr) const
 FIXME_docs.
 
void AllIAddrMapInsert (const std::string &name, uint16_t ibaddr)
 FIXME_docs.
 
void AllRAddrMapInsert (const std::string &name, uint16_t rbaddr)
 FIXME_docs.
 
bool IAddrMapInsert (const std::string &name, uint16_t ibaddr)
 FIXME_docs.
 
bool IAddrMapErase (const std::string &name)
 FIXME_docs.
 
bool IAddrMapErase (uint16_t ibaddr)
 FIXME_docs.
 
void IAddrMapClear ()
 FIXME_docs.
 
const RlinkAddrMapIAddrMap () const
 FIXME_docs.
 
bool RAddrMapInsert (const std::string &name, uint16_t rbaddr)
 FIXME_docs.
 
bool RAddrMapErase (const std::string &name)
 FIXME_docs.
 
bool RAddrMapErase (uint16_t rbaddr)
 FIXME_docs.
 
void RAddrMapClear ()
 FIXME_docs.
 
const RlinkAddrMapRAddrMap () const
 FIXME_docs.
 
void W11AttnHandler ()
 FIXME_docs.
 
RstatsStats ()
 FIXME_docs.
 
virtual void Dump (std::ostream &os, int ind=0, const char *text=0, int detail=0) const
 FIXME_docs.
 

Static Public Attributes

static const uint16_t kCPCONF = 0x0000
 CPCONF reg offset.
 
static const uint16_t kCPCNTL = 0x0001
 CPADDR reg offset.
 
static const uint16_t kCPSTAT = 0x0002
 CPSTAT reg offset.
 
static const uint16_t kCPPSW = 0x0003
 CPPSW reg offset.
 
static const uint16_t kCPAL = 0x0004
 CPAL reg offset.
 
static const uint16_t kCPAH = 0x0005
 CPAH reg offset.
 
static const uint16_t kCPMEM = 0x0006
 CPMEM reg offset.
 
static const uint16_t kCPMEMI = 0x0007
 CPMEMI reg offset.
 
static const uint16_t kCPR0 = 0x0008
 CPR0 reg offset.
 
static const uint16_t kCPPC = 0x000f
 CPPC reg offset.
 
static const uint16_t kCPMEMBE = 0x0010
 CPMEMBE reg offset.
 
static const uint16_t kCPFUNC_NOOP = 0x0000
 NOOP func code.
 
static const uint16_t kCPFUNC_START = 0x0001
 START func code.
 
static const uint16_t kCPFUNC_STOP = 0x0002
 STOP func code.
 
static const uint16_t kCPFUNC_STEP = 0x0003
 STEP func code.
 
static const uint16_t kCPFUNC_CRESET = 0x0004
 CRESET func code.
 
static const uint16_t kCPFUNC_BRESET = 0x0005
 BRESET func code.
 
static const uint16_t kCPFUNC_SUSPEND = 0x0006
 SUSPEND func code.
 
static const uint16_t kCPFUNC_RESUME = 0x0007
 RESUME func code.
 
static const uint16_t kCPSTAT_M_SuspExt = kWBit09
 suspext mask
 
static const uint16_t kCPSTAT_M_SuspInt = kWBit08
 suspint mask
 
static const uint16_t kCPSTAT_M_CpuRust = 0x00f0
 cpurust mask
 
static const uint16_t kCPSTAT_V_CpuRust = 4
 cpurust shift
 
static const uint16_t kCPSTAT_B_CpuRust = 0x000f
 cpurust bit mask
 
static const uint16_t kCPSTAT_M_CpuSusp = kWBit03
 cpususp mask
 
static const uint16_t kCPSTAT_M_CpuGo = kWBit02
 cpugo mask
 
static const uint16_t kCPSTAT_M_CmdMErr = kWBit01
 cmdmerr mask
 
static const uint16_t kCPSTAT_M_CmdErr = kWBit00
 cmderr mask
 
static const uint16_t kCPURUST_INIT = 0x0
 cpu in init state
 
static const uint16_t kCPURUST_HALT = 0x1
 cpu executed HALT
 
static const uint16_t kCPURUST_RESET = 0x2
 cpu was reset
 
static const uint16_t kCPURUST_STOP = 0x3
 cpu was stopped
 
static const uint16_t kCPURUST_STEP = 0x4
 cpu was stepped
 
static const uint16_t kCPURUST_SUSP = 0x5
 cpu was suspended
 
static const uint16_t kCPURUST_HBPT = 0x6
 cpu hardware bpt
 
static const uint16_t kCPURUST_RUNS = 0x7
 cpu running
 
static const uint16_t kCPURUST_VECFET = 0x8
 vector fetch halt
 
static const uint16_t kCPURUST_RECRSV = 0x9
 rec red-stack halt
 
static const uint16_t kCPURUST_SFAIL = 0xa
 sequencer failure
 
static const uint16_t kCPURUST_VFAIL = 0xb
 vmbox failure
 
static const uint16_t kCPAH_M_ADDR = 0x003f
 mask for 6bit msb
 
static const uint16_t kCPAH_M_22BIT = kWBit06
 ena 22bit addressing
 
static const uint16_t kCPAH_M_UBMAP = kWBit07
 ena ubmap
 
static const uint16_t kCPAH_M_UBM22 = kWBit06|kWBit07
 ubmap+22bit
 
static const uint16_t kCPMEMBE_M_STICK = kWBit02
 membe: sticky flag
 
static const uint16_t kCPMEMBE_M_BE = 0x0003
 membe: be field
 
static const uint16_t kCPMEMBE_M_BE0 = 0x0001
 membe: be0 flag
 
static const uint16_t kCPMEMBE_M_BE1 = 0x0002
 membe: be1 flag
 
static const uint8_t kStat_M_CmdErr = kBBit07
 stat: cmderr flag
 
static const uint8_t kStat_M_CmdMErr = kBBit06
 stat: cmdmerr flag
 
static const uint8_t kStat_M_CpuSusp = kBBit05
 stat: cpususp flag
 
static const uint8_t kStat_M_CpuGo = kBBit04
 stat: cpugo flag
 
static const uint16_t kCPUPSW = 0177776
 CPU PSW address.
 
static const uint16_t kCPUSTKLIM = 0177774
 CPU STKLIM address.
 
static const uint16_t kCPUPIRQ = 0177772
 CPU PIRQ address.
 
static const uint16_t kCPUMBRK = 0177770
 CPU MBRK address.
 
static const uint16_t kCPUERR = 0177766
 CPU CPUERR address.
 
static const uint16_t kCPUSYSID = 0177764
 CPU SYSID address.
 
static const uint16_t kCPUSDREG = 0177570
 CPU SDREG address.
 
static const uint16_t kCPUUBMAP = 0170200
 UBMAP base address.
 
static const uint16_t kMEMHISIZE = 0177762
 MEM HISIZE address.
 
static const uint16_t kMEMLOSIZE = 0177760
 MEM LOSIZE address.
 
static const uint16_t kMEMHM = 0177752
 MEM HM address.
 
static const uint16_t kMEMMAINT = 0177750
 MEM MAINT address.
 
static const uint16_t kMEMCNTRL = 0177746
 MEM CNTRL address.
 
static const uint16_t kMEMSYSERR = 0177744
 MEM SYSERR address.
 
static const uint16_t kMEMHIADDR = 0177742
 MEM HIADDR address.
 
static const uint16_t kMEMLOADDR = 0177740
 MEM LOADDR address.
 
static const uint16_t kMMUMMR3 = 0172516
 MMU MMR3 address.
 
static const uint16_t kMMUMMR2 = 0177576
 MMU MMR2 address.
 
static const uint16_t kMMUMMR1 = 0177574
 MMU MMR1 address.
 
static const uint16_t kMMUMMR0 = 0177572
 MMU MMR0 address.
 
static const uint16_t kMMUPDRK = 0172300
 MMU PDRK address.
 
static const uint16_t kMMUPARK = 0172340
 MMU PARK address.
 
static const uint16_t kMMUPDRS = 0172200
 MMU PDRS address.
 
static const uint16_t kMMUPARS = 0172240
 MMU PARS address.
 
static const uint16_t kMMUPDRU = 0177600
 MMU PDRU address.
 
static const uint16_t kMMUPARU = 0177640
 MMU PARU address.
 
static const uint16_t kSCBASE = 0x0040
 DMSCNT reg base offset.
 
static const uint16_t kSCCNTL = 0x0000
 SC.CNTL reg offset.
 
static const uint16_t kSCADDR = 0x0001
 SC.ADDR reg offset.
 
static const uint16_t kSCDATA = 0x0002
 SC.DATA reg offset.
 
static const uint16_t kCMBASE = 0x0048
 DMCMON reg base offset.
 
static const uint16_t kCMCNTL = 0x0000
 CM.CNTL reg offset.
 
static const uint16_t kCMSTAT = 0x0001
 CM.STAT reg offset.
 
static const uint16_t kCMADDR = 0x0002
 CM.ADDR reg offset.
 
static const uint16_t kCMDATA = 0x0003
 CM.DATA reg offset.
 
static const uint16_t kCMIADDR = 0x0004
 CM.IADDR reg offset.
 
static const uint16_t kCMIPC = 0x0005
 CM.IPC reg offset.
 
static const uint16_t kCMIREG = 0x0006
 CM.IREG reg offset.
 
static const uint16_t kCMIMAL = 0x0007
 CM.IMAL reg offset.
 
static const uint16_t kHBBASE = 0x0050
 DMHBPT reg base offset.
 
static const uint16_t kHBSIZE = 0x0004
 DMHBPT unit size.
 
static const uint16_t kHBNMAX = 0x0004
 DMHBPT max number units.
 
static const uint16_t kHBCNTL = 0x0000
 HB.CNTL reg offset.
 
static const uint16_t kHBSTAT = 0x0001
 HB.STAT reg offset.
 
static const uint16_t kHBHILIM = 0x0002
 HB.HILIM reg offset.
 
static const uint16_t kHBLOLIM = 0x0003
 HB.LOLIM reg offset.
 
static const uint16_t kPCBASE = 0x0060
 DMPCNT reg base offset.
 
static const uint16_t kPCCNTL = 0x0000
 PC.CNTL reg offset.
 
static const uint16_t kPCSTAT = 0x0001
 PC.STAT reg offset.
 
static const uint16_t kPCDATA = 0x0002
 PC.DATA reg offset.
 
static const uint16_t kIMBASE = 0160000
 Ibmon ibus address.
 
static const uint16_t kIMCNTL = 0x0000
 IM.CNTL reg offset.
 
static const uint16_t kIMSTAT = 0x0002
 IM.STAT reg offset.
 
static const uint16_t kIMHILIM = 0x0004
 IM.HILIM reg offset.
 
static const uint16_t kIMLOLIM = 0x0006
 IM.LOLIM reg offset.
 
static const uint16_t kIMADDR = 0x0008
 IM.ADDR reg offset.
 
static const uint16_t kIMDATA = 0x000a
 IM.DATA reg offset.
 
static const uint16_t kITBASE = 0170000
 Ibtst ibus address.
 
static const uint16_t kITCNTL = 0x0000
 IT.CNTL reg offset.
 
static const uint16_t kITSTAT = 0x0002
 IT.STAT reg offset.
 
static const uint16_t kITDATA = 0x0004
 IT.DATA reg offset.
 
static const uint16_t kITFIFO = 0x0006
 IT.FIFO reg offset.
 
static const uint16_t kM9BASE = 0165000
 M9312 ibus address.
 
static const uint16_t kKWLBASE = 0177546
 KW11-L ibus address.
 
static const uint16_t kKWPBASE = 0172540
 KW11-P ibus address.
 
static const uint16_t kKWPCSR = 0x0000
 KWP.CSR reg offset.
 
static const uint16_t kKWPCSB = 0x0002
 KWP.CSB reg offset.
 
static const uint16_t kKWPCTR = 0x0004
 KWP.CTR reg offset.
 
static const uint16_t kIISTBASE = 0177500
 IIST ibus address.
 
static const uint16_t kIISTACR = 0x0000
 II.ACR reg offset.
 
static const uint16_t kIISTADR = 0x0002
 II.ADR reg offset.
 
- Static Public Attributes inherited from Retro::Rbits
static const uint8_t kBBit00 = 1u<< 0
 
static const uint8_t kBBit01 = 1u<< 1
 
static const uint8_t kBBit02 = 1u<< 2
 
static const uint8_t kBBit03 = 1u<< 3
 
static const uint8_t kBBit04 = 1u<< 4
 
static const uint8_t kBBit05 = 1u<< 5
 
static const uint8_t kBBit06 = 1u<< 6
 
static const uint8_t kBBit07 = 1u<< 7
 
static const uint16_t kWBit00 = 1u<< 0
 
static const uint16_t kWBit01 = 1u<< 1
 
static const uint16_t kWBit02 = 1u<< 2
 
static const uint16_t kWBit03 = 1u<< 3
 
static const uint16_t kWBit04 = 1u<< 4
 
static const uint16_t kWBit05 = 1u<< 5
 
static const uint16_t kWBit06 = 1u<< 6
 
static const uint16_t kWBit07 = 1u<< 7
 
static const uint16_t kWBit08 = 1u<< 8
 
static const uint16_t kWBit09 = 1u<< 9
 
static const uint16_t kWBit10 = 1u<<10
 
static const uint16_t kWBit11 = 1u<<11
 
static const uint16_t kWBit12 = 1u<<12
 
static const uint16_t kWBit13 = 1u<<13
 
static const uint16_t kWBit14 = 1u<<14
 
static const uint16_t kWBit15 = 1u<<15
 
static const uint32_t kLBit00 = 1u<< 0
 
static const uint32_t kLBit01 = 1u<< 1
 
static const uint32_t kLBit02 = 1u<< 2
 
static const uint32_t kLBit03 = 1u<< 3
 
static const uint32_t kLBit04 = 1u<< 4
 
static const uint32_t kLBit05 = 1u<< 5
 
static const uint32_t kLBit06 = 1u<< 6
 
static const uint32_t kLBit07 = 1u<< 7
 
static const uint32_t kLBit08 = 1u<< 8
 
static const uint32_t kLBit09 = 1u<< 9
 
static const uint32_t kLBit10 = 1u<<10
 
static const uint32_t kLBit11 = 1u<<11
 
static const uint32_t kLBit12 = 1u<<12
 
static const uint32_t kLBit13 = 1u<<13
 
static const uint32_t kLBit14 = 1u<<14
 
static const uint32_t kLBit15 = 1u<<15
 
static const uint32_t kLBit16 = 1u<<16
 
static const uint32_t kLBit17 = 1u<<17
 
static const uint32_t kLBit18 = 1u<<18
 
static const uint32_t kLBit19 = 1u<<19
 
static const uint32_t kLBit20 = 1u<<20
 
static const uint32_t kLBit21 = 1u<<21
 
static const uint32_t kLBit22 = 1u<<22
 
static const uint32_t kLBit23 = 1u<<23
 
static const uint32_t kLBit24 = 1u<<24
 
static const uint32_t kLBit25 = 1u<<25
 
static const uint32_t kLBit26 = 1u<<26
 
static const uint32_t kLBit27 = 1u<<27
 
static const uint32_t kLBit28 = 1u<<28
 
static const uint32_t kLBit29 = 1u<<29
 
static const uint32_t kLBit30 = 1u<<30
 
static const uint32_t kLBit31 = 1u<<31
 

Protected Member Functions

void SetupStd ()
 FIXME_docs.
 
void SetupOpt ()
 FIXME_docs.
 

Protected Attributes

Rw11fpW11
 
std::string fType
 
size_t fIndex
 
uint16_t fBase
 
uint16_t fIBase
 
uint32_t fMemSize
 memory size in byte
 
bool fHasScnt
 has dmscnt (state counter)
 
bool fHasPcnt
 has dmpcnt (perf counters)
 
bool fHasCmon
 has dmcmon (cpu monitor)
 
uint16_t fHasHbpt
 has dmhbpt (hardware breakpoint)
 
bool fHasIbmon
 has ibmon (ibus monitor)
 
bool fHasIbtst
 has ibtst (ibus tester)
 
bool fHasM9312
 has m9312 (boot rom)
 
bool fHasKw11l
 has kw11-l (line clock)
 
bool fHasKw11p
 has kw11-p (prog clock)
 
bool fHasIist
 has iist (smp comm)
 
bool fCpuAct
 
uint16_t fCpuStat
 
std::mutex fCpuActMutex
 
std::condition_variable fCpuActCond
 
cmap_t fCntlMap
 name->cntl map
 
RlinkAddrMap fIAddrMap
 ibus name<->address mapping
 
RlinkAddrMap fRAddrMap
 rbus name<->address mapping
 
Rstats fStats
 statistics
 

Private Member Functions

 Rw11Cpu ()
 default ctor blocker
 

Detailed Description

FIXME_docs.

Definition at line 66 of file Rw11Cpu.hpp.

Member Typedef Documentation

◆ cmap_t

typedef std::map<std::string, std::shared_ptr<Rw11Cntl> > Retro::Rw11Cpu::cmap_t

Definition at line 68 of file Rw11Cpu.hpp.

Constructor & Destructor Documentation

◆ Rw11Cpu() [1/3]

Retro::Rw11Cpu::Rw11Cpu ( const std::string &  type)
explicit

Constructor.

Definition at line 219 of file Rw11Cpu.cpp.

◆ ~Rw11Cpu()

Retro::Rw11Cpu::~Rw11Cpu ( )
virtual

Destructor.

Definition at line 249 of file Rw11Cpu.cpp.

◆ Rw11Cpu() [2/3]

Retro::Rw11Cpu::Rw11Cpu ( const Rw11Cpu )
delete

◆ Rw11Cpu() [3/3]

Retro::Rw11Cpu::Rw11Cpu ( )
inlineprivate

default ctor blocker

Definition at line 331 of file Rw11Cpu.hpp.

Member Function Documentation

◆ operator=()

Rw11Cpu & Retro::Rw11Cpu::operator= ( const Rw11Cpu )
delete

◆ Setup()

void Retro::Rw11Cpu::Setup ( Rw11 pw11)

FIXME_docs.

Definition at line 255 of file Rw11Cpu.cpp.

References fpW11, SetupOpt(), and SetupStd().

◆ W11()

Rw11 & Retro::Rw11Cpu::W11 ( ) const
inline

FIXME_docs.

Definition at line 30 of file Rw11Cpu.ipp.

References fpW11.

Referenced by Retro::Rw11Cntl::W11().

◆ Server()

RlinkServer & Retro::Rw11Cpu::Server ( ) const
inline

◆ Connect()

RlinkConnect & Retro::Rw11Cpu::Connect ( ) const
inline

◆ LogFile()

RlogFile & Retro::Rw11Cpu::LogFile ( ) const
inline

FIXME_docs.

Definition at line 54 of file Rw11Cpu.ipp.

References fpW11, and Retro::Rw11::LogFile().

Referenced by LoadAbs(), and Retro::Rw11Cntl::LogFile().

◆ Type()

const std::string & Retro::Rw11Cpu::Type ( ) const
inline

FIXME_docs.

Definition at line 62 of file Rw11Cpu.ipp.

References fType.

Referenced by Retro::RtclRw11::M_default(), and Retro::RtclRw11Cpu::SetupGetSet().

◆ Index()

size_t Retro::Rw11Cpu::Index ( ) const
inline

FIXME_docs.

Definition at line 70 of file Rw11Cpu.ipp.

References fIndex.

Referenced by AllIAddrMapInsert(), AllRAddrMapInsert(), and Retro::RtclRw11Cpu::SetupGetSet().

◆ Base()

uint16_t Retro::Rw11Cpu::Base ( ) const
inline

◆ IBase()

uint16_t Retro::Rw11Cpu::IBase ( ) const
inline

FIXME_docs.

Definition at line 86 of file Rw11Cpu.ipp.

References fIBase.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ MemSize()

uint32_t Retro::Rw11Cpu::MemSize ( ) const
inline

FIXME_docs.

Definition at line 94 of file Rw11Cpu.ipp.

References fMemSize.

Referenced by Retro::Rw11CntlPC11::BootCode(), MemWriteByte(), and Retro::RtclRw11Cpu::SetupGetSet().

◆ HasScnt()

bool Retro::Rw11Cpu::HasScnt ( ) const
inline

FIXME_docs.

Definition at line 102 of file Rw11Cpu.ipp.

References fHasScnt.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasPcnt()

bool Retro::Rw11Cpu::HasPcnt ( ) const
inline

FIXME_docs.

Definition at line 110 of file Rw11Cpu.ipp.

References fHasPcnt.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasCmon()

bool Retro::Rw11Cpu::HasCmon ( ) const
inline

FIXME_docs.

Definition at line 118 of file Rw11Cpu.ipp.

References fHasCmon.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasHbpt()

uint16_t Retro::Rw11Cpu::HasHbpt ( ) const
inline

FIXME_docs.

Definition at line 126 of file Rw11Cpu.ipp.

References fHasHbpt.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasIbmon()

bool Retro::Rw11Cpu::HasIbmon ( ) const
inline

FIXME_docs.

Definition at line 134 of file Rw11Cpu.ipp.

References fHasIbmon.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasIbtst()

bool Retro::Rw11Cpu::HasIbtst ( ) const
inline

FIXME_docs.

Definition at line 142 of file Rw11Cpu.ipp.

References fHasIbtst.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasM9312()

bool Retro::Rw11Cpu::HasM9312 ( ) const
inline

FIXME_docs.

Definition at line 150 of file Rw11Cpu.ipp.

References fHasM9312.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasKw11l()

bool Retro::Rw11Cpu::HasKw11l ( ) const
inline

FIXME_docs.

Definition at line 158 of file Rw11Cpu.ipp.

References fHasKw11l.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasKw11p()

bool Retro::Rw11Cpu::HasKw11p ( ) const
inline

FIXME_docs.

Definition at line 166 of file Rw11Cpu.ipp.

References fHasKw11p.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ HasIist()

bool Retro::Rw11Cpu::HasIist ( ) const
inline

FIXME_docs.

Definition at line 174 of file Rw11Cpu.ipp.

References fHasIist.

Referenced by Retro::RtclRw11Cpu::SetupGetSet().

◆ AddCntl()

◆ TestCntl()

bool Retro::Rw11Cpu::TestCntl ( const std::string &  name) const

FIXME_docs.

Definition at line 284 of file Rw11Cpu.cpp.

References fCntlMap.

Referenced by Boot().

◆ ListCntl()

void Retro::Rw11Cpu::ListCntl ( std::vector< std::string > &  list) const

◆ Cntl()

Rw11Cntl & Retro::Rw11Cpu::Cntl ( const std::string &  name) const

FIXME_docs.

Definition at line 304 of file Rw11Cpu.cpp.

References fCntlMap.

Referenced by Boot(), and Retro::RtclRw11::M_default().

◆ Start()

void Retro::Rw11Cpu::Start ( )

◆ NextCntlName()

◆ AddMembe()

int Retro::Rw11Cpu::AddMembe ( RlinkCommandList clist,
uint16_t  be,
bool  stick = false 
)

◆ AddRibr()

◆ AddWibr()

◆ AddRbibr()

◆ AddWbibr() [1/2]

int Retro::Rw11Cpu::AddWbibr ( RlinkCommandList clist,
uint16_t  ibaddr,
const std::vector< uint16_t > &  block 
)

◆ AddWbibr() [2/2]

int Retro::Rw11Cpu::AddWbibr ( RlinkCommandList clist,
uint16_t  ibaddr,
std::vector< uint16_t > &&  block 
)

FIXME_docs.

Definition at line 396 of file Rw11Cpu.cpp.

References Retro::RlinkCommandList::AddWblk(), and IbusRemoteAddr().

◆ AddLalh()

int Retro::Rw11Cpu::AddLalh ( RlinkCommandList clist,
uint32_t  addr,
uint16_t  mode = kCPAH_M_22BIT 
)

◆ ModLalh()

void Retro::Rw11Cpu::ModLalh ( RlinkCommandList clist,
size_t  ind,
uint32_t  addr,
uint16_t  mode = kCPAH_M_22BIT 
)

◆ AddRMem()

◆ AddWMem()

int Retro::Rw11Cpu::AddWMem ( RlinkCommandList clist,
uint32_t  addr,
const uint16_t *  buf,
size_t  size,
uint16_t  mode = kCPAH_M_22BIT,
bool  singleblk = false 
)

◆ ExecWibr()

◆ ExecRibr()

uint16_t Retro::Rw11Cpu::ExecRibr ( uint16_t  ibaddr)

FIXME_docs.

Definition at line 506 of file Rw11Cpu.cpp.

References AddRibr(), Retro::RlinkServer::Exec(), and Server().

Referenced by Retro::Rw11CntlDL11::Wakeup(), and Retro::Rw11CntlDZ11::Wakeup().

◆ MemRead()

bool Retro::Rw11Cpu::MemRead ( uint16_t  addr,
std::vector< uint16_t > &  data,
size_t  nword,
RerrMsg emsg 
)

◆ MemWrite()

bool Retro::Rw11Cpu::MemWrite ( uint16_t  addr,
const std::vector< uint16_t > &  data,
RerrMsg emsg 
)

◆ MemWriteByte()

bool Retro::Rw11Cpu::MemWriteByte ( uint32_t  addr,
uint8_t  data,
RerrMsg emsg 
)

◆ ProbeCntl()

◆ LoadAbs()

bool Retro::Rw11Cpu::LoadAbs ( const std::string &  fname,
RerrMsg emsg,
uint16_t &  start,
bool  trace = false 
)

◆ Boot()

◆ SetCpuActUp()

void Retro::Rw11Cpu::SetCpuActUp ( )

FIXME_docs.

Definition at line 856 of file Rw11Cpu.cpp.

References fCpuAct, fCpuActCond, fCpuActMutex, and fCpuStat.

Referenced by Boot(), and Retro::RtclRw11Cpu::M_cp().

◆ SetCpuActDown()

void Retro::Rw11Cpu::SetCpuActDown ( uint16_t  stat)

FIXME_docs.

Definition at line 868 of file Rw11Cpu.cpp.

References fCpuAct, fCpuActCond, fCpuActMutex, fCpuStat, kCPSTAT_M_CpuGo, and kCPSTAT_M_CpuSusp.

Referenced by W11AttnHandler().

◆ WaitCpuActDown()

int Retro::Rw11Cpu::WaitCpuActDown ( const Rtime tout,
Rtime twait 
)

◆ CpuAct()

bool Retro::Rw11Cpu::CpuAct ( ) const
inline

FIXME_docs.

Definition at line 190 of file Rw11Cpu.ipp.

References fCpuAct.

◆ CpuStat()

uint16_t Retro::Rw11Cpu::CpuStat ( ) const
inline

FIXME_docs.

Definition at line 182 of file Rw11Cpu.ipp.

References fCpuStat.

◆ IbusRemoteAddr()

uint16_t Retro::Rw11Cpu::IbusRemoteAddr ( uint16_t  ibaddr) const
inline

FIXME_docs.

Definition at line 198 of file Rw11Cpu.ipp.

References fIBase.

Referenced by AddRbibr(), AddRibr(), AddWbibr(), AddWibr(), and AllIAddrMapInsert().

◆ AllIAddrMapInsert()

◆ AllRAddrMapInsert()

void Retro::Rw11Cpu::AllRAddrMapInsert ( const std::string &  name,
uint16_t  rbaddr 
)

FIXME_docs.

Definition at line 921 of file Rw11Cpu.cpp.

References Retro::RlinkConnect::AddrMapInsert(), Connect(), Index(), and RAddrMapInsert().

Referenced by SetupOpt(), and SetupStd().

◆ IAddrMapInsert()

bool Retro::Rw11Cpu::IAddrMapInsert ( const std::string &  name,
uint16_t  ibaddr 
)
inline

FIXME_docs.

Definition at line 206 of file Rw11Cpu.ipp.

References fIAddrMap, and Retro::RlinkAddrMap::Insert().

Referenced by AllIAddrMapInsert(), and Retro::RtclRw11Cpu::M_imap().

◆ IAddrMapErase() [1/2]

bool Retro::Rw11Cpu::IAddrMapErase ( const std::string &  name)
inline

FIXME_docs.

Definition at line 214 of file Rw11Cpu.ipp.

References Retro::RlinkAddrMap::Erase(), and fIAddrMap.

◆ IAddrMapErase() [2/2]

bool Retro::Rw11Cpu::IAddrMapErase ( uint16_t  ibaddr)
inline

FIXME_docs.

Definition at line 222 of file Rw11Cpu.ipp.

References Retro::RlinkAddrMap::Erase(), and fIAddrMap.

◆ IAddrMapClear()

void Retro::Rw11Cpu::IAddrMapClear ( )
inline

FIXME_docs.

Definition at line 230 of file Rw11Cpu.ipp.

References Retro::RlinkAddrMap::Clear(), and fIAddrMap.

◆ IAddrMap()

const RlinkAddrMap & Retro::Rw11Cpu::IAddrMap ( ) const
inline

FIXME_docs.

Definition at line 238 of file Rw11Cpu.ipp.

References fIAddrMap.

Referenced by Retro::RtclRw11Cpu::M_imap().

◆ RAddrMapInsert()

bool Retro::Rw11Cpu::RAddrMapInsert ( const std::string &  name,
uint16_t  rbaddr 
)
inline

FIXME_docs.

Definition at line 246 of file Rw11Cpu.ipp.

References fRAddrMap, and Retro::RlinkAddrMap::Insert().

Referenced by AllIAddrMapInsert(), AllRAddrMapInsert(), and Retro::RtclRw11Cpu::M_rmap().

◆ RAddrMapErase() [1/2]

bool Retro::Rw11Cpu::RAddrMapErase ( const std::string &  name)
inline

FIXME_docs.

Definition at line 254 of file Rw11Cpu.ipp.

References Retro::RlinkAddrMap::Erase(), and fRAddrMap.

◆ RAddrMapErase() [2/2]

bool Retro::Rw11Cpu::RAddrMapErase ( uint16_t  rbaddr)
inline

FIXME_docs.

Definition at line 262 of file Rw11Cpu.ipp.

References Retro::RlinkAddrMap::Erase(), and fRAddrMap.

◆ RAddrMapClear()

void Retro::Rw11Cpu::RAddrMapClear ( )
inline

FIXME_docs.

Definition at line 270 of file Rw11Cpu.ipp.

References Retro::RlinkAddrMap::Clear(), and fRAddrMap.

◆ RAddrMap()

const RlinkAddrMap & Retro::Rw11Cpu::RAddrMap ( ) const
inline

FIXME_docs.

Definition at line 278 of file Rw11Cpu.ipp.

References fRAddrMap.

Referenced by Retro::RtclRw11Cpu::M_rmap().

◆ W11AttnHandler()

void Retro::Rw11Cpu::W11AttnHandler ( )

◆ Stats()

Rstats & Retro::Rw11Cpu::Stats ( )
inline

FIXME_docs.

Definition at line 286 of file Rw11Cpu.ipp.

References fStats.

◆ Dump()

void Retro::Rw11Cpu::Dump ( std::ostream &  os,
int  ind = 0,
const char *  text = 0,
int  detail = 0 
) const
virtual

◆ SetupStd()

◆ SetupOpt()

Member Data Documentation

◆ kCPCONF

const uint16_t Retro::Rw11Cpu::kCPCONF = 0x0000
static

CPCONF reg offset.

Definition at line 181 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp(), and SetupStd().

◆ kCPCNTL

const uint16_t Retro::Rw11Cpu::kCPCNTL = 0x0001
static

CPADDR reg offset.

Definition at line 182 of file Rw11Cpu.hpp.

Referenced by Boot(), Retro::RtclRw11Cpu::M_cp(), Retro::RtclRw11Cpu::M_wtcpu(), and SetupStd().

◆ kCPSTAT

const uint16_t Retro::Rw11Cpu::kCPSTAT = 0x0002
static

CPSTAT reg offset.

Definition at line 183 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp(), Retro::RtclRw11Cpu::M_show(), SetupStd(), and W11AttnHandler().

◆ kCPPSW

const uint16_t Retro::Rw11Cpu::kCPPSW = 0x0003
static

CPPSW reg offset.

Definition at line 184 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp(), Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kCPAL

const uint16_t Retro::Rw11Cpu::kCPAL = 0x0004
static

◆ kCPAH

const uint16_t Retro::Rw11Cpu::kCPAH = 0x0005
static

CPAH reg offset.

Definition at line 186 of file Rw11Cpu.hpp.

Referenced by AddLalh(), Retro::RtclRw11Cpu::M_cp(), ModLalh(), and SetupStd().

◆ kCPMEM

const uint16_t Retro::Rw11Cpu::kCPMEM = 0x0006
static

CPMEM reg offset.

Definition at line 187 of file Rw11Cpu.hpp.

Referenced by Retro::Rw11CntlTM11::AddNormalExit(), Retro::RtclRw11Cpu::M_cp(), MemWriteByte(), ProbeCntl(), and SetupStd().

◆ kCPMEMI

const uint16_t Retro::Rw11Cpu::kCPMEMI = 0x0007
static

CPMEMI reg offset.

Definition at line 188 of file Rw11Cpu.hpp.

Referenced by AddRMem(), AddWMem(), Retro::RtclRw11Cpu::M_cp(), Retro::RtclRw11Cpu::M_show(), MemRead(), MemWrite(), and SetupStd().

◆ kCPR0

const uint16_t Retro::Rw11Cpu::kCPR0 = 0x0008
static

CPR0 reg offset.

Definition at line 189 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp(), Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kCPPC

const uint16_t Retro::Rw11Cpu::kCPPC = 0x000f
static

CPPC reg offset.

Definition at line 190 of file Rw11Cpu.hpp.

Referenced by Boot(), Retro::RtclRw11Cpu::M_cp(), and Retro::RtclRw11Cpu::M_show().

◆ kCPMEMBE

const uint16_t Retro::Rw11Cpu::kCPMEMBE = 0x0010
static

CPMEMBE reg offset.

Definition at line 191 of file Rw11Cpu.hpp.

Referenced by AddMembe(), Retro::RtclRw11Cpu::M_cp(), and SetupStd().

◆ kCPFUNC_NOOP

const uint16_t Retro::Rw11Cpu::kCPFUNC_NOOP = 0x0000
static

NOOP func code.

Definition at line 193 of file Rw11Cpu.hpp.

◆ kCPFUNC_START

const uint16_t Retro::Rw11Cpu::kCPFUNC_START = 0x0001
static

START func code.

Definition at line 194 of file Rw11Cpu.hpp.

Referenced by Boot(), and Retro::RtclRw11Cpu::M_cp().

◆ kCPFUNC_STOP

const uint16_t Retro::Rw11Cpu::kCPFUNC_STOP = 0x0002
static

STOP func code.

Definition at line 195 of file Rw11Cpu.hpp.

Referenced by Boot(), Retro::RtclRw11Cpu::M_cp(), and Retro::RtclRw11Cpu::M_wtcpu().

◆ kCPFUNC_STEP

const uint16_t Retro::Rw11Cpu::kCPFUNC_STEP = 0x0003
static

STEP func code.

Definition at line 196 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp().

◆ kCPFUNC_CRESET

const uint16_t Retro::Rw11Cpu::kCPFUNC_CRESET = 0x0004
static

CRESET func code.

Definition at line 197 of file Rw11Cpu.hpp.

Referenced by Boot(), and Retro::RtclRw11Cpu::M_cp().

◆ kCPFUNC_BRESET

const uint16_t Retro::Rw11Cpu::kCPFUNC_BRESET = 0x0005
static

BRESET func code.

Definition at line 198 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp().

◆ kCPFUNC_SUSPEND

const uint16_t Retro::Rw11Cpu::kCPFUNC_SUSPEND = 0x0006
static

SUSPEND func code.

Definition at line 199 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp().

◆ kCPFUNC_RESUME

const uint16_t Retro::Rw11Cpu::kCPFUNC_RESUME = 0x0007
static

RESUME func code.

Definition at line 200 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp().

◆ kCPSTAT_M_SuspExt

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_SuspExt = kWBit09
static

suspext mask

Definition at line 202 of file Rw11Cpu.hpp.

◆ kCPSTAT_M_SuspInt

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_SuspInt = kWBit08
static

suspint mask

Definition at line 203 of file Rw11Cpu.hpp.

◆ kCPSTAT_M_CpuRust

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_CpuRust = 0x00f0
static

cpurust mask

Definition at line 204 of file Rw11Cpu.hpp.

◆ kCPSTAT_V_CpuRust

const uint16_t Retro::Rw11Cpu::kCPSTAT_V_CpuRust = 4
static

cpurust shift

Definition at line 205 of file Rw11Cpu.hpp.

◆ kCPSTAT_B_CpuRust

const uint16_t Retro::Rw11Cpu::kCPSTAT_B_CpuRust = 0x000f
static

cpurust bit mask

Definition at line 206 of file Rw11Cpu.hpp.

◆ kCPSTAT_M_CpuSusp

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_CpuSusp = kWBit03
static

cpususp mask

Definition at line 207 of file Rw11Cpu.hpp.

Referenced by SetCpuActDown().

◆ kCPSTAT_M_CpuGo

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_CpuGo = kWBit02
static

cpugo mask

Definition at line 208 of file Rw11Cpu.hpp.

Referenced by SetCpuActDown().

◆ kCPSTAT_M_CmdMErr

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_CmdMErr = kWBit01
static

cmdmerr mask

Definition at line 209 of file Rw11Cpu.hpp.

◆ kCPSTAT_M_CmdErr

const uint16_t Retro::Rw11Cpu::kCPSTAT_M_CmdErr = kWBit00
static

cmderr mask

Definition at line 210 of file Rw11Cpu.hpp.

◆ kCPURUST_INIT

const uint16_t Retro::Rw11Cpu::kCPURUST_INIT = 0x0
static

cpu in init state

Definition at line 212 of file Rw11Cpu.hpp.

◆ kCPURUST_HALT

const uint16_t Retro::Rw11Cpu::kCPURUST_HALT = 0x1
static

cpu executed HALT

Definition at line 213 of file Rw11Cpu.hpp.

◆ kCPURUST_RESET

const uint16_t Retro::Rw11Cpu::kCPURUST_RESET = 0x2
static

cpu was reset

Definition at line 214 of file Rw11Cpu.hpp.

◆ kCPURUST_STOP

const uint16_t Retro::Rw11Cpu::kCPURUST_STOP = 0x3
static

cpu was stopped

Definition at line 215 of file Rw11Cpu.hpp.

◆ kCPURUST_STEP

const uint16_t Retro::Rw11Cpu::kCPURUST_STEP = 0x4
static

cpu was stepped

Definition at line 216 of file Rw11Cpu.hpp.

◆ kCPURUST_SUSP

const uint16_t Retro::Rw11Cpu::kCPURUST_SUSP = 0x5
static

cpu was suspended

Definition at line 217 of file Rw11Cpu.hpp.

◆ kCPURUST_HBPT

const uint16_t Retro::Rw11Cpu::kCPURUST_HBPT = 0x6
static

cpu hardware bpt

Definition at line 218 of file Rw11Cpu.hpp.

◆ kCPURUST_RUNS

const uint16_t Retro::Rw11Cpu::kCPURUST_RUNS = 0x7
static

cpu running

Definition at line 219 of file Rw11Cpu.hpp.

◆ kCPURUST_VECFET

const uint16_t Retro::Rw11Cpu::kCPURUST_VECFET = 0x8
static

vector fetch halt

Definition at line 220 of file Rw11Cpu.hpp.

◆ kCPURUST_RECRSV

const uint16_t Retro::Rw11Cpu::kCPURUST_RECRSV = 0x9
static

rec red-stack halt

Definition at line 221 of file Rw11Cpu.hpp.

◆ kCPURUST_SFAIL

const uint16_t Retro::Rw11Cpu::kCPURUST_SFAIL = 0xa
static

sequencer failure

Definition at line 222 of file Rw11Cpu.hpp.

◆ kCPURUST_VFAIL

const uint16_t Retro::Rw11Cpu::kCPURUST_VFAIL = 0xb
static

vmbox failure

Definition at line 223 of file Rw11Cpu.hpp.

◆ kCPAH_M_ADDR

const uint16_t Retro::Rw11Cpu::kCPAH_M_ADDR = 0x003f
static

mask for 6bit msb

Definition at line 225 of file Rw11Cpu.hpp.

Referenced by AddLalh(), and ModLalh().

◆ kCPAH_M_22BIT

const uint16_t Retro::Rw11Cpu::kCPAH_M_22BIT = kWBit06
static

ena 22bit addressing

Definition at line 226 of file Rw11Cpu.hpp.

Referenced by AddLalh(), Retro::Rw11CntlRHRP::AttnHandler(), Retro::RtclRw11Cpu::M_cp(), MemWriteByte(), and ModLalh().

◆ kCPAH_M_UBMAP

const uint16_t Retro::Rw11Cpu::kCPAH_M_UBMAP = kWBit07
static

ena ubmap

Definition at line 227 of file Rw11Cpu.hpp.

Referenced by AddLalh(), and ModLalh().

◆ kCPAH_M_UBM22

◆ kCPMEMBE_M_STICK

const uint16_t Retro::Rw11Cpu::kCPMEMBE_M_STICK = kWBit02
static

membe: sticky flag

Definition at line 230 of file Rw11Cpu.hpp.

Referenced by AddMembe().

◆ kCPMEMBE_M_BE

const uint16_t Retro::Rw11Cpu::kCPMEMBE_M_BE = 0x0003
static

membe: be field

Definition at line 231 of file Rw11Cpu.hpp.

Referenced by AddMembe().

◆ kCPMEMBE_M_BE0

const uint16_t Retro::Rw11Cpu::kCPMEMBE_M_BE0 = 0x0001
static

membe: be0 flag

Definition at line 232 of file Rw11Cpu.hpp.

Referenced by Retro::Rw11CntlTM11::AddNormalExit(), and MemWriteByte().

◆ kCPMEMBE_M_BE1

const uint16_t Retro::Rw11Cpu::kCPMEMBE_M_BE1 = 0x0002
static

membe: be1 flag

Definition at line 233 of file Rw11Cpu.hpp.

Referenced by MemWriteByte().

◆ kStat_M_CmdErr

const uint8_t Retro::Rw11Cpu::kStat_M_CmdErr = kBBit07
static

stat: cmderr flag

Definition at line 236 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp().

◆ kStat_M_CmdMErr

const uint8_t Retro::Rw11Cpu::kStat_M_CmdMErr = kBBit06
static

stat: cmdmerr flag

Definition at line 237 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_cp().

◆ kStat_M_CpuSusp

const uint8_t Retro::Rw11Cpu::kStat_M_CpuSusp = kBBit05
static

stat: cpususp flag

Definition at line 238 of file Rw11Cpu.hpp.

◆ kStat_M_CpuGo

const uint8_t Retro::Rw11Cpu::kStat_M_CpuGo = kBBit04
static

stat: cpugo flag

Definition at line 239 of file Rw11Cpu.hpp.

◆ kCPUPSW

const uint16_t Retro::Rw11Cpu::kCPUPSW = 0177776
static

CPU PSW address.

Definition at line 242 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUSTKLIM

const uint16_t Retro::Rw11Cpu::kCPUSTKLIM = 0177774
static

CPU STKLIM address.

Definition at line 243 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUPIRQ

const uint16_t Retro::Rw11Cpu::kCPUPIRQ = 0177772
static

CPU PIRQ address.

Definition at line 244 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUMBRK

const uint16_t Retro::Rw11Cpu::kCPUMBRK = 0177770
static

CPU MBRK address.

Definition at line 245 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUERR

const uint16_t Retro::Rw11Cpu::kCPUERR = 0177766
static

CPU CPUERR address.

Definition at line 246 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUSYSID

const uint16_t Retro::Rw11Cpu::kCPUSYSID = 0177764
static

CPU SYSID address.

Definition at line 247 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUSDREG

const uint16_t Retro::Rw11Cpu::kCPUSDREG = 0177570
static

CPU SDREG address.

Definition at line 248 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kCPUUBMAP

const uint16_t Retro::Rw11Cpu::kCPUUBMAP = 0170200
static

UBMAP base address.

Definition at line 249 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_show().

◆ kMEMHISIZE

const uint16_t Retro::Rw11Cpu::kMEMHISIZE = 0177762
static

MEM HISIZE address.

Definition at line 251 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMEMLOSIZE

const uint16_t Retro::Rw11Cpu::kMEMLOSIZE = 0177760
static

MEM LOSIZE address.

Definition at line 252 of file Rw11Cpu.hpp.

Referenced by SetupOpt(), and SetupStd().

◆ kMEMHM

const uint16_t Retro::Rw11Cpu::kMEMHM = 0177752
static

MEM HM address.

Definition at line 253 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMEMMAINT

const uint16_t Retro::Rw11Cpu::kMEMMAINT = 0177750
static

MEM MAINT address.

Definition at line 254 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMEMCNTRL

const uint16_t Retro::Rw11Cpu::kMEMCNTRL = 0177746
static

MEM CNTRL address.

Definition at line 255 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMEMSYSERR

const uint16_t Retro::Rw11Cpu::kMEMSYSERR = 0177744
static

MEM SYSERR address.

Definition at line 256 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMEMHIADDR

const uint16_t Retro::Rw11Cpu::kMEMHIADDR = 0177742
static

MEM HIADDR address.

Definition at line 257 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMEMLOADDR

const uint16_t Retro::Rw11Cpu::kMEMLOADDR = 0177740
static

MEM LOADDR address.

Definition at line 258 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMMUMMR3

const uint16_t Retro::Rw11Cpu::kMMUMMR3 = 0172516
static

MMU MMR3 address.

Definition at line 260 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kMMUMMR2

const uint16_t Retro::Rw11Cpu::kMMUMMR2 = 0177576
static

MMU MMR2 address.

Definition at line 261 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMMUMMR1

const uint16_t Retro::Rw11Cpu::kMMUMMR1 = 0177574
static

MMU MMR1 address.

Definition at line 262 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMMUMMR0

const uint16_t Retro::Rw11Cpu::kMMUMMR0 = 0177572
static

MMU MMR0 address.

Definition at line 263 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kMMUPDRK

const uint16_t Retro::Rw11Cpu::kMMUPDRK = 0172300
static

MMU PDRK address.

Definition at line 265 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kMMUPARK

const uint16_t Retro::Rw11Cpu::kMMUPARK = 0172340
static

MMU PARK address.

Definition at line 266 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMMUPDRS

const uint16_t Retro::Rw11Cpu::kMMUPDRS = 0172200
static

MMU PDRS address.

Definition at line 267 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kMMUPARS

const uint16_t Retro::Rw11Cpu::kMMUPARS = 0172240
static

MMU PARS address.

Definition at line 268 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kMMUPDRU

const uint16_t Retro::Rw11Cpu::kMMUPDRU = 0177600
static

MMU PDRU address.

Definition at line 269 of file Rw11Cpu.hpp.

Referenced by Retro::RtclRw11Cpu::M_show(), and SetupStd().

◆ kMMUPARU

const uint16_t Retro::Rw11Cpu::kMMUPARU = 0177640
static

MMU PARU address.

Definition at line 270 of file Rw11Cpu.hpp.

Referenced by SetupStd().

◆ kSCBASE

const uint16_t Retro::Rw11Cpu::kSCBASE = 0x0040
static

DMSCNT reg base offset.

Definition at line 273 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kSCCNTL

const uint16_t Retro::Rw11Cpu::kSCCNTL = 0x0000
static

SC.CNTL reg offset.

Definition at line 274 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kSCADDR

const uint16_t Retro::Rw11Cpu::kSCADDR = 0x0001
static

SC.ADDR reg offset.

Definition at line 275 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kSCDATA

const uint16_t Retro::Rw11Cpu::kSCDATA = 0x0002
static

SC.DATA reg offset.

Definition at line 276 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMBASE

const uint16_t Retro::Rw11Cpu::kCMBASE = 0x0048
static

DMCMON reg base offset.

Definition at line 278 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMCNTL

const uint16_t Retro::Rw11Cpu::kCMCNTL = 0x0000
static

CM.CNTL reg offset.

Definition at line 279 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMSTAT

const uint16_t Retro::Rw11Cpu::kCMSTAT = 0x0001
static

CM.STAT reg offset.

Definition at line 280 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMADDR

const uint16_t Retro::Rw11Cpu::kCMADDR = 0x0002
static

CM.ADDR reg offset.

Definition at line 281 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMDATA

const uint16_t Retro::Rw11Cpu::kCMDATA = 0x0003
static

CM.DATA reg offset.

Definition at line 282 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMIADDR

const uint16_t Retro::Rw11Cpu::kCMIADDR = 0x0004
static

CM.IADDR reg offset.

Definition at line 283 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMIPC

const uint16_t Retro::Rw11Cpu::kCMIPC = 0x0005
static

CM.IPC reg offset.

Definition at line 284 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMIREG

const uint16_t Retro::Rw11Cpu::kCMIREG = 0x0006
static

CM.IREG reg offset.

Definition at line 285 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kCMIMAL

const uint16_t Retro::Rw11Cpu::kCMIMAL = 0x0007
static

CM.IMAL reg offset.

Definition at line 286 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBBASE

const uint16_t Retro::Rw11Cpu::kHBBASE = 0x0050
static

DMHBPT reg base offset.

Definition at line 288 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBSIZE

const uint16_t Retro::Rw11Cpu::kHBSIZE = 0x0004
static

DMHBPT unit size.

Definition at line 289 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBNMAX

const uint16_t Retro::Rw11Cpu::kHBNMAX = 0x0004
static

DMHBPT max number units.

Definition at line 290 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBCNTL

const uint16_t Retro::Rw11Cpu::kHBCNTL = 0x0000
static

HB.CNTL reg offset.

Definition at line 291 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBSTAT

const uint16_t Retro::Rw11Cpu::kHBSTAT = 0x0001
static

HB.STAT reg offset.

Definition at line 292 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBHILIM

const uint16_t Retro::Rw11Cpu::kHBHILIM = 0x0002
static

HB.HILIM reg offset.

Definition at line 293 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kHBLOLIM

const uint16_t Retro::Rw11Cpu::kHBLOLIM = 0x0003
static

HB.LOLIM reg offset.

Definition at line 294 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kPCBASE

const uint16_t Retro::Rw11Cpu::kPCBASE = 0x0060
static

DMPCNT reg base offset.

Definition at line 296 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kPCCNTL

const uint16_t Retro::Rw11Cpu::kPCCNTL = 0x0000
static

PC.CNTL reg offset.

Definition at line 297 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kPCSTAT

const uint16_t Retro::Rw11Cpu::kPCSTAT = 0x0001
static

PC.STAT reg offset.

Definition at line 298 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kPCDATA

const uint16_t Retro::Rw11Cpu::kPCDATA = 0x0002
static

PC.DATA reg offset.

Definition at line 299 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMBASE

const uint16_t Retro::Rw11Cpu::kIMBASE = 0160000
static

Ibmon ibus address.

Definition at line 301 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMCNTL

const uint16_t Retro::Rw11Cpu::kIMCNTL = 0x0000
static

IM.CNTL reg offset.

Definition at line 302 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMSTAT

const uint16_t Retro::Rw11Cpu::kIMSTAT = 0x0002
static

IM.STAT reg offset.

Definition at line 303 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMHILIM

const uint16_t Retro::Rw11Cpu::kIMHILIM = 0x0004
static

IM.HILIM reg offset.

Definition at line 304 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMLOLIM

const uint16_t Retro::Rw11Cpu::kIMLOLIM = 0x0006
static

IM.LOLIM reg offset.

Definition at line 305 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMADDR

const uint16_t Retro::Rw11Cpu::kIMADDR = 0x0008
static

IM.ADDR reg offset.

Definition at line 306 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIMDATA

const uint16_t Retro::Rw11Cpu::kIMDATA = 0x000a
static

IM.DATA reg offset.

Definition at line 307 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kITBASE

const uint16_t Retro::Rw11Cpu::kITBASE = 0170000
static

Ibtst ibus address.

Definition at line 309 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kITCNTL

const uint16_t Retro::Rw11Cpu::kITCNTL = 0x0000
static

IT.CNTL reg offset.

Definition at line 310 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kITSTAT

const uint16_t Retro::Rw11Cpu::kITSTAT = 0x0002
static

IT.STAT reg offset.

Definition at line 311 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kITDATA

const uint16_t Retro::Rw11Cpu::kITDATA = 0x0004
static

IT.DATA reg offset.

Definition at line 312 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kITFIFO

const uint16_t Retro::Rw11Cpu::kITFIFO = 0x0006
static

IT.FIFO reg offset.

Definition at line 313 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kM9BASE

const uint16_t Retro::Rw11Cpu::kM9BASE = 0165000
static

M9312 ibus address.

Definition at line 316 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kKWLBASE

const uint16_t Retro::Rw11Cpu::kKWLBASE = 0177546
static

KW11-L ibus address.

Definition at line 317 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kKWPBASE

const uint16_t Retro::Rw11Cpu::kKWPBASE = 0172540
static

KW11-P ibus address.

Definition at line 318 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kKWPCSR

const uint16_t Retro::Rw11Cpu::kKWPCSR = 0x0000
static

KWP.CSR reg offset.

Definition at line 319 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kKWPCSB

const uint16_t Retro::Rw11Cpu::kKWPCSB = 0x0002
static

KWP.CSB reg offset.

Definition at line 320 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kKWPCTR

const uint16_t Retro::Rw11Cpu::kKWPCTR = 0x0004
static

KWP.CTR reg offset.

Definition at line 321 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIISTBASE

const uint16_t Retro::Rw11Cpu::kIISTBASE = 0177500
static

IIST ibus address.

Definition at line 322 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIISTACR

const uint16_t Retro::Rw11Cpu::kIISTACR = 0x0000
static

II.ACR reg offset.

Definition at line 323 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ kIISTADR

const uint16_t Retro::Rw11Cpu::kIISTADR = 0x0002
static

II.ADR reg offset.

Definition at line 324 of file Rw11Cpu.hpp.

Referenced by SetupOpt().

◆ fpW11

Rw11* Retro::Rw11Cpu::fpW11
protected

Definition at line 334 of file Rw11Cpu.hpp.

Referenced by Connect(), Dump(), LogFile(), Server(), Setup(), and W11().

◆ fType

std::string Retro::Rw11Cpu::fType
protected

Definition at line 335 of file Rw11Cpu.hpp.

Referenced by Dump(), and Type().

◆ fIndex

size_t Retro::Rw11Cpu::fIndex
protected

Definition at line 336 of file Rw11Cpu.hpp.

Referenced by Dump(), Index(), and Retro::Rw11CpuW11a::Setup().

◆ fBase

uint16_t Retro::Rw11Cpu::fBase
protected

◆ fIBase

uint16_t Retro::Rw11Cpu::fIBase
protected

Definition at line 338 of file Rw11Cpu.hpp.

Referenced by Dump(), IBase(), IbusRemoteAddr(), and Retro::Rw11CpuW11a::Setup().

◆ fMemSize

uint32_t Retro::Rw11Cpu::fMemSize
protected

memory size in byte

Definition at line 339 of file Rw11Cpu.hpp.

Referenced by MemSize(), and SetupOpt().

◆ fHasScnt

bool Retro::Rw11Cpu::fHasScnt
protected

has dmscnt (state counter)

Definition at line 340 of file Rw11Cpu.hpp.

Referenced by Dump(), HasScnt(), and SetupOpt().

◆ fHasPcnt

bool Retro::Rw11Cpu::fHasPcnt
protected

has dmpcnt (perf counters)

Definition at line 341 of file Rw11Cpu.hpp.

Referenced by Dump(), HasPcnt(), and SetupOpt().

◆ fHasCmon

bool Retro::Rw11Cpu::fHasCmon
protected

has dmcmon (cpu monitor)

Definition at line 342 of file Rw11Cpu.hpp.

Referenced by Dump(), HasCmon(), and SetupOpt().

◆ fHasHbpt

uint16_t Retro::Rw11Cpu::fHasHbpt
protected

has dmhbpt (hardware breakpoint)

Definition at line 343 of file Rw11Cpu.hpp.

Referenced by Dump(), HasHbpt(), and SetupOpt().

◆ fHasIbmon

bool Retro::Rw11Cpu::fHasIbmon
protected

has ibmon (ibus monitor)

Definition at line 344 of file Rw11Cpu.hpp.

Referenced by Dump(), HasIbmon(), and SetupOpt().

◆ fHasIbtst

bool Retro::Rw11Cpu::fHasIbtst
protected

has ibtst (ibus tester)

Definition at line 345 of file Rw11Cpu.hpp.

Referenced by Dump(), HasIbtst(), and SetupOpt().

◆ fHasM9312

bool Retro::Rw11Cpu::fHasM9312
protected

has m9312 (boot rom)

Definition at line 346 of file Rw11Cpu.hpp.

Referenced by Dump(), HasM9312(), and SetupOpt().

◆ fHasKw11l

bool Retro::Rw11Cpu::fHasKw11l
protected

has kw11-l (line clock)

Definition at line 347 of file Rw11Cpu.hpp.

Referenced by Dump(), HasKw11l(), and SetupOpt().

◆ fHasKw11p

bool Retro::Rw11Cpu::fHasKw11p
protected

has kw11-p (prog clock)

Definition at line 348 of file Rw11Cpu.hpp.

Referenced by Dump(), HasKw11p(), and SetupOpt().

◆ fHasIist

bool Retro::Rw11Cpu::fHasIist
protected

has iist (smp comm)

Definition at line 349 of file Rw11Cpu.hpp.

Referenced by Dump(), HasIist(), and SetupOpt().

◆ fCpuAct

bool Retro::Rw11Cpu::fCpuAct
protected

Definition at line 350 of file Rw11Cpu.hpp.

Referenced by CpuAct(), Dump(), SetCpuActDown(), SetCpuActUp(), and WaitCpuActDown().

◆ fCpuStat

uint16_t Retro::Rw11Cpu::fCpuStat
protected

Definition at line 351 of file Rw11Cpu.hpp.

Referenced by CpuStat(), Dump(), SetCpuActDown(), and SetCpuActUp().

◆ fCpuActMutex

std::mutex Retro::Rw11Cpu::fCpuActMutex
protected

Definition at line 352 of file Rw11Cpu.hpp.

Referenced by SetCpuActDown(), SetCpuActUp(), and WaitCpuActDown().

◆ fCpuActCond

std::condition_variable Retro::Rw11Cpu::fCpuActCond
protected

Definition at line 353 of file Rw11Cpu.hpp.

Referenced by SetCpuActDown(), SetCpuActUp(), and WaitCpuActDown().

◆ fCntlMap

cmap_t Retro::Rw11Cpu::fCntlMap
protected

name->cntl map

Definition at line 354 of file Rw11Cpu.hpp.

Referenced by AddCntl(), Cntl(), Dump(), ListCntl(), NextCntlName(), Start(), and TestCntl().

◆ fIAddrMap

RlinkAddrMap Retro::Rw11Cpu::fIAddrMap
protected

ibus name<->address mapping

Definition at line 355 of file Rw11Cpu.hpp.

Referenced by Dump(), IAddrMap(), IAddrMapClear(), IAddrMapErase(), and IAddrMapInsert().

◆ fRAddrMap

RlinkAddrMap Retro::Rw11Cpu::fRAddrMap
protected

rbus name<->address mapping

Definition at line 356 of file Rw11Cpu.hpp.

Referenced by Dump(), RAddrMap(), RAddrMapClear(), RAddrMapErase(), and RAddrMapInsert().

◆ fStats

Rstats Retro::Rw11Cpu::fStats
protected

statistics

Definition at line 357 of file Rw11Cpu.hpp.

Referenced by Dump(), and Stats().


The documentation for this class was generated from the following files: