Login  •  Register


The time is now: Thu Jul 02, 2020 3:57 pm

Emaculation wiki  •  Delete all board cookies



Post new topic  Reply to topic Page 1 of 2 [ 32 posts ]    Go to page 1, 2  Next
Print view Previous topic  |  Next topic
Author Message
PostPosted: Thu Dec 26, 2019 8:26 pm 
Offline
Student Driver
User avatar

Joined: Mon Aug 06, 2018 2:58 pm
Posts: 21
Location: Cornwall, UK
BasiliskII System 7 coexisting with macOS X

Similar to Unity mode in VMware Fusion.

https://twitter.com/maczydeco/status/11 ... 31778?s=21

Not mine, but very cool !

Image


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Thu Dec 26, 2019 10:04 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
Wow, that’s very cool indeed!

Any chance to do this with SheepShaver as well?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Fri Dec 27, 2019 1:57 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
I was able to build this under Mojave by doing this:

Download the source code from:

https://github.com/zydeco/macemu/tree/rootless

Open a terminal in the BasiliskII/src/Unix folder and run:

.autogen.sh

Then open the BasiliskII MacOS Xcode project. Change the schemes to release; change the Build System to Legacy Build System. Build BasiliskII. (EDIT: unnecessary steps removed.)

EDIT: Run it once with the normal settings in the prefs file. Choose an app that you want to run in a window and place an alias to it in the System/Startup Items folder.

Then edit the prefs file so that win is set to "rootless" (no quotation marks), not win/nnn/nnn or anything else.

Launch BasiliskII; you'll see the startup screen briefly, then a window with the app that you started from the Startup Items group. The macOS topline menu will be hidden by a System 7 top-line menu for the app that you started (I'm using WordPerfect). Use that to open files, save them to the Unix folder, etc.. When you quit your application, you'll see the Finder menu in the top-line menu and can quit BasiliskII. (I have a shortcut to a Shut Down script in the Apple Menu, so I don't need to do this.)

With my disk image, at least, it seems unstable (as the author warns), and launches correctly about one in five or more tries, but it's very impressive to see when it starts. There are screen artifacts in the application window, which I can clear out by launching and then quitting SimpleText. All this will probably get fixed in the future. Again, this very impressive.

EDIT: If it doesn't launch, try again and again until it does. As I said above, I typically have to double-click on the app at least five or six times. Typically, it shows the System 7 start screen briefly on the fourth try, then finally opens correctly on the sixth or seventh try.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sat Dec 28, 2019 12:55 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
And if anyone wants to experiment with this, here's a copy built under Mojave and notarized:

http://www.columbia.edu/~em36/BasiliskI ... -prefs.zip

I made two changes in the source code, so that this build can coexist with your existing BII setup: the prefs file for this build is

.basilisk_rootless_prefs

and the PRAM file is

.basilisk_rootless_xpram

To run the new build, simply copy your existing .basilisk_ii_prefs file to .basilisk_rootless_prefs. Then you can edit the file to replace the line

screen win/nnn/nnn (or whatever)

with

screen rootless


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Dec 31, 2019 10:08 am 
Offline
Granny Smith

Joined: Thu Nov 09, 2017 12:06 pm
Posts: 134
Zydeco's rootless is unstable because using JIT-enabled BasiliskII.
So I have made JIT-disabled version and its pull request.

https://github.com/kanjitalk755/macemu/ ... o_rootless

https://github.com/zydeco/macemu/pull/1


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Dec 31, 2019 11:49 am 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
Great, thank you!

I don’t use or need Basilisk II but am tempted to test it only for the rootless mode. It will be somewhere in the beginning of next year as I have no time at the moment.

If this turns out to be stable in the long run, do you guys think it would make sense to add rootless mode to the master branch?

And a question to kanjitalk755: Do you think the code for rootless mode could be added to SheepShaver as well?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Dec 31, 2019 1:31 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
Using kanjitalk755's new code (thank you!) I've updated the notarized build that I posted earlier. Same download link:

http://www.columbia.edu/~em36/BasiliskI ... -prefs.zip

As before, I made two changes in the source code, so that this build can coexist with your existing BII setup: the prefs file for this build is

.basilisk_rootless_prefs

and the PRAM file is

.basilisk_rootless_xpram

To run the new build, simply copy your existing .basilisk_ii_prefs file to .basilisk_rootless_prefs. Then you can edit the file to replace the line

screen win/nnn/nnn (or whatever)

with

screen rootless


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 01, 2020 10:38 am 
Offline
Granny Smith

Joined: Thu Nov 09, 2017 12:06 pm
Posts: 134
mabam wrote:
And a question to kanjitalk755: Do you think the code for rootless mode could be added to SheepShaver as well?

Zydeco patched ToolBox with 68k code to achieve rootless behavior.
If the same is possible with PowerPC, I think that SheepShaver will be rootless.
I don't know if it can actually be coded.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Jan 12, 2020 1:34 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
I’ve just tested this on two different machines, one running High Sierra and one Mountain Lion. But there’s just a black/gray background on both of them. Could this be related to the ROM? I’m using the Performa ROM.

Image


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Jan 12, 2020 1:51 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
I use Performa630.Rom and built under High Sierra. I use system 7.6.1. Maybe try that version?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Jan 12, 2020 7:31 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
I tried 7.6 with your ROM, but same result.
Maybe the amended code or the build isn’t compatible with High Sierra and older?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Sun Jan 12, 2020 8:28 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
mabam wrote:
I tried 7.6 with your ROM, but same result.
Maybe the amended code or the build isn’t compatible with High Sierra and older?


That could be true. Maybe someone else would care to test it?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Jan 14, 2020 6:58 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
I never built something in Xcode before, but I eventually succeeded for Basilisk II with the instructions found at https://github.com/kanjitalk755/macemu/ ... /README.md and viewtopic.php?p=59999#p59999 (building on the command line failed, though). I built in a High Sierra VM.

However, when running the build in rootless mode, I get the same black/gray background as before. So it really looks like the code doesn’t work on High Sierra and older.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Tue Jan 14, 2020 10:21 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
mabam wrote:
I tried 7.6 with your ROM, but same result.
Maybe the amended code or the build isn’t compatible with High Sierra and older?


I tried it in a VMware Sierra setup, and got the same black screen that you got. Probably this needs Mojave or later, but maybe someone else can confirm this on real hardware.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 10:02 am 
Offline
Granny Smith

Joined: Thu Nov 09, 2017 12:06 pm
Posts: 134
El Capitan was the same, so I fixed it.
But the drawing when dragging a window is strange...

https://github.com/kanjitalk755/macemu/tree/zydeco_rootless


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 11:25 am 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
kanjitalk755 wrote:
El Capitan was the same, so I fixed it.
Wow, that was very quick. Thank you!
Works fine here on High Sierra.

kanjitalk755 wrote:
But the drawing when dragging a window is strange...
You probably mean this:
Image

Same with the mouse:
Image


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 6:43 pm 
Offline
Space Cadet
User avatar

Joined: Tue May 24, 2016 9:11 pm
Posts: 7
Location: Stockholm, Sweden
kanjitalk755 wrote:
But the drawing when dragging a window is strange...


That's probably the hackiest part of it, since there's no good place to hook that, and it doesn't work properly on Mac OS 8. As a workaround you can use Power Windows, so windows are solid while they're dragged.

I'll look into adding it SheepShaver when I have some more time, but I'm not that familiar with how the toolbox works on PowerPC.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 7:36 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
zydeco wrote:
As a workaround you can use Power Windows, so windows are solid while they're dragged.
Good tip, thank you!

zydeco wrote:
I'll look into adding it SheepShaver when I have some more time, but I'm not that familiar with how the toolbox works on PowerPC.
Would be a very nice feature to have in SheepShaver …

Thanks for all your work on this!


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 7:45 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
Probably this is impossible, but is there any way for rootless Basilisk to refresh its windows? The apps that I've been trying (like WordPerfect for the Mac) tend to create blank windows, or windows that only show in part until you move the mouse pointer over them. I'm not at all sure that this is (1) possible and (2) practical because of the CPU power it would take, but I hope it's worth asking about.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 8:49 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
emendelson wrote:
Probably this is impossible, but is there any way for rootless Basilisk to refresh its windows? The apps that I've been trying (like WordPerfect for the Mac) tend to create blank windows, or windows that only show in part until you move the mouse pointer over them. I'm not at all sure that this is (1) possible and (2) practical because of the CPU power it would take, but I hope it's worth asking about.

Is that with “Power Windows” installed?
I just followed Zydeco’s suggestion and tried that, but it resulted in what you seemed to describe here, only in Finder. After moving the frontmost window, the one in the back didn’t redraw:
Image

Instead, I succeeded with “DragAnyWindow”. But the option “Center” has to be disabled, else the menus aren’t masked:
Image Image

I haven’t installed any more complex application yet, so I can’t test that.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 9:15 pm 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
Yes, Power Windows is running, with the solid drag option selected, but the windows have a lot of artifacts.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 9:21 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
“DragAnyWindow” can be found on Macintosh Garden. Curious whether that will eliminate the artifacts in your applications.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 9:36 pm 
Offline
Space Cadet
User avatar

Joined: Tue May 24, 2016 9:11 pm
Posts: 7
Location: Stockholm, Sweden
I have PowerWindows set up like this:
Image
Do not activate "Use Multitasking", or it will mess up redrawing completely (even on the normal version of BasiliskII, so maybe it's a bug in BasiliskII, or in Power Windows).

I've experienced issues with menus not being masked only rarely, but when it happened, it would be for the whole session (since BasiliskII was started, and only restarting it would fix it).

Making the emulated mac's menu bar match the native menu bar size (extending it from 20 to 23 pixels) also causes some glitches occasionally, especially when dragging windows up there. But keeping it the same size would be ugly, as part of the native menu bar would be visible under it, and I didn't find a way to hide the menu bar without also hiding the dock.

emendelson wrote:
Probably this is impossible, but is there any way for rootless Basilisk to refresh its windows? The apps that I've been trying (like WordPerfect for the Mac) tend to create blank windows, or windows that only show in part until you move the mouse pointer over them. I'm not at all sure that this is (1) possible and (2) practical because of the CPU power it would take, but I hope it's worth asking about.

This happens sometimes, I think it's some desync between when BasiliskII finds changes in the emulated screen, and when the transparency mask is applied. Unfortunately I haven't been able to reproduce it consistently enough to debug. If it's consistent for you, what's your setup?


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Wed Jan 15, 2020 10:59 pm 
Offline
Master Emulator
User avatar

Joined: Wed Apr 10, 2013 9:32 am
Posts: 316
zydeco wrote:
Do not activate "Use Multitasking", or it will mess up redrawing completely […]
Thanks for the tip! I should have tried that before I shouted.

Using it with this option switched off, the area behind the original place of a window is now redrawn when I release the window. EDIT: Setting the Screen Update Frequency to “Immediate” doesn’t change that behaviour for me.
However, when using “DragAnyWindow”, it is redrawn immediately while I’m still moving the window away.
So I’ll stick with the latter, but would never have tested it without your suggesting “Power Windows”. Thanks again!


Last edited by mabam on Thu Jan 16, 2020 1:50 am, edited 1 time in total.


Top
 Profile  
Reply with quote Post a reply  
PostPosted: Thu Jan 16, 2020 12:11 am 
Offline
Forum All-Star

Joined: Tue Oct 14, 2008 12:12 am
Posts: 1193
That doesn't help on this MacBook Air 2015, non-retina (of course) running Mojave:

https://imgur.com/a/2pgwUDA

Image


Top
 Profile  
Reply with quote Post a reply  
Display posts from previous:  Sort by  
Post new topic  Reply to topic Page 1 of 2 [ 32 posts ]    Go to page 1, 2  Next


Who is online

Users browsing this forum: No registered users and 21 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
 

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group