Page 1

D
E
EVE
THE
LOP
R
LIN
3 C 5 0 5
E R I S
X
P L U S
G U
IDE
Revision
3Com
May 2.1,
3.0
Corporation
1986
Page 2

PREFACE
This
document
engineers
will
the
talk
card.
to
microcomputer
through
User's
the
Manual
Intel).
The
CH1~PTER
CHAPTER 2
APPENDIX A
manual
1
CHAPTER 3
who
the
The
Intel
is
is
intended
will
3C505,
user
systems.
80186
before
divided
HARDWARE
Provides
system
HARDWARE
Describes
control,
3C505.
COMMAND
Describes
level
80186
Provides
configure
for
either
is
be
or
software
expected
It
is
Data
Sheet
beginning
into
the
EXTERNAL
a
description
resources
INTERFACE
the
configure,
INTERFACE
the
interface
PERIPHERAL
the
values
the
80186
use
writing
by
application
that
to
have
recommended
and
the
(they
following
REFERENCE
and
functional
SPECIFICATION
chapters:
of
the
programmable
and
SPECIFICATION
function
software
CONTROL
used
and
supplied
BLOCK
in
internal
sophisticated
software
will
a
are
actually
strong
that
Intel
background
the
Lan
available
SPECIFICATION
3C505
architecture,
operation.
registers
communicate
use
of
with
PROGRAMMING
the
3C505
resources.
software
reside
user
browse
Components
through
(ERS)
used
with
the
the
command
card.
firmware
that
on
in
to
the
to
APPENDIX B
APPENDIX C
APPENDIX E
APPENDIX F
APPENDIX G
82586
Provides
configure
3CSOS DIAGNOSTIC
Describes
utility
3D
Describes
mode
running
3C50S
Describes
accompanies
REVISION
Describes
REVISION
Describes
CONFIGURATION
the
the
the
program.
DEBUGGER
a
host
of
the
on
the
DEVELOPER'S
the
the
2.0
changes
3.0
changes
values
82586.
3C505
card.
ROM
ROM
used
operation
program
to
assist
SOFTWARE
contents
developer's
made
made
in
in
by
the
of
the
that
uses
in
DISKETTE
of
the
kit.
Revision
Revision
3C505
firmware
3C505
a
special
debugging
diskette
2.0
ROM
3.0
ROM
to
diagnostic
debug
programs
that
code.
code.
Page 3

TABLE
OF
CONTENTS
CHAPTER 1 -
1.0
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.S
1.9
1.10
1.11
1.12
1.13
1.14
1.15
HARDWARE
Introduction
Resources
Architecture
Address
1.3.1
1.3.2
1.3.3
80186
82586
Network
1.6.1
1.6.2
1.6.3
Adapter
Adapter
Maps
Adapter
Adapter
Host
Microprocessor
Ethernet
Interface
82586
8023
Transceiver
Firmware
RAM
Host-Adapter
1.9.1
1.9.2
1~9.3
1.9.4
1.9.5
Adapter
1.10.1
1.10.2
Host
Command
Data
Data
DMA
Status
Interrupts
Internal
External
Interrupts
Resetting
Ethernet
LED
Indicators
Host
Address
ROM
EXTERNAL
I/O
memory
I/O
Coprocessor
Serial
Manchester
Interface
Register
Register
Register
Transfers
Flags
Interrupts
Interrupts
the
Adapter
REFERENCE
map
map
Interface
ROM
configuration
map
Converter
SPECIFICATION
Page
1
1
1
3
3
3
3
4
4
5
5
5
5
6
6
9
9
9
10
11
12
13
13
13
14
15
15
15
16
#
CHAPTER 2 -
2.0
2.1
2.2
2.3
2.4
2.5
2.6
2.7
HARDWARE
Introduction
Conunand
Data
Host
Host
Host
Adapter
Adapter
Register
Register
Control
status
Aux
Control
status
INTERFACE
Register
Register
DMA
Register
Register
SPECIFICATION
Register
17
1S
18
19
21
23
23
25
Page 4

CHAPTER 3 -
COMMAND
INTERFACE SPECIFICATION
LIST
3.0
3.1
Introduction
Primary
3.1.1
3.1.2
3.1.3
3.2
PCB Commands
3.2.1
3.2.2
3.3
System
3.3.1
3.3.2,
3.3.3
3.3.4
3.3.5
3.3.6
3.3.7
3.3.8
3.3.9
OF FIGURES
Fiqure
Figure
Command
status
Host
Adapter
Host
3C505
ROM
Utilities
Host
Network
Flag
to
to
to
I/O
Block
Adapter
to
Host
3C505
Host
support:
I/O
Configuration/S\
Timer
Download
Support:
Program
PCB Command
Packet
Idle
PCB
1-1:
1-2:
Processor
Vector:
Enqueue
3C505
DRAM
Elock
Refresh
structure
Usage
for
PCB
Transfer
Request
Request
PCB
Formats
PCB
Formats
INT
S~·;,>,\:i"rt~
~lS.
INT
83H
Support:
Processor:
vector:
INT
87H
Vector:
or
SOH
INT
INT 82H
INT 85H
INT
8SH
SlH
INT
INT
Diagram
Response
84H
86H
28
28
30
30
31
32
32
37
41
41
44
45
47
48
49
50
51
51
2
8
APPENDIX
APPENDIX
APPENDIX
APPENDIX
A~PENDI:X
APPENDIX
APPENDIX
A B -
C -
D -
E 3C50S" DEVERLOPER' S
F -
80186
82586
3CSOS DIAGNOSTIC
3D
REVISION
G -
REVISION
PERIPHERAL
CONFIGURATION
DEBUGGER
2.0
3.0
CONTROL
ROM
ROM
BLOCK
SOFTWARE
PROGRAMMING
DISKETTE '
52
54
55
60
65
68
72
Page 5

CHAPTER
1
1.0
The
adapter
bit
bytes
highly
particularly
workstation
1.1
INTRODUCTION
EtherLink
for
microprocessor,
of
RESOURCES
• 8 Mhz
*
82586
*
16K
•
128K
HARDWARE
Plus,
IBM
PCs
user
integrated
applications.
to
RAM,
well-suited
80186
multi-packet
128K
to
512K
EXTERNAL
3C505,
and
16
bytes
compatibles.
an
82586
a
high
on-board
bit
EPROM
bytes
REFERENCE
is
a
high
Ethernet
speed
for
microprocessor
buffer
packet
16
bit
transceiver.
server
Ethernet
buffer/program
SPECIFICATION
performance
It
consists
coprocessor,
host
and
coprocessor
interface,
high
no
wait
The
memory
Ethernet
of
an
up
to
3C505
performance
states
80186
512K
and
16
a
is
*
8/16
*
20
*
On-board
* 8K
1.2
The
Ethernet
of
initialization,
128K
well
82586
network
functions
The
transfers
flexible,
allows
ARCHITECTURE
3C505
on-board
RAM,
as
offloading
performs
diagnostics.
host
ample
bit
byte
bytes
is
I/O
expandable
and,
interface
as
yet
FIFO
a
channel
in
well
simple,
processing
host
"Thin
host
firmware
program
all
interface
to
EPROM
16
bit
and
to
of
application
Data
a
typical
supports
as
Ethernet"
- PIO
maximize
microcomputer
an
contain
download,
512K,
Link
It
performs
environment,
programmed
allowing
power,
host/adapter
transceiver/802.3
IBM
PC
allows
programs
functions,
high
for
even
or
DMA
with
AT
interface.
software
and
diagnostic
for
protocol
from
as
all
packet
will
speed,
I/O.
easy
on a heavily
The
programming.
data
a
high
that
the
well
buffer
not
8
"drop"
or
interface
loaded
transfer
connector
performance
The
software.
processing
host
16
16K
supports',
PC.
as
powerful:
management
packets.
bit,
is
The
network.
bytes
The
a.s
The
DMA
very
8 Mhz
1
Page 6

8
88UJ6
..,An
tfhs
NO
stAtES
I
--
HOLD
HOLD
INt
CA
ACt:
0259G
-
ETHEPNET
COPROCESSOR
-
9123
t1ttNCHE'TER
COllEC
XCUR
7996
AND
POIIER
SUPPLY
082.3
nn
COHHECTOR
H
EnfERtfET
COHHECIDR
1291(
DRAH
I I
I
N
3941C
:
OPTIOtt
I
RNt
, I
, ,
,
:
,
~-------~
-------
..................................................................... _ .............................
· .
· .
~--~~.--
FIGURE
OCSftS BLOCK 01
REGISTERS REl1lStERS
1-1
· .
ADAPTF.R
COHTROL
AHO
S"MlUS
ncR,,"
............
16-120X
EPROH
ETHERHF.T
ADDRESS
UOST
COHTROL
AHO
STA'TUS
:
r---~.--~--~~--~
•.•••••.•••••••••.••••.•..•
1
'"A
REQ
DATA
REGIST'Dt
FIFO
28
IYtES?
•
..,ORDt
!
..•••.... _ .................................................................
~
11ft,.
REO
9
OR
16
BIT
HOST 1 HTJ:RFACE
DATA
IHT
.
ADAPTER
COHttAHD
REGISTER
j
~
PAm
HOST
COt1HAtfO
REGISTER
~
INT
OX
EPJOt
~
r
Page 7

1.3
ADDRESS
MAPS
1.3.1
HEX
ADAPTER
Address
o
100
102
102
102
104
180-18F
FFOO-FFFF
1.3.2
HEX
OOOOO-lFFFF
20000-3FFFF
40000-5FFFF
60000-7FFFF
FCOOO-FFFFF
EOOOO-FFFFF
ADAPTER
Address
X/O
MAP
Byte/Word
NA
(see
Low
High
High
Word
Wo-:r:d
MEMORY
Low
Low
Byte
Byte
Byte
Byte
Byte
MAP
text)
Read
Read
write
Description
82586
Adapter
Adapter
Adapter
Adapter
Data
Ethernet
Peripheral
Description
128K
128K
128K
128K
16K
128K
(If
Bytes
Bytes
Bytes
Bytes
Bytes
Bytes
27512s
CA
Command
Control
status
Control
Register
address
system
option
option
option
system
system
are
Register
Register
Register
Control
RAM:
RAM:
RAM:
RAM:
ROM
ROM
installed)
Register
(6
Bytes)
Block
Bank
Bank
Bank
Bank
*
1
2
3
4
*
Address
Initialization
1.3.3
HEX
Address
Base
Base
Base
Base
Base
**
***
address
address
Address
address
address
The
address
the
The
slot
(AT).
HOST
address
card.
Data
lines
Z/O
(factory
+ 0
+ 2
+ 2
+ 4
+ 6
which
(PC,
A20-A23
Root
MAP
(300)
(302)
(302)
(304)
(306)
is
is
The
Register
factory
XT,
is
set)
Read
write
Read
given
set
is
or
of
located
**
as
using
set
a
byte
AT)
3
the
Description
Host
Host
Host
Data
Host
an
the
base
wide
and
word
82586
at
FFFF6
Command
status
Control
Register
Control
offset
I/O
address
wide
are
from
address
register
ignored
in
system
Register
Register
Register
Register
the
is
in
a
***
jumpers
300H.
in
an
16
and
I/O
bit
ROM.
base
8
slot
the
on
bit
Page 8

1.4
80186
MICROPROCESSOR
The
3C505
integrated
interrupt
with
The
divider
the
80186
8086.
generates
timing.
nanoseconds,
second.
1.5
The
All
82586
82586
processor
frame
The
reception
82586
communicate
in
system
data
section
from
from
1.6,
the
nanoseconds.
uses
controller
All
has
the
Intel
16
bit
processor
on
timing
is
generated
an
80186
with
DMA
transfers
ETHERNET COPROCESSOR
is
a
bus
a
high
resRonsible
and
two
with
RAM;
the
transmission,
interfaces:
the
and
network.
Network
8
Mhz
system
80186
chip.
8Mhz
cycles
system
require
performance,
for
80186
a
serial
Interface.
Microprocessor.
with
3
timers,
The
by
a 16Mhz
clock
output
are
memory
2
all
network
error
a
parallel
and
to
interface
The
serial
The
clock
and
80186
which
4
clock
bandwidth
bus
cycles,
intelligent
related
logging,
retrieve
to
interface
82586
all
2
DMA
is
software
crystal.
is
cycles
of
system
and
transmit
bus
bus
This
is
channels,
compatible
An
used
for
long,
2
Megawords
or
1
microsecond.
communications
tasks,
and
diagnostics.
bus
store
interface
packet
and
is
described
interface
cycles
a
highly
and
internal
system
or
500
per
including
data
receive
operates
are
500
an
to
in
The
using
detail
only
80186
the
in
one
of
interprocessor
can
initiate
Attention)
00
will
cause
initiates
The
82586
instances:
1.
2.
3.
When
of
To
To
To
read
transmit
receive
receiving
the
system
execution
The
state
in
Adapter
the
Adapter
un.til
and
the
HOLD/HOLDA
the
Intel
the
processors
communications
a
transaction
input
a
transaction
can
to
an
active
require
or
update
a
packet.
a
packet.
or
transmitting,
bandwidth,
and
DMA
(80186)
transfers,
Control
this
bit
82586
protocol.
Lan
Components
the
82586.
transition
by
the
the
can
reset
Register.
is
cleared.
operate
This
can
use
are
asserting
bus
SCB
or
although
the
in
a
configuration
User's
the
via
by
asserting
A
read
on
the
to
access
(System
the
715
82586
The
shared
Manual.
system
the
system
or
the
CA
80186
system
Control
82586
uses
KW/second.
slowed,
by
asserting
82586
bus
bus
the
write
input.
INT1
Block).
approximately
do
remains
configuration
is
described
In
this
at
a
time.
RAM.
The
CA
to
I/O
The
input.
RAM.
Thus
not
halt.
the
in
mode,
80186
(Channel
location
82586
in
three
program
R586
the
reset
in
All
35%
bit
4
Page 9

~.6
NETWORK
INTERFACE
The
the
3C505
Intel
Converter,
Transceiver
~.6.1
The
parallel
reception.
the
serializes
destination
outputs
link
standard.
preamble
station
so,
in
the
1.6.2
The
decoding
transceiver.
clocks
the
milliseconds,
approximately
network
82586
and
IC.
82586
82586
Adapter
the
management
and
address
the
serial
Adapter
8023
8023
of
to
the
IC
prevents
interface
LAN
controller,
an
perfo~s
convers~on
During
RAM
the
bit
on-board
SERIAL INTERFACE
all
transmit,
through
data,
fields,
appends
stream.
algorithm
During
compares
bit
to
see
stream
reception,
the
if
RAM.
MANCHESTER
is
responsible
the
It
serial
also
82586
CONVERTER
serial
continuous
thus
3lk
limiting
bytes.
consists
the
transceiver
parallel
during
parallel
the
82586
inserts
a
CRC
The
82586
according
destination
the
is
converted
for
bit
stream
supplies
interface.
of
the
SEEQ
8023
using
to
serial
packet
data
bus
interface.
the
preamble,
field
also
the
82586
address
frame
should
into
the
Manchester
between
the
transmit
transmission
the
maximum
serial
Manchester
the
and
transmission
is
retrieved
to
the
performs
to
the
strips
field
be
received.
bytes
the
A
watchdog
of
more
packet
interface
AMD
serial
The
source
"packet",
the
CSMA/CD
IEEE
off
with
and
encoding
82586
and
and
receive
timer
than
size
on
Code
7996
to
and
from
82586
and
and
802.3
the
the
If
stored
and
the
on
25
to
For
diagnostic
mode"
the
whereby
receive
transceiver
Loopback
3C505
~.6.3
The
to
Hardware
TRANSCEIVER
3C505
the
necessary
detection.
bit
onboard
"Thin
signal
purposes,
the
transmitted
section.
problems.
in
the
Adapter
Interface
transceiver
Ethernet"
the
8023
This
Enable
Control
Specification,
coax
conditioning
5
can
be
data
is
is
useful
loopback
Register.
physically
cable.
as
placed
internally
for
by
Chapter
connects
It
well
in
"loopback
routed
isolating
clearing
Refer
2.
the
performs
as
collision
the
to
the
3C505
the
to
Page 10

The
user
network
3CI02.
and
enable
card.
must
The
EtherLink
3C505,
can
through
If
so,
To
be
moved
illustrates
the
do
also
an
the
15
so,
from
Plust
connect
external
user
pin
the
must
connecter
transceiver
the
Installation
this
procedure.
BNC
the
3C505
transceiver
disable
on
position
Guide,
to
the
the
select
to
a
thick
such
onboard
backplate
plug
the
DIX
included
Ethernet
as
the
transceiver
in
the
position.
with
of
3Com
the
card
the
:1,,7
The
2764
27512
ADAPTER
3C505
type
ROMs
a maximum
The
3C505
configuration,
command
block
Host/Adapter
downloaded
Specification,
The
FFFFFH
and
to
1.8
The
system
82586.
fetch
ADAPTER
3C505
64K x
if
the
16
installed
consists
of
installed
second
U44,
additional
and
locations
maximum
time
"CAS
RAS
of
75
before
currently
Instruments,
FIRMWARE
contains
ROMs.
for
up
to
address
ROM
access
firmware
and
interface,
I/O,
programs.
Chapter
ROM
128k
The
is
mapped
bytes
82586
initialization
RAM
contains
configuration.
for
256K,
four
in
64K x 4
socketed
bank
U46.
U41,
The
U43,
access
nanoseconds.
RAS
available
and
Mitsubishi.
ROM
16K
bytes
These
128k
DRAM
network
Refer
3,
are
only
128K
384K,
10cations"-U31,"
must
third
U45,
time
of
refresh",
from
of
ROMs
can
bytes
time
of
performs
refresh.
a
to
for
more
to
address
used)
accesses
root.
bytes
Three
or
DRAMs.
be
additional
and
150
In
Hitachi,
firmware
be
replac~d
of
firmware.
250
nanoseconds
self-test,
It
set
of
interfacing
the
details.
space
and
is
accessible
ROM
of
dynamic
additional
512K
The
bytes
first
soldered
U47.
nanoseconds
addition,
described
NEC,
contained
by
27128,
The
ROMs
or
initialization
also
provides,
functions
and
which
execution
3C505 Command
FCOOOH-FFFFFH
to
following
memory
128K
of
RAM
an
organized
banks
memory.
additional
U33,
into
bank
These
below.
must
and
these
U35,
and
locations
be
soldered
devices
maximum
RAMs
These
Fujitsu,
in
less.
through
both
82586
bank
U40,
must
must
parts
Intel,
two
8Kx8,
27256,
must
support
Interface
(EOOOOH-
the
reset
in
can
Each
must
"037'.
have
CAS
access
support
Texas
or
have
and
a
of
80186
a
be
bank
be
The
U42,
into
a
are
The
for
system
both
partitioning
into
the
IFFFFH,
5FFFFH,
and
RAM
packet
or
Adapter
bank
2
bank
is
accessible
buffering
protection
memory
occupying
4
occupying
to
the
and
program
mechanism
space
0-7FFFFH,
20000-3FFFFH,
60000-7FFFFH.
6
80186
is
used.
with
bank
and
82586
storage.
bank
3
and
No
The
RAM
1
occupying
occupying
is
physical
is
mapped
40000-
used
0-
Page 11

Software
initialization
locations
Data
loss
initialization
To
facilitate
the
the
before
that
A
cycle
Chip
before
To
RAM
"CAS
RAMs
the
read
Select
increase
refresh,
RAS
or
in
RAS
Channel
causes
a
performs
cycle
refreshes
programmed
initialized,
this
The
burst
technique,
timer
mode
must
in
will
before
generate
cycle,
next
write
all
cycle,
reliability
0
to
DMA
an
cycle
I/O
to
generated
refresh
perform
and
refresh.
each
bank
occur
procedure
refresh,
RAS"
CAS
before
to
banks
output
read
the
the
refresh
the
refresh
and
the
I/O
location
simultaneously.
is
or
3C505
automatically
to
occur
read
two
"stop
will
and
memory
on
continue
refresh
DMA
cannot
two
functions
must
if
To
refresh
be
refresh
depends
3C505
feature
address
internal
RAS
cycle
80H
programmed
write,
and
to
free
firmware
generate
every
write
to
locations.
terminal
without
consumes
will
be
only
used.
for
accessed
is
on
the
contains
of
internally
address
will
will
The
for
this
does
not
the
uses
refresh
30
microseconds.
location
count"
any
3.3%
produce
proper
the
RAM,
every
not
refresh
hardware
the
DRAMs.
counter
refresh
produce
80186
range.
corrupt
80186
80186
80H.
The
DMA
so
CPU
of
the
one
RAM
256
4
consecutive
milliseconds.
performed.
technique
which
In
after
increments
the
a
next
CAS
PCSl
NOTE:
RAM
from
Timer
data.
involvement
2
cycles.
Each
Thus
controller
that
refresh,
involvement.
memory
DMA
cycle
operation:
The
used.
utilizes
this
each
mode,
CAS
address.
before
RAS
Peripheral
A
CAS
and
The
DMA
each
timer
cycle
is
DY~
DMA
not
once
Using
bandwidth.
so
that
so
in
Upon
perform
is
to
location
is
not
the
installed
power-up,
8
RAM
be
used,
80H)
used,
the
80186
"initialization"
then
will
then
banks
8
initialize
8
reads
of
memory
must
refresh
or
wait
cycles.
cycles
all
writes
will
200
RAM.
to
initialize
microseconds
If
CAS
before
(a
read
If
CAS
before
any
location
the
or
write
RAM.
and
RAS
RAS
in
refresh
to
refresh
each
then
I/O
of
7
Page 12

8 t1HZ
DHA
CPU
CLOCK
DIUIDE
REQUEST
DHA
DIVI~ED
, r
88186
TIHER 2
I"
(15
88186
CHAHHEL
BY
4
2.8
"HZ
se
66.7
XHZ
MICROSECONDS)
8
l
CAS
REFRESH
READ
BE~ORE
DUMMV
EACH DHA CYCLE
3C5BS
, ,
RAS
11'0
FIGURE
DRAM REFRESH
n
&.JRITE
1-2
8
CAS
REFRESH
!EFORE
DUMM~
P.AS
I
11'0
Page 13

1.9
HOST-ADAPTER
XNTERFACE
The
Host
registers:
addition,
whare
are
configuring.
is
found
2.
space.
The
Jumpers
1.9.1
The
used
the
the
Register
status
interrupt
Host
into
interrupts
1.9.2
and
the
each
used
A
in
the
interface
COMMAND
Command
to
Host
transfer
and
Command
Registers.
or
the
DATA
the
Adapter
Command
side
has
for
detailed
3C505
requires
are
used
REGISTER
Register
the
Register
Full
(ACRF
driven,
Adapter
Command
for
more
REGISTER
communicate
Register
a
Control
transfer
bit
Hardware
16
to
position
is
commands
Adapter.
and
Alternately,
so
that
when
the
Register.
information.
level
Interface
locations
a
full
and
The
Empty
HCRF)
an
opposing
through
and
the
Register
handshaking
description
Specification,
in
the
base
duplex
small
amounts
register
(ACRE
bits
the
and
in
Command
interrupt
side
Refer
two
Data
and
a
of
the
Host
address.
byte-wide
can
HCRE)
the
Host
is
generated
has
to
section
I/O
Register.
status
and
these
I/O
of
data
be
polled
and
and
Register
loaded
mapped
Register
interface
registers
Chapter
address
register
between
using
Command
Adapter
can
to
a
byte
1.10
In
be
the
on
The
high
Data
speed
Adapter.
the
DIR
cleared
which
set
is
(1),
referred
in
both
The
Data
transfers.
Register
bit
The
the
(HRDY
meaning
state
Register
The
bit
in
(0),
referred
data
to
an
the
Host
Register
can
and
of
bulk
direction
the
data
to
transfer
upload.
and
In
polled
be
determined
ARDY)
of
the
the
DIR
is
a
data
Host
transfer
as
Adapter
supports
in
the
Ready
Bit.
half
duplex
transfers
of
the
Control
is
a
data
is
from
The
state
status
both
operation,
by
reading
Host
Bit
20
between
data
transfer
Register.
from
download.
the
of
Registers.
polled
and
Adapter
is
determined
byte
the
the
Host
Adapter
the
DIR
I/O
the
the
state
Data
FIFO
is
If
the
to
If
the
to
bit
status
by
designed
Host
and
controlled
DIR
the
Adapter,
DIR
the
Host
can
and
of
DMA
the
Register
registers.
its
state
bit
bit
be
Ready
for
the
~y
~s
is
and
read
data
Data
and
9
Page 14

TRANSFER I DIR I
---------1-----1-------1-------1-------------------
PIO
DOWNLOAD
I I 1 1 X 1 REGISTER
1 0 1-------1-------1-------------------
I 1 X 1 1 1 REGISTER
HRDY
I
ARDY
I DESCRIPTION
NOT
NOT
FULL
EMPTY
---------1-----1-------1-------1-------------------
PIO
UPLOAD
I 1 1-------1-------1-------------------
I 1 1 I X 1 REGISTER
I X I 1 I REGISTER
NOT
NOT
FULL
EMPTY
---------1-----1-------1-------1-------------------
To
clear
that
(Flush)
used.
Register
in
the
DIR
Careful
Incorrect
correctly.
enabling
bit
the
FIFO
part
changes
word
completed
the
the
Adapter
Bit.
from
Adapter
is
of
of
REGISTER
REGISTER
a
stuck
register
bit
By
FIFO
attention
empty.
the
a command
in
setting
Ready
and
DMA
download
the
execution
Flag
is
not
can
use
confusing
The
transfers.
has
actually
One
command
DIR
bit
NOT
NOT
byte
the
actually
this
should
DIR
to
solution
after
block.
of
FULL
EMPTY
from
is
in
Host
and
resetting
is
forced
bit,
be
must
upload,
block
the
--->
....
->
the
Data
a known
and
Adapter
to
cleared).
regardless
paid
results
be
in
its
When
completed
the
This
changing
the
is
to
sequence.
Adapter
indicates
last
command
WRITE
!<Lj:~D
the
in
occur
change
DATA
Register,
empty
Control
the
Host
empty
the
correct
the
has
FLSH
if
download,
DATA
state,
Either
of
use
the
the
must
the
The
accepted
that
block.
Bit,
state
the
of
the
bit
state
state
make
DIR
3C505
the
or
to
the
Register
the
(the
the
Host
state
DIR
is
prior
of
sure
i.e.,
bit
firmware
the
Adapter
not
the
only
ensure
FLSH
is
Data
data
or
of
the
bit.
set
to
DIR
that
the
as
first
has
1.9.3
To
FIFO,
permitted
the
bytes
where
configured
does
16
The
installed
transfers
bit
the
Data
bit
DATA
10
deep,
it
not
slot.
Data
AT
REGISTER CONFIGURATION
Adapter,
words
(AO
Register
or
is
and
need
R7gister
1n
are
DMA
channels
the
deep.
and
BHE
is
a
16
installed.
no
jumpers
to
know
is
a
16
permitted
Data
are
configured
bit
bit
(5,6,7)
Register
Only
ignored).
FIFO,
The
need
whether
configured
I/O
(AO
and
10
16
as
10
be
it
slot
BHE
can
is
bit
However,
either
words
register
set.
is
installed
as
a
of
are
be
used.
always
data
an
deep,
is
Also,
16
bit
an
ignored)
a
16
transfers
to
8
bit
depending
automatically
the
in
an
register
AT.
Only
and
bit
the
FIFO,
Adapter
8
only
wide
are
Host,
20
on
or
when
word
16
a
Page 15

In
a
PC,
configured
performs
performs
performance
always
Adapter
presence
in
presence.
conversion
direction
indicates
the
transfer
register
XT,
as
byte
word
is
Data
of
words,
In
is
because
the
or
an
a
to
word
I/O
not
an
Register
because
Adapter
performed.
presence
8
bit
20
byte
conversion
to
reduced
even
the
not
number
bytes.
to
Host
of
slot
FIFO
the
in
Ready
the
Host
A
Data
bytes.
of
an
to
the
so
Data
8
bit
of
bytes
flag
An
odd
Adapter
transfers,
byte
cannot
Registe~
AT,
the
Host.
that
Register
systems.
to
(ARDY)
byte
will
Data
the
The
the
will
not
get
Ready
Register
The
80186
and
Host
register;
indicates
get
know
word
stuck
flag
register
always
Adapter
must
"stuck"
of
to
byte
in
this
(HRDY)
is
the
the
its
~.9.4
DMA
enabled
Since
caution
PC
When
same
TRANSFER I
transfers
DMA
the
DMA
DMA
TRANSFER
using
the
controller
DMA
should
DMAE
channel.
by
the
be
bit
DIR
the
Host
DMAE
channel
taken
is
not
is
cleared,
I
HRDY
to
and
bit
to
enabled
floats
ensure
I
in
ARDY
from
the
when
until
another
Host
this
that
the
this
the
I/O
I DESCRIPTION
Data
Control
bit
channel
DMAE
card
Register
Register.
is
cleared,
in
bit
may
is
use
---------1-----1-------1-------1-------------------------
DMA
DOWNLOAD
---------1-----1-------1-------1-------------------------
DMA
tJJ?WAD
I 1 1 I X I
1 0 1-------1-------1-------------------------
1 1 X 1 1 1
1 I X I 1 I
,I
1 i
-----'--'
1 I 1 I X 1
f
'-------
WRITE
READ
WRITE
'I
-------------------------
READ
REQUEST
REQUEST
REQUEST
REQUEST
TO
TO
ADAPTER
TO
TO
HOST
HOST
ADAPTER
---------1-----1-------1-------1-------------------------
are
the
set.
the
The
3C505
Host
TCEN
on
~he
Register
Enable
programming
Channel
after
bit
interrupts
Adapter
in
and
1
can
the
the
on
the
registers
input
be
programmed
last
Host
for
more
performs
80186
to
DY~
DMA
the
cycle
Control
DONE
80186
of
information.
DMA
Channell.
internal
to
generate
a
Host
Register.
transfers
interrupt
is
never
to
DMA
Refer
to
Both
are
the
in
an
interrupt
transfer
to
and
a
from
the
controlled
80186.
floating
using
the
the
DMA
to
section
Data
Channel
The
state.
the
the
by
DY~
Page 16

Note:
the
independent
while
the
uses
the
Adapter
DMA.
Adapter
of
one
other
to
use
and
another.
performs
polled
the
DMA.
I/O
Host
That
and
may
is,
There
the
perform
one
may
is
little
3C505
DMA
use
polled
reason
firmware
transfers
I/O
for
always
The
DMA
Burst
3C505
DMA
Host
will
Burst
has
DMAE
go
1.
2.
3C505
transfers
(BRST)
will
channel
to
refresh
then
bit
no
effect
bit
inactive
The
The
depending
3.
The
occured
1.9.5
The
status
ASF3,
and
Host
STATOS FLAGS
Host
Flags.
which
directly
has
programmed
through
used
codes,
the
hardware
the
for
and
contains
in
PCs
bit
in
transfer
for
one
its
transfer
is
set,
is
set,
under
entire
Data
Burst
since
and
Adapter
if
single
the
Host
Register
bn
the
bit
another
this
the
the
The
are
programmed
observable
two
by
status
the
Adapter
synchronization,
other
in
assorted
any
hardware
where
the
9
bytes/words
host
own
system
pause
cycle
DMA
following
DMA
transfer
transfer
is
not
last
also
Adapter
by
Flags,
Host
status
way.
to
support
this
Aux
mode
DMA
Register
and
CPU
cycle.
DRAM
9
bytes/words,
will
DMA
request
not
is
inp~t
conditions:
is
FIFO
is
direction.
set
and
DMA
pause.
communicate
has
three
by
the
the
Host
HSFl
Control
Register
Register.
command
tasks.
Host
is
supported.
is
then
This
if
necessary.
and
occur.
used.
to
completed
temporarily
9
DMA
using
flags,
Adapter
status
and
The
HSF2,
status
execution
They
are
"demand
not
relinquish
will
so
on.
The
ThUS,
the
host
transfers
general
ASF1,
Control
Register.
and
and
not
decoded
mode"
If
set,
the
the
the
allow
The
Burst
PC
3C505
If
if
the
the
bit
the
will
full/empty
have
purpose
ASF2,
and
Register
The
which
are
observable
Flags
are
completion
by
12
Page 17

1.10
ADAPTER
(80186)
INTERRUPTS
The
80186
internal
1.10.1
A
internal
software
Sheet
1.10.2
There
Command
Attention
there
the
disabled,
the
80186.
can
positive
microprocessor
and
external
INTERNAL INTERRUPTS
brief
description
interrupts
generated
for
programming
DMA
This
Timer
An
Timer
cycle
Channel
is
of
Interrupt
interrupt
o.
counting
EXTERNAL INTERRUPTS
are
three
Register
(NMI).
is
no
cause
of
the
appropriate
These
be
enabled
edge
sources.
1
used
a
DMA
The
and
timeouts.
sources
Since
need
the
for
interrupt.
interrupts
bit
inputs
at
triggered.
in
the
follows.
interrupts.
details.
Done
to
Interrupt
generate
transfer
is
generated
interrupt
of
Full
each
a
corresponding
in
the
never
any
time.
3C505 may
of
how
These
to
external
(INT
interrupt
Except
are
enabled
Interrupt
"float"
the
an
interrupt
or
every
is
0),
All
be
3C505
include
Refer
from
the
10
used
for
interrupts
82586
has
status
for
NMI,
or
Mask
so
that
channels
interrupted
firmware
Timer,
to
the
after
Data
millisecond
general
to
Int
a
(INT1),
unique
bit
which
disabled
Register
these
are
by
both
uses
DMA,
80186
the
Data
last
Register.
from
purpose
the
80186:
channel,
to
indicate
cannot
by
setting
in
channels
programmed
and
and
be
the
Command
I£
enabled,
when
This
Command
register.
status
from
82586
This
82586.
the
.
Refer
82586
Register
the
condition
Register
bit
the
Command
INT
(INT1)
input
If
after
to
the
an
Host
The
are
is
enabled,
82586
Full
interrupt
loads
is
also
Full)
Command
cleared
Register
tied
the
directly
SCB
data
13
(INTO)
will
a
byte
reflected
bit
Register
when
the
has
sheet
be
in
in
the
to
80186
been
for
generated
the
command
by
the
Full
80186
the
INT
will
modified
more
to
the
HCRF
adapter
interrupt
reads
output
be
interrupted
by
the
information.
the
80186
register.
(Host
status
the
byte
on
82586
and
the
by
.
Page 18

Attention
When
an
a
the
NMI
"soft"
state
positive
brought
(NMI)
ATTN
is
generated
after
edge
from
bit
reset
low
to
an
interface
triggered
to
is
set
in
the
bring
high
in
80186.
the
error
and
to
the
adapter
force
Host
occurs.
the
the
Control
This
back
ATTN
NMI.
NMI
to
The
bit
Register,
is
used
a
known
NMI
must
as
is
be
1.11
The
HOST
3C505
situations:
interrupt
Host
By
Control
after
Register.
enabled,
used
interrupt.
cleared
enable)
Command
By
Register,
the
DMA
Command
should
The
when
INTERRUPTS
can
DMA
channel
DMA
setting
Register,
the
to
bit
Register
setting
Adapter
Done
be
Command
the
be
complete
is
Done
the
last
If
the
Done
determine
The
by
disabling
in
the
an
interrupt
writes
interrupt
Register
used
Register
Host
reads
programmed
and
used.
TCEN
cycle
the
(Terminal
an
interrupt
of
Command
bit
if
DMA
Done
the
the
Host
Full
CMDE
(Command
a
byte
is
Full)
to
determine
Full
the
Command
a
DMA
in
the
a
DMA
interrupt
DMA
Control
will
in
also
bit
interrupt
byte
to
interrupt
Register
Count
will
transfer
Register
host
Done
channel
Register.
Enable)
be
generated
the
enabled,
in
the
the
from
Enable)
be
generated
to
Full
status
was
the
and
using
bit
Command
Host
source
and
ACRF
the
Command
the
Full.
bit
or
interrupt
register
source
Done
the
in
the
to
the
Register.
the
ACRF
status
of
the
bit
Register.
Host
in
Only
in
the
to
the
from
the
is
should
of
status
bit
DMAE
Host
Control
Host
(Adapter
Register
inte~rupt.
are
cleared
one
Host
when
If
two
PC
Host
Data
also
be
the
are
(DMA
the
Care
must
interrupts.
interrupt
the
turn
PC
the
enable
both
used
3C505
by
channel
PIC
PIC
3C505
another
be
taken
If
channel
channel
interrupts
interrupts
I/O
both
is
is
when
floated
not
off
are
card.
enabling
interrupt
and
also
before
before
disabled,
sources
can
disabled.
disabling
enabling
14
and
cause
the
disabling
are
spurious
To
prevent
3C505
the
PIC
interrupt
the
disabled,
interrupts
this,
interrupts,
channel.
channel
3C505
the
if
always
and
When
can
be
Page 19

When
3,4,5,6,7
equivalent
channel
installed
can
or
to
9
should
channel
be
used.
in
a
PC,
be
2.
XT,
used.
In
or
an
a-bit
In
a
AT
this
16-bit
slot,
situation,
AT
interrupt
slot,
channel
any
channels
9
interrupt
is
1.12
Note:
firmware
several
transition
Visually,
1.13
RESETTING
Power
Upon
80186
status
Registers
Adapter
The
both
Register.
that
will
ETHERNET
On
power
Host
the
the
remain
After
performs
seconds.
this
THE
Reset
up,
and
82586
indicate
are
Reset
can
ATTN
This
Host
either
in
the
is
ADDRESS
ADAPTER
the
are
empty,
cleared.
reset
bit
reset
Control
reset
configuration
The
indicated
until
of
the
completion
Host
status
3C505
reset,
and
the
and
is
adapter
the
similar
Register
the
above
by
is
both
ATTN
"hard"
and
of
Flags
LED
put
the
the
FLSH
to
is
self-test
these
#1
in
reset
Command
Host
by
simultaneously
bit
in
the
power
not
affected.
and
FLSH
resets,
tasks
from
turning
state
state.
and
Data
and
Adapter
the
on
bits
the
routines
is
3
to
off.
Both
Registers
Host
reset
The
are
reset.
adapter
which
indicated
state
the
Control
setting
Control
except
Adapter
last
by
o.
a
The
Adapter
byte
1.14
The
LED2
high
bit
Adapter
Adapter
turns
The
I/O
of
the
LED
bits
so
LED
and
turned
software
debug
INDICATORS
that
the
t1
3C505
initialization
Ethernet
space.
six
contains
in
the
setting
LED
off
may
and
The
consecutive
two
Adapter
the
off.
firmware
at
the
call
status
station
twelve
words
LEDs
Control
bit
turns
following
conclusion
3C505
indications.
firmware
address
digits
which
turns
this
15
resides
are
starting
are
Register.
the
LED
LED
on
a
hard
of
these
routines
contained
at
location
enabled
The
on
during
reset.
routines.
in
by
and
to
a
PROM
the
LEDs
clearing
the
The
use
in
the
in
the
180H.
LEDl
are
self
Application
the
and
active
the
t.est
LED
LED
low
is
for
Page 20

LED
'2
The
a 1
visual
stop
is
3C505
HZ
blinking,
not
recommended
indicator
CAUTION! When
control
ROM.
1.
15
A
socket
resides
applications
time
The
ROM
execute
The
space.
memory
DMA
access
the
Otherwise
:i}:~ST
ROM
is
in
for
these
is
from
ROM
can
The
address
to
provided
the
such
only
8
base
firmware
rate.
using
LEOs
by
incorrect
Host
as
devices
accessible
bit
ROMs
be
mapped
address
jumpers
this
ROM.
It
that
a
software
3C505
calls
on
memory
BIOS
turns
this
serves
the
that
application
firmware,
to
operation
the
card
extensions.
must
not
to
on
I/O
on
any
for
on
the
Incorrect
as
a
card
or
hardware
the
for
space.
be
the
cards.
8K
the
card.
data
LED
on
"heartbeat"
is
alive.
software
downloaded
firmware
will
an
SK
This
The
greater
Host.
boundary
ROM
is
The
will
or
off
at
signal
If
error
has
routines
result.
x S
ROM
(2764)
can
maximum
than
Note
in
~50
-
the
programmed
3C505
be
does
read.
approximately
and
the
LED
occurred.
use
this
software
provided
ROM
be
used
address
nanoseconds.
The
PC
AT
Host
using
not
is
should
It
LED.
must
in
which
for
access
will
address
the
support
a
To
ON
is
enable
(0)
position.
present,
the
place
ROM,
If
the
set
no
jumper
the
ROM
Enable
is
present,
should
jumper
in
the
or
on
to
off
the
disable
(1)
card
position.
must
a
ROM
to
the
which
16
Page 21

CHAPTER
2
2.0
The
the
3C505
Briefly,
Command,
duplex
is
channel
allows
Register
The
relative
INTRODUCTION
3C505
3C505
processor.
a
half
Host
Hardware
interface
the
Data,
and
used
duplex,
for
efficient
programmed
contains
and
Adapter
to
a
base
Command
Data
status
Control
Control
AUX
DMA
HARDWARE
Interface
registers
Host
status,
and
for
command
16-bit
configuration
interface
I/O
Base
I
Host
-----------------------------------1
I 0 I 0 I
I 4 I 4 I
I 2 I 3 I
I 6 I 3 I
I
6 I 2 I
I 2 I X I
INTERFACE
3C505
and
control.
wide
bulk
access
address:
Offsets
I
Adapter
specification
accessible
communicate
block
FIFO,
data
transfer.
of
state
these
SPECIFICATION
describes
by
the
using
The
Command
transfers.
and
the
flags
registers
I
can-be
The
interface.
and
programmable
in
Access
Read/Write
Read/Write
Read
write
Read
write
only
only
only
only
The
PC
host
four
Register
Data
used
Control
their
I
I
I
I
I
* I
I
in
detail
and
registers:
is
Register
with
Register
The
I/O
the
full
a
DMA
status
flags.
space
The
Host
Adapter
Address
Refer
Chapter
architecture.
Specification
interface
*
The
Registers.
base
Maps,
to
Host
base
the
1
can
I/O
address
for
3C505
for
in
be
and
address
is
more
a
And
Chapter
programmed.
Adapter
detail.
Hardware
more
also
can
fixed
detailed
refer
will
be
at
External
3
for
read
17
modified
100
hex.
Reference
explanation
to
the
a
the
contents
with
Refer
3C505
description
jumpers,
to
section
Specification
of
Command
of
the
of
their
while
1.3,
hardware
Interface
how
own
this
Control
the
in
Page 22

2.1
COMMAND
REGISTER
+------+------+------+------+------+------+------+------+
I
CMD7 I CMD6 I CMDS I CMD4 I CMD3 I CMD2 I CMD1 I CMDO
I
+------+------+------+------+------+------+------+------+
The
register
Host
used
2.2
Command
and
the
to
read/write
DATA
+------+------+------+------+------+------+-----~+----
I
DR1S
I
Register
used
REGISTER
3C50S.
DR14
for
I
passage
Programmed
this
DR13
(CMDR)
of
register;
I
••••
is
primary
and
DMA
•
•••
a
bidirectional
command
interrupt
is
not
I
DR2 I DR1
blocks
driven
supported.
I
8-bit
between
I/O
can
--+
DRO
I
data
the
be
+------+------+------+------+------+------+------+------+
The
high
used
supported.
8-bit
transferred.
appears
transfers
Data
speed
to
wide
Register
data
read/write
.
From
register.
To
as
a
16-bit
are
supported.
(DR)
transfers.
this
an
8-bit
the
Adapter
wide
is
a
register;
Host,
Only
register
half
DMA
an
or
duplex,
or
programmed
interrupt
the
Data
even
to
a
16-bit
(10
20
Register
number
words
byte
I/O
driven
of
Host,
deep)
FIFO
methods
bytes
and
used
I/O
appears
the
only
for
can
is
not
as
can
register
word
be
an
be
18
Page 23

2.3
The
Host
DMA
signals
of
cleared
HOST
Host
to
requests
this
CONTROL
Control
cause
between
register
upon
REGrSTER
Register
3C505
to
the
the
can
power-up.
hard
Host,
PC
be
(HCR)
or
Host
read
soft
and
and
back
is
resets,
to
3C505
an
8-bit
provide
processors.
by
the
register
to
control
synchronization
Host.
This
used
interrupt
The
contents
register
by
control
+------+------+------+------+------+------+------+------+
I
ATTN
I FLSH I
DMAE
I DIR I
TCEN I CMDE
I HSF2 I HSF1 I
+------+------+------+------+------+------+------+------+
the
and
is
ATTN
FLSH
****
Attention
When
the
generated
Control
affected.
"soft
state
Flush
reset",
ready
Data
Setting
Register
bit.
actual
remains
Reset
When
a~apter
the
adapter
Register,
Host
Status
S0186
internal
reset
will
bits
stay
are
Host
to
and
The
to
Reqister
the
FLSH
regardless
The
FIFO
data
in
in
this
Host
hardware
Adapter
Register
processor
registers
location.
in
cleared.
sets
status
the
ATTN,
Adapter's
Registers
interpretation
where
accept
bit
the
Adapter
commands.
flushes
of
assumes
the
state
FIFO
until
is
simultaneously
decodes
status
are
is
generated
and
transfers
The
82586
this
reset
a
non-maskable
80186
on
resets
all
the
an
state
empty
unchanged.
the
FLSH
sets
it
as
a
and
Control
reset.
is
also
state
processor.
the
of
NMI
data
of
words
the
condition,
bit
both
"hard
A
reset
which
control
reset.
until
interrupt
Adapter
is
intended
itself
from
DIR
The
Data
is
cleared.
ATTN
and
reset".
Registers,
signal
resets
to
the
ATTN
(NMI)
The
are
to
into
an
the
(direction)
although
Register
FLSH,
The
and
to
all
the
The
powerup
Adapter
and
is
Host
not
be
idle
Data
the
the
Data
the
the
80186
FLSH
19
Page 24

DMAE
DMA
enable
Used
transfers
the
bit
and
Host
cleared,
another
in
conjunction
to
can
or
occur
I/O
from
the
card
with
the
only
DMA
may
the
Data
if
this
request
use
DIR
Register.
bit
output
the
channel.
bit,
is
to
DMAE
set.
the
DMA
enables
requests
with
Host
DMA
the
DMAE
"floats"
to
DiR
TCEN
CMDE
Direction
The
Host
half-duplex
transfers
data
transfp-s
CAUTiONl
sure
that
empty)
This
c~n
network
Terminal
TCEN
a
DMA
enables
transfer
Command
The
when
CMDE
the
neither
interrupt
float.
flag
has
Data
are
After
the
before
take
activity
Count
an
Register
control
Adapter
TCEN
nor
channel
exclusive
Register.
to
the
are
completing
Adapter
changing
1
to
occurring
interrupt
interrupt
to
or
interrupt
bit
has
CMDE
because
Adapter
to
the
has
30
from
allows
written
are
control
of
If
(download).
Host
a
(upload)~
download,
completed
the
DIR
bit
microseconds,
on
the
Adapter.
enable
to
the
the
Host
Data
enable
the
Host
the
Command
set,
the
the
interrupt
the
direction
DIR
the
its
to
the
depending
at
the
Register.
to
Host
should
request
is
clear,
If
DIR
Host
transfer
upload
completion
be
Register.
of
data
is
set,
must
make
(FIFO
state.
on
interrupted
When
disable
line
will
the
the
of
the
HSFl
HSF2
Host
The
status
HSFl
Adapter
nature
drivers
completion
and
status
and
to
Flags
HSF2
Register.
can
synchronize
.status.
1
and
status
be
used
2
20
bits
by
data
are
They
Host
transfer
routed
are
and
directly
general
Adapter
or
purpose
pass
to
interface
command
the
in
Page 25

2.4
HOST
STATUS REGISTER
The
Host
and
synchronize
Host
to
Command
+------+------+------+------+------+------+------+------+
I
HRDY I HCRE I ACRF
status
determine
Register
the
Register
causes
Host
(HSR)
of
programmed
and
3C505
I DIR I
is
an
interrupts,
processors.
DONE
B-bit
check
I/O,
I ASFJ I ASF2 I ASF1 I
register
and
status
provide
used
of
a
both
+------+------+------+------+------+------+------+------+
HRDY
HCRE
Data
The
full
the
means
more
Register
HRDY
or
Host
that
data.
Adapter,
empty,
Host
The
the
the
Command
HCRE
Command
Host
indicating
has
that
read
the
not
HRDY
i.e.,
flag
the
register
ready
bit
indicates
empty,
is
downloading
the
Data
When
set
input
Register
is
Register
writes
the
register
Co~~and
depending
Register
the
means
data
empty
used
to
from
the
Command
Register,
is
empty.
whether
data
is
Host
is
that
is
available.
handshake
the
is
not
the
on
the
to
the
not
full,
uploading
the
Data
data
Host
to
Register,
empty.
HCRE
Data
Register
Direction
Adapter,
i.e.,
data
Register
transfer
the
HCRE
When
is
set,
Flag.
HRDY
ready
from
Adapter.
is
the
indicating
by
the
Data
way
is
to
not
When
set
for
the
is
not
through
When
cleared
Adapter
ACRF
Adapter
The
the
the
ACRF
Command
Adapter
indicating
Command
register
Command
flag
Register
writes
the
Register,
is
not
Register
is
used
register
ACRF
full.
from
the
full
to
handshake
Command
is
is
21
the
Adapter
full.
cleared,
data
to
Register,
When
indicating
transfer
the
ACRF
the
Host
Host.
reads
that
through
When
is
set,
the
the
Page 26

DIR
Direction
The
bit
DIR
in
direction
Register.
to
the
from
also
the
determines
flaq
status
the
Host
data
When DIR
Adapter
the
bit
is
Control
is
allowed
(download).
Adapter
how
HRDY
the
is
to
current
Register.
clear,
When DIR
the
Host
should
value
to
pass
transfers
(upload).
be
of
the
It
specifies
through
are
is
set,
interpreted.
DIR
in
the
from
the
transfers
The
DIR
control
which
Data
Host
are
bit
DONE
ASF1
ASF2
ASF3
DMA
The
Host
Adapter
done
DONE
and
the
COt,trol
clearing
The
ASF1,
Host
They
and
or
are
Adapter
pass
flag
Data
will
Register
the
status
status
general
command
CAUTION!
to
bits
if
the
while
the
Host
simultaneously.
~
ASF2 - 0
ASF2=O,
you
transition
state
the
of
flag
slower
Adapter
more
than
in
transition.
is
Register
also
DMAE
Flags
2
and
Register
interface
These
processor
they
state
and
could
to
ASFl
than
status
one
set
when a DMA
is
be
generated
is
set.
bit
in
1,
3
status
from
purpose
drivers
completion
bits
are
For
in
of
example,
you
are
transition.
more
are
actully
= ASF2
the
ASF1
Register
flag
to
complete.
the
2 , 3
bits
the
in
nature
status.
set
and
it
testing
read
=1,
flag.
twice
insure
transfer
An
if
the
TCEN
The
DONE
Host
are
bi~
Cont~ol
routed
Adapter
and
to
synchronize
asynchronously
is
possible
This
than
if
the
one
present
for
this
if
state
the
The
when
that
you
between
interrupt
bit
is
Register.
directly
Control
can
be
data
with
to
is
only
flag
state
state
during
ASF2
flag
solution
checking
have
the
in
the
cleared
Register.
used
transfer
read
a
is
ASF1=1
is
the
not
Host
to
the
Host
by
to
the
by
Host
respect
these
problem
tested
is
ASFl
and
a
state
changed
to
read
state
read
a
22
Page 27

2.5
HOST
AUX
DMA
REGISTER
The
transfers.
Host
Aux
This
DMA
Register
register
is
is
used
cleared
to
upon
support
power-up.
demand
mode
DMA
+-----+-------+-------+-------+-------+--------+-------+-------+
I 0 I 0 I 0 I 0 I 0 I 0 I 0 I BRST I
+-----+-------+-------+-------+-------+--------+-------+-------+
BRST
CAUTION! Do
PC's.
2.6
DMA
If
the·
refresh
such
single
Data
ADAPTER
Burst
the
errors
Burst
Host
will
its
pause
cycle
not
CONTROL
bit
pause
dynamic
will
DMA
use
will
demand
REGISTER
is
not
every
RAMs.
occur.
transfers.
occur!
set,
mode
demand
9
transfers
If
This
DMA
the
B~rst
bit
uploads
has
mode
to
no
in
DMA
allow
bit
effect
PC's
transfers
the
is
set,
or
XT
by
PC
to
no
during
type
The
the
the
PC
be
up.
Adapter
Adapter
LEDs,
Host
read
and
back
Control
to
and
3C505
by
reset
set
the
Register
the
the
processor.
Adapter.
82586,
state
(ACR)
of
The
This
is
flush
synchronization
contents
register
an
the
8-bit
Data
is
register
flags
of
this
cleared
used
Register,
between
register
upon
+------+------+------+------+------+------+------+------+
I LPBK I FLSH I
R586
I LED2 I
LEDl
I ASF3 I ASF2 I
ASFl
+------+------+------+------+------+------+------+------+
LPBK
Loopback
LPBK
is
Adapter.
Code
specifies
not
Converter.
control
placed
This
a
diagnostic
on
the
controls
If
network,
CLEAR,
mode
loopback
loopback
but
in
at
which
is
looped
the
mode
transmitted
back
8023
is
enabled.
into
Manchester
by
blink
the
can
power-
I
data
the
23
Page 28

FLSH
Flush
Setting
Register
bit.
actual
remains
Data
The
data
in
Register
the
FLSH'
regardless
FIFO
in
this
bit
of
assumes
the
FIFO
state
flushes
the
an
is
until
all
state
empty
data
of
condition,
unchanged.
the
FLSH
the
bit
words
DIR
The
is
from
(direction)
although
Data
cleared.
the
Data
the
Register
R586
LED2
LEDl
ASF1
ASF2
ASF3
Reset
When
the
82586
the
82586
components
until
R586
Channel
LED
LED2
the
LED
LED1
the
control
determines
LED
control
determines
LED
Adapter
The
Host
and
ASF1,
Status
can
synchronize
status.
Adapter
coprocessor
are
is
Attention
bit
and
on,
bit
on,
and
status
2
and
Register.,
be
used
data
sets
reset
cleared.
signal
2
the
clearing
1
the
clearing
Flags
3
status
by
transfer
R586,
to
state
state
1,
Host
chip.
an
before
of
the
of
the
2
and
bits
They
and
a
hardware
All
inactive
The
82586
completing
LED
bit
LED
bit
3
are
are
general
Adapter
or
major
state
2.
turns
1.
turns
routed
pass
reset
and
then
Setting
the
Setting
the
directly
purpose
interface
command
is
applied
82586
hardware
remain
waits
for
initialization.
the
LED
LED
the
bit
off.
bit
off.
to
in
nature
drivers
completion
to
reset
the
turns
turns
the
to
24
Page 29

2.7
ADAPTER
STATUS REGISTER
The
the
both
to
'ARDY
ACRE
Adapter
Adapter
Data
synchronize
+------+------+------+------+------+------+------+------+
I
ARDY I ACRE I HCRF
+------+------+------+------+------+-----~+------+----
Data
The
full
the
means
data
the
full,
Adapter
The
the
the
indicating
reads
the
status
to
and
Command
Register
ARDY
or
Host
that
is
Host,
i.e.,
ACRE
Command
Adapter
the
register
Register
determine
the
Host
ready
bit
not
empty,
is
downloading
the
available.
ARDY
ready
Command
flag
Register
writes
that
Command
is
causes
Register
and
I DIR I
indicates
depending
Data
Register
When
set
means
to
Reqister
is
used
the
the
Register,
empty.
(ASR)
of
programmed
3C505
8/16
whether
data
the
accept
empty
to
handshake
from
Command
register
is
an
8-bit
interrupts,
processors.
I
SWTC
the
on
the
to
the
is
not
Adapter
that
more
the
the
data.
Adapter
Register,
is
not
ACRE
is
register
check
I/O,
and
I HSF2 I HSF1 I
Data
provide
Register
Direction
Adapter~
empty,
is
uploading
Data
data
Register
transfer
to
the
ACRE
empty.
set,
When
indicating
used
status
--+
is
Flag.
ARDY
~.e.,
data
is
through
Host.
is
cleared,
the
by
of
a
way
not
When
set
input
to
not
When
Host
that
ECRF
Host
The
the
the
Command
HCRF
Command
Host
indicating
the
COmInand
register
flag
writes
the
Register,
is
not
Register
is
used
Register
register
full.
the
full
to
handshake
from
Command
is
HCRF
25
the
full.
is
Host
Register,
cleared,
data
to
the
When
indicating
transfer
Adapter.
HCRF
the
Adapter
through
When
is
set,
reads
that
the
Page 30

DI:R
Direction
The
DIR
allowed
is
settable
Control
the
Host
from
the
flaq
status
to
pass
only
Register.
to
the
Adapter
bit
specifies
through
by
the
When DIR
Adapter.
to
the
the
Host
When
Host.,
in
Data
using
is
which
Register.
the
clear,
DIR
is
direction
DIR
bit
transfers
set,
data
The
direction
in
the
are
transfers
is
Host
from
are
8/16
SWTC
8/16
The
bit
8/16
installed
bit
IBM
is
AT
External
The
the
TEST
1.
SWTC
state
jumper
Ignore
detected
from
is
the
2.
Ignore
is
changing
3.
Install
known
unused
slave
occurs,
with
bit
in
an
set,
the
or
AT-compatible.
switch
flag
of
is
powerup
during
entering
useful
NMI
vector
ROM
when
checksum
convenient
frequently.
3D
as
"exceptions"
interrupt
in
the
3D
the
3D
flag
8
or
16
Adapter
in
the
the
set
TEST
to
memory
powerup
the
main
using
location
not
interrupt
vectors
Revision
becomes
Debugger
indicates
bit
expansion
is
in
Adapter
jumper
one,
the
test
ROM
ICE
in
error.
to
vectors.
(basically
active
program.
whether
a
sixteen
status
on
the
Revision
error.
normally
idle
systems
order
During
checksum
are
made
2.0
ROM.
and
attempts
slot.
Register
Adapter.
prevent
loop.
that
to
since
The
INT 0
to
the
bit
3.0
slot,
ROM
Memory
Ignoring
need
operate.
ROM
development,
interrupt
to
point
When
to
Adapter
If
the
i.e.,
represents
When
code
the
Adapter
to
the
code
vectors
7)
and
to
an
the
exception
communicate
is
8/16
p~
the
will:
errors
errors
modify
it
is
all
3D
26
Page 31

HSFl
HSF2
Host
The
Host
and
status
HSF1
Control
can
synchronize
status.
and
be
Flags
HSF2
Register.
used
by
data
1
and
status
Host
transfer
2
bits
They
and
are
routed
are
general
Adapter
or
pass
directly
purpose
interface
command
from
in
nature
drivers
completion
the
to
CAUTION!
the
are
both
80186
in
flags
present
state
HSF1=1
during
flag
is
the
flag
changed
to
state
in
These
and
transition.
is
state
and
a
state
state
read
of
the
both
transition.
bits
it
is
tested
is
HSF1 = HSF2 = 0
HSF2=0,
transition
slower
Host
flags
are
set
asynchronously
possible
This
is
to
only
simultaneously.
we
could
to
HSFl = HSf2
than
status
to
Register
insure
read
the
a
problem
and
actully
HSF1
that
these
For
we
twice
you
with
bits
if
example,
are
read
=1,
flag.
when
have
respect
while
the
state
testing
this
if
the
The
solution
checking
not
they
if
state
HSF2
read
to
of
the
for
a
27
Page 32

CHAPTER
3
3.0
The
support
After
programs
Adapter
sections
access
utilities
INTRODUCTION
16K
*
Bootup
*
Software
*
Network
*
Packet
*
Host
*
System
*
Host
bytes
the
Adapter
through
the
following:
I/O
PC
or
3.1
described
COMMAND
of
EPROM
initialization
memory
I/O
buffer
timer
primary
drivers
and
Adapter
control
bootup
the
primary
3.2.
in
INTERFACE SPECIFICATION
on
the
refresh
command
initialization,
can
Programs
resources
section
3C505
and
interface
access
command
Adapter
diagnostics
the
network
block
downloaded
directly
3.3.
contain
host-based
or
resources
interface
into
or
through
firmware
application
described
the
Adapter
a
of
set
that
the
in
can
of
3.1
The
(PCB)
command/response
The
Register.
command,
data
to
The
is
command
is
Table
PRIMARY
3C505
from
PCB
PCB
PCB
PCB
field,
set
up
maximum
64
bytes.
62
bytes
1
COMMAND
firmware
the
command
data
data
code
and
is
An
a
the
long.
are
length
(variable
length
and
PCB
or
PC
sequences.
code
passed
example
a
82586
size
The
the
explained
BLOCK
idles
Host.
(byte)
(byte)
length)
using
PCB
field
data
coprocessor.
the
PCB
length
The
that
field
Adapter
data
valid
in
STRUCTURE
waiting
The
PCB
The
programmed
might
length
field
counts
that
PCB
detail
format
contain
can
itself.
command
structure
has
for
a
of
I/O
the
configuration
accept
field
in
section
Primary
is
a
PCB
through
an
82586
number
in
does
The
codes
Command
expected
is:
of
this
not
include
maximum
are
3.2.
Block
during
the
configuration
bytes
data
version
summarized
Command
in
the
data
needed
field
the
ROM
PCB
in
28
Page 33

TABLE
1:
PCB
COMMAND
CODE
SUMMARY
HOST
00:
01:
02:
03:
04:
05:
06:
07:
08:
09:
Oa:
Ob:
Oc:
Od:
Oe:
Of:
10:
11:
12:
: I
2f:
->
3C505
configure
configure
Ethernet
download
upload
download
upload
receive
transmit
network
load
clear
download
execute
self-test
set
adapter
reserved
reserved
multicast
downloaded
Ethernet
COMMANDS
adapter
82586
address
data
data
data
packet
statistics
program
to
data
to
packet
program
address
info
to
Host
to
Host
list
memory
3C505
3C505
programs
(set
(set
(get
(download
(upload
(download
(upload
(receive
(transmit
(includes
(perform
(release
(download
(execute
(perform
(set
(get
adapter
82586
adapter
Ethernet
adapter
buffer
receive
Ethernet
using
to
Host
using
to
Host
a
packet)
a
packet)
82586
82586
download
program
program
3C505
information)
mode)
3C505
using
3C505
using
error
MC-setup
program
to
in
self-test)
address
requirements)
address)
DMA)
3C505
PIO)
3C505
counts)
3C505)
3C505)
in
DMA)
PIO)
command)
memory)
82586)
3CS05
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
3a:
31:>
:
3c:
3d:
3e:
3f:
40:
41:
42:
.
.
5f:
->
HOST
configure
configure
address
download
upload
n/a
n/a
receive
transmit
network
load
clear
download
execute
self-test
set
adapter
reserved
multicast
program
address
I
reserved
adapter
82586
response
data
data
packet
packet
statistics
program
response
response
info
response
request
request
complete
complete
response
response
response
response
response
memory
response
.
(returns
(returns
(returns
(request
(request
(receive
(transmit
(returns
(returns
(returns
(returns
(returns
(returns
(returns
(returns
success
success
Ethernet
DMA
download
DMA
upload
packet
packet
network
success
success
program
variable
self-test
success
adapter
or
failure)
or
failure)
address)
to
to
Host)
request
request
statistics)
or
failure)
or
failure)
id)
length
results)
or
failure)
information)
3C505)
complete)
complete)
data)
29
Page 34

3.1.1
STATUS
FLAG
USAGE
FOR
PCB
TRANSFER
The
byte
Adapter
stream
protection
transfers),
complete
state
should
PCB
can
included
its
status
PCB"
The
when
Adapter
always
the
Host
uses
the
PCB,
signals
status
Host,
similarly
In
summary,
following
Adapter
uses
against
the
until
11.
be
in
be
in
flags
sending
be
able
the
flag
it
to
the
conventions:
or
a
64-byte
sent
through
stray
Adapter
the
Host
Simultaneously,
the
Command
calculated.
the
PCB
data
is
to
(ASF2
a
always
accept
Adapter
PCB
and
to
ready
uses
end-of-PCB.
state
10.
expects
signal
Bost
acceptance
Adapter
Status
uses
circular
the
bytes
does
status
Register
(This
length
ASF1)
the
to
it.
status
To
indicate
When
the
Host
and
Flaq
not
Flags
the
Host.
read
To
or
buffer
Command
(from
consider
(HSF2
TOTAL
so
the
last
total
field.)
similarly
a
PCB
indicate
flag-state
rejection,
the
Adapter
to
set
rejection.
expects
to
Register.
Host
a
and
length
true
length
The
to
but
the
its
the
Host
store
the
aborted
PCB
transfer
HSFl)
of
the
beginning
Adapter
signal
it
might
acceptance
01
after
the
sends
a
status
to
host
For
PCB
go
to
PCB
of
is
NOT
uses
"end
of
not
of
the
Adapter
PCB
to
flags
use
the
SF2
The
just
10
is
3.1.2
The
the
-
Load
will
Host
-
Poll
Status
within
SFl
o
o
1
1
state
o
1
o
1
11
transmitted.
used
BOST
to
following
3C505
Adapter:
the
PCB
interrupt
for
the
the
Register.
40
ms.
Undefined
PCB
accepted
PCB
End
is
rejected
of
PCB
accompanied
After
signal
TO
ADAPTER REQUEST
method
command
the
data
Command
acceptance
is
byte
3C505
transfer.
Register
Abort
by
a
PCB
suggested
into
Adapter,
Empty
the
I/O
the
total
is
received,
or
rejection
to
transmit
the
Command
synchronizing
(HCRE)
if
it
length
flag
does
of
the
state
of
·the
a
Host
Register;
it
to
the
in
not
go
the
PCB.
PCB
the
PCB
01
or
to
this
PC
Host
empty
30
Page 35

-
output
timeout
context
-
After
Host
the
to
state
-
wait
a
reject
to
must
PCB
for
the
remainder
period
read
the
last
send
(excluding
11
before
adapter
if
a
to
PCB
actual
one
SOms
of
SOOus.
data.
last
byte
this
writing
state
timeout
the
PCB
byte).
the
01
The
(accept)
occurs.
PCB
similarly,
Adapter
data
byte
signifying
set
length.
is
the
or
remains
transferred,
the
TOTAL
Host
10
(reject).
reducing
in
interrupt
length
status
the
the
of
flags
Assume
3.1.3
The
3C505
Adapter
Adapter
host
The
the
-
request.
following
Host:
Load
interrupts
the
-
data
Poll
status
within
-
Output
timeout
context
-
After
Adapter
the
PCB.
before
ADAPTER
Adapter
needs
usually
the
PCB
the
transfer.
the
Command
Register.
20
ms.
the
to
to
read
the
last
sends
The
writing
TO
HOST
to
read
sends
method
command
PC
Host,
Register
Abort
remainder
SOous.
PCB
data.
actual
one
last
Adapter
the
length.
REQUEST
to
PC
or
write
a
response
is
used
byte
synchronizing
of
The
PCB
byte
Host
to
into
Empty
the
the
Host
data
signifying
status
OR
RESPONSE
request
a
block
PCB
transmit
the
(ACRE)
I/O
if
PCB
similarly,
should
byte
Flags
is
of
host
after
it
an
Command
it
to
flag
it
does
remain
is
transferred,
the
are
made
memory.
has
adapter
Register;
the
in
not
reducing
in
TOTAL
set
to
when
executed
PCB
Adapter
the
Adapter
go
interrupt
length
state
the
The
a
to
this
for
empty
the
the
of
11
or
The
10
Adapter
(reject).
waits
for
Host
31
status
Flag
state
01
(accept)
Page 36

3.2
PCB
COMMANDS
3.2.1
01H:
HOS~
Confiqure
for
multicast
buffers,
and
the
in
coprocessor
buffers
management
buffers
command
shown
adapter
db
db
dw
dw
dw
dw
dw
dw
TO
3C505
the
receive
maximum
adapter
is
is
in
response
01
OC
?
?
?
?
?
?
PCB
A~apter
PCB
address
and
command
size
when
of
and
fixed
not
parentheses
command
download
memory
1.6kb
issued,
FORMATS
Memory.
list,
program
queue
PCB
of
to
in
multicast
are
DMA
overhead.
at
one
the
below.
PCB31H
;command
;length
;#
;#
;#
multicast
;#
;*
;#
The
queue,
82586
entry
64
bytes.
be
loaded
alwp:
and
is
Adapter
to
confirm
code
of
command
receive
frame
receive
download
descriptors
Adapter
receive
frame
data
is
A
mode.
is
iJ.sei:'
The
not
The
data
queue
queue
addresses
buffers
programs
allocates
command
descriptors,
structures.
large
multicast
confiqurable.
uses
Host
execution.
portion
enough
into
Receive
tQ
number
the
should
entries
entries
the
decrease
default
of
to
list
and
of
expect
PCB
(10)
(20)
(0)
(20)
(20)
(10)
memory
queue,
receive
Each
buffer
is
kept
82586
transmit
buff,~r
transmi~
If
this
values
PCB
LAN
the
02H:
Confiqure
82586
configure
default
should
execution.
db
db
dw
LAN
82586.
coprocessor
command
values
expect
02
02H
?
is
shown
the
Instructs
into
not
adapter
;command
;length
;receive
,
·
,
·
,
·
,
·
,
·
,
·
,
·
the
issued,
in
parentheses
bit
bit
the
Adapter
given
response
code
of
data
mode
2,1,0:
000
=
001
=
010 = multicast
100
00
01
10
=
=
=
=
4,3
receive
the
Adapter
PCB
portion
receive
station
plus
promiscuous
loopback
none
82586
82586
to
configure
mode.
below.
32Hto
of
mode
only
broadcast
mode
(default)
internal
external
will
PCB
(000)
(00)
the
If
this
use
The
loopback
loopback
the
Host
confirm
32
Page 37

03B:
Ethernet
address
PROM
address
Address.
stored
in
in
PCB
Requests
its
address
33H.
Adapter
PROM.
to
The
return
Adapter
the
Ethernet
sends
the
04H:
OSH:
db
db
Download
download
bit
the
up
required
PCB
db
db
dw
dw
dw
Upload
DMA
direction
issuing
Adapter
given
for
must
command.
the
for
channel
number
this
03
00
Data
data
be
set
DMA
this
04
06
?
?
?
Data
this
sets
command.
transfer
number
command.
to
bit
of
To
3CSOS.
through
to
If
the
of
To
Host.
upload
must
command.
up
the
bytes.
:command
;length
the
the
bytes.
be
download
command
and
expects
;command
;length
;data
;Adapter
,
·
DMA
block
"
Requests
data
set
If
and
There
code
of
data
Requests
data
through
to
register.
is
accepted,
There
code
of
data
byte
destination
the
the
command
expects
is
portion
the
direction
the
Host
is
no
portion
length
"
the
Adapter
the
upload
the
no
adapter
Adapter
the
Adapter
offset
segment
data
direction
is
Host
of
PCB
The
before
Adapter
to
supply
of
PCB
(must
to
register.
accepted,
to
response
to
direction
issuing
sets
response
be
even)
use
before
read
DMA
the
its
The
the
the
PCB
06H:
db
db
dw
dw
dw
Download
except
instead
download
no
db
db
dw ?
dw ?
dw ?
that
adapter
05
06
?
?
?
Data
the
of
direction
response
06
06
To
Adapter
DMA.
icommand
;length
idata
;Adapter
,
·
"
3C50S.
uses
The
direction
before
PCB
for
icommand
ilength
;data
;Adapter
,
·
" "
code
of
data
block
source
It
Operates
programmed
issuing
this
code
of
data
block
destination
portion
byte
byte
length
offset
segment
as
bit
this
command.
portion
length
of
command
input/output
must
be
command.
offset
segment
PCB
(must
set
of
PCB
(must
be
code
There
be
to
even)
04H,
(PIO)
the
is
even)
33
Page 38

07H:
Upload
except
direction
issuing
for
this
Data
that
To
the
bit
this
command.
command.
Host.
must
Adapter
be
set
Operates
uses
to
There
PIO
the
is
as
instead
upload
no
adapter
command
of
direction
response
code
DMA.
05H,
The
before
PCB
OSH:
09H:
db
db
dw
07
06
?
dw ?
dw
Recei~;;i(~
Ethernet
previously
complete,
should
?
P~,cket.
packet.
by
the
set
up
response.
the
Data
db
db
dw
dw
dw
dw
Transmit
packet.
download
the
Register.
OS
08
?
?
?
?
Packet.
If
the
transmit
39H.
the
to
The
the
packet
is
icommand
i
length
idata
iAdapter
;
Pequests
The
Configure
Adapter
input
Adapter
icommand
;length
;offset
;segment
iHost
itimeout
i
Requests
PCB
data
complete,
of
block
II
packet
PCB
responds
the
packet
will
of
of
receive
no
timeouti
is
accepted,
through
the
code
d'ata
portion
byte
source
II
'the
type
offset
segment
Adapte,r,
of
02H. _ When
with
data
DMA
upload
code
PCB
data
of
Host
Host
receive
buffer
in
10ms
maximum
the
Adapter
the
Adapter
of
length
to
interest
the
PCB
and
the
3aH.
then
packet
portion
buffer
receive
length
increments
is
to
the
Host
Data
Register.
responds
PCB
(must
rece:l're
is
buffer
32767
transmit
should
be
even)
d~fined
receive
The
accept
through
in
bytes
(zero
ticks)
with
"
is
Host
the
is
a
DMA
When
PCB
OAR:
db
db
dw
dw
dw
Network
send
the
counters
through
with
command
after
db
db
09H
06
?
?
?
statistics.
cumulative
kept
the
sending
OAH
00
by
the
command
code
the
3AH.
response.
;command
ilength
;offset
isegment
ipacket
This
82586
command
error
Adapter.
register
The
icommand
ilength
34
code
of
PCB
of
Host
of
Host
length
statistics
in
Adapter
code
of
PCB
data
transmit
in
requests
The
the
data
portion
transmit
bytes
values
Adapter
clears
portion
buffer
buffer
(must
the
and
are
response
all
be
Adapter
the
packet
returned
statistics
even)
to
PCB
Page 39

OBB:
Load
of
Multicast
multicast
zero
multicast
create
of
addresses
contain
length
lists
command
List.
addresses
list
addresses
greater
in
the
completion
will
and
than
PCB
The
to
cause
is
Adapter
the
the
multiple
ten
entries.
ten.
status.
will
82586
Adapter
PCB's
The
add
multicast
can
The
response
the
given
list.
to
clear
be
issued
maximum
PCB
3BH
list
A
all
to
number
will
OCH:
ODH:
db
db
db
db
.
Clear
adapter
The
adapter
paragraphs
db
db
Download
memory
this
the
program.
containing
paragraph
suggested
Program
db
db
dw
OBH
6*n
6
dupe?)
6
dupe?)
Downloaded-
memory
response
of
OCH
o
Proqram.
not
request
used
When
a
alignment
that
sequence.
ODH
02
?
;command
;length
;Multicast
;Multicast
ProqramEi.
previously
program
;command
;length
for
packet
is
accepted,
done,
"program
the
Adapter
icommand
;length
;program
code
of
allocated
PCB
3CH
memory
available.
code
of
Downloaded
buffers
the
the
Adapter
id".
to
each
be
code
of
length
PCB
data
address
address
This
command
to
will
PCB
contain
data
programs
or
system
Adapter
responds
The
Adapter
downloaded
hard
PCB
reset
data
in
portion
1
n
(10
maximum)
releases
downloaded
the
portion
occupy
overhead.
will
DMA
with
always
program.
before
portion
bytes
progams.
number
adapter
download
PCB
provides
It
a
Download
all
of
If
3DH
is
OEB:
Execute
program
code
of
the
defined
is
downloaded
downloaded
2.
db
db
dw
db
The
Adapter,
OEB
02+n
?
n
Proqram.
assumed
program
dupe?)
by
the
at
program.
when
The
Adapter
program
offset
is
described
done,
;command
ilength
;program
;variable
35
will
ide
zero
relative
The
in
responds
code
of
PCB
id
length
pass
The
calling
section
with
data
parameter
control
first
to
the
sequence
3.3.5,
PCB
portion
to
executable
beginning
to
function
3EH.
list
the
the
Page 40

OFH:
Sel~-Test.
Adapter,
when
The
done,
Adapter
responds
will
execute
with
PCB
its
3FH.
self-test.
The
10H:
11H:
db
db
set
Ethernet
command
station
from
the
configure
Adapter
information
Adapter,
db
db
OFH
o
Address.
to
the
address.
Adapter's
the
lOH
6
6
dupe?)
Info.
that
when
llH
o
82586
If
82586.
Requests
describes
done,
;command
;length
The
coprocessor
this
command
Ethernet
;command
;length
;Ethernet
the
responds
;command
;length
code
of
PCB
Adapter
address
code
of
PCB
address
3C505
the
adapter
with
code
of
PCB
data
portion
will
specifying
is
not
PROM
data
portion
Adapter
configuration.
PCB
41H.
data
portion
issue
used,
to
an
an'
the
is
send
lA-setup
Ethernet
address
used
general
The
to
36
Page 41

3.2.2
3C505
TO
HOST
PCB
FORMATS
31H:
32H:
33H:
Configure
initialized
address
db
db
dw
Configure
ized
the
command,
db
db
dw
Ethernet
Ethernet
previously
stored
db
into
db
db
Adapter
storage
3lH
02
?
82586
82586
it
responds
32H
02
?
Address
address
been
memory.
33H
06
6
dupe?)
the
PCB
area,
Response.
coprocessor
Response.
in
read
Response.
command
it
responds
; command
;length
;
status
using
with
status
;command
;length
istatus
this
response
from
icommand
;length
iEthernet
of
PCB
0 =
After
code
of
PCB
0 =
The
the
code
of
PCB
address
After
queue
with
data
successful
the
Adapter
parameters
in
this
data
successful
Adapter
PCB.
Ethernet
data
the
and
status
portion
PCB.
portion
returns
The
address
portion
Adapter
the
in
has
in
the
address
multicast
this
initial-
PCB
the
6-byte
PROM
has
PCB.
02H
has
and
34H:
3SH:
Download
that
the
3C505.
will
use
register.
db
db
dw
dw
dw
Upload
that
the
the
command
transfer
db
db
dw
dw
dw
If
34H
06
?
?
?
Data
35H
06
?
?
?
Data
Host
the
DMA
Host
the
To
3CS05.
download
command
to
To
Host.
upload
is
accepted,
appropriate
In
a
is
accepted
transfer
icommand
ilength
idata
iHost
block
data
;Host
In
this
a
block
the
data
;command
ilength
idata
;Host
i
Host"
block
data
this
block
the
code
of
data
block
of
Adapter
through
code
of
data
block
PCB,
of
by
data
byte
II
PCB,
data
byte
the
Adapter
host
the
Host,
through
portion
length
source
the
Adapter
into
Host
will
the
data
portion
length
destination
memory
the
of
PCB
(must
offset
segment
memory.
set
up
register.
of
PCB
(must
requests
to
Adapter
the
be
data
even)
requests
a
D¥~
be
even)
offset
segment
the
If
to
37
Page 42

38H:
Packet
packet
a
packet,
it
with
exceed
command
Received
and
there
the
a
DMA
the
PCB
Adapter
upload.
buffer
8Hi
Response.
is
an
length
extra
outstanding
sends
The
number
specified
packet
When
this
data
the
Adapter
Host
response
of
bytes
in
the
is
discarded.
request
PCB
DMA'ed
receive
receives
to
receive
and
follows
will
packet
a
not
39B:
3~:
db
db
dw
dw
dw
dw
dw
dw
dd
38H
10H
?
?
?
?
?
?
?
Transmit
transmission
PCB.
db
db
39H
08H
dw ?
dw
?
dw ?
dw ?
Network
total
this
packet
response
Packet
is
statistics
PCB.
icommand
ilength
;offset
isegment
inumber
iactual
icompletion
i
i82586
idouble
Complete.
returned
icommand
ilength
ioffset
isegment
;completion
:82586
counters
receive
transmit
Response.
and
code
of
PCB
of
Host
of
of
bytes
packet
word
The
to
the
code
of
PCB
of
Host
of
the
data
Host
length
status
status
time
Host
data
Host
status
The
82586
portion
receive
receive
to
be
0 =
-1
tag
status
in
portion
transmit
transmit
0 =
status
Adapter
error
buffer
buffer
DMA'ed
successful
=
timeout
in
15us
of
this
buffer
buffer
successful
returns
counters
ticks
a
response
packet
the
in
3BH:
db
db
dd
dd
dw
dw
dw
dw
Load
loaded
db
db
dw
3~'
OCH
?
?
?
?
?
?
Multicast
into
the
3BH
02
?
icommand
;length
itotal
itotal
iCRC
;alignment
ino
;overrun
Complete.
82586,
;command
ilenqth
;status
of
receive
transmit
error
resources
the
Adapter
of
38
code
PCB
counter
error
error
After
code
PCB
0 =
data
packets
packets
counter
error
counter
the
multicast
responds
data
successful
portion
counter
with
portion
list
this
is
PCB.
Page 43

3CH:
Clear
loadable
the
program.
available
structures
Downloaded
program
The
Adapter
in
paragraphs
Program
memory,
and
variables
Response.
sends
in
this
the
describing
the
amount
response
To
Adapter
clear
each
of
PCB.
the
reinitializes
downloaded
program
down-
memory
3DB:
3EH:
db
db
dw
Download
assigned
the
program
db
db
Host
dw
dw
dw
dw
Execute
executed,
return
db
db
dw
db
3CH
02
?
Program
a
"program
and
to
execute
3DH
08
?
?
?
?
Program
it
status
3EH
02+n
?
n
dupe?)
Adapter
Response.
sends
and
parameters
icommand
ilength
;amount
;memory
Response.
id"
by
when
or
has
executed.
icommand
;length
;program
iprogram
iprogram
iremaining
this
iconunand
;lenqth
;program
;return
response
code
of
PCB
of
downloadable
in
paragraphs
A
the
Adapter.
specifying
code
of
PCB
id:
offset
segment
memory
After
are
code
of
PCB
id:
status
data
downloaded
data
> 0 ,
in
in
in
a
downloaded
PCB
program
data
-1
if
and
portion
program
The
which
portion
if
adapter
adapter
paragraphs
to
dependent.
portion
bad
parameters
id
allocated
the
id in
program
is
used
downloaded
memory
memory
program
Host.
request
is
by
has
The
3FH:
Self-Test
ROM
loopback
returned
db
db
checksum,
dw
dw
The
#
o
1
2
3
self-test
STATUS
no
ROM
RAM
82586
Response.
test
in
this
3FH
2+2n
?
n
dupe?)
errors
checksum
test
test
The
non-destructive
on
the
PCB.
;command
;length
;self-test
;
status
codes
adapter
82586.
code
of
and
optional
and
FAILURE
none
computed
failed
status
bit
14
13 = external
12
39
self-test
RAM
status
PCB
data
status
failure
DATA
checksum
memory
word:
=
internal
=
configure
consists
test,
portion
failure
data
offset:seqment
and
of
the
data
for
value
loopback
loopback
error
internal
test
each
failure
failure
of
are:
a
is
Page 44

40H:
set
Address
address
Response.
in
the
82586,
After
this
the
Adapter
response
is
sets
sent
the
to
Ethernet
the
Host.
41H:
db
db
dw
Adapter
containing
total
offset
db
db
dw
dw
dw
dw
dw
40H
2
?
Info
amount
pointer
41H
10
?
?
?
?
?
Response.
the
of
to
icommand
ilength
istatus
ROM
revision
memory
free
icommand
ilenqth
iROM
ichecksum
iamount
ifree
i
of
The
in
kilobytes,
memory.
of
revision
of
memory
and
seqment
code
PCB
data
O=successful
Adapter
code,
formats
ROM
code
PCB
data
level
value
in
memory
offset
portion
and
portiori
(Ox0300
rom
in
kbyte
a
checksum
the
=
response
value,
segment/
rev
3.0)
40
Page 45

3.3
SYSTEM
ROM
UTILITIES
Programs
resources
code.
vectors
*
*
*
*
*
*
*
*
*
These
programs.
first
to
invoked.
next
The
program's
programs
save
itself.
program
3C505
downloaded
directly
To
simplify
have
Host
Network
Configuration/status
System
Download
PCB
Receive
Timed
PCB
vectors
been
I/O
Timer
Command
execution
Enqueuing
To
the
A
As
appropriate,
in
ROM
SS,
also
maintain
I/O
Packet
may
current
the
DS, ES
into
or
and
allocated
Program
Processing
be
chain
program
chain.
utilities
the
through
standardize
to
Support
Processing
replaced
to
a
vector,
vector
then
the
always
and
these
SP.
3C505
a
before
registers.
Adapter
set
usage,
support
or
chained
gains
program
save
It
of
utilities
the
the
downloaded
replacing
control
should
and
is
suggested
can
access
a
set
of
following:
to
by
it
when
pass
restore
the
available
soft
user
program
with
the
control
that
downloaded
a
vector
the
downloaded
adapter
in
ROM
interrupt
should
pointer
to
calling
is
the
3.3.1
This
and
DMA
01H:
request
acknowledgement
Host
proceed
ax
es:bx
cx
dx
Return:
HOST
group
command
and
PIO
Download
PCB,
accepts
with
~ 1
I/O
of
methods
function
Host
buffer
initial
(maximum
carry
carry
SUPPORT: INT
function
blocks
sends
the
the
between
of
Request.
(HSF2
request
data
code
source
length
timeout
is
clear
set
it
transfer.
if
allows
IO
are
to
and
HSF1
buffer
bytes
in
32767
if
successful
error,
aOH
upload
the
Adapter
supported.
The
Adapter
the
Host,
state
(state
address
(must
10ms
ticks)
ax
and
and
and
01
01)1
be
even;
increments
=
error
download
PC
formats
waits
or
10).
the
caller
maximum
code
Host.
a
for
of
data
Both
download
Host
If
the
should
64kb)
41
Page 46

02H:
request
acknowledged
Adapter
DMA
PCB
should
Upload
and
by
perform
Request.
sends
the
Host
it
the
to
the
(HSF2
data
The
Adapter
Host.
and
transfer.
HSFl
formats
If
the
state
a
request
01),
upload
is
the
ax
= 2
es:bx
cx
dx
Return:
03B:
reads
the
ax
es:bx
cx
dx
Return:
04H:
sends
acknowledgement
a PCB
destination
= 3
the
function
Host
buffer
initial
(maximum
carry
Get
through
function
buffer
buffer
initial
(maximum
carry
carry
Send
given
destination
clear
'Try
Primary
set
buffer.
clear
set
primary
either
code
length
timeout
is
if
Command
the
code
address
length
timeout
is
if
Command
PCB
buffer
buffer
bytes
in
32767
if
successful
error,
Command
bytes
in
32767
if
successful
error,
accept
(must
10ms
ticks)
ax
Block
Register
10ms
ticks)
ax
Block
to
the
or
address
be
increments
=
errCJt'
From
increments
=
error
To
Host.
Host
reject.
even:
code
Host.
and
code
and
maximum
This
stores
This
waits
64kb)
function
it
function
for
into
host
ax
= 4
es:bx
cx
dx
Return:
OSB:
already
transfers
When
the
to
assumes
of
transfer
function
DMA
amount
signal
the
06H:
configured
host
is
some
DMA
but
eBH
function
buffer
total
initial
(maximum
carry
carry
Host
used,
of
"available".
sort
channel.
to
address
buffer
clear
set
data
the
time
does
poll
code
timeout
is
32767
if
if
Data
to
into
timeout
the
Adapter
of
error
not
wait
for
length
in
ticks)
successful
error,
Input.
perform
the
Also,
passed
If
a
has
for
DMA
completion.
42
bytes
10ms
ax
value
timeout
increments
=
Assuming
a
download,
waits
occurred
the
completion.
and
accepted
error
buffer
passed
for
occurs,
and
function
code
that
using
in
the
the
this
DMA
register
DMA
the
takes
initiates
Use
Host
function
or
PIO.
DX
semaphore
Adapter
over
int
use
DMA
SOH
is
is
Page 47

ax
- 5
ax
-=
es:bx
ex
dx
6
DMA
PIO
download
download
buffer
buffer
timeout
(maximum
address
length
in
lOms
is
or
in
32767
bytes
to
increments
ticks)
transfer
(must
be
even)
Return:
07H:
OSH:
already
transfers
buffer
function
ax
-=
ax
-=
es:bx
ex
dx
Return:
09H:
int
OAB:
SOH
requires
following
programs:
carry
carry
Host
configured
adapter
to
the
OSH
DMA
7
S
PIO
buffer
buffer
initial
(maximum
carry
carry
Accept
function
that
function
Host.
also
upload
upload
clear
set
Data
data
apply
address
length
timeout
clear
set
3,
the
if
to
The
or
is
if
or
Reject
the
PCB
codes
if
successful
error,
output.
perform
(using
comments
here.
in
in
32767
if
successful
error,
protocol
be
provide
ax
-=
error
Assuming
an
upload,
DMA
or
PIO)
descriping
bytes
lOms
to
transfer
increments
ticks)
ax -error
PCB. When a
described
accepted
this
ability
code
that
code
or
the
this
from
DMA
(must
PCB
in
is
section
rejected.
to
Host
function
the
in
adapter
int
be
read
downloaded
is
SOH
even)
using
3.1.1
The
ax
= 09H
ax
=
Function
flush
OBH:
initiated,
has
completed.
ax
=
dx
Return:
Accept
OAR
Reject
9
operation
Check
this
OBH
Check
timeout
carry
carry
to
DMA
Host
Host
accept
to
prepare
Complete.
function
DMA
in
clear
set
PCB
PCB
a
PCB
can
Complete
lOms
if
DMA
if
timeout
43
also
for
ticks
includes
a
DMA
When a
be
~alled
done
or
PIO
DMA
to
(maximum
a
Data
data
transfer
check
is
32767
Register
transfer.
has
if
the
ticks)
been
DMA
Page 48

3.3.2
NETWORK
I/O
SUPPORT:
INT
81B
lH:
Transmit
links
buffer
transmit
system
the
82856.
transmit
ax
~
es:bx
cx
dx
Return:
2H:
82586
Frame
to
start
detected
tags
packet"
and
gives
the
given
descriptor,
command
control
complete
1
function
buffer
buffer
timeout
carry
carry
Receive
configure
Area
is
frame
by
the
it
and
list.
it
Packet.
packet
block,
block,
The
transmit
before
address
length
in
clear
set
Packet.
commands
initialized
reception.
82586
then
updates
This
to
the
To
links
and
code
10ms
if
if
error,
interrupt
function
caller.
transmit
buffer
the
descriptor
links
then
packet
returning
bytes
increments
successful
ax
During
(section
and
the
A
global
checks
a
packet,
to
the
the
command
signals
function
to
the
=
8258~
execution
3.2),
Receive
receive
service
pointers
that
first
to
channel
calling
transmit
of
the
unit
packet
routine,
to
list
this
82586
the
block
will
the
82586
function
transmit
one
and
attention
poll
routine.
status
Adapter
is
commanded
is
which
an
"received
for
an
only
to
the
to
for
and
Receive
first
time
entry
ax
= 2
dx
Return:
03H:
it
must
relinked
relinked
ax
~
es:bx
Return:
Return
be·
to
to
3
function
timeout
(maximum
carry
clear
es:bx
cx:dx
di
si
carry
set
Buffer.
returned
a
Receive
the
free
function
Buffer
carry
carry
clear
set
code
in
10ms
is
32767
if
=
packet
=
double
=
packet
=
82586
if
to
RBD
code
address
if
increments
successful
receive
error,
After
the
Buffer
list.
if
successful
error,
ticks)
buffer
word
length
ax = error
a
packet
system
Descriptor
ax = error
address
time
in
status
so
tag
bytes
buffer
that
(high:low
code
is
the
buffer
which
is
code
order)
processed,
can
in
turn
be·
44
Page 49

3.3.3
CONFIGURATION/STATUS:
INT
82H
01H:
memory
multicast
and
command
PCB
Receive
decrease
buffers
02H;
to
download
of
ax
~
es:bx
Return:
set
confiqure
for
address
queue
64
bytes.
and
management
is
fixed
1
function
pointer
num
num-receive
num-multicast-entries
num-frame
num-receive
num
carry
carry
Confiqure
the
82586
A~apter
the
PCB
command
list,
program
entry
transmit
PCB
download~rograms
is
large
Each
buffers
overhead.
at
one.
code
to
configuration
entries
Q
descriptors
buffers
clear
set
82586
coprocessor
if
if
.
Memory.
queue,
frame
structures.
enough
multicast
are
entries
successful
error,
Receive
into
descriptors,
ax
Mo~e.
The
receive
Each
to
address
fixed
The
control
ow
?
OW
?
DW
?
OW
?
OW
?
OW
?
=
error
the
Adapter
receive
PCB
buffer
occupies
at
1.6kb
number
block
(10)
\20)
(0)
(20)
(20)
(10)
code
Instructs
given
allocates
command
buffers,
or
a maximum
6
in
order
of
transmit
the
receive
queue,
receive
size
bytes.
to
Adapter
mode.
ax
bx
Return:
03H:
PROM
ax
es:bx
Return:
= 2
and
= 3
function
receive
bit
bit
carry
carry
Return
store
function
buffer
carry
carry
code
mode
2,1,0:
000
001 = plus
010 = multicast
100
4,3
00 = none
01 = internal
10
clear
set
Ethernet
the
address
clear
set
receive
=
station
=
promiscuous
loopback
=
external
if
if
error,
Address.
6-byte
code
if
if
error,
mode
only
broadcast
mode
(default)
loopback
loopback
successful
ax
address
successful,
ax
(000)
(00)
=
error
Read
into
=
error
the
the
buffer
code
Ethernet
caller's
es:bx
code
address
buffer.
updated
45
Page 50

04H:
address
coprocessor.
ax
es:bx
set
= 4
Ethernet
and
function
buffer
issue
address
Address.
an
code
lA-setup
Use
command
the
supplied
to
the
Ethernet
82586
Return:
OSH:
control
~eriodically
"'peration;
bx
Return:
ax
set
= 5
06H:
information.
ax
= 6
es:bx
Return:
carry
carry
LEDs.
the
this
function
control
bit
bit
ax
carry
carry
Get
function
buffer
es:bx
cx
carry
carry
clear
set
This
state
flashed
is
1,0
2 -
=
current
clear
set
Adapter
address
=
=
clear
set
if
successful
if
error,
function
of
the
by
called
code
word
-
LED2,LEDl
enable/disable
if
code
reV1S1on
rom
memory
free
fre·e
data
if
the
control
if
successful
error
Info.
checksum
size
memory
memory
length
if
successful
error
ax
allows
Adapter's
the
Adapter
"heartbeat"
value;
register
Retrieve
id
in
offset
segment
in
=
error
downloaded
two
l=ON
heartbeat;
kbytes
bytes
LEOs.
to
..
value
indicate
l=enable
in
general
programs
LED
high
#2
normal
byte
adapter
to
is
46
Page 51

3.3.4
TIMER SUPPORT:
INT
83B
The
time
3C505
tick
Adapter
microprocessor.
timeout
interrupt
or
every
interrupt
calculations.
the
programs
to
o12~
lOms
02H:
double
Idle
execute
tick
ax
-=
ex
dx
ax
-=
that
s~t
1
Read
word
2
vector
periodically.
lOms
counter
function
high
low
function
counter
The
time
every
Every
are
Double
portion
portion
lOms
lOms
maintains
using
lSus
tag
1.6
seconds.
10ms
five
(section
"chained"
Word
to
given
code
Double
tick
counter.
code
both
two
16-bit
timer
applications
The
and
can
10ms
3.3.8).
through
Time.
value.
of
10ms
of
count
Word
Time.
a lOms
is
meant
and
10ms
be
ticks
the
set
count
and
timers
timer
used
the
This
Idle
the
Retrieve
lSus
in
for
high
generates
generates
for
Adapter
allows
vector
global
double
the
resolution
a
timeout
also
downloaded
a
chance
. .
double
the
current
word
80186
timer
an
calls
word
Return:
03H:
word
ax
ex
dx
04H:
aouble
ax
Return:
lSus
= 3
word
= 4
Set
tick
Read
cx
dx
1Sus
counter
function
high
low
portion
portion
lSus
lSus
function
cx
dx
Double
code
Double
tick
code
high
low
portion
portion
Word
to
given
of
lSus
of
count
Word
counter.
high
low
portion
portion
Time.
value.
count
Time.
of
of
of
of
10ms
count
Set
Retrieve
lSus
count
count
the
count
global
the
double
current
47
Page 52

3.3.5
The
and
downloaded
allocated
kiloword
programs
DOWNLOAD
Adapter
PCB
uses
command
programs.
memory
stack
should
segment
PROGRAM
low
memory
queue.
for
global
not
reconfigure
SUPPORT:
for
Remaining
Programs
data.
setup
by
XNT
data,
memory
must
Programs
the
adapter
3C505
84H
stack,
memory.
packet
is
available
have
can
ROM.
buffers,
statically
use
the
Downloaded
for
one
OlH:
adapter
Soft
ax
Return:
02H:
defined
subroutine
setup:
ax
es:bx
ex
dx
Return:
Clear
interrupt
= 1
= 2
Downloaded
memory
function
carry
carry
Execute
by
the
call
function
address
length
program
carry
es:bx
cx
carry
previously
vectors
code
clear
set
if
Program.
program
to
the
code
of
parameter
of
parameter
id
clear
-
address
-
length
set
if
Programs.
allocated
are
restored
if
successful,
error,
Control
ide
program
if
successful
of
error,
This
ax
=
Executing
with
list
list
of
return
return
ax
=
command
to
downloaded
to
the
ax
= #
error
is
passed
a
the
in
error
following
bytes
buffer
buffer
reset
free
code
to
program
code
releases
programs.
state.
paragraphs
the
program
is
registers
a
all
far
48
Page 53

3.3.6
PCB
COMMAND
PROCESSOR: INT aSH
The
reads
adapter
host
commands
3CSOS
ROM
execution.
whose
address
Command
entry.
It
uses
command
command
cont'aining
Processor
this
specification,
foreground
A
downloaded
program
replaces
program
examine
the
that
that
PCB,
it
register
mechanism
ones.
Command
PCB's
(see
idle
The
Processor
the
PCB
processing
processing
parameters
ignores
idle.
program
saves
it
with
has
the
an
PCB.
the
replaced.
for
Register
and
section
loop
PCB
is
stored
is
command
subroutine
subroutine
PCB's
can
the
current
a
pointer
opportunity
If
program
In
values
creating
ISR
places
3.3.7)
into
monitors
is
passed
in
this
given
an
number
is
for
the
with
and
chain
command
immediately
to
interrupt
to
itself.
(not
the
must
this
are
program
pass
case
not
new commands
(interrupt
all
PCB's
a command
and
dequeues
to
a
PCB
interrupt
ES:BX
to
key
pointer
into
addresses.
also
passed
slibroutine).
numbers
this
vector;
vector
necessarily
does
it
to
the
the
program
modified.
or
service
except
Command
a
not
returns
Then
the
not
want
command
must
This
replacing
queue.
each
vector.
to
jump
The
the
PCB
The
defined
that
contents
the
downloaded
first)
to
be
becomes
routine)
rece~ve
The
PCB
for
Processor
The
the
PCB
table
selected
(often
Command
to
is,
the
the
and
execute
processor
careful
existing
of
in
to
a
49
Page 54

3.3.
PACKET
PROCESSOR
VECTOR:
INT 86H
This
Packet
and
packets.
performed
program
software
Processor.
queuing
can
The
outside
replace
specialized
below.
As
mentioned
packet
Regi',~;ter
Processor
01H:
ax
es:bx
A
separately
When
with
the
packet
The
command
Enqueue
-=
1
packets
a
double
frame
from
idle
ISR
with:
command
pointer
and
loop
interrupt
of
host
management
scheme
in
section
are
gives
Receive
managed
are
received,
word
exits.
the
the
gives
The
the
this
than
placed
the
code
to
PCB
lSus
Network
the
vector
Packet
receive
of
Packet
vector
the
ROM-based
3.3.6,
into
receive
Command
Receive
the
time
The
foreground
I/O
packet
defines
Processor
command
the,82S86
Processor.
in
order
all
PCB's
a
PCB
command
PCB
Command
82S86
and
updates
vector
to
the
the
centralizes
PCB's
LAN
to
functions
queue.
Queue
ISR
time
idle
INT
Packet
address
and
coprocesser
A
implement
EXCEPT
to
is
tags
global
loop
SlH
Processor
of
handling
received
downloaded
a
described
the
The
the
receive
Command
Packet
built.
the
pointers
obtains
function
the
is
more
frame
to
a
2.
with:
02H:
ax
= 2
es:bx
cx:dx
di
The
a
the
is
firmware
pending
Host,
returned
enqueued
be
replaced
and
process
since
idle
with:
Enqueue
receive
packet
and
receive
loop
Receive
command
pointer
double
packet
builds
data
to
processing
by
downloaded
all
incoming
commands
needs
Packet
code
to
receive
word
time
length
a
queue
command,
is
the
system.
have
to
periodically
buffer
tag
of
a
receive
DMA
uploaded,
is
done.
programs
packet.
timeout
(high:
receive
Otherwise,
This
enabling
call
low)
packets.
response
and
vector/function
values,
the
PCB
the
packet
the
them
the
Packet
If
there
is
sent
buffer
packet
to
receive
foreground
Processor
is
to
is
can
so
Page 55

03H:
ax
- 3
so
that
queue
has
timed
formatted
No
Operation
it
to
check
out,
and
NOP
has
an
if
a
sent
opportunity
any
request
receive
to
the
response
Host.
to
has
scan
timed
PCB
the
with
out.
failure
receive
If
command
a
request
status
is
3.3.8
The
idle
chance
To
save
to
IDLE VECTOR:
Idle
loop.
to
chain
the.current
itself.
control
Remember
entry
and
program
The
that
In
Idle
vector
that
default
determines
a
situation
vector
routine,
the
through
3.3.9
PCB
vector
Programs
execute.
to
(using
thau
restored
in
the
download
the
main
ENQUEUE
the
It
SS,
ROM
but
is
vector,
vector
is
a
far
chain
Idle
whether
where
never
this
3C505
INT
called
chained
also
jump)
SP,
on
DS
exit.
has
vector
a
download
passes
flag
program
ROM
VECTOR:
87K
every
through
a
downloaded
before
important
to
the
and
an
oppurtunity
routine
the
Idle
is
never
will
idle
XNT
sOms
replacing
next
ES
should
In
this
vector
program
control
cleared.
be
loop.
88H
from
this
program
that
program
way,
to
clears
to
called
the
vector
it
with
the
always
each
execute.
a
should
has
chained
the
en
main
will
should
a
program
in
the
be
downloaded
global
be
default
The
every
3CsOs
have
first
pointer
chain.
saved
called.
to
effect
ROM
a
pass
on
flag
the
Idle
is
pass
The
system
loop
The
PCB
PCB
and
calling
es:bx
Return:
The
this
Command
vector
program
it,
it
ex,ecutien.
this
vector
Enqueue
queue.
given
sequence
pointer
carry
carry
Register
has
read
should
Alternatively,
to
Vector
to
ciear
set
after
use
receive
PCB's
the
to
a
PCB
is
called
are
PCB
for
this
PCB
if
successful
if
error,
interrupt
it
receives
from
this
PCB's
51
to
dequeued
Command
function
ax -error
service
a PCB.
the
Host
vector
a
downloaded
from
add
by
Processor
is:
and
to
enqueue
the
Command
a
PCB
the
foreground
for
code
routine
If
does
program
entry
execution.
(ISR)
a
downloaded
not
recognize
it
for
can
Register
into
later
chain
ISR.
the
idle
uses
to
Page 56

APPENDIX A
,
·
reloc
umcs
lmcs-cont
mmcs-cont
mpcs-cont
pacs-cont
i
,
·
i
pic
,
·
level
level-int1
level-int2
level-int3
level-dmaO
level-dma1
level-timer
,
·
:
,
·
pic
pic-dmao
pic-dmal-cont
pic-into-cont
pic-int1-cont
pic-int2-cont
pic:int3:cont
,
·
i
i
,
·
t2cnt
t2maxra
t2cntrl-cont
,
·
i
,
·
tOcnt
tOmaxra
tOmaxrb-cont
tOcntrl-cont
,
·
;
reg
cont-
priority
into
initialization
timer
cont
initialization
and
Hi
RES
cont
cont
initialization
cont
cont
80186
cont
cont
PERIPHERAL
equ
equ
equ
equ
equ
equ
assignment:
equ
equ
equ
equ
equ
equ
equ
of
equ
equ
equ
equ
equ
equ
equ
of
Timer
equ
equ
equ
of
equ
equ
equ
equ
pic
timer
timer
CONTROL
OOffh'
Ofc3ch
3ffch
81fch
OaObch
003ch
4
2
5
6
o
3
1
control
level
level-dmaO
level-dma1
level-into
level-intl
OOOdh-
OOOeh
2
registers;
iinitialization
ichip
iinto
iint1
inot
inot
idmaO
idma1
itimer
registers
timer
o
30
OcOOlh
0
registersi
o
20000jt2maxra_cont
o
Oe029h
BLOCK
selects
priority,
priority,
used
used
priority,
priority,
priority
15
10
PROGRAMMING
constant
Command
interrupt
DRAM
Data
microsecond
millisecond
of
Register
refresh
Register
for
DRAM
interrupt
form
Full
82586
refresh
52
Page 57

;
:
initialization
of
timer
1
registers;
Hi
res
system
Timer
tlcnt
tlmaxra
tOmaxrb-cont
tOcntrl
;
initialization
I
·
I
·
dmaOsrclo
dmaOsrchi-cont
dmaOdstlo-cont
dmaOdsthi-cont
dmaOcnt
dmaOcntrl
;
;
DMA
I
·
dmal
dmal=to_dr
cent
-
1.
from
cont
cont
cont
cont
cont
control
dr
cntrl
cntrl
equ
equ
equ
equ
of
dmaO
equ
equ
equ
equ
equ
equ
'register
equ
equ
0
Offffh
0
Oe029h
registers;
0000
OOOOh
0800h
0OO8h
Offffh
0157fh
values
Oa347h
1787h
DRAM
iDMA
iDMA
refresh
input
output
from
to
host
host
53
Page 58

APPENDIX B
This
82586
User's
FIFO
BYTE
EXT
INT
PREAM
AT
ADDR
SAV
SRDY
INTERFRAME
BOF
ACR
LIN
RETRY
SLOT TIME
CDT
CDTF
CRS
CRSF
PAD
BT
CRC16
NCRC
TONO
MANCH/NRZ
BC
PRM
MIN FRM
LIM
CNT
LP
LP
LOC
LEN
BF
MET
PRIO
SRC
SRC
STF
INS
CRS
DIS
is
LAN
Manual"
BCK
BCK
LEN
NOM
LEN
an
example
Coprocessor.
for
the
=
=
=
= 0
=
= 1
= 6
= 0
=
SPACING = 60H
=
=
=
=
=
=
= 0
=
=
=
=
=
=
=
=
=
=
=
of
the
parameters
Please
description
6
OCH
0
2
1
0
0
0
OFH
200H
0
0
0
0
0
0
0
0
0
(reconfigurable
1
0
40H
refer
of
used
to
the
to
the
by
"Intel
abbreviations
host
configure
LAN
command)
the
Intel
Components
used.
54
Page 59

APPENDIX C
3CSOS DIAGNOSTIC
The
3C505
EtherLink
3C505.EXE,
problems
This
tools
on
appendix
how
to
required
3C505.EXE
AT)
from
displaying
pass
count.
hardware
o
1
2
3
When
are
run
require
from
from
the
each
the
performed
individually
producing
polluting
Adapter
test
EtherLink
Plus
which
on
the
describes
use
the
takes
start
the
error
Adapter
Preliminary
DMA
Packet
standard
the
use
is
follows:
card
can
3C505.
to
run
diagnostic.
about
to
finish.
name
The
is
of
test
detected.
self
test
test
3C505.EXE
in
and
of
sequence.
must
a
erroneous
the
network.
connected
Diagnostic
includes
be
the
used
the
3C505.EXE
program,
twelve
As
the
group
stops
test
test
program
be
loopback
test
to
the
Diskette
a
to
minutes
it
runs,
of
and
displays
4
5
6
7
Test
specified
plug
results,
Tests
network.
supplied
diagnostic
help
you
program,
program
identify
the
and a step-by-step
or
it
tests
less
reports
(five
being
an
error
performed
Recognizer
is
Message
Passive
NS
echo
run,
5
through
Test
exchange
receive
server
0
separately.
to
prevent
5
through
and
A
to
7
must
brief
network
keep
with
equipment
procedure
minutes
its
progress
message
test
test
through
Test
Tests
test
be
run
description
your
called
hardware
and
in
an
by
and
if
test
Test
7
3
are
and
activity
packets
while
of
a
a
4
4
TEST 0
Test
0
executed.
and
internal
back
Host
to
and
displayed.
TEST 1
Test
1
tests
Programmed
resets
These
the
Adapter
I/O
and
Host
the
data
the
Adapter
include
external
and
can
interface
transfers.
causing
80186
loopback
displayed.
not
be
between
the
and
82586
tests.
If
communication
established,
the
55
self-test
initialization,
The
an
Host
and
routines
results
error
the
are
between
message
Adapter
to
be
memory
passed
the
is
using
Page 60

TEST 2
Test
DMA
TEST 3
Test
2
data
3
test.
82586
LAN
compares
TEST ..
Test
The
4
receiver
multicast,
differing
ability
tested.
TEST 5
Test
5
network.
network.
(echo)
tests
the
transfers.
performs
The
transmit
controller
the
tests
received
the
broadcast,
destination
of
the
performs
The
A
back
to
interface
a
transmit
following
82586
is
configured
Adapter
packet
PC
transmits
responding
the
PC
between
test
test
checks
packets
LAN
controller
and
promiscuous.
address
to
reject
exchange
server
under
and,
transmits.
with
to
and
an
the
test.
the
for
those
various
size
or
with
"echo
or
PC
Host
if
successful,
the
transmitted.
address
In
are
accept
another
request
will
and
correct
Loopback
matching
modes;
each
transmitted
packets
PC
transmit
the
Adapter
status
station
mode,
or
packet"
a
loopback
from
test
functions.
packets
properly
server
into
the
using
further
only,
and
on
packet
the
of
the
is
the
the
TEST ,
Test
This
6
tests
diagnostic
This
the
TEST 7
test
transmit
Designates
packets
until
a
detects
is
this
with
key
legal
the
tool
for
"passive"
capability
PC
PCs
is
depressed.
packets
adapter's
locating
as
an
running
to
of
"echo
Test
on
receive
problems
the
network
another
server",
5.
56
the
PC
network
function
elsewhere
and
on
which
The
PC
can
the
remains
and
and
on
be
used
network.
is
used
counts
provides
the
to
in
network.
to
exchange
this
them.
a
check
mode
Page 61

FORMAT
3C505
PROGRAM
Ix
Test
Interrupt
Dx
Bxxx
Test
Sets
hexadecimal
address
The
Enter
S 6 7 -
E
Used
remote
should
servers
3C50S
this
EtherSeries
network
[-Ix][-Dx][-Bxxx](-#][-E][-T]
PARAMETERS
uses
interrupt
3.
uses
the
default
Message
Passive
NS
with
option
DMA
jumpers
5,
6
echo
nodes
be
or
running
will
channel
base
address
digits).
value
or
7
to
exchange
receive
server
test
during
used
if
there
3C505
is
not
echo
reply
x,
This
on
the
is
300
select
test
test
S
only.
the
on a Xerox
is
-7
specified,
requests,
using
x,
default
default
of
the
option
EtherLink
hex.
one
of
Use
message
NS
another
to
reply
and any
EtherSeries
is
DMA
EtherLink
should
card
the
NS
following
echo
exchange
8000
PC
to
the
network
with
the
diagnostic
EtherSeries
protocol.
(factory
1.
card
be
have
protocol
test.
a
echo
to
used
been
that
3Com
setting)
xxx
if
the
changed.
test.
to
This
have
EtherLink
request.
will
generate
server
is
(three
I/O
access
option
echo
If
on
the
T
Specifies
requires
Requirements
For
1.
2.
testing,
A
loopback
Another
server
The
packets
second
over
for
you
IBM
that
PC
the
that
special
Testing
need:
plug;
PC
is
will
network
the
Host
treatment.
on
the
connected
be
used
with
computer
network
to
as
an
the
57
the
network.
echo
computer
is
a
OR
an
server,
TI
Professional
EtherSeries
which
under
test.
will
which
network
exchange
Page 62

RUNNING THE
3CSOS.EXE
PROGRAM
To
start
network,
diskette
A> 3CSOS
Remember
were
changed.
indicating
it
detects
o
To
1.
thru
:run
4
Tes-~
An
OR
2.
the
Another
server
A> 3CSOS
OR
the
3C505.EXE
attach
in
drive
to
give
which
an
error,
mentioned
5,
connect
EtherSeries
PC,
running
-7
a
loopback
A:
and
the
test
As
option
the
is
the
above
network
with
an
3C505.EXE
program,
type:
program
being
test
will
the
PC
EtherLink
plug
-I,
performed
stops
start
to
server
on
disconnect
to
the
-D,
runs,
one
the
3C505
this
ENC
connector,
-B
if
it
and
and
displays
after
.l:Ai:'.d;;'work
as
a
diskette
your
the
factory
prints
the
progress.
another.
with
echo
by
PC
a
message.
either:
server.
typing:
from
insert
settings
a
message
the
the
Once
Test
start
3.
Another
echo
specific
If
the
If
the
server.
EtherLink
A>
3C501
echo
A>
3C50S
echo
A>
3C505
PC
7
server
-5
server
-5
with
Use
-E
the
such
is
is
another
diagnostic
as
case
case
type
the
3C501
2
mentioned
3
mentioned
of
3Com
program
and
EtherLink
type:
above,
above,
supplied
then
then
acting
type:
type:
with
as
that
an
58
Page 63

3C501
/
3C505
DIAGNOSE
PROGRAM
DIFFERENCES
The
3C505.EXE
3C501.EXE
familiar
DMA,
Echo
The
the
in
o
o
Packet,
server)
actual
3C505
the
3C505
there
command
channel,
o
tests
Packet,
(i.e.,
o
tests
exchange,
After
system
use
running
or
download
expected.
diagnostic
(or
DIAGNOSE.COM
with
the
Recognizer,
have
interpretation
are,
however,
diagnostic,
is
an
additional
line
_0
etc.
through
for
Recognizer)
you
0
cannot
through
Passive
3C505.EXE,
reinitializethe
software
3C501
been
carried
switches
the
4-'
use
4
are
receive,
or
is
modeled
in
earlier
diagnostic,
Message
forward
and
implementation
very
test
different.
0
(to
test)
are
(Adapter
are
always
tt3C505
skipped
NS
you
might
3C505.
if
a
particular
exchange,
(Adapter
set
always
Self
tt
-3
to
when
Echo
find
This
after
versions).
all
test
into
It
self
adapter
preceded
test,
executed
run
test
server)
it
is
3C505
the
For
types
Passive
the
3C505
of
these
is
worth
test)
base
Preliminary
one
Packet
5,
6,
is
selected.
necessary
especially
configuration
3C501
version,
those
(Preliminary,
receive,
diagnostic.
tests
noting
;
address,
by
a
dash
after
test
or
only);
7
reboot
true
of
you
NS
for
that
DMA
It-"i
"
DMA,
another
(Message
your
if
you
is
59
Page 64

APPENDIX D
3D
DEBUGGER
3D
the
is
3C505
PC-DOS;
Register
can
set,
3D
start,
and
requires
Mouse
the
Compaq
COM2
beware
version
3C50S
Slave
interrupt
single
3D
divides
these
tile
registers,
control
typein
status
a
program
adapter.
the
with
clear
Systems
port.
of
conflicts.
of
can
to
install
vectors
step
are
tile
area
of
from
and
3D
the
stop,
breakpoints;
an
IBM
PC
portable
Recall
3D
must
also
and
the
area,
is
I/O
the
3CSOS.
the
error
for
loading
3D
Host
"slave",
and
PC
mouse.
and
that
be
be
set
itself
will
to
use
display
for
display
registers,
user.
messages
runs
program
a
single-step
download,
with
2S6K
3D
Zenith
COM2
The
base
set
to
to
the
at
boot
point
breakpoints
into
menu
The
bar,
typein
The
from
and
on
an
debugging
IBM
communicates
small
program
the
of
memory,
also
runs
Z-lS0.
always
I/O
310
hex.
"1"
position;
time.
to
the
will
four
regions!
typein,
and
alteration
and
memory.
area
message
3D.
programs
PC
(or
compatible),
through
in
the
3C505's
modify,
one
on
IBM
Attach
uses
address~of
interrupt
The
80186
and
serial
compatibles
the
the
TEST
this
All
3D
"exception"
Slave.
be
enabled.
from
and
message
of
The
displays
area
is
for
3C505
examine
jumper
causes
The
top
3C50S
menu
the
the
that
the
run
Command
ROM.
processor;
memory.
port,
such
mouse
to
level
3CS05
in
on
the
and
ability
to
area.
internal
bar
accumulated
display
under
and
3
this
unused
bottom
is
on
3D
a
as
the
so
the
3D
to
The
for
of
*AX
*BX
ex
DX
*40:8
40:0A
40:0C
40:0E
40:10
40:12
40:14
40:16
40:18
40:1A
40:1C
40:1!
40:20
40:22
40:24
Boot!
••
:.p
popf
Load!
» Non
0000
6892 *SP
0000
0000
0040
0000
0300
21:2E
0000
0000
0000
0000
0014
0000
0000
21:21:
21:0E
2FOA
2FSA
Go!
Continue!
masltable
BP
SI
*OI
Stop!
interrupt
Step!
at
Figure 1. The display
300C
3000
04C4
6806
Break!
3FO:6A76
60
es
SS
OS
*£5
*3C6D:3000
*3C6D:3002
*3C6D:3004
*3CSD:3006
*3C6D:3008 6Aes
*3C6D:300A
*3C6D:30OC
*3C60:300E
*3C60:3010
*3C6D:3012
*3C6D:3014 04C4
*3C6D:3016 303A
*3C6D:3018
*3C60:30lA
*3C6D:301C
*3CSO:301E
Onbreak!
just
after a stop.
03FO
3CSD
03FO
03FO
SA76
03FO
F046
F206
6Ft>
3C6D
3C6D
3C6D
0000
3022
0640
0000
0000
OnbrealtAll!
*IP
*FLAGS
7
6A7S
F04S
Probe!
Page 65

TILE
AREA
The
tile
tile
displays
contents.
these
register
"-",
some
since
area,
MENU
The
in
reason.
3D
3D
BAR
menu
3C505.
the
menu
function
bar
Unbreak,
Boot
Load
issues
downloads
Command
the
typein
typein,
is
loaded
time.
file
is
specified
Please
download
area
A
are
flag,
name
the
flag
last
inverts
bar
To
select
are
UnbreakAll,
a
Register.
ends
minus
many
The
slash
downloaded
in
note
program
is
divided
the
tile
and
the
means
An
asterisk,
read
the
provides
and
click
Boot,
hard
a
with
the
slash,
times,
is
the
that
name
consists
left,
right
the
the
register.
tile
a
function,
Load,
and
reset
file
3D
always
a
slash,
not
into
typein
this
PCB
into
of
a
register
of
and
right.
field
data
"*",
occupied
access
the
left
Go,
Probe.
to
the
from
the
necessary
described
the
as
the
file
Adapter
area
Load
uses
operation
a
21
three
displays
in
When
to
functions
move
mouse
continue,
3C505
IBM
"/".
file
name
for
memory
when
by 4 array
or
memory
fields;
The
the
right
means
the
the
by
the
cursor.
the
cursor
button.
Adapter.
PC
to
the
last
In
this
name;
need
the
at
function
is
in
the
left
it
field
right
cursor
for
stop,
the
file
thus,
not
first
the
key
NOT
Chapter
of
tiles.
location
in
reading
field
contents.
is
field
enters
controlling
over
Functions
step,
3C505
specified
case,
if
the
be
supplied
file
address
F6
THE
SAME
3.
and
holds
A
invalid
changed
the
the
name
through
3D
uses
same
loaded.
that
is
pressed.
as
Each
its
order
the
tilde,
for
tile
the
of
on
the
Break,
the
unless
the
file
every
The
is
the
Go
evaluates
specified
continue
or
continue
terminal
the
Command
keyboard
of
the
transmitted
stop
the
an
3D
no
establishes
Command
error
and
the
matter
destroy
address.
starts
for
through
tile
by
Register.
in
the
Slave
what
the
state
the
the
starts
the
3C505;
Register.
the
area
the
communication
message
are
state
of
typein
3C505
the
and
running
3C505
3D
monitors
3D
transmits
Comnland
become
3C505
If
the
through
the
area.
communicating.
the
the
3C505
3C505.
starts
at
running,
Register.
display
the
between
Slave
No
other
is
61
the
the
current
both
any
The
area
Command
3D
does
not
commands
stop
in;
3C505
3D
becomes
the
IBM
character
bottom
for
Register.
and
the
respond,
is
always
however,
running
CS:IP.
PC
keyboard
typed
sixteen
any
Slave
3D
will
appropriate
booting
at
Once
a
"dumb"
on
lines
characters
through
displays
work
until
will
the
Go
and
the
Page 66

step
the
forces
tile
position
area
in
the
are
order
3C505
refreshed.
to
to
single
execute
step.
the
The
next
TEST
instruction:
jumper
must
be
values
in
the
in
"1"
Break
3D
sets
allows
sticky,
hitting
breakpoints
breakpoints
in
the
"1"
Unbreak
to
seven:
the
specified
UnbreakAll
Probe
when
trap
refreshes
the
condition
Register.
the
it
TYPEl:N
3C505:
entered
AREA
a
eight
unlike
a
breakpoint.
when
position
removes
3D
eval
removes
3C505
At
a
the
breakpoint
breakpoints.
debuggers
instructions
it
continues
to
a
breakpoint.
ates
number.
all
the
values
has
entered
and
a
later
Probe
then
Slave.
at
the
which
After
hitting
from
the
use
breakpoints.
Breakpoints
the
typein
Blank
typein
breakpoints.
in
the
no
3D
was
time,
can
3D
retrieve
location
All
forget
a
memory.
3C505.
and
clears
the
tile
Slave
present
can
indicated
of
these
all
breakpoint,
The
are
removes
breakpoint
area.
as
a
result
to
monitor
be
executed
the
state
by
breakpoints
breakpoints
3D
3D
TEST
restores
jumper
numbered
the
breakpoint
Probe
of
on
of
the
the
removes
from
zero.
is
a
software
the
the
PC
3C505
typein.
are
after
all
all
must
be
zero
0~·.h
useful
Command
with
when
Most
tile
evaluates
operator
freely
precedence:
to
arithmetic.
multiplication
bitwise
with
exclusive
complement
address.
value
name
to
in
the
register
SS:SP
just
All
refers
below
constants
alphabetic
the
CS,
I/O
80186
IP,
bus;
expression
unsegmented
same
locations
operations
arithmetic
group
subexpressions.
Legal
(*),
(\).
The
expression
right
a
colon
are
the
to
used
the
top
are
digit
processor
and
for
FLAGS.
example,
which
absolute
as
parentheses
operators
division
or
(A),
is
the
expression,
for
top
of
the
hexadecimal;
must
have
registers:
evaluates
memory
40:0
take
the
expressions
are
(/),
bit
wise
The
to
colon
left
offset.
evaluating
of
the
stack.
a
leading
The
.IO+6
symbol
references
location:
and
30:100.
typein
in
and
All
addition
remainder
inclusive
(:)
of
the
the
stack,
constants
AX,
.IO
to
the
square
operations
operator
the
When
colon
3D
contents
expression;
SS:SP+2
zero.
BX, CX,
references
I/O
a
constant
hence
as
an
typein
brackets
(+),
(%),
or
specifies
is
encounters
of
refers
beginning
3D
DX,
bus
400
argument.
using
can
use
long
subtraction
bitwise
(I),
the
bit
segment;
the
for
to
predefines
SP,
BP,
registers
address
represents
references
customary
be
used
(32
bit)
(-),
and
wise
a
(&),
and
memory
the
a
register
referenced
example
the
word
with
all
ES,
six.
on
DS,
the
Any
the
3D
an
of
an
62
Page 67

USING
THE
HOUSE
TO
CONTROL
DISPLAY
To
tile
alter
typein,
The
button
typein;
the
over
below
the
typein
touch
display
and
expression
location
the
field
Columns
shift
is
field
of
other
middle
key
an
over
with
of
column
for
all
a
click
in
and
displays
contents
the
evaluates
picks
empty
tile
two
mouse
up
clicking
button
of
tiles
and
the
a
tiles
clicking
tile,
left
successive
filled
into
the
register,
the
the
number
and
it,
the
over
appends
can
field
tile,
the
to
the
typein
of
buttons
right
left
the
a
click
and
text
an
be
the
the
of
bottom
move
mouse
as
name
register
the
puts
are
underneath
empty
a
co~~on
cleared
left
tiles
of
a
words.
3D
copies
fields.
tiles
the
the
name
contents
move
left
the
also
tile
to
or
mouse
below
filled
If
the
to
touch;
of
the
cursor
button.
of
the
mouse
result
useful.
cursor
clears
the
filled
button.
are
tile,
the
value
In
all
column.
to
a
in
the
cursor
button.
in
and
the
typein.,
by
cleared.
3D
cursor
under
cases,
zero
the
left
3D
register
selected
over
the
register.
Clicking
appends
typein.
holding
If
fills
is
over
the
3D
or
field
evaluates
or
the
3D
'
the
cursor
If
the
the
the
cursor
evaluates
illegal
of
memory
tile.
right
takes
the
down
right
it
to
Clicking
cursor
column
right
values
a
the
To
the
the
the
is
down
the
FONCT:ION
At
times,
with
location;
the
control
region
Fl
location.
displays
the
therefore
disassembles
F2
display
respectively.
as
. .
" "
1'5
other
cursor
what
of
evaluates
last
through
ASCII
makes
KEYS
3D
overlays
information.
clicking
and
information
the
tile
the
If
the
eight
memory
step
text;
3D
last
screenfuls
the
F4
An
monitor
the
·places
area.
typein
the
through
next
work
as
unprintable
typein
instructions
screenful.
in
longs
additional
the
the
bottom
An
inverted
right
and
previously
a
mouse
it
in
and
the
disassembles
is
of
disassembled
manner
(32
bits),
column
characters
Co1t11Iland
sixteen
the
format
blank
that
similar
Register
square
button
typein.
of
at
or
can't
were
displayed
to
disassembled.
to
shorts
the
are
lines
picks
data
the
instructions;
Fl
right
printed
and
of
indicates
up
The
displayed
specified
be
disassembly.
except
(16
bits),
displays
keyboard.
the
tile
the
the
text
function
evaluated,
3D
PgUp
that
or
as
a
period,
area
cursor
under
keys
in
this
memory
caches
can
PgDn
they
bytes
storage
3D
63
Page 68

*AX
*ax
ex
DX
0000
6B92
0000
0000
ap
*Sf
SI
*01
300C es
3000
04C4
6806
5S
DS
*£5
031'0
3C60
031'0
03FO
*IP
-FLAGS
6A'76
r046
F6
in
,used
03FO:6A76 90
6A'7E
Load!
» Non
OB
C3
BB
OB
EB
aF
8B
OB
'75
E2
FA
Go!
Iftaskable
03FO:6A'7'7
03FO:6A'79
03FO:6A'7A
03FO:
03FO:6ABO 78
03FO:6AB2 E8
03FO:6ABS
03FO:6AB8 04 00
03FO:6ABB
03FO:6ABE
03FO:6A90
03FO:6A92
03FO:6A94 83
03FO:6A9'7
03FO:6A99
Boot!
c.:1p
pcp!
evaluates
the
by
menu
the
DB
3E 00
FF
06
aF
FF
96 FF
OE
68
1D
DB
0'7
EF
04
FS
Continue!
the
bar.
3C505
6B
interrupt
typein
Be
ROM.
pop!
or
bX.
ret
IftOV
or
eU.
bmi
call
call
IftOV
1Il0V
IftOV
or
bX.
bne
aub
loop
cli
Stop!
at
Figure
as
sure
bx
di.
6BOO
di
6ABB
6A44
6A1E
cx.
'4
di.
'6BOE
bX. (eU)
b~
6A9B
di.
.4
6ABE
Step!
Break!
3FO:6A'76
Onbreak!
2. Disassembly.
the
to
load
select
address
a
memory
CnbreakAll!
for
area
the
Probe!
Load
that
command
is
not
F9
toggles
serial
F10
tile
IAlt]-q
line
causes
area.
quits.
the
display
the
bottom
tiles
sixteen
and
to
tiles.
appear
lines
in
of
the
the
tile
bottom
area
sixteen
between
rows
of
the
the
64
Page 69

APPENDIX E
The
3C505
3C505
diagnostic
utility
program
Appendix
subroutines
range
of
drivers
All
Macro
assembly
Assembler
subroutines
conventions
In
the
file
ASM
SM8086.MAC
Software
PSEG ENDPS DSEG
EN
DDS
EtherLink
subroutines
that
C
uses
and
are
functions
or
standalone
language
adhere
required
files,
Diskette).
defines
defines
-
defines
-
defines
3CSOS
program,
the
the
all
written
(Version
to
you
(which
start
end
start
end
USER
Developer's
and
definition
utilities.
3D
Debugger
in
that
can
programs.
subroutines
3.00)
the
object
by
the
will
It
of
of
see
is
not
defines
of
program
program
of
data
data
SOFTWARE
Software
the
3D
The
in
assembly
be
incorporated
are
conventions.
code,
Lattice
references
on
the
the
following
segment
segment
segment
segment
DISKETTE
Diskette
Debugger,
files,
diagnostic
Appendix
language
,coded
linkage,
C
Compiler
to
3C505
a
and
an
is
D.
and
in
resident
using
-In
addition,
and
(Version
the
Lattice
EtherLink
macros:
contains
collection
example
discussed
The
implement
the
Microsoft
function
Developer's
host
utility
device
many
call
2.14).
C
macro
the
of
in
a
If
you
suit
do
your
constant
far
calls
The
3C505
following
IO.ASK
This
file
3C505.
base
I/O
implement
Chapter
subroutines
DMA.ASK
This
file
variables
should
the
be
IBM PC
completion
not
particular
LPROG.
be
EtherLink
files:
contains
The
address
the
4
of
that
contains
for
called
interrupts
use
the
If
used.
Again,
subroutines
subroutine
of
Primary
the
Software
manage
an
IBM
first
plus
5-7
Lattice
needs.
set,
Developer's
IO
the
3C505.
Command
the
all
PC
or
with
on
are
C
Compiler,
The
LPROG
define
that
INIT
Block
Developer's
state
DMA
IBM
AT
the
the
IBM
handled
file
specifies
it
Software
perform
should
The
of
related
host.
DMA
channel
AT).
in
define
SM8086.MAC
that
or
remove
Diskette
programmed
be
called
subroutines
(PCB)
protocol
Manual.
the
Host
subroutines
The
number
DMA
this
module.
these
also
long
it
as
pointers
needed.
contains
first
OUTPCB
described
There
Control
subroutine
to
transfers
macros
defines
I/O
to
with
and
are
Register.
and
global
DMA_INIT
use
(0-3
and
to
the
and
the
the
the
INPCB
in
also
on
DMA
65
Page 70

INT.ASM
.
This
IBM
file
PC
first
allowed
subroutines
this
CMD.ASM
file.
or
with
on
contains
IBM
AT
the
the
to
host.
interrupt
IBM
PC
enable,
subroutines
The
vector
plus
9-15
disable,
to
handle
subroutine
number
on
the
and
INT
to-use
IBM
3C505
INIT
AT)
interrupts
(channel
•
acknowledge
should
There
interrupts
be
3-7
are
in
an
called
are
also
in
Command
Register
subroutine
pointers.
main
buffer
UTIL.ASM
This
Lattice
HOSTIO.DEF
This
interrupt
the
contains
C
programs.
is
the
registers
included
IBM
ADAPTER.DEF
PC
This
vectors
for
and
definition
SOH-SSH.
interrupts
CMD
When a Command
INIT
handler,
must
be
Register
CMDINT
PCB. -
and
IBM
general
definition
to
each
the
AT.
file
DMA
purpose
file
bit
and
in
interrupt
equates
Subfunctions
are
serviced
called
is
utility
that
each
names
for
first
interrupt
called
subroutines
equates
register.
controller
to
the
each
vector
in
to
this
initialize
is
to
read
names
3C505
received
callable
to
Equates
registers
soft
are
also
module.
and
locally
the
are
in
interrupt
defined.
The
buffer
by
the
from
3C505
also
the
PCB.DEF
This
is
structures
PCB.H
Definition
structures
the
definition
for
file
for
each
each
for
PCB.
file
PCB
that
from
C-Ianguage
66
contains
Chapter
programs
the
3.
assembly
that
contains
language
the
Page 71

DOWN.C
C-lanquage
program
DOWN.EXE
This
syntax
3D.EXE
This
mode
card.
connected
base
Appendix
program
of
down
is
of
I/O
source
files
to
downloads
its
usage
[-revg)[-b<base»[-d<dma»
the
file
3C505.
a
is:
I I I I I I
I I I I I I
I I I I I -
I I I I
debug
verbose
execute
hard
Debugger
to
assist
Debugger
host
information
of
PC's
the
the
the
The
to
D
1111111_
j'-
3D
3C505
3D
the
address
for
for
DOS
mode;
mode:
program
reset
program
requires
COM2
3C505
on
the
file
adapter
in
how
DOWN.EXE
to
the
DMA
Adapter
dump
all
show
after
that
debugging
a
port.
is
set
to
use
program
3C505
<filename>
channel
base
PCBs
load
before
address,
download
controls
programs
Mouse
It
also
to
310
3D.
download
which
adapter
number
I/C
etc.
a
special
running
Systems
assumes
hex.
downloads
card.
address
on
PC
that
Refer
The
debug
the
mouse
the
to
3CSOS.EXE
This
describes
is
the
in
3C505
detail
diagnostic
how
to
use
utility
it
67
and
program
what
it
file.
tests.
Appendix
C
Page 72

APPENDIX F
1.
configure
In
Revision
Configure
Revision
values
are
pcb_queue
rcvycb_queue
mc
list
frame
rcv
desc
buffer
prog_table
rcv
a.
buf
- -
The
desc
number
number
b.
The
number
equals
Adapter
1.0,
Adapter
2.0,
changed.
Size
~536
of
of
receive
of
the
number
REVISION
2.0
Memory
certain
m~n~mums
Memory command
the
minimums
Rev
l..0
Default
64
14
5
32
6 0 0
22
40
40
8
10
Frame
10
40
Descriptors
buffers.
Receive
of
Buffer
Receive
ROM
are
Rev
2.0
Default
10
20
20
20
10
20
Descriptors
Buffers
must
as
detailed
enforced
Min
should
specified.
be
and
Notes
2
2
o
~
2
2
1
2
normally
allocated
used
below.
the
e
e
a,d
d
b
in
default
equal
the
In·
the
always
2.
3.
c.
Revision
bytes
always
1.
d.
The
is
value
really
least
allocated.
e.
One
queue-empty
Timeout
The
maximum
commands
Revision
Revision
Timestamp
Revision
doubleword
wrong.
tick
instead
per
equals
4
entry
Values
and
2.0
1.0.
and
2.0
timestamp
Also,
2.0
has
entry).
the
is
the
not
Frame
in
and
timeout
system
to
Timer
corrects
the
of
25us.
an
additional
The
number
minimum
sufficient
Descriptors
this
circular
queue-full
value
ROM
32767
ticks
Resolution
a
problem
in
timer
number
of
Receive
that
the
for
and
queue
checking.
that
service
(lOms
where
the
receive
resolution
Receive
of
firmware
network
Receive
is
can
routines
per
packet
is
Buffer
entries
Buffers
buffers
wasted
be
specified
tick)
the
high
changed
in
specified
will
operation.
to
is
increased
from
word
response
to
Queue
the
accept
should
simplify
15us
queue
in
127
of
PCB
(12-
plus
but
At
be
PCB
in
in
the
is
per
68
Page 73

4.
DMA
The
i.e.,
DMA
Revision
immediately
completion
before
Downloadinq
Adapter
int
downloads
80H
transfer
1.0,
after
status.
sending
Proqrams
function
and
does
a
successful
DMA
the
response
programs
5.
not
initiation
Revision
This
wait
2.0
PCB.
using
DMA
function
for
download
without
waits
utilities
only
it
response
for
initiates
to
complete.
waiting
download
in
ROM;
is
sent
for
complete
the
In
DMA
5.
6.
7.
Zero
In
to
programs
code
not
Offset
Revision
be
executed
segment
work.
will
Receive/Return
In
Revision
2)
always
Buffer
buffer
Receive
PCB
The
to
a.
b.
calls
yield
call
in
and
Formats
following
chapter
Download
been
removed.
Download
of
the
without
the
downloaded
Problem
1.0,
with
not.
is
Revision
Packet
1.0,
the
will
queue.
Return
PCB's
3
for
Program
Program
for
the
IP
set
If
greater
2.0
functions
successive
a
Return
same
always
Revision
packets.
are
more
detail:
(PCB
Response
program
Downloaded
first
the
solves
downloaded
to
IP
than
zero
plus
OffffH,
this
Receive
Buffer
receive
attempt
changed
ODH).
The
(PCB 3DH).
is
Proqrams
but
subsequent
the
then
probl~m.
Packet
(Int
81,
buffer.
to
return
2.0
in
Revision
allows
offset:segment
returned.
program
size
of
the
(Int
function
Also,
the
any
2.0;
The
is
guaranteed
downloaded
the
program's
program;
81,
function
3)
the
first
Return
receive
combination
please
words
refer
have
offset:segment
will
will
of
c.
Adapter
d.
Adapter
e.
Network
number
word
f.
Self-Test
performs
retrieves
PCB
that
size,
values.
The
response
fails.
Info
Info
contains
and
statistics
of
ROM
(PCB
general
Response
ROM
checksum
received
Response
checksum,
returns
11H).
status
information
(PCB
information
value.
Response
and
trasmitted
(3FH).
RAM
error
69
This
41H).
such
(3AH).
The
test,
information
is
and
a
new
from
This
as
revision
The
packets
self-test
82586
PCB
the
is
command
3C505.
a
new.response
counters
are
command now
loopback
when
ID,
now
any
memory
for
double
tests.
that
the
test
Page 74

8.
9.
xnterrupt
The
following
please
a.
Int
allows
initiated
b.
Int
defaults
are
c.
Int
downloe:.<4,ed
conflicting
d.
Int
which
level,
checksum
TEST
The
the
Jumper
state
SWTC
jumper
refer
80H,
82H,
in
82H,
82H,
returns
is
vector
to
function
a
with
and
effect.
function
amount
value.
Usage
of
the
flag
set
Services
service
Chapter
program
Int
function
minimums
function
programs
with
general
of
TEST
in
the
to
one,
routines
OBH:
to
80H
OlH:
05H:
ROM
06H:
memory,
jumper
Adapter
the
3
for
Check
poll
function
noted
abili
usage.
adapter
Revision
are
detail:
DMA
for
DMA
5
Configure
in
Set
l,.··t·O
Get
LEDs~
·'t:llrn
Adapter
information
free
on
the
status
2.0
changed
Done.
completion
or
7.
Adapter
item
#1
New
off/on
Info.
memory
Adapter
Register.
ROM
in
Revison
This
Memory.
of
this
function
LEDs
such
pointers,
is
represented
When
code
will:
new
of
New
as
2.0;
function
a
DMA
New
Appendix
gi.ving
without
function
revision
and
ROM
by
the
TEST
10.
a.
Ignore
during
the
using
powerup
powerup
main
ICE
location
b.
Ignore
ROM
convenient
frequently.
c.
Install
as
"exceptions"
interrupt
Revision
become
Debugger
configure
The
Configure
service
82586
routines
implementation,
command
EX.
In
is
Revision
documentation.
ROM
systems
in
order
checksum
not
3D
interrupt
vectors
2.0
active
program.
Receive
expected
memory
normally
idle
to
ROM.
and
82586
is
an
2.0,
test
prevent
loop.
that
to
operate.
error.
checksum
vectors.
(basically
are
made
When
attempt
Mode
Receive
not
ES:BX
pointer
instead
this
error.
Ignoring
need
During
since
INT 0
to
point
an
exception
to
Mode
correct.
of
the
will
Mem~ry
the
adapter
errors
to
modify
ROM
the
The
interrupt
to
7)
to
the
communicate
function
In
to
a
Configure
receive
be
fixed
errors
from
is
useful
the
NMI
development,
code
is
vectors
and
3D
all
slave
occurs,
with
2
of
the
the
Revision
82586
mode
to
in
match
detected
entering
when
vector
it
is
changing
known
unused
in
the
3D
will
the
3D
INT 82H
1.0
PCB
register
the
70
Page 75

11.
~2.
Receive
In
the
represents
sending
never
system
the
receive
problem
Loopback
The
LPBK
section
at
Tn-is
the
means
enabled.
Packet
Receive
a
response
occur
time
will
Hode
bit
3.5
8023-
Be
PCB
Timeout
Packet
the
maximum
depending
at
the
PCB
packet
be
of
queue,
corrected
in
the
the
Developer's
Manchestcer
that
sure
if
to
PCB
PCB.
was
Adapter
LPBK
set
there
time
In
on
the
processed.
use
in
Code-
is
LPBK
is
to
wait
Revision
timeout
the
soft
Revision
Control
Manual)
converter.
clear,
for
normal
a
timeout
for
1.0,
value
2.0.
Register
controls
then
a
To
flush
reset
LPBK
loopback
network
quantity
packet
the
and
timeout
the
the
function.
(described
loopback
is
active
operation.
which
before
Adapter
PCB
from
This
mode
low.
mode
may
in
is
71
Page 76

APPEND:IX G
1.
2.
3.
Adapter
In
Revision
when
Self
testing
workaround
The
test
Revision
the
memory.
Transmit
The
Transmit
signaling
host
to
download
transmitted
The
and
Revision
will
completed.
is
returned
Get
When
get
Adapter
an
adapter
returned
Revision
to
by
register
REV:IS:ION
test
2.0,
is
latest
Packet
acceptance
Command
the
Adapter
an
Adapter
to
load
3.0
firmware
revision
Command _
Packet
command (PCB 09H)
of
transmit
whether
3.0
firmware
not
transmit
If
the
download
to
the
host
:Information
Adapter-resident
status
in
the
buffer
3.0
firmware
pair
ES:BX
3.0
Self
with
the
Adapter
eliminates
3CSOS,
the
command,
packet
the
data
will
the
packet
is
with
Command
error
program
information,
pointed
returns
the
as
documented.
ROM
test
12Skbytes
with
containing
waits
data.
download
now
allow
if
not
complete,
code
uses
the
to
by
register
data
command (PCB
of
memory.
2S6kbytes
this
in
the
problem
up
Revision
up
Then,
is
completed
SOms
download
to
S12kbytes
to
the
instead
response
-2.
INT S2
data
function
is
pair
in
the
buffer
OFH)
of
memory.
and
2.0,
30ms
for
packet
or
of
has
PCB
incorrectly
DS:BX.
pointed
hangs
can
of
after
the
is
not.
30ms
not
39H
6
to
The
A
4.
5.
Packet
One
is
Processor
of
to
outstanding
2.0
order
order
firmware,
in
of
host.
Adapter
In
the
latest
Control
from
earlier
modify
firmware
inverted
the
functions
upload
Receive
which
packets
LEDs
Register
the
ACR
detects
and
receive
Packet
however,
they
is
rev~s~on
(ACR)
revision
should
whether
will
do
so
of
the
packets
command
might
were
received.
preserved
3CSOS
that
adapters.
keep
this
the
accordingly.
72
firmware
to
the
not
upload
when
adapter,
control
Downloaded
in
LED
Packet
host
(PCB
In
being
the
the
mind.
control
if
OSH).
packets
Revision
uploaded
bits
LEDs
The
Processor
there
The
in
in
the
are
programs
Revision
bits
should
INT 86
is
Revision
the
same
3.0,
to
Adapter
inverted
that
an
the
the
3.0
be
Page 77

6.
Poweron
The
first
firmware
3.0
if
firmware
If
an
during
700
hz.
Self
and
buffer
will
82586
POST,
test
(POST)
6kbytes
the
rest
memory
loop
initialization
the
of
RAM
of
RAM
errors
infinitely
firmware
is
"system"
is
or
will
"buffer"
are
found
flashing
loopback
loop
memory
memory.
during
both
test
flashing
needed
LEOs
error
the
In
Revision
POST,
at
800
LEOs
by
occurs
the
the
hz.
at
73