Running Windows 1.0 Circa 1985 (and a Few Others....)
March 29, 2006
DigiBarn is running a piece that, in a series of 24 photos, shows Micsoroft Windows 1.03 being installed on an AT&T 6300 PC compatible (hey, I've got one of those!). From the stack of ten 5.25" floppies to the warm, green glow of the of the high-res monochrome display, to the...intuitive and aesthetically pleasing graphical interface that Windows brings to bear on the user experience proposition -- it's all there.
That's a savvy interface eh? I mean, if you're going to rip Apple someone off, you may as well do it right, right? So first there was the Lisa with the first commercial GUI, announced in January of 1983. Then there was the much more consumer-friendly Macintosh, with a nicer interface, released in January of 1984. Windows 1.0 wasn't released until November of 1985. And it's not even an operating system; it's a presentation manager that sits on DOS. Windows 2.0 didn't come until late 1987. It boggles the mind.
So let's see.... Back in 1985, I went through a few different machines. According to my list and my fading memory, I owned an Apple //c, an Atari 400, a Commodore 128, an original Macintosh (128K), a Laser 3000 (Apple ][+ clone), and an Amiga 1000. Most of those had GUIs available for them. Read on to hear me prattle on a bit about them.
The Apple //c had a few GUIs available. There was Berkeley Systems' GEOS, which I never liked. There was also Quark's Catalyst and MouseDesk from VersionSoft. I used and was fond of Catalyst. Here's abit of detail I found about two of the three:
- Although the 6502 processor did not have the horsepower of the 68000 in the Mac, some programs began to appear for the AppleII that tried to make use of the same concept of overlapping windows, pull-down menus, and a mouse (or joystick) driven pointer. Quark released a program selector called Catalyst that used a similar graphics-based desktop, icons for files, and the point-and-click method of file execution. It was included with some of the early UniDisk 3.5 drives, and on Quark's hard drives. Another company, VersionSoft (from France) had a program called MouseDesk, which was distributed in America by International Solutions. MouseDesk worked just a bit better than Catalyst, but did not do very well as a standalone product, especially with Catalyst being given away free with the new UniDisk. Eventually, International Solutions made MouseDesk available for only ten dollars via mail-order, hoping to get it into general enough use that their other graphic- and mouse-based products would sell better. Although that did not happen, International Solutions did eventually sell the rights to distribution of MouseDesk over to Apple Computer. Apple then modified the program and included it with as a rudimentary desktop (modeled after the Macintosh Finder) for their first versions of ProDOS 16 System software for the Apple IIGS.
The Commodore 128 had GEOS, and the 8-bit Commodore was really its target platform. Arktronics put out a graphical office suite (not really a general desktop interface) with a very crude GUI, called Jane. It sucked.
The new Commodore, the Amiga, sported the pretty blue Workbench. I spent most of my GUI time in 1985 using the Amiga's interface, having purchased my Amiga 1000 in 1985 (the first unit sold in the state of Virginia). Now, I agree the Amiga's GUI was crude (but colorful) compared to that of the Macintosh -- but hey, the Amiga offered preemptive multitasking and a UNIX-like CLI, all running on 256K of RAM standard, making it a much more capable system.
I've just described a mish mash of desktop GUIs. Most seem, to me, superior to Microsoft Windows 1.0. Go figure.
DigiBarn also has a Windows/286 v2.11 photo page online. Have a look. You can almost taste the progression of technology from the one to the next....
Gaming Then and Now: A Side-by-Side Look
March 23, 2006
I just ran across an interesting piece put up by Fosfor Gadgets. The article provides a side-by-side screenshot comparison of games from various genres - one from today and one from somewhere around 20 years ago. It's amazing how technology has advanced.
But with the incomparably superior visuals of today's games, has the gameplay become "more fun?" I don't think so. Not overall. Perhaps this is why I so enjoy playing with the old hardware. The old games.
What do you think?
Of AJAX, GATO, and Bill Scott
March 15, 2006
I build database driven web applications for a living. Lots of server-side code - usually PHP or ColdFusion tying to Oracle or MySQL. A good bit of this work also involves interface design. I try to be as innovative as possible in this work, and because of that, I am intrigued by the AJAX development methodology. I use it in a few applications right now, including my first Mac OS X Dashboard Widget.
Seeking to further my AJAX abilities, I talked my employer into sending me to a recent AJAX Seminar in New York City. It was a long day, well spent. Among the many notable speakers, one stood out for me: Bill Scott, AJAX Evangelist and member of Yahoo's User Experience Design team. His take on sound design and his enthusiasm for these new technologies spoke to me. And I must confess, part of the reason I took particular note of the man was the fact that he is clearly "a Mac guy" - and not just a casual Mac guy. Bill Scott wrote the Macintosh port of Spectrum Holobyte's submarine simulation, GATO, in the mid 80s.

I e-mailed Bill, asking a bit about the development of Macintosh GATO. He quickly responded and explained that the Macintosh version was coded in C and was based on the original IBM PC verison of the game, which was written in MS BASIC. The development specification was the PC GATO manual. He pointed me to a far more detailed history of the development of the game that he posted as a comment tied to a story posted on Folklore.org, entitled "3rd Party Developers and Macintosh Development".
See the extended entry of this article for an excerpt from Bill's commentary on the Folklore.org story.
- In 1983 when I read the Byte magazine article on the Lisa I called a friend (co-developer) and said I found the computer we have always dreamed about-- but it is just too expensive.
Then when the Mac was announced we were at the local Apple store in May, 1984 to witness it first-hand. Its hard to appreciate, but I remember having a flood of emotions. Just simple things like the Basic programming environment having scrollbars! I mean you could scroll back and forth in your code. And MacPascal with pretty printing in the code- Whoa! Of course we were blown away by MacPaint, MacWrite, MacDraw.
Together we bought our macs and we knew that the one thing we wanted to do was write code for this beautiful machine. We tried out MacForth, MacBasic, etc. Soon, we went to work at the Apple store selling Macintoshes. While I have never cared for sales I found it effortless to sell something I believed so strongly in.
One of the other guys in the store had been spending his nights playing an IBM game called GATO a WWII submarine simulation. He came in one day and announced that we should contact the game company for GATO (Spectrum Holobyte) and pitch writing a Macintosh version of this best-selling game.
The next thing I knew we were putting together a prototype and had only one week to get it together. We took a cursory glance at the IBM version and knew that we wanted a distinctively Macintosh game-- not a port. So we built the prototype to utilize the Macintosh windows, menus and dialogs and not just take over the video directly.
We had not bothered to get official developer status but a teenage kid had done so and loaned us the 1000 sheets of Inside Macintosh. A local firm we were consulting with allowed us to make three sets on their copier if we bought the paper.
Armed with Inside Mac, our 128K Macintoshes and Consulair C (purchased from Bill Duvall just a week or so before) but with absolutely no experience with the C language, serious development with the Mac or how to write a game we embarked on our prototype. It turned out great. I created the screens with MacPaint wrote some routines to spin the needle on the gauges, faked out a lot of menus and set up the way the screens would rotate between map view and periscope view. Spectrum loved our idea and we soon quit our jobs and dropped out of college to write GATO.
It was quite an experience. I remember the excitement of really comprehending the event management and object-oriented nature of the Macintosh. That was a big hurdle coming from IBM PC and Apple II programming. The most challenging aspect though was debugging the game. First, we barely knew C. Second, we had the debug switch installed on the side of our macs and used Macsbug to determine what went wrong when printf did not do the trick. A crash course in 68000.
We got the game together in a little over 3 months and were shipping it by the May timeframe. GATO was the first simulation game for the Mac and did extremely well in the market (although the Mac market was not large at the time) ( http://www.users.bigpond.com/james.jacobs/mac/gameguide.html )
The next few months we stayed holed up just playing with our macs. I remember the first desk accessory I wrote was a silly tool called wrap that made the cursor wrap around when it hit the edge of the screen. And even sillier one was bounce (or bouncy) that made the cursor bounce around the screen. Years later, I was working for a defense contractor and someone had a mac and was showing me a cool desk accessory that wrapped the cursor around the screen (one man's junk...)
During that time I hooked 2 macs together and via a serial cable and MacTerminal running on the other I could force a dump of the Macintosh ROM (if I recall through MacsBug) to the other machine. I got my then 4 year old son (who was happy to do anything he could to play with the Mac) to continue to hit the enter key on each screenful of rom dump--which took most of the day!
We spent weeks annotating and commenting the Quickdraw portion of the rom. I think the frustration of not knowing 68000 when we started the game development really pushed us to want to understand the Mac from the ground up. The most exciting thing that happened in the summer of '85 (next to the game being commercially successful) was figuring out how regions worked. I tell you that to this day I speak the name of Bill Atkinson with reverence. It was while commenting the PtInRegion section that we understood the elegance of the compression that regions brought to the table. Probably in violation of a patent that I was not aware of I gave talks to my local university and user's groups on how Regions worked on the Mac.
Another cool discovery was in disassembling and reverse engineering how Bill A. did the MacPaint blitting with the MOVEM (move multiple). If I remember correctly the MacPaint window was fixed at 480 pixels. Bill would take 14 registers and use them in a MOVEM to push out to memory or back in. The other 2 registers were used for bookkeeping. I used that trick in a few demos I wrote on the Mac.
That summer was incredible. We went on to write a 3d graphics library patterned after the Mac library that was to be used in the (failed) Spectrum Holobyte Orbiter game. We played tons of that crazy maze game with the eyeball (what was that called?? [ByteCellar: it's called Maze War, Bill] ) over AppleTalk. And we read everything we could about the guys who brought this machine to life. We poured over the Quickdraw code and we dreamed what it would be like to work for Apple.
Thanks Andy and all of you for this great machine (and site). It really changed so many directions in my life. I have had a fun career and so much of it springs from that summer madly developing for that insanely great machine in 1985.
UPDATE: My post here apparently set Bill to thinking about what he got out of his experience with GATO so many years ago. He has shared these ruminations in a recent post to his blog, entitled "All I Really Need to Know I Learned from a 128K Mac".
