Annotation of uae/docs/README, revision 1.1.1.7

1.1.1.7 ! root        1: This is version 0.8.7 of UAE, the Un*x Amiga Emulator.
1.1.1.5   root        2: 
                      3: Versions numbered 0.8.x are beta versions, to be used for development only.
                      4: If you are only a user of UAE, you are better off using the latest 0.7.x
                      5: version or waiting for 0.9.0.
                      6: 
1.1       root        7: 
1.1.1.3   root        8: License
                      9: =======
1.1       root       10: 
1.1.1.5   root       11: UAE is available under the terms of the GNU General Public License. This means
                     12: that it is free software: you are welcome to distribute copies of it and/or
                     13: modify it, under certain conditions. It also means that there is no warranty
                     14: for UAE.
                     15: See the file COPYING that is included in the top level directory of this
                     16: archive for details.
1.1       root       17: 
                     18: 
                     19: Overview
                     20: ========
                     21: 
1.1.1.2   root       22: An emulator is a program which enables you to run software for a machine
                     23: which has non-native hardware and a non-native operating system, on your
                     24: computer.  UAE allows you to run most of the available Amiga software. It is a
                     25: software emulation, meaning that no extra or special hardware is needed to do
                     26: this. The hardware of an Amiga is emulated accurately, so that Amiga software
                     27: is tricked into thinking it is running on the real thing, with your computer's
                     28: display, keyboard, harddisk and mouse taking the parts of their emulated
                     29: counterparts.
1.1       root       30: 
                     31: UAE was developed for Unixoid systems. Meanwhile, it has been ported to the
1.1.1.2   root       32: Mac, DOS, the BeBox, NextStep, the XFree86/OS2 environment and the Amigas (it
                     33: can run itself by now). You should have received several other files along
                     34: with this document with details on how to install and use the version for your
                     35: operating system.
1.1       root       36: 
                     37: This section is just what it says: an overview. Please read _all_ of this
1.1.1.2   root       38: file, especially if you have problems. UAE has many, many features and
                     39: equally many configuration options. If you don't know about them, it's likely
                     40: that UAE doesn't work for you, or doesn't work as good as it could.
                     41: 
                     42: Please read also the file "FAQ" which contains some Frequently Asked
1.1.1.3   root       43: Questions (and even the answers!) You should also look for a document
                     44: describing the specific port of UAE to the operating system you are using,
                     45: for example "BeOS/README" or "DOS/README".
1.1.1.2   root       46: 
                     47: People have complained that the UAE documentation contains only "weird jargon".
                     48: Sorry about this. Despite what MessySoft and Tomato tell you, computer
                     49: programs aren't always easy to use. UAE does require some assistance from you,
                     50: and therefore you should at least understand a bit about computers. After all,
                     51: you are an Amiga fan, so you should know what a Workbench is, don't you think?
1.1       root       52: 
                     53: 
1.1.1.2   root       54: Features
                     55: ========
                     56: 
                     57: This version of UAE emulates:
1.1       root       58: 
1.1.1.5   root       59: - A 68000, 68010 or 68020 CPU, optionally a 68881 FPU
1.1.1.2   root       60: - OCS Graphics Chipset, plus big blits from the ECS Chipset
1.1.1.5   root       61: - Up to 2MB Chip RAM and up to 8MB Fast RAM, or 8MB Chip RAM without Fast RAM
                     62: - Up to 64MB Zorro III Fast RAM, independent of Chip RAM setting (68020 only)
1.1.1.3   root       63: - Up to 1MB Slow RAM, for extended compatibility with problem software
                     64: - Up to 8MB of graphics card memory, usable by software that supports
1.1.1.5   root       65:   Picasso 96 compatible graphics cards
                     66: - 4 x 3.5" floppy disk drives (DF0:, DF1:, DF2: and DF3:). It's not possible to
                     67:   read Amiga disks, so these are emulated with disk files.
                     68: - A hard-disk: either a harddisk image file or part of the native filesystem
1.1.1.2   root       69: - Joystick support (with option of mapping joystick to numeric keypad)
                     70: - Mouse support
                     71: - Ability to run in various screen modes (for better display quality or
                     72:   better speed)
1.1.1.5   root       73: - Full stereo sound support, consisting of 4 x 8bit channels
1.1.1.3   root       74: - Beta parallel and serial port support
1.1.1.2   root       75: - some other things which don't work well enough to mention them here...
                     76: 
                     77:   
                     78: Requirements (IMPORTANT! READ THIS!)/Limitations
                     79: ================================================
                     80: 
                     81: Not emulated:
1.1.1.3   root       82: - Sprite to playfield collisions (sprite to sprite collisions work)
                     83: - An MMU (part of 68030/040 CPUs except those that Commodore used). This means
1.1.1.2   root       84:   you can't use virtual memory systems or real operating systems like Linux
                     85:   or BSD.
                     86: - The AGA chipset (A4000/A1200). This chipset has enhanced capabilites for
                     87:   up to 256 colors in all resolutions.
1.1.1.5   root       88: - Serial port emulation exists but doesn't work too well (someone tell me when
                     89:   that's no longer true, I don't use it).
1.1.1.2   root       90: 
                     91: Since the PC floppy controller can't read Amiga disks (yes, that's a fact), 
                     92: floppy access has to be emulated differently: Floppies are emulated by means 
                     93: of disk files that contain a raw image of the floppy disk you want to emulate.
                     94: A disk file is an image of the raw data on an Amiga floppy disk, it contains
                     95: 901120 bytes (880K), which is the standard capacity of an Amiga disk.
                     96: 
                     97: To actually run the program, you'll need to install the ROM image from your
                     98: Amiga. You can't run UAE if you don't have this image. It is not included
                     99: because it is copyrighted software. Don't ask me to send you one. I won't.
                    100: If you don't have an Amiga and still want to use UAE, you'll have to buy an
                    101: Amiga or at least the system software (ROM + Workbench) first.
                    102: The Kickstart image can have a size of either 256K or 512K. It must be named
                    103: "kick.rom" by default.
                    104: 
                    105: Read the section "tools" below for information how to create ROM images and
                    106: disk files.
1.1       root      107: 
                    108: If you don't have a Kickstart file, you may still be able to boot some games
                    109: and demos. The emulator includes some primitive bootstrap code that will try
                    110: to read and execute the bootblock of the diskfile you are using, and if that
                    111: bootblock only uses the one or two Kickstart functions that are supported by 
                    112: the "replacement Kickstart", your program will boot. Don't expect too much, 
                    113: though.
                    114: 
1.1.1.2   root      115: You'll also need some other software to run - why else would you want to
                    116: emulate an Amiga? There are several ways to make the software accessible to
1.1.1.3   root      117: UAE, either with disk image files or with a harddisk emulation. You should
                    118: make an image of your Amiga's Workbench disk and install it as "df0.adf"
                    119: (adf = Amiga Disk File) when you use UAE for the first time. More about how
                    120: to create these files in the chapter "Transferring software"
                    121: 
                    122: To use Picasso96 emulation, you need the Picasso96 libraries, which are also
                    123: not included. They can be obtained (e.g.) from Aminet.
1.1       root      124: 
                    125: 
                    126: Invoking UAE
                    127: ============
                    128: 
1.1.1.2   root      129: First, read the system-specific documents for information how to set up UAE.
                    130: You should have an executable program called "uae". You can simply execute it,
1.1.1.7 ! root      131: but you can also optionally give it one or more of the following parameters:
        !           132: 
        !           133:  -h              : Print out a help text.
        !           134:  -f file         : Load a configuration file
        !           135:  -s opt=val      : Set the emulator's option "opt" to value "val".
        !           136: 
        !           137: Configuration files consist of several lines of the form "opt=val", just as
        !           138: with the "-s" parameter.  You can use the following options with the "-s"
        !           139: option, or in a config file.
        !           140: [Here, "=n" means the option takes a number as value.  "=bool" means the option
        !           141: takes a value of either "yes" or "no" (or "true", "false", or abbreviations of
        !           142: any of these).  There are other classes as well.]
1.1       root      143: 
                    144: General options:
1.1.1.7 ! root      145: accuracy=n [default=2]
        !           146:   Set emulator accuracy to n. The default is n = 2, which means the
        !           147:   emulator will try to be as accurate as possible. This no longer
        !           148:   does much in this version, and I'll probably remove it.
        !           149: framerate=n [default=1]
        !           150:   Sets the frame rate to 1/n. Only every nth screen will be drawn.  Using a
        !           151:   higher value can speed up the emulator, at the expense of graphics quality.
        !           152: autoconfig=bool [default=yes]
        !           153:   If this is enabled, all expansion devices provided by the emulation will be
        !           154:   automounted. You should only disable this if you have a Kickstart ROM
        !           155:   earlier than 1.3 which can't cope with this. Some badly written games and
        !           156:   demos might also be incompatible with this.
        !           157: kbd_lang=lang [default=us]
        !           158:   Set the keyboard language. Currently, the following values can be used: "us"
        !           159:   for U.S. keyboard (default), "se" for swedish, "fr" for french, "it" for
        !           160:   italian, "es" for spanish, or "de" for german keyboard.
        !           161:   This setting only affects the X11 version.
        !           162: floppy0=file [default=df0.adf]
        !           163:   Try to use the specified file as diskfile for drive 0 instead of df0.adf.
        !           164:   The options floppy1, floppy2, and floppy3 also exist.
        !           165: kickstart_rom_file=file [default=kick.rom]
        !           166:   Use the specified file instead of kick.rom as Kickstart image.
        !           167: joyport0=mode [default=mouse]
        !           168:   Specify how to emulate joystick port 0. You can use "mouse", "joy0", or
        !           169:   "joy1" to use the corresponding input devices of your machine, or you can
        !           170:   select several different keyboard replacements for a joystick: "kbd1" for
        !           171:   the numeric pad with '0' as fire button, "kbd2" for the cursor keys with
        !           172:   right control as fire button and c is T/F/H/B with Alt as fire button.
        !           173: joyport1=mode [default=joy0]
        !           174:   Like joyport0, but for the Amiga's joystick port 1.
        !           175: use_gui=bool [default=yes]
        !           176:   Show a user-interface that enables changing these options at run-time.
        !           177: 32bit_blits=bool [default=no]
        !           178:   If enabled, the blitter emulation will use 32 bit operations where that
        !           179:   seems profitable (note that this will cause bus errors on most  RISC
        !           180:   machines)
        !           181: immediate_blits=bool [default=no]
        !           182:   If enabled, all blits will finish immediately, which can be nice for speed,
        !           183:   but may cause incompatibilities.
        !           184: cpu_speed=speed [default=4]
        !           185:   This can have a value of "real", "max", or an integer between 1 and 20.
        !           186:   "real" will try to give the CPU emulation exactly as many cycles, relative
        !           187:   to the other chips, as on a real A500.  "max" will try to give you the
        !           188:   maximum CPU emulation speed achievable on your machine.  Numeric values
        !           189:   specify a fixed relation between CPU and custom chip emulation, where lower
        !           190:   values prioritize CPU emulation, while higher values prioritize custom chip
        !           191:   emulation.
        !           192: cpu_type=type [default=68000]
        !           193:   Controls which CPU is emulated. This can be "68000", "68010", "68020" or
        !           194:   "68020/68881".  In some cases, you may need to use "68ec020" or
        !           195:   "68ec020/68881" to emulate a crippled variant of the 68020 that has only a
        !           196:   24 bit address bus.  Some software, including some Kickstart versions, does
        !           197:   not work with a normal 68020 that has a 32 bit address bus.
        !           198:   Careful: using an "ec" variant has harmful side effects, and should be
        !           199:   disabled unless absolutely needed (you lose Z3 memory and Picasso
        !           200:   emulation).
        !           201: cpu_compatible=bool [default=no]
        !           202:   If enabled, a slower but slightly more accurate variant of the CPU emulation
        !           203:   will be used.  This is needed for some types of copy protection, among other
        !           204:   things. This is only meaningful for a CPU type of "68000".
1.1       root      205: 
1.1.1.3   root      206: Emulating external devices (harddisk, CD-ROM, printer, serial port):
1.1.1.7 ! root      207: filesystem=access,volume:path [default=no filesystems mounted]
        !           208:   Mount the host's file system at "path" as an Amiga filesystem with volume
        !           209:   name "VOLUME:".  "access" can be either "ro" (for readonly), or "rw" (for
        !           210:   read-write).  If you want to mount a CD-ROM, you should use a readonly
        !           211:   mount.  You can mount multiple file systems.
        !           212:   See below.
        !           213: hardfile=access,secs,heads,reserved,bsize,file [default=no hardfiles mounted]
        !           214:   Mount the hardfile "file" as an emulated harddisk, using a geometry of
        !           215:   "secs" sectors per track, "heads" surfaces and "nr" reserved blocks.
        !           216:   Each sector should have "bsize" bytes. This can be abused to mount
        !           217:   floppy images.  You can mount multiple hardfiles.
        !           218:   See below.
1.1       root      219: 
                    220: Sound options:
1.1.1.7 ! root      221: sound_output=type [default=none]
        !           222:   The type of sound output can be "none" (no sound at all), "interrupts"
        !           223:   (emulated for the internal side effects that can be noticed by programs,
        !           224:   but no sound output), "normal" (emulated, and sound output), "exact" (a
        !           225:   slightly more accurate emulation that may be necessary in some cases, but
        !           226:   can also be slower).
        !           227: sound_channels=type [default=mono]
        !           228:   Can be "mono" or "stereo".
        !           229: sound_bits=n [default varies across UAE versions on different OS types]
        !           230:   Common values are 8 (low quality) or 16 (high quality)
        !           231: sound_frequency=n [default varies across UAE versions on different OS types]
        !           232:   Common values are 22050 or 44100. The quality of sound output increases with
        !           233:   the frequency.
        !           234: sound_min_buff=n
        !           235: sound_max_buff=n [default varies across UAE versions on different OS types]
        !           236:   You can specify the minimum and maximum size of the sound buffer.
        !           237:   Smaller buffers reduce latency.  Usually only the minimum size is used.
1.1.1.3   root      238: 
1.1       root      239: Memory options:
1.1.1.7 ! root      240: bogomem_size=n [default=0]
        !           241:   Emulate n*256K slow memory at 0xC00000. Some demos/games need this.
        !           242: fastmem_size=n [default=0]
        !           243:   Emulate n megabytes of fast memory as an expansion board.
        !           244: z3mem_size=n [default=0]
        !           245:   Emulate n megabytes of Zorro III fast memory as an expansion board.
        !           246: chipmem_size=n [default=4]
        !           247:   Emulate n*512K chip memory. Some very broken programs need specific amounts
        !           248:   of chip mem to work properly. The largest valid value is 16, which means 8MB
        !           249:   chip memory.
        !           250: 
        !           251: Display options:
        !           252: gfx_width=n [default=800]
        !           253:   Use a window that is n pixels wide for displaying the Amiga screen.
        !           254: gfx_height=n [default=300]
        !           255:   Use a window that is n pixels high for displaying the Amiga screen.
        !           256: gfx_lores=bool [default=no]
        !           257:   Enable this option if you use a very small window width (320 to 400 pixels)
        !           258:   to shrink the display horizontally.
        !           259: gfx_linemode=type [default=none]
        !           260:   The type can be none (every line is drawn once), "double" (every line is
        !           261:   drawn twice), and "scanlines" (every line is drawn once, but the image is
        !           262:   stretched vertically by inserting a black line every other line to simulate
        !           263:   the display on an old monitor).
        !           264:   The "double" mode gives best results, but slows down the emulation quite a
        !           265:   lot. Don't use the "none" mode if you want a decent interlace emulation.
        !           266:   If you use "double" or "scanlines", your window needs to be twice as high
        !           267:   as when using the "none" mode.
        !           268: gfx_correct_aspect=bool [default=none]
        !           269:   Try to fit the image into the specified window dimensions by leaving out
        !           270:   certain lines.  Useful if you want to fit a 640x512 Amiga display in a
        !           271:   640x480 window.
        !           272: gfx_center_vertical=bool [default=no]
        !           273: gfx_center_horizontal=bool [default=no]
        !           274:   If you use a smaller window than 800x300 (400x300 with "gfx_lores" option or
        !           275:   800x600 with a gfx_linemode other than "none"), not all parts of the display
        !           276:   will fit on the screen. By enabling the necessary centering options, you can
        !           277:   ask the emulator to try and move the screen contents so that the relevant
        !           278:   parts are displayed. If you are unlucky, this can cause the contents to jump
        !           279:   around a bit in certain cases.
        !           280: gfx_fullscreen_amiga=bool [default=no]
        !           281:   Enable if you want to use the full screen, not a window on the desktop, for
        !           282:   the Amiga display.  Some ports (DOS, SVGAlib) always use fullscreen mode.
        !           283: gfx_fullscreen_picasso=bool [default=no]
        !           284:   Like gfx_fullscreen_amiga, but for the Picasso graphics card display.
        !           285: gfx_color_mode=mode [default=8bit]
        !           286:   Select a color mode to use.
        !           287:   Color modes: 8bit (256 colors), 15bit (32768 colors), 16bit (65536 colors),
        !           288:               8bit_dithered (256 colors, with dithering to improve quality),
        !           289:               4bit_dithered (16 colors, dithered); 32bit (16 million colors)
        !           290: gxfcard_size=n [default=0]
        !           291:   Emulate a Picasso 96 compatible graphics card with n MB graphics memory.
        !           292:   This requires that you use set the CPU type to "68020" or higher, and that
        !           293:   you do not use 24 bit addressing.
1.1.1.3   root      294: 
                    295: Debugging options (not interesting for most users):
1.1.1.7 ! root      296: use_debugger=bool [default=no]
        !           297:   If enabled, don't start the emulator at once, use the built-in debugger.
        !           298: log_illegal_mem [default=no]
        !           299:   If enabled, print illegal memory accesses
1.1       root      300: 
1.1.1.2   root      301: 
                    302: Whew. You'll probably have to experiment a little to get a feeling for it.
1.1.1.3   root      303: 
1.1.1.2   root      304: 
1.1       root      305: You can also put these options into a configuration file in your home
                    306: directory. Simply create ~/.uaerc and put some of these options in it. On
                    307: non-Unix systems, the file is called uae.rc and should be located in the
                    308: current directory.
                    309: 
                    310: 
                    311: Choosing color and screen modes
                    312: ===============================
                    313: 
                    314: As described in the previous paragraph, UAE can run in many different 
                    315: resolutions and color modes. However, few of the color mode options are
                    316: available if you use the X11 version of UAE, since the X server determines
                    317: how many colors are available. If you are running a 256 color X server, you
                    318: can use "-H3" to tell UAE to dither the colors for better results.
                    319: 
                    320: You will have to experiment which mode gives the best results for you at a
                    321: satisfying speed. Note that the dithering process consumes time, so even if
                    322: 256 colors with dithering look better than 256 colors without, remember that
                    323: UAE will be slower in that mode.
                    324: 
                    325: The recommended resolution is 800x600. In the lower resolution modes, some
                    326: overscan pictures the Amiga tries to display may not fit entirely on the
                    327: screen, others may be off-center and some graphical effects may look weird.
                    328: For best results, use 800x600 with at least 32768 colors.
1.1.1.3   root      329: For speed, use 400x300 lores with 256 colors.
                    330: 
                    331: _Don't_ use 24 bit or 32 bit screen modes, unless you absolutely have to.
                    332: These are way too slow to be usable.
1.1       root      333: 
                    334: 
                    335: Harddisk emulation
                    336: ==================
                    337: 
1.1.1.3   root      338: Since using diskfiles is awkward, it is necessary to emulate harddisks. There
                    339: are two ways how you can use large amounts of data with UAE: harddisk files
                    340: and mounted directories.
                    341: 
                    342: 1. Harddisk files
                    343: 
                    344: Harddisk files are large files that contain the image of an Amiga filesystem.
                    345: They work much the same way as a disk file. You can simply create a large
                    346: empty file and tell UAE to use it as a hardfile, but you will need to format
                    347: it from the emulation before you can actually use it.
1.1       root      348: 
1.1.1.3   root      349: Under Unix, You can create a (unformatted) harddisk file with
1.1       root      350:   dd if=/dev/zero of=hardfile bs=512 count=16384
1.1.1.3   root      351: That will create an 8MB file. Other ports of UAE may come with a utility
                    352: called "makedisk" or other ways to create such a file.
1.1.1.2   root      353: 
1.1.1.3   root      354: To tell the emulator that you want to use a certain file as a hardfile, use
                    355: the "-W" option, for example
                    356:   uae -W 32:1:2:hardfile
                    357: The first three numbers are geometry information which tell the AmigaOS how
                    358: the file is organized. The first number (32) is the number of sectors per
                    359: track, the second number (1) is the number of heads or surfaces, the third
                    360: number (2) is the number of reserved blocks. If you use "normal" sizes
                    361: (powers of two, like 32MB), then you should be OK using the same numbers as
                    362: in the above example. Using different numbers can make sense if you transfer
                    363: the image of a real Amiga harddisk which uses a different geometry. The last
                    364: field of the argument to the "-W" option is the name of the harddisk file.
                    365: 
                    366: If you are using Kickstart 1.3 or earlier, hardfiles can't currently be
                    367: mounted at boot time, and therefore you can't boot from it either. You will
                    368: have to boot either from a floppy disk image or from a filesystem (see below),
                    369: and mount the hardfile.device later. To do this, add the following to
                    370: "DEVS:mountlist":
1.1       root      371: 
1.1.1.3   root      372: UAE0:     Device = uaehf.device
1.1       root      373:           Unit   = 0
                    374:           Flags  = 0
                    375:           Surfaces  = 1
                    376:           BlocksPerTrack = 32
                    377:           Reserved = 1
                    378:           Interleave = 0
                    379:           LowCyl = 0  ;  HighCyl = 511
                    380:           Buffers = 5
                    381:           DosType = 0x444F5300
                    382:           BufMemType = 1
                    383: #
                    384: 
1.1.1.3   root      385: (You may need to adjust the values if you specified a different geometry,
                    386: and/or your hardfile has a different size than 8MB, and/or the hardfile is not
                    387: mounted as UAE0: because you mounted other harddisks before it.)
                    388: 
1.1       root      389: Then, type "mount UAE0:" (or put that command in your startup-sequence), and
                    390: you should be able to access it. Don't forget to format it with the AmigaDOS
                    391: format command:
                    392: 
                    393:   format drive uae0: name Mister_Willwink
                    394: 
1.1.1.3   root      395: b) Accessing native filesystems from the emulator
1.1       root      396: 
                    397: This has some major advantages:
                    398:  - It has no problems with Kickstart 1.3
                    399:  - It is more convenient.
1.1.1.3   root      400:  - It is much faster.
1.1       root      401: 
1.1.1.2   root      402: If you specify the -M or -m command line arguments, you your native filesystem 
                    403: from the emulator. If you start UAE with
1.1       root      404: 
                    405:   uae -m sound:/usr/amiga/modules
1.1.1.2   root      406: 
1.1       root      407: you can access all the files in /usr/amiga/modules by reading from the
                    408: AmigaDOS volume "SOUND:".
                    409: (DOS users: try "uae -m dh0:C:\" to mount your drive C:\ as DH0:)
                    410: 
1.1.1.3   root      411: You can mount up to 20 devices, either hardfiles or filesystems, by giving
                    412: either of these options multiple times. The volumes will be named UAE0:,
                    413: UAE1:, etc. UAE will boot from UAE0: if no diskfile is found for floppy
                    414: drive 0.
                    415: You can also use native filesystems to mount Amiga CD-ROMs, and you can
                    416: abuse the hardfile emulation to mount floppy disks: "uae -W 11:2:2:wb13.adf"
                    417: will mount the diskfile "wb13.adf".
1.1       root      418: 
                    419: 
                    420: Tools / Transferring files
                    421: ==========================
                    422: 
1.1.1.2   root      423: As you should know by now, you need to transfer files between your Amiga and
                    424: the machine you run UAE on. There are several ways how to do this.
                    425: 
                    426: - Using a null modem cable, and a terminal package running on each machine,
                    427:   you can transfer the file(s) via Zmodem upload/download. 68000 equipped
                    428:   Amigas can normally attain around 3000cps through the null modem cable,
                    429:   using the standard Commodore serial.device.  However, by using the device
                    430:   replacement BaudBandit.device, anything up to 5500cps can be attained.
                    431:   BaudBandit can be obtained from Aminet.  A second alternative is to use
                    432:   the BASIC program adfi.bas (included with UAE) to transfer a file from the
                    433:   Amiga to the PC via the null modem cable.
                    434:   
                    435: - If you're using CrossDOS on your Amiga, you can compress the disk or
                    436:   kickstart image using LhA or similar PC compatible archiver and copy it to
                    437:   a 720KB floppy disk.  You can now take the disk over to the PC, copy the
                    438:   compressed file to the UAE directory and uncompress it.
                    439:   If you don't have CrossDOS on the Amiga, there is a similar freeware tool
                    440:   called Msh, which can be found on Aminet or on Fish disk 382 or 327.
                    441: 
                    442: In either case, you ought to read the documentation for the programs that
                    443: you use for the transfer. These programs can't be explained here.
1.1       root      444: 
1.1.1.2   root      445: In the "amiga" subdirectory you'll find two small Amiga programs that will
                    446: help you to generate the necessary image files. These are called transrom 
1.1       root      447: and transdisk. Copy them to your Amiga and make them executable (by typing
1.1.1.2   root      448: "protect transrom rwed" and "protect transdisk rwed" in the Amiga shell
1.1       root      449: window).
                    450: transrom will dump the contents of your Kickstart ROM, and transdisk will 
                    451: dump an image of a floppy in one of the drives. Both programs write to the
1.1.1.2   root      452: standard output (read: the screen), so you'll want to redirect that. Do
1.1       root      453: 
                    454:    transrom >ram:kick.rom
                    455:    
                    456: to create a file called "kick.rom" in the RAM disk, and
                    457: 
                    458:    transdisk >ram:df0.adf
                    459:    
                    460: to create a file called "df0.adf" in the RAM disk. These files are pretty
1.1.1.2   root      461: big, 262144 or 524288 bytes for the ROM image and 901120 bytes for a disk 
                    462: image.
1.1.1.3   root      463: 
                    464: NEVER run either of these programs from the Workbench. Always open a Shell
                    465: or CLI window to do this.
                    466: 
1.1       root      467: transdisk understands the following arguments:
                    468: 
                    469:     -d device unit: Use this device instead of DF0:
1.1.1.2   root      470:     -s n:           Begin transfer at track n (default: 0)
                    471:     -e n:           End transfer at track n (default: 79)
                    472:     -w file:        don't read from the floppy, instead write the contents
                    473:                     of "file" to the floppy
                    474:     -h:             Treat the disk as high-density disk. HD images aren't
                    475:                     supported by UAE yet, though. Note that the resulting
                    476:                    file will be twice as big.
1.1       root      477: 
                    478: So, to transfer the disk in drive DF1:, you'd give the command:
                    479: 
                    480:   transdisk >ram:df1.adf -d trackdisk 1
                    481: 
                    482: If you don't have much RAM and can't fit all of a disk image in the RAM disk,
                    483: you can split up the transfer into multiple parts with the "-s" and "-e"
                    484: parameters. To transfer the disk in four parts, you'd use the following 
                    485: commands:
                    486:   
                    487:   transdisk >ram:df0_1.adf -s 0 -e 19
                    488:   transdisk >ram:df0_2.adf -s 20 -e 39
                    489:   transdisk >ram:df0_3.adf -s 40 -e 59
                    490:   transdisk >ram:df0_4.adf -s 60 -e 79
                    491: 
                    492: Of course, you should save each of the four files to another place before
                    493: transferring the next one with transdisk to make space in your RAM disk. 
                    494: If you have all the files on your PC, you can do the following under Unix:
                    495:   cat df0_1.adf df0_2.adf df0_3.adf df0_4.adf >df0.adf
                    496: or, under DOS:
1.1.1.2   root      497:   COPY /B df0_1.adf+df0_2.adf+df0_3.adf+df0_4.adf df0.adf
1.1       root      498: I've been told there are the following tools for the Mac to join binaries:
                    499: "ChunkJoiner 2.1.2" found under Info-Mac's <disk> directory or 
                    500: "JoinFiles 1.0.1" under Info-Mac's <text>.
                    501: 
                    502: The current transdisk can only read the standard AmigaDOS format. This means
                    503: that most games that rely on some form of copy-protection cannot be
1.1.1.2   root      504: transferred (more about disk formats in the file "FAQ")
1.1       root      505: 
1.1.1.2   root      506: ****************************************************************************
1.1       root      507: If you transfer commercial software, you must not distribute the resulting
                    508: image files, since that would be a violation of copyright law. The Kickstart
                    509: ROM has to be considered commercial software. You may only use the Kickstart
                    510: from your own Amiga, and you may not distribute Kickstart ROM files.
                    511: Please read the license that came with your software for details.
1.1.1.2   root      512: ****************************************************************************
                    513: 
                    514: 
                    515: Retrieving files from a disk image
                    516: ==================================
1.1       root      517: 
                    518: If you have a disk image file, and you want to retrieve the files from it, you
                    519: can use the "readdisk" tool. It is automatically built by "make". If you have
                    520: a disk image of a disk called "Workbench1.3D" as df0.adf, and you do
                    521:    readdisk df0.adf
                    522: the whole directory structure of the disk image will be stored in a newly
                    523: created subdirectory called "Workbench1.3D". You can optionally give a second
                    524: parameter to specify a directory where to create the output other than the
                    525: current directory.
                    526: readdisk only understands about the OFS right now. FFS disks will cheerfully
                    527: be regarded as being unreadable. Use the unixfs.device from within the
1.1.1.2   root      528: emulator if you want to transfer files from FFS disks.
1.1       root      529: 
                    530: 
1.1.1.3   root      531: Picasso 96 graphics card emulation
                    532: ==================================
                    533: 
                    534: To use this feature, you must select 68020 emulation with a 32 bit address
                    535: space. You also need a Kickstart 3.x ROM.
                    536: 
                    537: To specify how much graphic memory you want to emulate, use the "-U" option,
                    538: e.g. "-U 4" for 4 megabytes. Then, you need the Picasso 96 software which
                    539: is not distributed with UAE (There will be a link to the Picasso 96 home page
                    540: on the UAE Web page soon). Version 1.31 or higher is recommended.
                    541: Install the Picasso software, and make sure you enable the "uaegfx" driver.
                    542: After that is complete, reboot, and you should be able to select the new
                    543: modes from the ScreenModes program.
                    544: 
                    545: 
1.1       root      546: The UAE_CONTROL program
                    547: =======================
                    548: 
                    549: In the "amiga" subdirectory, you will find two programs, uae_control and
                    550: uaectrl that provide the same functionality as the X11 GUI. uaectrl is
                    551: shell-based and works with any Kickstart, while uae_control needs the
                    552: gadtools.library and a recent version of reqtools.library, so it only works
                    553: with Kick 2.0 and upwards. Copy these two programs to the directory that you
                    554: use for harddisk emulation. They should be self-explanatory.
                    555: 
                    556: 
                    557: Quick overview of the debugger commands
                    558: =======================================
                    559: 
1.1.1.2   root      560: Some (window-system based) ports of UAE have a built-in debugger. You can
                    561: press ^C at any time to enter this debugger.
1.1       root      562: Each debugger command consists of a single letter and occasionally some
                    563: parameters.
                    564: 
                    565: g:                    Start execution at the current address. 
                    566: c:                    Dump state of the CIA and custom chips.
                    567: r:                    Dump state of the CPU
                    568: m <address> <lines>:  Memory dump starting at <address>
                    569: d <address> <lines>:  Disassembly starting at <address>
                    570: t:                    Step one instruction
                    571: z:                    Step through one instruction - useful for JSR, DBRA etc.
                    572: f <address>:          Step forward until PC == <address>
                    573: q:                    Quit the emulator. You don't want to use this command.
1.1.1.3   root      574: M:                    hunt for sound modules
                    575: S <filename> <address> <len>:
                    576:                       save a sound module
1.1.1.5   root      577: C <value>:            Search for values like energy or lifes in games
                    578: W <address> <value>:  Write into Amiga memory
1.1       root      579: 
                    580: 
                    581: Sound
                    582: =====
                    583: 
1.1.1.2   root      584: If your version of UAE supports sound, you can pass parameters like frequency
                    585: or number of bits to use on the commandline; if you don't specify any, sane
                    586: defaults will be used. If graphics output is enabled while sound is output,
                    587: the emulator will be much too slow on most systems. The sound will not be
                    588: continuous. Therefore, a hack to turn off screen updates is provided: Press
                    589: ScrollLock to disable graphics, press it again to enable them.
1.1       root      590: 
                    591: The quality of the emulation depends on the setting of the "-S" commandline
                    592: option. With "-S 3", all of the sound hardware is emulated; and some programs
                    593: (e.g. AIBB) won't run with other settings. "-S 2" should sound just as good as
                    594: "-S 3" and will be much faster for some programs. "-S 1" tries to emulate most
                    595: of the sound hardware, but doesn't actually output sound. "-S 0" completely
                    596: turns off sound.
                    597: 
                    598: 
1.1.1.2   root      599: Pointers
                    600: ========
1.1       root      601: 
1.1.1.2   root      602: There are a few sites in the Internet that contain helpful information about
                    603: UAE.
                    604: 
                    605: The new "official" UAE page is located at
                    606: 
1.1.1.3   root      607: http://www.freiburg.linux.de/~uae
1.1.1.2   root      608: 
                    609: thanks to Stefan Reinauer who is now maintaining it.
                    610: 
                    611: There, you will find links to other UAE pages. One which is especially useful
                    612: is the "UAE Discussion Board" set up by Gustavo Goedert, the address is
                    613: 
1.1.1.3   root      614: http://www.netrunner.com.br/dosuae/uaeboard/index.html
1.1       root      615: 
1.1.1.2   root      616: Not quite as good as a newsgroup due to braindamaged reader software
                    617: (Ratscope), but still a blessing.
                    618: 
1.1.1.3   root      619: There is supposedly a newsgroup named "alt.emulators.amiga", but I don't get
                    620: it here.
                    621: The newsgroup "comp.sys.amiga.emulations" appears to be a proper place to
                    622: discuss Amiga emulation, but, strictly speaking, it is _not_ the right place.
                    623: More appropriate places are "comp.emulators.misc", and, of course, Gustavo's
                    624: discussion board.
                    625: 
                    626: Petter Schau has written another Amiga emulator named "Fellow".  It's mostly
                    627: written in x86 assembly and only runs under DOS.  It's quite compatible and
                    628: generally faster than UAE.  The Fellow homepage is at
                    629: 
                    630: http://www.geocities.com/SiliconValley/Peaks/5244/
1.1       root      631: 
                    632: 
                    633: Thanks & Acknowledgements
                    634: =========================
                    635: 
                    636: Thanks to all who have written me so far with bugreports and success/failure
                    637: reports when trying to run the emulator on various hardware with different
                    638: Kickstart versions. A list of everyone who has contributed to the source code
                    639: can be found in the CREDITS file (this was getting too big to keep it here).
                    640: 
                    641: Special thanks to:
                    642:   - Jay Miner, Dale Luck, R.J. Mical and all the others who built the Amiga.
                    643:   - Felix Bardos, whose HRM I "borrowed".
                    644:   - Hetz Ben Hamo mailed Peter Kittel from Commodore asking for permission to
                    645:     give Kick 1.3 away. Unfortunately, the response was negative :-(
1.1.1.5   root      646:   - Stefan Reinauer, for hosting the UAE Web page after the RWTH decided it's
                    647:     too dangerous to let students have their own Web pages.
                    648:   - Bruno Coste, Ed Hanway, Alessandro Soldo and Marko Nippula provided useful
                    649:     documentation about the Amiga
1.1       root      650:   - Fabio Ciucci gets the "Best bug reports" award for his help with the
                    651:     blitter line emulation and other problem areas.
1.1.1.3   root      652:   - Michael C. Battilana and Cloanto Software, for all their support.
1.1.1.5   root      653:   - Julian Eggebrecht of Factor 5, for providing several F5 games and a lot
                    654:     of valuable input.
                    655:     Factor 5 has made Katakis, one of their classic Amiga games, freely
                    656:     available for download. There are still some good people left in the
                    657:     world...
                    658:   - Jens Sch�nfeld, inventor of the Catweasel controller, donated one
                    659:     controller card.
1.1       root      660: 
                    661: 
1.1.1.2   root      662: Authors/Maintainers
                    663: ===================
1.1       root      664: 
1.1.1.3   root      665: My address is (please read the section "Before you send email" below):
1.1       root      666: 
                    667: [email protected]
                    668: 
                    669: or, via snailmail
                    670: 
                    671: Bernd Schmidt
                    672: Schlossweiherstrasse 14
                    673: 52072 Aachen
                    674: Germany
                    675: 
                    676: Email is more likely to be answered, and will definitely be answered much
                    677: faster. Please avoid phonecalls if you can.
1.1.1.3   root      678: I won't distribute software, neither PD or commercial. Don't send me floppy
                    679: disks without at least asking first, you will not get them back.
1.1.1.2   root      680: 
                    681: The following people have ported UAE to different platforms; you should
                    682: direct system-specific questions to them:
                    683: 
                    684: DOS port:
1.1.1.3   root      685:   Gustavo Goedert <[email protected]>
                    686:   Available: http://www.netrunner.com.br/dosuae
                    687:   Sourecode: available on the above Web page, most of it included in the
                    688:              main source (with some delay)
1.1.1.2   root      689: 
                    690: Mac port:
1.1.1.3   root      691:   Originally: Ernesto Corvi <[email protected]>
                    692:   Currently: Arnaud Blanchard <[email protected]>
                    693:   Available: http://www.pratique.fr/~jblancha/
                    694:   Sourcecode: extra package available. Bits and pieces in the main source,
                    695:               but nothing you could get to compile.
1.1.1.2   root      696: 
                    697: BeBox port:
                    698:   Christian Bauer <[email protected]>
                    699:   Available: The main UAE web page (use the Unix sources)
1.1.1.3   root      700:   Sourcecode: Included in the main source. Should compile OK.
                    701:   Notes: Christian says he doesn't have much time to spend on UAE, so if
                    702:          anyone is willing to help maintain this port, please speak up.
1.1.1.2   root      703: 
                    704: NextStep port:
                    705:   Ian Stephenson <[email protected]>
                    706:   Available: The main UAE web page (use the Unix sources)
1.1.1.3   root      707:   Sourcecode: Included in the main source. Should compile OK.
                    708:   Notes: Ian says he doesn't have much time to spend on UAE, so if
                    709:          anyone is willing to help maintain this port, please speak up.
1.1.1.2   root      710: 
                    711: Amiga port:
                    712:   Originally: Olaf 'Olsen' Barthel <[email protected]>
                    713:   Currently: Samuel Devulder <[email protected]>
                    714:   Available: Not quite sure yet. Paul Liss' Web page has binaries.
1.1.1.3   root      715:   Sourcecode: Included in the main source. Should compile OK.
1.1.1.2   root      716: 
1.1.1.3   root      717: pOS port:
                    718:   Samuel Devulder <[email protected]>
                    719:   Available: Not quite sure yet.
                    720:   Sourcecode: Included in the main source. Should compile OK.
1.1.1.7 ! root      721: 
1.1.1.2   root      722: XFree86/OS2 port:
                    723:   Krister Bergman <[email protected]>
1.1.1.3   root      724:   Available: http://www.kuai.se/~bellman/html/xfreeapps.html
                    725:   Sourcecode: nothing special, apparently the Unix stuff compiles cleanly (?)
1.1.1.2   root      726: 
1.1.1.3   root      727: Win32 port:
1.1.1.7 ! root      728:   Originally: Mathias Ortmann <[email protected]>
        !           729:   Currently: Brian King <[email protected]>
        !           730:   Available: http://www.codepoet.com/uae
        !           731:   Sourcecode: bits merged into the main source, the rest available from the
        !           732:               URL above. Still trying to merge more of it...
1.1.1.3   root      733: 
                    734: Acorn RISC PC port:
                    735:   Peter Teichmann <[email protected]>
                    736:   Available: http://www.wh1.tu-dresden.de/~sol/acorn.shtml
                    737:              http://www.wh1.tu-dresden.de/~sol/acorne.shtml
                    738:   Sourcecode: Some of it is included in the main source, but since Acorn's OS
                    739:               apparently doesn't have decent file handling, you can't even
                    740:              use the same source layout. Also needs lots of additional files.
                    741:              
1.1.1.2   root      742: Since I generally don't have the possibility to test or improve these ports,
                    743: it is a good idea to contact their respective authors if you have questions.
                    744: 
                    745: 
1.1.1.3   root      746: Before you send email...
                    747: ========================
1.1.1.2   root      748: 
                    749: Before you contact me with a problem that you have, make sure you have read
                    750: _all_ of the above. Please read also the file "FAQ", which contains a lot of
1.1.1.3   root      751: helpful information, and the README file for your specific system. 
1.1.1.2   root      752: 
1.1       root      753: I can't answer _every_ question. If you have trouble understanding this
                    754: README, either because you don't speak English very well or because you have
1.1.1.2   root      755: no clue at all about computers, please try to find some friend of yours who 
                    756: does understand this file and who can translate/explain it for you. I simply
                    757: can't explain (for example) how to use terminal programs or CrossDOS because
                    758: I don't use either, and it would be much too time-consuming anyway. This file
                    759: and the file FAQ contains about every piece of information I can give you. I 
                    760: try to help people who have questions, but sometimes it takes too much time.
                    761: 
                    762: Please don't ask for Kickstart ROM files or other copyrighted software. Don't
                    763: _send_ me stuff like this either. If you want to send me something else which
                    764: is big (>= 50K), ask me before or put it somewhere in Webspace.
1.1.1.3   root      765: If I get 3MB of screen shots or a core dump ("it doesn't work, it generates
                    766: this file"), I'm very likely to get extremely angry, I might complain to your
                    767: sysadmin, and you might lose your account. Think twice.
                    768: 
                    769: I'm also going to be extremely annoyed if you send email in HTML format.
                    770: Fight this disease!
1.1       root      771: 
                    772: Oh, and another thing: If I promise to do things (like implement new
                    773: features), and forget about them, pester me. That happens occasionally, it's
                    774: a known bug in my brain. I'll have it replaced.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.