I spent so long just figuring out that you have to convert strings to Pascal-style strings in order to pass them to functions in the C interfaces lol. I've just managed to get LaunchApplication working. (I knew your GitHub from someone else's post about BuildCubeE) I put it on GitHub and added you to contributors if you want: LaunchApplication is a bit of a headache lol. Shutdown works, but I'm still trying to get LaunchApplication from the processes interface working. Right now, I have it working in MPW script- which of course requires ToolServer (sigh), but I'm implementing it in C++. Since most scripts rely on the Finder to launch an application or shut down, the only solution is to build a Finder from scratch that directly calls the Toolbox. The best way to fix this is with a custom Finder that launches the application and issues a shutdown call when it has been closed. However, the app will not quit or shut down the OS when you select a quit option or press Cmd-Q. This keeps the application as the only thing that can be run by the user after the emulator is launched. The best solution is to replace the Finder with the desired application. You can use an AppleScript to check if the application is running and issue a shutdown command to Finder if it has been closed, but sometimes Finder ignores it or displays an alert if there are applications running. Boot time is longer when the Finder has to launch. The user can select the Finder from the top menu and get access to the desktop, which kills the seamless experience. Startup Items is notorious for breaking aliases and destabilizing the wrap. When the application quits, it goes back to the OS9 desktop instead of shutting down and closing the emulator. Of course, you could use Startup Items or AppleScript to load the application, but there are a number of huge problems with this: One of the first challenges is getting the application to load at boot and the OS to shut down when the application is quit. The ultimate goal is to build an OS9 emulator wrapper which is so seamless that the user is not even aware (or at least not reminded) that they are using an emulator. Burying my head for countless hours in Inside Macintosh. I've been working on this project for about a week.
0 Comments
Leave a Reply. |