+-——-----——-------—-———————-----+

/

type

(Описатель раздела ЖД) Part_Type а" record

BootF: Byte; (Флаг активности раздела}

BegHd: Byte; (Головка для начала раздела}

BegSC: Word; (сектор/цилиндр!

Sys : Byte; (Код системы}

EndHd: Byte; (Головка для конца раздела}

EndSC: Word; (сектор/цилиндр}

Sees : Longint; (Относительный номер начального сектора}

Size : Longint; (Длина раздела в секторах} end; (Part Type)

(Структура загрузочного сектора} BootSecType = record

a: array [0..$1BD] of Byte;

Part: array [1..4] of Part_Type;

b: array (1..2] of Byte end;

(Первый сектор файла} LType = record case Byte of 1: (Boot: BootSecType);

2: (W: array [1..256] of Word);

end;

(Описание логического диска в заголовке архивного файла} TLogicD - record

BHd: Byte; (Начальная головка}

BSC: Word; (Сектор-цилиндр)

Space: Longint; {Объем а секторах} end;

(Описание структуры ЖЯ в резервном файле} TStruc ~ record

BHd: Byte;

BSC: Word;

Sec: BootSecType end;

(Описание файла в архивной файле} CheckType = record

Name: PathStr; {Полное имя файла}

SecO: LType; (Эталон первого сектора}

SizO: Longint {Эталонная длина файла} end;

(Заголовок архивного файла} THead = record case Byte of 0:(

HD String [7]; ('ANTIVIR'}

BIOS Longint; (Контр.сумма BIOS}

Intl3 Pointer; {Адрес входа в Intl3}

NDisk Byte; {Количество ЛД}

SecTr Byte; {# секторов на дорожке!

Heads Byte; (Количество головок}

LDisk array [1..48] of TLogicD; (Ссылки на ЛД и их описатели}

Begl3 array [I..SizeOf(CheckType)-27-

48*SizeOf(TLogicD)] of Byte); {Начало Intl3) 1:(CT: CheckType) end;

{Turbo Vision программа, обеспечивающая диалог)