Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 100

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 103

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:100) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:100) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: include(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/resourceloader/ResourceLoader.php on line 201

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007
PixFolio catalog - Just Solve the File Format Problem

PixFolio catalog

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Identification)
 
(2 intermediate revisions by one user not shown)
Line 5: Line 5:
 
|released=≤1991
 
|released=≤1991
 
}}
 
}}
'''PixFolio''', including its predecessor '''ShowGIF''' (also written '''Showgif'''), is an image viewer and image file management application for Windows 3.x. It was developed by Allen C. Kempe and (for some versions) Paul R. Hachey.
+
'''PixFolio''', including its predecessor '''ShowGIF''' (also written '''Showgif'''), is an image viewer and image file management application for Windows. It was developed by Allen C. Kempe and (for some versions) Paul R. Hachey.
  
It "catalog" database consists of a '''.CAT''' data file, and a companion '''.CIX''' index file. The CAT file contains thumbnail images, and other metadata.
+
Versions exist for Windows 3.x, and 32-bit Windows. This article might only cover the Windows 3.x versions.
 +
 
 +
PixFolio's "catalog" database consists of a '''.CAT''' data file, and a companion '''.CIX''' index file. The CAT file contains thumbnail images, and other metadata.
  
 
== Disambiguation ==
 
== Disambiguation ==
Line 13: Line 15:
  
 
== Identification ==
 
== Identification ==
CAT: There's no ''nice'' way to identify a CAT file. Robust identification seems possible, though. The first 373 bytes of the file (and of each item) possibly have a fixed layout, but variable-length segments exist after that.
+
CAT format is quirky, and potentially difficult to identify. It consists of a sequence of items, almost all of which contain an image. Each item seems to have a 373-byte fixed header, followed by variable-length segments. Provided the first item contains an image, a CAT file can probably be identified fairly reliably, but more research is needed. The timestamp is the most distinctive field, but it has different formats in different files. Bytes (hex) {{magic|28 00 00 00}} (a [[BMP]] header field) should appear at offset {374 + {the 2-byte integer at offset 369}}.
 
+
For example, byte <code>0x3a</code> appears at offsets 356 and 359, as part of the ASCII timestamp. Certain bytes must be ASCII digits. Etc.
+
  
 
CIX: ''(TODO)''
 
CIX: ''(TODO)''
Line 30: Line 30:
 
* {{CdTextfiles|cream07/windows/pixf2015.zip|PixFolio v2.0.155}}
 
* {{CdTextfiles|cream07/windows/pixf2015.zip|PixFolio v2.0.155}}
 
* [https://archive.org/details/chiphitwarevol3 Chip Hitware Vol. 3] → CHIPHIT3/MULTMEDI/GRAFIK/PIXFOLIO/PIXF16.ZIP  - PixFolio v2.0.170
 
* [https://archive.org/details/chiphitwarevol3 Chip Hitware Vol. 3] → CHIPHIT3/MULTMEDI/GRAFIK/PIXFOLIO/PIXF16.ZIP  - PixFolio v2.0.170
 +
* {{CdTextfiles|cica/cica9608/disk2/DISC2/GRAPHICS/PIXF32.ZIP|PixFolio 32-bit v2.0.176}}
  
 
== Sample files ==
 
== Sample files ==
 
* [https://archive.org/details/Aztechs_Super_Games_Aztech_New_Media_Corp_1994 Aztech's Super Games] → FOR_PC/*.{CAT,CIX}
 
* [https://archive.org/details/Aztechs_Super_Games_Aztech_New_Media_Corp_1994 Aztech's Super Games] → FOR_PC/*.{CAT,CIX}
 +
* [https://archive.org/details/MasterClipsBusiness Masterclips - The Art of Business] → CATALOGS/

Latest revision as of 12:55, 2 July 2024

File Format
Name PixFolio catalog
Ontology
Extension(s) .cat, .cix
Released ≤1991

PixFolio, including its predecessor ShowGIF (also written Showgif), is an image viewer and image file management application for Windows. It was developed by Allen C. Kempe and (for some versions) Paul R. Hachey.

Versions exist for Windows 3.x, and 32-bit Windows. This article might only cover the Windows 3.x versions.

PixFolio's "catalog" database consists of a .CAT data file, and a companion .CIX index file. The CAT file contains thumbnail images, and other metadata.

Contents

[edit] Disambiguation

Note that there are several other unrelated programs named ShowGIF.

[edit] Identification

CAT format is quirky, and potentially difficult to identify. It consists of a sequence of items, almost all of which contain an image. Each item seems to have a 373-byte fixed header, followed by variable-length segments. Provided the first item contains an image, a CAT file can probably be identified fairly reliably, but more research is needed. The timestamp is the most distinctive field, but it has different formats in different files. Bytes (hex) 28 00 00 00 (a BMP header field) should appear at offset {374 + {the 2-byte integer at offset 369}}.

CIX: (TODO)

[edit] Software

There are many versions of PixFolio. Selected versions are listed here.

[edit] Sample files

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:100) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:100) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:100) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38