1 |
|
|
2 |
< |
Basilisk II, Version 0.7 |
3 |
< |
A free, portable Mac II emulator |
2 |
> |
Basilisk II |
3 |
> |
A 68k Macintosh emulator |
4 |
|
|
5 |
< |
Copyright (C) 1997-1999 Christian Bauer et al. |
6 |
< |
Freely distributable |
5 |
> |
Copyright (C) 1997-2003 Christian Bauer et al. |
6 |
|
|
7 |
|
|
8 |
|
License |
9 |
|
------- |
10 |
|
|
11 |
|
Basilisk II is available under the terms of the GNU General Public License. |
12 |
< |
See the file "COPYING" that is included in this archive for details. |
12 |
> |
See the file "COPYING" that is included in the distribution for details. |
13 |
|
|
14 |
|
|
15 |
|
Overview |
16 |
|
-------- |
17 |
|
|
18 |
< |
Basilisk II is a free, portable, Open Source 68k Mac emulator. It requires |
19 |
< |
a copy of a Mac ROM and a copy of MacOS to run. Basilisk II is freeware and |
20 |
< |
distributed under the GNU General Public License. |
18 |
> |
Basilisk II is an Open Source 68k Macintosh emulator. That is, it enables |
19 |
> |
you to run 68k MacOS software on you computer, even if you are using a |
20 |
> |
different operating system. However, you still need a copy of MacOS and |
21 |
> |
a Macintosh ROM image to use Basilisk II. |
22 |
|
|
23 |
|
Basilisk II has currently been ported to the following systems: |
24 |
|
- BeOS R4 (PowerPC and x86) |
25 |
< |
- Unix (tested under Linux, Solaris 2.5, FreeBSD 3.x and IRIX 6.5) |
25 |
> |
- Unix (tested under Linux, Solaris 2.x, FreeBSD 3.x, NetBSD 1.4.x and |
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, 10.2 |
30 |
|
|
31 |
|
Some features of Basilisk II: |
32 |
|
- Emulates either a Mac Classic (which runs MacOS 0.x thru 7.5) |
37 |
|
- Floppy disk driver (only 1.44MB disks supported) |
38 |
|
- Driver for HFS partitions and hardfiles |
39 |
|
- CD-ROM driver with basic audio functions |
40 |
+ |
- Easy file exchange with the host OS via a "Host Directory Tree" icon |
41 |
+ |
on the Mac desktop |
42 |
|
- Ethernet driver |
43 |
|
- Serial drivers |
44 |
|
- SCSI Manager (old-style) emulation |
45 |
|
- Emulates extended ADB keyboard and 3-button mouse |
46 |
< |
- Uses UAE 68k emulation or (under AmigaOS) real 68k processor |
46 |
> |
- Uses UAE 68k emulation or (under AmigaOS and NetBSD/m68k) real 68k |
47 |
> |
processor |
48 |
|
|
49 |
|
The emulator is not yet complete. See the file "TODO" for a list of |
50 |
|
unimplemented stuff. |
51 |
|
|
52 |
|
|
53 |
< |
Requirements |
54 |
< |
------------ |
50 |
< |
|
51 |
< |
To use Basilisk II, you need either a 512K Mac Classic ROM image or a |
52 |
< |
512K or 1MB 32-bit clean Macintosh ROM image. You also need a copy of MacOS |
53 |
< |
(0.x thru 7.5 for Classic emulation, 7.x or 8.0/8.1 for Mac II emulation). |
54 |
< |
For copyright reasons, none of these items are included with Basilisk II. |
55 |
< |
MacOS 7.5.3 and earlier versions can be downloaded from Apple and various |
56 |
< |
other Internet sites. Mac ROM files are not freely available. You have to |
57 |
< |
own a real Mac and read out its ROM. No, I don't know where you can download |
58 |
< |
ROM files. No, I won't send you one. |
59 |
< |
|
60 |
< |
Depending on the platform you use, Basilisk II has additional requirements: |
61 |
< |
|
62 |
< |
BeOS: |
63 |
< |
You need BeOS R4 or better. On a PowerPC system you also need the |
64 |
< |
"sheep" driver that comes with SheepShaver. To use Ethernet, you need |
65 |
< |
the "sheep_net" add-on that also comes with SheepShaver (both items |
66 |
< |
are included in the SheepShaver Trial Versions). The PowerPC version of |
67 |
< |
Basilisk II cannot do Mac Classic emulation. |
68 |
< |
|
69 |
< |
Unix: |
70 |
< |
You need X11R4, pthreads support and GNU make. To use the GUI preferences |
71 |
< |
editor, you also need GTK+ version 1.2 or better. On Linux, you need |
72 |
< |
glibc 2.0 or better. |
73 |
< |
|
74 |
< |
AmigaOS: |
75 |
< |
You need at least a 68020 and AmigaOS 3.0 or better. To get the GUI |
76 |
< |
preferences editor, you need gtlayout.library V39 or later. To get sound |
77 |
< |
output, you need AHI V2 or later. Both items can be found on Aminet. You |
78 |
< |
also need the "PrepareEmul" utility that somes with ShapeShifter (or any |
79 |
< |
equivalent PrepareEmul substitute). The AmigaOS version of Basilisk II |
80 |
< |
cannot do Mac Classic emulation. |
81 |
< |
|
82 |
< |
Windows: |
83 |
< |
You need at least Windows NT 4.0. Windows 95 and 98 can be used too, with a |
84 |
< |
somewhat reduced set of features. Basilisk II supports DirectX version 5 or |
85 |
< |
later, but version 3 may also work, depending on your graphics card. |
86 |
< |
|
87 |
< |
|
88 |
< |
Installation |
89 |
< |
------------ |
90 |
< |
|
91 |
< |
BeOS: |
92 |
< |
If you have a binary distribution of Basilisk II for BeOS, there are |
93 |
< |
executables for BeOS/PPC and BeOS/x86 included. If you have the source |
94 |
< |
distribution, cd to "src/BeOS", and type "make". Basilisk II cannot run |
95 |
< |
concurrently with SheepShaver. Trying to do so will crash Basilisk II, |
96 |
< |
or SheepShaver, or both. On a PowerPC system you must have installed the |
97 |
< |
"sheep" driver that comes with SheepShaver. To use Ethernet, you must have |
98 |
< |
installed the "sheep_net" add-on that also comes with SheepShaver |
99 |
< |
|
100 |
< |
Unix: |
101 |
< |
To compile Basilisk II, cd to "src/Unix", and type "./configure" followed |
102 |
< |
by "make" and (optionally) "make install". To use Ethernet networking under |
103 |
< |
Linux, you either have to configure your kernel for ethertap support or make |
104 |
< |
and install the "sheep_net" driver: cd to "src/Unix/Linux/NetDriver" and |
105 |
< |
type "make". This should produce a kernel module "sheep_net.o". Now su root |
106 |
< |
and type "./MAKEDEV" which will install the device node "/dev/sheep_net". |
107 |
< |
Then say "/sbin/insmod sheep_net.o" and the driver should be ready for use. |
108 |
< |
You should give appropriate access rights to /dev/sheep_net if you don't |
109 |
< |
want to run Basilisk II as root. |
110 |
< |
|
111 |
< |
This is what Brian J. Johnson says about compiling for IRIX: |
112 |
< |
"I recommend compiling with "-Ofast". This requires changing "-g" |
113 |
< |
to "-Ofast" in the Makefile, and adding "-ipa" to LDFLAGS. This |
114 |
< |
turns on massive interprocedural optimization, and makes for much |
115 |
< |
better performance." |
53 |
> |
Requirements and Installation |
54 |
> |
----------------------------- |
55 |
|
|
56 |
< |
AmigaOS: |
57 |
< |
If you have a binary distribution of Basilisk II for AmigaOS, there is an |
119 |
< |
executable included. You must also have the "PrepareEmul" utility installed |
120 |
< |
that comes with ShapeShifter (or any equivalent PrepareEmul substitute, |
121 |
< |
see the ShapeShifter docs). If you have the source distribution, cd to |
122 |
< |
"src/AmigaOS" and type "smake". To recompile Basilisk II, you need SAS/C |
123 |
< |
6.58. Earlier versions may not work. |
124 |
< |
|
125 |
< |
Windows NT: |
126 |
< |
If you have a binary distribution of Basilisk II for Windows, there is a |
127 |
< |
Windows NT binary included. To access CD-ROMs under Windows NT, the driver |
128 |
< |
"cdenable.sys" must be copied to your "\WinNT\System32\drivers" directory. |
129 |
< |
To access CD-ROMs under Windows 9x, the driver "cdenable.vxd" must be copied |
130 |
< |
to the "\Windows\System" directory. To recompile Basilisk II, you need |
131 |
< |
MS Visual V++ 5.0 or later. Symantec C++ should work, too, with some |
132 |
< |
modifications. See the "sysdeps.h" file in the "Windows" directory. |
133 |
< |
|
134 |
< |
The ROM file has to be named "ROM" and put in the same directory as the |
135 |
< |
Basilisk II executable but you can specify a different location for the ROM |
136 |
< |
file with the "rom" option in the preferences file. |
56 |
> |
Please consult the file "INSTALL" for a list of system requirements and |
57 |
> |
installation instructions. |
58 |
|
|
59 |
|
|
60 |
|
Configuration |
69 |
|
BeOS: |
70 |
|
/boot/home/config/settings/BasiliskII_prefs |
71 |
|
|
72 |
< |
Unix: |
72 |
> |
Unix, Mac OS X: |
73 |
|
~/.basilisk_ii_prefs |
74 |
|
|
75 |
|
AmigaOS: |
95 |
|
This item describes one MacOS volume to be mounted by Basilisk II. |
96 |
|
There can be multiple "disk" lines in the preferences file. Basilisk II |
97 |
|
can handle hardfiles (byte-per-byte images of HFS volumes in a file on |
98 |
< |
the host system) as well as HFS partitions on hard disks etc. (but Basilisk |
99 |
< |
II doesn't know about MacOS partition tables; it relies on the host OS to |
100 |
< |
handle this). The "volume description" is either the pathname of a hardfile |
101 |
< |
or a platform-dependant description of an HFS partition or drive. If the |
102 |
< |
volume description starts with an asterisk ("*"), the volume is write |
103 |
< |
protected for MacOS (and the "*" is discarded). |
98 |
> |
the host system), HFS partitions on hard disks etc., and MacOS-partitioned |
99 |
> |
disks (it can only access the first partition, though). The "volume |
100 |
> |
description" is either the pathname of a hardfile or a platform-dependant |
101 |
> |
description of an HFS partition or drive. If the volume description is |
102 |
> |
prefixed by an asterisk ("*"), the volume is write protected for MacOS. |
103 |
> |
|
104 |
> |
Basilisk II can also handle some types of Mac "disk image" files directly, |
105 |
> |
as long as they are uncompressed and unencoded. |
106 |
|
|
107 |
|
BeOS: |
108 |
|
To specify an HFS partition, simply specify its path (e.g. |
109 |
< |
"/dev/disk/scsi/0/1/0/0_3"). If you don't specify any volume, Basilisk II |
109 |
> |
"/dev/disk/scsi/0/1/0/0_3"). If you don't specify any volumes, Basilisk II |
110 |
|
will search for and use all available HFS partitions. |
111 |
|
|
112 |
|
Unix: |
113 |
< |
To specify an HFS partition, simply specify its path (e.g. |
114 |
< |
"/dev/sda5"). |
113 |
> |
To specify an HFS partition, simply specify its path (e.g. "/dev/sda5"). |
114 |
> |
If you want to access a MacOS-partitioned hard disk or removable volume |
115 |
> |
(Jaz, Zip etc.) and your operating system doesn't understand MacOS |
116 |
> |
partition tables, you can specify the block device name (e.g. "/dev/sda") |
117 |
> |
to access the first HFS partition on the device. Under Linux, if you |
118 |
> |
don't specify any volumes, Basilisk II will search /etc/fstab for |
119 |
> |
unmounted HFS partitions and use these. |
120 |
|
|
121 |
|
AmigaOS: |
122 |
|
Partitions/drives are specified in the following format: |
149 |
|
installed CD-ROM drives. The format of the "CD-ROM drive description" |
150 |
|
is the same as that of "disk" lines. |
151 |
|
|
152 |
+ |
extfs <direcory path> |
153 |
+ |
|
154 |
+ |
This item specifies the root directory for the "Host Directory Tree" |
155 |
+ |
file system (the "Unix/BeOS/Amiga/..." icon on the Finder desktop). |
156 |
+ |
All objects contained in that directory are accessible by Mac applications. |
157 |
+ |
|
158 |
+ |
This feature is only available when File System Manager V1.2 or later |
159 |
+ |
is installed on the Mac side. FSM 1.2 is built-in beginning with MacOS 7.6 |
160 |
+ |
and can be installed as a system extension (downloadable from Apple, look |
161 |
+ |
for the FSM SDK in the developer section) for earlier MacOS versions. |
162 |
+ |
|
163 |
|
scsi0 <SCSI target> ... scsi6 <SCSI target> |
164 |
|
|
165 |
|
These items describe the SCSI target to be used for a given Mac SCSI |
189 |
|
"scsi.device/2"). |
190 |
|
|
191 |
|
Windows: |
192 |
< |
Ignored. Basilisk II scans for all SCSI devices and the first 6 found |
193 |
< |
devices are made visible to the MacOS. You cannot explicitly enable a |
255 |
< |
device, but you can disable a device (see the "disablescsi" command). |
192 |
> |
The "SCSI target" has the format <"Vendor"> <"Model"> (e.g. |
193 |
> |
scsi0 "HP" "CD-Writer+ 7100"). Note the use of quotes. |
194 |
|
|
195 |
|
screen <video mode> |
196 |
|
|
197 |
< |
This item describes the type of video display to be used by Basilisk II. |
198 |
< |
If you are using a Mac Classic ROM, the display is always 1-bit 512x342 |
199 |
< |
and this item is ignored. The format of the "video mode" is platform |
200 |
< |
specific. |
197 |
> |
This item describes the type of video display to be used by default for |
198 |
> |
Basilisk II. If you are using a Mac Classic ROM, the display is always |
199 |
> |
1-bit 512x342 and this item is ignored. The format of the "video mode" is |
200 |
> |
platform specific. |
201 |
|
|
202 |
|
BeOS: |
203 |
|
The "video mode" is one of the following: |
217 |
|
Unix: |
218 |
|
The "video mode" is one of the following: |
219 |
|
win/<width>/<height> |
220 |
< |
Color display in an X11 window of the given size. The color depth |
221 |
< |
(8/15/24 bit) depends on the depth of the underlying X11 screen. |
222 |
< |
This is the default. |
223 |
< |
dga |
224 |
< |
Full-screen display using the X11 DGA extensions. The color depth |
220 |
> |
Color display in an X11 window of the given size. There are several |
221 |
> |
resolutions and color depths available. The set of color depths |
222 |
> |
depends on the capabilities of the X11 server, the operating system, |
223 |
> |
and Basilisk II compile-time options, but 1 bit and the default depth |
224 |
> |
of the X11 screen should always be available. |
225 |
> |
dga/<width>/<height> |
226 |
> |
[if Basilisk II was configured with --enable-xf86-dga] |
227 |
> |
Full-screen display using the XFree86 DGA extension. The color depth |
228 |
|
(8/15/24 bit) depends on the depth of the underlying X11 screen. |
229 |
< |
For DGA to work, Basilisk II must be compiled with DGA support |
230 |
< |
enabled (selectable in the configure script). |
229 |
> |
"width" and "height" specify the maximum width/height to use. |
230 |
> |
Saying "dga/0/0" means "complete screen". |
231 |
> |
dga/<frame buffer name> |
232 |
> |
[if Basilisk II was configured with --enable-fbdev-dga] |
233 |
> |
Full-screen display using the frame buffer device /dev/fb. The color |
234 |
> |
depth (8/15/24 bit) depends on the depth of the underlying X11 screen. |
235 |
> |
The "frame buffer name" is looked up in the "fbdevices" file (whose |
236 |
> |
path can be specified with the "fbdevicefile" prefs item) to determine |
237 |
> |
certain characteristics of the device (doing a "ls -l /dev/fb" should |
238 |
> |
tell you what your frame buffer name is). |
239 |
|
|
240 |
|
AmigaOS: |
241 |
|
The "video mode" is one of the following: |
247 |
|
15-bit truecolor display in a Picasso96 PIP. This requires |
248 |
|
Picasso96 as well as a PIP-capable graphics card (e.g. Picasso IV). |
249 |
|
scr/<hexadecimal mode ID> |
250 |
< |
8/15/24-bit fullscreen display on a Picasso96 screen with the given |
251 |
< |
mode ID. This requires Picasso96. For 15 and 24 bit, the frame buffer |
252 |
< |
format must be QuickDraw-compatible (big-endian, xRGB 1:5:5:5 or |
253 |
< |
xRGB 8:8:8:8). The screen size will be the default size for that |
254 |
< |
mode ID. |
250 |
> |
8/15/24-bit fullscreen display on a Picasso96/CyberGraphX screen with |
251 |
> |
the given mode ID. This requires Picasso96 or CyberGraphX. For 15 and |
252 |
> |
24 bit, the frame buffer format must be QuickDraw-compatible |
253 |
> |
(big-endian, xRGB 1:5:5:5 or xRGB 8:8:8:8). The screen size will be |
254 |
> |
the default size for that mode ID. |
255 |
|
|
256 |
|
Windows: |
257 |
|
The "video mode" is one of the following: |
285 |
|
application via Alt-Tab, Basilisk II is put in "snooze" mode (i.e. MacOS |
286 |
|
is frozen). |
287 |
|
|
288 |
+ |
Mac OS X: |
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) 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. |
299 |
+ |
|
300 |
|
seriala <serial port description> |
301 |
|
|
302 |
|
This item describes the serial port to be used as Port A (Modem Port) |
347 |
|
is not available and this setting is ignored. The "ethernet card description" |
348 |
|
is a platform-dependant description of an ethernet card. |
349 |
|
|
350 |
+ |
General note: To use TCP/IP from MacOS, you should assign a different IP |
351 |
+ |
address to the MacOS (entered into the MacOS TCP/IP (or MacTCP) control |
352 |
+ |
panel). Otherwise there will be confusion about which operating system will |
353 |
+ |
handle incoming packets. |
354 |
+ |
|
355 |
|
BeOS: |
356 |
|
It doesn't matter what you give as "ethernet card description", Basilisk II |
357 |
|
will always use the first Ethernet card it finds as long an an "ether" |
358 |
< |
line exists (e.g. say "ether yes"). As Basilisk II requires the sheep_net |
359 |
< |
net server add-on from SheepShaver, you can only use Ethernet on PowerPC |
360 |
< |
machines. |
358 |
> |
line exists (e.g. say "ether yes"). Using Ethernet requires the "sheep_net" |
359 |
> |
Net Server add-on to be installed. The first time you start Basilisk II |
360 |
> |
with Ethernet enabled you will be asked whether it's OK to make the |
361 |
> |
necessary changes to your BeOS network configuration to enable sheep_net. |
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: |
366 |
< |
1. Direct access to an Ethernet card via the "sheep_net" driver. |
367 |
< |
In this case, the "ethernet card description" must be the name |
368 |
< |
of a real Ethernet card, e.g. "eth0". It also requires the "sheep_net" |
369 |
< |
driver to be installed and accessible. This approach will allow you |
370 |
< |
to run all networking protocols under MacOS (TCP/IP, AppleTalk, IPX |
371 |
< |
etc.) but there is no connection between Linux networking and MacOS |
372 |
< |
networking. MacOS will only be able to talk to other machines on |
373 |
< |
the Ethernet, but not to other networks that your Linux box routes |
374 |
< |
(e.g. a second Ethernet or a PPP connection to the Internet). |
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 |
369 |
> |
card, e.g. "eth0". |
370 |
> |
|
371 |
> |
The sheep_net module is included in the Basilisk II source |
372 |
> |
distribution in the directory "src/Unix/Linux/NetDriver". You have |
373 |
> |
to compile and install the module yourself: |
374 |
> |
|
375 |
> |
$ su |
376 |
> |
[enter root password] |
377 |
> |
# make |
378 |
> |
# make dev |
379 |
> |
[this will create a /dev/sheep_net device node; you should give |
380 |
> |
appropriate access rights to the user(s) running Basilisk II] |
381 |
> |
# insmod sheep_net.o |
382 |
> |
|
383 |
> |
If you copy the sheep_net.o module to a place where it can be found |
384 |
> |
by the kernel module loader ("/lib/modules/<version>/kernel/drivers/net" |
385 |
> |
for 2.4 kernels) and add the line |
386 |
> |
|
387 |
> |
alias char-major-10-198 sheep_net |
388 |
> |
|
389 |
> |
to "/etc/modules.conf", the kernel should be able to load the module |
390 |
> |
automatically when Basilisk II is started. |
391 |
> |
|
392 |
> |
The sheep_net module will allow you to run all networking protocols |
393 |
> |
under MacOS (TCP/IP, AppleTalk, IPX etc.) but there is no connection |
394 |
> |
between Linux networking and MacOS networking. MacOS will only be |
395 |
> |
able to talk to other machines on the Ethernet, but not to other |
396 |
> |
networks that your Linux box routes (e.g. a second Ethernet or a PPP |
397 |
> |
connection to the Internet). |
398 |
> |
|
399 |
|
2. Putting Basilisk II on a virtual Ethernet via the "ethertap" device. |
400 |
|
In this case, the "ethernet card description" must be the name |
401 |
|
of an ethertap interface, e.g. "tap0". It also requires that you |
402 |
< |
configure your kernel to enable routing and the ethertap device: |
402 |
> |
configure your kernel to enable routing and ethertap support: |
403 |
|
under "Networking options", enable "Kernel/User netlink socket" and |
404 |
|
"Netlink device emulation", under "Network device support", activate |
405 |
< |
"Ethertap network tap". Next, see /usr/src/linux/Documentation/ |
406 |
< |
networking/ethertap.txt for information on how to set up /dev/tap* |
407 |
< |
device nodes and activate the ethertap interface. Under MacOS, |
408 |
< |
select an IP address that is on the virtual network and set the |
409 |
< |
default gateway to the IP address of the ethertap interface. This |
410 |
< |
approach will let you access all networks that your Linux box has |
411 |
< |
access to (especially, if your Linux box has a dial-up Internet |
412 |
< |
connection and is configured for IP masquerading, you can access |
413 |
< |
the Internet from MacOS). The drawback is that you can only use |
414 |
< |
network protocols that Linux can route, so you have to install and |
415 |
< |
configure netatalk if you want to use AppleTalk. |
405 |
> |
"Ethertap network tap". You also have to modify drivers/net/ethertap.c |
406 |
> |
a bit before compiling the new kernel: |
407 |
> |
|
408 |
> |
- insert "#define CONFIG_ETHERTAP_MC 1" near the top (after the |
409 |
> |
#include lines) |
410 |
> |
- comment out the line "dev->flags|=IFF_NOARP;" in ethertap_probe() |
411 |
> |
|
412 |
> |
Next, see /usr/src/linux/Documentation/networking/ethertap.txt for |
413 |
> |
information on how to set up /dev/tap* device nodes and activate the |
414 |
> |
ethertap interface. Under MacOS, select an IP address that is on the |
415 |
> |
virtual network and set the default gateway to the IP address of the |
416 |
> |
ethertap interface. This approach will let you access all networks |
417 |
> |
that your Linux box has access to (especially, if your Linux box has |
418 |
> |
a dial-up Internet connection and is configured for IP masquerading, |
419 |
> |
you can access the Internet from MacOS). The drawback is that you |
420 |
> |
can only use network protocols that Linux can route, so you have to |
421 |
> |
install and configure netatalk if you want to use AppleTalk. Here is |
422 |
> |
an example /etc/atalk/atalkd.conf for a LAN: |
423 |
> |
|
424 |
> |
eth0 -seed -phase 2 -net 1 -addr 1.47 -zone "Ethernet" |
425 |
> |
tap0 -seed -phase 2 -net 2 -addr 2.47 -zone "Basilisknet" |
426 |
> |
|
427 |
> |
(the "47" is an arbitrary node number). This will set up a zone |
428 |
> |
"Ethernet" (net 1) for the Ethernet and a zone "Basilisknet" (net 2) |
429 |
> |
for the internal network connection of the ethertap interface. |
430 |
> |
MacOS should automatically recognize the nets and zones upon startup. |
431 |
> |
If you are in an existing AppleTalk network, you should contact |
432 |
> |
your network administrator about the nets and zones you can use |
433 |
> |
(instead of the ones given in the example above). |
434 |
> |
|
435 |
> |
FreeBSD: |
436 |
> |
The "ethertap" method described above also works under FreeBSD, but since |
437 |
> |
no-one has found the time to write a section for this manual, you're on |
438 |
> |
your own here... |
439 |
|
|
440 |
|
AmigaOS: |
441 |
|
You have to specify the name of the SANA-II Ethernet device and the device |
444 |
|
not an Ethernet device, Basilisk II will display a warning message and |
445 |
|
disable Ethernet networking. |
446 |
|
|
447 |
+ |
See the next item for an alternative way to do networking with Basilisk II. |
448 |
+ |
|
449 |
+ |
udptunnel <"true" or "false"> |
450 |
+ |
|
451 |
+ |
Setting this to "true" enables a special network mode in which all network |
452 |
+ |
packets sent by MacOS are tunnelled over UDP using the host operating |
453 |
+ |
system's native TCP/IP stack. This can only be used to connect computers |
454 |
+ |
running Basilisk II (and not, for example, for connecting to the Internet |
455 |
+ |
or an AppleShare server running on a real Mac), but it is probably the |
456 |
+ |
easiest way to set up a network between two instances of Basilisk II |
457 |
+ |
because the UDP tunnelling doesn't require any special kernel modules or |
458 |
+ |
network add-ons. It relies on IP broadcasting, however, so its range is |
459 |
+ |
limited. It should be fine though for doing a little file sharing or |
460 |
+ |
playing Spectre. |
461 |
+ |
|
462 |
+ |
udpport <IP port number> |
463 |
+ |
|
464 |
+ |
This item specifies the IP port number to use for the "UDP Tunnel" mode. |
465 |
+ |
The default is 6066. |
466 |
+ |
|
467 |
|
rom <ROM file path> |
468 |
|
|
469 |
|
This item specifies the file name of the Mac ROM file to be used by |
492 |
|
For refreshed graphics modes (usually window modes), this specifies |
493 |
|
how many frames to skip after drawing one frame. Higher values make |
494 |
|
the video display more responsive but require more processing power. |
495 |
< |
The default is "8". |
495 |
> |
The default is "8". Under Unix/X11, a value of "0" selects a "dynamic" |
496 |
> |
update mode that cuts the display into rectangles and updates each |
497 |
> |
rectangle individually, depending on display changes. |
498 |
|
|
499 |
|
modelid <MacOS model ID> |
500 |
|
|
501 |
< |
Specifies the Model ID that Basilisk II should report to MacOS. |
502 |
< |
The default is "5" which corresponds to a Mac IIci. If you want to |
503 |
< |
run MacOS 8, you have to set this to "14" (Quadra 900). Other values |
504 |
< |
are not officially supported and may result in crashes. MacOS versions |
505 |
< |
earlier than 7.5 may only run with the Model ID set to "5". If you are |
506 |
< |
using a Mac Classic ROM, the model is always "Mac Classic" and this |
507 |
< |
setting is ignored. |
501 |
> |
Specifies the Macintosh model ID that Basilisk II should report to MacOS. |
502 |
> |
The default is "5" which corresponds to a Mac IIci. If you want to run |
503 |
> |
MacOS 8, you have to set this to "14" (Quadra 900). Other values are not |
504 |
> |
officially supported and may result in crashes. MacOS versions earlier |
505 |
> |
than 7.5 may only run with the Model ID set to "5". If you are using a Mac |
506 |
> |
Classic ROM, the model is always "Mac Classic" and this setting is |
507 |
> |
ignored. |
508 |
|
|
509 |
|
nosound <"true" or "false"> |
510 |
|
|
533 |
|
Unix: |
534 |
|
|
535 |
|
keycodes <"true" or "false"> |
536 |
< |
keycodefile <Keycode file path> |
536 |
> |
keycodefile <keycodes file path> |
537 |
|
|
538 |
|
By default, the X11 event handler in Basilisk II uses KeySyms to |
539 |
|
translate keyboard event to Mac keycodes. While this method is very |
544 |
|
not on the selected keymap. Unfortunately it depends on the X server |
545 |
|
being used and possibly also on the type of keyboard attached. So |
546 |
|
Basilisk II needs a table to translate X keycodes to Mac keycodes. |
547 |
< |
This table is read by default from /usr/local/lib/basilisk_ii_keycodes |
547 |
> |
This table is read by default from /usr/local/share/BasiliskII/keycodes |
548 |
|
unless you specify a different file with the "keycodefile" item. |
549 |
< |
A sample keycode file ("basilisk_ii_keycodes") is included with |
550 |
< |
Basilisk II. |
549 |
> |
A sample keycode file is included with Basilisk II. |
550 |
> |
|
551 |
> |
fbdevicefile <fbdevices file path> |
552 |
> |
|
553 |
> |
This option specifies the file that contains frame buffer device |
554 |
> |
specifications for the fbdev-DGA video mode (when Basilisk II was |
555 |
> |
configured with --enable-fbdev-dga). The default location of the file |
556 |
> |
is /usr/local/share/BasiliskII/fbdevices. A sample file is included |
557 |
> |
with Basilisk II. |
558 |
> |
|
559 |
> |
mousewheelmode <mode> |
560 |
> |
|
561 |
> |
If you have a mouse with a wheel, this option specifies whether moving |
562 |
> |
the wheel will be reported to the MacOS as "Page up/down" (mode 0) or |
563 |
> |
"Cursor up/down" (mode 1) keys. |
564 |
> |
|
565 |
> |
mousewheellines <number of lines> |
566 |
> |
|
567 |
> |
If "mousewheelmode" is set to mode 1 (Cursor up/down), this option sets |
568 |
> |
the number of key events sent to MacOS for each wheel movement (the |
569 |
> |
number of lines to scroll). |
570 |
> |
|
571 |
> |
ignoresegv <"true" or "false"> |
572 |
> |
|
573 |
> |
Set this to "true" to ignore illegal memory accesses. The default |
574 |
> |
is "false". This feature is only implemented on the following |
575 |
> |
platforms: Linux/x86, Linux/ppc, Darwin/ppc. |
576 |
> |
|
577 |
> |
dsp <device name> |
578 |
> |
mixer <device name> |
579 |
> |
|
580 |
> |
Under Linux and FreeBSD, this specifies the devices to be used for sound |
581 |
> |
output and volume control, respectively. The defaults are "/dev/dsp" and |
582 |
> |
"/dev/mixer". |
583 |
|
|
584 |
|
AmigaOS: |
585 |
|
|
591 |
|
|
592 |
|
ahi/<hexadecimal mode ID> |
593 |
|
|
594 |
+ |
scsimemtype <type> |
595 |
+ |
|
596 |
+ |
This item controls the type of memory to use for SCSI buffers. Possible |
597 |
+ |
values are: |
598 |
+ |
0 Chip memory |
599 |
+ |
1 24-bit DMA capable memory |
600 |
+ |
2 Any memory |
601 |
+ |
|
602 |
+ |
Be warned that many SCSI host adapters will not work with the "Any memory" |
603 |
+ |
setting. Basilisk II has no way of knowing which memory type is supported |
604 |
+ |
by the host adapter and setting an unsupported type will result in data |
605 |
+ |
corruption. |
606 |
+ |
|
607 |
|
Windows: |
608 |
|
|
609 |
|
noscsi <"true" or "false"> |
614 |
|
means is that the control is not returned to the application until the |
615 |
|
command is completely finished. Normally this is not an issue, but when a |
616 |
|
CDR/CDRW is closed or erased the burner program typically wants to wait in |
617 |
< |
some progress dialog The result may be that the application reports a |
617 |
> |
some progress dialog the result may be that the application reports a |
618 |
|
time-out error, but the operation completes all right anyway. |
619 |
|
|
620 |
|
nofloppyboot <"true" or "false"> |
628 |
|
This is very useful since many devices have almost identical ATAPI and SCSI |
629 |
|
versions of their hardware, and MacOS applications usually support the SCSI |
630 |
|
version only. The example below is typical: |
631 |
< |
|
631 |
> |
|
632 |
|
replacescsi "HP" "CD-Writer+ 7100" "PHILIPS" "CDD3600" |
633 |
< |
|
633 |
> |
|
634 |
|
Note the use of quotes. |
635 |
|
|
636 |
< |
disablescsi <"Vendor"> <"Model"> |
636 |
> |
rightmouse <0/1> |
637 |
> |
|
638 |
> |
Defines what the right mouse button is used for. The default values of 0 |
639 |
> |
means that it is used to move windowed mode BasiliskII screen. |
640 |
> |
Value 1 sends a combination Control and mouse click to the MacOS. |
641 |
> |
This may be useful under OS versions 8 and above. |
642 |
> |
|
643 |
> |
keyboardfile <path> |
644 |
> |
|
645 |
> |
Defines the path of the customized keyboard code file. |
646 |
> |
|
647 |
> |
pollmedia <"true" or "false"> |
648 |
> |
|
649 |
> |
If true (default), tries to automatically detect new media. |
650 |
> |
Applies to all "floppy", "cd" or "disk" removable media except |
651 |
> |
1.44 MB floppies. May cause modest slow down. If unchecked, |
652 |
> |
use Ctrl-Shift-F11 to manually mount new media. |
653 |
> |
If you have auto-insert notification (AIN) enabled, you may turn this |
654 |
> |
option off. Note that some CD related software require AIN, |
655 |
> |
and some other need it to be turned off. Consult the documentation |
656 |
> |
of your CD software to learn which one is optimal for you. |
657 |
> |
|
658 |
> |
framesleepticks <milliseconds> |
659 |
|
|
660 |
< |
Disables this vendor/model combination. You may need this simply because |
661 |
< |
you have more than 6 SCSI devices, or the particular device has problems |
662 |
< |
under BasiliskII. E.g. |
663 |
< |
|
664 |
< |
disablescsi "HP" "CD-Writer+ 7100" |
665 |
< |
|
666 |
< |
Again, note the use of quotes. |
660 |
> |
The amount of time between video frames. |
661 |
> |
|
662 |
> |
showfps <true/false> |
663 |
> |
|
664 |
> |
If true, the real frame rate is displayed. |
665 |
> |
|
666 |
> |
stickymenu <true/false> |
667 |
> |
|
668 |
> |
If true, the main menu bar is kept open even after the mouse button is |
669 |
> |
released, under all OS versions (OS 8 has this feature already). There |
670 |
> |
are extensions to do the same thing, but it's faster to handle this in |
671 |
> |
native code. Default is "true". |
672 |
|
|
673 |
|
ntdx5hack <"true" or "false"> |
674 |
|
|
675 |
< |
You may need this on NT if your display adapter driver has a bug in DirectX |
676 |
< |
palette support. Black and white are reversed. It fixes the palette issue |
677 |
< |
by using GDI palette instead of D3D palette. Default is false. |
675 |
> |
You may need this on NT if your display adapter driver has a bug in |
676 |
> |
DirectX palette support. Black and white are reversed. It fixes the |
677 |
> |
palette issue by using GDI palette instead of D3D palette. Default is |
678 |
> |
false. |
679 |
> |
|
680 |
> |
|
681 |
> |
JIT-specific configuration |
682 |
> |
-------------------------- |
683 |
> |
|
684 |
> |
A Just-In-Time (JIT) translation engine is available for x86. This is |
685 |
> |
aimed at translating 68040 instructions to native equivalent code |
686 |
> |
sequences, thus providing faster emulation speeds. |
687 |
> |
|
688 |
> |
jit <"true" or "false"> |
689 |
> |
|
690 |
> |
Set this to "true" to enable the JIT compiler. Default value is |
691 |
> |
"true" if the JIT compiler was compiled in. Besides, this is |
692 |
> |
effective only if Basilisk II is configured to emulate a 68040. |
693 |
> |
|
694 |
> |
jitfpu <"true" or "false"> |
695 |
> |
|
696 |
> |
Set this to "true" to enable translation of floating-point (FPU) |
697 |
> |
instructions. Default is "true". |
698 |
> |
|
699 |
> |
jitcachesize <size> |
700 |
> |
|
701 |
> |
Allocate "size" kilobytes of RAM for the translation cache. The |
702 |
> |
value given will be rounded down to the nearest multiple of a page |
703 |
> |
size. Minimal value is "2048" (2MB). Default value is "8192" (8MB). |
704 |
> |
|
705 |
> |
jitlazyflush <"true" or "false"> |
706 |
> |
|
707 |
> |
Set this to "true" to enable lazy invalidation of the translation |
708 |
> |
cache. This is always recommended as it usually makes the system |
709 |
> |
more responsive and faster, especially while running MacOS |
710 |
> |
8.X. Default value is "true". |
711 |
> |
|
712 |
> |
jitdebug <"true" or "false"> |
713 |
> |
|
714 |
> |
Set this to "true" to enable the JIT debugger. This requires a |
715 |
> |
build of Basilisk II with the cxmon debugger. Default is "false". |
716 |
|
|
717 |
|
|
718 |
|
Usage |
737 |
|
On PC-style keyboards, "Alt" is the Mac "Command" key, while the "Windows" |
738 |
|
key is the Mac "Option" key. |
739 |
|
|
740 |
+ |
Mouse: |
741 |
+ |
Under Unix, pressing Ctrl-F5 while the Basilisk II window is active will |
742 |
+ |
grab the mouse. This is needed for compatibility with some MacOS programs, |
743 |
+ |
especially games such as flight simulators. Press Ctrl-F5 again to return |
744 |
+ |
to normal mouse operation. |
745 |
+ |
|
746 |
|
Floppy: |
747 |
|
Basilisk II can only handle 1.44MB MFM floppies. Depending on your platform, |
748 |
< |
flopyy disk changes might not be detected automatically. Under Linux, press |
748 |
> |
floppy disk changes might not be detected automatically. Under Unix, press |
749 |
|
Ctrl-F1 to mount a floppy. Under BeOS, select the appropriate "Mount" menu |
750 |
|
item or press Ctrl-F1 to mount a floppy. Under Windows, press Ctrl-Shift-F11. |
751 |
|
|
752 |
|
HFS partitions: |
753 |
|
Having HFS partitions mounted for read-write access under Basilisk II while |
754 |
|
they are also mounted on the host OS will most likely result in volume |
755 |
< |
corruption and data losses. Unmount your HFS volumes before starting |
755 |
> |
corruption and data loss. Unmount your HFS volumes before starting |
756 |
|
Basilisk II. |
757 |
|
|
758 |
|
ZIP drives: |
771 |
|
ROM. Also, the video display is fixed to 512x342 in monochrome. The AmigaOS |
772 |
|
and BeOS/PPC versions of Basilisk II cannot do Mac Classic emulation. |
773 |
|
|
774 |
+ |
Video resolution switching: |
775 |
+ |
Run-time switching of video resolutions requires the Display Manager. This |
776 |
+ |
is included in MacOS versions 7.6 and above, and available as a system |
777 |
+ |
extension for earlier MacOS versions as a free download from ftp.apple.com |
778 |
+ |
(look for "Display Software 2.x"). Click on "Options..." in the "Monitors" |
779 |
+ |
control panel to select the resolution. |
780 |
+ |
|
781 |
|
Sound output: |
782 |
|
Sound output under Basilisk II requires Sound Manager 3.0 or later. This |
783 |
< |
is included starting with MacOS 7.5 and available as a system extension |
784 |
< |
for earlier MacOS versions. Sample rate, bit resolution and mono/stereo |
785 |
< |
can be selected in the Sound control panel (section "Sound Out"). |
783 |
> |
is included in MacOS versions 7.5 and above, and available as a system |
784 |
> |
extension for earlier MacOS versions as a free download from ftp.apple.com. |
785 |
> |
Sample rate, bit resolution and mono/stereo can be selected in the Sound |
786 |
> |
control panel (section "Sound Out"). |
787 |
|
|
788 |
|
Ethernet: |
789 |
|
Basilisk II supports all Ethernet protocols. Running a protocol under |
790 |
|
Basilisk II that already runs within the host operating system on the same |
791 |
|
network card (e.g. running MacTCP under Basilisk II on a BeOS machine) may |
792 |
|
or may not work (generally, it should work, but some specific things like |
793 |
< |
"ping" may not). If you have problems with FTP, try setting your FTP client |
793 |
> |
"ping" may not). If you have problems with FTP, try setting the FTP client |
794 |
|
to passive mode. |
795 |
|
|
796 |
|
LocalTalk: |
800 |
|
|
801 |
|
Serial: |
802 |
|
You can use the serial ports in Basilisk II to connect to the Internet |
803 |
< |
with a modem and "MacPPP". |
803 |
> |
with a modem and the "MacPPP" or "Open Transport/PPP" software. |
804 |
|
|
805 |
|
|
806 |
|
Technical Documentation |
812 |
|
Acknowledgements |
813 |
|
---------------- |
814 |
|
|
815 |
< |
Contributions by: |
656 |
< |
- Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>: UAE 68k emulation |
657 |
< |
- Marc Hellwig <Marc.Hellwig@uni-mainz.de>: audio output, BeOS video code |
658 |
< |
and networking |
659 |
< |
- Lauri Pesonen <lpesonen@nic.fi>: Windows NT port |
815 |
> |
Contributions by (in alphabetical order): |
816 |
|
- Orlando Bassotto <future@powercube.mediabit.net>: FreeBSD support |
817 |
< |
- Brian J. Johnson <bjohnson@sgi.com>: IRIX support |
817 |
> |
- Gwenolé Beauchesne <gb@dial.oleane.com>: SPARC assembly optimizations, |
818 |
> |
lots of work on the Unix video code, fixes and improvements to the |
819 |
> |
JIT compiler |
820 |
|
- Marc Chabanas <Marc.Chabanas@france.sun.com>: Solaris sound support |
821 |
+ |
- Marc Hellwig <Marc.Hellwig@uni-mainz.de>: audio output, BeOS video code |
822 |
+ |
and networking |
823 |
|
- Bill Huey <billh@mag.ucsd.edu>: 15/16 bit DGA and 15/16/32 bit X11 |
824 |
|
window support |
825 |
+ |
- Brian J. Johnson <bjohnson@sgi.com>: IRIX support |
826 |
+ |
- Jürgen Lachmann <juergen_lachmann@t-online.de>: AmigaOS CyberGraphX support |
827 |
+ |
- Samuel Lander <blair_sp@hotmail.com>: tile-based window refresh code |
828 |
|
- David Lawrence <davidl@jlab.org>: incremental window refresh code |
829 |
+ |
- Bernie Meyer <bmeyer@csse.monash.edu.au>: original UAE-JIT code |
830 |
+ |
- Nigel Pearson <nigel@ind.tansu.com.au>: Mac OS X port |
831 |
+ |
- Lauri Pesonen <lpesonen@nic.fi>: Windows NT port |
832 |
+ |
- Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>: UAE 68k emulation |
833 |
+ |
- and others... |
834 |
|
|
835 |
|
Special thanks to: |
836 |
|
- Bernd Schmidt for letting me use his UAE 68k emulation |
847 |
|
<Christian.Bauer@uni-mainz.de> |
848 |
|
for inclusion in the next release of Basilisk II. |
849 |
|
|
850 |
+ |
If you don't have a fix, you should post a bug report using the Source Forge |
851 |
+ |
bug tracker, supplying as much information as possible (operating system and |
852 |
+ |
versions of Basilisk II and MacOS being used, relevant hardware information, |
853 |
+ |
the exact steps to reproduce the bug, etc.): |
854 |
+ |
http://sourceforge.net/tracker/?group_id=2123&atid=102123 |
855 |
+ |
|
856 |
+ |
I also strongly suggest reading this before posting a bug report: |
857 |
+ |
http://www.chiark.greenend.org.uk/~sgtatham/bugs.html |
858 |
+ |
|
859 |
|
|
860 |
|
Author |
861 |
|
------ |
862 |
|
|
863 |
< |
You can contact me at <Christian.Bauer@uni-mainz.de>. Don't send bug |
864 |
< |
reports, send fixes. Ports to other platforms are also very welcome. |
865 |
< |
Please contact me before you intend to make major changes to the source. |
866 |
< |
You might be working on something that I have already done or I may have |
867 |
< |
different ideas about the Right Way to do it. |
868 |
< |
|
869 |
< |
Questions about ROM files will not be answered. There is also no point in |
870 |
< |
sending me questions etc. that are specific to the Windows port of |
871 |
< |
Basilisk II. I don't have Windows and can't say anything about that. |
872 |
< |
Ask Lauri Pesonen instead. |
863 |
> |
You can contact me at <Christian.Bauer@uni-mainz.de>, but please don't do |
864 |
> |
so unless absolutely necessary. I'm maintaining Basilisk II in my spare |
865 |
> |
time and am not able to provide technical support for everyone. If you have |
866 |
> |
questions, consider posting them to one of the support forums mentioned |
867 |
> |
below. |
868 |
> |
|
869 |
> |
You are encouraged to contact me personally when |
870 |
> |
- you have bug fixes or small enhancements for the code |
871 |
> |
- you want to port Basilisk II to another platform |
872 |
> |
- you want to discuss technical issues |
873 |
> |
- you intend to make major changes to the source; you might be working on |
874 |
> |
something that I have already done, or I may have different ideas about |
875 |
> |
the Right Way to do it |
876 |
> |
|
877 |
> |
There is no point in sending me questions about |
878 |
> |
- ROM files and how/where to get them |
879 |
> |
- versions of Basilisk II that run on operating systems other than Unix, |
880 |
> |
BeOS and AmigaOS. If you are using any other operating system, there's |
881 |
> |
no point in asking me how to to X or why Y doesn't work because I won't |
882 |
> |
know either. Instead, you should look in the "Acknowledgements" section |
883 |
> |
of this manual to find the person responsible. For example, if your |
884 |
> |
question is specific to the Windows operating system, ask Lauri Pesonen. |
885 |
> |
I don't have Windows and can't answer your questions and I'm too lazy to |
886 |
> |
forward mail to Lauri myself. In any case, it would probably be better |
887 |
> |
to post your questions to a public forum as it will get a much wider |
888 |
> |
audience there. |
889 |
|
|
890 |
|
|
891 |
|
Support |
894 |
|
The official Basilisk II home page is at |
895 |
|
http://www.uni-mainz.de/~bauec002/B2Main.html |
896 |
|
|
897 |
< |
There is no user-level support for Basilisk II at the moment. |
897 |
> |
The Basilisk II project page on SourceForge is at |
898 |
> |
http://sourceforge.net/projects/basilisk/ |
899 |
> |
|
900 |
> |
If you have problems, you may want to visit the Basilisk II forums: |
901 |
> |
http://sourceforge.net/forum/?group_id=2123 |
902 |
> |
|
903 |
> |
There is also a mailing list for Basilisk II users: |
904 |
> |
http://lists.sourceforge.net/lists/listinfo/basilisk-user |
905 |
> |
|
906 |
> |
And another mailing list for Basilisk II developers: |
907 |
> |
http://lists.sourceforge.net/lists/listinfo/basilisk-devel |
908 |
> |
|
909 |
> |
Some general advice about asking technical support questions can be found at |
910 |
> |
http://www.tuxedo.org/~esr/faqs/smart-questions.html |
911 |
> |
|
912 |
> |
Keeping this in mind will greatly increase your chances of getting a useful |
913 |
> |
answer. |
914 |
|
|
915 |
|
|
916 |
|
History |
917 |
|
------- |
918 |
|
|
919 |
< |
Please consult the file "CHANGES" for the release history. |
919 |
> |
Please consult the file "ChangeLog" for the release history. |
920 |
|
|
921 |
|
|
922 |
|
Christian Bauer |