Paint Shop Pro file format plugin for Photoshop ----------------------------------------------- Copyright 2003 Toby Thain . PREREQUISITES * Adobe Photoshop SDK (tested with v6 SDK) * zlib by Jean-loup Gailly & Mark Adler, http://www.zlib.org/ (tested with zlib 1.1.4) HELPFUL (but not necessary) * Paint Shop Pro file format specifications, http://www.jasc.com/specs/psp.asp TOOLS (successfully built with, other tools may work) * Apple MPW, http://developer.apple.com/tools/mpw-tools/ * Metrowerks CodeWarrior, (tested with Pro1 version) * MinGW, http://www.mingw.org/ SPECIFIC NOTES zlib: Download from http://www.zlib.org/ Put the zlib folder inside the unpacked pspformat folder. Set your access paths (and paths in "pspformat.make", if using MPW, or Makefile, if using mingw) to correctly name this folder. Photoshop SDK: Edit the makefiles ("pspformat.make" for MPW, "Makefile" for mingw32), or change your CodeWarrior project's access paths, to reflect the SDK's installed location. You may have trouble building with an unmodified SDK. To build PiPL resources for Photoshop 7/Carbon binaries, after the lines in :PhotoshopAPI:Resources:PIPL.r , pwpcEnd: align long; add the following lines : case CodePowerPCbundle: longint = '8BIM'; key longint = 'ppcb'; longint = 0; #if DeRez fill long; #else longint = (ppcbEnd[$$ArrayIndex(properties)] - ppcbStart[$$ArrayIndex(properties)]) / 8; #endif ppcbStart: longint; longint; pstring; ppcbEnd: align long; Metrowerks CodeWarrior: Metrowerks CW (Pro1) has trouble with this line in :PhotoshopAPI:Photoshop:PITypes.h : typedef unsigned __int64 unsigned64; Since at least that version of CW doesn't support "long long" (64-bit type), the solution is to delete, comment out, or #ifndef _MWERKS_ , that line (the type "unsigned64" is not needed). For better compatibility with Carbon, the plugin was built with Apple's Universal Headers 3.3, not the (older) headers shipped with CW Pro1. This update is found at ftp://ftp.apple.com/developer/Development_Kits/ CodeWarrior can build the PowerPC Classic and Win32 (Intel) versions of the plugin. Currently, there is an undiagnosed crashing bug in CodeWarrior's 68K target build (suspicion currently falls on Metrowerks' 68K libraries). The "68K-FPU" target is provided for reference only, it is not needed, as all 68K Macintoshes will be able to run the "68K" target build (when debugged). (The only benefit of the "FPU" build, in this code, is utilisation of 68020 instructions. The target is characterised as "FPU" because this is how Photoshop selects between its code descriptors, when choosing the appropriate plugin architecture at runtime.) MPW: Because this code links to the standard C library routines in CarbonLib, the CarbonStdCLib and StdCLib headers updates should be applied to your MPW installation, see http://developer.apple.com/tools/mpw-tools/updates.html MPW builds the PowerPC Classic and Carbon versions of the plugin. Due to lack of 68K C compiler support for global variables in standalone code, it cannot build the 68K version.