Getting TrueBasic to work on OS X without Windows

Background

Montgomery County Public Schools have standardized middle school computer science instruction on using True Basic, which most unfortunately does not have a native Mac OS X version. The last Mac version ever released was for the Classic Mac OS, which would no longer work on operating systems OS X 10.5 and newer (fall 2007).

Apple made the switch to Intel processors in 2006. This means that instead of extremely slow emulation of Windows (e.g., Virtual PC), one has other, much better options for running Windows applications. One option is to run full-blown Windows, either shutting down OS X and booting into Windows via Boot Camp or else using a virtual machine environment (e.g., Parallels or VMWare Fusion, both of which are very good products).

However, you may wish to run just one or two Windows applications and not need or wish to have the overhead (and attendant security implications) of running a full Windows operating system. Fortunately, an open source project called Wine provides an environment where one can indeed simply run individual Windows applications.

Thus, using Wine, one can run TrueBasic under OS X on an Intel Mac. And some packages of wine (such as the one detailed below) will give you a nice double-clickable application to run from the Finder.

What you need to make this work

This setup was tested with Wineskin Winery 1.1 on Intel Macs running Snow Leopard 10.6.6 and 10.6.7 on a Core Duo MacBook Pro laptop, a Core 2 Duo iMac, and a Core i7 "Sandy Bridge" MacBook Pro laptop.

Wineskin Winery setup

The "Engine" and "Wrapper" are both stored in ~/Library/Application Support/Wineskin in your home folder.

Leave the Wineskin Winery window open.
Now let's create a "wrapper" for our TrueBasic application in Wineskin.

You will get three small windows with questions:

These are my 'recommended' answers to these questions, but you won't harm anything if you give the other answer.

You may now click "Quit" to exit Wineskin Winery.

Specific Wineskin setup for TrueBasic

Important background note about TrueBasic installer

The normal way that Wine (and thus Wineskin) expects you to set up an application is by running an installer, and indeed a setup.exe file for TrueBasic Bronze is made available on the TPMS web site.

The problem is that this setup.exe is a 16-bit executable that will lock up the Mac hard, such that the entire computer freezes (no mouse response, on-screen clock stops, force-quit won't work) and one has to do a hard shutdown (holding down the power key) to turn the computer off. Not good! This was true for at least 3 or 4 different versions and packaging of Wine that I tried.

However, I had a hunch that the actual TrueBasic application was a 32-bit executable which would run fine in Wine (especially since I had read of reports that it did indeed work).

So I ran the setup.exe on a real Windows computer, and made a copy of the "TB Bronze" folder which was created inside the Windows "Program Files" folder. Later I discovered that TrueBasic had installed two required dynamically loaded libraries (DLL files) on the Windows computer in C:\Windows\System which needed to be copied to the Mac.

I have combined all three of these elements into a zip file called "TrueBasic_items_for_Wine.zip" (827KB) which you can download from http://mrstreet.tpmsmagnet.com/.

Fortunately, Wine/Wineskin does permit you to simply copy an executable into place inside a wrapper you have created (so one does not have to run the installer).

folder view of expanded zip file

Expanded view of zip file

You thus need three items for a successful install:

The easiest way to get these files is to download "TrueBasic_items_for_Wine.zip" (827KB) from http://mrstreet.tpmsmagnet.com/.

After downloading, double-click on the zip file to expand it (if your web browser has not done this for you already). The expanded version will be in a folder of the same name (with spaces not underscores). You should now have a folder that looks like the window at right.

We need to copy these files into place, but since the wrapper you created up above is a Mac double-clickable application, the contents are hidden. Here's the procedure:

Now, at last, you are ready to double-click on the wrapper icon for the first time.

If you make a mistake or miss something after you have quit out of the above window, you can get it back easily enough:

Using TrueBasic on the Mac

Finally, you are ready to use your new wrapper!

To run your own programs from the "Open File" dialog box, go to the "Drives" pop-up menu in the lower right of the window and select "z:". This is your Mac hard drive. From there, navigate to the desired file.

You can write your programs in the editor that TrueBasic provides or you can use a Mac text editor (not a word processor or even Apple's Textedit) such as the excellent and free TextWrangler. Just make sure that the line endings are set to Windows (Find the popup-menu at the bottom of the TextWrangler window labeled "UNIX (LF)" and change it to "Windows CRLF").

You can use TextWrangler (or any other editor) to write the programs in the first place, but it appears you will have to use the built-in editor in TrueBasic to debug because changes in the file in TextWrangler are not known to an already-loaded file in TrueBasic.

 

Hopefully MCPS will switch to a programming language that is more platform-independent than TrueBasic, but in the mean time, I hope this is helpful to the Mac users!

Valid HTML 4.01 Transitional

Valid CSS!

David Friedlander
dpfriedlander (at) comcast.net
parent of a TPMS 6th grader
UNIX & Macintosh System Administrator
Astrophysics Science Division
NASA/Goddard Space Flight Center
Greenbelt, MD
7 April 2011