DataMuseum.dk

Presents historical artifacts from the history of:

Regnecentalen RC-900

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Regnecentalen RC-900

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦9a5af5c66⟧ TextFile

    Length: 2421 (0x975)
    Types: TextFile
    Notes: UNIX file
    Names: »card.h«

Derivation

└─⟦22cab2c1b⟧ Bits:30004042/kcaddon.imd SW95705I 386/ix Multi-user Release 1.2
└─⟦22cab2c1b⟧ UNIX Filesystem
    └─⟦this⟧ »KC/new/usr/include/sys/card.h« 

TextFile

/* card.h 87.05.13 */

#define MAXUNITS	16
#define TYPES		4
#define SUP_BUF_SIZE	1024
#define SUP_BUF		1024
#define BWNAMESIZE	10

/* description of a window */

/* offset */	struct window {
/*     0H */	  ushort w_offset;
/*     2H */	  ushort w_no;     /* physaddr = w_no<<16 + w_offset	*/
/*     4H */	  ushort w_size;   /* w_offset + w_size <= 64k		*/
/*     6H */	};

/* layout of the primary window between 386 and a controller board	*/

#define PARAMSIZE 0x216	/* SUP_BUF - sizeof(struct coupling) -2		*/
                        /* - MAXUNITS - 6*TYPES*MAXUNITS -2 -BWNAMESIZE	*/

/* offset */	struct boot_window {
/*     0H */	  struct coupling bw_cp;
/*    4CH */	  ushort bw_unno;
/*    4EH */	  unchar bw_cptab[MAXUNITS];
/*    5EH */	  struct window bw_wtab[MAXUNITS][TYPES];
/*   1DEH */      ushort bw_memsize;
/*   1E0H */      unchar bw_hostname[BWNAMESIZE];
/*   1EAH */	  unchar bw_params[PARAMSIZE];
/*   400H */	  unchar bw_sup[SUP_BUF_SIZE];
/*   800H */	};

#define CJFOFFSET	0xFFF0

/* description of an interaction (window part) between two boards	*/
/* one of the boards is the one being configured			*/

/* offset */	struct interaction {
/*     0H */	  unchar i_unit;	/* the other board		*/
/*     1H */	  unchar i_type;	/* language: IMC = 0, TCI = 1	*/
/*     2H */	  unchar i_cp;		/* if nonzero the window	*/
			                /* contains the coupling	*/
/*     3H */	  unchar i_window;	/* index of window,		*/
					/* not the 64k address		*/
/*     4H */	  ushort i_offset;	/* offset of interaction data	*/
/*     6H */	  ushort i_size;	/* size of interaction data	*/
/*     8H */	};
\f


/* contents of a configuration output */

/* offset */	struct board_init {
/*     0H */	  ushort bi_unno;	/* unit number			*/
/*     2H */      ushort bi_type;	/* unit type			*/
/*     4H */	  ushort bi_window;	/* index of primary window	*/
/*     6H */	  ushort bi_appetite;	/* number of interaction	*/
					/* descriptions to follow	*/
/*     8H */	  struct interaction bi_inter[TYPES*MAXUNITS];
/*   208H */	};

/* card read/write message */

/* offset */	struct sup_msg {
/*  0H,1H */	  unchar sm_unit, sm_gate;
/*     2H */	  ushort sm_type;
/*     4H */	  ushort sm_ident;
/*     6H */	  ushort sm_offset;
/*     8H */	  ushort sm_size;
/*     CH */	  uint sm_address;
/*    10H */      char sm_fill[16];
/*    20H */	};

struct c_trace {
  unsigned tracebuffer[1024];
  int traceno, tracefirst;
};