2 |
|
Basilisk II |
3 |
|
A 68k Macintosh emulator |
4 |
|
|
5 |
< |
Copyright (C) 1997-2002 Christian Bauer et al. |
5 |
> |
Copyright (C) 1997-2005 Christian Bauer et al. |
6 |
|
|
7 |
|
|
8 |
|
License |
26 |
|
IRIX 6.5) |
27 |
|
- AmigaOS 3.x |
28 |
|
- Windows NT 4.0 (mostly works under Windows 95/98, too) |
29 |
< |
- Mac OS X 10.1 |
29 |
> |
- Mac OS X 10.1, 10.2, 10.3 (native windowing port has UI bugs with 10.4) |
30 |
|
|
31 |
|
Some features of Basilisk II: |
32 |
|
- Emulates either a Mac Classic (which runs MacOS 0.x thru 7.5) |
289 |
|
The "video mode" is one of the following: |
290 |
|
win/<width>/<height> |
291 |
|
win/<width>/<height>/<bits per pixel> |
292 |
< |
A refreshed (and buffered) [and very slow] Quartz window. |
293 |
< |
The default <bits> is 32, which is the only depth currently supported. |
292 |
> |
A refreshed (and buffered) Quartz window. |
293 |
|
full/<width>/<height> |
294 |
|
full/<width>/<height>/<bits per pixel> |
295 |
|
A CGDirectDisplay full screen mode. <bits> can currently be 8, 16 or 32. |
296 |
|
If not specified, the default is 32. There is currently no way to switch |
297 |
|
between the Mac OS X and Basilisk II display, but Apple-Option-Escape |
298 |
|
instantly and safely terminates the Basilisk II program. |
300 |
– |
opengl/<width>/<height> |
301 |
– |
opengl/<width>/<height>/<bits per pixel> |
302 |
– |
Currently unimplemented, will be a fast windowed mode. |
299 |
|
|
300 |
|
seriala <serial port description> |
301 |
|
|
362 |
|
|
363 |
|
Linux: |
364 |
|
The "ethernet card description" is the name of an Ethernet interface. |
365 |
< |
There are two approaches to networking with Basilisk II: |
365 |
> |
There are four approaches to networking with Basilisk II: |
366 |
|
|
367 |
|
1. Direct access to an Ethernet card via the "sheep_net" kernel module. |
368 |
|
The "ethernet card description" must be the name of a real Ethernet |
432 |
|
your network administrator about the nets and zones you can use |
433 |
|
(instead of the ones given in the example above). |
434 |
|
|
435 |
+ |
3. Access the network through a "tuntap" interface. |
436 |
+ |
The "ethernet card description" must be set to "tun". |
437 |
+ |
|
438 |
+ |
TUN/TAP provides packet reception and transmission for user |
439 |
+ |
space programs. It can be viewed as a simple Point-to-Point |
440 |
+ |
or Ethernet device, which instead of receiving packets from a |
441 |
+ |
physical media, receives them from user space program and |
442 |
+ |
instead of sending packets via physical media writes them to |
443 |
+ |
the user space program. |
444 |
+ |
|
445 |
+ |
Prerequesties: |
446 |
+ |
- Make sure the "tun" kernel module is loaded |
447 |
+ |
# modprobe tun |
448 |
+ |
- Make sure IP Fordwarding is enabled on your system |
449 |
+ |
# echo 1 >/proc/sys/net/ipv4/ip_forward |
450 |
+ |
|
451 |
+ |
A virtual network configuration script is required and the |
452 |
+ |
default is /usr/local/BasiliskII/tunconfig unless you specify |
453 |
+ |
a different file with the "etherconfig" item. |
454 |
+ |
|
455 |
+ |
This script requires you that "sudo" is properly configured |
456 |
+ |
so that "/sbin/ifconfig" and "/sbin/iptables" can be executed |
457 |
+ |
as root. Otherwise, you can still write a helper script which |
458 |
+ |
invokes your favorite program to enhance a user priviledges. |
459 |
+ |
e.g. in a KDE environment, kdesu can be used as follows: |
460 |
+ |
|
461 |
+ |
#!/bin/sh |
462 |
+ |
exec /usr/bin/kdesu -c /path/to/tunconfig $1 $2 |
463 |
+ |
|
464 |
+ |
4. Access the network through the user mode network stack. |
465 |
+ |
(the code and this documentation come from QEMU) |
466 |
+ |
|
467 |
+ |
By setting the "ethernet card description" to "slirp", |
468 |
+ |
Basilisk II uses a completely user mode network stack (you |
469 |
+ |
don't need root priviledges to use the virtual network). The |
470 |
+ |
virtual network configuration is the following: |
471 |
+ |
|
472 |
+ |
Basilisk II <------> Firewall/DHCP server <-----> Internet |
473 |
+ |
(10.0.2.x) | (10.0.2.2) |
474 |
+ |
| |
475 |
+ |
----> DNS server (10.0.2.3) |
476 |
+ |
| |
477 |
+ |
----> SMB server (10.0.2.4) |
478 |
+ |
|
479 |
+ |
Basilisk II behaves as if it was behind a firewall which |
480 |
+ |
blocks all incoming connections. You can use a DHCP client to |
481 |
+ |
automatically configure the network in Basilisk II. |
482 |
+ |
|
483 |
+ |
In order to check that the user mode network is working, you |
484 |
+ |
can ping the address 10.0.2.2 and verify that you got an |
485 |
+ |
address in the range 10.0.2.x from the Basilisk II virtual |
486 |
+ |
DHCP server. |
487 |
+ |
|
488 |
+ |
Note that ping is not supported reliably to the internet as |
489 |
+ |
it would require root priviledges. It means you can only ping |
490 |
+ |
the local router (10.0.2.2). |
491 |
+ |
|
492 |
+ |
When using the built-in TFTP server, the router is also the |
493 |
+ |
TFTP server. |
494 |
+ |
|
495 |
|
FreeBSD: |
496 |
|
The "ethertap" method described above also works under FreeBSD, but since |
497 |
|
no-one has found the time to write a section for this manual, you're on |
504 |
|
not an Ethernet device, Basilisk II will display a warning message and |
505 |
|
disable Ethernet networking. |
506 |
|
|
507 |
+ |
Mac OS X: |
508 |
+ |
The "slirp" method described above nearly works. |
509 |
+ |
|
510 |
|
See the next item for an alternative way to do networking with Basilisk II. |
511 |
|
|
512 |
|
udptunnel <"true" or "false"> |
587 |
|
error alerts. All errors will then be reported to stdout. The default |
588 |
|
is "false". |
589 |
|
|
590 |
+ |
keyboardtype <keyboard-id> |
591 |
+ |
|
592 |
+ |
Specifies the keyboard type that BasiliskII should report to the MacOS. |
593 |
+ |
The default is "5" which is a "Apple Extended Keyboard II (ISO)", |
594 |
+ |
but many other numbers are understood by most versions of the MacOS |
595 |
+ |
(e.g. 11 is a "Macintosh Plus Keyboard with keypad", |
596 |
+ |
13 is a "Apple PowerBook Keyboard (ISO)" ) |
597 |
+ |
|
598 |
|
For additional information, consult the source. |
599 |
|
|
600 |
|
|
897 |
|
- Jürgen Lachmann <juergen_lachmann@t-online.de>: AmigaOS CyberGraphX support |
898 |
|
- Samuel Lander <blair_sp@hotmail.com>: tile-based window refresh code |
899 |
|
- David Lawrence <davidl@jlab.org>: incremental window refresh code |
900 |
< |
- Bernier Meyer <bmeyer@csse.monash.edu.au>: original UAE-JIT code |
900 |
> |
- Bernie Meyer <bmeyer@csse.monash.edu.au>: original UAE-JIT code |
901 |
|
- Nigel Pearson <nigel@ind.tansu.com.au>: Mac OS X port |
902 |
|
- Lauri Pesonen <lpesonen@nic.fi>: Windows NT port |
903 |
|
- Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>: UAE 68k emulation |
904 |
+ |
- Michael Z. Sliczniak <msliczniak@comcast.net>: Mach memory fault recovery |
905 |
|
- and others... |
906 |
|
|
907 |
|
Special thanks to: |