.MODEL | small | |
PUBLIC | _INFACE | |
VERSION | EQU | 1 |
EXTRN | _PARAM:BYTE | |
EXTRN | _Q:BYTE |
INCLUDE | DEF.ASM | ; Определения некоторых констант | ||
P_LIST | STRUC | |||
LINTN | DB | 32 dup(0) | ; Список активных номеров прерываний | |
HANDLES | DW | ? | ||
HANDLEP | DW | ? | ||
ER_CODE | DW | ? | ||
ERNUM | DW | ? | ; Код ошибки | |
HANDLER | DD | ? | ||
MODE | DW | ? | ; Текущий режим приема пакетов | |
MLIST | DB | 0,0,0,0,0,0 | ; Список допустимых режимов; 1 => имеется | |
PKT_IN | DW | ?,? | ; Диагностический массив | |
pkt_out | DW | ?,? | ||
byte_in | DW | ?,? | ||
byt_out | DW | ?,? | ||
err_in | DW | ?,? | ||
err_out | DW | ?,? | ||
pk_drop | DW | ?,? | ||
L1 | DW | 0 | ; Версия драйвера | |
L2 | DW | 0 | ; класс/номер | |
L3 | DW | 0 | ; Тип | |
L4 | DW | 0 | ; Функция | |
_NAME | DB | 0,0,0,0,0,0,0,0,0,0 | ; Имя интерфейса | |
ETHER_ADR | DB | ADDR_LEN dup(-1) | ; Ethernet-адрес | |
S_ADR | DB | EADDR_LEN+5 dup(-1) | ; Ethernet-адрес получателя | |
D_ADR | DB | EADDR_LEN+5 dup(-1) | ; Ethernet-адрес отправителя | |
P_LIST | ENDS |
QUEUE | STRUC | ||
Leng | DW | 15000,? | ; Длина очереди |
Tail | DW | ? | ; Смещение последнего элемента очереди |
Head | DW | ? | ; Смещение первого элемента очереди |
_end | DW | ? | ; Указатель на конец очереди |
p_len | DW | ? | ; Длина пакета |
P_start | DW | ? | ; Указатель на текущий пакет = Q_head - Q_begin +2 |
NEW | DB | 0 | ; Флаг нового пакета |
Line | DB | ? | ; Строка экрана |
Npacks | DD | 0 | ; Счетчик принятых пакетов |
B | DW | ? | ; смещение Q_beg |
Point | DW | 380 dup(?) | |
Beg | DB | 31000 dup(?) | ; Пакетный буфер |
QUEUE | ENDS |
ether_bdcst | DB | EADDR_LEN dup(-1) | ; Широковещательный адрес Ethernet, заполненный -1. |
ether_addr | DB | EADDR_LEN dup(-1) | |
bogus_type | DB | 0,0; | |
signature | DB | 'PKT DRVR',0 | ; Сигнатура пакетного драйвера |
signature_len | equ | $-signature | |
SAFE | DW | ? | |
DFLAG | DB | 0 |