PTC061 changes
==============


The most significant change in PTC is the addition of surface orientation and
advance.

This means that you can no longer assume that a 100x100 surface will be a 
linear block of 100x100 pixels.

For example, a surface created like this:

	Surface(ptc,320,200,ARGB8888);

Could be either topdown (normal) or bottomup (upside down image). It could 
also have an "advance" of any number, advance meaning "the number of bytes 
inbetween the end of one line and the start of the next one".

The reason for this is that by default surfaces are created with the *fastest* 
possible layout. This means that under win32 GDI surfaces are created BOTTOMUP 
because of the enourmous speed benefits. Another possibility is that PTC will 
align the start of each line to dword to improve speed.

How then do you work with this new surface system? simple. use the surface 
"pitch" to guide you. No matter what orientation or advance the surface has, 
the pitch always will take you from the start of one line of the image to the 
start of the next line. See the "rand32.cpp" example for more information.

IMPORTANT: the pitch is in *bytes* so you must work with a char*, you cannot
just divide the pitch by two and use short* or divide by four and use int* !!

If you dont like this functionality you can override it:

	Surface(ptc,320,200,ARGB8888,SYSTEM,TOPDOWN,0,LINEAR);

This creates a surface totally backwards compatible with the old PTC surface
system. However, it has the drawback that you risk loosing considerable speed
benefits especially under win32. Use it only as a last resort.

please see the "surface.h" and "globals.h" for more information.
