Current SheepShaver code, built for macOS

About SheepShaver, a PPC Mac emulator for Windows, MacOS X, and Linux that can run System 7.5.3 to MacOS 9.0.4.

Moderators: Cat_7, Ronald P. Regensburg, ClockWise

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

Re: Current SheepShaver code, built for macOS

Post by Ronald P. Regensburg »

emendelson wrote:OK, I've now replaced video_sdl.cpp and adb.cpp in kanjitalk755's code with the current versions of those files in cebix/macemu, and applied the color-palette fix described above. This build now runs in 64-bit mode only, does not have the color-palette bug (or works around it, anyway), and works correctly with Ctrl-F5:
1. The application is in fact both 32-bit and 64-bit:
Architectures in the fat file: /Users/ronald/Desktop/SheepShaver-2017-12-01.app/Contents/MacOS/SheepShaver are: x86_64 i386
Runs fine here in Sierra, supposedly in 64-bit mode.

2. It apparently uses the patched SDL that corrects the cursor shadow in High Sierra (which also improves the appearance of the cursor in Sierra, and probably earlier).

3. The Ctrl-F5 fix was applied to the main branch in cebix-macemu

4. I think someone with more expertise should have a look at the fix for the color issue. The fact that it works does not necessarily indicate that it is proper coding. For instance, with SDL_APPACTIVE removed, it is not at all clear what kind of activation event this is about, window, mouse, focus, or whatever, "gain" for what?
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Current SheepShaver code, built for macOS

Post by kanjitalk755 »

The merged code is here.

http://fast-uploader.com/file/7067779848418/

However, SDL2 version seems to be on the way.
Before building, put SDL2.framework to /Library/Frameworks.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Current SheepShaver code, built for macOS

Post by emendelson »

Ronald P. Regensburg wrote: 1. The application is in fact both 32-bit and 64-bit:
Architectures in the fat file: /Users/ronald/Desktop/SheepShaver-2017-12-01.app/Contents/MacOS/SheepShaver are: x86_64 i386
Runs fine here in Sierra, supposedly in 64-bit mode.
I don't think it matters in a practical sense, but a 64-bit-only build is smaller, so here it is:

https://www.dropbox.com/s/g216oeylc99m0 ... 2.zip?dl=1

I hope that it shows only a 64-bit architecture in the file (and says it's a non-fat file).

I'll delete the version linked in the earlier post.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Current SheepShaver code, built for macOS

Post by emendelson »

kanjitalk755 wrote:The merged code is here.

http://fast-uploader.com/file/7067779848418/

However, SDL2 version seems to be on the way.
Before building, put SDL2.framework to /Library/Frameworks.
kanjitalk755, Thank you for supplying the code. Two things:

1. For non-Japanese speakers, the download link is at the bottom of the page. The download takes a long time before it begins. You may get better results in Firefox or Chrome than in Safari.

2. I have SDL2.framework in /Library/Frameworks (which is where the project looks for it). But I was unable to make a working build. The Frameworks folder was not built into the bundle; I tried adding that folder manually, but it did not help. When I launched the unix binary from the command line, it told me that it could not open the ROM file.

Someone more expert than me may be able to build this.
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Current SheepShaver code, built for macOS

Post by Cat_7 »

Hi,

It seems you have also deleted your last build?

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

Re: Current SheepShaver code, built for macOS

Post by emendelson »

Cat_7 wrote:It seems you have also deleted your last build?
My mistake! It's back now (I hope). Thanks for catching this.

And, on another subject, the suggested fix for the color palette problem is now part of the official code (the second version of the fix).
User avatar
24bit
Forum All-Star
Posts: 1424
Joined: Wed Nov 11, 2009 5:47 pm
Location: Germany

Re: Current SheepShaver code, built for macOS

Post by 24bit »

Thanks for staying on track of this!
I´m getting a stack/heap collision (again) with 7.6 - is it only me?
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Current SheepShaver code, built for macOS

Post by emendelson »

24bit wrote:I´m getting a stack/heap collision (again) with 7.6 - is it only me?
I get the same thing with 7.5.3. You might want to experiment with settings.

8.1 and later seem to work well. But I've tried only 8.1, 8.6, and 9.0.4.

EDIT: I mistakenly suggested filing a report on GitHub, but, as Ronald points out, the problem seems to be limited to kanjitalk755's code; it's not a problem in the 32-bit official code.
Last edited by emendelson on Sat Dec 02, 2017 9:25 pm, edited 1 time in total.
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Current SheepShaver code, built for macOS

Post by Ronald P. Regensburg »

24bit wrote:I´m getting a stack/heap collision (again) with 7.6
And I am getting this with 7.5.5.

This issue seems related to the builds from the code by kanjitalk755. Also when I force yesterdays 'fat' build to run in 32-bit mode, 7.5.5 startup stops with this error.

A regular 32-bit build from current cebix-macemu code with the same fixes for cursor (SDL patch), Ctrl-F5, and "color palette" does not show this issue.
Last edited by Ronald P. Regensburg on Sat Dec 02, 2017 9:05 pm, edited 2 times in total.
Reason:  
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Current SheepShaver code, built for macOS

Post by kanjitalk755 »

emendelson wrote:2. I have SDL2.framework in /Library/Frameworks (which is where the project looks for it). But I was unable to make a working build. The Frameworks folder was not built into the bundle; I tried adding that folder manually, but it did not help. When I launched the unix binary from the command line, it told me that it could not open the ROM file.
Can't you run it directly from Xcode?
It's incomplete developing version.
24bit wrote:I´m getting a stack/heap collision (again) with 7.6 - is it only me?
Unfortunately, I can't reproduce the problem.

I have prepared issue page on GitHub.
https://github.com/kanjitalk755/macemu/issues
Please write down the issues specific to this project.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Current SheepShaver code, built for macOS

Post by emendelson »

kanjitalk755 wrote:
emendelson wrote:2. I have SDL2.framework in /Library/Frameworks (which is where the project looks for it). But I was unable to make a working build. The Frameworks folder was not built into the bundle; I tried adding that folder manually, but it did not help. When I launched the unix binary from the command line, it told me that it could not open the ROM file.
Can't you run it directly from Xcode?
It's incomplete developing version.
Yes! It runs directly from Xcode! I was trying to run it by launching it directly the Derived Data folder, after adding a Mac OS ROM file. It won't run when I double-click the app bundle, but it does run from Xcode. Thank you!
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Current SheepShaver code, built for macOS

Post by kanjitalk755 »

I have fixed stack/heap collision with system7.x.
And I copied sdl_video.cpp from cebix/macemu.

https://github.com/kanjitalk755/macemu/releases
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Current SheepShaver code, built for macOS

Post by Ronald P. Regensburg »

Yes, the stack/heap collision is now fixed.

There also appears to be a white screen and lost mouse cursor issue after toggling full-screen (Ctrl-return) with System 7.x (not with MacOS 8/9). But that issue also exists in builds from current cebix/macemu source.
User avatar
24bit
Forum All-Star
Posts: 1424
Joined: Wed Nov 11, 2009 5:47 pm
Location: Germany

Re: Current SheepShaver code, built for macOS

Post by 24bit »

Thanks a bunch for the SheepShaver.dmg!
Your build does what it should on my side and its fast too.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Current SheepShaver code, built for macOS

Post by adespoton »

Based on all the activity, I think I'm going to wait until everything gets rolled back into the official build before updating all my packages; good to hear that the stack error's gone on 7.x though; just waiting for someone to figure out the screen/cursor issues now :)

It looks like SheepShaver and BII may indeed survive into 10.14! That's something I didn't think I'd see 4 years ago (as is evidenced from my comments in this forum).
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Current SheepShaver code, built for macOS

Post by Ronald P. Regensburg »

adespoton wrote:Based on all the activity, I think I'm going to wait until everything gets rolled back into the official build before updating all my packages;
As an interim solution, I posted my 2014 build with the patched SDL framework by kanjitalk755 that will solve the cosmetic mouse cursor issue in High Sierra.
viewtopic.php?f=20&t=7360
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Current SheepShaver code, built for macOS

Post by emendelson »

Kanjitalk755's 64-bit build is very impressive. I've noticed one problem: any attempt to access the Internet (via Classilla) causes it to crash. I hope this won't be difficult to fix.
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Current SheepShaver code, built for macOS

Post by kanjitalk755 »

I copied 64-bit clean slirp library from https://github.com/jvernet/macemu.
Please pull from my repo, build and test.
If it's OK, I'll release the build.
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Current SheepShaver code, built for macOS

Post by Cat_7 »

Hi,

Good work, slirp works with your latest code. The build seems really fast.

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

Re: Current SheepShaver code, built for macOS

Post by emendelson »

kanjitalk755 wrote:I copied 64-bit clean slirp library from https://github.com/jvernet/macemu.
Please pull from my repo, build and test.
If it's OK, I'll release the build.
Excellent work! Thank you again!
galgot
Granny Smith
Posts: 119
Joined: Thu Feb 13, 2014 3:59 pm

Re: Current SheepShaver code, built for macOS

Post by galgot »

Hi, Would like to try your build, but have a small problem with the .dmg :
Image
DiskImageMounter cries "no mountable file system". Disk Utility doesn’t want to mount it either.
Mac OS X 10.11.6 here.
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Current SheepShaver code, built for macOS

Post by kanjitalk755 »

64-bit clean slirp version is now released.
https://github.com/kanjitalk755/macemu/releases
galgot wrote:DiskImageMounter cries "no mountable file system". Disk Utility doesn’t want to mount it either.
Mac OS X 10.11.6 here.
New dmg is HFS+, mountable on El Capitan.
galgot
Granny Smith
Posts: 119
Joined: Thu Feb 13, 2014 3:59 pm

Re: Current SheepShaver code, built for macOS

Post by galgot »

Was AFPS, works fine now , thanks.
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Current SheepShaver code, built for macOS

Post by Ronald P. Regensburg »

I noticed a change in recent builds in Sierra. The default "/dev/poll/cdrom" setting for cdrom (that does not work anymore since OSX 10.8) now appears as a volume in the volumes list in SheepShaver preferences (the built-in prefs editor) and CDROM checkboxes appear after the volumes in the list. Is this a change that is supposed to enable mounting CD-ROM's? If so, how am I supposed to use it?
User avatar
Ronald P. Regensburg
Expert User
Posts: 7821
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Current SheepShaver code, built for macOS

Post by Ronald P. Regensburg »

I can answer part of my questions myself. When the CDROM checkbox is checked for a volume, it will be mounted as a locked disk with CD icon in SheepShaver, also locked if the disk image file is not locked itself. I have not checked if software, like some games, will also see the CD-image as the original image. If so, that would be pretty neat.

But showing the non-functional cdrom setting with its default "/dev/poll/cdrom" in the volumes list is confusing.
Post Reply