What would you say, being alone with a reanimated dinosaur? I kind of got lucky. My dinosaur is quiet, but… What I said and say in this situation, I now know, but to publish these words is impossible.
I was planning an article about HyperTalk. And not to copy code examples from the article on the same topic in the English Wikipedia, I decided to write my own. There are people confident 1000%, claiming that they are programming a computer is not needed – they write (cast granite) absolutely flawless code without it…
I never publish untested code, even if I guess that hardly anyone of the readers keeps under the bed an old Mac in working condition is a matter of principle.
Virtual classic Mac with System 7.5.3 and a full version of HyperCard 2.4 is up and running. So – go ahead?
And then I was attacked by resurrected dinosaurs. Virtual. But, if somewhere on the street find an animal the size of the tank of the First world and look like a punk, be still more careful. Who knows what they have in mind…
To emulator no complaints. In its current version (2013) pce-macplus — very good.
On the website James Freund with pce-macplus work System 6 and System 7.0.1, and worked quite well on real Macs of this type. All works steadily, though sometimes slowly.
James has a great collection of games and programs on its virtual Macs, but HyperCard’and in the proper configuration for them there. On a virtual disk of one of the emulators found runtime HyperCard 2.1, CLARIS released, Inc., “daughter” of Apple Computer.
Almost all developers of HyperCard, saying that they took a job not in some CLARIS, and Apple, went on their own. Who wrote HyperCard 2.1, except Kevin Calhoun and Dan Crowe, I don’t know. Say in the management of multimedia programs Claris (which was attached to HyperCard) were five people – mostly random people. Team “magic!” in runtime HyperCard 2.1 is not working. Sabotage was depressed.
Perhaps somewhere unknown to me in the corner of the Internet inaccessible to search engines or not seen by me, lives by and emulates the Mac SE with System 6 and HyperCard 2.0, 2.1 or 2.2 in the full version some good emulator, but while it is necessary to use the pce-macplus 1996 release with System 7.5.3 and HyperCard 2.4.
By its absurdity, the configuration is similar to pleaseure on a scooter with a toy gun, patiently waiting for the green light.
My pliosaur works and diligently comply with the rules. Classic Mac and System 7.5.3 (Mac OS 7.5.3, unofficially) – entity from different eras.
Apple Computer, with perseverance worthy of a better cause, until Mac OS 7.6, demanded from the developers of compatibility each new version of the system with all Mac AMI, except for the Mac 128K, Mac 512K, Mac 512 Ke and, apparently, the Macintosh XL (Lisa’s ex). One of the most stupid and ill-conceived decisions made by the management of the company.
Therefore, System 7.5.3 on the “generalized” classic Mac is quite alive. Apple has always worked talented engineers. If you do not require the Antiques too much.
Work with out-of-date models of Macs takes time and effort, but not that it was the most unpleasant and destructive: with that requirement, the engineers tried to do in its development too sudden movements. System 7.5.3 is the support of new versions of the PowerPC, the ability to cope with two processors…
But HyperCard 2.4 in this unreliable design doesn’t fit. This is the “too much”, that does not cost to require Antiques. No, many stacks (and standalone application developed in HyperCard) mostly work. But the ones in which open access to the source code, primitive to ugliness. Or as like as two peas copy the same solution.
There are plenty of interesting, on the first and second disks emulator, recommend.
HyperCard 2.4 on a tricycle
The emulator starts by loading his pieces, called “Game Data”. Don’t know about you, I don’t like. However, what is programming? This is a game, the most fun way to spend time at the computer, especially HyperCard. Well, let it be a game.
HyperCard is included without problems, a new stack is created, everything in life. Slowly, but cheap Macs with PowerPC applications for 68k, too, was terribly slow. No one on PowerPC and HyperCard didn’t.
In the stack there is no single place where data would be stored for their entire source code. Code scattered across multiple objects, each of which performs a part. That plus the (novice programmers still write code in small chunks and see what comes out of it), and minus: fix the systematic error is not easy.
However, in HyperCard on hand a variety of tools, including some of the properties of language HyperTalk – in the normal bundle of an adequate Mac operating system and HyperCard are all solvable and correctable. In adequate.
To reveal interesting features of the HyperTalk programming language, it should be placed in familiar surroundings. That is to create a simple stack, with the background, which are several fields and buttons, fill it with data, and to give the language away, for nearly 15 years in the afterlife, I think he missed the real thing.
The first pleasant discovery: the fields in the background and adds are placed perfectly without any problems, but resize is not possible. The font, style and size of text – no questions. The style used to display (show line or no, allow keyboard input or not) – everything works. Okay, we’re writing a fake stack, humble.
The size of the buttons also do not change. Style change to transparent, choose from a set of images for buttons cute arrows “left” and “right” – and, after several minutes of fruitless efforts, content with their halves on the screen. Married this stack is not to give up, so be it.
The second pleasant discovery: Cmd-C, Cmd-V and other keyboard equivalents of the edit commands (and Cmd-M to open/close the Message Box) is not working. Command key (“Apple”), Option (Alt) and Control in the best case, ignored. The worst, and this is often not work in the emulator, and the browser. Well, we’re visiting, the rules here are not our own. Quite often keyboard equivalents to menu commands lead to crash of the emulator.
That is, again, the system boot and disk, again it is necessary to get to HyperCard, again… to Create anew. All created and printed by the user at the end of the session crumbles to meaningless bits.
Well, all commands run via menu.
Repeat one after the other all the action last attempt, some of them brought almost to perfection, sorry, what about these actions at a site will not tell, and went back to the place on which stopped last time.
There are nice, without irony, open menu Tools, which graphically presents all the tools (modes HyperCard, alas without them in this multi-faceted app will not do), you can “pull” from the menu and leave the screen. In NeXTSTEP was a similar function for all the menus. In the classic Mac OS – in “homemade” custom menu. For some reason in Mac OS X (the current macOS) this trick is not entered, and it is so comfortable! And it works perfectly.
Graphics modes do not touch, I draw worse than Malevich. Use the modes “battle”, “buttons” and “working with fields”. Switch them as the driver of a heavy truck, almost continuously. Graphics modes include only scripts that they have with the drawing better.
The third pleasant discovery (ironically, unless otherwise indicated, all subsequent discoveries will be called nice only if their particular troubles) – I thought that the opening scripts in HyperCard objects designed terribly. To do this, double click in the appropriate mode (“working with buttons” or “working with fields”) should open the property editor of the object, and one of the properties – Script. Button.
Access scripts of other objects begins with the command from the menu “Objects”: “Card Info…”, “Background Infо…” or ”Stack Info…” Again, open the property editor, and button Script. I thought it was long and uncomfortable. If everything worked as it should, I would have thought so until now.
The script opens very slowly. During this time, it is easy to forget why we decided to look into it. If it is clear that in fact it was necessary to open another script, until the download is complete, it will not replace nothing. By the way, did I tell you, that 7.5.3 was already multitasking, the truth is not “preemptive” and “cooperative”. It’s like property: is real and is cooperative.
Opened. Fields, cards, backgrounds and stacks are born “naked” – with an empty script (if we have not included, in the dialogue of creating a new stack, the option “copy the current background stack”). The 0 characters in length.
I need a handler, like this:
put “” into bg fld “CardsCounter”
put “Cards Count =“ && the number of cards into cc
put cc into bg fld “CardsCounter”
Carriage return (add new line) – everything freezes, two seconds. I something surprised? Print “on openCard”. Carriage return – the text disappears, everything freezes for two seconds (in that light, the Board of Directors of the days of Scully, Spindler and Amelio checks not erect if I Hulu on Apple Computer?), then appears again. So – line by line.
Comments (everything after the two hyphens, “—“) “forbidden”. No comments – one of the most popular management responses Apple, but I never thought it should be taken literally. As it turns out, necessary. Hyphens are generally not printed.
I’m afraid I have already tired of your moaning is just a tenth of pleasant discoveries. Copy neither in the emulator nor from it all. The resulting script, when time is rewritten manually. And I’m not giving up. Each time I go farther. Sisyphus would envy.
Tried alternative approaches. LiveCode, as it is written in many different places, it’s right HyperCard nowadays.
LiveCode I learned. This app (very cross-platform, results are using iOS, Android, Macs, Linux, Windows) appeared in the early 90s, it was called MetaCard. When HyperCard is stuck and clearly zasobiralis in the valley of the shadow, we tried out Runtime Revolution, or just Revolution. Not HyperCard, but it seems. More difficult.
And now – LiveCode 9.0. Viewing (diagonal) textbooks, I realized that the language of this application is really very similar to HyperTalk, but with a lot of its own nuances. Code HyperTalk sometimes even works, but to ensure efficiency in HyperCard code written in LiveScript, impossible.
HyperCard and HyperTalk I once knew, and skills come to mind, along the way. To get into LiveCode is a couple of weeks at least.
Others will not even mention.
The standard option – will deal with the device emulators and build my own, for myself. In GitHub is the source PCE. C. If you have the time, of course…