Autoarchaeology Part 3: Mac software

Last week I found out my first web sites were still online, so I've been digging through the downloads to see what I was working on when I was 12. (Part 1, Part 2)

Although I spent most of my coding time making games, I also experimented with making “useful” programs. Since I was 12 years old and writing in various dialects of BASIC, my idea of “useful” a bit off the beaten path. I was dedicated, though, so in almost every case I wrote a very, very, very comprehensive README file so you would know exactly how to use my garbage software.

Visual MacStandardBasic

I made all of these in Visual MacStandardBasic, a tool reminiscent of modern Interface Builder with a late-'90s BASIC dialect spin. The source code is still available, which is pretty cool.

Typical button title for the time period

StephenEdit (December 2000)

Read Me

StephenEdit

Introduction

StephenEdit is a simple HTML editor. It was highly modified from an example that I got from www.squirrelsw.com. It could let you create an entire web site in less than an hour, but there are a few things that you need to know first.

What is HTML?

HTML stands for HyperText Markup Language. Don't even ask me what that is supposed to mean. This program will sort of write it for you.

Tutorial

First, do what the buttons say. Click on the one that says “Click me first thing”. It will give you the basic beginning HTML. In it it will have a tag that says <META NAME="KEYWORDS" CONTENT="Put keywords separated with commas here">. Where the message is, you put in keywords that will let your page pop up in a search by one of those words if you register your page with a search engine.

Commands

Add Link
This will add a link to your page.

Add Image
This will add an image to your page. <IMG SRC="toaster.gif"> name of image∆

Indent
This will indent the text after it.

Margin
This will add a margin about 2 cm wide.

Next Line
HTML doesn't skip to the next line when you do in an editor or word processor. These tags must be used to go to the nex line.

Table
If you want your page to be stationery instead of rearranging itself every time you resize the window, use these tags.

          <TABLE WIDTH=200 BORDER=2>Text for table here</TABLE>
Width of table in pixels∆         ∆Border width

Bold, Italic, and Underline Well duh, kind of obvious, isn't it?

Center
Use centered text

Font
Change the font

Horizontal line
Makes a line like the one below across your page


The “Text Window” This window has text sizes in it.

Looking at your web page

If you want to see what your web site will look like, drag it to the icon or alias of your web browser.(like Netscape, or Internet Explorere) When the icon of the browser goes dark, let go of the mouse. Your browser should open your web page as if it had been saved from the browser. Another way is to go into your browser and select “Open” from the File menu. If you want to save your page as a document that will open with your browser automatically, just select “Save As...” from the File menu.

Extra commands

StephenEdit also lets you add your own commands. Here are a few:
<FONT COLOR="your color here">Colored text here</FONT>
<FONT SIZE="whatever number size">Sized text here</FONT>

Tips and Tricks
Copy and Paste come in handy. If you are trying to learn HTML, just look at the commands.

Questions and comments go to wsj@mac.com

Notes

Output

FileReader (Feb 2001)

I used a GIF as an example

Read Me

File Reader ReadMe

What is File Reader?

File Reader is an application that reads the data forks of files. In other words, it can open just about any file kind of like SimpleText, except it's got a lot of extra hexadecimal junk. File Reader will open ALMOST ANYTHING with a data fork, as lonk as they aren't things with only numbers in the left column.(you can check if you have ResEdit.)

I AM EMAIL HUNGRY!!! Email me at: srjohnson@usa.com or visit my web site at: imaciscool.htmlplanet.com

What does this button do?

Open

This will give you an open dialog where you can choose which file to open.

Export to ttxt

“ttxt” is just the four-letter file code for SimpleText files. It saves the file (and whatever changes you have made to it) into SimpleText format and will put it in File Reader's Folder.

Replace Text/Add To Text

When new files are open, you can either have File Reader replace the current text or add to it.

Type/Creator

Type is the file type. Creator is the file signature of the program that created it.

Default is set to SimpleText text file, but if you know the codes for other applications, you can change it.

What Data Forks Reveal

A lot of saved source files, saved games, and compiled applications have a lot of interesting data. Sometimes it's very interesting, as in revealing codes and all that. This document contains guides to some of those things.

By the way, when I say,“Skip a few lines”, that means that I don't know what the stuff that fills those skipped lines is.

GM Source Files

2018 Steve: I was trying to document the data fork formats of GameMaker files.

Game version number
file code,GamD

Skip a few lines...

About Box Text

Skip a few lines...

“top-left button name”,“top-middle button name”,“top-right button name”,“bottom-left button name”,“bottom-middle button name”,“bottom-right button name”

Saved GM Game Files

Name of Creator Application

"RECENTCARD"  
Most_recent_card_#  
"BARVALUE"  
Bar_value  
"COUNTER"  
Counter_value  

After that come all of the game's variables in quotation marks and their values beneath them.

Somewhere in there is the text last put in the text field via the PRINT statement.

GM Games

App Name,four_letter_file_code,GamD

Skip a few lines...

"top-left button name","top-middle button name","top-right button name","bottom-left button name","bottom-middle button name","bottom-right button name"

This repeats for every card.

Visual MacStandardBasic Source

2018 Steve: I was trying to document the data fork format of Visual MacStandardBasic project files.

MacStandardBasic Form Version version_number

AppName=Executable Filename
Target=Library(example=Standard PPC Library)
MemMin=Minimum Memory Requirements
MemPref=Preferred Memory Requirements
FormCtr=?
ModuleCtr=?
Form=?

Visual MacStandardBasic Forms

MacStandardBasic Form Version MSB_version

This sets the form parameters.

FormBegin
      Name=Form_Name
      Title=Form_Title
      Left=distance_from_left_side_of_screen
      Top=distance_from_top
      Width=width
      Height=height
      Sub Proc.=Form Sub Procedure
      Visible=whether_visible(1/0)
      Style=window_style_number
      Font=default_font
      FontSize=default_font_size
      FontStyle=default_font_style_number
      Show Grid=whether_show_grid(1/0)
      Grid Snap=whether_grid_snap(1/0)
      Grid Size=grid_size
      Min. Width=minimum_control_width
      Max. Width=maximum_control_width
      Min. Height=minimum_control_height
      Max. Height=maximum_control_height
      AutoCenter=whether_auto_center(1/0)
      ForeColor=R G B
      BackColor=R G B
FormEnd

This part repeats for every control on a form.

ControlBegin=NameOfControl
      Name=control_name
      Text=control_text
      Left (x)=distance_from_left_side_of_form
      Top (y)=distance_from_left_side_of_form
      Width=control_width
      Height=control_height
      Sub Proc.=sub_name
      Visible=whether_visible(1/0)
      Value=control_value(1/0)
      Enabled=whether_enabled(1/0)
      Font=control_font
      FontSize=font_size
      FontStyle=font_style_number
      ScrollBar=whether_has_scrollbar(1/0)
      Read Only=whether_read_only(1/0)
      Opt20=?
      Frame=?
      ForeColor=R G B
      BackColor=R G B
ControlEnd

This is the startup procedure.

Start
    Dim A

    CreateTheMenus
    Form Form1

    A=0
    Do While A=0
    Loop
Finish

This repeats for every sub procedure.

Sub CreateTheMenus( )
    MenuApple
    MenuAddItem 1, "About Application", "", AboutTheApp
    MenuDesk
    MenuAdd 2, "File", None
    MenuAddItem 2, "Quit", "Q", QuitTheApp

EndSub

Notes/Bugs:

  • Sorry that it doesn't have a save feature, but I couldn't get it to work. Maybe in future version... But you could export it to the same type and creator and then copy the resources to it with ResEdit!
  • If you don't have ResEdit, get it from Apple's web site, developer.apple.com
  • Once you open something in File Reader, it isn't closed until you quit.
  • I don't know why, but sometimes, instead of opening a file, the text area is cleared.
  • Wondering what GamD is? It's GameMaker's file signature.
  • For some reason, exported files are changed to “TEXT” format instead of the specified one. This can be fixed in ResEdit. If you're going to do this, delete the “RMAP” resource.
  • File Reader can open SimpleText files and not have any extra junk! This means that SimpleText wouldn't look at it any differently if you changed any file's type to TEXT or ttro and its creator to TTXT. This program is just a quicker way.
  • I cheated big time in War of Shadows with this!

2018 Steve: War of Shadows was someone else's GameMaker game.

Daphctarcs (March 2001)

Documentation

Daphctarcs

Formerly known as The Third Attempt

By Stephen

imaciscool.htmlplanet.com srjohnson@usa.com

I'm sure you're wondering where I got the name. It is “Scratchpad” spelled backwards. Dahpctarecs is a drawing program with all the normal features of any drawing program. (Minus the paint can, unfortunately. It can't save, either.) Use the navigation bar at the bottom of the screen to browse through the chapters.

File

Quit

Sort of obvious, eh?

Makeovers

Everything in this menu will have an effect on the entire graphics window.

Erase All

This erases everything in the graphics window.

Invert All

Everything in the graphics window is inverted. (White to black, etc.)

Inverted Quilt

10-pixel-inverted-squares will be layed diagonally, filling up the whole window.

Options

Pen modes, text scrollbars on/off and paint fill on/off.

Text Scrollbars:

Textboxes can have scrollbars. You can turn them on and off.


Shape Fill:

The options just below this label can toggle filled-in shapes.

Pen Mode:

There are many pen modes, but these are the only ones useful to this program.

Normal

Normal, non-see-through pen mode.

Invert

When using the pen tool, the pen updates as fast as it can, so using this pen mode with the pen tool can appear scrambled, especially black and white. (See below.)

Illustration

With the line tool, there is no scrambling. Pen mode is not the same as fill mode and will not work with filled-in shapes!

Eraser

Erasers can be useful.

Tips

  • Dahpctarcs can't save, but press Command-Shift-4 and then drag a box around the area that you would like saved. The computer will make a snapshot noise, and the picture will be saved as “Picture 1 (or 2, 3, etc.)” in your hard drive folder.
  • To undo a full invert or inverted quilt, just invert all again!
  • Inverts can be used to get colors that are not available on the menu.
  • If you use any invert tool that fills the whole screen, doing it twice in a row will undo the invert affect.

Bugs

  • Sometimes, a color will revert back to white on its own. THIS IS NOT MY FAULT!!! 2018 Steve: It was my fault.

  • Whenever an area of the drawing window is covered up and then shown again, the entire process that you went through to draw your picture will be repeated as fast as the computer can draw. This can be taken as a bug or as a feature. THE COMPILER DID IT!!!

  • When you click on a new color or pen size, the active tool is deactivated.

  • If you hold down a tool button for too long, Daphctarcs draws a line or a dot to the right of the cursor, inside the drawing window.

Things that I really wish I could add, but can't

  • Saving

  • Copy/Pasting with pictures(works with text)

  • Non-flashy inverting pen

Stephen's Movie Viewer (April 2001)

Read Me

Stephen's Movie Viewer

Everything You Need to Know About Stephen's Movie Viewer

This is pretty easy. All you have to do is click “Play Movie” and you will be asked which movie. Type the name. Then click okay. If you press Return instead, the movie name box will go to the next line.

Now your movie will be played in a new window. To close it, just hit “Close Movie” to close your movie. If you try to open a new movie while one is already running, weird things will happen. I will try to include more than one movie running at the same time in later versions.

Note: Only movies that are in this application's folder may be played. I'd fix this if I could, but I can't. That's one reason why I wouldn't suggest using this player as your main one.

Gilderoy the Goldfish (April 2001)

Where are his fins?

Glideroy is a goldfish who talks when you mouse over him.

Phrases: * What's that slimy thing on your shoulders? Oh, it's your head. * What's that behind you? * Stop treating me like a minnow! * I'm too good to be on your computer. * I love you, you love me, we're a fishy family. * Oh no! I'ts a runaway toaster! Run! * If you appreciate fishing, I'm never talking to you again! * The meaning of the universe is pi-r-squared. * If you're happy and you know it clap your hands! * Go jump into the swirling black void that is your head. * Oh no! A virus! Somebody help me!

ASCII Machine (April 2001)

1.0 Read Me

ASCII Machine 1.0

By Stephen srjohnson@usa.com

This program just lets you look up characters’ ASCII values and values’ characters. To look up a character’s value, type it in the upper text box in the “Look Up Char” window. Then click “Look Up.” The character’s value wil appear in the lower box. The same applies for the other window.

Version 1.1 is going to have a cooler look and will be able to display a full ASCII chart. I have it ready, but I have to get permission from the author of ButtonMaker before I release it.

PageStarter (April 2001)

Read Me

PageStarter 1.0

By Stephen Johnson of iMac Island Software and Stratus Software

(Too many titles!)

PageStarter is a utility for people who already know HTML, but are tired of typing in the HTML to start off pages. This program will write the HTML for you, and all you have to do is enter in some text and click a few buttons!

Buttons/Fields:

Page Title: This fills in the <TITLE> tag.

Background: Select whether the background is a plain color or an image.

Color/Image Name: The name of the color or picture to be used as a background.

Alignment: Make your page left-aligned, centered, or right-aligned.

Page Heading: PageStarter will take the text from this field, put it in <H1> tags and stick it at the top of the page.

Opening Text: You can type some text to start off your page, but it will only accept 100 characters.

Go!: Click this button to have PageStarter display your HTML in the righthand box.

You can now use Cut, Copy, and Paste to edit the HTML in the field. I’ll try to have it be able to save to a file in future versions, but for now you’ll just have to copy the HTML in the field and paste into your HTML document.

FreeStuff

(These are some AppleScripts I made while playing around with Smile.)

FreeStuff v1.0

By Stephen

What is FreeStuff?

FreeStuff is the free alternative to DropStuff and StuffIt Expander. It supports drag-and-drop, but unfortunately, only drag-and-drop. You cannot open a file from within the application.

All you need to use FreeStuff is the “StuffIt Commands” scripting addition. Just make sure that “FreeStuff ƒ” is on the desktop, or the installation will not be successful. If the installer doesn’t work, or if you’re running Mac OSX, put “StuffIt Commands” wherever you put scripting additions. (In OS 8+, it’s the Scripting Additions folder in the System folder.)

What is included with this package?

FreeStuff v1.0

Just drag and drop files onto it, then choose your format. Right now, FreeStuff can’t do Zip, BZip, or UUEncode formats because I’m having problems with them. You can Stuff, BinHex, or MacBinary encode them. Stuffing decreases the file size, but judging from some tests I’ve run, I don’t think BinHex or MacBinary really decrease the file size, just prepare it for the internet.

ExPand v1.0

ExPand is just like StuffIt Expander, except it has a MUCH smaller file size(only 4k!).

DADDIM v1.0

DADDIM stands for Drag-And-Drop Disk Image Mounter. I haven’t been able to test it, because I have no way to make disk images and don’t have any on my drive! If you find any kind of error in this program, I need to know about it!

StuffIt Commands

by Leonard Rosenthol

StuffIt Commands is a Scripting Addition that allows you to have direct access to the StuffIt Engine and compress or decompress files in any format that StuffIt can.

Installer

The Installer will install StuffIt commands for you. (see second paragraph)

Contact

Email:
srjohnson@usa.com

Stratus Software
stratus.iwarp.com

iMac Island Software
members.home.net/sonpreach

Personal Site (Hasn’t been updated in forever, but there’s still some good stuff on it) imaciscool.htmlplanet.com

These programs were all made using Smile 1.8.0 with AppleScript 1.4 and compressed using FreeStuff v1.0.

FinderQuitter

Read Me

FinderQuitter 1.0

By Stephen

FinderQuitter is a little app that lets you quit the Finder to free up RAM. If you don’t know what I’m talking about, RAM (memory) is stored in blocks. If there is something in between two large blocks of memory and a game needs a lot of RAM, it won’t be able to have enough memory. That’s when you should use FinderQuitter will quit the Finder, which is usually what is in between blocks of memory.

Daphctarcs 2 (November 2001)

Can't even spell the name right now that I'm almost 30

Read Me

Daphctarcs 2.0

By Stephen

Tools

Pen
Comments:

Crazy Pen
Comments: It's the same as the pen, but it's got wacky colors.

Dots
Comments: Draws a trail of dots behind your cursor. The colorful one draws a colorful trail of dots behind your cursor.

Line
Comments:

Eraser
Comments:

Really Crazy Pen
Comments: The pen...but crazier and harder to describe. You'll have to try it.

Text
Comments: Drag a rectangle and a box of text appears that you can type in. The box will always be there. If you try to draw over it and click there again, the box will pop to the top. It will keep doing this until you select the “Clear All Text” menu. You can turn the scrollbar on and off using the option in the bar under the drawing window.

Beacon
Comments: You draw a circle (see the Circle tool) and Daphctarcs draws five circles around it, each one bigger than the last.

Square Beacon
Comments: This is just like the circular one except with rectangles.

Rectangle
Comments:

Circle
Comments: This is NOT the Ellipse tool! You click the mouse where you want the center of the circle, then drag outward to make it bigger. Don't mix this up with the Ellipse tool. If you do, you'll end up with your whole graphics window filled with one color because you've made your circle too big.

Ellipse
Comments:

Line Spray 1
Comments: Draws random lines coming out from your cursors. The colored one changes colors (like the Crazy Pen tool), but the black one doesn't.

Line Spray 2
Comments: Draws random lines, but they are all within 40 pixels of your cursor.

Options

The options are in a little bar just below the paint window.

Delay:
If you want the line sprays to go slower, or you just want to watch the Checkerboard and Invert effects go slower, than make this number larger.

Pen Size:
This will make the pen bigger. All lines and dots will be drawn thicker if this value is bigger.

Pattern #:
The Macintosh OS has many patterns stored in itself. I was too lazy to figure out which number goes with which pattern, but I do know that normal black is 1. Any pattern number below 1 is random every time Daphctarcs launches, probably because you're not supposed to do that.

Text Scrollbars:
As described earlier in this document, text boxes can have scrollbars or not. This option turns them on and off.

“Checkerboard” effect: It inverts every other square in the graphics area.

“Invert” effect: It inverts the whole graphics window. (Black to white, white to black, etc.)

Windows

Upper Left

These are all the tools.

Lower Left

This is the color selection bar. Click “Custom Color” to enter your own RGB value.

Upper Middle

The Paint window.

Lower Middle

This bar has the options and effects.

Tips and Tricks

  • If you collapse the Paint window and uncollapse it again, you will get a replay of everything you have done since you last selected the “Clear All” menu. This could either be a bug or a feature. I didn't put it there, but it's cool anyway.
  • If you create a new text box, the text will be the same color as the main color.
  • If you really want to save your work, you can take a screenshot by pressing Command-Shift-4 and dragging a rectangle around the area that you want saved. It will be saved directly to your hard drive as “Picture 1,” or any other number, depending on how many screenshots you have taken.

Bugs

  • After using the “colorful” tools, the main color will be reset to black. I put this in because before, the color would be random.
  • Don't overdo the replay. If you go on for too long, you will get a “Memory Allocation Error.”
  • When you use some tools for the first time, you will be prompted with a dialog box. I have no idea why it does this, and you should just click the Cancel button.

Contact

Stratus Software
http://stratus.iwarp.com

Email
bytebouncer@yahoo.com

iSketch (November 2001)

Background music

That's right, background music!!!

Read Me

iSketch v1.0

By Stephen

What the heck is iSketch?
iSketch is a virtual Etch-A-Sketch with way too many features.

Why would I want a virtual Etch-A-Sketch?
I don't know.

What does it do?
A lot.

How to Use iSketch

Controls
Of course, you could always use the simple little detail controls, but you can also use the arrow keys or the “Etch-A-Sketch” keys: A-S and :–“. A moves down, S moves up, : moves left, “ moves right.

Customization

Select “Preferences” from the File menu for these options:
Set Background/Line Color—You can change line color and even the background color (if there is no background image).

Pen Size—You can change the size of the line.

Pen Pattern—This should be a number from 0 to 38. I didn't feel like displaying all the patterns for you so you'll have to find out which ones are which. 0 is just a random collection of pixels every time you start up iSketch.

Pixels Per Move—You can make your line “jump” this many pixels when you move.

Pen Mode—Make you line into an eraser, normal pen, or super-cool invert tool.

The File Menu

Clear All—Erases the background image and drawing from the main window.
Clear Graphics—Erases your drawing from the main window.
Restart Music—Starts the background music over again. The music controller is in the Detail Controls window.
Preferences—Described above.

Other Stuff You Should Know

  • You can change the background music and image by replacing “Background Image” and “Background Music” with your own stuff.
  • By deleting, moving, or renaming the background image, it will not show up and you will have a blank white window. By doing this you can use the Background Color feature.
  • By deleting, moving, or renaming the background music, you will have eliminated it from iSketch.
  • If you want to try out the pen patterns, make your pen size something like 50.

Contact

Email: bytebouncer@yahoo.com
Diordna Software: http://stratus.iwarp.com

All together

That's everything up to about 2002, when I moved to a web host that didn't survive to the present day.

Looking at all these wacky programs together, I think it's hilarious how much effort I went into documenting everything. It's a compulsion I still have, and I'm glad it's a benefit in my professional life rather than a burden.

It might be fun to go back and remake some of these as modern Cocoa apps or static sites, but I'd rather keep moving forward. I'm grateful to have had the time, resources, and safety to play with this stuff at a time when I was still figuring out what I was interested in. Programming is still my hobby as well as my job for this time in my life, and while I might want to leave the coding for weekdays between nine and five at some point, for now I'm still going, as enthusiastically as ever.