40using namespace std::placeholders;
69 fSets.
Add<
const string&> (
"diskscheme",
87 if (!args.
GetArg(
"parent", parent))
return kERR;
91 "RlinkServer", parent);
94 return args.
Quit(
string(
"-E: object '") + parent +
95 "' not found or not type RlinkServer");
107 if (!args.
GetArg(
"?count", count, 1, 1))
return kERR;
111 if (type ==
"w11a") {
119 return args.
Quit(
string(
"-E: unknown cpu type '") + type +
"'");
131 lock_guard<RlinkConnect> lock(
Obj().Connect());
141 lock_guard<RlinkConnect> lock(
Obj().Connect());
151 if (
Obj().IsStarted())
return args.
Quit(
"-E: already started");
166 Obj().
Dump(sos, 0,
"", detail);
179 sos <<
"cpu type base : cntl type ibbase probe lam boot" << endl;
181 for (
size_t i=0; i<
Obj().
NCpu(); i++) {
183 sos <<
" " << i <<
" "
188 vector<string> cntlnames;
190 for (
auto& cname : cntlnames) {
201 vector<uint16_t> code;
202 bool bootok = cntl.
BootCode(0, code, aload, astart);
203 sos <<
" " << (bootok ?
"y" :
"n");
217 Tcl_Obj* rlist = Tcl_NewListObj(0,
nullptr);
218 for (
size_t i=0; i<
Obj().
NCpu(); i++) {
219 string ccmd = string(
"cpu") + to_string(i);
220 RtclOPtr pele(Tcl_NewStringObj(ccmd.data(), ccmd.length()));
221 Tcl_ListObjAppendElement(
nullptr, rlist, pele);
void AppendResultLines(const std::string &str)
FIXME_docs.
bool GetArg(const char *name, Tcl_Obj *&pval)
FIXME_docs.
int Quit(const std::string &str)
FIXME_docs.
void SetResult(const std::string &str)
FIXME_docs.
Tcl_Interp * Interp() const
FIXME_docs.
bool AllDone()
FIXME_docs.
void AddMeth(const std::string &name, methfo_t &&methfo)
FIXME_docs.
bool GetArgsDump(RtclArgs &args, int &detail)
FIXME_docs.
RtclProxyBase * FindProxy(const std::string &type, const std::string &name)
FIXME_docs.
static RtclContext & Find(Tcl_Interp *interp)
FIXME_docs.
int M_get(RtclArgs &args)
FIXME_docs.
void Add(const std::string &name, get_uptr_t &&upget)
FIXME_docs.
Implemenation (inline) of RtclOPtr.
Implemenation (all inline) of class RtclProxyOwned.
const std::shared_ptr< Rw11 > & ObjSPtr()
FIXME_docs.
const std::shared_ptr< TO > & ObjSPtr()
FIXME_docs.
int M_start(RtclArgs &args)
FIXME_docs.
int M_set(RtclArgs &args)
FIXME_docs.
virtual int ClassCmdConfig(RtclArgs &args)
FIXME_docs.
RtclRw11(Tcl_Interp *interp, const char *name)
Constructor.
Tcl_Obj * CpuCommands()
FIXME_docs.
int M_default(RtclArgs &args)
FIXME_docs.
int M_dump(RtclArgs &args)
FIXME_docs.
int M_get(RtclArgs &args)
FIXME_docs.
std::shared_ptr< RlinkServer > fspServ
void Add(const std::string &name, set_uptr_t &&upset)
FIXME_docs.
int M_set(RtclArgs &args)
FIXME_docs.
const Rw11Probe & ProbeStatus() const
FIXME_docs.
const std::string & Type() const
FIXME_docs.
uint16_t Base() const
FIXME_docs.
int Lam() const
FIXME_docs.
virtual bool BootCode(size_t unit, std::vector< uint16_t > &code, uint16_t &aload, uint16_t &astart)
FIXME_docs.
const std::string & Name() const
FIXME_docs.
void Setup(size_t ind, uint16_t base, uint16_t ibase)
FIXME_docs.
uint16_t Base() const
FIXME_docs.
void ListCntl(std::vector< std::string > &list) const
FIXME_docs.
Rw11Cntl & Cntl(const std::string &name) const
FIXME_docs.
const std::string & Type() const
FIXME_docs.
static void SetDefaultScheme(const std::string &scheme)
FIXME_docs.
static const std::string & DefaultScheme()
FIXME_docs.
size_t NCpu() const
FIXME_docs.
void AddCpu(const std::shared_ptr< Rw11Cpu > &spcpu)
FIXME_docs.
void SetServer(const std::shared_ptr< RlinkServer > &spserv)
FIXME_docs.
virtual void Dump(std::ostream &os, int ind=0, const char *text=0, int detail=0) const
FIXME_docs.
bool IsStarted() const
FIXME_docs.
RosPrintfS< bool > RosPrintf(bool value, const char *form=0, int width=0, int prec=0)
Creates a print object for the formatted output of a bool value.
Declaration of class ReventLoop.
char IndicatorInt() const
FIXME_docs.
char IndicatorRem() const
FIXME_docs.