|
DataMuseum.dkPresents historical artifacts from the history of: Regnecentalen RC-900 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Regnecentalen RC-900 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 8913 (0x22d1) Types: TextFile Notes: Uncompressed file
└─⟦82ee0715d⟧ Bits:30004771 Terminal Driver Rel. 1.2 (3.5 inch) └─⟦82ee0715d⟧ UNIX Filesystem └─⟦e395dafd1⟧ »RCTDR.ISC/new/etc/drivers/td/Space.c.Z« └─⟦e395dafd1⟧ »RCTDR.SCO/new/etc/drivers/td/Space.c.Z« └─⟦ca69fd3f9⟧ Bits:30004770 Terminal Driver Rel. 1.2 (5.25 inch) └─⟦ca69fd3f9⟧ UNIX Filesystem └─⟦e395dafd1⟧ »RCTDR.ISC/new/etc/drivers/td/Space.c.Z« └─⟦e395dafd1⟧ »RCTDR.SCO/new/etc/drivers/td/Space.c.Z« └─⟦this⟧
/* * Copyright (c) 1991 RC International * All Rights Reserved */ /* * Data and configuration structures for RC International Terminal Driver. */ #ident "@(#)Space.c 1.2, RC International, 92/12/16" #include <sys/types.h> #include <sys/param.h> #include <sys/tty.h> #include <sys/dir.h> #include <sys/signal.h> #include <sys/user.h> #include <sys/immu.h> #include <sys/region.h> #include <sys/proc.h> #include <sys/chain.h> #include <sys/msl.h> #include <sys/card.h> #ifdef VPIX #include <sys/tss.h> #include <sys/v86.h> #endif #include <sys/td.h> #include <sys/tdtrace.h> #include "config.h" #if defined(HBTCP) || defined(XWIN) extern int pollwait; #else int pollwait; #endif #if TD_MAPCH == 1 /* stubs routines for SCO mapchan command */ emaddmap() { return(0); } emchkmap() { return(1); } #endif #ifdef TD_0 # define TDU_1 1 # define TDU_1_TYPE ((TD_0 / 10) % 10) # define TDU_1_UNIT (TD_0 % 10) # if TDU_1_TYPE == NONE_TYPE # define TDU_1_DEVS 0 # elif TDU_1_TYPE == RCMUX_TYPE # define TDU_1_DEVS 48 # else # define TDU_1_DEVS 100 # endif #else # define TDU_1 0 # define TDU_1_TYPE NONE_TYPE # define TDU_1_UNIT 0 # define TDU_1_DEVS 0 #endif #ifdef TD_1 # define TDU_2 1 # define TDU_2_TYPE ((TD_1 / 10) % 10) # define TDU_2_UNIT (TD_1 % 10) # if TDU_2_TYPE == NONE_TYPE # define TDU_2_DEVS 0 # elif TDU_2_TYPE == RCMUX_TYPE # define TDU_2_DEVS 48 # else # define TDU_2_DEVS 100 # endif #else # define TDU_2 0 # define TDU_2_TYPE NONE_TYPE # define TDU_2_UNIT 0 # define TDU_2_DEVS 0 #endif #ifdef TD_2 # define TDU_3 1 # define TDU_3_TYPE ((TD_2 / 10) % 10) # define TDU_3_UNIT (TD_2 % 10) # if TDU_3_TYPE == NONE_TYPE # define TDU_3_DEVS 0 # elif TDU_3_TYPE == RCMUX_TYPE # define TDU_3_DEVS 48 # else # define TDU_3_DEVS 100 # endif #else # define TDU_3 0 # define TDU_3_TYPE NONE_TYPE # define TDU_3_UNIT 0 # define TDU_3_DEVS 0 #endif #ifdef TD_3 # define TDU_4 1 # define TDU_4_TYPE ((TD_3 / 10) % 10) # define TDU_4_UNIT (TD_3 % 10) # if TDU_4_TYPE == NONE_TYPE # define TDU_4_DEVS 0 # elif TDU_4_TYPE == RCMUX_TYPE # define TDU_4_DEVS 48 # else # define TDU_4_DEVS 100 # endif #else # define TDU_4 0 # define TDU_4_TYPE NONE_TYPE # define TDU_4_UNIT 0 # define TDU_4_DEVS 0 #endif #ifdef TD_4 # define TDU_5 1 # define TDU_5_TYPE ((TD_4 / 10) % 10) # define TDU_5_UNIT (TD_4 % 10) # if TDU_5_TYPE == NONE_TYPE # define TDU_5_DEVS 0 # elif TDU_5_TYPE == RCMUX_TYPE # define TDU_5_DEVS 48 # else # define TDU_5_DEVS 100 # endif #else # define TDU_5 0 # define TDU_5_TYPE NONE_TYPE # define TDU_5_UNIT 0 # define TDU_5_DEVS 0 #endif #ifdef TD_5 # define TDU_6 1 # define TDU_6_TYPE ((TD_5 / 10) % 10) # define TDU_6_UNIT (TD_5 % 10) # if TDU_6_TYPE == NONE_TYPE # define TDU_6_DEVS 0 # elif TDU_6_TYPE == RCMUX_TYPE # define TDU_6_DEVS 48 # else # define TDU_6_DEVS 100 # endif #else # define TDU_6 0 # define TDU_6_TYPE NONE_TYPE # define TDU_6_UNIT 0 # define TDU_6_DEVS 0 #endif #ifdef TD_6 # define TDU_7 1 # define TDU_7_TYPE ((TD_6 / 10) % 10) # define TDU_7_UNIT (TD_6 % 10) # if TDU_7_TYPE == NONE_TYPE # define TDU_7_DEVS 0 # elif TDU_7_TYPE == RCMUX_TYPE # define TDU_7_DEVS 48 # else # define TDU_7_DEVS 100 # endif #else # define TDU_7 0 # define TDU_7_TYPE NONE_TYPE # define TDU_7_UNIT 0 # define TDU_7_DEVS 0 #endif #ifdef TD_7 # define TDU_8 1 # define TDU_8_TYPE ((TD_7 / 10) % 10) # define TDU_8_UNIT (TD_7 % 10) # if TDU_8_TYPE == NONE_TYPE # define TDU_8_DEVS 0 # elif TDU_8_TYPE == RCMUX_TYPE # define TDU_8_DEVS 48 # else # define TDU_8_DEVS 100 # endif #else # define TDU_8 0 # define TDU_8_TYPE NONE_TYPE # define TDU_8_UNIT 0 # define TDU_8_DEVS 0 #endif #ifdef TD_8 # define TDU_9 1 # define TDU_9_TYPE ((TD_8 / 10) % 10) # define TDU_9_UNIT (TD_8 % 10) # if TDU_9_TYPE == NONE_TYPE # define TDU_9_DEVS 0 # elif TDU_9_TYPE == RCMUX_TYPE # define TDU_9_DEVS 48 # else # define TDU_9_DEVS 100 # endif #else # define TDU_9 0 # define TDU_9_TYPE NONE_TYPE # define TDU_9_UNIT 0 # define TDU_9_DEVS 0 #endif #ifdef TD_9 # define TDU_10 1 # define TDU_10_TYPE ((TD_9 / 10) % 10) # define TDU_10_UNIT (TD_9 % 10) # if TDU_10_TYPE == NONE_TYPE # define TDU_10_DEVS 0 # elif TDU_10_TYPE == RCMUX_TYPE # define TDU_10_DEVS 48 # else # define TDU_10_DEVS 100 # endif #else # define TDU_10 0 # define TDU_10_TYPE NONE_TYPE # define TDU_10_UNIT 0 # define TDU_10_DEVS 0 #endif #ifdef TD_10 # define TDU_11 1 # define TDU_11_TYPE ((TD_10 / 10) % 10) # define TDU_11_UNIT (TD_10 % 10) # if TDU_11_TYPE == NONE_TYPE # define TDU_11_DEVS 0 # elif TDU_11_TYPE == RCMUX_TYPE # define TDU_11_DEVS 48 # else # define TDU_11_DEVS 100 # endif #else # define TDU_11 0 # define TDU_11_TYPE NONE_TYPE # define TDU_11_UNIT 0 # define TDU_11_DEVS 0 #endif #ifdef TD_11 # define TDU_12 1 # define TDU_12_TYPE ((TD_11 / 10) % 10) # define TDU_12_UNIT (TD_11 % 10) # if TDU_12_TYPE == NONE_TYPE # define TDU_12_DEVS 0 # elif TDU_12_TYPE == RCMUX_TYPE # define TDU_12_DEVS 48 # else # define TDU_12_DEVS 100 # endif #else # define TDU_12 0 # define TDU_12_TYPE NONE_TYPE # define TDU_12_UNIT 0 # define TDU_12_DEVS 0 #endif #ifdef TD_12 # define TDU_13 1 # define TDU_13_TYPE ((TD_12 / 10) % 10) # define TDU_13_UNIT (TD_12 % 10) # if TDU_13_TYPE == NONE_TYPE # define TDU_13_DEVS 0 # elif TDU_13_TYPE == RCMUX_TYPE # define TDU_13_DEVS 48 # else # define TDU_13_DEVS 100 # endif #else # define TDU_13 0 # define TDU_13_TYPE NONE_TYPE # define TDU_13_UNIT 0 # define TDU_13_DEVS 0 #endif #ifdef TD_13 # define TDU_14 1 # define TDU_14_TYPE ((TD_13 / 10) % 10) # define TDU_14_UNIT (TD_13 % 10) # if TDU_14_TYPE == NONE_TYPE # define TDU_14_DEVS 0 # elif TDU_14_TYPE == RCMUX_TYPE # define TDU_14_DEVS 48 # else # define TDU_14_DEVS 100 # endif #else # define TDU_14 0 # define TDU_14_TYPE NONE_TYPE # define TDU_14_UNIT 0 # define TDU_14_DEVS 0 #endif #ifdef TD_14 # define TDU_15 1 # define TDU_15_TYPE ((TD_14 / 10) % 10) # define TDU_15_UNIT (TD_14 % 10) # if TDU_15_TYPE == NONE_TYPE # define TDU_15_DEVS 0 # elif TDU_15_TYPE == RCMUX_TYPE # define TDU_15_DEVS 48 # else # define TDU_15_DEVS 100 # endif #else # define TDU_15 0 # define TDU_15_TYPE NONE_TYPE # define TDU_15_UNIT 0 # define TDU_15_DEVS 0 #endif #ifdef TD_15 # define TDU_16 1 # define TDU_16_TYPE ((TD_15 / 10) % 10) # define TDU_16_UNIT (TD_15 % 10) # if TDU_16_TYPE == NONE_TYPE # define TDU_16_DEVS 0 # elif TDU_16_TYPE == RCMUX_TYPE # define TDU_16_DEVS 48 # else # define TDU_16_DEVS 100 # endif #else # define TDU_16 0 # define TDU_16_TYPE NONE_TYPE # define TDU_16_UNIT 0 # define TDU_16_DEVS 0 #endif struct td_cfg td_cfg[16] = { /* present: unit_no: ctlr_type: no_devs: */ TDU_1, TDU_1_UNIT, TDU_1_TYPE, TDU_1_DEVS, TDU_2, TDU_2_UNIT, TDU_2_TYPE, TDU_2_DEVS, TDU_3, TDU_3_UNIT, TDU_3_TYPE, TDU_3_DEVS, TDU_4, TDU_4_UNIT, TDU_4_TYPE, TDU_4_DEVS, TDU_5, TDU_5_UNIT, TDU_5_TYPE, TDU_5_DEVS, TDU_6, TDU_6_UNIT, TDU_6_TYPE, TDU_6_DEVS, TDU_7, TDU_7_UNIT, TDU_7_TYPE, TDU_7_DEVS, TDU_8, TDU_8_UNIT, TDU_8_TYPE, TDU_8_DEVS, TDU_9, TDU_9_UNIT, TDU_9_TYPE, TDU_9_DEVS, TDU_10, TDU_10_UNIT, TDU_10_TYPE, TDU_10_DEVS, TDU_11, TDU_11_UNIT, TDU_11_TYPE, TDU_11_DEVS, TDU_12, TDU_12_UNIT, TDU_12_TYPE, TDU_12_DEVS, TDU_13, TDU_13_UNIT, TDU_13_TYPE, TDU_13_DEVS, TDU_14, TDU_14_UNIT, TDU_14_TYPE, TDU_14_DEVS, TDU_15, TDU_15_UNIT, TDU_15_TYPE, TDU_15_DEVS, TDU_16, TDU_16_UNIT, TDU_16_TYPE, TDU_16_DEVS, }; #define TD_CTLRS (TDU_1 + TDU_2 + TDU_3 + TDU_4 + TDU_5 + TDU_6 + \ TDU_7 + TDU_8 + TDU_9 + TDU_10 + TDU_11 + TDU_12 + \ TDU_13 + TDU_14 + TDU_15 + TDU_16) int td_no_ctlrs = TD_CTLRS; struct td_ctlr td_ctlrs[TD_CTLRS]; struct td_ctlr * td_unit_tab[17]; #define TD_DEVS (TDU_1_DEVS + TDU_2_DEVS + TDU_3_DEVS + TDU_4_DEVS + \ TDU_5_DEVS + TDU_6_DEVS + TDU_7_DEVS + TDU_8_DEVS + \ TDU_9_DEVS + TDU_10_DEVS + TDU_11_DEVS + TDU_12_DEVS + \ TDU_13_DEVS + TDU_14_DEVS + TDU_15_DEVS + TDU_16_DEVS) int td_no_dev_ptrs = TD_DEVS; struct td_dev * td_dev_ptrs[TD_DEVS]; #if defined(SCO) || defined(M_UNIX) || defined(DMAABLE) short td_host_type = ISO_HOST; #else short td_host_type = IBM_DOS; #endif #define TDB_0_BASE 0 #ifdef TDP_0 #define TDB_0_DEVS TDP_0 #else #define TDB_0_DEVS 0 #endif #define TDB_1_BASE (TDB_0_BASE + TDB_0_DEVS) #ifdef TDF_0 #define TDB_1_DEVS TDF_0 #else #define TDB_1_DEVS 0 #endif #define TDB_2_BASE (TDB_1_BASE + TDB_1_DEVS) #ifdef TDM_0 #define TDB_2_DEVS TDM_0 #else #define TDB_2_DEVS 0 #endif struct td_board td_boards[3] = { /* base: devices: */ TDB_0_BASE, TDB_0_DEVS, TDB_1_BASE, TDB_1_DEVS, TDB_2_BASE, TDB_2_DEVS, }; #define TD_CHANS (TDB_0_DEVS + TDB_1_DEVS + TDB_2_DEVS) int td_no_devs = TD_CHANS; struct td_dev td_devs[TD_CHANS]; #define TD_TSIZE 1024 /* number of trace records */ int td_ttop = TD_TSIZE; struct tdtrace td_tbuf[TD_TSIZE];