Xerox Alto I Hardware Manual page 58

A personal computer system alto series
Table of Contents

Advertisement

Alto Hardware Manual
EOCLOC
=
606B:
EOPLOC = 607B:
EHLOC
=
610B:
Section 7: Ethernet
50
Output fount location. The emulator program should put the size of the
output buffer (in words) into this location before starting the transmitter. By
convention, packets should not be substantially longer than 256 words.
Output Qointer location. The emulator program should put a pointer to the
beginning of the output buffer into this location before starting the
transmitter.
Host address location. This location must contain zero in the left byte and
the host address in the rigbt byte. The microcode matches this host address
against the first byte of a passing packet to decide whether to accept it.
SIc) passes commands to the interface and returns the host address of the Alto.
Commands to the.
Ethernet interface are encoded in the two low order bits of ACO and have the following meaning (the
remaining bits of ACO may be interpreted by other devices and thus should be zero):
AcO[14-15]: 0
Do nothing
1
Start the transmitter
2
Start the receiver
3
Reset the interface and microcode.
The host address, returned in AcO[8-15] by SIO, is set by wires on the Alto backpanel. This number is
normally put in EHLOC thereby causing packets with destination addresses matching the address set with
the wires to be accepted by the receiver.
For more on addressing, see below.
Upon completion of a command, EPLOC contains the status of the microcode in the left byte and the
status of the interface in the right byte. The possible values of the microcode status byte, EPLoc[0-7],
and their meanings are:
EPLoc[0-7] = 0:
EPLOc[0-7]
=
1:
EPLOc[0-7]
=
2:
Input done. If the hardware status byte is 377B, the interface believes the
packet was received without error.
Output done. If the hardware status byte is 377B, the interface believes the
packet was sent without error. The number of collisions experienced while
sending the packet is log2(ELLOCl2
+
1)-1.
Input buffer overrun. The received packet was longer than the buffer, and
the excess words were lost. Buffer overrun causes an early exit from the
microcode input main loop, so it is likely that the CRC error and Jncomplete
,!ransmission bits in the hardware status byte will be set.
EPLoc[O-7]
=
3:
Load overflow.
The transmitter experienced 16 consecutive collisions
(assuming ELLOC was zeroed before starting the transmitter) while trying to
transmit the packet described by EOPLOC and EOCLOC.
ELLOC[O] will be
one.
EPLoc[0-7]
=
4:
The command (input or output) specified a zero length buffer.
EPLoc[0-7]
=
5:
Reset. Generally indicates that a reset command (SIO with AcO[14-15]
=
3)
was issued to the interface when it was idle or any command was issued
when it was not idle.
EPLOc[O-7]
=
6:
Microcode branch conditions that should never happen cause this code to be
posted if they do happen.
EPLOC[O-7]
=
7-377B:
The microcode does not generate these values for status.
Note that the microcode statuses are small integers and not individual bits as in the interface status byte.
Bits in the interface status byte, EPLOc[8-15], are low true.
When zero, their meanings are:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Alto ii

Table of Contents