ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/README
(Generate patch)

Comparing BasiliskII/README (file contents):
Revision 1.2 by cebix, 1999-10-03T16:21:28Z vs.
Revision 1.37 by cebix, 2004-01-12T15:29:19Z

# Line 1 | Line 1
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-2004 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)
# Line 35 | Line 37 | Some features of Basilisk II:
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
# Line 148 | Line 69 | The settings are stored in a text file:
69   BeOS:
70    /boot/home/config/settings/BasiliskII_prefs
71  
72 < Unix:
72 > Unix, Mac OS X:
73    ~/.basilisk_ii_prefs
74  
75   AmigaOS:
# Line 174 | Line 95 | disk <volume description>
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:
# Line 221 | Line 149 | cdrom <CD-ROM drive description>
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
# Line 250 | Line 189 | scsi0 <SCSI target> ... scsi6 <SCSI targ
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:
# Line 279 | Line 217 | screen <video mode>
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:
# Line 298 | Line 247 | screen <video mode>
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:
# Line 336 | Line 285 | screen <video mode>
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)
# Line 386 | Line 347 | ether <ethernet card description>
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
# Line 430 | Line 444 | ether <ethernet card description>
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
# Line 458 | Line 492 | frameskip <frames to skip>
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  
# Line 488 | Line 524 | nogui <"true" or "false">
524    error alerts. All errors will then be reported to stdout. The default
525    is "false".
526  
527 + keyboardtype <keyboard-id>
528 +
529 +  Specifies the keyboard type that BasiliskII should report to the MacOS.
530 +  The default is "5" which is a "Apple Extended Keyboard II (ISO)",
531 +  but many other numbers are understood by most versions of the MacOS
532 +  (e.g. 11 is a "Macintosh Plus Keyboard with keypad",
533 +        13 is a "Apple PowerBook Keyboard (ISO)" )
534 +
535   For additional information, consult the source.
536  
537  
# Line 497 | Line 541 | System-specific configuration
541   Unix:
542  
543    keycodes <"true" or "false">
544 <  keycodefile <Keycode file path>
544 >  keycodefile <keycodes file path>
545  
546      By default, the X11 event handler in Basilisk II uses KeySyms to
547      translate keyboard event to Mac keycodes. While this method is very
# Line 508 | Line 552 | Unix:
552      not on the selected keymap. Unfortunately it depends on the X server
553      being used and possibly also on the type of keyboard attached. So
554      Basilisk II needs a table to translate X keycodes to Mac keycodes.
555 <    This table is read by default from /usr/local/lib/basilisk_ii_keycodes
555 >    This table is read by default from /usr/local/share/BasiliskII/keycodes
556      unless you specify a different file with the "keycodefile" item.
557 <    A sample keycode file ("basilisk_ii_keycodes") is included with
558 <    Basilisk II.
557 >    A sample keycode file is included with Basilisk II.
558 >
559 >  fbdevicefile <fbdevices file path>
560 >
561 >    This option specifies the file that contains frame buffer device
562 >    specifications for the fbdev-DGA video mode (when Basilisk II was
563 >    configured with --enable-fbdev-dga). The default location of the file
564 >    is /usr/local/share/BasiliskII/fbdevices. A sample file is included
565 >    with Basilisk II.
566 >
567 >  mousewheelmode <mode>
568 >
569 >    If you have a mouse with a wheel, this option specifies whether moving
570 >    the wheel will be reported to the MacOS as "Page up/down" (mode 0) or
571 >    "Cursor up/down" (mode 1) keys.
572 >
573 >  mousewheellines <number of lines>
574 >
575 >    If "mousewheelmode" is set to mode 1 (Cursor up/down), this option sets
576 >    the number of key events sent to MacOS for each wheel movement (the
577 >    number of lines to scroll).
578 >
579 >  ignoresegv <"true" or "false">
580 >
581 >    Set this to "true" to ignore illegal memory accesses. The default
582 >    is "false". This feature is only implemented on the following
583 >    platforms: Linux/x86, Linux/ppc, Darwin/ppc.
584 >
585 >  dsp <device name>
586 >  mixer <device name>
587 >
588 >    Under Linux and FreeBSD, this specifies the devices to be used for sound
589 >    output and volume control, respectively. The defaults are "/dev/dsp" and
590 >    "/dev/mixer".
591  
592   AmigaOS:
593  
# Line 523 | Line 599 | AmigaOS:
599  
600        ahi/<hexadecimal mode ID>
601  
602 +  scsimemtype <type>
603 +
604 +    This item controls the type of memory to use for SCSI buffers. Possible
605 +    values are:
606 +      0 Chip memory
607 +      1 24-bit DMA capable memory
608 +      2 Any memory
609 +
610 +    Be warned that many SCSI host adapters will not work with the "Any memory"
611 +    setting. Basilisk II has no way of knowing which memory type is supported
612 +    by the host adapter and setting an unsupported type will result in data
613 +    corruption.
614 +
615   Windows:
616  
617    noscsi <"true" or "false">
# Line 533 | Line 622 | Windows:
622      means is that the control is not returned to the application until the
623      command is completely finished. Normally this is not an issue, but when a
624      CDR/CDRW is closed or erased the burner program typically wants to wait in
625 <    some progress dialog The result may be that the application reports a
625 >    some progress dialog the result may be that the application reports a
626      time-out error, but the operation completes all right anyway.
627  
628    nofloppyboot <"true" or "false">
# Line 547 | Line 636 | Windows:
636      This is very useful since many devices have almost identical ATAPI and SCSI
637      versions of their hardware, and MacOS applications usually support the SCSI
638      version only. The example below is typical:
639 <  
639 >
640        replacescsi "HP" "CD-Writer+ 7100" "PHILIPS" "CDD3600"
641 <  
641 >
642      Note the use of quotes.
643  
644 <  disablescsi <"Vendor"> <"Model">
644 >  rightmouse <0/1>
645 >
646 >    Defines what the right mouse button is used for. The default values of 0
647 >    means that it is used to move windowed mode BasiliskII screen.
648 >    Value 1 sends a combination Control and mouse click to the MacOS.
649 >    This may be useful under OS versions 8 and above.
650 >
651 >  keyboardfile <path>
652 >
653 >    Defines the path of the customized keyboard code file.
654 >
655 >  pollmedia <"true" or "false">
656 >
657 >    If true (default), tries to automatically detect new media.
658 >    Applies to all "floppy", "cd" or "disk" removable media except
659 >    1.44 MB floppies. May cause modest slow down. If unchecked,
660 >    use Ctrl-Shift-F11 to manually mount new media.
661 >    If you have auto-insert notification (AIN) enabled, you may turn this
662 >    option off. Note that some CD related software require AIN,
663 >    and some other need it to be turned off. Consult the documentation
664 >    of your CD software to learn which one is optimal for you.
665 >
666 >  framesleepticks <milliseconds>
667  
668 <    Disables this vendor/model combination. You may need this simply because
669 <    you have more than 6 SCSI devices, or the particular device has problems
670 <    under BasiliskII. E.g.
671 <
672 <      disablescsi "HP" "CD-Writer+ 7100"
673 <  
674 <    Again, note the use of quotes.
668 >    The amount of time between video frames.
669 >
670 >  showfps <true/false>
671 >
672 >    If true, the real frame rate is displayed.
673 >
674 >  stickymenu <true/false>
675 >
676 >    If true, the main menu bar is kept open even after the mouse button is
677 >    released, under all OS versions (OS 8 has this feature already). There
678 >    are extensions to do the same thing, but it's faster to handle this in
679 >    native code. Default is "true".
680  
681    ntdx5hack <"true" or "false">
682  
683 <    You may need this on NT if your display adapter driver has a bug in DirectX
684 <    palette support. Black and white are reversed. It fixes the palette issue
685 <    by using GDI palette instead of D3D palette. Default is false.
683 >    You may need this on NT if your display adapter driver has a bug in
684 >    DirectX palette support. Black and white are reversed. It fixes the
685 >    palette issue by using GDI palette instead of D3D palette. Default is
686 >    false.
687 >
688 >
689 > JIT-specific configuration
690 > --------------------------
691 >
692 > A Just-In-Time (JIT) translation engine is available for x86. This is
693 > aimed at translating 68040 instructions to native equivalent code
694 > sequences, thus providing faster emulation speeds.
695 >
696 >  jit <"true" or "false">
697 >
698 >    Set this to "true" to enable the JIT compiler. Default value is
699 >    "true" if the JIT compiler was compiled in. Besides, this is
700 >    effective only if Basilisk II is configured to emulate a 68040.
701 >
702 >  jitfpu <"true" or "false">
703 >
704 >    Set this to "true" to enable translation of floating-point (FPU)
705 >    instructions. Default is "true".
706 >
707 >  jitcachesize <size>
708 >
709 >    Allocate "size" kilobytes of RAM for the translation cache. The
710 >    value given will be rounded down to the nearest multiple of a page
711 >    size. Minimal value is "2048" (2MB). Default value is "8192" (8MB).
712 >
713 >  jitlazyflush <"true" or "false">
714 >
715 >    Set this to "true" to enable lazy invalidation of the translation
716 >    cache. This is always recommended as it usually makes the system
717 >    more responsive and faster, especially while running MacOS
718 >    8.X. Default value is "true".
719 >
720 >  jitdebug <"true" or "false">
721 >
722 >    Set this to "true" to enable the JIT debugger. This requires a
723 >    build of Basilisk II with the cxmon debugger. Default is "false".
724  
725  
726   Usage
# Line 591 | Line 745 | Keyboard:
745    On PC-style keyboards, "Alt" is the Mac "Command" key, while the "Windows"
746    key is the Mac "Option" key.
747  
748 + Mouse:
749 +  Under Unix, pressing Ctrl-F5 while the Basilisk II window is active will
750 +  grab the mouse. This is needed for compatibility with some MacOS programs,
751 +  especially games such as flight simulators. Press Ctrl-F5 again to return
752 +  to normal mouse operation.
753 +
754   Floppy:
755    Basilisk II can only handle 1.44MB MFM floppies. Depending on your platform,
756 <  flopyy disk changes might not be detected automatically. Under Linux, press
756 >  floppy disk changes might not be detected automatically. Under Unix, press
757    Ctrl-F1 to mount a floppy. Under BeOS, select the appropriate "Mount" menu
758    item or press Ctrl-F1 to mount a floppy. Under Windows, press Ctrl-Shift-F11.
759  
760   HFS partitions:
761    Having HFS partitions mounted for read-write access under Basilisk II while
762    they are also mounted on the host OS will most likely result in volume
763 <  corruption and data losses. Unmount your HFS volumes before starting
763 >  corruption and data loss. Unmount your HFS volumes before starting
764    Basilisk II.
765  
766   ZIP drives:
# Line 619 | Line 779 | Mac Classic emulation:
779    ROM. Also, the video display is fixed to 512x342 in monochrome. The AmigaOS
780    and BeOS/PPC versions of Basilisk II cannot do Mac Classic emulation.
781  
782 + Video resolution switching:
783 +  Run-time switching of video resolutions requires the Display Manager. This
784 +  is included in MacOS versions 7.6 and above, and available as a system
785 +  extension for earlier MacOS versions as a free download from ftp.apple.com
786 +  (look for "Display Software 2.x"). Click on "Options..." in the "Monitors"
787 +  control panel to select the resolution.
788 +
789   Sound output:
790    Sound output under Basilisk II requires Sound Manager 3.0 or later. This
791 <  is included starting with MacOS 7.5 and available as a system extension
792 <  for earlier MacOS versions. Sample rate, bit resolution and mono/stereo
793 <  can be selected in the Sound control panel (section "Sound Out").
791 >  is included in MacOS versions 7.5 and above, and available as a system
792 >  extension for earlier MacOS versions as a free download from ftp.apple.com.
793 >  Sample rate, bit resolution and mono/stereo can be selected in the Sound
794 >  control panel (section "Sound Out").
795  
796   Ethernet:
797    Basilisk II supports all Ethernet protocols. Running a protocol under
798    Basilisk II that already runs within the host operating system on the same
799    network card (e.g. running MacTCP under Basilisk II on a BeOS machine) may
800    or may not work (generally, it should work, but some specific things like
801 <  "ping" may not). If you have problems with FTP, try setting your FTP client
801 >  "ping" may not). If you have problems with FTP, try setting the FTP client
802    to passive mode.
803  
804   LocalTalk:
# Line 640 | Line 808 | LocalTalk:
808  
809   Serial:
810    You can use the serial ports in Basilisk II to connect to the Internet
811 <  with a modem and "MacPPP".
811 >  with a modem and the "MacPPP" or "Open Transport/PPP" software.
812  
813  
814   Technical Documentation
# Line 652 | Line 820 | Please see the included file "TECH" for
820   Acknowledgements
821   ----------------
822  
823 < 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
823 > Contributions by (in alphabetical order):
824   - Orlando Bassotto <future@powercube.mediabit.net>: FreeBSD support
825 < - Brian J. Johnson <bjohnson@sgi.com>: IRIX support
825 > - Gwenolé Beauchesne <gb@dial.oleane.com>: SPARC assembly optimizations,
826 >   lots of work on the Unix video code, fixes and improvements to the
827 >   JIT compiler
828   - Marc Chabanas <Marc.Chabanas@france.sun.com>: Solaris sound support
829 + - Marc Hellwig <Marc.Hellwig@uni-mainz.de>: audio output, BeOS video code
830 +   and networking
831   - Bill Huey <billh@mag.ucsd.edu>: 15/16 bit DGA and 15/16/32 bit X11
832     window support
833 + - Brian J. Johnson <bjohnson@sgi.com>: IRIX support
834 + - Jürgen Lachmann <juergen_lachmann@t-online.de>: AmigaOS CyberGraphX support
835 + - Samuel Lander <blair_sp@hotmail.com>: tile-based window refresh code
836   - David Lawrence <davidl@jlab.org>: incremental window refresh code
837 + - Bernie Meyer <bmeyer@csse.monash.edu.au>: original UAE-JIT code
838 + - Nigel Pearson <nigel@ind.tansu.com.au>: Mac OS X port
839 + - Lauri Pesonen <lpesonen@nic.fi>: Windows NT port
840 + - Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>: UAE 68k emulation
841 + - Michael Z. Sliczniak <msliczniak@comcast.net>: Mach memory fault recovery
842 + - and others...
843  
844   Special thanks to:
845   - Bernd Schmidt for letting me use his UAE 68k emulation
# Line 679 | Line 856 | You found a bug? Well, use the source, f
856    <Christian.Bauer@uni-mainz.de>
857   for inclusion in the next release of Basilisk II.
858  
859 + If you don't have a fix, you should post a bug report using the Source Forge
860 + bug tracker, supplying as much information as possible (operating system and
861 + versions of Basilisk II and MacOS being used, relevant hardware information,
862 + the exact steps to reproduce the bug, etc.):
863 +  http://sourceforge.net/tracker/?group_id=2123&atid=102123
864 +
865 + I also strongly suggest reading this before posting a bug report:
866 +  http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
867 +
868  
869   Author
870   ------
871  
872 < You can contact me at <Christian.Bauer@uni-mainz.de>. Don't send bug
873 < reports, send fixes. Ports to other platforms are also very welcome.
874 < Please contact me before you intend to make major changes to the source.
875 < You might be working on something that I have already done or I may have
876 < different ideas about the Right Way to do it.
877 <
878 < Questions about ROM files will not be answered. There is also no point in
879 < sending me questions etc. that are specific to the Windows port of
880 < Basilisk II. I don't have Windows and can't say anything about that.
881 < Ask Lauri Pesonen instead.
872 > You can contact me at <Christian.Bauer@uni-mainz.de>, but please don't do
873 > so unless absolutely necessary. I'm maintaining Basilisk II in my spare
874 > time and am not able to provide technical support for everyone. If you have
875 > questions, consider posting them to one of the support forums mentioned
876 > below.
877 >
878 > You are encouraged to contact me personally when
879 > - you have bug fixes or small enhancements for the code
880 > - you want to port Basilisk II to another platform
881 > - you want to discuss technical issues
882 > - you intend to make major changes to the source; you might be working on
883 >   something that I have already done, or I may have different ideas about
884 >   the Right Way to do it
885 >
886 > There is no point in sending me questions about
887 > - ROM files and how/where to get them
888 > - versions of Basilisk II that run on operating systems other than Unix,
889 >   BeOS and AmigaOS. If you are using any other operating system, there's
890 >   no point in asking me how to to X or why Y doesn't work because I won't
891 >   know either. Instead, you should look in the "Acknowledgements" section
892 >   of this manual to find the person responsible. For example, if your
893 >   question is specific to the Windows operating system, ask Lauri Pesonen.
894 >   I don't have Windows and can't answer your questions and I'm too lazy to
895 >   forward mail to Lauri myself. In any case, it would probably be better
896 >   to post your questions to a public forum as it will get a much wider
897 >   audience there.
898  
899  
900   Support
# Line 701 | Line 903 | Support
903   The official Basilisk II home page is at
904    http://www.uni-mainz.de/~bauec002/B2Main.html
905  
906 < There is no user-level support for Basilisk II at the moment.
906 > The Basilisk II project page on SourceForge is at
907 >  http://sourceforge.net/projects/basilisk/
908 >
909 > If you have problems, you may want to visit the Basilisk II forums:
910 >  http://sourceforge.net/forum/?group_id=2123
911 >
912 > There is also a mailing list for Basilisk II users:
913 >  http://lists.sourceforge.net/lists/listinfo/basilisk-user
914 >
915 > And another mailing list for Basilisk II developers:
916 >  http://lists.sourceforge.net/lists/listinfo/basilisk-devel
917 >
918 > Some general advice about asking technical support questions can be found at
919 >  http://www.tuxedo.org/~esr/faqs/smart-questions.html
920 >
921 > Keeping this in mind will greatly increase your chances of getting a useful
922 > answer.
923  
924  
925   History

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines