Smalltalk-80 for Macos

About Mini vMac and all other 68k emulators, including SoftMac, Executor, and MESS.

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Smalltalk-80 for Macos

Post by brunel »

Has anyone emulated Smalltalk-80 on Mini vMac recently.
I've tried the basic procedure mentioned in another 2012 post but I'm not getting very far.

What I've done:
Got vMac running a MacPlus ROM and System 7.5.5
Downloaded the "Apple Smalltalk Betas.sit" and "Apple ST80.sit" files and expanded them.
Tried to get these SIT files onto a 64M blank disk but failed.

So I can't expand these files in the System 7.5.5 environment.
I've tried other blank disks and other earlier System versions but no luck.

Any help would be appreciated. I'm a modern iMac user but I don't know anything about how old Macintosh computers worked.

thanks
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Smalltalk-80 for Macos

Post by adespoton »

I'd recommend setting up Basilisk II which comes with a transfer folder to your host. Then copy the sit files right in to your guest environment and expand them there.

On Mini vMac you're going to have to find some other way to copy the files onto an HFS disk image, which is getting tricky these days; you could use ImportFl from https://www.gryphel.com/c/minivmac/extras/index.html but that will strip the resource fork -- so only do it on newer Stuffit archives that don't need that.
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

Thanks for that tip. I tried running BasiliskII with the 7.5.3 System, which worked fine.
I managed to get the Smalltalk-80 beta files onto the internal system and expand them with Stuffit
but when I clicked on executables then I got the Mac error code 39 (wrong version of software, among other things).
I'm trying earlier ROMS and System version but haven't managed to get anything to run.
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Smalltalk-80 for Macos

Post by Ronald P. Regensburg »

Did you make sure to copy the transferred files to your virtual HD inside BasiliskII? Applications cannot be launched when they reside on the "Unix" volume. Note that dragging files from the "Unix" volume to the BasiliskII desktop wil not copy them to the guest system but will only move them to a hidden folder "Desktop Folder" on the "Unix" volume. (That folder is visible in the shared folder on the host side.)
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

I created a new drive and copied the .sit files and managed to expand them.
When trying to run the image is tells me I don't have enough memory (I will try to post some screenshots. I'm not sure this Forum supports uploading images).
I tried increasing RAM in the BasiliskIIGUI to 2048 MB but I still get the same error.
I'm emulating a Mac IIci with MacOS 7.5.3 running on a 68020 with FPU
Any thoughts?

Screenshot URLs:
Image
Image
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Smalltalk-80 for Macos

Post by Ronald P. Regensburg »

Which image is that? In your screenshot I see the .sit archives and the two folders that were apparently the result of expanding the archives. What kind of files do those folders contain?
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

I've opened up several folders so that you can see the contents ...

Image

"Users" is a 1GB disk I created in BasiliskIIGUI.app. I've clicked on the "Apple ST80.sit" and "Apple Smalltalk Betas.sit" files and recreated the "Apple ST80" and "Smalltalk" folders to check Stuffit works here.

In the Release 0.02 folder, if I click on Rel.02.sit then I get the error message "The document "Rel0.02.sit" could not be opened, because the application program that created it could not be found". I have Stuffit Expander 5.5 installed and managed to use it to expand the Apple ST80.sit and Apple Smalltalk Betas.sit files in the Users disk.

When I click in the Release 0.03 folder on "Smalltalk-80.image" that I get the message: "Error: not enough memory space for the Smalltalk Image". And when I click on "Smalltalk-80" in that same folder I get: "Error" You must select a Smalltalk image, not just the interpreter".

Files such as "Smalltalk-80.sources" which is a large text file containing the source code of the Smalltalk system are too large to be read by SimpleText. I get the error: "This document is too large to be opened by SimpleText".

Here is the hardware configuration of my BasiliskII emulator. I've changed it since my first post to reflect the actual hardware configuration of an Apple Macintosh IIci system:

Image

I hope that helps.
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Smalltalk-80 for Macos

Post by Ronald P. Regensburg »

Maybe some of the answers are in the thread you started about this subject in 2012:
viewtopic.php?f=7&t=7830

I understand that Smalltalk-80 can run stable under 6.0.3 (in Mini vMac). Can you mount your Users disk image in MinivMac?**
Apparently the Smalltalk-80.image needs to be opened in the Smalltalk-80 application.
Also, as I understand it, the "Preferred Size" needs to be increased, at least when used in System 7. That refers to the application memory requirements for the application. It can be changed in the Finder Info Panel* for the Smalltalk-80 application. (In System 6 Finder Info it is called ""Application Memory Size").

* Finder Info panel: select the application and choose "Get Info" from the File menu.

** Maybe create a smaller disk image that can be used in mini vMac, mount it in BasiliskII and copy the expanded files over.
Last edited by Ronald P. Regensburg on Mon Jan 28, 2019 1:37 pm, edited 1 time in total.
Reason:  
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

Before trying BasiliskII, I was trying to get it to work in Mini vMac. I know a bit more now so I'll give it another go.

Thanks for the tips.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Smalltalk-80 for Macos

Post by adespoton »

Also the "not enough memory" error could be due to having the memory set too high. Set your BII memory to 4MB (or possibly 36MB) and see if it starts working.
User avatar
24bit
Forum All-Star
Posts: 1424
Joined: Wed Nov 11, 2009 5:47 pm
Location: Germany

Re: Smalltalk-80 for Macos

Post by 24bit »

Looking at the age of SmallTalk 80, could it be more promising to try with System 2 of similar age?
I moved over some files via SheepShaver and MiniVMac_II to a bootable System 2 image (MFS).
The app seems to work, but needs further testing by someone who knows some coding.

Image

Image

I´ll upload what I got to the ST80 page at Macintoshgarden: http://macintoshgarden.org/apps/apple-smalltalk-80
Hope that helps!
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

Good news. I managed to get it to the same point as "24bit" in Mini vMac 36.04 using a MacPlus ROM and my Users disk from my BasiliskII setup. I have a System 6.0.8 disk and I got my Smalltalk-80 software from macintoshgarden.org too.

Thanks everyone. Regarding "24bit" work, yes you've got it running. That error you got in Smalltalk-80 is a well known one that's documented in "The Long View" page http://basalgangster.macgui.com/RetroMa ... lk-80.html. The author of that page recommends a fix to the error but it doesn't work for me. Something to do with the number of HFS Mac Volumes which should be 4 but are less in vMac. I tried the bug fix but when I restared Smalltalk-80 then I got another error message "Message not understood: sameAs:".
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Smalltalk-80 for Macos

Post by adespoton »

brunel wrote:Good news. I managed to get it to the same point as "24bit" in Mini vMac 36.04 using a MacPlus ROM and my Users disk from my BasiliskII setup. I have a System 6.0.8 disk and I got my Smalltalk-80 software from macintoshgarden.org too.

Thanks everyone. Regarding "24bit" work, yes you've got it running. That error you got in Smalltalk-80 is a well known one that's documented in "The Long View" page http://basalgangster.macgui.com/RetroMa ... lk-80.html. The author of that page recommends a fix to the error but it doesn't work for me. Something to do with the number of HFS Mac Volumes which should be 4 but are less in vMac. I tried the bug fix but when I restared Smalltalk-80 then I got another error message "Message not understood: sameAs:".
Mini vMac presents everything as floppy disks, and cheats on the partition tables, so that volume check may be a show stopper.

If it works up to that point in Mini vMac, it should be possible to re-create it in Basilisk II using a 24-bit build of BII and 6.0.8.

That said, I'm certain I used SmallTalk 80 in Mac OS 7.6.1 back in the day, so limiting the amount of RAM may be all you need to do to get it functioning. Also, remember that SmallTalk 80 is expecting a 24-bit environment, so there may be some 24/32bit conversion issues that need to be overcome. It's been so long I can't remember all the steps I needed to take to get it all set up. I DO remember I eventually just switched to Squeak which "just worked" and was far less a headache. Squeak is still available for modern OSes, as is gnu-smalltalk which IIRC can support SmallTalk 80.
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

You're probably right about reducing RAM. I reduced it to 64MB and got the following screen:

Image

Unfortunately when I press the "24-Bit" or "Restart" buttons then nothing happens and the interface freezes.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Smalltalk-80 for Macos

Post by adespoton »

Ah yes: that's the 24/32 bit issue I remember.

So booting in BII in 32-bit with System 7.5.5 and 32MB RAM *should* work.

Alternatively, do a custom build of BII with the 24-bit patch and you can boot 6.0.8 and run it there.
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

After running Smalltalk-80 from the Smalltalk-80.image file I got the following error when it started up ...

Image

This is the same error message found in "The Long View" article here ...

http://basalgangster.macgui.com/RetroMa ... lk-80.html

The author of that article correctly spotted that the Smalltalk system was expecting to see four mounted volumes and the article goes on to modify the Smalltalk code to tackle the problem. The thing is, I made those changes and it didn't solve the error. I got another one instead.

So I thought: why not just mount four volumes (disk1.dsk, disk2.dsk, disk3.dsk and Users) on my desktop and see what happens.

It worked! No error message ...

Image

Fingers crossed, I think I might have a working Smalltalk-80 system :-)


So, just for the record, here's my setup (all files are in the same directory):
1) Mini vMac 36.04
2) "4D1F8172 - MacPlus v3" ROM from the ROM Archive; renamed to "vMac.ROM"
3) System-6.0.8 disk
4) "Users" disk (containing the unzipped and expanded "Apple_Smalltalk_80_Betas.zip" file)
5) Three blank disks named: "disk1.dsk", "disk2.dsk", "disk3.dsk".

And here's what I did to run Smalltalk-80:
1) Clicked on "Mini vMac 36.04"
2) Dragged the "System-6.0.8" file into vMac.
3) Dragged the "disk1.dsk", "disk2.dsk", "disk3.dsk" and "Users" disks into vMac.
4) Clicked on the "Smalltalk-80.image" found in Users:"Apple ST80":"Release 0.03".
5) You should now see the "Mickey Workspace" window.

I ran the emulator on an iMac running macOS 10.13.6 (High Sierra).
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Smalltalk-80 for Macos

Post by adespoton »

Thanks! This is really useful info!
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

I've wanted to get this software working for at least 6 years! :lol:

I was a C programmer for 8 years in Unix environments. I was re-trained in C++ but didn't code anything.
I also never worked with the older Macintosh computers, so your tips were really useful.
Now it's time to learn some pure OO and start working through the Blue and Red books! :cool:

Thanks for all your help everyone!!

P.S. Here's Squeak and Smalltalk-80 side-by-side:

Image
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

I have a ZIP file containing the Smalltalk-80 setup discussed in this post. It's password protected so just send me an email asking for the password:

http://thesoundmanifesto.co.uk/emu/Smalltalk.zip (14 MB)

This ZIP file assumes you're running macOS 10.13.6 (High Sierra). If you're running on Windows or Linux then just substitute Mini vMac for your own platform. There's no need to make any other changes. I tried it on Windows and it worked!

Note that disk1.dsk, disk2.dsk and disk3.dsk are each 500 MB. :shock: This is way over the top! A few KB is all you need to get over the bug described above. I leave you to do that once you've got a working system. :cool:
brunel
Student Driver
Posts: 14
Joined: Sat Nov 24, 2012 9:17 am

Re: Smalltalk-80 for Macos

Post by brunel »

Just an update to the instructions in my ZIP file download at:

http://thesoundmanifesto.co.uk/emu/Smalltalk.zip (14 MB)

Here are the correct instructions:

1. Open Mini vMac 36.04
2. Drag 4D1F8172 - MacPlus v3.ROM into vMac
3. Drag System-6.0.8 into vMac
4. Drag disk1.dsk, disk2.dsk and disk3.dks into vMac

P.S. you need to email me for the password to the ZIP file.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Smalltalk-80 for Macos

Post by emendelson »

adespoton wrote:Alternatively, do a custom build of BII with the 24-bit patch and you can boot 6.0.8 and run it there.
It's a bit late for me to ask this, but what is "the 24-bit patch"? The thread in the link below is titled "24-bit patch etc." but it doesn't actually have a patch - it only asks for one. Maybe the mods could add a question mark to the thread header?

https://www.emaculation.com/forum/viewtopic.php?t=6076

If there really is a 24-patch for BasiliskII, as the quoted post seems to say, it would be very good to know about it.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Smalltalk-80 for Macos

Post by adespoton »

emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Smalltalk-80 for Macos

Post by emendelson »

Exactly which file has the 24-bit patch? You suggested building with the 24-bit patch, but I don't see anything there. Am I missing something obvious?

I've had the experience in the past in this forum of going on a wild goose chase for files that never existed, so if you know the exact source of the 24-bit patch that you mentioned, I'd be very grateful to know about. But it does seem entirely clear that it ever existed. The only reference to it that I can see is the thread that asks for such a patch, without success.
Post Reply