ZRQINIT
Посылается передающей программой.Посылка заставляет принима-
ющую программу послать свой ZRINIT заголовок.Это позволяет
избежать начальной задержки как в Xmodem или Kermit.Передающая
программа может повторить посылку если ответ не получен сразу.
ZRINIT
Посылается принимающей программой.ZF0 и ZF1 содержат битовое
поле указательных флагов приемника:
CANCRY 008 приемник может шивровать
CANFDX 001 пр-к может послать и принять FDX
CANOVIO 002 пр-к может принимать данные во время дискового в/в
CANBRK 004 пр-к может послать break сигнал
CANCRY 010 пр-к может шивровать
CANLZW 020 пр-к может распаковывать
CANFC32 040 пр-к может использовать 32 битовую кс
ESCCTL 100 пр-к ждет управляющий символ к ESC
ESC8 200 пр-к ждет восемь бит к ESC
ZP0 и ZP1 содержат размер приемного буфера в байтах или 0 если
разрешена передача без остановки.
ZSINIT
Передатчик посылает флаги для бинарного пакета данных
завершающихся ZCRCW.ZF0 содержит:
TESCCTL 0100 передатчик ожидает управляющий символ к ESC
TESC8 0200 передатчик ожидает восемь бит к ESC
Подпакет данных содержит завершающуюся нулем Attn после-
довательность максимальной длинны 32 байта включая ноль.
ZACK
Подтверждение ZSINIT фрейма,ZCHALLENGE,ZCRCQ или ZCRW
подпакетов данных.ZP0..ZP3 содержат смещение в файле.Ответ
на ZCHALLENGE содержит то-же 32 битовое число,что и было
принято в ZCHALLENGE.
ZFILE
Этот фрейм отмечает начало попытки передачи файла.
ZF0,ZF1 и ZF2 могут содержать опции.Значение 0 в каждом
из этих байт означает специальную обработку.Опции указанные
для приемника замещают опции указанные для передатчика за
исключением ZCBIN.ZCBIN для передатчика замещается любой
другой опцией преобразования доступной приемнику,исключая
ZCRESUM.ZCBIN от приемника замещает любые другие опции и
посылается передатчику.
ZF0 - опции преобразования.
Если приемник не распознает опции преобразования,то
могут быть применены умалчиваемые опции.
ZCBIN бинарная передача ( безусловный запрет
преобразований )
ZCNL преобразование конца строки CR/LF и NUL
ZCRECOV восстановление ( результат прерванной передачи файла )
ZCREVOV используется для добавления данных к файлу.Если
назначенный файл существует и он не длиннее исходного
происходит добавление в указанный файл и передача
начинается с указанного смещения.
ZF1 - опции управления
Если приемник не распознает опции управления,то файл
должен передаваться обычным образом.
ZMSKNOLOC бит инструктирует приемник пропускать файл если
приемник не имеет файла с таким же именем.
ZMNEWL файл передается если он отсутствует.Иначе пере-
даваемый файл переписывает существующий если он
более новый или длиннее.
ZMCRC сравнивается исходный и существующий файл.Пере-
дается если CRC не совпадает.
ZMAPND добавляет исходный файл к существующему ( если есть )
ZMCLOB замещает существующий файл.
ZMDIF передается файл если он отсутствует.Иначе пере-
писывается если имеет отличную длинну и дату.
ZMPROT защита приемного файла.Файл передается только в
случае отсутствия.
ZMNEW передает файл если он отсутствует иначе переписывает
если он более новый.
ZF2 - транспортные опции.
Если приемник не распознает транспортые опции файл копи-
руется без преоразований:
ZTLZW lempel-ziv сжатие.
ZTCRYPT зашифровано.
ZTRLE длинна кодируется.
ZF3 - расширенные опции.
ZTSPARS
специальный процес для разряженных файлов.Каждый файловый
сегмент передается как отдельный фрейм,причем фреймы не
должны быть непрерывными.Передатчик должен заканчивать
каждый сегмент ZCRCW и ожидать ZACK для уверенности,что
данные не потеряны.ZTSPARS и ZCNL не могут быть использованы
в этом случае.
ZSKIP
посылается приемником в ответ на ZFILE,заставляя передатчик
перейти к следующему файлу.
ZNAK
индицирует,что последний заголовок был искажен.
ZABORT
посылается приемником для завершения,когда требует
пользователь.Передатчик отвечает ZFIN.
ZRPOS
посылается приемником для указания передатчику смещения в
файле в ZP0..ZP3.
ZDATA
ZP0..ZP3 указывает смещение в файле.Затем следует один или
более подпакетов данных.
ZEOF
Передатчик сообщает о конце файла.ZP0..ZP3 указывает
смещение в файле.
ZFERR
ошибка чтения или записи.Эквивалент ZABORT.
ZCRC
требование приемника и ответ передатчика для вычисления CRC,
которая передается в ZP0..ZP3.
ZCHALLENGE
требование передатчика послать эхом случайное число в
ZP0..ZP3 в ZACK фрейме.Посылается приемной программой к
передающей для проверки,что связь действует.
ZCOMPL
требование завершения.
ZCAN
этот фрейм есть псевдокоманда возвращаемая gethdr() в ответ
на Abort последовательность.
ZFREECNT
вызывающая программа требует ZACK фрейм с ZP0..ZP3 содержащим
количество свободных байт в файловой системе.Ноль означает
неопределенное количество.
ZCOMMAND
посылается в бинарном фрейме.ZF0 содержит ноль или ZACK1.
Затем следует ZCRCW подпакет данных с ASCII текстовой коман-
дной строкой завершающейся нулем.Эта команда предназначена
для выполнения OS и должна иметь '!' в качестве первого
символа.Иначе команда предназначена для принимающей программы.
Если обнаружена неверная команда,то приемник отвечает ZCOMPL
с указанием в ZP0..ZP3 кода ошибки.Если ZF0 содержит ZACK1,
то приемник отвечает ZCOMPL с 0 статусом.
В других случаях приемник отвечает ZCOMPL,когда операция
завершена.Значение выходного кода команды сохраняется в
ZP0..ZP3.0-нормальное завершение.
Если команда вызывает передачу файла,то передатчик обнаружит
ZRQINIT фрейм от другого компьютора пытающегося послать файл.
Передатчик проверяет ZF0 принятого ZRQINIT для проверки своего
ZRQINIT.Есть ли неверная команда для принимающей программы.
Если приемная программа не воспринимает команду DownLoad,
она может вывести эту команду на дисплей через стандартный
error выход и затем вернуть ZCOMPL.
|