Program Information File

formát souboru

Program Information File (PIF) je malý nastavovací soubor umožňující běh programů originálně vytvořených pro DOS pod víceúlohovými operačními systémy. PIF byl původně vytvořen pro systémové prostředí IBM TopView,[1] později byl adaptován i systémovým prostředím DESQview a operačním systémem Windows.[2] V současné době je tento souborový typ již takřka nepoužíván.

Formát

editovat

Původní formát souboru PIF obsahoval pouze jediný blok dat s informacemi potřebnými ke spuštění programu pod IBM TopView, obsahující informace zahrnující požadovaný název okna programu, přiřazenou paměť, typ monitoru, požadovanou pozici a rozměry okna aplikace a další.[3] Při adaptace souboru PIF pro Microsoft Windows pak z důvodů nutnosti zahrnutí dalších nastavení při souběžném zachování zpětné kompatibility souborů došlo k rozšíření formátu PIF zařazením hlavičkových a dalších datových bloků za původní blok dat, s první z hlaviček se na tento blok zpětně odkazující. Tímto bylo umožněno jednak použití souborů PIF staršími operačními systémy, které pouze přečetly původní blok dat a zbytek souboru ignorovaly, jednak operačními systémy novými, které mohly rovnou přeskočit na první z hlaviček a poté číst pouze bloky pro ně zajímavé, včetně opět i bloku původního.

Bloková struktura souboru PIF[4]
Odsazení od začátku souboru v bytech Velikost v bytech Popis
0 369 Původní IBM TopView blok dat
369 22 Hlavička původního bloku dat
391 22 Hlavička prvního rozšiřujícího bloku dat
413 X První rozšiřující blok dat
413 + X 22 Hlavička druhého rozšiřujícího bloku dat
...
Struktura původního IBM TopView bloku dat[3][4]
Odsazení od začátku bloku dat v bytech Velikost v bytech Popis
0 1 Ignorováno
1 1 Kontrolní součet, ignorováno
2 30 Název okna aplikace zapsaný znakovou sadou CP437

Doplněno prázdnými znaky do délky 30 bytů

32 2 Maximální množství přiřazené paměti v kilobytech
34 2 Minimální množství přiřazené paměti v kilobytech
36 63 Absolutní cesta ke spustitelnému souboru

Ukončená symbolem NULL, znaková sada CP437

99 2
101 64 Absolutní cesta k pracovnímu adresáři

Ukončená symbolem NULL, znaková sada CP437

165 64 Parametry předávané souboru

Ukončené symbolem NULL, znaková sada CP437

229 1 Typ monitoru
230 1 Počet využitých "screen pages"
231 1
232 1
233 1 Výška okna ve znacích

Výchozí hodnota 25

234 1 Šířka okna ve znacích

Výchozí hodnota 80

235 1 Odsazení okna od levého okraje obrazovky ve znacích

Výchozí hodnota 0

236 1 Odsazení okna od horního okraje obrazovky ve znacích

Výchozí hodnota 0

237 2
239 128 Ignorováno
367 2
Struktura hlavičky bloku[4]
Odsazení od začátku hlavičky v bytech Velikost v bytech Popis
0 16 Název odkazovaného bloku dat
16 2 Odsazení následující hlavičky od začátku souboru
18 2 Odsazení odkazovaného bloku dat od začátku souboru
20 2 Velikost odkazovaného bloku dat v bytech

Reference

editovat
  1. TOPVIEW VERSION 1.10 TOPVIEW PROGRAMMER'S TOOLKIT VERSION 1.10. www-01.ibm.com [online]. 1986-04-02 [cit. 2020-03-30]. Dostupné online. (anglicky) 
  2. PETZOLD, Charles. PC Tutor: Can't use PC-DOS BASICA. PC Magazine. Ziff Davis, 1987-01-13, svazek 6, čís. 1, s. 326, 329. Dostupné online. ISSN 0888-8507. (anglicky) 
  3. a b IBM Corp. TopView User's Guide. [s.l.]: IBM Corp., 1984. 186 s. Dostupné online. 1502480. Kapitola 6. Changing Program Information, s. 114–127. (anglicky) 
  4. a b c MERZLIKIN, Sergey. The PIF file format in various Windows versions. www.smsoft.ru [online]. 2000-02-14 [cit. 2020-03-30]. Dostupné v archivu pořízeném z originálu. (anglicky)