ПРИЛОЖЕНИЕ 5. Структура вектора символьного устройства
вывода (СУВЫВ) / g_tydv(#12) DOS.SYS /
смещ имя длина комментарий
ение
-10 CRTYP 1 Номер канала текущего СУВЫВ
-9 PRCHR 3 Переход на процедуру (ПП) вывода
символа на экран (принтер) /ttyoyt(#A)/
-6 PRCPL 3 ПП задания инверсного/нормального
режима печати / prcpl(#Bj /
-3 PRAD 3 ПП установки координат / pradd(#C) /
0 BYTTST 1 Длина курсора тек. драйвера экрана
1 XYpos 2 Текущие логические координаты печати
3 Xypos 2 Текущие физические координаты печати
5 type 1 Тип устройства:0-экран/1-принтер
6 ertype 2 Адрес обработки ошибки СУВЫВ
Байты 0(8) лежат в соответствующем канале устройства
(см. ПРИЛОЖЕНИЕ 7)
ПРИЛОЖЕНИЕ 6. Структура вектора блочного устройства
(БУ) / g_bldv(#13) DOS.SYS /
смещ имя длина комментарий
ение
-10 CRBLK 1 Номер канала текущего БУ
-9 BREAD 3 Переход на процедуру (ПП) чтения
/ dread(#D) /
-6 BWRIT 3 ПП записи / write(#E) /
-3 BINIT 3 ПП инициализации / bin1t(#F) /
0 SCCSR 1 Регистр состояния. Биты 0/1
0..3 - номер устройства для вирт. диска
3 - драйвер без буфера/ с буфером
5 - запрет/разрешение чтения для RST
6 - запрет/разрешение записи для RST
7 - мимо эл.диска/через него
1 DRCSR 1 Регистр состояния. Биты 0/1:
0 - запрос по адресу в QVST при
обращении к устройству (ПРИЛОЖЕНИЕ
1 - флаг авто-флаша
(сбрасывается пользователем)
2 - TRDOS/нет
7 - не/отрабатывать ошибки (erdrv(#lF))
2 6 (см. ПРИЛОЖЕНИЕ 4.)
ПРИЛОЖЕНИЕ 7. Описание канала устройства:
(длина 10 байт;
смещ имя длина комментарий
ение
0 TDISR 1 Номер канала драйвера, обслуживающего
устройство
1 PARM 1 Параметры Для драйвера /номер устройства
2 SCCSR 8 Байты 0..7 соответствующего вектора
(см. ПРИЛОЖЕНИЯ 2,5,6)
ПРИЛОЖЕНИЕ 8. Описание канала драйвера/резидента
(длина 18 байт)
смещ имя длина комментарий
ение
0 DEV 1 Номер устройства, с которого он был
загружен
1 CAT 2 Каталог, в котором находится драйвер
3 NFILE 1 Номер файла в данном каталоге
4 LSA 2 Адрес загрузки драйвера
6 LINK 2 Длина драйвера
8 DCSR 1 Состояние драйвера
9 QDEV 1 Количество обслуживаемых устройств
10 NAME 8 Имя драйвера/резидентной задачи
ПРИЛОЖЕНИЕ 9. Резидентный вектор файловой службы
/ bkfcb(#35) DUD.SYS /
смещ имя длина комментарий
ение
-8 DSIZE 2 Размер открытого устройства в блоках
-6 BMSIZ 2 Размер бит-карты в байтах (см.ПРИЛОЖЕНИ
-4 FCBA 2 Адрес описателя файла пользователя
-2 1 Временный номер файла
-1 FNUMB 1 Номер файла (#FF, если файл не открыт)
О 32 Описатель тек.(открытого) файла:
О FNAME 8 Имя
8 FTYPE 3 Тип
11 FSTAT 1 Регистр состояния файла. Биты (0/1):
0 - удален/существует
2 - защищен от чтения(1)
3 - защищен от записи(1)
4 - видимый/скрытый файл
5 - файл/каталог (главный)
6 - сегментированный/непрерывный
7 - защищен от удаления(1)
12 FLSA 2 Адрес загрузки по умолчанию
14 FLENG 3 Длина
17 FSDBN 2 Номер блока описателя сегмента
(Для непрерывного файла - номер нулевого
блока файла)
19 WRKST 1 "Special" (N уровня для *.SYS)
20 6 Резерв
26 FSUM 2 Контрольная сумма файла
28 FTIME 2 Время
30 FDATE 2 Дата
32 23 Описатель тек.(открытого) каталога
(внутренний)
32/0 CATLG 8 Имя текущего каталога
40/8 3 пробелы ( тип каталога )
43/11 1 CSR каталога
44/12 CDLSA 2 CBBN каталога-прародителя
46/14 *CSIZE 2 Размер каталога в байтах
48/16 *LEVEL 1 Уровень вложенности подкаталога
49/17 CSDBN 2 Номер блока описателя сегмента
51/19 CBBN 2 Номер 0-го блока каталога
53/21 *NFILE 1 Общее число файлов (включая сам
каталог и удаленные)
54/22 *NEFIL 1 Число файлов без каталога и удаленных
55 1
* - неиспользуемые переменные во внешнем описателе
каталога.
ПРИЛОЖЕНИЕ 10. Вектор окна для wt(#61)
(Подается в IX на входе большинства
рестартов уровня WIND.SYS)
смещ имя длина комментарии
ение
0 XC00R 1 координата X для распечатки окна
1 YC00R 1 координата Y окна
2 YSIZE 1 высота окна (размер Y)
3 XSIZE 1 ширина окна (размер X)
4 ATTR 1 атрибуты окна
5 SHADE 1 атрибуты тени. ( Если старший бит
установлен, тень не выводится)
6 Хсоог 1 координата X для распечатки текста.
Указывает непосредственно на
начальную позицию печати.
7 Xsize 1 ширина для распечатки текста с помощью
процедур lwt, adrwt, lenwt.
Все расстояния отсчитываются от левого верхнего угла
экрана и измеряются в синклер-местах (от 1 до 32)
(IX+0..+3) и в знакоместах (от 1 до 42) (IX+6..7)
Вектор часто включается в состав больших векторов
(см. menu(#91), scrol(#70), ПРИЛОЖЕНИЕ 18)