1 ;;; -*- Mode: Midas -*-
2 ;;; Copyright (c) 1999 Massachusetts Institute of Technology
4 ;;; This program is free software; you can redistribute it and/or
5 ;;; modify it under the terms of the GNU General Public License as
6 ;;; published by the Free Software Foundation; either version 3 of the
7 ;;; License, or (at your option) any later version.
9 ;;; This program is distributed in the hope that it will be useful,
10 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 ;;; General Public License for more details.
14 ;;; You should have received a copy of the GNU General Public License
15 ;;; along with this program; if not, write to the Free Software
16 ;;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 ;;; Canonical symbol definition macro, FOO==BAR with error check.
27 IFN Z-$$TEM1,.ERR Z MULTIPLY .QUOTE`.QUOTE/DEFINED/`
35 ; Hardware description of AI-KA/ML/MC IMP interface, device "IMP".
36 ; For a more detailed description, see AI Hardware Memo #10,
37 ; "ARPA Network Interface".
38 ; In particular, the "channel 1 multiplexing" feature of the ITS KA's
40 ; When PI level 2 (NETCHN) is assigned, the IMP interface takes
41 ; all interrupts on the normal channel (goes to IMPINT).
42 ; When PI level 1 (IMPCHN) is assigned,
43 ; IMPID+(-IMPLIW) => Pseudo channel 4, location 70 (IMPILC)-> various
44 ; IMPOD => Pseudo channel 5, location 72 (IMPOLC)-> various
45 ; else normal PI channel 1 (PI0LOC+2)-> IMPBRK
47 ; CONI bits - starred items cause interrupt on PIA channel
49 DEFSYM IMPID==10 ;* INPUT DONE - on when word avail for DATAI
50 DEFSYM IMPI32==20 ; Input in 32 bit mode
51 ;DEFSYM IMPIB==40 ; Input Busy
52 DEFSYM IMPOD==100 ;* OUTPUT DONE - Word sent to IMP
53 ;DEFSYM IMPO32==200 ; Output in 32 bit mode
54 ;DEFSYM IMPOB==400 ; Output Busy
55 DEFSYM IMPERR==1000 ;* Imp Error (interrupt if IMPIC zero)
56 DEFSYM IMPR==2000 ;* Imp Ready (interrupt if IMPIC set)
57 ;DEFSYM IMPIC==4000 ; Imp interrupt condition
58 ; (0 = int on IMPERR, 1= int on IMPR)
59 DEFSYM IMPHER==10000 ;* Host Error (interrupt if IMPIHE zero)
60 ;DEFSYM IMPHR==20000 ; Host Ready
61 ;DEFSYM IMPIHE==40000 ; Inhibit interrupt on Host Error (IMPHER)
62 DEFSYM IMPLW==100000 ;* Last Imp Word
64 ; CONO bits - starred flags are always copied directly to set states
65 ;* 1.1-1.3 => PIA set from these bits
66 DEFSYM IMPIDC==10 ; Clear Input Done
67 DEFSYM IMI32S==20 ; Set input to 32 bit mode
68 DEFSYM IMI32C==40 ; Clear input in 32 bit mode
69 DEFSYM IMPODC==100 ; Clear Output Done
70 DEFSYM IMO32S==200 ; Set output to 32 bit mode
71 DEFSYM IMO32C==400 ; Clear output in 32 bit mode
72 DEFSYM IMPODS==1000 ; Set Output Done
73 DEFSYM IMPIR==4000 ;* Copied to IMPIC; 1= Enable int on imp ready
74 DEFSYM IMPHEC==10000 ; Clear Host Error
75 ;DEFSYM IMIIHE==40000 ;* Copied to IMPIHE
76 ; 1= Inhibit int on host error
77 DEFSYM IMPLHW==200000 ; Set Last Host Word
78 ; (do this before last DATAO of msg)
79 IFN $$TEMP,EXPUNG DEFSYM