Shoebill - a Macintosh II + A/UX emulator for OS X

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

Moderators: Cat_7, Ronald P. Regensburg

pruten
Tinkerer
Posts: 68
Joined: Thu Feb 27, 2014 3:10 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by pruten »

neozeed wrote:I got some tcp/ip redirects going...

http://fluffy.superglobalmegacorp.com/!

And on gopherspace!.

My upstream bandwidth sucks, so I'm just keeping this simple. But this is a VPS in europe tunneled to home (hong kong) with apache reverse proxy and xinetd port forwarding. So far so good.
You're a madman, neozeed! XD I've always wanted to run an emulated public-facing A/UX server, but you beat me to it!
neozeed wrote: I would assume this is from disk corruption.?

I've crashed out hard a bunch of times and on boot get a 'dup alloc error'. However booting off the CD, and running a fsck manually solved the problem. Maybe an alternative boot option, or rescue?

I've also found in the /etc/sysinitrc putting a -y in the fsck makes life so much easier, as it may prompt 50+ times on a good crash.
I'll see if I can spin off a cli executable to load and emulate fsck to repair disk images. That's what the real A/UX bootloader/shell does. An early predecessor to Shoebill just emulated A/UX binaries by trapping and emulating some syscalls - hopefully fsck doesn't do anything too complicated
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

pruten wrote: I'll see if I can spin off a cli executable to load and emulate fsck to repair disk images. That's what the real A/UX bootloader/shell does.
That would be terrific, pruten. And while we're on the phone, could I ask about one thing:

Under OS X (US English version), the tilde key doesn't seem to be working in Shoebill, which makes it hard to use "~/whatever". If I remember correctly the same problem kept coming up under BasiliskII/SheepShaver, and needed to be fixed with a keyboard file (I think I created one, actually). Is this easily fixable?

Next, a question for neozeed: when you rebuild your /usr/local disk, is there any chance you could install pico (otherwise known as nano)? I realize I'll never really learn vi or emacs, and pico (or nano) is ideal for quick editing.

And does anyone want instructions on how to bake your password into the Applescript wrapper so that it's securely stored in it (not visible in plain text or extractable) and you won't have to type your password each time?

EDIT: Continued in next message...
pruten
Tinkerer
Posts: 68
Joined: Thu Feb 27, 2014 3:10 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by pruten »

emendelson wrote:
pruten wrote: I'll see if I can spin off a cli executable to load and emulate fsck to repair disk images. That's what the real A/UX bootloader/shell does.
That would be terrific, pruten. And while we're on the phone, could I ask about one thing:

Under OS X (US English version), the tilde key doesn't seem to be working in Shoebill, which makes it hard to use "~/whatever". If I remember correctly the same problem kept coming up under BasiliskII/SheepShaver, and needed to be fixed with a keyboard file (I think I created one, actually). Is this easily fixable?
I've seen that too. Also, the arrow keys don't work in CommandShell on 3.x.x, but I'm not sure what's going on. I'll look into it
emendelson wrote:Next, a question for neozeed: when you rebuild your /usr/local disk, is there any chance you could install pico (otherwise known as nano)? I realize I'll never really learn vi or emacs, and pico (or nano) is ideal for quick editing.
In the mean time - if you haven't already found it - try /mac/bin/TextEditor
emendelson wrote:Finally, I'm sorry to keep asking this, but does anyone have a noob-level step-by-step guide for connecting to the internet (for example, with lynx) from AU/X 3.0 on a wireless Mac? I'm not clear whether it's even possible.
I'm certain it's possible. The "internet sharing" feature on OS X can work over wifi, so there's some way to do it - I just don't know how. Someone with better networking chops might be able to figure it out...
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

pruten wrote: In the mean time - if you haven't already found it - try /mac/bin/TextEditor
Yep - just found it! Thanks!
emendelson wrote:Finally, I'm sorry to keep asking this, but does anyone have a noob-level step-by-step guide for connecting to the internet (for example, with lynx) from AU/X 3.0 on a wireless Mac? I'm not clear whether it's even possible.
I'm certain it's possible. The "internet sharing" feature on OS X can work over wifi, so there's some way to do it - I just don't know how. Someone with better networking chops might be able to figure it out...[/quote]

I removed my question from my message because I thought I was getting near a solution; will report if and when I get it done...
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

pruten wrote: You're a madman, neozeed! XD I've always wanted to run an emulated public-facing A/UX server, but you beat me to it!
I've been dying to do this since I first saw shoebill! Now what I really want to find is my old login replacement from 4.3BSD where I let people add themselves as users, and logon to a MUD.
pruten wrote: I'll see if I can spin off a cli executable to load and emulate fsck to repair disk images. That's what the real A/UX bootloader/shell does. An early predecessor to Shoebill just emulated A/UX binaries by trapping and emulating some syscalls - hopefully fsck doesn't do anything too complicated
Well I'd assume (haha) that since you can parse UFS, and load the kernel from the disk image, that writing a standalone fsck can't be that much more involved :lol: Shame the source to 3.0.0 isn't floating around, and 0.7 doesn't do UFS (derived from BSD 4.2 right?), but that SYSV crap.

Also there is something up with fasin..
inst_fpu_decode: unhandled instruction: fasin op=0xf22e ext = 0x540c pc=0x00046e9e
And of course if you fdiv by zero (why?!) how would you set the 68881 into error? I ended up having it return -1 as I didn't want to crash out.... :\
don't do today what you can put off until tomorrow.
pruten
Tinkerer
Posts: 68
Joined: Thu Feb 27, 2014 3:10 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by pruten »

neozeed wrote:
pruten wrote: I'll see if I can spin off a cli executable to load and emulate fsck to repair disk images. That's what the real A/UX bootloader/shell does. An early predecessor to Shoebill just emulated A/UX binaries by trapping and emulating some syscalls - hopefully fsck doesn't do anything too complicated
Well I'd assume (haha) that since you can parse UFS, and load the kernel from the disk image, that writing a standalone fsck can't be that much more involved :lol: Shame the source to 3.0.0 isn't floating around, and 0.7 doesn't do UFS (derived from BSD 4.2 right?), but that SYSV crap.
The BSD 4.3 fsck can probably handle that. And IIRC, there's some semi-legal (?) System V code floating around...
neozeed wrote: Also there is something up with fasin..
inst_fpu_decode: unhandled instruction: fasin op=0xf22e ext = 0x540c pc=0x00046e9e
Well I can fix that right now: just change in fpu.c

Code: Select all

case ~b(0001100): assert(!"fpu_inst_fasin;");
to

Code: Select all

case ~b(0001100):  result = asinl(source); break; 
and in definition for

Code: Select all

const fpu_inst_name_t _fmath[] = {
add "fpu_inst_fasin" to the end (or anywhere)
neozeed wrote: And of course if you fdiv by zero (why?!) how would you set the 68881 into error? I ended up having it return -1 as I didn't want to crash out.... :\
I have to just sit down and rewrite the whole FPU. When I started, I decided to ignore all the status bits and exceptions (including divide-by-zero), and now the code is rather unmaintainable...
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

pruten wrote: The BSD 4.3 fsck can probably handle that. And IIRC, there's some semi-legal (?) System V code floating around...
Yeah the OpenSolaris is SYSV ... Although they were more into ZFS before the Oracle debacle.
pruten wrote: I have to just sit down and rewrite the whole FPU. When I started, I decided to ignore all the status bits and exceptions (including divide-by-zero), and now the code is rather unmaintainable...
I thought about trying a 'soft' library inside shoebill, fdlibm which magically seems to be working now.. I guess it does rely somewhat on the coprocessor?

Code: Select all

# cat x.c
#include <stdio.h>
#include <math.h>

int main()
{
int e;
printf("tan %lf\n",tan(5.2));
printf("atan2 %lf\n",atan2(5.2,2.5));
printf("atan %lf\n",atan(5.2));
printf("sin %lf\n",sin(5.2));
printf("sinh %lf\n",sinh(5.2));
printf("cos %lf\n",cos(5.2));
printf("asin %lf\n",asin(0.9));
printf("exp %lf\n",exp(1.0));
printf("frexp %.2lf",frexp(1024,&e));
printf(" %d\n",e);
return 0;
}


So running this on an x86 box with FPU

# uname -a
Linux backup-website 3.2.0-4-amd64 #1 SMP Debian 3.2.57-3+deb7u2 x86_64 GNU/Linux
root@backup-website:/tmp# gcc x.c -o x -lm;./x
tan -1.885642
atan2 1.122651
atan 1.380808
sin -0.883455
sinh 90.633363
cos 0.468517
asin 1.119770
exp 2.718282
frexp 0.50 11


And on A/UX with fdlibm

tan -1.885642
atan2 1.122651
atan 1.380808
sin -0.883455
sinh 90.633363
cos 0.468517
asin 1.119770
exp 2.718282
frexp 0.50 11
So I guess that is a good start....

ALSO FOR ANYONE ELSE, DON'T RUN THAT PROGRAM ON SHOEBILL... You'll just crash

Code: Select all

Shoebill v0.0.4 - http://github.com/pruten/shoebill - Peter Rutenbar (c) 2014

Assertion failed: !"fpu_inst_fsinh;", file ../intermediates/fpu.post.c, line 141
0

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
don't do today what you can put off until tomorrow.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

Another version of the Applescript wrapper for Shoebill:

https://dl.dropboxusercontent.com/u/271 ... er-0.8.zip

If I've done this correctly, this SHOULD do the following:

If you enter in a terminal

Code: Select all

defaults write org.wpdos.auxrunner Backup0 once
your boot disk will be backed up the next time you run the wrapper app, but only that one time.

If you enter:

Code: Select all

defaults write org.wpdos.auxrunner Backup0 always
then your boot disk will be backed up every time. You may not want to do this if you experience disk corruption without an obvious crash.

If you enter:

Code: Select all

defaults write org.wpdos.auxrunner Backup0 false
you will turn off the "always backup" option. If you want to backup again, you must enter either the "Backup0 once" or "Backup0 always" form of the command.

Now, for restoring:

If you enter:

Code: Select all

defaults write org.wpdos.auxrunner Restore0 once
then no backup will occur (obviously), and the current backup will be restored.

If you enter:

Code: Select all

defaults write org.wpdos.auxrunner Restore0 always
then the runner will be in kiosk mode - it will always restart with the backup of your boot disk.

If you enter:

Code: Select all

defaults write org.wpdos.auxrunner Restore0 false
then it will stop restoring on startup. If you want to restore again, you will need to enter the "Restore0 once" or "Restore0 always" form of the command.

Now, this is mostly a proof of concept version: it does NOT test whether the backup file actually exists; it does not test whether the backup file has the same name as the file in the disk0 folder; it does not test whether a backup file with a different name is already in the backup folder before backing up. All that will come later if this works.

Also, it does not display a "Please wait" dialog while backing up or restoring. It just makes you wait.

So, if you try this, be really, really certain that you have a backup of your earlier version of the wrapper, because who knows what this may do if I wasn't thinking clearly.

And now a request to pruten:

When running the command-line version of Shoebill, Cmd-Q instantly shuts down the emulator instead of passing the command to whatever program may be running in AU/X. Is it possible to capture Cmd-Q and feed it to the emulator instead? (Sorry to keep asking for such things...)
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

Image

In case any OSX users want to try the usermode networking, I built the SDL2 version, and incorporated my slirp stuff...

The binary is here.

remember to install the SDL2 framework first, and it's all CLI driven.

and by default it has the following redirection (to change it you have to re-compile. sorry)

tcp 42323 to 23 (telnet)
tcp 42370 to 70 (gopher)
tcp 42380 to 80 (http)

configure the VM for
ip address 10.0.2.15
net mask 255.255.255.0
gateway 10.0.2.2

dns 10.0.2.3
don't do today what you can put off until tomorrow.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

Neozeed, this looks terrific.

A noob-level question: after I've done a newconfig and added the IP address, etc., how do I change the 192.168.2.1 (etc.) to the numbers you suggest?

I think I used to know this in my linux days, but it's long gone.... Thanks!
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

emendelson wrote:Neozeed, this looks terrific.

A noob-level question: after I've done a newconfig and added the IP address, etc., how do I change the 192.168.2.1 (etc.) to the numbers you suggest?

I think I used to know this in my linux days, but it's long gone.... Thanks!
A/UX keeps the network config scattered around like any other ancient UNIX.

Code: Select all

/etc/NETADDRS
0	10.0.2.15 10.0.2.255 255.255.255.0

/etc/hosts
10.0.2.15 fluffy # Tue Sep 16 10:58:42 PDT 2014
These two files (and mostly NETADDRS) is what will control your ip address.

Also don't forget to edit /etc/sysinitrc or /etc/rc wherever you put in your default route command

Code: Select all

/etc/rc
/usr/etc/route add default 10.0.2.2 1
And of course you may as well setup DNS.

Code: Select all

/etc/resolv.conf
nameserver 10.0.2.3
search superglobalmegacorp.com
domain superglobalmegacorp.com
Or that is how I setup mine, you may want a different domain, or no domain.
don't do today what you can put off until tomorrow.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

And (again a noob-level question): this means no need for tap/tun??
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by adespoton »

neozeed wrote:
pruten wrote: You're a madman, neozeed! XD I've always wanted to run an emulated public-facing A/UX server, but you beat me to it!
I've been dying to do this since I first saw shoebill! Now what I really want to find is my old login replacement from 4.3BSD where I let people add themselves as users, and logon to a MUD.
I recommend starting here: https://en.wikipedia.org/wiki/Dworkin%27s_Game_Driver

and just setting it to run on port 23. There's links to Diku and Circle (and friends) source there too -- but I'm pretty sure DGD will run on A/UX (I used to run it on Mac OS 9, Linux 2.4, OpenBSD and eventually on OS X), and it has some characteristics that would be useful for running in the setup you're thinking of. I may even have a copy of my old "DGD Remote Terminal" mudlib around somewhere, that integrates file transfer, a message board, chat rooms and, of course, a few dungeons.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

Neozeed,

I'm afraid this more noob incompetence, but here goes. I'm running Shoebill under the latest OS X 10.9, with an Airport router (10.0.1.1).

I put your executable in my AUXrunner wrapper, turned off the Tap/Tun stuff, and made all the changes you specified. At least I think I did. Here's a screen shot:

Image

I can't ping anything from AU/X and can't ping 10.0.2.15 from OS X.

There's probably some obvious step that I missed that any knowledgeable person would know about, but I can't figure out what it might be. I'll be grateful for any help.
User avatar
Cat_7
Expert User
Posts: 6121
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by Cat_7 »

Hi,

The latest info by neozeed is for the windows version into which in incorporated slirp.
For OSX, the tun/tap instructions still hold.

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

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

Cat_7 wrote:The latest info by neozeed is for the windows version into which in incorporated slirp.
For OSX, the tun/tap instructions still hold.
So, did I misinterpret this in neozeed's post:
In case any OSX users want to try the usermode networking, I built the SDL2 version, and incorporated my slirp stuff...

The binary is here.

Remember to install the SDL2 framework first, and it's all CLI driven.
It sure sounds as if he intended this to work under OS X - and he posted an OS X binary - but if I'm misinterpreting, that explains what's wrong.
User avatar
Cat_7
Expert User
Posts: 6121
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by Cat_7 »

Oops, yes, perhaps I'm wrong ;-).
I'll try.

Yes, you are right. It is an OSX binary. I tried it from the command line, and I could ping 10.0.2.2, but nothing outside AUX.

Best,
cat_7
Last edited by Cat_7 on Thu Sep 18, 2014 8:41 pm, edited 1 time in total.
Reason:  
User avatar
adespoton
Forum All-Star
Posts: 4208
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by adespoton »

Wouldn't SLiRP need a SLiRP host? Is that baked into the emulator, or do you still need to run some sort of PPP/SLIP server on the host?

I presume this is the same code talked about here with QEMU and BOCHS:
http://bochs.sourceforge.net/doc/docboo ... slirp.html

This seems to indicate that any activity in the guest is presented to the host as occurring within the emulator itself. So if the guest is attempting to do something on a port that is in use on the host, it will fail unless you port map it. Could this be the issue?
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

Wait - I was wrong! Neozeed's OS X build does connect to the internet! I simply was looking in the wrong places.

Ping doesn't work, but lynx connects to my ISP's page that says "You entered an unknown web address etc." (I can't seem to figure out how to get Lynx to connect to any other web site.) wget will download a web page. irc works exactly as neozeed says it does.

So, yes! Neozeed has got user-space networking working under OS X. Now to figure out how to get a graphical web browser working - and maybe how to get ping working, just to see it in action...
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

emendelson wrote:Neozeed,

I'm afraid this more noob incompetence, but here goes. I'm running Shoebill under the latest OS X 10.9, with an Airport router (10.0.1.1).

I put your executable in my AUXrunner wrapper, turned off the Tap/Tun stuff, and made all the changes you specified. At least I think I did. Here's a screen shot:

I can't ping anything from AU/X and can't ping 10.0.2.15 from OS X.

There's probably some obvious step that I missed that any knowledgeable person would know about, but I can't figure out what it might be. I'll be grateful for any help.

Ping won't work. Basically think of slirp as a small router within your machine. The only address you can ping from A/UX is 10.0.2.2 ..

Code: Select all

fluffy.root # ping 10.0.2.2
PING 10.0.2.2: 56 data bytes
64 bytes from 10.0.2.2: icmp_seq=0. time=16. ms
64 bytes from 10.0.2.2: icmp_seq=1. time=16. ms
64 bytes from 10.0.2.2: icmp_seq=2. time=16. ms
Also your default route didn't pick up, I'm not sure why..

At the end of /etc/rc I have:

Code: Select all

#	/bin/chgrp daemon /dev/tty0
/usr/etc/route add default 10.0.2.2 1
/usr/etc/ping 10.0.2.2 32 1
I like to make sure that I can ping my interface on boot. ... although it really is a hangover from when I got slirp working with shoebill.

try a tcp connection, or telnet to something on the internet (once you have routing in place..)

Code: Select all

fluffy.root # netstat -nr
Routing tables
Destination      Gateway            Flags     Refs     Use  Interface
127.0.0.1        127.0.0.1          UH          1       58  lo0
default          10.0.2.2           UG          1       48  ae0
10.0.2           10.0.2.15          U           0       33  ae0
this is what it should look like. I have an OS/2 BBS on 31.220.45.129, which is always a good test.

To telnet into your A/UX box, it's something like this:

telnet localhost 42323

And you should see the banner

Code: Select all

Jasons-MacBook-Air:core jsteve$ telnet 127.0.0.1 42323
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.


Apple Computer A/UX (fluffy)

login: 
don't do today what you can put off until tomorrow.
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

emendelson wrote:And (again a noob-level question): this means no need for tap/tun??
That is only for my build, only because I hate messing around with my hosts's networking. Although now that I have it running on OS X and Win32, I need to take a stab at libpcap. That way I can mix A/UX in with GNS3 so I can setup an Appletalk WAN with cisco routers and all that jazz. Plus that way I can mix in MS Appletalk on Windows NT. :mrgreen:
don't do today what you can put off until tomorrow.
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

Cat_7 wrote:Hi,

The latest info by neozeed is for the windows version into which in incorporated slirp.
For OSX, the tun/tap instructions still hold.

Best,
Cat_7

I also built a SDL/OS X version which incorporated the slirp from my Win32 build. Although I'm not trying to add to the confusion, just trying to make it easier if anyone had issues with tun/tap and nat..
don't do today what you can put off until tomorrow.
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

Cat_7 wrote:Oops, yes, perhaps I'm wrong ;-).
I'll try.

Yes, you are right. It is an OSX binary. I tried it from the command line, and I could ping 10.0.2.2, but nothing outside AUX.

Best,
cat_7
That is the way it work. Try a TCP connection, and it'll work. :mrgreen:
don't do today what you can put off until tomorrow.
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by emendelson »

Everything in your OS X build works exactly as you says it works! All the confusion earlier was a problem of user-ignorance and user-confusion!

I hope your slurp implementation gets into pruten's build in some form. Meanwhile: next question: will it be possible to use a web browser before too long?
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Shoebill - a Macintosh II + A/UX emulator for OS X

Post by neozeed »

adespoton wrote:Wouldn't SLiRP need a SLiRP host? Is that baked into the emulator, or do you still need to run some sort of PPP/SLIP server on the host?

I presume this is the same code talked about here with QEMU and BOCHS:
http://bochs.sourceforge.net/doc/docboo ... slirp.html

This seems to indicate that any activity in the guest is presented to the host as occurring within the emulator itself. So if the guest is attempting to do something on a port that is in use on the host, it will fail unless you port map it. Could this be the issue?
It is exactly from Qemu ... Version 0.90 to be exact. I really should update it! But ages ago I wanted to do Novell Netware with Qemu (which 0.90 can run NetWare 3.12..) but I wanted it's networking on my network so I took SIMH's libpcap code and injected it into Qemu, and it worked! And while I was mucking around in Qemu, I saw that the slirp library was pretty easy to interface with, so I ported it to SIMH fo my 4.2 BSD and 4.3 BSD experiments, and that worked too! So naturally when I saw Shoebill had ethernet I just had to incorporate slirp.

So basically it's an ancient version of FreeBSD's TCP/IP stack built to run standalone. You send it ethernet frames, and it'll interpret them, and it can even open up connections like a NAT devices on behalf of the client. It really is simple.

So the limitations are that you can ONLY ping 10.0.2.2 . If you use 10.0.2.3 for a nameserver, it'll just pass it through to your host for name resolution. You can use any nameserver that you wish though.

I hope this clears up some of the confusion that I didn't intend to cause.

I should add, that I bet the tun/tap is faster, and of course you have *FULL* TCP/IP access that way. slirp is kinda quick/dirty, and good enough for basic operations.
don't do today what you can put off until tomorrow.
Post Reply