68kMLA Classic Interface

This is a version of the 68kMLA forums for viewing on your favorite old mac. Visitors on modern platforms may prefer the main site.

Click here to select a new forum.
MetroWerks PowerPlant Constructor ppob resource format
Posted by: mathieutozer on 2025-05-02 05:38:31
Is anyone familiar with the proprietary Constructor app ppob format? Or know of any existing tool that will help me compile them back to .rsrc / .r files. I might be able to figure it out but if someone was already familiar with it from back in the day, that would be helpful.

For context I have my PowerPlant based app built with Retro68 but I had used and would like to continue to use Constructor for the UI (for now).
Posted by: joevt on 2025-05-02 16:21:06
My Resorcerer 2.4 has a PPob template for PowerPlant 2.0 (CWPro5).

The one I have has Attachment=atch instead of atta and adds BalloonHelpAttachment=Blln and adds CmdTarget PaneID to ContextualMenuAttachment=cmat.

CW Pro 7, 8, 10 have a "PowerPlant.r" Rez file (in the "Metrowerks CodeWarrior/Mac OS Support/PowerPlant/PowerPlant Resources" folder) which includes a PPob type. And they have a Resorcerer template for PowerPlant 2.2 (CWPro7).

Maybe that means my Resorcerer's CWPro5 template originally came from CW Pro 5.

So try the "PowerPlant.r" file from the version of CodeWarrior that you are using.
Posted by: mathieutozer on 2025-05-04 05:43:11
Hey thanks for the response, trying to understand what you mean though. Are you suggesting I look at the PowerPlant.r file to determine if I can reverse engineer something to convert any ppob file to .r, or that there is tooling in some versions of of CodeWarrior that can do it for me? I am using CW 4 as I am targeting 68k architectures incidentally.
Posted by: cheesestraws on 2025-05-04 06:05:01
Constructor's project files already contain everything in resources, so I'm not sure what you mean by "compile back to .rsrc files". Open one in ResEdit or Resourcerer and see.
Posted by: mathieutozer on 2025-05-04 06:23:07
Ah I see. I had tried dragging a ppob file onto ResEdit but I get the error

The document "AppResources.ppob" could not be opened, because the application "Constructor 2.5" could not be found.
Could not find a translation extension with appropriate translators.

Maybe some "translation extension" if found will allow me to do what I need?
Posted by: joevt on 2025-05-04 06:42:58
Can you post a sample ppob or a url to one so I can know what you're talking about? I thought we are talking about PPob resources in the resource fork.

If it's a PPob resource then DeRez with PowerPlant.r can convert it to a .r text file and Rez with PowerPlant.r can convert a .r text file to resources in a resource file.
Posted by: mathieutozer on 2025-05-04 07:06:12
Sure, here's the file and a screenshot of it open in Constructor 2.5


Screenshot 2025-05-04 at 10.03.24 AM.png
Posted by: robin-fo on 2025-05-04 07:07:05
Ah I see. I had tried dragging a ppob file onto ResEdit but I get the error
Better use the „Open…“ menu item in ResEdit with these kinds of errors
Posted by: mathieutozer on 2025-05-04 07:15:10
Better use the „Open…“ menu item in ResEdit with these kinds of errors
hah! This worked.

So I guess I could copy the contents here out to a rsrc file then use DeRez to convert to .r, or from this comment
"If it's a PPob resource then DeRez with PowerPlant.r can convert it to a .r text file and Rez with PowerPlant.r can convert a .r text file to resources in a resource file."

are you saying that there is some magic PowerPlant.r file that I can feed directly to DeRez to do this without a manual copy paste process?
Posted by: cheesestraws on 2025-05-04 09:51:13
So I guess I could copy the contents here out to a rsrc file then use DeRez to convert to .r, or from this comment

It's *already* what you're calling an "rsrc" file. The file extension is meaningless, classic MacOS doesn't use file extensions for anything important. Even the type is set correctly to be a resource file:

Screenshot 2025-05-04 at 17.48.06.png

so there's no copying and pasting involved. Just run the file through DeRez if you want a text representation for some reason.

I think you might want to read up on how classic MacOS filetyping and resources work, because you seem to be rather confused.
Posted by: joevt on 2025-05-04 23:34:12
There's some Rez / DeRez notes at https://68kmla.org/bb/index.php?thr...el-to-modify-keyboard-input.37848/post-561523

It has example Rez / DeRez commands that include multiple .r include files to Rez a .r file into a resource fork or DeRez a resource fork into a .r file. It also has example grep and bbfind (from BBEdit.app) commands for finding which .r files to include.

To get a list of resources types and IDs (assuming it doesn't have a resource of type xxxx):
DeRez -p -only xxxx "AppResources.ppob" 2>&1 | perl -nE 'if (/### .* - Skipping (.*)/) { print $1 . "\n" }'
1