Annotation of hatari/doc/manual.html, revision 1.1.1.9

1.1       root        1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
                      2: <html>
                      3: <head>
                      4:   <title>Hatari User's Manual</title>
1.1.1.3   root        5:   <meta name="description"
                      6:  content="User's manual for the Atari ST emulator Hatari">
1.1.1.8   root        7:   <meta name="author" content="Hatari development team">
1.1       root        8:   <meta name="keywords" content="hatari, documentation, manual, linux">
                      9:   <meta name="resource-type" content="document">
                     10:   <meta name="distribution" content="global">
1.1.1.5   root       11:   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
1.1       root       12:   <meta http-equiv="Content-Style-Type" content="text/css">
                     13:   <style type="text/css">
                     14:   <!--
1.1.1.2   root       15:        body {  background-color:#FFFFFF;
                     16:                color:#000000;
1.1.1.7   root       17:                margin-left:10px;
1.1.1.2   root       18:                margin-right:10px;
1.1.1.8   root       19:                font-family:Verdana,Arial,Helvetica,sans-serif;
1.1.1.2   root       20:                }
1.1       root       21: 
1.1.1.8   root       22:        h2 { border-bottom:solid thin black;}
                     23:        h4.gui { clear:right }
1.1       root       24: 
1.1.1.8   root       25:        td { font-family:Verdana,Arial,Helvetica,sans-serif; }
1.1       root       26: 
                     27:        a:link { color:#000099; background-color:#ffffff; text-decoration:none; }
1.1.1.7   root       28:        a:visited { color:#cc0000; background-color:#ffffff; text-decoration:none;}
                     29:        a:hover { color:#0000ff; background-color:#ffffff; text-decoration:none; }
                     30:        a:active { color:#993399; background-color:#ffffff; text-decoration:none; }
1.1       root       31: 
1.1.1.8   root       32:        *.commandline { font-family:Fixed,Courier,monospace; font-size:90% }
1.1.1.2   root       33:        *.file { color: #000088;}
                     34:        *.button { color: #468E64;}
1.1.1.8   root       35:        *.key { color:#550000; font-family:Fixed,Courier,monospace; font-size:90% }
1.1       root       36:        *.backdropped { background-color:#ffffee; }
1.1.1.5   root       37:        *.image {margin-left: 5px; margin-right: 5px; border-width:2px; border-style:solid; border-color:#eeeeff; padding:1cm; text-align:center; }
                     38:        *.floatimage { clear:right; float:right; margin-left:0.5cm; border-width:2px; border-style:solid; border-color:#eeeeff; padding:0.5cm; }
1.1       root       39: 
                     40:   -->
                     41:   </style>
                     42: </head>
1.1.1.5   root       43: 
                     44: <body>
                     45: 
1.1       root       46: <h1 align="center">Hatari User's Manual</h1>
1.1.1.5   root       47: 
1.1.1.2   root       48: <p align="center">
1.1.1.9 ! root       49: Version 1.2
1.1.1.3   root       50: </p>
                     51: <p align="center">
1.1.1.8   root       52: Manual written by: <strong>Thomas Huth</strong>, <strong>Matthias Arndt</strong>
                     53:  &amp; <strong>Eero Tamminen</strong>  
1.1.1.2   root       54: </p>
                     55: <p align="center">
1.1.1.9 ! root       56: Hatari on the WWW: <strong><a href="http://hatari.berlios.de/"
        !            57:  target="_blank">http://hatari.berlios.de/</a></strong>
1.1.1.2   root       58: </p>
1.1       root       59: 
1.1.1.5   root       60: <h2>Index</h2>
                     61: <ul>
                     62:   <li><a href="#Introduction">Introduction</a>
                     63:   <ul>
                     64:     <li><a href="#General description">General description</a>
                     65:     <li><a href="#Features">Features</a>
1.1.1.7   root       66:     <li><a href="#STE hardware emulation">STE hardware emulation</a>
                     67:     <li><a href="#Very experimental TT hardware emulation">Very experimental TT hardware emulation</a>
                     68:     <li><a href="#Very experimental Falcon hardware emulation">Very experimental Falcon hardware emulation</a>
1.1.1.5   root       69:     <li><a href="#System requirements">System requirements</a>
                     70:   </ul>
                     71:   <li><a href="#Compiling and running">Compiling and running</a>
                     72:   <ul>
                     73:     <li><a href="#Compiling Hatari">Compiling Hatari</a>
                     74:     <li><a href="#Installation of a TOS ROM">Installation of a TOS ROM</a>
                     75:     <li><a href="#Installation of the binary">Installation of the binary</a>
                     76:     <li><a href="#Running Hatari for the first time">Running Hatari for the first time</a>
                     77:   </ul>
                     78:   <li><a href="#Command line options">Command line options</a>
                     79:   <li><a href="#Using the emulated system">Using the emulated system</a>
                     80:   <ul>
                     81:     <li><a href="#The GUI">The GUI</a>
                     82:     <ul>
                     83:       <li><a href="#The Main Menu">The Main Menu</a>
                     84:       <li><a href="#The System Dialog">The System Dialog</a>
                     85:       <li><a href="#The Disks Dialog">The Disks Dialog</a>
                     86:       <li><a href="#The Memory Dialog">The Memory Dialog</a>
                     87:       <li><a href="#The ROM Dialog">The ROM Dialog</a>
                     88:       <li><a href="#The Joystick Dialog">The Joystick Dialog</a>
                     89:       <li><a href="#The Screen Dialog">The Screen Dialog</a>
                     90:       <li><a href="#The Keyboard Dialog">The Keyboard Dialog</a>
                     91:       <li><a href="#The Sound Dialog">The Sound Dialog</a>
                     92:       <li><a href="#The Devices Dialog">The Devices Dialog</a>
                     93:     </ul>
                     94:     <li><a href="#Keyboard shortcuts">Keyboard shortcuts</a>
                     95:     <li><a href="#Emulated Atari ST keyboard">Emulated Atari ST keyboard</a>
                     96:     <li><a href="#Emulated mouse">Emulated mouse</a>
                     97:     <li><a href="#Emulated joystick">Emulated joystick</a>
                     98:     <li><a href="#Emulated video">Emulated video</a>
                     99:     <li><a href="#Emulated printer">Emulated printer</a>
                    100:     <li><a href="#Emulated RS232">Emulated RS232</a>
                    101:   </ul>
                    102:   <li><a href="#Floppy disk images">Floppy disk images</a>
                    103:   <li><a href="#Hard disk support">Hard disk support</a>
1.1.1.6   root      104:   <ul>
                    105:     <li><a href="#ACSI hard disk emulation">ACSI hard disk emulation</a></li>
                    106:     <li><a href="#GEMDOS based hard disk emulation">GEMDOS based hard disk emulation</a></li>
                    107:   </ul>
1.1.1.5   root      108:   <li><a href="#Appendix">Appendix</a>
                    109:   <ul>
                    110:     <li><a href="#Copying">Copying</a>
                    111:     <li><a href="#Introduction to Emulation">Introduction to Emulation</a>
                    112:   </ul>
                    113: </ul>
                    114: 
                    115: 
                    116: <a name="Introduction"></a><h2>Introduction</h2>
1.1       root      117: 
1.1.1.5   root      118: <a name="General description"></a><h3>General description</h3>
1.1       root      119: <p>
1.1.1.7   root      120: Hatari is an Atari ST, STE, TT and Falcon emulator for Linux, FreeBSD, BeOS and
                    121: other Systems which are supported by the SDL library.
1.1.1.4   root      122: The emulator is open source software and is distributed under the terms of the
1.1.1.7   root      123: <a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU General
                    124: Public License (GPL)</a>.
1.1.1.4   root      125: </p>
                    126: <p>
1.1.1.3   root      127: The Atari ST was a 16/32 bit computer system which was first released by Atari
1.1.1.4   root      128: in 1985. Using the Motorola 68000 CPU, it was a very popular computer having
                    129: quite a lot of CPU power at that time. See Appendix B for details on emulation
                    130: in general.
1.1.1.3   root      131: </p>
                    132: <p>
1.1.1.4   root      133: Unlike many other Atari ST emulators which try to give you a good
                    134: environment for running GEM applications, Hatari tries to emulate the hardware
                    135: of a ST as close as possible so that it is able to run most of the old ST games
                    136: and demos. Of course you can run normal GEM applications with Hatari, too.
1.1.1.7   root      137: Recent versions of Hatari even feature basic STE, TT and Falcon emulation.
1.1       root      138: </p>
                    139: 
1.1.1.5   root      140: <a name="Features"></a><h3>Features</h3>
1.1       root      141: <ul>
1.1.1.7   root      142:   <li>68000 - 68040 emulation via the UAE CPU core (no PMMU support though)</li>
                    143:   <li>ST RAM size variable (from 512kiB up to 14MiB are possible)</li>
1.1.1.3   root      144:   <li>optional cartridge images for the ST ROM port</li>
1.1.1.2   root      145:   <li>most of the ST specific hardware</li>
1.1       root      146:   <li>ST Shifter with ST-High, ST-Medium and ST-Low resolutions,
1.1.1.7   root      147:     overscan effects for all borders in color resolutions</li>
1.1.1.6   root      148:   <li>512 color ST palette</li>
1.1.1.7   root      149:   <li>many raster effects </li>
1.1.1.8   root      150:   <li>scaling of low resolutions by factor two</li>
1.1.1.7   root      151:   <li>interleaved lines rendering of ST-medium and (scaled) ST-low
                    152:     resolutions for the TV "monitor type"</li>
1.1.1.8   root      153:   <li>Blitter chip emulation</li>
1.1.1.2   root      154:   <li>PSG YM2149 emulation (soundchip) including STFM samples</li>
1.1.1.8   root      155:   <li>Printer port emulation on hardware level (print to file)</li>
1.1.1.2   root      156:   <li>experimental support for RS232</li>
1.1.1.7   root      157:   <li>experimental MIDI output support (no MIDI input/through support)</li>
1.1       root      158:   <li>Mega ST real time clock</li>
1.1.1.3   root      159:   <li>IKBD emulation (keyboard, mouse and joystick) with custom
1.1.1.7   root      160:     keyboard mapping</li>
1.1       root      161:   <li>joystick emulation via cursor keys and joystick emulation via a
1.1.1.7   root      162:     connected PC joystick</li>
1.1.1.3   root      163:   <li>FDC emulation using floppy disk images in standard formats (*.ST,
1.1.1.7   root      164:     *.MSA and *.DIM)</li>
1.1.1.5   root      165:   <li>support for packed disk images (PkZip and Gzip)</li>
1.1.1.7   root      166:   <li>optional write-protection for disk images</li>
1.1.1.2   root      167:   <li>partial ACSI emulation for harddisk support</li>
                    168:   <li>GEMDOS interface driver to mount a directory as a harddrive</li>
1.1.1.7   root      169:   <li>support for memory snapshots (save whole system state)</li>
1.1.1.2   root      170:   <li>driver for extended VDI resolutions</li>
                    171:   <li>recording of sound as .WAV and .YM files</li>
1.1.1.8   root      172:   <li>screenshots in PNG or BMP format</li>
1.1.1.2   root      173:   <li>animation capturing</li>
1.1.1.8   root      174:   <li>TOS versions 1.00, 1.02, 1.04 and 2.06 (and EmuTOS) can be used in ST mode.</li>
1.1       root      175: </ul>
1.1.1.5   root      176: 
1.1.1.7   root      177: <a name="STE hardware emulation"></a>
                    178: <h4>STE hardware emulation</h4>
1.1.1.6   root      179: STE emulation is still a little bit experimental, but basically
1.1.1.7   root      180: there is support for most of the enhanced/additional STE features:
1.1.1.5   root      181: <ul>
                    182:   <li>horizontal and vertical hardware fine scrolling</li>
                    183:   <li>split screen techniques / in-screen video address manipulations</li>
1.1.1.8   root      184:   <li>(STE specific) left border opening</li>
1.1.1.5   root      185:   <li>4096 colors STE palette</li>
1.1.1.8   root      186:   <li>Stereo DMA sample sound ("microwire" audio balance support missing)</li>
1.1.1.7   root      187:   <li>STE joypads</li>
1.1.1.8   root      188:   <li>TOS versions 1.06, 1.62, 2.05 and 2.06 (and EmuTOS) can be used in STE mode.</li>
1.1.1.5   root      189: </ul>
                    190: 
1.1.1.7   root      191: <a name="Very experimental TT hardware emulation"></a>
                    192: <h4>Very experimental TT hardware emulation</h4>
                    193: There is support for following additional TT features:
                    194: <ul>
                    195:   <li>TT low/med/high resolution support</li>
                    196:   <li>ST/TT palette switching and video shifter</li>
                    197:   <li>RAM upto 14MiB (ST-RAM only, there is no support for TT-RAM yet)</li>
1.1.1.8   root      198:   <li>Only TOS version 3.06 (and EmuTOS) can be used in TT mode.</li>
1.1.1.7   root      199: </ul>
                    200: 
                    201: <a name="Very experimental Falcon hardware emulation"></a>
                    202: <h4>Very experimental Falcon hardware emulation</h4>
                    203: There is support for following additional Falcon features:
                    204: <ul>
                    205:   <li>Videl emulation for all Falcon screen modes</li>
                    206:   <li>STE/Falcon palette switching and shifter</li>
                    207:   <li>Mono/RGB/VGA/TV monitor types</li>
                    208:   <li>Some few parts of the Falcon sound system are emulated
                    209:       (e.g. the additional sample rates of the DMA sound)</li>
1.1.1.8   root      210:   <li>TOS versions 4.00, 4.02, 4.04 and 4.92 (and EmuTOS) can be used in Falcon mode.</li>
1.1.1.7   root      211: </ul>
                    212: 
1.1.1.8   root      213: <p>
                    214: DSP emulation is still very experimental and unstable, but there's a dummy mode,
                    215: too, which helps to get some demos and games running.
1.1       root      216: </p>
1.1.1.5   root      217: 
                    218: 
                    219: <a name="System requirements"></a><h3>System requirements</h3>
                    220: 
1.1       root      221: <p> Hatari currently has the following system requirements: </p>
                    222: <ul>
1.1.1.7   root      223:   <li>a fast PC (&gt;500MHz, for Falcon and TT emulation even faster) </li>
1.1.1.3   root      224:   <li>some sort of Unix (preferable <a href="http://www.linux.org/">GNU/Linux</a>)
                    225:   </li>
1.1       root      226:   <li>the SDL library (<a href="http://www.libsdl.org/">http://www.libsdl.org/</a>)</li>
1.1.1.3   root      227:   <li>the zLib (<a href="http://www.gzip.org/zlib/">http://www.gzip.org/zlib/</a>)
1.1.1.5   root      228: for support of ZIP-packed disk images (*.zip and *.gz)</li>
1.1       root      229: </ul>
1.1.1.5   root      230: 
                    231: <p>
                    232: Certain versions of Hatari have successfully been tested by various people on
                    233: the following systems:
                    234: </p>
1.1       root      235: <ul>
1.1.1.8   root      236:   <li>Linux/i86 with Kernel 2.4.x and 2.6.x</li>
                    237:   <li>Linux/PPC with Kernel 2.4.x and 2.6.x</li>
1.1.1.2   root      238:   <li>BeOS/i86 </li>
1.1       root      239:   <li>Apple PowerMac with Mac OS X </li>
                    240:   <li>NetBSD 1.6 </li>
1.1.1.4   root      241:   <li>NetBSD on a Digital Alpha</li>
1.1.1.8   root      242:   <li>FreeBSD 4.1 on an i486, FreeBSD 4.8 on a Pentium 4 and FreeBSD 5.1</li>
1.1.1.2   root      243:   <li>OpenBSD 3.5 </li>
1.1.1.4   root      244:   <li>Solaris 8 on a SUN UltraSparc 1</li>
1.1.1.8   root      245:   <li>Linux/ARM (oabi) on Sharp Zaurus SL-C760 PDA</li>
                    246:   <li>Linux/ARM (eabi) on Nokia 770, N800 and N810 Internet Tablets</li>
1.1       root      247: </ul>
1.1.1.5   root      248: 
                    249: <a name="Compiling and running"></a><h2>Compiling and running</h2>
                    250: 
                    251: <a name="Compiling Hatari"></a><h3>Compiling Hatari</h3>
                    252: 
1.1       root      253: <p> First, you need the SDL library, you can get it at:
1.1.1.3   root      254: <a href="http://www.libsdl.org/">http://www.libsdl.org/</a>. Most
                    255: distributions already ship a suitable version.
                    256: Make sure to install the appropriate header files as well often called
                    257: "libsdl-dev" or the like.
                    258: </p>
                    259: <p> Second, you need the zLib compression library. You can get it from <a
                    260:  href="http://www.gzip.org/zlib/">http://www.gzip.org/zlib/</a>
                    261: but the version shipped with your distribution will be sufficient in
                    262: most cases. Make sure to have the header files
1.1       root      263: for it installed as well.
                    264: </p>
                    265: <p>
1.1.1.8   root      266: For optional features like PNG format screenshots and Hatari window
                    267: embedding, you need to have the header files for libpng and libX11.
                    268: </p>
                    269: <p>
1.1       root      270: Of course, you need the GNU C compiler and (GNU) Make, too!
                    271: </p>
1.1.1.8   root      272: <p> Change to the <span class="file">hatari/</span> directory, copy
                    273: <span class="file">Makefile-default.cnf</span> to
                    274: <span class="file">Makefile.cnf</span> and adapt the configuration file
                    275: to suite your system. Alternatively, you can use the supplied configure
                    276: script to auto-detect all parameters (type
                    277: "<span class="commandline">./configure --help</span>"
1.1.1.3   root      278: to see the options of the script).
                    279: Don't forget to use some good CFLAGS for the compiler optimizations, e.g.
                    280: run <span class="commandline">configure</span> in the following way:
                    281: </p>
                    282: <p>
                    283:  <kbd> CFLAGS="-O3 -fomit-frame-pointer" ./configure</kbd>
                    284: </p>
                    285: <p>
                    286: Then compile Hatari by typing <span class="commandline">make</span>.
                    287: If all
                    288: works fine, you'll get the executable <span class="commandline">hatari</span>
                    289: in the src/ subdirectory.
1.1.1.2   root      290: </p>
1.1.1.5   root      291: 
                    292: <a name="Installation of a TOS ROM"></a><h3>Installation of a TOS ROM</h3>
                    293: 
1.1.1.6   root      294: <p>
                    295: Before you can start Hatari, you have to copy a TOS ROM image to the data
                    296: directory (the data directory is specified
1.1.1.3   root      297: in the configuration file <span class="file">Makefile.cnf</span>) and
                    298: rename it to <span class="commandline">tos.img</span>, or use the
                    299: <span class="commandline">--tos</span> command line option to tell
                    300: Hatari where to find a TOS ROM.
1.1       root      301: Hatari needs a TOS ROM image because this contains the operating system
1.1.1.6   root      302: of the emulated Atari.
                    303: </p>
                    304: <p>
                    305: Unfortunately it is not possible to ship an original ROM
1.1.1.5   root      306: image with the Hatari package since these images are still copyrighted.
                    307: But you can easily create an image with a real ST and one of those various
                    308: ROM-image programs for the ST (search for &quot;TOSDUMP&quot; with your
                    309: favourite internet search engine). If your old ST does not work anymore, you
                    310: can also try to search the internet directly for corresponding TOS ROM image,
                    311: but don't ask the Hatari team where to get one. </p>
                    312: <p> Another solution is EmuTOS, which is also shipped with the official
                    313: release versions of Hatari. EmuTOS is an open-source TOS clone. You can find
                    314: it at:
                    315: <a href="http://emutos.sourceforge.net/">http://emutos.sourceforge.net/</a>.
                    316: It is not the best solution for playing games or running other old software
1.1.1.8   root      317: due to compatibility issues (see <span class="file">emutos.txt</span> for
                    318: more details), but it's free and compatible with Hatari.</p>
1.1       root      319: <p>If you do not specify a TOS image on the commandline nor can Hatari
                    320: find a suitable TOS image in the default dir, you'll get the chance to
                    321: select a TOS image file from the GUI. </p>
1.1.1.5   root      322: 
                    323: <a name="Installation of the binary"></a><h3>Installation of the binary</h3>
                    324: 
1.1.1.3   root      325: <p> Type <span class="commandline">make install</span> as root to do a
                    326: systemwide installation. In this case it is recommended
                    327: to set the DATADIR variable in Makefile.cnf to a proper value. <tt>/usr/local/share/hatari</tt>
                    328: is a good value in that case.</p>
                    329: <p>The Hatari executable should now be in your PATH and accessible from
                    330: anywhere.</p>
1.1       root      331: <p> When you finally have got a TOS image, try starting Hatari with the
1.1.1.3   root      332: option <span class="commandline">--help</span> to find out more about
                    333: its command line parameters. </p>
1.1.1.5   root      334: 
                    335: <a name="Running Hatari for the first time"></a><h3>Running Hatari for the first time</h3>
                    336: 
1.1.1.3   root      337: <p> Now type <span class="commandline">hatari</span> to run the
                    338: emulator for the first time. If all goes
                    339: well, you should now be presented with a window showing you the
                    340: familiar
                    341: little green desktop of the Atari ST. Press <span class="key">F12</span>
                    342: to turn on the GUI to
                    343: configure Hatari to suit your needs, press <span class="key">F11</span>
                    344: to toggle windowed and fullscreen mode. </p>
1.1.1.5   root      345: 
                    346: <a name="Command line options"></a><h2>Command line options</h2>
                    347: 
1.1.1.7   root      348: <p>Usage:</p>
                    349: <pre>
                    350:  hatari [options] [disk image name]
                    351: </pre>
                    352: 
1.1.1.8   root      353: <p>Hatari command line options are split into several categories:</p>
1.1.1.7   root      354: 
1.1.1.8   root      355: <!--
                    356: Generated from hatari.1 options section by changing subheaders to h3
                    357: and removing extra paragraphs:
                    358:   groff -man -Thtml hatari.1 | awk '
                    359:   /OPTIONS<\/h/ { out = 1; next }
                    360:   /INDENTATION/ { next }
                    361:   /COMMANDS/ { out = 0; next }
                    362:   { if(out) print }' | sed -e 's/h2/h3/g' -e 's/<\/*p>//g'
                    363: -->
                    364: 
                    365: <a name="General options"></a>
                    366: <h3>General options</h3>
                    367: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      368:        cellspacing="0" cellpadding="0">
1.1.1.8   root      369: <tr valign="top" align="left">
                    370: <td width="10%"></td>
                    371: <td width="89%">
                    372: <b>&minus;h, &minus;&minus;help</b></td>
                    373: </table>
                    374: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      375:        cellspacing="0" cellpadding="0">
1.1.1.8   root      376: <tr valign="top" align="left">
                    377: <td width="21%"></td>
                    378: <td width="77%">
                    379: Print command line options and terminate
                    380: </td>
                    381: </table>
                    382: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      383:        cellspacing="0" cellpadding="0">
1.1.1.8   root      384: <tr valign="top" align="left">
                    385: <td width="10%"></td>
                    386: <td width="89%">
                    387: <b>&minus;v, &minus;&minus;version</b></td>
                    388: </table>
                    389: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      390:        cellspacing="0" cellpadding="0">
1.1.1.8   root      391: <tr valign="top" align="left">
                    392: <td width="21%"></td>
                    393: <td width="77%">
                    394: Print version information and terminate
                    395: </td>
                    396: </table>
                    397: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      398:        cellspacing="0" cellpadding="0">
1.1.1.8   root      399: <tr valign="top" align="left">
                    400: <td width="10%"></td>
                    401: <td width="89%">
                    402: <b>&minus;&minus;confirm-quit &lt;bool&gt;</b></td>
                    403: </table>
                    404: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      405:        cellspacing="0" cellpadding="0">
1.1.1.8   root      406: <tr valign="top" align="left">
                    407: <td width="21%"></td>
                    408: <td width="77%">
                    409: Whether Hatari confirms quitting
                    410: </td>
                    411: </table>
                    412: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      413:        cellspacing="0" cellpadding="0">
1.1.1.8   root      414: <tr valign="top" align="left">
                    415: <td width="10%"></td>
                    416: <td width="89%">
                    417: <b>&minus;c, &minus;&minus;configfile
                    418: &lt;filename&gt;</b></td>
                    419: </table>
                    420: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      421:        cellspacing="0" cellpadding="0">
1.1.1.8   root      422: <tr valign="top" align="left">
                    423: <td width="21%"></td>
                    424: <td width="77%">
                    425: use the given file as configuration file instead of
                    426: ~/.hatari/hatari.cfg
                    427: </td>
                    428: </table>
                    429: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      430:        cellspacing="0" cellpadding="0">
1.1.1.8   root      431: <tr valign="top" align="left">
                    432: <td width="10%"></td>
                    433: <td width="89%">
                    434: <b>&minus;&minus;fast-forward &lt;bool&gt;</b></td>
                    435: </table>
                    436: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      437:        cellspacing="0" cellpadding="0">
1.1.1.8   root      438: <tr valign="top" align="left">
                    439: <td width="21%"></td>
                    440: <td width="77%">
                    441: On fast machine helps skipping (fast forwarding) Hatari
                    442: output
                    443: </td>
                    444: </table>
                    445: <a name="Display options"></a>
                    446: <h3>Display options</h3>
                    447: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      448:        cellspacing="0" cellpadding="0">
1.1.1.8   root      449: <tr valign="top" align="left">
                    450: <td width="10%"></td>
                    451: <td width="89%">
                    452: <b>&minus;m, &minus;&minus;mono</b></td>
                    453: </table>
                    454: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      455:        cellspacing="0" cellpadding="0">
1.1.1.8   root      456: <tr valign="top" align="left">
                    457: <td width="21%"></td>
                    458: <td width="77%">
                    459: Start in monochrome mode instead of color
                    460: </td>
                    461: </table>
                    462: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      463:        cellspacing="0" cellpadding="0">
1.1.1.8   root      464: <tr valign="top" align="left">
                    465: <td width="10%"></td>
                    466: <td width="89%">
                    467: <b>&minus;&minus;monitor &lt;x&gt;</b></td>
                    468: </table>
                    469: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      470:        cellspacing="0" cellpadding="0">
1.1.1.8   root      471: <tr valign="top" align="left">
                    472: <td width="21%"></td>
                    473: <td width="77%">
                    474: Select monitor type (x = mono/rgb/vga/tv)
                    475: </td>
                    476: </table>
                    477: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      478:        cellspacing="0" cellpadding="0">
1.1.1.8   root      479: <tr valign="top" align="left">
                    480: <td width="10%"></td>
                    481: <td width="89%">
                    482: <b>&minus;f, &minus;&minus;fullscreen</b></td>
1.1       root      483: </table>
1.1.1.8   root      484: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      485:        cellspacing="0" cellpadding="0">
1.1.1.8   root      486: <tr valign="top" align="left">
                    487: <td width="21%"></td>
                    488: <td width="77%">
                    489: Start the emulator in fullscreen mode
                    490: </td>
                    491: </table>
                    492: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      493:        cellspacing="0" cellpadding="0">
1.1.1.8   root      494: <tr valign="top" align="left">
                    495: <td width="10%"></td>
                    496: <td width="89%">
                    497: <b>&minus;w, &minus;&minus;window</b></td>
                    498: </table>
                    499: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      500:        cellspacing="0" cellpadding="0">
1.1.1.8   root      501: <tr valign="top" align="left">
                    502: <td width="21%"></td>
                    503: <td width="77%">
                    504: Start the emulator in window mode
                    505: </td>
                    506: </table>
                    507: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      508:        cellspacing="0" cellpadding="0">
1.1.1.8   root      509: <tr valign="top" align="left">
                    510: <td width="10%"></td>
                    511: <td width="89%">
                    512: <b>&minus;z, &minus;&minus;zoom &lt;x&gt;</b></td>
                    513: </table>
                    514: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      515:        cellspacing="0" cellpadding="0">
1.1.1.8   root      516: <tr valign="top" align="left">
                    517: <td width="21%"></td>
                    518: <td width="77%">
                    519: Zoom low resolution (1=no, 2=yes)
                    520: </td>
                    521: </table>
                    522: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      523:        cellspacing="0" cellpadding="0">
1.1.1.8   root      524: <tr valign="top" align="left">
                    525: <td width="10%"></td>
                    526: <td width="89%">
                    527: <b>&minus;&minus;frameskips &lt;x&gt;</b></td>
                    528: </table>
                    529: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      530:        cellspacing="0" cellpadding="0">
1.1.1.8   root      531: <tr valign="top" align="left">
                    532: <td width="21%"></td>
                    533: <td width="77%">
                    534: Skip &lt;x&gt; frames after each displayed frame to
                    535: accelerate emulation (0=disabled, &gt;4 uses automatic
                    536: frameskip with given value as maximum)
                    537: </td>
                    538: </table>
                    539: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      540:        cellspacing="0" cellpadding="0">
1.1.1.8   root      541: <tr valign="top" align="left">
                    542: <td width="10%"></td>
                    543: <td width="89%">
                    544: <b>&minus;&minus;borders &lt;bool&gt;</b></td>
                    545: </table>
                    546: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      547:        cellspacing="0" cellpadding="0">
1.1.1.8   root      548: <tr valign="top" align="left">
                    549: <td width="21%"></td>
                    550: <td width="77%">
                    551: Show screen borders (for overscan demos, ST(e) color mode
                    552: specific etc)
                    553: </td>
                    554: </table>
                    555: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      556:        cellspacing="0" cellpadding="0">
1.1.1.8   root      557: <tr valign="top" align="left">
                    558: <td width="10%"></td>
                    559: <td width="89%">
                    560: <b>&minus;&minus;statusbar &lt;bool&gt;</b></td>
                    561: </table>
                    562: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      563:        cellspacing="0" cellpadding="0">
1.1.1.8   root      564: <tr valign="top" align="left">
                    565: <td width="21%"></td>
                    566: <td width="77%">
                    567: Show statusbar (with floppy leds etc etc)
                    568: </td>
                    569: </table>
                    570: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      571:        cellspacing="0" cellpadding="0">
1.1.1.8   root      572: <tr valign="top" align="left">
                    573: <td width="10%"></td>
                    574: <td width="89%">
                    575: <b>&minus;&minus;drive-led &lt;bool&gt;</b></td>
                    576: </table>
                    577: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      578:        cellspacing="0" cellpadding="0">
1.1.1.8   root      579: <tr valign="top" align="left">
                    580: <td width="21%"></td>
                    581: <td width="77%">
                    582: Show overlay drive led when statusbar isn&rsquo;t
                    583: shown
                    584: </td>
                    585: </table>
                    586: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      587:        cellspacing="0" cellpadding="0">
1.1.1.8   root      588: <tr valign="top" align="left">
                    589: <td width="10%"></td>
                    590: <td width="89%">
                    591: <b>&minus;&minus;spec512 &lt;x&gt;</b></td>
                    592: </table>
                    593: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      594:        cellspacing="0" cellpadding="0">
1.1.1.8   root      595: <tr valign="top" align="left">
                    596: <td width="21%"></td>
                    597: <td width="77%">
                    598: Hatari uses this threshold to decide when to render a
                    599: screen with the slower but more accurate Spectrum512 screen
                    600: conversion functions (0 &lt;= x &lt;= 512, 0=disable)
                    601: </td>
                    602: </table>
                    603: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      604:        cellspacing="0" cellpadding="0">
1.1.1.8   root      605: <tr valign="top" align="left">
                    606: <td width="10%"></td>
                    607: <td width="89%">
                    608: <b>&minus;&minus;bpp &lt;bool&gt;</b></td>
                    609: </table>
                    610: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      611:        cellspacing="0" cellpadding="0">
1.1.1.8   root      612: <tr valign="top" align="left">
                    613: <td width="21%"></td>
                    614: <td width="77%">
                    615: Force internal bitdepth (x = 8/15/16/32, 0=disable)
                    616: </td>
                    617: </table>
                    618: <a name="VDI options"></a>
                    619: <h3>VDI options</h3>
                    620: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      621:        cellspacing="0" cellpadding="0">
1.1.1.8   root      622: <tr valign="top" align="left">
                    623: <td width="10%"></td>
                    624: <td width="89%">
                    625: <b>&minus;&minus;vdi &lt;bool&gt;</b></td>
                    626: </table>
                    627: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      628:        cellspacing="0" cellpadding="0">
1.1.1.8   root      629: <tr valign="top" align="left">
                    630: <td width="21%"></td>
                    631: <td width="77%">
                    632: Whether to use VDI screen mode
                    633: </td>
                    634: </table>
                    635: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      636:        cellspacing="0" cellpadding="0">
1.1.1.8   root      637: <tr valign="top" align="left">
                    638: <td width="10%"></td>
                    639: <td width="89%">
                    640: <b>&minus;&minus;vdi&minus;planes &lt;x&gt;</b></td>
                    641: </table>
                    642: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      643:        cellspacing="0" cellpadding="0">
1.1.1.8   root      644: <tr valign="top" align="left">
                    645: <td width="21%"></td>
                    646: <td width="77%">
                    647: Use extended VDI resolution with bit depth &lt;x&gt; (x =
                    648: 1, 2 or 4)
                    649: </td>
                    650: </table>
                    651: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      652:        cellspacing="0" cellpadding="0">
1.1.1.8   root      653: <tr valign="top" align="left">
                    654: <td width="10%"></td>
                    655: <td width="89%">
                    656: <b>&minus;&minus;vdi&minus;width &lt;w&gt;</b></td>
                    657: </table>
                    658: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      659:        cellspacing="0" cellpadding="0">
1.1.1.8   root      660: <tr valign="top" align="left">
                    661: <td width="21%"></td>
                    662: <td width="77%">
                    663: Use extended VDI resolution with width &lt;w&gt; (384
                    664: &lt;= w &lt;= 1024)
                    665: </td>
                    666: </table>
                    667: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      668:        cellspacing="0" cellpadding="0">
1.1.1.8   root      669: <tr valign="top" align="left">
                    670: <td width="10%"></td>
                    671: <td width="89%">
                    672: <b>&minus;&minus;vdi&minus;height &lt;h&gt;</b></td>
                    673: </table>
                    674: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      675:        cellspacing="0" cellpadding="0">
1.1.1.8   root      676: <tr valign="top" align="left">
                    677: <td width="21%"></td>
                    678: <td width="77%">
                    679: Use extended VDI resolution with height &lt;h&gt; (200
                    680: &lt; h &lt;= 768)
                    681: </td>
                    682: </table>
                    683: <a name="Devices options"></a>
                    684: <h3>Devices options</h3>
                    685: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      686:        cellspacing="0" cellpadding="0">
1.1.1.8   root      687: <tr valign="top" align="left">
                    688: <td width="10%"></td>
                    689: <td width="89%">
                    690: <b>&minus;j, &minus;&minus;joystick
                    691: &lt;port&gt;</b></td>
                    692: </table>
                    693: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      694:        cellspacing="0" cellpadding="0">
1.1.1.8   root      695: <tr valign="top" align="left">
                    696: <td width="21%"></td>
                    697: <td width="77%">
                    698: Emulate joystick with cursor keys in given port (0-5)
                    699: </td>
                    700: </table>
                    701: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      702:        cellspacing="0" cellpadding="0">
1.1.1.8   root      703: <tr valign="top" align="left">
                    704: <td width="10%"></td>
                    705: <td width="89%">
                    706: <b>&minus;&minus;joy&lt;port&gt;
                    707: &lt;type&gt;</b></td>
                    708: </table>
                    709: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      710:        cellspacing="0" cellpadding="0">
1.1.1.8   root      711: <tr valign="top" align="left">
                    712: <td width="21%"></td>
                    713: <td width="77%">
                    714: Set joystick type (none/keys/real) for given port
                    715: </td>
                    716: </table>
                    717: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      718:        cellspacing="0" cellpadding="0">
1.1.1.8   root      719: <tr valign="top" align="left">
                    720: <td width="10%"></td>
                    721: <td width="89%">
                    722: <b>&minus;&minus;printer &lt;file&gt;</b></td>
                    723: </table>
                    724: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      725:        cellspacing="0" cellpadding="0">
1.1.1.8   root      726: <tr valign="top" align="left">
                    727: <td width="21%"></td>
                    728: <td width="77%">
                    729: Enable printer support and write data to &lt;file&gt;
                    730: </td>
                    731: </table>
                    732: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      733:        cellspacing="0" cellpadding="0">
1.1.1.8   root      734: <tr valign="top" align="left">
                    735: <td width="10%"></td>
                    736: <td width="89%">
1.1.1.9 ! root      737: <b>&minus;&minus;midi&minus;in &lt;filename&gt;</b></td>
1.1.1.8   root      738: </table>
                    739: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      740:        cellspacing="0" cellpadding="0">
1.1.1.8   root      741: <tr valign="top" align="left">
                    742: <td width="21%"></td>
                    743: <td width="77%">
1.1.1.9 ! root      744: Enable MIDI support and write MIDI data to &lt;file&gt;
1.1.1.8   root      745: </td>
                    746: </table>
                    747: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      748:        cellspacing="0" cellpadding="0">
1.1.1.8   root      749: <tr valign="top" align="left">
                    750: <td width="10%"></td>
                    751: <td width="89%">
1.1.1.9 ! root      752: <b>&minus;&minus;midi&minus;out &lt;filename&gt;</b></td>
1.1.1.8   root      753: </table>
                    754: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      755:        cellspacing="0" cellpadding="0">
1.1.1.8   root      756: <tr valign="top" align="left">
                    757: <td width="21%"></td>
                    758: <td width="77%">
1.1.1.9 ! root      759: Enable MIDI support and read MIDI data from &lt;file&gt;
        !           760: </td>
        !           761: </table>
        !           762: <table width="100%" border=0 rules="none" frame="void"
        !           763:        cellspacing="0" cellpadding="0">
        !           764: <tr valign="top" align="left">
        !           765: <td width="10%"></td>
        !           766: <td width="89%">
        !           767: <b>&minus;&minus;rs232&minus;in &lt;filename&gt;</b></td>
        !           768: </table>
        !           769: <table width="100%" border=0 rules="none" frame="void"
        !           770:        cellspacing="0" cellpadding="0">
        !           771: <tr valign="top" align="left">
        !           772: <td width="21%"></td>
        !           773: <td width="77%">
        !           774: Enable serial port support and use &lt;file&gt; as the input device
        !           775: </td>
        !           776: </table>
        !           777: <table width="100%" border=0 rules="none" frame="void"
        !           778:        cellspacing="0" cellpadding="0">
        !           779: <tr valign="top" align="left">
        !           780: <td width="10%"></td>
        !           781: <td width="89%">
        !           782: <b>&minus;&minus;rs232&minus;out &lt;filename&gt;</b></td>
        !           783: </table>
        !           784: <table width="100%" border=0 rules="none" frame="void"
        !           785:        cellspacing="0" cellpadding="0">
        !           786: <tr valign="top" align="left">
        !           787: <td width="21%"></td>
        !           788: <td width="77%">
        !           789: Enable serial port support and use &lt;file&gt; as the output device
1.1.1.8   root      790: </td>
                    791: </table>
                    792: <a name="Disk options"></a>
                    793: <h3>Disk options</h3>
                    794: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      795:        cellspacing="0" cellpadding="0">
1.1.1.8   root      796: <tr valign="top" align="left">
                    797: <td width="10%"></td>
                    798: <td width="89%">
                    799: <b>&minus;&minus;disk-a &lt;file&gt;</b></td>
                    800: </table>
                    801: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      802:        cellspacing="0" cellpadding="0">
1.1.1.8   root      803: <tr valign="top" align="left">
                    804: <td width="21%"></td>
                    805: <td width="77%">
                    806: Set disk image for floppy drive A
                    807: </td>
                    808: </table>
                    809: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      810:        cellspacing="0" cellpadding="0">
1.1.1.8   root      811: <tr valign="top" align="left">
                    812: <td width="10%"></td>
                    813: <td width="89%">
                    814: <b>&minus;&minus;disk-b &lt;file&gt;</b></td>
                    815: </table>
                    816: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      817:        cellspacing="0" cellpadding="0">
1.1.1.8   root      818: <tr valign="top" align="left">
                    819: <td width="21%"></td>
                    820: <td width="77%">
                    821: Set disk image for floppy drive B
                    822: </td>
                    823: </table>
                    824: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      825:        cellspacing="0" cellpadding="0">
1.1.1.8   root      826: <tr valign="top" align="left">
                    827: <td width="10%"></td>
                    828: <td width="89%">
                    829: <b>&minus;d, &minus;&minus;harddrive
                    830: &lt;dir&gt;</b></td>
                    831: </table>
                    832: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      833:        cellspacing="0" cellpadding="0">
1.1.1.8   root      834: <tr valign="top" align="left">
                    835: <td width="21%"></td>
                    836: <td width="77%">
                    837: Emulate an ST harddrive (&lt;dir&gt; = root
                    838: directory)
                    839: </td>
                    840: </table>
                    841: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      842:        cellspacing="0" cellpadding="0">
1.1.1.8   root      843: <tr valign="top" align="left">
                    844: <td width="10%"></td>
                    845: <td width="89%">
                    846: <b>&minus;&minus;acsi &lt;file&gt;</b></td>
                    847: </table>
                    848: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      849:        cellspacing="0" cellpadding="0">
1.1.1.8   root      850: <tr valign="top" align="left">
                    851: <td width="21%"></td>
                    852: <td width="77%">
                    853: Emulate an ACSI hard disk with an image &lt;file&gt;
                    854: </td>
                    855: </table>
                    856: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      857:        cellspacing="0" cellpadding="0">
1.1.1.8   root      858: <tr valign="top" align="left">
                    859: <td width="10%"></td>
                    860: <td width="89%">
                    861: <b>&minus;&minus;ide &lt;file&gt;</b></td>
                    862: </table>
                    863: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      864:        cellspacing="0" cellpadding="0">
1.1.1.8   root      865: <tr valign="top" align="left">
                    866: <td width="21%"></td>
                    867: <td width="77%">
1.1.1.9 ! root      868: Emulate an IDE hard disk with an image &lt;file&gt;
1.1.1.8   root      869: </td>
                    870: </table>
                    871: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      872:        cellspacing="0" cellpadding="0">
1.1.1.8   root      873: <tr valign="top" align="left">
                    874: <td width="10%"></td>
                    875: <td width="89%">
                    876: <b>&minus;&minus;slowfdc &lt;bool&gt;</b></td>
                    877: </table>
                    878: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      879:        cellspacing="0" cellpadding="0">
1.1.1.8   root      880: <tr valign="top" align="left">
                    881: <td width="21%"></td>
                    882: <td width="77%">
                    883: slow down FDC emulation (deprecated)
                    884: </td>
                    885: </table>
                    886: <a name="Memory options"></a>
                    887: <h3>Memory options</h3>
                    888: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      889:        cellspacing="0" cellpadding="0">
1.1.1.8   root      890: <tr valign="top" align="left">
                    891: <td width="10%"></td>
                    892: <td width="89%">
                    893: <b>&minus;s, &minus;&minus;memsize &lt;x&gt;</b></td>
                    894: </table>
                    895: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      896:        cellspacing="0" cellpadding="0">
1.1.1.8   root      897: <tr valign="top" align="left">
                    898: <td width="21%"></td>
                    899: <td width="77%">
                    900: Set amount of emulated RAM, x = 1 to 14 MiB, or 0 for 512
                    901: KiB
                    902: </td>
                    903: </table>
                    904: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      905:        cellspacing="0" cellpadding="0">
1.1.1.8   root      906: <tr valign="top" align="left">
                    907: <td width="10%"></td>
                    908: <td width="89%">
                    909: <b>&minus;t, &minus;&minus;tos
                    910: &lt;imagefile&gt;</b></td>
                    911: </table>
                    912: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      913:        cellspacing="0" cellpadding="0">
1.1.1.8   root      914: <tr valign="top" align="left">
                    915: <td width="21%"></td>
                    916: <td width="77%">
                    917: Specify TOS ROM image to use
                    918: </td>
                    919: </table>
                    920: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      921:        cellspacing="0" cellpadding="0">
1.1.1.8   root      922: <tr valign="top" align="left">
                    923: <td width="10%"></td>
                    924: <td width="89%">
                    925: <b>&minus;&minus;cartridge &lt;imagefile&gt;</b></td>
                    926: </table>
                    927: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      928:        cellspacing="0" cellpadding="0">
1.1.1.8   root      929: <tr valign="top" align="left">
                    930: <td width="21%"></td>
                    931: <td width="77%">
                    932: Use ROM cartridge image &lt;file&gt; (only works if
                    933: GEMDOS HD emulation and extended VDI resolution are
                    934: disabled)
                    935: </td>
                    936: </table>
                    937: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      938:        cellspacing="0" cellpadding="0">
1.1.1.8   root      939: <tr valign="top" align="left">
                    940: <td width="10%"></td>
                    941: <td width="89%">
                    942: <b>&minus;&minus;memstate &lt;file&gt;</b></td>
                    943: </table>
                    944: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      945:        cellspacing="0" cellpadding="0">
1.1.1.8   root      946: <tr valign="top" align="left">
                    947: <td width="21%"></td>
                    948: <td width="77%">
                    949: Load memory snap-shot &lt;file&gt;
                    950: </td>
                    951: </table>
                    952: <a name="CPU options"></a>
                    953: <h3>CPU options</h3>
                    954: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      955:        cellspacing="0" cellpadding="0">
1.1.1.8   root      956: <tr valign="top" align="left">
                    957: <td width="10%"></td>
                    958: <td width="89%">
                    959: <b>&minus;&minus;cpulevel &lt;x&gt;</b></td>
                    960: </table>
                    961: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      962:        cellspacing="0" cellpadding="0">
1.1.1.8   root      963: <tr valign="top" align="left">
                    964: <td width="21%"></td>
                    965: <td width="77%">
                    966: Specify CPU (680x0) to use (use x &gt;= 1 with EmuTOS or
                    967: TOS &gt;= 2.06 only!)
                    968: </td>
                    969: </table>
                    970: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      971:        cellspacing="0" cellpadding="0">
1.1.1.8   root      972: <tr valign="top" align="left">
                    973: <td width="10%"></td>
                    974: <td width="89%">
                    975: <b>&minus;&minus;cpuclock &lt;x&gt;</b></td>
                    976: </table>
                    977: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      978:        cellspacing="0" cellpadding="0">
1.1.1.8   root      979: <tr valign="top" align="left">
                    980: <td width="21%"></td>
                    981: <td width="77%">
                    982: Set the CPU clock (8, 16 or 32 Mhz)
                    983: </td>
                    984: </table>
                    985: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      986:        cellspacing="0" cellpadding="0">
1.1.1.8   root      987: <tr valign="top" align="left">
                    988: <td width="10%"></td>
                    989: <td width="89%">
                    990: <b>&minus;&minus;compatible &lt;bool&gt;</b></td>
                    991: </table>
                    992: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root      993:        cellspacing="0" cellpadding="0">
1.1.1.8   root      994: <tr valign="top" align="left">
                    995: <td width="21%"></td>
                    996: <td width="77%">
                    997: Use a more compatible but slower 68000 CPU mode
                    998: </td>
                    999: </table>
                   1000: <a name="Misc system options"></a>
                   1001: <h3>Misc system options</h3>
                   1002: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1003:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1004: <tr valign="top" align="left">
                   1005: <td width="10%"></td>
                   1006: <td width="89%">
                   1007: <b>&minus;&minus;machine &lt;x&gt;</b></td>
                   1008: </table>
                   1009: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1010:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1011: <tr valign="top" align="left">
                   1012: <td width="21%"></td>
                   1013: <td width="77%">
                   1014: select machine type (x = st, ste, tt or falcon)
                   1015: </td>
                   1016: </table>
                   1017: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1018:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1019: <tr valign="top" align="left">
                   1020: <td width="10%"></td>
                   1021: <td width="89%">
                   1022: <b>&minus;&minus;blitter &lt;bool&gt;</b></td>
                   1023: </table>
                   1024: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1025:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1026: <tr valign="top" align="left">
                   1027: <td width="21%"></td>
                   1028: <td width="77%">
                   1029: Enable blitter emulation (ST only)
                   1030: </td>
                   1031: </table>
                   1032: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1033:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1034: <tr valign="top" align="left">
                   1035: <td width="10%"></td>
                   1036: <td width="89%">
                   1037: <b>&minus;&minus;dsp &lt;x&gt;</b></td>
                   1038: </table>
                   1039: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1040:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1041: <tr valign="top" align="left">
                   1042: <td width="21%"></td>
                   1043: <td width="77%">
                   1044: Falcon DSP emulation (x = none, dummy or emu, Falcon
                   1045: only)
                   1046: </td>
                   1047: </table>
                   1048: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1049:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1050: <tr valign="top" align="left">
                   1051: <td width="10%"></td>
                   1052: <td width="89%">
                   1053: <b>&minus;&minus;sound &lt;x&gt;</b></td>
                   1054: </table>
                   1055: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1056:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1057: <tr valign="top" align="left">
                   1058: <td width="21%"></td>
                   1059: <td width="77%">
                   1060: Sound quality (off/low/med/hi, off=faster)
                   1061: </td>
                   1062: </table>
                   1063: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1064:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1065: <tr valign="top" align="left">
                   1066: <td width="10%"></td>
                   1067: <td width="89%">
                   1068: <b>&minus;k, &minus;&minus;keymap
                   1069: &lt;file&gt;</b></td>
                   1070: </table>
                   1071: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1072:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1073: <tr valign="top" align="left">
                   1074: <td width="21%"></td>
                   1075: <td width="77%">
                   1076: load keyboard mapping from &lt;file&gt;
                   1077: </td>
                   1078: </table>
                   1079: <a name="Debug options"></a>
                   1080: <h3>Debug options</h3>
                   1081: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1082:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1083: <tr valign="top" align="left">
                   1084: <td width="10%"></td>
                   1085: <td width="89%">
                   1086: <b>&minus;D, &minus;&minus;debug
                   1087: &lt;bool&gt;</b></td>
                   1088: </table>
                   1089: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1090:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1091: <tr valign="top" align="left">
                   1092: <td width="21%"></td>
                   1093: <td width="77%">
                   1094: Enable Hatari debugger console interface
                   1095: </td>
                   1096: </table>
                   1097: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1098:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1099: <tr valign="top" align="left">
                   1100: <td width="10%"></td>
                   1101: <td width="89%">
                   1102: <b>&minus;&minus;bios-intercept</b></td>
                   1103: </table>
                   1104: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1105:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1106: <tr valign="top" align="left">
                   1107: <td width="21%"></td>
                   1108: <td width="77%">
                   1109: Enable Bios/XBios interception
                   1110: </td>
                   1111: </table>
                   1112: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1113:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1114: <tr valign="top" align="left">
                   1115: <td width="10%"></td>
                   1116: <td width="89%">
                   1117: <b>&minus;&minus;trace &lt;trace1,...&gt;</b></td>
                   1118: </table>
                   1119: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1120:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1121: <tr valign="top" align="left">
                   1122: <td width="21%"></td>
                   1123: <td width="77%">
                   1124: Activate debug traces, see <b>--trace help</b> for available tracing options
                   1125: </td>
                   1126: </table>
                   1127: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1128:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1129: <tr valign="top" align="left">
                   1130: <td width="10%"></td>
                   1131: <td width="89%">
                   1132: <b>&minus;&minus;control-socket &lt;file&gt;</b></td>
                   1133: </table>
                   1134: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1135:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1136: <tr valign="top" align="left">
                   1137: <td width="21%"></td>
                   1138: <td width="77%">
                   1139: Hatari reads options from given socket at run-time
                   1140: </td>
                   1141: </table>
                   1142: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1143:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1144: <tr valign="top" align="left">
                   1145: <td width="10%"></td>
                   1146: <td width="89%">
                   1147: <b>&minus;&minus;log-file &lt;file&gt;</b></td>
                   1148: </table>
                   1149: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1150:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1151: <tr valign="top" align="left">
                   1152: <td width="21%"></td>
                   1153: <td width="77%">
                   1154: Save log output to &lt;file&gt; (default=stderr)
                   1155: </td>
                   1156: </table>
                   1157: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1158:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1159: <tr valign="top" align="left">
                   1160: <td width="10%"></td>
                   1161: <td width="89%">
                   1162: <b>&minus;&minus;log-level &lt;x&gt;</b></td>
                   1163: </table>
                   1164: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1165:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1166: <tr valign="top" align="left">
                   1167: <td width="21%"></td>
                   1168: <td width="77%">
                   1169: Log output level (x=debug/todo/info/warn/error/fatal)
                   1170: </td>
                   1171: </table>
                   1172: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1173:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1174: <tr valign="top" align="left">
                   1175: <td width="10%"></td>
                   1176: <td width="89%">
                   1177: <b>&minus;&minus;alert-level &lt;x&gt;</b></td>
                   1178: </table>
                   1179: <table width="100%" border=0 rules="none" frame="void"
1.1.1.9 ! root     1180:        cellspacing="0" cellpadding="0">
1.1.1.8   root     1181: <tr valign="top" align="left">
                   1182: <td width="21%"></td>
                   1183: <td width="77%">
                   1184: Show dialog for log messages above given level
                   1185: </td>
                   1186: </table>
                   1187: 
1.1.1.5   root     1188: 
1.1.1.7   root     1189: <p>Type <span class="commandline">hatari --help</span> to list all
                   1190: the command line options supported by a given version of Hatari.</p>
                   1191: 
1.1.1.5   root     1192: <a name="Using the emulated system"></a><h2>Using the emulated system</h2>
                   1193: 
1.1       root     1194: <p> Once you've started Hatari succesfully, you can use the emulator as
                   1195: an allmost complete Atari ST computer system. </p>
1.1.1.5   root     1196: 
                   1197: <a name="The GUI"></a><h3>The GUI</h3>
                   1198: 
1.1.1.3   root     1199: <p>Press <span class="key">F12</span> to enter the GUI. Navigate it
                   1200: with the mouse.
1.1       root     1201: The GUI is rather self explanatory.</p>
1.1.1.5   root     1202: 
1.1.1.8   root     1203: <a name="The Main Menu"></a><h4 class="gui">The Main Menu</h4>
1.1.1.5   root     1204: 
                   1205: <div class="floatimage">
                   1206: <img src="images/main.png" width="360" height="352" alt="Hatari's GUI - the main menu">
                   1207: </div>
                   1208: 
                   1209: <p>From the main menu, you can reach the other setup dialogs by clicking on
                   1210: the appropriate buttons.</p>
                   1211: 
                   1212: <p>You can load the current settings from a configuration file by clicking
                   1213: on the <span class="button">Load config</span> button and you can save the
                   1214: current settings to a configuration file with the <span class="button">Save
                   1215: config</span> button.</p>
                   1216: 
1.1.1.3   root     1217: <p>Click <span class="button">Okay</span> to go back to the emulated
1.1.1.5   root     1218: ST. All changed options will be applied.</p>
1.1.1.3   root     1219: <p>Check the <span class="button">Reset ST</span> option if you want
1.1.1.5   root     1220: the emulated ST to perform a cold reset. This is equal to
                   1221: switching the power off and on again on a real ST.
1.1.1.3   root     1222: </p>
                   1223: <p>Click <span class="button">Quit</span> to terminate Hatari and
                   1224: return to the host OS.</p>
                   1225: <p>Click <span class="button">Cancel</span> to abandon any changes
1.1.1.5   root     1226: that you have made.</p>
                   1227: 
1.1.1.8   root     1228: <a name="The System Dialog"></a><h4 class="gui">The System Dialog</h4>
1.1.1.5   root     1229: 
                   1230: <div class="floatimage">
                   1231: <img src="images/system.png" width="360" height="368" alt="Hatari's GUI - the system dialog">
                   1232: </div>
                   1233: 
1.1.1.7   root     1234: <p>
                   1235:  First you can select the CPU type here. Here are some important hints for
                   1236:  choosing the correct CPU type:
                   1237: </p>
                   1238: <ul>
                   1239:  <li>
                   1240:   Atari ST and STE have only been shipped with a 68000 CPU, so for best
                   1241:   compatibility with old programs, choose this CPU type.
                   1242:  </li>
                   1243:  <li>
                   1244:   Atari TT and Falcon computers were using the 68030 CPU, so you should switch
                   1245:   either to 68020 or 68020+FPU when you want to use TT or Falcon mode.
                   1246:   (The 68020 and 68030 were pretty much the same apart from some minor details).
                   1247:  </li>
                   1248:  <li>
                   1249:   TOS 1.0x only works with 68000, while TOS 3.0x and 4.0x work only with a CPU
                   1250:   &gt;= 68020.
                   1251:  </li>
                   1252:  <li>
                   1253:   68010 and 68040 have never been used in official Atari computers, so don't
                   1254:   use these CPU types unless you've got some good reasons.
                   1255:  </li>
                   1256: </ul>
                   1257: 
                   1258: <p>
                   1259:  Beside the CPU type, you can also choose the machine type to emulate.
                   1260:  The ST was the very first 16/32-bit computer from Atari. Most older games
                   1261:  and demos require an ST. The STE was introduced some years later and had
                   1262:  some more advanced hardware features. There are not that many demos or
                   1263:  games that really require an STE but since most normal ST games/demos also
                   1264:  work with an STE, it's normally safe to always work in STE mode.
                   1265:  <br>
                   1266:  TT and Falcon are more advanced, but they are not as compatible to the ST as
1.1.1.8   root     1267:  the STE was. Therefore many old games and demos do not work with these machine
                   1268:  types anymore. There were only very few programs that were made for the TT
1.1.1.7   root     1269:  exclusively, while there were some interesting games and demos specially made
                   1270:  for the Falcon.
                   1271:  <em>Note:</em> TT and Falcon emulation are very incomplete. They may not work
                   1272:  very well.
                   1273: </p>
                   1274: <p>
                   1275:  For STE emulation a STE compatible TOS image, e.q. version 1.06, 1.62 or
                   1276:  2.x, is strongly recommended. For TT emulation you need TOS 3.0x and for Falcon
                   1277:  emulation you need TOS 4.0x. EmuTOS can be used on all machine types.
                   1278: </p>
                   1279: <p>
                   1280:  Select the CPU clock you want to use. 8Mhz is ST standard and the most
                   1281:  compatible. Use 16MHz for Mega STE and Falcon emulation.
                   1282:  The CPU in the TT was clocked with 32 MHz.
                   1283: </p>
1.1.1.5   root     1284: <p>With the &quot;Slower but more compatible CPU&quot; option, you can enable
                   1285:  the emulation of 68k address errors and the CPU prefetch buffer. This is needed
                   1286:  for best compatibility, but it slows down emulation a little bit so you can
                   1287:  disable it if you don't need it.</p>
                   1288: <p>You can also enable/disable Blitter emulation here. The Blitter is a custom
                   1289:  chip that accelerates some graphical operations. This switch only toggles the
                   1290:  Blitter in plain ST mode. In STE mode, the Blitter is always enabled (since all
                   1291:  STEs have been sold with a Blitter chip).</p>
                   1292: <p>If you enable the &quot;Real time clock emulation&quot; switch, a RTC will
                   1293:  be emulated based on the time of the host computer. Note that you need at least
                   1294:  TOS 1.02 for proper RTC emulation, TOS 1.00 does not support this.</p>
                   1295: <p>The Timer-D patch changes the Timer-D initialization from TOS. TOS uses
                   1296:  the MFP timer D as a baudrate generator for RS232. However, the TOS default
                   1297:  value slows down the emulation. The patch gives you a better performance.
1.1.1.7   root     1298:  It is normally safe to enable the patch, but if you encounter a program that
1.1.1.5   root     1299:  does not work, you can try to disable the patch to see if it works then.</p>
1.1.1.8   root     1300: <p>
                   1301:  Select if you want to use slow FDC emulation. &quot;Slow down FDC&quot; is
                   1302:  normally not required, except for some few slideshows / intros which run too
                   1303:  fast without this option.
                   1304: </p>
1.1.1.3   root     1305: <p><em>NOTE:</em> These parameters are very sensitive to the emulated
                   1306: ST and it is strongly recommended to
1.1       root     1307: reset the emulated ST after changing these options.</p>
1.1.1.5   root     1308: 
1.1.1.8   root     1309: <a name="The Disks Dialog"></a><h4 class="gui">The Disks Dialog</h4>
1.1.1.5   root     1310: 
                   1311: <div class="image" align="center">
1.1.1.8   root     1312: <img src="images/discs.png" width="640" height="399" alt="Hatari's GUI - the disks dialog">
1.1.1.5   root     1313: </div>
                   1314: 
1.1.1.3   root     1315: <p>Use the upper dialog to choose which floppy disks should be emulated
                   1316: in the disk drives.</p>
1.1.1.5   root     1317: 
1.1.1.8   root     1318: <p>You can use most standard Atari ST disk image files. You may select
                   1319: and browse also zipped disk images. See the chapter "Floppy disk images"
1.1       root     1320: for details.</p>
1.1.1.5   root     1321: 
1.1.1.8   root     1322: <p>Click on the button <span class="button">Browse</span> next to the
                   1323: A: and B: option to go to the fileselector:
1.1.1.5   root     1324: </p>
                   1325: 
                   1326: <div class="image" align="center">
1.1.1.8   root     1327: <img src="images/fileselector.png" width="640" height="399" alt="Hatari's GUI - the fileselector">
1.1.1.5   root     1328: </div>
                   1329: 
1.1.1.3   root     1330: <p>Click on <span class="button">Eject</span> to eject a disk image
                   1331: from the emulated drive. The emulated ST will act as if had no floppy
                   1332: disk in its drive.</p>
                   1333: <p>You can specify a default directory where Hatari will start to
                   1334: browse the filesystem.</p>
1.1.1.2   root     1335: <p>
1.1.1.6   root     1336: Check the "Auto insert B" option if you want Hatari to be smart and
                   1337: insert the second disk of a two disk game automatically.
                   1338: Some games then use the second drive automatically.
                   1339: In the case that a game is not able to find the disk in the second drive,
                   1340: you have to insert the second disk in drive A: manually when prompted.
                   1341: <br>
                   1342: <em>NOTE:</em> This option only works properly if the file name of the
                   1343: first disks ends with an 'a' before the extension and the second disk name
                   1344: ends with a 'b'.
1.1.1.2   root     1345: </p>
1.1.1.3   root     1346: <p>If you need to create a new blank disk image, click on <span
                   1347:  class="button">Create disk image</span>.
                   1348: Parameters for the new image can be set in the following dialog. Click
                   1349: on <span class="create">create</span> to create the image or on <span
                   1350:  class="button">back</span> to get back to the
1.1.1.2   root     1351: disk dialog.
                   1352: </p>
                   1353: <p>
1.1.1.3   root     1354: After clicking <span class="button">create</span>, a fileselector
                   1355: appears. You can browse the filesystem now. Select the target
                   1356: directory, click beside File:
                   1357: and type in a name for the new disk image. The name should terminate
                   1358: with .st or .msa.
1.1.1.2   root     1359: </p>
1.1.1.3   root     1360: <p>Hatari can currently create plain .ST and .MSA disk images
                   1361: exclusively.</p>
1.1.1.4   root     1362: <p>You can choose if you want Hatari to writeprotect your disks. Atari ST virii can spread on disk images too so it is ok to
                   1363: enable the write protection option. However you can't save highscores or games to your disk images then.</p>
1.1.1.2   root     1364: <p>Use the lower dialog to change the harddisk settings.</p>
1.1.1.3   root     1365: <p>You can select a harddrive image for harddrive emulation via image
                   1366: file here or you may select
                   1367: a directory of your local filesystem to be emulated as the ST's
                   1368: harddrive.</p>
                   1369: <p>Check "Boot from HD" if you want Hatari to execute the AUTO folder
                   1370: on the harddrive.
                   1371: This option is checked by default if you specify a harddrive image or a
                   1372: directory via the command line.</p>
1.1.1.5   root     1373: 
1.1.1.8   root     1374: <a name="The Memory Dialog"></a><h4 class="gui">The Memory Dialog</h4>
1.1.1.5   root     1375: 
1.1.1.8   root     1376: <div class="floatimage">
                   1377: <img src="images/memory.png" width="398" height="349" alt="Hatari's GUI - the memory dialog">
1.1.1.5   root     1378: </div>
                   1379: 
1.1.1.3   root     1380: <p>You can select the amount of RAM for the emulated ST here. Only
                   1381: amounts that were valid on a real unmodified STFM can be selected.</p>
                   1382: <p><em>Note:</em> This option is critical and you are strongly advised
                   1383: to reset the emulated ST
1.1       root     1384: when changing this option.</p>
1.1.1.2   root     1385: <p>Here you will find the options to save memory snapshots as well.</p>
1.1.1.3   root     1386: <p>Click on <span class="button">Save</span> to save a memory snapshot
                   1387: to file. You can select a new filename here.</p>
                   1388: <p>Click on <span class="button">Restore</span> to restore a memory
                   1389: snapshot from a file. Use the fileselector to select the snapshot to be
                   1390: restored.</p>
                   1391: <p><em>NOTE:</em> Memory snapshots are not interchangeable between
                   1392: different versions of Hatari. E.q. if you compile a newer Hatari, you
                   1393: cannot load your old memory snapshots back.</p>
                   1394: 
1.1.1.5   root     1395: 
1.1.1.8   root     1396: <a name="The ROM Dialog"></a><h4 class="gui">The ROM Dialog</h4>
                   1397: 
                   1398: <div class="floatimage">
                   1399: <img src="images/tos.png" width="519" height="367" alt="Hatari's GUI - the ROM dialog">
1.1.1.5   root     1400: </div>
                   1401: 
1.1.1.3   root     1402: <p>Here you can select the TOS image to use. Click on <span
1.1.1.5   root     1403:  class="button">Browse</span> to select it via the fileselector.
1.1.1.3   root     1404: You can also select an optional cartridge image to use. Click on <span
1.1.1.4   root     1405:  class="button">Browse</span> to select one via the fileselector. Click on <span
1.1.1.5   root     1406:  class="button">Eject</span> to disconnect the custom cartridge image.
                   1407: </p>
1.1.1.7   root     1408: <p>
                   1409: For ST mode, use TOS 1.00, 1.02, 1.04 or 2.06.
                   1410: For STE mode, use TOS 1.06, 1.62, 2.05 or 2.06.
                   1411: If you want to use the TT mode, you must specify a TOS 3.06 image here.
                   1412: And in Falcon mode, you have to use either TOS 4.00, 4.02, 4.04 or 4.92.
                   1413: However, you should always use TOS 4.04 for Falcon mode, it's the most common one.
                   1414: Also note that TOS 4.92 can not be booted from a boot disk (like it's done on a
                   1415: real Falcon), you have to specify it directly in the TOS ROM setup dialog here.
                   1416: </p>
                   1417: <p>
                   1418: Keep in mind that any custom cartridge image will not work together with
1.1.1.5   root     1419: GEMDOS hard disk emulation or the VDI extended resolution emulation
1.1.1.3   root     1420: since some additional driver code will be used in the cartridge memory
1.1.1.7   root     1421: space for these emulations.
                   1422: </p>
                   1423: <p>
                   1424: <em>Note:</em> These options are critical and you are strongly
1.1.1.3   root     1425: advised to reset the emulated ST
1.1.1.7   root     1426: when changing one of these option.
                   1427: </p>
1.1.1.5   root     1428: 
1.1.1.8   root     1429: 
                   1430: <a name="The Joystick Dialog"></a><h4 class="gui">The Joystick Dialog</h4>
1.1.1.5   root     1431: 
                   1432: <div class="floatimage">
                   1433: <img src="images/joystick.png" width="320" height="288" alt="Hatari's GUI - the joystick dialog">
                   1434: </div>
                   1435: 
                   1436: <p>In this dialog, you can configure the emulated joysticks.
                   1437: With the upper two arrows, you can choose the joystick which you want to
                   1438: configure.</p>
1.1.1.3   root     1439: <p>Joystick 1 is the normal ST joystick port and 99.9% of all ST games
1.1.1.5   root     1440: use this port.
                   1441: Joystick 0 emulates a joystick plugged into the ST mouse port
                   1442: and is often used in games for two players.</p>
                   1443: <p>With STE joypad A and B, you can enable the emulation of Jaguar joypads
                   1444: which are plugged in the enhanced joystick ports of the Atari STE.
                   1445: Only very few STE games support these joypads, so you often won't need this.</p>
                   1446: <p>Finally, Hatari also emulates joysticks which were plugged on the parallel
                   1447: port with a special adapter on a real ST. These were used in some few
                   1448: multi-player games like &quot;Gauntlet 2&quot;.</p>
                   1449: <p>For each ST joystick, choose whether you want to disable it,
                   1450: use the keyboard for emulation or use a real PC joystick.</p>
                   1451: <p>For keyboard emulation, you can select the keys by pressing the
                   1452: <span class="button">Define keys</span> button. You will be prompted to press
                   1453: the keys for up, down, left, right and fire.</p>
                   1454: <p>If you want to use a real PC joystick for the emulation, you should connect
                   1455: it to your PC before you start Hatari. Then you can choose the joystick with
                   1456: the two lower arrows.</p>
                   1457: <p>Check the &quot;Enable autofire&quot; option if you are too lazy to pound
                   1458: on the fire button in shoot'em-up games. However, this option only works with
                   1459: certain games. In some other games, it gets worse if you enable this option.</p>
                   1460: <p>See also the chapter "Emulated Joystick" for details.</p>
                   1461: 
1.1.1.8   root     1462: 
                   1463: <a name="The Screen Dialog"></a><h4 class="gui">The Screen Dialog</h4>
1.1.1.5   root     1464: 
1.1.1.7   root     1465: <div class="floatimage">
1.1.1.8   root     1466: <img src="images/screen.png" width="498" height="399" alt="Hatari's GUI - the screen dialog">
1.1.1.5   root     1467: </div>
1.1       root     1468: 
1.1.1.7   root     1469: <p>
                   1470:  Here you control the video output of the emulated Atari.
                   1471: </p>
                   1472: <p>
                   1473:  Check &quot;Fullscreen&quot; to run Hatari fullscreen, default is windowed.
                   1474: </p>
                   1475: <p>
                   1476:  &quot;Use Borders&quot; toggles the displaying of the borders around the ST
                   1477:  screen. Some few demos/games use the borders for displaying additional
                   1478:  graphics. However, when you enable this option, it increases CPU computing
                   1479:  time, so you should not enable it if you have a slow computer.
                   1480:  Please note that this option also only affects the ST and STE mode, TT and
                   1481:  Falcon modes are always displayed without borders.
                   1482: </p>
                   1483: <p>
                   1484:  &quot;Zoom ST-Low res.&quot; controls whether Hatari doubles the low
                   1485:  resolutions. For example Hatari then zooms the ST low resolution 320x200 to
                   1486:  640x400 and it doubles 384x267 (ST low with borders) to 768x534.
                   1487:  Note that zooming also takes a lot of CPU computing time and should not be
                   1488:  enabled on slow computers.
                   1489: </p>
                   1490: <p>
1.1.1.8   root     1491:  &quot;Statusbar&quot; toggles the statusbar at the bottom of the screen.
                   1492:  The statusbar shows the floppy drive LEDs, the current frameskip value,
                   1493:  the machine type including TOS version and memory size, and whether
                   1494:  recording is currently active.
1.1.1.7   root     1495: </p>
                   1496: <p>
                   1497:  The &quot;Frame Skip&quot; option can be set to speed up the emulator
1.1.1.8   root     1498:  if it is running too slow on your system. Disable frame-skip if you have
                   1499:  a fast computer. When selecting 1, 2 or 4, drawing of corresponding number
                   1500:  of frames will be skipped after each frame actually shown by Hatari.
                   1501:  Select &quot;Auto&quot; to let the emulator to decide whether, and
                   1502:  how many frames will be skipped.<br>
                   1503:  <em>Note:</em> The frameskip option also affects the frame rate of the
                   1504:  screen animation recording!
1.1.1.7   root     1505: </p>
                   1506: <p>
                   1507:  You can select which sort of monitor to use. This option depends on the
                   1508:  machine type which you have selected in the &quot;System options&quot;
                   1509:  dialog. In ST and STE mode, you can choose between monochrome mode (select
                   1510:  &quot;Mono&quot;) and color mode (select one of the other monitor types).
                   1511:  Note that when you select &quot;TV&quot; and use zoomed low resolution or
                   1512:  switch to ST medium resolution, you will get a TV-like screen rendering
                   1513:  which is a little bit faster but darker compared to the normal &quot;RGB&quot;
                   1514:  monitor mode. Switching between mono and a color monitor acts like a monitor
                   1515:  switch on a real ST - so beware, this will reboot your emulated system!<br>
                   1516:  In TT mode, you can only choose between TT-high resolution (&quot;Mono&quot;)
                   1517:  and normal modes (select one of the other monitor types).
                   1518:  Finally the Falcon mode supports all four types of monitors. Note that most
                   1519:  Falcon demos/games require a RGB or TV mode and do not work with VGA.
                   1520: </p>
                   1521: <p>
1.1.1.3   root     1522: Extended GEM resolutions will emulate some sort of extended graphics
                   1523: card in the emulated ST giving you larger resolutions and a higher
                   1524: colordepth in GEM. Select a resolution and color depth. Check to
                   1525: activate. It will disable all other video options mentioned above.
                   1526: Uncheck to get back to a normal ST behaviour.<br>
                   1527: <em>Note:</em> Using an extended resolution will only work with GEM
                   1528: conformant applications. 99% of all games and demos will not run if you
1.1.1.7   root     1529: activate any extended resolution here.
                   1530: </p>
1.1.1.3   root     1531: <p>Click <span class="button">Capture Screen</span> to create a
1.1.1.8   root     1532: screenshot in PNG (or BMP) format to the current working directory or click
                   1533: <span class="button">Record Animation</span> to record a sequence of single
1.1.1.3   root     1534: screenshots. You can opt to only record new movie frames when the
                   1535: screen content really changed.
1.1       root     1536: </p>
1.1.1.5   root     1537: 
1.1.1.8   root     1538: 
                   1539: <a name="The Keyboard Dialog"></a><h4 class="gui">The Keyboard Dialog</h4>
1.1.1.5   root     1540: 
                   1541: <div class="floatimage">
1.1.1.8   root     1542: <img src="images/keyboard.png" width="459" height="223" alt="Hatari's GUI - the keyboard dialog">
1.1.1.5   root     1543: </div>
                   1544: 
                   1545: <p>Here you can select the keyboard mapping to use. Two different mappings
                   1546:  called &quot;Symbolic&quot; and &quot;Scancode&quot; are predefined.</p>
                   1547: <p>&quot;Symbolic&quot; tries to map the symbolic values of your PC keys
                   1548:  to the ST keys. It should be working pretty good on all systems as long
                   1549:  as your keyboard layout looks close to the standard english keyboard
                   1550:  layout. However, you might experience some problems with special keys like
                   1551:  brackets etc.</p>
                   1552: <p>&quot;Scancode&quot; uses the scancode values of your PC keys for keyboard
                   1553:  mapping. This only works on certain architectures like Linux where the
                   1554:  scancodes are similar to the ST scancodes (e.g. it does not work on Mac OS X).
                   1555:  If it works on your system, this often gives better results than the symbolic
                   1556:  mapping. Note that you also need a TOS version with the right language
                   1557:  (e.g. use a French TOS if you are using a French keyboard).</p>
                   1558: <p>You can also load a custom keyboard mapping file here if you wish. Please
1.1.1.6   root     1559:  note that the custom keyboard mapping will use the &quot;symbolic&quot;
                   1560:  mapping for all keys that are not defined by your map file. Have a look
                   1561:  at the supplied example mapfile (keymap-sample.txt) to see how to create
                   1562:  your own keyboard mapping.</p>
1.1.1.8   root     1563: <p>
                   1564:  When the emulator runs in fast forward mode, and you want to type text,
                   1565:  it can be annoying that the emulated system detects multiple key events
                   1566:  due to the key repetition of the emulated system. To avoid this you can
                   1567:  disable the key repetition in fast forward mode here.
                   1568: </p>
1.1.1.5   root     1569: 
                   1570: 
1.1.1.8   root     1571: <a name="The Sound Dialog"></a><h4 class="gui">The Sound Dialog</h4>
                   1572: 
                   1573: <div class="floatimage">
                   1574: <img src="images/sound.png" width="379" height="383" alt="Hatari's GUI - the sound dialog">
1.1.1.5   root     1575: </div>
                   1576: 
1.1.1.2   root     1577: <p>Here you can control the sound subsystem.</p>
1.1.1.3   root     1578: <p>Check if you want emulated sound at all. Emulation is faster if
                   1579: sound emulation is turned off.</p>
                   1580: <p>3 frequencies from low to high quality are available. Experiment a
                   1581: little bit to find out which fits best for your setup.
1.1       root     1582: Medium quality will work ok in most cases.</p>
1.1.1.8   root     1583: <p>You can select to record a piece of sound here. The file name
                   1584: extension you use (.WAV or .YM), determines in which format the sound
                   1585: is recorded in.  The record button is a toggle so you will need to
                   1586: return to the GUI to switch sound recording off again
                   1587: (or to use the keyboard shortcut for that).</p>
1.1.1.5   root     1588: 
                   1589: 
1.1.1.8   root     1590: <a name="The Devices Dialog"></a><h4 class="gui">The Devices Dialog</h4>
1.1.1.5   root     1591: 
1.1.1.8   root     1592: <div class="floatimage">
                   1593: <img src="images/devices.png" width="519" height="351" alt="Hatari's GUI - the device dialog">
1.1.1.5   root     1594: </div>
                   1595: 
1.1.1.8   root     1596: <p>Check here if you want to enable experimental printer support. See
                   1597: the chapter "Emulated printer" for details.</p>
                   1598: 
1.1.1.3   root     1599: <p>As Hatari currently only supports printing to file, click on <span
                   1600:  class="button">Select</span> to select the file to print to. You can
                   1601: enter a new filename as well.</p>
                   1602: <p>Check the second checkmark if you want to enable experimental RS232
                   1603: support. The RS232 device is configured according to the settings of
                   1604: the emulated RS232 of the Atari ST. This means Hatari will
                   1605: automatically use baudrate and handshaking as configured for the
                   1606: emulated ST.</p>
                   1607: <p>Select a suitable device file for input and output. Click on <span
                   1608:  class="button">Browse</span> to select.
1.1.1.2   root     1609: A good choice is /dev/ttyS0 or /dev/ttyS1.
                   1610: </p>
1.1.1.3   root     1611: <p>You can enable MIDI as well. This currently works for outputting
                   1612: MIDI data only. A good choice is /dev/midi00.</p>
                   1613: <p>Click on <span class="button">Browse</span> to select a suitable
                   1614: MIDI device file for output.</p>
1.1.1.2   root     1615: <p>Your sound driver must support MIDI to make this work.</p>
                   1616: <p><em>NOTE:</em> RS232 and MIDI emulation are very experimental, too.
                   1617: Don't enable them unless you really need them!
                   1618: </p>
1.1.1.5   root     1619: 
1.1.1.8   root     1620: 
                   1621: <a name="Keyboard shortcuts"></a><h3 style="clear:both;">Keyboard shortcuts</h3>
1.1.1.5   root     1622: 
1.1       root     1623: <p> While the emulator is running, you can activate or toggle various
1.1.1.6   root     1624: features via Hatari keyboard shortcuts. Below are listed the default
                   1625: shortcut key bindings:</p>
1.1.1.3   root     1626: <table border="1" cellpadding="3">
1.1       root     1627:   <tbody>
                   1628:     <tr class="backdropped">
                   1629:       <td align="center">Shortcut</td>
                   1630:       <td align="center">Purpose</td>
                   1631:     </tr>
                   1632:     <tr>
1.1.1.2   root     1633:       <td align="center"><span class="key">ALTGR+a</span></td>
                   1634:       <td align="center">record animation</td>
                   1635:     </tr>
                   1636:     <tr>
1.1       root     1637:       <td align="center"><span class="key">ALTGR+g</span></td>
1.1.1.8   root     1638:       <td align="center">grab a screenshot</td>
1.1       root     1639:     </tr>
                   1640:     <tr>
1.1.1.2   root     1641:       <td align="center"><span class="key">ALTGR+i</span></td>
1.1.1.8   root     1642:       <td align="center">boss key: leave full screen mode, pause Hatari
                   1643: and iconify its window</td>
1.1.1.2   root     1644:     </tr>
                   1645:     <tr>
1.1       root     1646:       <td align="center"><span class="key">ALTGR+j</span></td>
1.1.1.8   root     1647:       <td align="center">toggle joystick emulation via cursor keys
                   1648: on/off between ports 0 and 1</td>
1.1       root     1649:     </tr>
                   1650:     <tr>
                   1651:       <td align="center"><span class="key">ALTGR+m</span></td>
1.1.1.8   root     1652:       <td align="center">(un-)lock the mouse into the window</td>
1.1       root     1653:     </tr>
                   1654:     <tr>
                   1655:       <td align="center"><span class="key">ALTGR+r</span></td>
1.1.1.2   root     1656:       <td align="center">(warm) reset the ST</td>
1.1       root     1657:     </tr>
                   1658:     <tr>
                   1659:       <td align="center"><span class="key">ALTGR+c</span></td>
1.1.1.3   root     1660:       <td align="center">coldreset the ST (same as the original power
                   1661: switch)</td>
1.1       root     1662:     </tr>
                   1663:     <tr>
1.1.1.8   root     1664:       <td align="center"><span class="key">ALTGR+d</span></td>
                   1665:       <td align="center">open dialog to select/change disk A</td>
                   1666:     </tr>
                   1667:     <tr>
1.1.1.2   root     1668:       <td align="center"><span class="key">ALTGR+s</span></td>
                   1669:       <td align="center">enable/disable sound</td>
                   1670:     </tr>
                   1671:     <tr>
1.1       root     1672:       <td align="center"><span class="key">ALTGR+q</span></td>
                   1673:       <td align="center">quit the emulator</td>
                   1674:     </tr>
                   1675:     <tr>
1.1.1.2   root     1676:       <td align="center"><span class="key">ALTGR+x</span></td>
                   1677:       <td align="center">toggle normal/max speed</td>
                   1678:     </tr>
                   1679:     <tr>
                   1680:       <td align="center"><span class="key">ALTGR+y</span></td>
                   1681:       <td align="center">enable/disable sound recording</td>
                   1682:     </tr>
                   1683:     <tr>
1.1.1.7   root     1684:       <td align="center"><span class="key">ALTGR+k</span></td>
                   1685:       <td align="center">save memory snapshot</td>
                   1686:     </tr>
                   1687:     <tr>
                   1688:       <td align="center"><span class="key">ALTGR+l</span></td>
                   1689:       <td align="center">load memory snapshot</td>
                   1690:     </tr>
                   1691:     <tr>
1.1.1.5   root     1692:       <td align="center"><span class="key">ALTGR+f or F11</span></td>
1.1.1.8   root     1693:       <td align="center">toggle between fullscreen and windowed mode</td>
1.1       root     1694:     </tr>
                   1695:     <tr>
1.1.1.5   root     1696:       <td align="center"><span class="key">ALTGR+o or F12</span></td>
1.1.1.8   root     1697:       <td align="center">activate the options GUI</td>
1.1       root     1698:     </tr>
                   1699:     <tr>
                   1700:       <td align="center"><span class="key">PAUSE</span></td>
1.1.1.8   root     1701:       <td align="center">pause emulation or go to the debugger
                   1702:           if Hatari was started with the -D option</td>
1.1       root     1703:     </tr>
                   1704:   </tbody>
                   1705: </table>
1.1.1.5   root     1706: 
1.1.1.6   root     1707: <p>You can change the key bindings from the Hatari configuration file.
                   1708: The required key values you can see from the SDL_keysym.h include file
1.1.1.8   root     1709: (usually in /usr/include/SDL/).</p>
1.1.1.6   root     1710: 
                   1711: 
1.1.1.5   root     1712: <a name="Emulated Atari ST keyboard"></a><h3>Emulated Atari ST keyboard</h3>
                   1713: 
1.1       root     1714: <p> All other keys on the keyboard act as the normal Atari ST keys so
                   1715: pressing SPACE on your PC will result in an emulated press of the SPACE
                   1716: key on the ST. The following keys have special meanings: </p>
1.1.1.3   root     1717: <table border="1" cellpadding="3">
1.1       root     1718:   <tbody>
                   1719:     <tr class="backdropped">
                   1720:       <td align="center">Key</td>
                   1721:       <td align="center">Meaning</td>
                   1722:     </tr>
                   1723:     <tr>
                   1724:       <td align="center"><span class="key">Alt</span></td>
                   1725:       <td align="center">will act as the ST's ALTERNATE key</td>
                   1726:     </tr>
                   1727:     <tr>
                   1728:       <td align="center"><span class="key">left CTRL</span></td>
                   1729:       <td align="center">will act as the ST's CONTROL key</td>
                   1730:     </tr>
                   1731:     <tr>
1.1.1.2   root     1732:       <td align="center"><span class="key">Print Screen</span></td>
1.1       root     1733:       <td align="center">will emulate the ST's HELP key</td>
                   1734:     </tr>
                   1735:     <tr>
1.1.1.2   root     1736:       <td align="center"><span class="key">Scroll Lock</span></td>
1.1       root     1737:       <td align="center">will emulate the ST's UNDO key</td>
                   1738:     </tr>
1.1.1.2   root     1739:     <tr>
                   1740:       <td align="center"><span class="key">Page Up</span></td>
                   1741:       <td align="center">will emulate the ST's ( key in the keypad</td>
                   1742:     </tr>
                   1743:     <tr>
                   1744:       <td align="center"><span class="key">Page Down</span></td>
                   1745:       <td align="center">will emulate the ST's ) in the keypad</td>
                   1746:     </tr>
1.1       root     1747:   </tbody>
                   1748: </table>
1.1.1.5   root     1749: 
1.1.1.8   root     1750: <p>If joystick emulation via keyboard is enabled, by default cursor keys
                   1751: are used for the directions and <span class="key">right CTRL</span> key
                   1752: as the fire button. Otherwise they act as corresponding keys of the emulated
                   1753: Atari ST.</p>
                   1754: 
1.1.1.5   root     1755: 
                   1756: <a name="Emulated mouse"></a><h3>Emulated mouse</h3>
                   1757: 
1.1       root     1758: <p>For obvious reasons your PC mouse will act as the emulated Atari ST
                   1759: mouse. In fullscreen mode it will act as expected, directly controlling
                   1760: the ST mouse pointer. </p>
                   1761: <p>However it is a little bit different in windowed mode. To make the
                   1762: mouse work there as expected you need to grab it first or lock it into
1.1.1.3   root     1763: the Hatari window. Do this by pressing the <span class="key">ALTGR+m</span>
                   1764: hotkey combination.
1.1       root     1765: Press it again to go back to normal mouse behaviour which allows you to
                   1766: work in other X11 windows while Hatari is up and running. </p>
1.1.1.6   root     1767: <p>Mouse scrollwheel will act as cursor up and down keys. </p>
1.1.1.5   root     1768: 
                   1769: <a name="Emulated joystick"></a><h3>Emulated joystick</h3>
                   1770: 
1.1       root     1771: <p>The Atari ST joysticks are emulated ofcourse allowing you to play
                   1772: your favourite games with Hatari. </p>
                   1773: <p>The default mode is to use a connected PC joystick. You can use any
                   1774: joystick that is supported by your kernel. If your joystick works with
                   1775: other applications, it will likely work with Hatari as well. Make sure
                   1776: it is calibrated and then off you go. Move the stick to point into the
                   1777: desired direction. Please note that Hatari will not detect analogue
                   1778: movement as the Atari ST only had digital joysticks. The first
1.1.1.3   root     1779: firebutton will act as the normal firebutton on the Atari ST while the
                   1780: second
                   1781: firebutton will emulate a keypress of the <span class="key">SPACE</span>
                   1782: key on the ST as many ST
1.1.1.8   root     1783: games utilize the SPACE bar for secondary game functions. (Xenon for
1.1.1.3   root     1784: example)</p>
1.1       root     1785: <p>If you do not have a PC joystick or joypad, then you do not need to
                   1786: desperate. You can emulate one of the two Atari ST joysticks via the
                   1787: cursor keys. Just activate it in the GUI. Then the cursor keys will act
                   1788: as the joystick directions, the right CTRL key will act as the
                   1789: firebutton. You can still use the cursor keys as the ST's
1.1.1.3   root     1790: cursorkeys in this mode as long as you press <span class="key">SHIFT</span>
1.1.1.8   root     1791: along with the cursorkeys.  You can also configure these keys from the
                   1792: joystick options.</p>
1.1.1.5   root     1793: 
                   1794: <a name="Emulated video"></a><h3>Emulated video</h3>
                   1795: 
1.1.1.8   root     1796: <p>Hatari emulates all screen modes of the original machine.</p>
                   1797: <p>
                   1798: ST/STE shifter overscan effects are emulated, but due to the fact
                   1799: that these effects are achieved by using quirks and glitches in the
                   1800: original chips to do things beyond their specification, emulation is
                   1801: a bit tricky for these effects. As a result, some demos using these
                   1802: techniques might not be displayed correctly in Hatari, known ones are
                   1803: listed in the <span class="file">compatibility.html</span> file.
1.1.1.3   root     1804: </p>
                   1805: <p>Beside that you can setup extended VDI modes. These only work with
                   1806: GEM-compliant applications and they are equal to fitting a videocard
                   1807: into your Mega ST.</p>
                   1808: <p>Make sure to disable extended VDI modes for playing games as 99% of
                   1809: all ST games will not be able to make use of higher resolutions.</p>
1.1.1.5   root     1810: 
                   1811: <a name="Emulated printer"></a><h3>Emulated printer</h3>
                   1812: 
1.1.1.3   root     1813: <p>Due to the fact that printer handling is very different between Unix
                   1814: style machines and the Atari ST, emulation
1.1.1.2   root     1815: of the printer is achieved by writing all printer output to a file.</p>
1.1.1.3   root     1816: <p>The file will contain a sequence of data, the same that would appear
                   1817: on the data pins of the Atari ST printer port.
                   1818: That would include control characters and commands for graphic
                   1819: printing. Clicking "Print desktop" on the GEM desktop would result
1.1.1.2   root     1820: in a messy data dump in the printer output.</p>
1.1.1.3   root     1821: <p>Printer emulation works best for plain text files or programs that
                   1822: do not format the output for a specific printer.
                   1823: The file contents can be used with your favourite text editor for
                   1824: further processing and printing to a real printer.</p>
                   1825: <p>To get real direct printing out of Hatari on a PostScript printer,
                   1826: you may set up a GDOS printer with a PostScript driver on the emulated
                   1827: Atari and set your printer device file as Hatari's printer output.<br>
                   1828: <em>NOTE:</em> This has not been tested yet and the Hatari team cannot
                   1829: guarantee that it will work.</p>
1.1.1.5   root     1830: 
                   1831: <a name="Emulated RS232"></a><h3>Emulated RS232</h3>
                   1832: 
1.1.1.3   root     1833: <p>Serial communications in Hatari is designed to directly use a serial
                   1834: port on your PC.</p>
                   1835: <p>Communications parameters are set automatically upon the settings of
                   1836: the emulated ST. This means all you do is to set
                   1837: the communication parameters like baudrate from your ST communications
                   1838: software. Hatari will do the rest and handle
1.1.1.2   root     1839: the serial input and output for you.</p>
1.1.1.5   root     1840: 
                   1841: <a name="Floppy disk images"></a><h2>Floppy disk images</h2>
                   1842: 
1.1       root     1843: <p>Hatari does not use floppy disks directly but disk images due to
                   1844: differences between the floppy disk controllers of the ST and the PC.
1.1.1.3   root     1845: Three types of disk images are currently supported: The raw "ST" type,
                   1846: the similar "DIM" type and
1.1.1.2   root     1847: the compressed "MSA" (Magic-Shadow-Archiver) type. </p>
1.1       root     1848: <p> The raw type (file suffix should be "*.st") is simply a sector by
                   1849: sector image of a real floppy disk. You can easily create such an image
1.1.1.3   root     1850: with the <span class="commandline">dd</span> program which should
                   1851: normally be pre-installed on every
                   1852: Unix-like system. Simply type something like <span class="commandline">dd
                   1853: if=/dev/fd0 of=myimage.st</span> to create a disk image. Of course you
                   1854: need access to
1.1       root     1855: /dev/fd0, and depending on your system and the type of floppy disk you
                   1856: might have to use another device name here (for example I use
1.1.1.3   root     1857: /dev/fd0u720 for 720kB disks). However, if the disk is copy-protected
                   1858: or
1.1       root     1859: doesn't use a MSDOS compatible file system, this might fail. So be very
                   1860: careful if you're not sure about the disk format. </p>
1.1.1.3   root     1861: <p> The other possibility is to image the disk on a real Atari ST.
                   1862: There
1.1       root     1863: are programs like the Magic Shadow Archiver for this task. Hatari
1.1.1.3   root     1864: supports this slightly compressed MSA disk images, too. Note that
                   1865: Hatari
                   1866: only supports the "old" MSA format, there are some Magic Shadow
                   1867: Archiver
1.1       root     1868: clones (like Jay-MSA) that create better compressed but
1.1.1.2   root     1869: Hatari-incompatible disk images. However, if you have got such a MSA
1.1.1.3   root     1870: disk and want to use it with Hatari, you can still run the
                   1871: corresponding
1.1.1.2   root     1872: MSA program within Hatari to extract the incompatible disk image to a
                   1873: normal floppy disk image. </p>
1.1       root     1874: <p> While *.ST and *.MSA are more or less the "standard" types of Atari
1.1.1.2   root     1875: disk images, you might sometimes also find STT or ADF images on the
1.1.1.3   root     1876: internet. These currently do not work with Hatari. </p>
                   1877: <p>Hatari can now also utilize *.DIM images just as *.ST ones without
                   1878: any problems.
1.1.1.2   root     1879: Note that DIM images are nearly the same as the raw ST images
1.1.1.3   root     1880: (they only have an additional 32 bytes header), so you can easily
                   1881: transform
1.1.1.2   root     1882: the DIM images into ST images by stripping the header from the files.
                   1883: For example try something like:
                   1884: <span class="commandline">dd if=input.dim of=output.st bs=32 skip=1</span>
                   1885: </p>
1.1       root     1886: <p> If you've got a disk image that has been created with the old ST
                   1887: emulator PaCifiST (for DOS) or with early versions of the program
                   1888: Makedisk, and the disk image does not work with Hatari, then the disk
1.1.1.3   root     1889: probably suffers from the "PaCifiST bootsector bug" (Hatari will
                   1890: display a
1.1       root     1891: warning message then). In this case, the bootsector of the disk
                   1892: contains some illegal data, so that the disk even does not work on a
                   1893: real ST any more. However, if it is a .ST and not a .MSA disk, you can
1.1.1.3   root     1894: easily fix it by using a hex-editor to change the byte at offset $D
                   1895: (13)
1.1       root     1896: from 0 to 1 (don't forget to backup your disk image first, since you
                   1897: can also easily destroy your disk image when changing a wrong byte
                   1898: there). If the disk contains a bootsector program, you probably have to
                   1899: adjust the boot sector check sum, too (it can be found at offset $1FE +
                   1900: $1FF). </p>
1.1.1.2   root     1901: <p>Hatari supports disk images that are compressed with (Pk-)ZIP
                   1902: (file suffix must be ".zip") or GZip (file suffix must be ".st.gz" or
1.1.1.3   root     1903: ".msa.gz"), so you can archive your disk images into zip archives.
1.1.1.2   root     1904: You can also directly run the zip archives you may download from the
                   1905: net as long as the archive contains a disk image in .ST or .MSA format.</p>
1.1.1.3   root     1906: <p><em>Note:</em> Hatari does not save disk images back to *.ZIP files
                   1907: so
1.1.1.2   root     1908: your highscores and savegames are lost if you load the game from such
                   1909: a zipped disk image.</p>
1.1.1.5   root     1910: 
                   1911: <a name="Hard disk support"></a><h2>Hard disk support</h2>
                   1912: 
1.1.1.8   root     1913: <p>
                   1914: Hatari supports two ways of emulating a ST hard drive: The low-level
                   1915: ACSI hard disk emulation and a GEMDOS based drive emulation. Please
                   1916: note that changing the HD-image or the GEMDOS HD-folder will reset
                   1917: the emulated Atari since it is not possible to switch the hard disk
                   1918: while the emulator is running.
                   1919: </p>
1.1.1.6   root     1920: 
                   1921: <a name="ACSI hard disk emulation"></a><h3>ACSI hard disk emulation</h3>
                   1922: <p>
                   1923: To use the ACSI hard disk emulation, you need a hard disk image file
1.1.1.3   root     1924: with a pre-installed HD driver in it. So either try to image your old
1.1.1.6   root     1925: ST hard disk or grab one from the internet (e.g. from the Hatari website).
1.1.1.8   root     1926: Please note that AHDI 5.0 is currently the <em>only</em> hard disk driver
                   1927: that is officially supported. Other hard disk drivers might not work.
1.1.1.6   root     1928: </p>
                   1929: <p>
                   1930: To create a new ACSI hard disk image, you can start with an empty image that
                   1931: you have for example created with the following command:
                   1932: <span class="commandline">dd if=/dev/zero of=hd.img bs=512 count=xxx</span>.
                   1933: Then copy the complete AHDI 5.0 package to a floppy disk image, and enable
                   1934: this floppy disk image and the fresh hard disk image in the emulator.
                   1935: Start HDX.PRG from the floppy disk and format and partition the hard disk
                   1936: with this tool. When you're finished, you have to restart the emulated system,
                   1937: run AHDI.PRG from the floppy disk and HINSTALL.PRG afterwards.
                   1938: With HINSTALL.PRG you can install the hard disk driver to the fresh HD image,
                   1939: so you can directly boot from the hard disk image in the future.
                   1940: </p>
                   1941: 
                   1942: <a name="GEMDOS based hard disk emulation"></a><h3>GEMDOS based hard disk emulation</h3>
1.1       root     1943: <p>With the GEMDOS based drive emulation, you can easily "mount" a
                   1944: folder from the host file system to a drive of the emulated Atari. To
                   1945: use the GEMDOS based drive emulation, you should use a folder on your
1.1.1.3   root     1946: hard disk that only contains files and folders with valid TOS
                   1947: filenames.
1.1       root     1948: That means that all files/folders should be written in capital letters
                   1949: and their length mustn't exceed the 8+3 file name length limit. If you
                   1950: don't want to rename all files to get capital letters, it is also
                   1951: possible to store that folder on a FAT filesystem since those
                   1952: filesystems are case-insensitive. </p>
                   1953: <p>GEMDOS drive emulation is an easy way to share files between the
1.1.1.8   root     1954: host system and the emulated Atari, but it is known to be incomplete and
1.1       root     1955: a little bit unstable, especially if you use it together with the ACSI
                   1956: hard disk emulation. So if your programs complain that they could not
                   1957: find/read/write files on the GEMDOS HD drive, you should try to copy
1.1.1.3   root     1958: them to a floppy disk image or a real hard disk image!</p>
1.1.1.6   root     1959: <p>
1.1.1.8   root     1960: There are also some known limitations which are due to the way the GEMDOS
                   1961: drive emulation is implemented: First, it is not possible to use a cartridge
                   1962: image together with GEMDOS drive emulation at the same time.
                   1963: Second, <em>the GEMDOS HD emulation does not work very well with TOS
                   1964: 1.00 and 1.02</em>.  So you should use at least TOS 1.04 if you want
                   1965: to use the GEMDOS HD emulation.
1.1.1.6   root     1966: </p>
1.1.1.4   root     1967: 
1.1.1.8   root     1968: 
1.1.1.5   root     1969: <a name="Appendix"></a><h2>Appendix</h2>
                   1970: 
                   1971: <a name="Copying"></a><h3>Copying</h3>
1.1.1.4   root     1972: 
1.1       root     1973: <div class="backdropped">
                   1974: <p>This program is free software; you can redistribute it and/or modify
1.1.1.3   root     1975: it under the terms of the GNU General Public License as published by
                   1976: the
1.1       root     1977: Free Software Foundation; either version 2 of the License, or (at your
                   1978: option) any later version. </p>
                   1979: <p>This program is distributed in the hope that it will be useful, but <em>WITHOUT
                   1980: ANY WARRANTY</em>; without even the implied warranty of <em>MERCHANTABILITY</em>
1.1.1.3   root     1981: or <em>FITNESS FOR A PARTICULAR PURPOSE</em>. See the GNU General
1.1.1.4   root     1982: Public License for more details. </p>
                   1983: <p>
                   1984: You should have received a copy of the GNU General Public License
                   1985: along with this program; if not, write to the Free Software Foundation,
                   1986: Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
                   1987: </p>
1.1       root     1988: </div>
1.1.1.3   root     1989: <p><a href="http://www.gnu.org/">The GNU Project and the Free Software
                   1990: Foundation</a> | <a href="http://www.fsf.org/licenses/gpl.html">The
                   1991: GNU General Public License</a></p>
1.1.1.4   root     1992: 
1.1.1.5   root     1993: <a name="Introduction to Emulation"></a><h3>Introduction to Emulation</h3>
                   1994: 
1.1       root     1995: <p>Emulation via software is an art and Hatari is an example of this.</p>
1.1.1.3   root     1996: <p>Emulation is to make a computer behave like a (probably) completely
                   1997: different machine on the lowest possible niveau.
                   1998: This includes CPU and custom chip emulation allowing software written
                   1999: for the emulated machine to be run without notice.
                   2000: A good emulator will run most of the software intended for the emulated
                   2001: platform without trouble.
1.1       root     2002: </p>
                   2003: <p>
1.1.1.3   root     2004: The key to emulation is to simply do those things with a software
                   2005: program, the emulator, that normally chips would perform.
                   2006: So you have an CPU emulator that basically consists of a large loop
                   2007: that does exactly what the real thing would do:
1.1       root     2008: </p>
                   2009: <ul>
1.1.1.3   root     2010:   <li>fetch an instruction from virtual memory</li>
                   2011:   <li>interpret this instruction</li>
                   2012:   <li>fetch operands from the emulated registers and memory</li>
                   2013:   <li>perform the operation like addition or changing the program
                   2014: counter on a jump instruction</li>
                   2015:   <li>writes results back into the intended registers or memory
                   2016: locations</li>
                   2017:   <li>increment of the program counter and loop</li>
1.1       root     2018: </ul>
                   2019: <p>
1.1.1.3   root     2020: The typical von-Neumann CPU can be emulated very fast, stable and
                   2021: error-free using such a simple loop system.
1.1       root     2022: </p>
                   2023: <p>
1.1.1.3   root     2024: But in most cases the CPU emulation is the simplest part. Correct
                   2025: emulation of the various custom chips and hardware
1.1       root     2026: parts of the emulated system is much trickier.
                   2027: </p>
                   2028: 
1.1.1.6   root     2029: <br>
                   2030: 
1.1.1.3   root     2031: <hr style="width: 100%; height: 2px;">
1.1       root     2032: <table border="0" width="100%">
1.1.1.3   root     2033:   <tbody>
1.1       root     2034:     <tr>
1.1.1.3   root     2035:       <td align="left"><a href="http://validator.w3.org/check/referer"><img
                   2036:  src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"
                   2037:  border="0" height="31" width="88"></a></td>
                   2038:       <td align="right">
1.1.1.8   root     2039:       November 23rd 2008
1.1.1.3   root     2040:       </td>
1.1       root     2041:     </tr>
1.1.1.3   root     2042:   </tbody>
1.1       root     2043: </table>
                   2044: </body>
                   2045: </html>

unix.superglobalmegacorp.com

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