1
0
mirror of https://github.com/wfjm/w11.git synced 2026-03-05 19:20:07 +00:00
Files
wfjm.w11/tools/asm-11/lib/defs_xu.mac
wfjm 00559faaaa minor updates
- tools
  - asm-11/lib/defs_xu.mac: add xt.* and xr.* definitions
  - oskit/211bsd_rk/211bsd_rk_boot.ecmd: add tt1: mode: definition
  - tcl/rw11/shell.tcl: update '.h' and '.ha' text output
  - tcode/cpu_basics.mac: A4.4: change exemptions, e11 now like 11/70 and w11
2023-05-19 17:34:57 +02:00

137 lines
6.0 KiB
Plaintext

; $Id: defs_xu.mac 1387 2023-03-27 07:29:02Z mueller $
; SPDX-License-Identifier: GPL-3.0-or-later
; Copyright 2017-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
;
; definitions for DEUNA controler
; uses also xf,xm,xr,xs,xt,r2,r3,t2,t3 name prefixes for clarity
;
; vector address/priority definition
;
va.xu=000120
vp.xu=5
;
; register addresses
;
xu.pr0=174510
xu.pr1=174512
xu.pr2=174514
xu.pr3=174516
;
; symbol definitions for xu.pr0
;
xu.ser=100000 ; SERI: status error interrupt
xu.pce=040000 ; PCEI: port command error interrupt
xu.rxi=020000 ; RXI: receive ring interrupt
xu.txi=010000 ; TXI: transmit ring interrupt
xu.dni=004000 ; DNI: done interrupt (port command done)
xu.rcb=002000 ; RCBI: receive buffer unavailable interrupt
xu.usc=000400 ; USCI: unsolicited state change interrupt
xu.ir =000200 ; INTR: interrupt summary
xu.ie =000100 ; INTE: interrupt enable
xu.rst=000040 ; RSET: DEUNA reset
xu.fso=000017 ; command: STOP
xu.fha=000016 ; command: HALT (for DELUA)
xu.fpd=000010 ; command: PDMD (polling demand)
xu.fsa=000004 ; command: START
xu.fgc=000002 ; command: GET CMD
xu.fgp=000001 ; command: GET PCBB
;
; symbol definitions for xu.pr1
;
xu.xpw=100000 ; XPWR: transceiver power OK
xu.ica=040000 ; ICAB: port/link cabling OK
xu.pct=000200 ; PCTO: port command timeout
xu.deu=000020 ; 0=DEUNA; 1=DELUA
xu.sma=000017 ; STATE field mask
xu.sha=000010 ; state: PRIMARY HALT (for DELUA)
xu.sru=000003 ; state: RUNNING
xu.srd=000002 ; state: READY
xu.sre=000000 ; state: RESET
;
; port control functions, use in LSB of PCB[0]
;
xf.wi =000023 ; WSID: write system id
xf.ri =000022 ; RSID: read system id
xf.rcc=000017 ; RCSTAT: read&clear status
xf.rs =000016 ; RSTAT: read status
xf.wm =000015 ; WMODE: write mode
xf.rm =000014 ; RMODE: read mode
xf.rcc=000013 ; RCCTR: read and clear counters
xf.rc =000012 ; RCTR: read counters
xf.wrf=000011 ; WRF : write ring format
xf.rrf=000010 ; RRF : read ring format
xf.wma=000007 ; WMAL: write mcast MAC list
xf.rma=000006 ; RMAL: read mcast MAC list
xf.wpa=000005 ; WPA: write physical MAC
xf.rpa=000004 ; RPA: read physical MAC
xf.rda=000002 ; RPDA: read default MAC
xf.no =000000 ; NOOP: no operation
;
; mode register, write/read via PCB[1]
;
xm.pro=100000 ; PROM: promiscuous mode
xm.eam=040000 ; ENAL: enable all multicast
xm.dcr=020000 ; DRDC: disable chaining on receive
xm.tpa=010000 ; TPAD: transmit message paddinf enable
xm.etc=004000 ; ETC: enable collision check
xm.pro=001000 ; DMNT: disable maintenance message
xm.dtc=000010 ; DTCR: disable transmit CRC
xm.lop=000004 ; LOOP: internal loopback mode
xm.pro=000001 ; HDPX: half-suplex mode
;
; status register, write/read via PCB[1]
;
xs.ers=100000 ; ERRS: error summary
xs.mer=040000 ; MERR: multiple errors
xs.cer=010000 ; CERR: collision test error
xs.tmo=004000 ; TMOT: timeout error
xs.rre=001000 ; RRNG: receive ring error
xs.tre=000400 ; TRNG: transmit ring error
xs.rpa=000200 ; PTCH: ROM patch
xs.rco=000100 ; RRAM: RAM code operational
xs.rev=000077 ; RREV: ROM revisions (field mask)
;
; transmit descriptor offsets
;
xt.len=0 ; SLEN[15:00] segment length
xt.buf=2 ; SEGB[15:00] segment base MDB
xt.fl2=4 ; flags and SEGB[17:16]
xt.fl3=6 ; flags
;
; transmit descriptor word 2 (xt.fl2) and word 3 (xt.fl3)
;
t2.own=100000 ; OWN: if 1 owned by DEUNA
t2.ers=040000 ; ERRS: error summary
t2.mtc=020000 ; MTCH: station match
t2.mor=010000 ; MORE: multiple retries needed
t2.one=004000 ; ONE: one collision
t2.def=002000 ; DEF: deferred
t2.stp=001000 ; STP: start of packet
t2.enp=000400 ; ENP: end of packet
t3.ble=100000 ; BUFL: buffer length error
t3.uto=040000 ; UBTO: UNIBUS timeout
t3.lco=010000 ; LCOL: late collision
t3.lca=004000 ; LCAR: loss of carrier
t3.rle=002000 ; RTRY: retry limit exceeded
;
; receive descriptor offsets
;
xr.len=0 ; SLEN[15:01] segment length
xr.buf=2 ; SEGB[15:00] segment base MDB
xr.fl2=4 ; flags and SEGB[17:16]
xr.fl3=6 ; flags and MLEN
;
; receive descriptor word 2 and word 3
;
r2.own=100000 ; OWN: if 1 owned by DEUNA
r2.ers=040000 ; ERRS: error summary
r2.fra=020000 ; FRAM: frame error
r2.ofl=010000 ; OFLO: message overflow
r2.crc=004000 ; CRC: CRC error
r2.stp=001000 ; STP: start of packet
r2.enp=000400 ; ENP: end of packet
r3.ble=100000 ; BUFL: buffer length error
r3.uto=040000 ; UBTO: UNIBUS timeout
r3.nch=010000 ; NCHN: no data chaining
r3.mle=007777 ; MLEN: message length