1.6 Machine Integer Info Record

The integer info record, if present, has the following format:

/* Header. */
int32               rec_type;
int32               subtype;
int32               size;
int32               count;

/* Data. */
int32               version_major;
int32               version_minor;
int32               version_revision;
int32               machine_code;
int32               floating_point_rep;
int32               compression_code;
int32               endianness;
int32               character_code;
int32 rec_type;

Record type. Always set to 7.

int32 subtype;

Record subtype. Always set to 3.

int32 size;

Size of each piece of data in the data part, in bytes. Always set to 4.

int32 count;

Number of pieces of data in the data part. Always set to 8.

int32 version_major;

PSPP major version number. In version x.y.z, this is x.

int32 version_minor;

PSPP minor version number. In version x.y.z, this is y.

int32 version_revision;

PSPP version revision number. In version x.y.z, this is z.

int32 machine_code;

Machine code. PSPP always set this field to value to -1, but other values may appear.

int32 floating_point_rep;

Floating point representation code. For IEEE 754 systems this is 1. IBM 370 sets this to 2, and DEC VAX E to 3.

int32 compression_code;

Compression code. Always set to 1, regardless of whether or how the file is compressed.

int32 endianness;

Machine endianness. 1 indicates big-endian, 2 indicates little-endian.

int32 character_code;

Character code. The following values have been actually observed in system files:

1

EBCDIC.

2

7-bit ASCII.

1250

The windows-1250 code page for Central European and Eastern European languages.

1252

The windows-1252 code page for Western European languages.

28591

ISO 8859-1.

65001

UTF-8.

The following additional values are known to be defined:

3

8-bit “ASCII”.

4

DEC Kanji.

Other Windows code page numbers are known to be generally valid.

Old versions of SPSS for Unix and Windows always wrote value 2 in this field, regardless of the encoding in use. Newer versions also write the character encoding as a string (see Character Encoding Record).