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

FIXME_docs. More...

#include <Rw11CntlLP11.hpp>

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

Public Types

enum  stats {
  kStatNQue = Rw11Cntl::kDimStat , kStatNNull , kStatNChar , kStatNLine ,
  kStatNPage , kDimStat
}
 
- Public Types inherited from Retro::Rw11Cntl
enum  stats { kStatNAttnHdl = 0 , kStatNAttnNoAct , kDimStat }
 

Public Member Functions

 Rw11CntlLP11 ()
 Default constructor.
 
 ~Rw11CntlLP11 ()
 Destructor.
 
void Config (const std::string &name, uint16_t base, int lam)
 FIXME_docs.
 
virtual void Start ()
 FIXME_docs.
 
virtual void UnitSetup (size_t ind)
 FIXME_docs.
 
void SetRlim (uint16_t rlim)
 FIXME_docs.
 
uint16_t Rlim () const
 FIXME_docs.
 
uint16_t Itype () const
 FIXME_docs.
 
bool Buffered () const
 FIXME_docs.
 
uint16_t FifoSize () const
 FIXME_docs.
 
virtual void Dump (std::ostream &os, int ind=0, const char *text=0, int detail=0) const
 FIXME_docs.
 
- Public Member Functions inherited from Retro::Rw11CntlBase< Rw11UnitLP11, 1 >
 Rw11CntlBase (const std::string &type)
 Constructor.
 
 ~Rw11CntlBase ()
 Destructor.
 
virtual size_t NUnit () const
 FIXME_docs.
 
virtual Rw11UnitUnitBase (size_t index) const
 FIXME_docs.
 
Rw11UnitLP11Unit (size_t index) const
 FIXME_docs.
 
const std::shared_ptr< Rw11UnitLP11 > & UnitSPtr (size_t index) const
 FIXME_docs.
 
virtual void Dump (std::ostream &os, int ind=0, const char *text=0, int detail=0) const
 FIXME_docs.
 
- Public Member Functions inherited from Retro::Rw11Cntl
 Rw11Cntl (const std::string &type)
 Constructor.
 
virtual ~Rw11Cntl ()
 Destructor.
 
 Rw11Cntl (const Rw11Cntl &)=delete
 
Rw11Cntloperator= (const Rw11Cntl &)=delete
 
void SetCpu (Rw11Cpu *pcpu)
 FIXME_docs.
 
Rw11CpuCpu () const
 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.
 
const std::string & Name () const
 FIXME_docs.
 
uint16_t Base () const
 FIXME_docs.
 
int Lam () const
 FIXME_docs.
 
void SetEnable (bool ena)
 FIXME_docs.
 
bool Enable () const
 FIXME_docs.
 
virtual bool Probe ()
 FIXME_docs.
 
bool ProbeFound () const
 FIXME_docs.
 
uint16_t ProbeDataInt () const
 FIXME_docs.
 
uint16_t ProbeDataRem () const
 FIXME_docs.
 
const Rw11ProbeProbeStatus () const
 FIXME_docs.
 
virtual void Start ()
 FIXME_docs.
 
bool IsStarted () const
 FIXME_docs.
 
virtual size_t NUnit () const =0
 
virtual Rw11UnitUnitBase (size_t index) const =0
 
virtual bool BootCode (size_t unit, std::vector< uint16_t > &code, uint16_t &aload, uint16_t &astart)
 FIXME_docs.
 
virtual void UnitSetup (size_t ind)
 FIXME_docs.
 
virtual void UnitSetupAll ()
 FIXME_docs.
 
void SetTraceLevel (uint32_t level)
 FIXME_docs.
 
uint32_t TraceLevel () const
 FIXME_docs.
 
std::string UnitName (size_t index) const
 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 kIbaddr = 0177514
 LP11 default address.
 
static const int kLam = 8
 LP11 default lam.
 
static const uint16_t kCSR = 000
 CSR reg offset.
 
static const uint16_t kBUF = 002
 BUF reg offset.
 
static const uint16_t kProbeOff = kCSR
 probe address offset (rcsr)
 
static const bool kProbeInt = true
 probe int active
 
static const bool kProbeRem = true
 probr rem active
 
static const uint16_t kFifoMaxSize = 127
 maximal fifo size
 
static const uint16_t kCSR_M_ERROR = kWBit15
 csr.err mask
 
static const uint16_t kCSR_V_RLIM = 12
 csr.rlim shift
 
static const uint16_t kCSR_B_RLIM = 007
 csr.rlim bit mask
 
static const uint16_t kCSR_V_TYPE = 8
 csr.type shift
 
static const uint16_t kCSR_B_TYPE = 0007
 csr.type bit mask
 
static const uint16_t kBUF_M_VAL = kWBit15
 buf.val mask
 
static const uint16_t kBUF_V_FUSE = 8
 buf.fuse shift
 
static const uint16_t kBUF_B_FUSE = 0177
 buf.fuse bit mask
 
static const uint16_t kBUF_M_DATA = 0177
 buf data mask
 
- Static Public Attributes inherited from Retro::Rw11CntlBase< Rw11UnitLP11, 1 >
static const size_t kNUnit
 number of units
 
- 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

int AttnHandler (RlinkServer::AttnArgs &args)
 FIXME_docs.
 
void ProcessUnbuf (uint16_t buf)
 FIXME_docs.
 
void WriteChar (uint8_t ochr)
 FIXME_docs.
 
void ProcessBuf (const RlinkCommand &cmd, bool prim)
 FIXME_docs.
 
int RcvHandler ()
 FIXME_docs.
 
- Protected Member Functions inherited from Retro::Rw11Cntl
void ConfigCntl (const std::string &name, uint16_t base, int lam, uint16_t probeoff, bool probeint, bool proberem)
 FIXME_docs.
 

Protected Attributes

size_t fPC_buf
 PrimClist: buf index.
 
uint16_t fRlim
 interrupt rate limit
 
uint16_t fItype
 interface type
 
uint16_t fFsize
 fifo size
 
uint16_t fRblkSize
 rblk chunk size
 
bool fQueBusy
 rcv queue busy
 
- Protected Attributes inherited from Retro::Rw11CntlBase< Rw11UnitLP11, 1 >
std::shared_ptr< Rw11UnitLP11fspUnit [NU]
 
- Protected Attributes inherited from Retro::Rw11Cntl
Rw11CpufpCpu
 cpu back pointer
 
std::string fType
 controller type
 
std::string fName
 controller name
 
uint16_t fBase
 controller base address
 
int fLam
 attn bit number (-1 of none)
 
bool fEnable
 enable flag
 
bool fStarted
 true if Start() called
 
Rw11Probe fProbe
 controller probe context
 
uint32_t fTraceLevel
 trace level; 0=off;1=cntl
 
RlinkCommandList fPrimClist
 clist for attn primary info
 
Rstats fStats
 statistics
 

Detailed Description

FIXME_docs.

Definition at line 29 of file Rw11CntlLP11.hpp.

Member Enumeration Documentation

◆ stats

Enumerator
kStatNQue 

queue rblk

kStatNNull 

send null char

kStatNChar 

send char

kStatNLine 

send lines

kStatNPage 

send pages

kDimStat 

Definition at line 75 of file Rw11CntlLP11.hpp.

Constructor & Destructor Documentation

◆ Rw11CntlLP11()

Retro::Rw11CntlLP11::Rw11CntlLP11 ( )

◆ ~Rw11CntlLP11()

Retro::Rw11CntlLP11::~Rw11CntlLP11 ( )

Destructor.

Definition at line 103 of file Rw11CntlLP11.cpp.

Member Function Documentation

◆ Config()

void Retro::Rw11CntlLP11::Config ( const std::string &  name,
uint16_t  base,
int  lam 
)

FIXME_docs.

Definition at line 109 of file Rw11CntlLP11.cpp.

References Retro::Rw11Cntl::ConfigCntl(), kProbeInt, kProbeOff, and kProbeRem.

◆ Start()

◆ UnitSetup()

◆ SetRlim()

void Retro::Rw11CntlLP11::SetRlim ( uint16_t  rlim)

FIXME_docs.

Definition at line 171 of file Rw11CntlLP11.cpp.

References fRlim, kCSR_B_RLIM, and UnitSetup().

Referenced by Retro::RtclRw11CntlLP11::RtclRw11CntlLP11().

◆ Rlim()

uint16_t Retro::Rw11CntlLP11::Rlim ( ) const
inline

FIXME_docs.

Definition at line 21 of file Rw11CntlLP11.ipp.

References fRlim.

Referenced by Retro::RtclRw11CntlLP11::RtclRw11CntlLP11().

◆ Itype()

uint16_t Retro::Rw11CntlLP11::Itype ( ) const
inline

FIXME_docs.

Definition at line 29 of file Rw11CntlLP11.ipp.

References fItype.

Referenced by Retro::RtclRw11CntlLP11::RtclRw11CntlLP11().

◆ Buffered()

bool Retro::Rw11CntlLP11::Buffered ( ) const
inline

FIXME_docs.

Definition at line 37 of file Rw11CntlLP11.ipp.

References fFsize.

Referenced by AttnHandler(), Retro::RtclRw11CntlLP11::RtclRw11CntlLP11(), and Start().

◆ FifoSize()

uint16_t Retro::Rw11CntlLP11::FifoSize ( ) const
inline

FIXME_docs.

Definition at line 45 of file Rw11CntlLP11.ipp.

References fFsize.

Referenced by Retro::RtclRw11CntlLP11::RtclRw11CntlLP11().

◆ Dump()

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

◆ AttnHandler()

◆ ProcessUnbuf()

void Retro::Rw11CntlLP11::ProcessUnbuf ( uint16_t  buf)
protected

◆ WriteChar()

void Retro::Rw11CntlLP11::WriteChar ( uint8_t  ochr)
protected

◆ ProcessBuf()

◆ RcvHandler()

Member Data Documentation

◆ kIbaddr

const uint16_t Retro::Rw11CntlLP11::kIbaddr = 0177514
static

LP11 default address.

Definition at line 52 of file Rw11CntlLP11.hpp.

Referenced by Retro::RtclRw11CntlLP11::FactoryCmdConfig().

◆ kLam

const int Retro::Rw11CntlLP11::kLam = 8
static

LP11 default lam.

Definition at line 53 of file Rw11CntlLP11.hpp.

Referenced by Retro::RtclRw11CntlLP11::FactoryCmdConfig().

◆ kCSR

const uint16_t Retro::Rw11CntlLP11::kCSR = 000
static

CSR reg offset.

Definition at line 55 of file Rw11CntlLP11.hpp.

Referenced by Start(), and UnitSetup().

◆ kBUF

const uint16_t Retro::Rw11CntlLP11::kBUF = 002
static

BUF reg offset.

Definition at line 56 of file Rw11CntlLP11.hpp.

Referenced by RcvHandler(), and Start().

◆ kProbeOff

const uint16_t Retro::Rw11CntlLP11::kProbeOff = kCSR
static

probe address offset (rcsr)

Definition at line 58 of file Rw11CntlLP11.hpp.

Referenced by Config().

◆ kProbeInt

const bool Retro::Rw11CntlLP11::kProbeInt = true
static

probe int active

Definition at line 59 of file Rw11CntlLP11.hpp.

Referenced by Config().

◆ kProbeRem

const bool Retro::Rw11CntlLP11::kProbeRem = true
static

probr rem active

Definition at line 60 of file Rw11CntlLP11.hpp.

Referenced by Config().

◆ kFifoMaxSize

const uint16_t Retro::Rw11CntlLP11::kFifoMaxSize = 127
static

maximal fifo size

Definition at line 62 of file Rw11CntlLP11.hpp.

Referenced by ProcessBuf().

◆ kCSR_M_ERROR

const uint16_t Retro::Rw11CntlLP11::kCSR_M_ERROR = kWBit15
static

csr.err mask

Definition at line 64 of file Rw11CntlLP11.hpp.

Referenced by UnitSetup().

◆ kCSR_V_RLIM

const uint16_t Retro::Rw11CntlLP11::kCSR_V_RLIM = 12
static

csr.rlim shift

Definition at line 65 of file Rw11CntlLP11.hpp.

Referenced by UnitSetup().

◆ kCSR_B_RLIM

const uint16_t Retro::Rw11CntlLP11::kCSR_B_RLIM = 007
static

csr.rlim bit mask

Definition at line 66 of file Rw11CntlLP11.hpp.

Referenced by SetRlim(), and UnitSetup().

◆ kCSR_V_TYPE

const uint16_t Retro::Rw11CntlLP11::kCSR_V_TYPE = 8
static

csr.type shift

Definition at line 67 of file Rw11CntlLP11.hpp.

Referenced by Start().

◆ kCSR_B_TYPE

const uint16_t Retro::Rw11CntlLP11::kCSR_B_TYPE = 0007
static

csr.type bit mask

Definition at line 68 of file Rw11CntlLP11.hpp.

Referenced by Start().

◆ kBUF_M_VAL

const uint16_t Retro::Rw11CntlLP11::kBUF_M_VAL = kWBit15
static

buf.val mask

Definition at line 69 of file Rw11CntlLP11.hpp.

Referenced by ProcessUnbuf().

◆ kBUF_V_FUSE

const uint16_t Retro::Rw11CntlLP11::kBUF_V_FUSE = 8
static

buf.fuse shift

Definition at line 70 of file Rw11CntlLP11.hpp.

Referenced by ProcessBuf().

◆ kBUF_B_FUSE

const uint16_t Retro::Rw11CntlLP11::kBUF_B_FUSE = 0177
static

buf.fuse bit mask

Definition at line 71 of file Rw11CntlLP11.hpp.

Referenced by ProcessBuf().

◆ kBUF_M_DATA

const uint16_t Retro::Rw11CntlLP11::kBUF_M_DATA = 0177
static

buf data mask

Definition at line 72 of file Rw11CntlLP11.hpp.

Referenced by ProcessBuf(), and ProcessUnbuf().

◆ fPC_buf

size_t Retro::Rw11CntlLP11::fPC_buf
protected

PrimClist: buf index.

Definition at line 92 of file Rw11CntlLP11.hpp.

Referenced by AttnHandler(), Dump(), ProcessBuf(), and Start().

◆ fRlim

uint16_t Retro::Rw11CntlLP11::fRlim
protected

interrupt rate limit

Definition at line 93 of file Rw11CntlLP11.hpp.

Referenced by Dump(), Rlim(), SetRlim(), and UnitSetup().

◆ fItype

uint16_t Retro::Rw11CntlLP11::fItype
protected

interface type

Definition at line 94 of file Rw11CntlLP11.hpp.

Referenced by Dump(), Itype(), and Start().

◆ fFsize

uint16_t Retro::Rw11CntlLP11::fFsize
protected

fifo size

Definition at line 95 of file Rw11CntlLP11.hpp.

Referenced by Buffered(), Dump(), FifoSize(), and Start().

◆ fRblkSize

uint16_t Retro::Rw11CntlLP11::fRblkSize
protected

rblk chunk size

Definition at line 96 of file Rw11CntlLP11.hpp.

Referenced by Dump(), ProcessBuf(), RcvHandler(), and Start().

◆ fQueBusy

bool Retro::Rw11CntlLP11::fQueBusy
protected

rcv queue busy

Definition at line 97 of file Rw11CntlLP11.hpp.

Referenced by Dump(), ProcessBuf(), and RcvHandler().


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