|
|
researchv10 Norman
class Line;
class Crossbar
{
char *dial;
int nouts; /* number of inputs/outputs */
int nwires; /* number of wires per input/output */
int fd;
Crossbar *nextc;
int nextl, froml;
int *imap; /* output i is connected to input imap[i] */
virtual void startup();
virtual void config();
friend class System10;
friend class Dynasty;
public:
Crossbar(char *dkname, int n, int depth);
char *name() { return(dial); }
void link(int ll, Crossbar *c, int l);
int map(int input, Crossbar **cp, int *ip);
virtual int connect(int input, Crossbar *c, int output, int nw);
};
class Dynasty : public Crossbar
{
void startup();
void config();
void tocontrol();
int get1(unsigned char);
int getn(int);
void put1(unsigned char);
void putn(int);
public:
Dynasty(char *dkname, int n, int depth);
int connect(int input, Crossbar *c, int output, int nw);
};
class System10 : public Crossbar
{
void startup();
void config();
public:
System10(char *dkname, int n, int depth);
int connect(int input, Crossbar *c, int output, int nw);
};
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.