                     Serial File Structure
                     DiskDupe and PCTrace
                          2/22/95

The serial file information is stored in binary format with variable
length records and a variable number of records.

There is a version number in the 13 and 14 bytes. This is used to add
new fields to the file. Usually fields are added at the end but fields
can also be added in the middle or deleted. Because of this, you
should check the version number in the file and if it is greater than
what you expect, don't try to process the file.

All numbers are stored in Intel format.

======================= Serial File Example ==========================
000  4D 53 44 20 53 65 72 69-61 6C 20 56 65 72 73 69  MSD Serial Versi
010  6F 6E 20 35 20 1A 00 C6-86 01 00 01 00 0B 40 40  on 5   ª_   @@
020  40 2D 40 40 40 2D 7E 7E-7E 00 0B 30 30 30 2D 30  @-@@@-~~~  000-0
030  30 30 2D 30 30 30 0A 00-01 00 05 00 05 00 EE 03  00-000        _
040  01 9F 00 01 22 4F 01 12-00 00 00 00 0A 53 45 52   â  "O       SER
050  49 41 4C 2E 4C 4F 47 05-54 65 73 74 31 21 10 00  IAL.LOG Test1!
060  00 03 40 5E 7E 00 00 00-00 00 00 8F 71 B1 1E 00    @^~      +q_
070  00 00 00 00 00 4F 00 45-6E 64                         O End
======================================================================

00-12 Signature, char, fixed length = "MSD Serial Version "
13-14 Version, chars, fixed length = "5 "
15    End of signature marker, byte = 1A
16    Description length, byte (always 0) = 0
17-1A Serial number, 4 byte integer = 000186C6 (100038 dec)
1B-1C Serial increment, integer = 0001
1D    Stamp mask length, byte = 0B
1D-28 Stamp mask, char, variable length = "@@@-@@@-~~~"
29    Use Location Table, boolean = 0
2A    Search string length, byte = 0B
2B-35 Search string, char, variable length = "000-000-000"
36    Number of serials to search for, integer = 000A
37-38 Count of serial location records, integer = 0001
39-3A (Internal limit, integer = 0005)
3B-3C (Internal delta, integer = 0005)
      The following repeats for each serial location record
3E-3F   Signature of serial location record, word = 3EE
40      Serial location record version, byte = 01
41-42   Serial location track, word = 00F9
43-44   Serial location offset, word = 2201
45      Serial location user entered cyl, byte = 4F
46      Serial location user entered head, byte = 01
47      Serial location user entered sector, byte = 12
48-49   Serial location user entered offset, word = 0000
4A    Increment on reject, boolean = 0
4B    (Not used, boolean = 0)
4C    Log filename length, byte = 0A
4D-56 Log filename, char, variable length = "SERIAL.LOG"
57    Log ID length, byte = 05
58-5C Log ID, char, variable length = "Test1"
5D-5E Serial Crc Poly, word = 1021
5F-60 Serial Crc Start, word = 0000
61    Special chars length, byte = 03
62-64 Special chars, char, variable length = "@^~"
65    Use external file, boolean, (always 0) = 0
66    External filename length, byte (always 0) = 0
      if (Version >= 2)
67-6A   Serial External file time, 4 byte integer = 00000000
6B-6C   Last searched Disk Crc, word = 718F
6D-6E   Crc of user data, word = 1EB1
6F      Encryption string length, byte (always 0) = 0
      if (Version >= 3)
70	    Special Intel flag, boolean, (always false) = 0
      if (Version >= 4)
71      Intel Major, byte (always 0) = 0
72      Intel Minor, byte (always 0) = 0
      if (Version >= 5)
73-74    Start Search Cyl, integer = 0000
75-76    End Search Cyl, integer = 004F
77-79 End signature, char, fixed = "End"


                   Serial File Structure
                    Old PCTrace Format
                        2/22/95

This old format was used prior to the version 2.0k which was release
on 1/5/95. The shipping release 2.01 and before also used it.
Subsequent version can read this file but will save it in the new
format.

This is an ascii text file. Each line is terminated with CR and LF.
The descriptions in the right column below are not actually present in
the file.


The last 5 lines starting with Log File are only present if the
version is 1.

================ Old PCTrace Serial File =================
Serial File             Signature
1                       Version
0                       Start Search Cyl
79                      End Search Cyl
000-000                 Search String
@@@-@@@                 Replacement String
100022                  Beginning Serial number
1                       Increment By
0                       Increment on Reject (0=No, 1=Yes)
SERIAL.LOG              Log file (Blank if none)
TR 1.1 Serial ID        Log file Id
4129                    Serial CRC seed 1
0                       Serial CRC seed 2
@^~                     Special characters
===========================================================

NOTE: For more technical information, please visit our Web site at
WWW.MSD1.COM.

(Doc ID /TECH/DD/FILE 3-24-97 MD)
