Some 5400/12 – Performa 200 restoration notes

(Image from Wikipedia) I never took a picture of mine.
(Image from Wikipedia) I never took a picture of mine.

I’ll throw out a little tidbit about the Power Macintosh 5400/120, otherwise known as the Performa 200. If you do not have any Mac OS CD’s this will be *VERY* hard to get going with nothing. The good news is that there are boot floppies available out there.

The bad news is that they are encoded in a method in which you’ll have to get access to a working Mac. If there was somewhere I could post these files forever I would.

Anyways the boot disk is this one:

5400-6400_Disk_Tools.img.bin

Which I currently see online here:

http://www2.cddc.vt.edu/apple/Apple_Software_Updates/English-North_American/Macintosh/System/CPU_Specific_Updates/6360-64xx-54xx/5400-6400_Disk_Tools.img.bin

Now it’s a diskcopy 6.4 image. Which you’ll need a Mac. I was able to finagle one from a Mac, however I’m wondering now if it’s possible to do this via emulation. During this whole resurrect my $12 Mac I’ve come across vMac, Basilisk II & SheepShaver.

I plan on doing some serious review, however it is worth noting that while both do run fine, they are actually buggy on weird stuff vs the real iron.

From what I gather with the boot disk, you can boot your Mac up, partition & format it, and install this super small bootable System 7.6 onto the hard disk. It will complain about you doing it this way, but it will work, allowing you to get the box up & running somewhat, to let you try some methods of getting the install disk for 7.6 onto your Mac.

It is worth noting that the 7.5.3 on Apple’s download site that is provided for FREE does *NOT* work on the 5400! I did at one point try it, and I got some wonderful message :

The System Software 7.5.3 Installer script does not recognize this Macintosh. Please use the original disks that came with your computer.

Sadly all information I see is that this thing shipped with 7.5.3 Oh well. I eventually found a boot floppy!

The site I gleaned this boot disk from was this:

http://home.earthlink.net/~gamba2/bootdisks.html

If anyone does anything MacOS for a living or is going to play with a Mac you ought to save the whole thing! It’s VERY useful, more so than Apple’s documentation.

Anyways I’ve tweaked up a copy of the SIMH PDP-11 to compile and do a small test under MiNT/MacOS. Tomorrow we shall see if it’s usable.

MacMiNT

MacMint
MacMint

Recently I came across a Power Macintosh 5400/120 at a garage sale for the bargain price of $12! I couldn’t believe my luck, for under $20 I had a fully working computer!

Except that it won’t run OS X 1.0
And it only has 8Mb of ram.

Because of its memory restrictions it can only run Mac OS 7.6

What to do….

MacMINT!

MINT back in the day for AtariST’s was a UNIX like layer that ran on top of TOS (The Atari MS-DOS like OS) and provided basic Unix services. With the program aptly called JET (Just Enough TOS), the Macintosh 68000’s can setup a TOS compatible interrupt vector table, and run TOS procedure emulation to run the MINT binaries under MacOS!

So, it’s UNIX!

Sort of.

First you need to disable Virtual Memory… That’s bad.
Next it doesn’t support TCP/IP so it’s like being on Unix v6. But it’s fun at any rate.

You can find the binaries at my mirror of sra.co.jp here.

It includes gcc 2.5.8, and a somewhat basic environment. It does have lots of potential, but the biggest gripe is that 8Mb of ram just isn’t enough to do any serious compiling, and yes it will crash with virtual memory enabled. Also since it is 68000 programs it is running under emulation.. I have to admit that I am tempted to buy some kind of 68000 based Macintosh to run MacMiNT.

I know this may not be terribly useful to people, but then again someone has to do something fun/weird on a $12 machine. I fully expect to either get a ‘bigger’ 68000 box, or more ram and run something like simh on it. I can only wonder how usable the PDP11 or the Interdata32 are.

And for anyone, like me wants a ‘clear’ program, just because, here is a simple one, just remember to link with -ltermcap.

#include <stdio.h>
#include <stdlib.h>
#include <termcap.h>

void main()

{

char buf[1024];
char buf2[30];
char *ap;
char *clearstr;

ap=buf2;
tgetent(buf,getenv(“TERM”));
clearstr=tgetstr(“cl”,&ap);
fputs(clearstr,stdout);

}

Anonet

Ok, this isn’t emulation, exactly but it does involve virtual networking…

I’m talking about Anonet! it’s an internet style network that is encapsulated over OpenVPN.

From the site:

In early 2005, a few people fed up with the way the Internet was heading, began in earnest to create a large wide area network that was secure and lived in its own space. On this new network anyone would be free to do as they saw fit – roam about, host services, or just be social without fear of being monitored or even worse censored. The first step to bring this network to fruition was to encrypt the information that normally travels across the Internet. What they ended up with is known as anoNet.This network was inspired by MetaNet, another “dark” network on the Internet, that used similar techniques to reach their goals. A few “core” members of anoNet were once a part of MetaNet but due to their strict nature, peering with MetaNet was lost and they became an “island”. anoNet has already surpassed what MetaNet had in membership, and is on its way to being a viable alternative to the “Internet” you currently know, whether you love it or hate it. If you are feeling adventurous check it out. If you are feeling really adventurous you can help; there is still lots to be done.

http://anonet.org/

So how does it work? Basically each ‘node’ runs OpenVPN connections to other peers, and they redistribute all networks over BGP. It’s very much in the same style as the real internet. I’d recommend checking it out. As for getting on the Anonet, it’s pretty simple. Just follow the instructions here:

http://anonet.org/quickstart/index.html

It will run on any platform that runs OpenVPN. I’m using Windows 2000 Pro in a VirtualPC VM. I hang out on the anonet IRC server from time to time ( 1.0.9.1 #anonet) if you are feeling brave, load up openvpn, retreive the client configuration and drop by!

If you are feeling real brave, try to become a peer onto the network!

OQO 01

Work just sent me an OQO 01… Neat little thing, and YES it does run DOSBox… but it’s super slow. Ive also just moved out of New York… which has been an adventure in it’s own right. I’ll have to dig thru some of the heaps of stuff I have on it’s way to find something cool to write about further…

GLFrontier

 

Frontier Elite
GLFrontier
While on the topic of Frontier Elite this week, I was wondering if they by any chance ever released the source code… It appears not, however there were largely two versions the original being in 68000 assembly then a port to 80286 real mode ASM.
But then I found this:
Some guy has taken the Atari ST version of Frontier, and removed the hardware access from the assembly, then tweaked a m68k assembler to either output in C or i386 asm… So he’s basically reversed a copy of Frontier to allow it to run natively!
And he’s added OpenGL support to some degree! It’s VERY cool!
At a minimum I bet there are people out there that would LOVE this guys programs to convert m68k assembly listings into either C or i386 asm. Or a chance to hack the ‘source’ like crazy.
I’ve also come across this great site http://www.jongware.com/galaxy1.html which goes over various algorithms from the game.

Frontier, Elite II

I was playing with DOSBox on an XP machine, and I came across this exciting link: http://www.eliteclub.co.uk/download/ You can now download Frontier II as shareware! Most cool, so I’ve downloaded it & just run it under DOSBox. No tweaks, answer for the SoundBlaster sound card, and away you go! Here is me attempting to do a flyby of the Saturn system..

This game was super cool back in the day for it’s realistic physics as you could do slingshots, flybys, orbits & even land on various moons & planets. There is nothing more exhilarating then flying through the solar system or the universe at hundreds of thousands of Km/s. Not to mention the hyper drive!

You can give it a shot too, if your browser is Java enabled!  Just click right here, and enjoy!

Back to DOS

It’s been a long while, life has been busy. But I figured I ought to try to make a post this year!

Ok, I’ve gotten a new laptop over the last few months & I’m running the 64 bit version of Vista. One or the first things us old people will find is that the MS-DOS & Win16 subsystems have been completely removed.

This of course, poses a massive problem! How to play games!!!!?

Thankfully there exists two really great solutions for Vista 64bit users. The first one I’ll suggest is Virtual PC from Microsoft, and DosBox.

It’s no wonder Microsoft has made Virtual PC a free download (http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx) since they have crippled the compatibility of the OS. Now I’m personally a little biased for Virtual PC as I’ve been using it since it was owned by Connectix. Virtual PC is a complete PC emulation strategy, allowing you to run MS-DOS or quite a few other operating systems. For this example I’m going to install MS-DOS, but it’s capable of running all kinds of other operating systems.

Now back to my laptop. It of course doesn’t come with floppy drives, so I used an older PC with a drive to create disk images. (it was running OpenBSD so I just ran ‘dd’. Winimage is capable of creating disk images as well). Of course I could use a USB floppy drive and boot my MS-DOS 6.22 floppies from that as well.

The cool thing is that you can setup a virtual machine, boot off either real floppies or virtual disks, and you will need to setup a virtual hard disk. Naturally it will need partitioning, and formatting. As for installing games, again if you have floppies of them, everything is cool. There even is an emulated CD-ROM device, however you will need a device driver to use it! (http://www.google.com/search?q=idecd.sys) Virtual PC emulates an IDE CD-ROM, and you can use just about any driver you can find out there. Once you can read CD-ROM’s under the emulated MS-DOS you can install the ‘extensions’ program, which has an idle program (to stop the emulator from consuming 100% of your CPU, as MS-DOS has no inherent idle loop), and a neat program called fshare. Fshare will allow you to give your emulated PC access to a directory on the host computer.

The plus’s of Virtual PC is that it’s a more accurate emulation, it provides sound blaster pro emulation, and good psudo device emulation. The major downside for me is that it provides no joystick emulation. Of course you’ll need to bring your own DOS, however I imagine that freedos (http://www.freedos.org/) ought to work just fine, but I kind of like the real thing.

The second emulator I’d like to mention is DOSBox (http://www.dosbox.com/). Unlike Virtual PC, DOSBox is not a complete system emulator, it’s designed specifically to run MS-DOS programs. So you will not need a copy of MS-DOS, nor will you need to worry about such hassles as media, or emulated hard disks.

To run DOSBox for the most part all I do is add the following lines into my config file:

Mount c: c:\Users\Jason\dos
C:

This will make my “c” drive a dos directory in my home directory on Vista, and change the current directory there. From here I can unzip any of the old programs I have, or just copy from CD to my vista directory and just run things. Overall DOSBox has pretty good compatibility. I’ve even run Windows 3.1, and some compiler & development stuff. And yes, it supports Joysticks & the emulation of various sound cards. DOSBox also has various throttle and various video emulation strategies. The other cool thing DOSBox can do is setup a virtual IPX/SPX network, and allow you to play old DOS multiplayer games over the internet. Warcraft 2 & Doom work quite nice under DOSBox. While Virtual PC does provide virtual Ethernet interfaces, it does not provide a way to connect them up over the internet. While it could be done with loopback adapters & PPTP routing, it would be way beyond the average user. DOSBox can listen on a specified TCP port, you can setup your internet router to redirect that port to the host PC, then allow your friends to connect in.

While I can understand Microsoft’s desire to cut all ties with past OS’s in terms of support, It’s a good thing that there still exists an emulation strategy for the two of us. And between DOSBox and Virtual PC hopefully your needs will be met.

*Yes I’m aware of VMWare, however it’s not technically free, and while you can create your own config files, and disk images in Qemu, and install your own OS, it’s not the ‘right’ thing to do according to the EULA.

cintsys followup:

For Windows users you’ll actually need a different archive that includes Windows support. I’m using VisualC++ 2005 Express to build this out. You can find it @ http://msdn.microsoft.com/express . Don’t forget the servicepack 1 for Vista users.

Retrieve http://www.cl.cam.ac.uk/users/mr/BCPL/bcpl.zip

unzip the bcpl zip to somewhere eg (c:\proj\bcpl)

run the visual studio 2005 command promptcd to your project directory

edit the vc9env.bat file: search and replace distribution with where you put your zip file (proj)Next remove all the vcvar lines (since we invoked a vc capable shell we dont need to worry here)

vc9env.bat

nmake -f MakefileVC
It’ll compiler the interpeter, then it’ll compile all the bcpl bits, and dump you into a shell. From here you can type in ‘logout’ and cd into the bcplprogs directory and play around.
For example

cd ..\bcplprogs\maze

..\..\cintcode\cintsys.exe

then we’ll compile the maze program with:

bcpl maze.b to maze hdrs BCPLHDRS

finally we can run the maze program:

maze

C:\proj\BCPL\bcplprogs\maze>..\..\cintcode\cintsys
BCPL Cintcode System (25 Jan 2007)

0> bcpl maze.b to maze hdrs BCPLHDRS
BCPL (3 July 2007)

Code size = 1164 bytes

40> maze

… the program will print the maze, as it solves it…

screens will fly by.

4965>

From here you can play with the rest of the bcpl examples. You can exit the interpeter with either control C or logout. Currently there doesnt seem to be a cd command, so I just exit and move via the Vista command shell.

I hope this clears it up somewhat.