If you have a terminal program installed, like the macOS Terminal app, click on the above image to telnet to the Armageddon BBS. Clicking on the above image should result in your terminal/telnet client being launched/started on your computer, if everything is set up properly on your end. This is normal behavior, so don't be alarmed when your terminal/client runs.


Click or Tap Icons to Share! Thank you!           Return to Home Page

Hermes II BBS Source Code Compilation Tutorial


Copyright © 2015-2024 Bill Kochman

Published On :
March 14, 2015

Last Updated :
April 2, 2024

Purpose of This Guide

The purpose of this tutorial is to assist you in properly compiling the Hermes II BBS source code -- version 3.5.11 -- on Macintosh computers running recent versions of Mac OS X and/or macOS which no longer support Apple's Classic environment -- that is, the Applications (Mac OS 9) folder -- using the Terminal, the SheepShaver emulator and the THINK Pascal compiler. There are links to obtain all required tools lower on this same page.

Requirements

• A working installation of THINK Pascal 4.0.2 [4.5d4 and 4.5a1 will not work]
• A working installation of SheepShaver
• A copy of the Hermes II BBS source code

Preparation

Note: Some of the following steps may require that you provide your admin password. Simply do so.

• SheepShaver

This tutorial assumes that you already have SheepShaver installed on your Mac OS X or macOS hard drive. If you don't have SheepShaver installed yet, there are links further down on this same page where you can download different versions of SheepShaver which are compatible with your machine.

• THINK Pascal

If you already have THINK Pascal 4.0.2 installed in your Mac Classic environment -- that is, in your SheepShaver setup -- you may use it. However, in order to avoid any potential problems during the build process, it is advisable that you install a fresh copy of the same following these steps:
• Download the four THINK Pascal 4.0.2 disk images from the link that is found lower on this same page. The file is called THINK-Pascal-4.0.2-Disk-Images.sit

• Place the "THINK-Pascal-4.0.2-Disk-Images.sit" file -- via your Mac OS X hared folder -- into your SheepShaver environment where you have Mac OS 9.0.4 installed. You created this shared folder -- which for the purposes of this tutorial, we will assume that you have named Shared -- when you first set up SheepShaver. As you should know, this Shared folder acts as the gateway between SheepShaver's Classic environment, and Mac OS X's Unix environment.

• In your Mac OS 9.0.4 environment -- or whatever version of Classic Mac you are using -- extract the four disk images from the StuffIt archive -- [.sit]

• Simultaneously mount all four disk images on SheepShaver's desktop.

• Open the disk called THINK Pascal 1 and carefully follow the installation instructions which are found in the file called Installation THINK Pascal. You must have TeachText or SimpleText installed in your SheepShaver installation in order to properly see the images in these extracted files.

• When you have completed the installation, you should have the following six folders in the Development folder. You created the Development folder when you followed the instructions in the installation Read Me file:
MacApp 2.0 for THINK Pascal 4.0
TCL 1.1 Pascal Demos
THINK Pascal 4.0 Demos
THINK Pascal 4.0 Folder
THINK Pascal 4.0 Utilities
THINK Reference 1.0 Demo
Important: When you use the installer called THINK Pascal Utilities.sea which is found in the THINK Pascal 1 disk image, it will install a folder called THINK Pascal  4.0 Utilities. This folder name will have TWO SPACES before the 4.0. You must remove the extra space, as otherwise, you will be unable to fully convert and translate the Hermes II project files when you run the shell script in the Mac OS X terminal.

• Rename the enclosing Development folder exactly to THINK Pascal 4.0.2. This is likewise an important step, as otherwise, the shell script will not be able to locate your THINK Pascal installation on the Mac OS X side.

• Drop the renamed THINK Pascal 4.0.2 folder onto the Unix icon on your SheepShaver desktop. This will make the THINK Pascal 4.0.2 folder available in your Shared folder on the Mac OS X side.

• Now go to the top level of your Mac OS X hard drive. This is where you will find the following folders:
Applications
Library
System
Users
In that same location, create a new folder called Applications (Mac OS 9). While you don't really have Apple's Classic environment installed on your computer, nevertheless, the shell script you are going to use needs to be able to find this folder.

IMPORTANT: In more recent versions of macOS, Apple does NOT allow users to create new folders at the top level of their hard drive. As such, you need to do it in a roundabout -- but easy -- way. Please click here for instructions.

• Drag the THINK Pascal 4.0.2 folder which you just placed in SheepShaver's Shared folder, into the newly-created Applications (Mac OS 9) folder.
With this last step, your preparations are now complete, and you are ready to work with the Hermes II source code in the Mac OS X terminal. Congratulations!

Converting and Translating Hermes II GitHub Files

• Download the Hermes-3.5.11-Source-Code.zip archive from the link that is provided lower on this same page. The link is called Hermes 3.5.11 Source.

• Once you have downloaded the Hermes-3.5.11-Source-Code.zip file, place it in your Home directory.

• Launch the Terminal app -- it is located in your /Applications/Utilities folder -- and use the following command -- followed by hitting your Return key -- to unzip the archive in your Home folder:

unzip Hermes-3.5.11-Source-Code.zip

• Doing the above will produce a new uncompressed folder in your Home directory called HermesBBS-main.

• The next step is to change directories so that you will be inside the HermesBBS-main folder. This is necessary so that you can run the shell script that is located there. So, type the following command at the Terminal and hit the Return key:

cd HermesBBS-main

• Now it is time to run the shell script. It will do the following things in a matter of a few seconds. Let me tell you what they are before you actually run the script:
It will create a new folder in the HermesBBS-main folder called Working.

It will convert the Hermes.proj.r and Hermes.r files and place them in the Working folder.

It will translate all of the files that are found in the Includes and the Source folders, and place them in the newly-created Working folder.
• Now that you know what the shell script will do, let's do it by typing the following in the Terminal. Don't forget to hit the Return key after typing the command:

./prepare.sh working

• Before continuing, it would be good if you understood why all of these steps are even necessary. I emailed Michael Alyn Miller regarding this issue, and he wrote back to me with the following comments:
"Git doesn’t support Classic Mac OS; it pretty much only works on UNIX and Windows. This means that you have to work with the Git repository (the contents of which you have in that zip file) from a UNIX environment.

The problem with working with the files in a UNIX environment is that they are then formatted entirely differently from what works in a Classic Mac OS environment! UNIX files end in LF (\n), but Classic Mac OS files end in CR (\r). UNIX text files are in UTF-8, but Classic Mac OS is MacRoman. UNIX has no concept of resource forks and so the resource fork data for Hermes on GitHub has to be stored in .r (Rez) text files. UNIX has no concept of file/type creator, but you need the right file type and creator for things to work in Classic Mac OS. 'prepare.sh' basically fixes all of these problems for you, but it only runs in a Mac OS X terminal that has the right stuff setup."

In short, Michael not only had to do a lot of work in order to make the original Hermes II source code files compatible with the GitHub website, so that they would be available to adventurous souls around the world -- such as you and I -- but he also had to provide a way to convert those files back into something that is recognized by and compatible with THINK Pascal, once we downloaded the source to our own computers.

It kind of reminds me of how a modem works. It is a modulator/demodulator device. It converts signals back and forth so that both telephone lines and computers can use the data. So in my understanding, that is more or less what the shell script does as well.

• Now, if you have done everything properly and exactly as I have explained it to you in this tutorial, upon entering the ./prepare.sh working command at the prompt, the Terminal app will then proceed to do everything that I described to you earlier. While all of that is happening, it will display the following information in the Terminal window. If you see anything other than the following, something is probably wrong somewhere, and you are up the creek! :)



Moving the "Working" Folder to SheepShaver

• Assuming that everything has gone well for you, and there is not a single error on your screen, let us proceed. Open the HermesBBS-main folder, and then copy the Working folder within it over to SheepShaver's Shared folder. You can use the original Working folder if you like. However, I prefer to just copy it so that I still have a backup remaining in the HermesBBS-main folder.

• Next, go to your SheepShaver desktop, and open the Unix drive. You will now see the copy of the Working folder that you just placed there via the Shared folder.

• Open SheepShaver's startup drive, and then open your main THINK Pascal 4.0.2 folder. This is where the following six folders are located:
THINK Pascal 4.0.2 <----- Go inside here!
    MacApp 2.0 for THINK Pascal 4.0
    TCL 1.1 Pascal Demos
    THINK Pascal 4.0 Demos
    THINK Pascal 4.0 Folder
    THINK Pascal 4.0 Utilities
    THINK Reference 1.0 Demo
• Next, drag the Working folder from the Unix drive into the now-open THINK Pascal 4.0.2 folder. When you are done, your folder hierarchy should look like this:
THINK Pascal 4.0.2
    MacApp 2.0 for THINK Pascal 4.0
    TCL 1.1 Pascal Demos
    THINK Pascal 4.0 Demos
    THINK Pascal 4.0 Folder
    THINK Pascal 4.0 Utilities
    THINK Reference 1.0 Demo
    Working

Running the THINK Pascal Compiler

• Now you are ready for some serious business! :)

• Open the Working folder and double-click on the Hermes.proj project file. Doing this will immediately launch the THINK Pascal compiler, and will display the Hermes.proj project window, which will be populated with all of the necessary resources and libraries.

• Click on the Build Application option under the Project menu, and when prompted, choose a location for the newly compiled Hermes II application. By default, THINK Pascal will select the top level of SheepShaver's hard drive, which is fine.

• Within seconds, you will have a copy of the latest build of the Hermes II application. Bravo! Well done! No sweat, right? :)

• Let's tidy up a bit now. Select Close Project under the Project menu, and then shut down the THINK Pascal compiler.

• For safe-keeping, make a backup copy of your new Hermes II application, compress it, and then store it in a secure location, either on your Mac OS X hard drive, or even on some external medium.

Replacing Your Hermes II Application

• Assuming that you already have a previous version of the Hermes II BBS package running on your virtual machine -- meaning SheepShaver -- when you are ready, do the following:
1. Shut down Hermes II if it is running.

2. Compress your current version of the Hermes II app -- that is, the one you have been running up until now -- just to avoid any possible confusion. Only compress the app itself, and not any of the folders.

3. Place the new version of Hermes II at the top level of your Hermes II installation where your current Hermes II app is already located.

4. Put your current version of the Hermes II app -- that is, the one you have been running up until now -- in the trash. Don't worry. You've already made a compressed copy of it, right?

5. Launch the new version of the Hermes II application.

6. Log on to your new Hermes II BBS and check for any possible problems.
• Congratulations! Your new version of the Hermes II BBS software package should now be running smoothly without any hiccups. Good for you! :)

Avoid the Headaches!

Important: Please note that if you decide to change the name of your main Hermes II folder in order to reflect the new version number that you are running, you will break all of the paths to your file transfer directories. Thus, when you reboot Hermes II, you will hear a lot of beeps, and get a window full of error messages. If you only have a few file directories on your Hermes II BBS, it is no problem to fix the paths under the Setup/Transfers menu. However, if you have dozens of areas and directories on your BBS, it will be a major headache to fix them all. So think about this before you decide to change the name of your main Hermes II folder on a whim.

The Hermes II BBS Coding Challenge!

Wouldn't it be great if some THINK Pascal coding genius, or perhaps a group of coding geniuses, who have the time, interest and patience, decided to overhaul the Hermes II BBS code base so that it can run natively on the latest version of Mac OS X? Are you prepared to let Macintosh BBSing die? Are you prepared to let Hermes II wither away, die and go silently into the night without the least bit of a whimper?
It has been years now since Michael Alyn Miller made the Hermes II source code open source, and even took the time to upload it to the GitHub repository. Sadly, there it has languished, untouched, and unused, until now. Do you miss the good old days of Macintosh BBSing? Wouldn't you like to see Hermes II with a modern interface? Will you make a difference?


Click or Tap Icons to Share! Thank you!           Return to Home Page


Tools to Compile Hermes II BBS Source for Mac Classic


Click the blue link on the left side to either go to that page, or to download that particular file.

Hermes II Compilation: Online detailed guide to compile Hermes II BBS source code on a macOS machine with SheepShaver -- or Qemu or Basilisk -- and Mac Classic installed.
Hermes II 3.5.11 Source: Version 03-16-2024 - Latest source code for compiling the Hermes II 3.5.11 binary from Michael Alyn Miller. Must be converted on the macOS side first.
Hermes II 3.5.11 Working Folder: Version 03-16-2024 - Hermes II 3.5.11 "Working" folder. Ready to be compiled with THINK Pascal. Already converted by Michael Alyn Miller.
Think Pascal 4.0.2: Disk images to install THINK Pascal 4.0.2 in SheepShaver, Qemu or Basilisk.
ShrinkWrap 2.1: You may need ShrinkWrap 2.1 to extract some files in Mac Classic.
VirtualCD Imager 1.0d0: You may need VirtualCD Imager 1.0d0 to extract some files in Mac Classic.
Floppy Disk Image: You may need this Floppy Disk Image to create images in Mac Classic.
Hermes II BBS: GitHub: Repository for Hermes II BBS source code.
Hermes II 3.5.2 Documentation: Hermes II 3.5.2 documentation in PDF format.
Public Address Stripped: Stripped down version of Public Address BBS to preview your ANSI art or to telnet.


Armageddon BBS Tutorials


These are a set of eight tutorials related to my Hermes II BBS setup which I wrote back in 2015. A lot has changed in the computer world since that time. Thus, while much of the information which is contained in these tutorials is still relevant, there may be bits and pieces here and there which no longer apply to a particular situation or setup.

Main Menu Tutorial: Step-by-step guide to using Armageddon BBS main menu commands.
Posting & Editing Msgs: Step-by-step guide to posting and editing messages on Armageddon BBS.
Transfer Menu Tutorial: Step-by-step guide to using Armageddon BBS file transfer menu commands.
Download Files Tutorial: Step-by-step guide to downloading files on the Armageddon BBS.
Fix Flipping Screens: Step-by-step guide to fix flipping screens on the Armageddon BBS.
Choose a PC-ANSI Font: Step-by-step guide to choosing a PC-ANSI font for the Armageddon BBS.
OS X Terminal Settings: Step-by-step guide to manually adjust macOS Terminal app for BBSing [HTML]
VirtualBox Setup: Detailed guide to set up VirtualBox, Mountain Lion and SheepShaver.
Files Areas and Files: Armageddon File Areas and Files List 04-02-24. [TEXT]


Assorted Armageddon BBS Images


Logon Sequence Map: This image shows you what happens after you log on to the Armageddon BBS.
More BBS ANSI Screens: These are ten 2015 PC-ANSI graphics logon screens from Armageddon BBS.
VirtualBox-SheepShaver Screenshots: Two 2015 screenshots of my VirtualBox, SheepShaver, Mac OS 9.0.4 setup.
Armageddon BBS Tutorials Header Images: These are four 2015 header images I used on some of my Armageddon BBS tutorial pages.
MuffinTerm and macOS Terminal Comparison: This page shows seven images which reveal how the Armageddon BBS looks when viewed in the free macOS terminal/telnet app called MuffinTerm, and in the built-in macOS Terminal app when I log on locally.


Click or Tap Icons to Share! Thank you!           Return to Home Page


Emaculation Support Forums


If you need help setting up SheepShaver, Qemu or Basilisk II so that you can run Mac Classic OS and your Hermes II BBS on a modern Macintosh, these forums are the place to go. They will offer you all the assistance you need, as they did with me.

SheepShaver Forum: Help to set up the SheepShaver emulator on macOS, Windows and Linux.
Qemu Forum: Help to set up the Qemu emulator on macOS, Windows and Linux.
Basilisk II Forum: Help to set up the Basilisk emulator II on macOS , Windows and Linux.


Qemu Emulator for macOS


Click the blue link on the left side to download that particular file. If you have any questions or problems with installing and using Qemu, please refer to the Emaculation Qemu Forum. People such as Cat_7 and Ronald P. Regensburg will be happy to help you with installing Qemu on your machine.

Qemu System PPC 8.2 for macOS - Virtio: 20-01-2024 Qemu System PPC 8.2 for macOS with sound and virtio support. Virtio options require a Mac OS 9 guest. Experimental build.
Qemu System PPC 8.2 for macOS - Screamer: 20-01-2024 Qemu System PPC 8.2 for macOS with sound support. Screamer version. Stable build.
Qemu System PPC 7.1 for macOS - Pre-Screamer: 29-05-2022 Qemu System PPC 7.1 for macOS with sound support, 60Hz screen refresh and FPU speedup. Pre-Screamer version.

IMPORTANT: Please note that using Qemu does require that you have a compatible ROM file, as well as a retail version of a Classic Mac OS install CD, or else an install CD disk image. Due to legal reasons, I am not able to provide them here. However, Google is your friend, and if you search hard enough, you WILL find that which you seek.

NOTE: After using both Sheepshaver and Qemu, even though it is a little more complicated to set up, I recommend using Qemu over Sheepshaver, because even though Qemu is not as established as SheepShaver, it is a lot more stable. Both my BBS and Hotline server run simultaneously on it.


SheepShaver Emulator for macOS


Click the blue link on the left side to download that particular file. If you have any questions or problems with installing and using SheepShaver, please refer to the Emaculation SheepShaver Forum. People such as Cat_7 and Ronald P. Regensburg will be happy to help you with installing SheepShaver on your machine.

SheepShaver 2.5.0 2024-02-28 Universal: Universal version - Will run natively on both Intel Macs and Apple Silicon machines. Recommended for macOS 10.13 (High Sierra) through macOS 14 (Sonoma).
SheepShaver 2.5.0 2023-05-12 Wrapper Version: Wrapper version - This Mac OS X / macOS version of SheepShaver does NOT require that you have VirtualBox or another emulator on your Mac OS X or macOS machine.
SheepShaver 2.5.0 2022-09-13 Universal: Universal version - Will run natively on both Intel Macs and Apple Silicon machines. Recommended for macOS 10.9 (Mavericks) through macOS 12 (Monterey).
SheepShaver 2.5.0 2019-05-04 64-Bit Intel: 64-Bit Intel version - Recommended for Mac OS X 10.7 (Lion) through macOS 10.12 (Sierra).
SheepShaver 2.4.0 2018-07-09 32-Bit Intel: 32-Bit Intel version - Recommended for Mac OS X 10.4 (Tiger) through MacOSX 10.6 (Snow Leopard).
SheepShaver 2.4.0 2014-02-01 Universal Binary: Universal Binary version - Recommended for PPC Macs running OS X 10.4 (Tiger) and later.
SheepShaver 2.3.0 2006-05-14 32-Bit PPC: 32-Bit PPC version - Requires that you have VirtualBox or another emulator on your Mac OS X or macOS machine.

IMPORTANT: Please note that using SheepShaver does require that you have a compatible ROM file, as well as a retail version of a Classic Mac OS install CD, or else an install CD disk image. Due to legal reasons, I am not able to provide them here. However, Google is your friend, and if you search hard enough, you WILL find that which you seek.


Basilisk II Emulator for macOS


Click the blue link on the left side to download that particular file. If you have any questions or problems with installing and using Basilisk II, please refer to the Emaculation Basilisk II Forum. People such as Cat_7 and Ronald P. Regensburg will be happy to help you with installing Qemu on your machine.

28-02-2024 Basilisk II Universal Build: Will run natively on both Intel and Apple Silicon. Recommended for macOS 10.13 (High Sierra) through macOS 14 (Sonoma).
01-08-2021 Basilisk II Universal Build: Recommended for Mac OS X 10.9 (Mavericks) through macOS 10.12 (Sierra).
04-05-2019 Basilisk II Intel Build: Reommended for Mac OS X 10.7 (Lion) through macOS 10.12 (Sierra).

IMPORTANT: Please note that using Basilisk II does require that you have a compatible ROM file, as well as a retail version of a Classic Mac OS install CD, or else an install CD disk image. Due to legal reasons, I am not able to provide them here. However, Google is your friend, and if you search hard enough, you WILL find that which you seek.


Other Tools and Resources


Please telnet to my old-school PC-ANSI based BBS called "Armageddon BBS", or use a Hotline client to visit the "Armageddon Server" on Hotline.

Underline HL Client PPC: Version 1.9.5 - Use on Mac Classic to connect to Armageddon Server on Hotline.
PPC Hotline Client: Version 1.9.2 - Use on Mac PPC to connect to Armageddon Server on Hotline.
PPC Hotline Server: Version 1.9.1 - Create your own Hotline server with this Carbon/PPC software.
Underline HL Client: Version 1.9.5 - Use on Windows to connect to Armageddon Server on Hotline.
Telnet on Windows: This images shows how to start telneting on Windows 7 and 8.
Telnet BBS Guide: How To Access Telnet BBS Systems [mainly for Windows]


Click or Tap Icons to Share! Thank you!           Return to Home Page