SheepShaver for windows on the way....

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
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

SheepShaver for windows on the way....

Post by Cat_7 »

Hello,

I see Gwenole is adding windows specific files to the SheepShaver source, so we are almost having a:

sheepshaver executable for windows. ;-)

The source doesn't yet compile completely on my system. But I wouldn't be surprised if it does after my night (it's now 0.20 hours here) and I see changes to CVS still coming in.

So, gentlemen (and women), Start your Cygwin' and dowload the sources for BasiliskII and SheepShaver through CVS.

(see http://www.ou.nl/open/hsp/engels/SheepS ... /index.htm for more information)

Go to /SheepShaver and enter "make links"
Got to /SheepShaver/src/Unix and enter "./autogen.sh"

See how far you get....

Best wishes

Cat_7
Last edited by Cat_7 on Sun Nov 05, 2006 4:32 pm, edited 3 times in total.
gb
Real Swell Guy!
Posts: 115
Joined: Tue Jun 22, 2004 4:20 am

Post by gb »

Hehe, are there so many people reading the CVS changelogs? ;-)

SheepShaver now works under Cygwin/x86 but without JIT yet. Besides, there may be a slight Cygwin math lib bug causing Speedometer 4 test going into an infinite loop. CVS code should compile modulo a slight change I have yet to fix differently.
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Well Gwenole,

There is always someone looking closely at what comes from your fingers....;-)

Cat_7
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

SheepShaver is building with cygwin now!

But how to run it? I have to start X and then run SheepShaver.
Is it also possible to start it from within windows itself?

Best wishes

Cat_7
ShadowFox
Tinkerer
Posts: 70
Joined: Thu Feb 05, 2004 4:41 am
Location: Connecticut

Post by ShadowFox »

I'll be watching this too, and may have to spend more time in Win2k than my native Gentoo, for reasons other than Half-Life 2 :)
ShadowFox
Tinkerer
Posts: 70
Joined: Thu Feb 05, 2004 4:41 am
Location: Connecticut

Post by ShadowFox »

Alright, I've had some time to play.

I have gotten both Basilisk II and SheepShaver to compile in Cygwin :)

Basilisk II runs, in the sense that it produces graphics output. I could not get it to boot anything, it just sits at the grey startup screen, and only if I check "ignore illegal memory accesses." If I turn it off, it will segfault.

<edit 1> Went through the BasiliskII mailing list, and found if BasiliskII is configured with: ./configure --enable-jit-compiler --enable-sdl-video --enable-sdl-audio, everything works fine. I had to check off "enable lazy invalidation of translation cache" to improve performance, but it does run very well!

<edit 2> I have compiled a version (without GTK-gui support) which can run from directly within Windows (not within Cygwin), if all required cygwin-related DLLs are in the environmental path. Tomorrow I'll pin down exactly which DLLs it needs and wrap up a nice little Zip package for everyone to play with.

On SheepShaver's end, it will compile, but when it runs it will pop up with a blank black window, but immediately crash/segfault with:

SIGSEGV
pc 0x41e4bc
ea 0x6b9d0000
r0 6007ffd8 r1 103ffb40 r2 00000000 r3 ffffffff
r4 103ffe0c r5 103ffe0c r6 00000004 r7 00000004
r8 103ffbd0 r9 40c6dc94 r10 00000000 r11 4093709c
r12 1002f750 r13 00000000 r14 00000000 r15 00000000
r16 00000000 r17 00000000 r18 00000000 r19 00000000
r20 00000000 r21 00000000 r22 00000000 r23 00000005
r24 00000000 r25 40881544 r26 0000fff1 r27 00000001
r28 103ffbd0 r29 1002f88c r30 1002f880 r31 68fff740
f0 0.00000 f1 0.00000 f2 0.00000 f3 0.00000
f4 0.00000 f5 0.00000 f6 0.00000 f7 0.00000
f8 0.00000 f9 0.00000 f10 0.00000 f11 0.00000
f12 0.00000 f13 0.00000 f14 0.00000 f15 0.00000
f16 0.00000 f17 0.00000 f18 0.00000 f19 0.00000
f20 0.00000 f21 0.00000 f22 0.00000 f23 0.00000
f24 0.00000 f25 0.00000 f26 0.00000 f27 0.00000
f28 0.00000 f29 0.00000 f30 0.00000 f31 0.00000
lr 40937ad8 ctr 6007ffd8 cr 24000204 xer 00000000
pc 6007ffd8 fpscr 00000000


Any ideas?

Note: while compiling, prefs_editor_gtk.o stopped because it was missing the header /net/if_arp.h. I guess it's a standard header, so I just created a directory /SheepShaver/src/Unix/net (or /BasiliskII/src/Unix/net), and dumped the if_arp.h file in there, and everything compiled and worked fine.
netdroid9
Space Cadet
Posts: 2
Joined: Sat Dec 04, 2004 4:04 am

Post by netdroid9 »

Download an entire new CVS, or update the if_arp.h. It could be something went wrong, and you got an outdated and buggy if_arp.h

Or something else.

I'm a .NET, Delphi and VB person.

DON'T STONE ME!!!!!! *Runs into the distance*

EDIT: ... ... ... ... ... ... ...

I Really, No, I mean REALLY, need to get rid of all those old Apps.

*Shivers at the fact I have less than 1gb left*
yyyc186
Student Driver
Posts: 11
Joined: Sat Nov 27, 2004 5:53 am

does that mean you got it working?

Post by yyyc186 »

can you post the binaries (I'm still struggling to compile BasiliskII so binaries helped a bunch). D/led all of cygwin followed the instructions and it gets hung up at the link stage (after adding if_arp.h and moving the gtk/gdk headers - which i'm sure i shouldn't have done).
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Hello,

You could pick up the headers that should go in /usr/include/net from a linux distro. Mine are from a SUSE 9.2 distro.
I haven't been able to locate them in Cygwin. Are they in there somewhere?

For me there was no need to change anything in the gtk install.
However, I did have to install SDL 1.27

The compilation of SheepShaver doesn't lead to a usable program on my machine. I have to start X from within Cygwin and start SheepShaver from within the X console window. After reading the rom file it only gives me a black screen. (It does this in regular linux as well) The only SheepShaver version I got to run lately(on mandrake 10) was the rpm version 2.10 I downloaded from http://gwenole.beauchense.free.fr/sheepshaver/files

Best wishes
Cat_7
yyyc186
Student Driver
Posts: 11
Joined: Sat Nov 27, 2004 5:53 am

can you post the binaries and my basiliskii/sheepshaver erro

Post by yyyc186 »

i got sheepshaver working under vmware several versions back and i'll test with my mac hd for my linux install if you post binaries. Gw - does it work for you now?

I downloaded the latest cywin (all of the binaries).

After lots of hacking (specifically moving the gtk and gdk include files into the basilisk include directory structure) and grabbing the if_arp.h files etc. I get this far with BasiliskII. I've tried with gtk or without gtk both give this type of error (its weird that I compile without gtk and it still wants it!)

diofile -lm
obj/prefs_editor_dummy.o(.text+0x0):prefs_editor_dummy.cpp: multiple definition
of `PrefsEditor()'
obj/prefs_unix.o(.text+0xbe0):prefs_unix.cpp: first defined here
obj/main_unix.o(.text+0x148):main_unix.cpp: undefined reference to `LoadPrefs()

obj/main_unix.o(.text+0x807):main_unix.cpp: undefined reference to `_UserPrefsP
th'
obj/prefs.o(.text+0x1d):prefs.cpp: undefined reference to `AddPlatformPrefsDefa
lts()'
obj/prefs.o(.text+0x22):prefs.cpp: undefined reference to `LoadPrefs()'
obj/prefs.o(.text+0x41a):prefs.cpp: undefined reference to `_platform_prefs_ite
s'
obj/prefs.o(.text+0x4b9):prefs.cpp: undefined reference to `_platform_prefs_ite
s'
obj/prefs.o(.text+0xb5d):prefs.cpp: undefined reference to `_platform_prefs_ite
s'
obj/prefs_unix.o(.text+0x900):prefs_unix.cpp: undefined reference to `_g_list_a
pend'
obj/prefs_unix.o(.text+0x950):prefs_unix.cpp: undefined reference to `SavePrefs
)'
obj/prefs_unix.o(.text+0x2571):prefs_unix.cpp: undefined reference to `_g_list_
ppend'
obj/prefs_unix.o(.text+0x258b):prefs_unix.cpp: undefined reference to `_g_list_
ppend'
obj/prefs_unix.o(.text+0x25a5):prefs_unix.cpp: undefined reference to `_g_list_
ppend'
obj/prefs_unix.o(.text+0x25bf):prefs_unix.cpp: undefined reference to `_g_list_
ppend'
obj/prefs_unix.o(.text+0x25d9):prefs_unix.cpp: undefined reference to `_g_list_
ppend'
obj/prefs_unix.o(.text+0x277a):prefs_unix.cpp: more undefined references to `_g
list_append' follow
collect2: ld returned 1 exit status
make: *** [BasiliskII.exe] Error 1

For sheepshaver I get this:
checking for true... /usr/bin/true
checking for GCC 2.7 or higher... yes
checking for GCC 3.0 or higher... yes
checking for ICC... no
checking whether the compiler can generate ELF objects... unknown
checking whether dyngen can be used... no
configure: creating ./config.status
config.status: creating
.infig.status: error: cannot find input file:


In both cases aclocal gives me warnings. For Sheepshaver its:
$ ./autogen.sh
+ Running aclocal: configure.ac:366: warning: underquoted definition of AC_CHEC
K_FRAMEWORK
run info '(automake)Extending aclocal'
or see http://sources.redhat.com/automake/auto ... ng-aclocal
configure.ac:456: warning: underquoted definition of AC_TRANSLATE_DEFINE
/usr/share/aclocal/freetype2.m4:7: warning: underquoted definition of AC_CHECK_F
T2
done.

For BasiliskII its:
configure.ac:381: warning: underquoted definition of AC_CHECK_FRAMEWORK
run info '(automake)Extending aclocal'
or see http://sources.redhat.com/automake/auto ... ng-aclocal
configure.ac:524: warning: underquoted definition of AC_TRANSLATE_DEFINE
acinclude.m4:7: warning: underquoted definition of B2_PATH_GNOMEUI
/usr/share/aclocal/freetype2.m4:7: warning: underquoted definition of AC_CHECK_F
T2
aclocal:configure.ac:246: warning: macro `AM_GNU_GETTEXT' not found in library

Any and all assistance welcome.
gb
Real Swell Guy!
Posts: 115
Joined: Tue Jun 22, 2004 4:20 am

Post by gb »

There is now a standalone binary available for testing. Not as featurish as the Linux version but it's working. You can't build it yourself at the moment though almost all necessary files are in CVS. I need to think better about the build system within cygwin & mingw32/msys without getting mad of symlinks handled differently in either system.

As expected performance within Windows is lower than in Linux, and by approx. 15%!
Marc
Master Emulator
Posts: 357
Joined: Wed Aug 20, 2003 2:14 pm

Post by Marc »

'Cannot map low memory globals. Bad File Descriptor'


I get that message running the SheepShaver.exe from Gwenole's site...any ideas??
yyyc186
Student Driver
Posts: 11
Joined: Sat Nov 27, 2004 5:53 am

testing the .exe

Post by yyyc186 »

I added a rom line, a disk line:
disk /macos
extfs /
windowmodes 3
screenmodes 63
rom /MacOSROM

I get the error mentioned above if I don't launch X first.

If I do launch X and run ./SheepShaver in the bash shell under X I get:

Cannot map low memory globals: No error.
Mac Emu
Forum All-Star
Posts: 1208
Joined: Mon May 20, 2002 11:50 am
Location: Ouraion

Post by Mac Emu »

I'm using the Mac-OS-ROM-Update-1.0 rom image and the following SheepShaver_prefs and can get to the happy Mac before SheepShaver quits with a stderr.txt

extfs
disk OS81.HFV
rom ROM.rom
windowmodes 3
screenmodes 63
seriala FILE
serialb FILE
bootdrive 0
bootdriver 0
ramsize 33554432
frameskip 8
gfxaccel true
nocdrom false
nonet false
nosound false
nogui true
noclipconversion false
ignoresegv true
jit false
jit68k false
keyboardtype 5
keycodes false
mousewheelmode 1
mousewheellines 3
idlewait true
keycodes false
mousewheelmode 1
mousewheellines 3
enableextfs false
debugextfs false
extdrives CDEFGHIJKLMNOPQRSTUVWXYZ
pollmedia true

I've tried changing some prefs, but without success.

Image
AZEnigma
Student Driver
Posts: 19
Joined: Tue Nov 16, 2004 10:43 pm

Post by AZEnigma »

I had the same thing happen to me, crash as soon as the "welcome to Macos" shows. what I did to fix it was boot off an os 8.5 cd, and reinstall the os. Now it boots right up. I seem to get radom crashes every once in a while not sure why, and a lot of ppc apps I have tried to lauch cause the program to freeze. Another weird thing is that sometimes I have to click on the SheepShaver program a few times to get it to run.
Mac Emu
Forum All-Star
Posts: 1208
Joined: Mon May 20, 2002 11:50 am
Location: Ouraion

Post by Mac Emu »

I wondered about doing that, but haven't gotten around to try it. Thanks for suggesting it. I'll try it now ... :D
AZEnigma
Student Driver
Posts: 19
Joined: Tue Nov 16, 2004 10:43 pm

Post by AZEnigma »

Here is my config, you will need to add the cdrom of course to do the install.

extfs c:\
rom c:\cygwin\macosrom
cdrom d:\
disk c:\cygwin\os8.hfv
windowmodes 3
screenmodes 63
seriala COM1
serialb COM2
bootdrive 0
bootdriver 0
ramsize 90777216
frameskip 6
gfxaccel true
nocdrom false
nonet false
nosound false
nogui false
noclipconversion false
ignoresegv true
jit true
jit68k false
keyboardtype 5
keycodes false
mousewheelmode 1
mousewheellines 3
ignoresegv true
idlewait true
keycodes false
mousewheelmode 1
mousewheellines 3
enableextfs false
debugextfs false
extdrives CDEFGHIJKLMNOPQRSTUVWXYZ
pollmedia false
Mac Emu
Forum All-Star
Posts: 1208
Joined: Mon May 20, 2002 11:50 am
Location: Ouraion

Post by Mac Emu »

O.K., I give up.

I tried setting the bootdrive to 0 and -62 and have nocdrom set to false. Do I need a "cdrom (path)" line in the prefs to boot off a CD-ROM?
AZEnigma
Student Driver
Posts: 19
Joined: Tue Nov 16, 2004 10:43 pm

Post by AZEnigma »

Yeah, I still am not sure how to set the boot seq. What I did was remove the system files from the hardisk file so that it is no longer a bootable drive. Then when sheepshaver can't not boot off the hardisk it will default to the cdrom.

Oh and you did add the cdrom d:\ from my prefs above right?
Mac Emu
Forum All-Star
Posts: 1208
Joined: Mon May 20, 2002 11:50 am
Location: Ouraion

Post by Mac Emu »

I hadn't. Now the CD drive is recognized. Thanks! :arrow:
trygvebw
Granny Smith
Posts: 116
Joined: Tue Jun 01, 2004 12:12 pm
Location: Norway

Post by trygvebw »

prasys
Forum All-Star
Posts: 548
Joined: Sun May 23, 2004 7:41 am
Location: MY
Contact:

Post by prasys »

Kudos for trygvebw

man , it a such a long time , now OS9 is possible , so thats right , we are now able to emulate from OS9 to OSX...Good job , PearPC and Sheepsaver....:D


Now to take the rom from my old G4 box...Come to prasys.....
robotintestines
Tinkerer
Posts: 61
Joined: Fri Sep 12, 2003 4:16 am

Post by robotintestines »

Marc wrote:'Cannot map low memory globals. Bad File Descriptor'
This happens to me as well.
gb
Real Swell Guy!
Posts: 115
Joined: Tue Jun 22, 2004 4:20 am

Post by gb »

It was possible to emulate MacOS 9 for many months now. Windows people are simply blind.
icedragon
Student Driver
Posts: 14
Joined: Fri Apr 25, 2003 11:44 pm

Post by icedragon »

It's been possible to emulate Mac OS 9 for many years now. Linux people who think they're superior because of the OS they run should sit at home and read LOTR fanfics while looking at PERL porn.

Oh crap, did I say "should"?

Looks like somebody missed the bus entirely.

Yeah, I mean, "Windows people" never work a codebase to cross a milestone. It's only for the end purpose.

GB, where have you been since 1995?

Obviously, not reading emaculation.com.

Go grep for something.
Post Reply