Resource File Converter
=======================

RESCVT.EXE on the Goodies disk in GOODIES\SDK\UTIL\RESCVT is a resource file 
converter. It converts DR resource file headers into 1.0 format, guessing 
how to convert 64-bit resource IDs to 32-bit resource IDs. If the filed 
format of the object and data resources is unchanged, then you can read in 
your old resources after conversion.


In practice this works for bitmap resources. In general, it's a wise idea to 
keep all resources separate on your build PC, and combine them during MAKE 
using RESAPPND.

Syntax
------
The syntax of the RESCVT command is very simple:

    rescvt oldfile newfile

It reads from oldfile and creates the newfile.  Do not attempt to convert a 
file in place!

Converting 64-bit Resource IDs to 32-bit IDs
--------------------------------------------
In DR, the resource ID was a 64-bit quantity divided into two 32-bit halves:

o  admin, which was a standard GO tag

o  id, which was a simple 32-bit integer.

The tag (like all tags) contained a tagNum in the range 0-255 and a WknId.

The new 32-bit resource ID in PenPoint 1.0 is a normal tag, also divided into 
a tagNum and WknId part. The challenge is to somehow squeeze this 64-bit 
number into a 32-bit number.  Here's the scheme RESCVT uses:


o  If the id field is greater than 256, we assume that the id field held a 
   tag and we simply throw away the admin field.

o  Otherwise, we get the WknId field for the new resId from the WknId of the 
   admin field in the old resId.

If the tagNum of the admin field is not 1, we use that as the tagNum in the 
new resource ID. If the tagNum of the admin field is equal to 1, we use the 
id field as the tagNum of the new resource ID.

This corresponds to three schemes for allocating the 64-bit resource ids:

1  The admin field is always set to the same value (say, the well-known UID 
   of an application), and the Id field contains a tag.

2  The admin field contains a tag and the id field contains 1. 

3  The admin field always contains the same tag, and the id field is 
   incremented from 1.

If your scheme assigned the 64 bits in some other way, you'll have to contact 
GO about converting your IDs (unless you can live with the numbers this will 
generate).
