• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Umax C500 in a science museum exhibit

Dennis Nedry

Well-known member
I'm developing a fancy association machine for a little science museum. It displays an image of an anuran (frog or toad) from this region, plays sounds, and has buttons for the names of 14 of them. You press the corresponding button.

I already have all of the hardware done. It is a wooden box with an LCD mounted in it. There are 7 arcade buttons mounted on each side of the screen. The arcade buttons are connected with wires to the circuit board from inside of an AppleDesign keyboard and they each press some particular alphabetic letter. I made sure to avoid weird keys like arrows, function keys, shift, invalid combinations, etc. The daisy chain port of this little circuit board can accept another keyboard + mouse, thanks to the nifty ADB standard. The "keyboard" board and screen are connected to the Umax, and it will all fit nicely in a wall-mounted box that shouldn't jut out more than 8" or so form the wall. I plan to make the system boot, copy everything to a RAM disk, and reboot if necessary from the RAM disk so as to ultimately not be spinning the hard drive.

Separately, I developed the software in RealBasic 3.5 in Classic on my G4, because that's all that I've really used before with this sort of thing. The program hides the menu bar, switches resolution to 640x480 16-bit (I don't want to deal with dead batteries), displays a 16-bit full-screen background image ("thousands of colors"), labels each button up and down the sides of the screen, displays a random picture, plays a sound associated with that picture, and waits for a kid to press a button.

If a wrong button is pressed, a wrong answer sound effect is played and a message displayed on the screen momentarily. If too many wrong answers are pressed in a row, it says "let's try a different one" goes to the next random image. If the correct answer is pressed, the correct answer sound effect is played, a message is displayed momentarily, and then it goes to the next picture. It does not allow the user to press any additional buttons while messages are displayed, or before the next image is displayed, if that's applicable. It does not cache button presses. These are all things to consider as kids will likely mash as many buttons as possible at the same time.

I'm having some problems when I load it onto the Umax. First of all, the sound is choppy after a few seconds. I am using a QuickTime object to play sounds because playing regular system 7 sound files locks up the entire system until the sound is done. QuickTime can multitask so my program can listen for buttons. So that's problem #1.

Problem #2: I have the picture zoom in. The zooming is just as choppy and slow as heck. I had to reduce it to like 4 frames or else you were just sitting there waiting for it to finish zooming before you could answer the question.

My third problem is that I have store all pictures into global picture variables when I first run, because doing it on the fly is yet another huge time expense. This takes a LOOONNNNG time, minutes. I went so far as to put a progress bar on the window so you could tell if it was even doing anything. This is terrible, and would be an embarrassment when it comes time for me to show my work to the staff. I'm trying to convince people that old Macs are perfect for these things, and that would not be good evidence! This particular museum has quite the stash of old Macs, so, well, needless to say, that's quite exciting. :)

Does anybody have any ideas as to a different programming environment that I could use for this? I think the main problem is the massive overhead of RealBasic. Is there another easy way to achieve the graphics and sound things listed above, with my little Umax C500? Mind you, this is a 180 MHz Power Mac, selected for its physical size. We should be able to do all sorts of cool graphical effects with that kind of machine! We also have loads of 68k Macs. Ideally, I would think that even a Mac LC II could do what I've described here if programmed efficiently.

Using a 68k Mac is not out of the question. If that's the case, we may want to do some stuff with palettes to get a little better image quality if we're limited to 256 colors. I would gladly put one of my LCII or LCIII Macs in there. It would use less power and wouldn't stick out as far from the wall.

If anybody has any suggestions, please comment. If programming a quick dirty example that I could modify would give you a good reason to pull out an old Mac, and make something on an old Mac that will still be used - for real, well then go for it! I'd be very appreciative.

Here are some pictures:

http://www.facebook.com/media/set/?set=a.10100829702880710.3234927.13963959&l=2d2abb0432

 

basalgangster

Well-known member
looks very cool. Have you thought about using HyperCard? It was used for this kind of thing in it's tIme, and late versions had good QuickTime support.

 

Dennis Nedry

Well-known member
That's a great idea. I have never used Hypercard before, but I do believe I have a copy somewhere. Thanks for the tip!

 

Dennis Nedry

Well-known member
Does anybody know of a good Hypercard tutorial? I can't quite figure out how to get started. It is quite a bit different than anything I've used before. I happened to have a StuffIt archive of version 2.4.1 from a long time ago, but there doesn't appear to be any relevant "getting started" stuff.

I basically want to display a 640x480 color background image, another smaller PICT on top of it in the middle, go full-screen, listen for keystrokes, and the other things mentioned above with sound, timing, right/wrong answers, etc.

 

basalgangster

Well-known member
You should make sure you have a copy of the full developer version of hypercard version 2.x (preferably 2.4). Apple bundled a hypercard reader with the operating system, but to make new stacks you had to buy the developer version.

There were a lot of books written, but this was mostly before the era of pdfs. But to get started, the regular Apple hypercard manual is pretty helpful. Do a google search for 0340617Ahypercardi.pdf. This will get you the manual and a lot of other useful stuff.

 
Top