[F] TidBITS  / TidBITS  / TidBITS Talk  /

Classic in Panther vs Tiger (and HyperCard)

[benr]benr (apparently) - 10:35pm Sep 24, 2005 PST
via email

Something has gone awry in the more recent releases of Classic - I thought it was
the version released with Tiger, but in fact it _seems_ (quite hard to be sure) to
be in some copies released before that - although older Panther installs are fine.

I'm trying to find out how to install an older version of Classic on a Mac mini
(currently running Tiger, but might be downgradeable to Panther if necessary), to
avoid these bugs. This list might know...

Deep background: The only report I've seen that's definitely related to this is with
HyperCard; it's been widely reported (in the HyperCard community) that many people
found HyperCard couldn't edit scripts under Tiger; most people found that a
workaround was to put HyperCard and its special documents onto a volume other than
the boot volume.

We recently helped a client upgrade an installation of 14 workstations from seven
year old beige G3s to Mac minis. They run a Classic application on this (a
touchscreen kiosk); it runs fine on previous OS-X machines in Panther, but on Tiger
it tends to freeze up afer an extended period.

We have access to the source code, but we don't know where in the code it's freezing
(it's only after some 3000 pages or more of information have been viewed, and it
appears to be random what page it freezes on). It would be enormously expensive to
upgrade this ancient code to be Classic native.

I've demonstrated on a QuickSilver G4 running Panther that the app will run for
600,000 pages without freezing; it seems pretty definitely to be a problem in the
version of Classic.

The app also has a problem which looks a lot like the one that trips up HyperCard.
When it makes a standard (old) Mac toolbox call to get the id of a named directory
on the volume that the application started from, 'bad' Classic always returns that
the directory doesn't exist, if that volume is the boot volume. Running the app
from a non-boot volume fixes this problem (but doesn't fix the freeze). On the
older Panther G4, this problem doesn't occur, just like HyperCard's problem didn't.
  Thus I'm using this problem - instantly verifiable - as a quick litmus test for
the version of Classic that's likely to freeze the app.

We've got an early adopter Mac mini that came with Panther, with Classic on a
separate installation CD. We thought be able to use this version of Classic to
replace the one on our client's mini's, and fix the problem - no dice. We weren't
sure if it had really replaced the later version of Classic; so we took a recently
purchased iBook, which had Tiger installed without any version of Classic; this
happily ran the Classic installer from the Panther mini - but has both the
boot-volume bug, and the app freeze.

Hence my belief that Apple upgraded Classic at some time after Panther was first
released, but before Tiger; and that this 'upgrade' introduced at least two bugs.

Deep background over, back to my questions.

- Does anyone know how we can install the version of Classic that was released first
with Panther, on a mini running Tiger? The boxed versions of Panther that we have,
which were probably pretty early in the Panther cycle, don't have separate
installers for Classic.

- If that fails; is it likely that a version of Panther released before (long
before) the Mac mini will be able to run a mini? Will we have to do some dodgy
fixing up to make this work, or will it just work, or is there no way it will ever work?

- If nothing else; are there known references for versions of Classic that have been
released, are there known ways to tell what version of Classic any particular
machine is running?

Many thanks in advance for any light that can be shed,

   Ben Rubinstein | Email: benrcogapp.com
   Cognitive Applications Ltd | Phone: +44 (0)1273-821600
   http://www.cogapp.com | Fax : +44 (0)1273-728866



Mark as Read
  OutlineAll MessagesOlder ItemsOldest ItemsNewest ItemsNewer Items

Matt Neuburg (apparently) - Sep 25, 2005 10:31 am (#1 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 2661
Re: Classic in Panther vs Tiger (and HyperCard)

On or about 9/24/05 10:35 PM, thus spake "Ben Rubinstein" <benrcogapp.com>:

> - Does anyone know how we can install the version of
> Classic that was released first with Panther, on a mini
> running Tiger? The boxed versions of Panther that we
> have, which were probably pretty early in the Panther
> cycle, don't have separate installers for Classic.

You may be confused about what Classic is. In what I say here, "Mac OS 9"
will mean a system from Apple that comes on a CD and can be installed onto a
computer, and that older Macs can use to start up ("boot"). "Classic" will
mean this same system running inside Mac OS X.

If you have a Mac that can boot into Mac OS 9, then you can do so and the
program will work, assuming that it *does* work in Mac OS 9. (There
certainly are some programs written for earlier systems such as System 7 and
System 8.6 that break wholly or in part under Mac OS 9, but not many.) I
have three (count them, three) Macs that can boot up under Mac OS 9, and
wild horses could not tear from from my grasp, as they are worth their
weight in gold to me. As I said once before here, there are some tasks that
I must accomplish from time to time, such as getting FrameMaker to make a
PDF with bookmarks and links, that can be accomplished only on a computer
booted in Mac OS 9 - if I try it in Classic, FrameMaker crashes.

Similarly, the "touchstone" for your problem is the inability to edit
HyperCard scripts. I have that problem on my iBook, where the version of
System 9 present on that machine has not changed in many years. What's new
on that machine is that I'm trying to run HyperCard in Classic under Tiger.
If I reboot on that machine under System 9, I can edit HyperCard scripts
just fine.

Thus the problem you are having is not due to any change in Mac OS 9, so
searching for other versions of Mac OS 9 is not going to help. What must
have changed is the way Mac OS 9 interfaces with Mac OS X when running under
Mac OS X, i.e. Classic. As long as you are running Classic in Tiger, you're
going to have the problem, no matter what version of Mac OS 9 sits behind
it, because it is Classic that is causing the problem, and Classic is a
feature of Mac OS X, not Mac OS 9. The "version" of "Classic" that is giving
you trouble is not a separately installable thing: it is an aspect of Tiger.

m.

--
matt neuburg, phd = matttidbits.com, http://www.tidbits.com/matt/
pantes anthropoi tou eidenai oregontai phusei
AppleScript: the Definitive Guide -
http://www.amazon.com/exec/obidos/ASIN/0596005571/somethingsbymatt
Take Control of Word 2004, Tiger, and more -
http://www.takecontrolbooks.com/tiger-customizing.html
Subscribe to TidBITS! It's free and smart. http://www.tidbits.com/




evanssl21 (apparently) - Sep 26, 2005 12:09 am (#2 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 31
Re: Classic in Panther vs Tiger (and HyperCard)

At 10:31 -0700 2005.09.25, Matt Neuburg wrote:

> there are some tasks that
>I must accomplish from time to time, such as getting FrameMaker to make a
>PDF with bookmarks and links, that can be accomplished only on a computer
>booted in Mac OS 9 - if I try it in Classic, FrameMaker crashes.

Curious. With Frame under Classic under Panther (10.3.9), I regularly
make PDF files with bookmarks (though I haven't tried links).

Art Evans

Matt Neuburg (apparently) - Sep 26, 2005 12:09 am (#3 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 2661
Re: Classic in Panther vs Tiger (and HyperCard)

On or about 9/25/05 11:01 AM, thus spake "Arthur Evans Jr"
<evanssl21earthlink.net>:

> At 10:31 -0700 2005.09.25, Matt Neuburg wrote:
>
>> there are some tasks that
>> I must accomplish from time to time, such as getting FrameMaker to make a
>> PDF with bookmarks and links, that can be accomplished only on a computer
>> booted in Mac OS 9 - if I try it in Classic, FrameMaker crashes.
>
> Curious. With Frame under Classic under Panther (10.3.9), I regularly
> make PDF files with bookmarks (though I haven't tried links).

We've had this argument before here. :) All I can tell you is that with my
stuff, and with a large enough document, sooner or later I reach the point
where making a PDF with Frame crashes. But it works perfectly when booted in
Mac OS 9. m.

--
matt neuburg, phd = matttidbits.com, http://www.tidbits.com/matt/
pantes anthropoi tou eidenai oregontai phusei
AppleScript: the Definitive Guide -
http://www.amazon.com/exec/obidos/ASIN/0596005571/somethingsbymatt
Take Control of Word 2004, Tiger, and more -
http://www.takecontrolbooks.com/tiger-customizing.html
Subscribe to TidBITS! It's free and smart. http://www.tidbits.com/




Chris Pepper (apparently) - Sep 26, 2005 12:09 am (#4 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 845
Re: Classic in Panther vs Tiger (and HyperCard)

At 10:31 AM -0700 2005/09/25, Matt Neuburg wrote:
>Thus the problem you are having is not due to any change in Mac OS 9, so
>searching for other versions of Mac OS 9 is not going to help. What must
>have changed is the way Mac OS 9 interfaces with Mac OS X when running under
>Mac OS X, i.e. Classic. As long as you are running Classic in Tiger, you're
>going to have the problem, no matter what version of Mac OS 9 sits behind
>it, because it is Classic that is causing the problem, and Classic is a
>feature of Mac OS X, not Mac OS 9. The "version" of "Classic" that is giving
>you trouble is not a separately installable thing: it is an aspect of Tiger.

        Well, there are 4 pieces to Classic running under Mac OS X:

        a) the Mac OS X installation (Panther, Tiger, etc.)
        b) The pre-X Mac OS installation, which would boot a
supported machine (normally 9.x.x, although I believe 8.6 was
supported with early Mac OS X)
        c) Some Mac OS X hooks, notably the Classic System
Preference, which interface to the old OS.
        d) Some Control Panels & Extensions which run under the pre-X
OS, installed automatically by c).

        I don't, alas, recall what the components of d) are, but it's
a fairly short list, and should be relatively well documented in web
pages from the Mac OS X intro era. If nothing else, install Mac OS 9
on a new partition, make a copy or backup, then start up the Classic
environment within Panther or Tiger pointing to that partition, and
compare "before" vs. "after". Retrospect should do this, by logging
all the changed files; Panther's rsync would be good, but ignores
resource forks; Tiger's rsync is broken.

        It could also be a problem in c) (and I suspect that these
files contain complete copies of d), which is how Classic is set up
on 'new' partitions). You might want to examine the Classic bits with
Pacifist or the CLI to see if you can find the relevant bits.

        This all assumes that your problem isn't in Tiger itself,
which is a good assumption but not guaranteed; and that it's not in
the old OS itself, as Matt believes -- also likely but not guaranteed.


                                                Good luck,


                                                Chris Pepper
--
Chris Pepper: <http://www.reppep.com/~pepper/>
Rockefeller University: <http://www.rockefeller.edu/>

Dan Frakes (apparently) - Sep 26, 2005 12:40 pm (#5 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 1165
Re: Classic in Panther vs Tiger (and HyperCard)

On 9/26/05 12:09 AM, "Chris Pepper" wrote:
> d) Some Control Panels & Extensions which run under the pre-X
> OS, installed automatically by c).
>
> I don't, alas, recall what the components of d) are, but it's
> a fairly short list, and should be relatively well documented in web
> pages from the Mac OS X intro era.


Check out:

/System/Library/CoreServices/Classic
Startup.app/Contents/Resources/UniversalForks


This is -- in theory -- the list of files that Classic Startup checks for
when Classic starts; if it discovers any are missing, or are older versions,
it installs copies of the files in this directory. (I say "in theory"
because for whatever reason Classic doesn't always install every file here,
even if it's missing from the OS 9 System Folder chosen for use with
Classic.)


tekelenb (apparently) - Sep 27, 2005 3:31 pm (#6 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 280
Re: Classic in Panther vs Tiger (and HyperCard)

At 12:40 -0700 UTC, on 2005/09/26, Dan Frakes wrote:

[...]

> Check out:
>
> /System/Library/CoreServices/Classic
> Startup.app/Contents/Resources/UniversalForks

Note that Finder doesn't show UniversalForks. You'll need either Terminal.app
or Finder's Go function.


--
Sander Tekelenburg, <http://www.euronet.nl/~tekelenb/>

Dick Furnas - Sep 27, 2005 3:31 pm (#7 Total: 9)  

Reply to this message
 

Photo of Author
Posts: 9
Re: Classic in Panther vs Tiger (and HyperCard)

Any chance it could be related to the capacity of the hard drive, number of files open on the volume, or changes in the (Journaled?) file system? Wasn't the directory ID a short integer? That's pretty small potatoes compared to what can be on a current hard drive.

I seem to recall reading about lab machines using a read-only disk image with a shadow file as a way of arranging for per user preferences and uncorrupted basic install of Classic. Maybe you can install all the pieces of Classic on a plain HFS or HFS+ disk image of modest size and run successfully from there.

Dan Frakes (apparently) - Sep 27, 2005 4:41 pm (#8 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 1165
Re: Classic in Panther vs Tiger (and HyperCard)

On 9/27/05 3:31 PM, "Sander Tekelenburg" wrote:
>> /System/Library/CoreServices/Classic
>> Startup.app/Contents/Resources/UniversalForks
>
> Note that Finder doesn't show UniversalForks. You'll need either Terminal.app
> or Finder's Go function.

Sorry, I forgot that it's invisible in Panther; in Tiger, it's visible.

For those using Panther (OS X 10.3), chose "Go to Folder" from the Finder's
Go menu, then type the path above into the box.



barefootguru (apparently) - Sep 28, 2005 4:38 pm (#9 Total: 9)  

Reply to this message
via email  

Photo of Author
Posts: 115
Re: Classic in Panther vs Tiger (and HyperCard)

> Something has gone awry in the more recent releases of Classic - I
> thought it was
> the version released with Tiger, but in fact it _seems_ (quite hard
> to be sure) to
> be in some copies released before that - although older Panther
> installs are fine.

Can't help directly, but some tips:

Does the application use sound? About the only program I still use
under Classic is the game Caesar III. With sound effects turned on,
it would randomely freeze both itself and Classic (presumably when it
went to play a sound, but within that, a freeze was random). Since
turning off sound effects it's been 100% stable.

You could try running Classic with extensions off (System Prefs ->
Classic -> Advanced), though this didn't help me.

Maybe you can run an OS 9 debugger under Classic?

However you really should think about a rewrite. Classic is going to
go away one day, and Apple's currently scheduled that day to be the
forthcoming x86 machines.

(Belatedly sent to the list after replying directly. ADAM, this is
an exception to most of the mailing list I'm on. Can it be changed?)



  OutlineAll MessagesOlder ItemsOldest ItemsNewest ItemsNewer Items


 [F] TidBITS  / TidBITS  / TidBITS Talk  / Classic in Panther vs Tiger (and HyperCard)




Add a message

To add a message to this discussion, you must be a registered user. Enter your email address below. If you have an account associated with the email address you enter, you will be prompted for your password. If not, you'll be able to create a new account with no fuss.

Enter your email address:

Submit