Windows tap support needs freshening; here's a patch.

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

Post Reply
rakslice
Student Driver
Posts: 22
Joined: Sun Jun 27, 2004 12:50 am

Windows tap support needs freshening; here's a patch.

Post by rakslice »

Here's a couple of simple changes to the SheepShaver/Basilisk Windows tap support. One is to let enough broadcast and multicast packets though tap so that you can use AppleTalk (EtherTalk) and DHCP. The other one adds detection of newer tap devices, like those supported by OpenVPN 2.2, to the GUI.

http://pastebin.com/G85pyNaG

This will at least give people a way to use AppleTalk on 64-bit Windows 7 without having to hack the system to run any unsigned drivers.
User avatar
Cat_7
Expert User
Posts: 6177
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Hi, Thanks!

Will you submit that code to the cvs?

I'll try to build a new Windows version soon.

Any chance you would/could look into the dependency on the cdenable.sys driver as well? Perhaps replace that driver with windows native code?
That would make SheepShaver truly 64-bit ready.

Best,
Cat_7
rakslice
Student Driver
Posts: 22
Joined: Sun Jun 27, 2004 12:50 am

Post by rakslice »

Is there someone I should forward the patch to to get it into CVS?

Regarding CD support, does anyone know what the rationale was for having a separate driver in the first place?

Can it not still be done from within the application itself, e.g.: http://support.microsoft.com/kb/138434?
User avatar
Cat_7
Expert User
Posts: 6177
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Hi,

The cvs is currently maintained by Alexei Svitkine.
You can send patches to: https://lists.sourceforge.net/lists/lis ... silisk-cvs

The reason behind using the driver was (I believe) the fact that is was available from HFV Explorer. That program is used to manage hfs images/cd's in Windows, and was written by Lauri Pesonen, who also created the first specific Windows-based Basilisk builds. The code was then adopted into the Basilisk/SheepShaver builds that came later.


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

Post by Cat_7 »

Hi,

I've built a version with your patches. However, it crashes everytime I boot it on windows 7 64-bit with prefs "ether tap" and "etherguid {"tap09 guid"}". I see it starting the tap device, and then it immediately crashes with a ms visual c++ runtime error

If you want to take a look at the program, it's here: http://www.open.ou.nl/hsp/downloads/she ... tap_64.zip
I built it with cygwin 1.5, as I can't get the newer v1.7 to build SheepShaver. What did you use to build?

Is this version any different from yours? Do you care to share your version and source code?
What does your version solve exactly, and how should it be used exactly?
Does it solve the crash at SS boot when tap is selected and there is traffic on the ethernet?


Best,
Cat_7
chris
Space Cadet
Posts: 4
Joined: Thu Jun 21, 2012 3:15 pm

Re: Windows tap support needs freshening; here's a patch.

Post by chris »

That build above works fine for me - Windows 7 x64, latest OpenVPN

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

Re: Windows tap support needs freshening; here's a patch.

Post by Cat_7 »

Hi, welcome!

That's great.
Where did you copy the tap device etherguid from?

Best,
Cat_7
chris
Space Cadet
Posts: 4
Joined: Thu Jun 21, 2012 3:15 pm

Re: Windows tap support needs freshening; here's a patch.

Post by chris »

I didn't, it's set to slirp in the prefs:

Code: Select all

disk E:\Mac\SheepShaver-2.3\macos9disk.hfv
disk E:\Mac\SheepShaver-2.3\SheepShaver volume.dmg
extfs 
screen win/1024/768
windowmodes 3
screenmodes 63
seriala COM1
serialb COM2
rom E:\Mac\SheepShaver-2.3\Mac_OS_ROM
bootdrive 0
bootdriver 0
ramsize 1073741824
frameskip 0
gfxaccel true
nocdrom false
nonet false
nosound false
nogui false
noclipconversion false
ignoresegv false
ignoreillegal false
jit true
jit68k false
keyboardtype 5
ether slirp
keycodes false
mousewheelmode 1
mousewheellines 3
ignoresegv false
idlewait true
keycodes false
mousewheelmode 1
mousewheellines 3
enableextfs false
debugextfs false
extdrives CDEFGHIJKLMNOPQRSTUVWXYZ
pollmedia true
etherpermanentaddress true
ethermulticastmode 0
routerenabled false
ftp_port_list 21
portfile0 C:\B2TEMP0.OUT
portfile1 C:\B2TEMP1.OUT
User avatar
Cat_7
Expert User
Posts: 6177
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Windows tap support needs freshening; here's a patch.

Post by Cat_7 »

Ah,

That's cheating! The whole idea behind this thread is that the code racsclice provided would enable sheepshaver to use the openvpn tap device for networking on 64 bit windows.
When you choose slirp as networking method this code is NOT used and the tap device is not started.
Without it, this SheepShaver version does indeed run OK.

Best,
Cat_7
chris
Space Cadet
Posts: 4
Joined: Thu Jun 21, 2012 3:15 pm

Re: Windows tap support needs freshening; here's a patch.

Post by chris »

Yes ... but the older sheepshaver doesn't work for me with networking, and I haven't got slirp installed ...

I'm confused now. But it works.
User avatar
Ronald P. Regensburg
Expert User
Posts: 7835
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Windows tap support needs freshening; here's a patch.

Post by Ronald P. Regensburg »

chris wrote:I'm confused now.
Networking with "slirp" will work through a built-in virtual router between the emulated machine and your network, so you cannot use AppleTalk with it. Using a tap device will make a direct connection of the emulated machine with your network possible and thus also AppleTalk connections with devices on your network. Support for tap in 64-bit Windows 7 is the subject of this thread.
Post Reply