Copyright: Atari800Win PLus Help © 2000-2002 by Piotr Fusik, Tomasz Szymankowski.


Contents

Using help

Features

Overview

Emulated machines

Disk drive emulation

Compatibility

File formats

Overview

Atari executable binary files (XEX, COM, EXE)

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

Cassette images (CAS)

Cartridge images (CAR, ROM, BIN)

State files (A8S)

Keyboard templates (A8K)

Palette files (ACT)

Screen snapshots (PCX)

Video files (AVI)

Sound files (WAV)

ROM patches

Overview

SIO patch (fast disk/cassette access)

H: device handler (virtual hard disks)

P: device handler (printer)

R: device handler (TCP/IP)

What's new

In version 3.0

In version 2.8

In version 2.7b

In version 2.7

In version 2.6c

In version 2.6b

In version 2.6

In version 2.5e

In version 2.5d

Original Atari800Win history

Setup

Requirements

Installation

Installation problems

Uninstallation

Usage

Main window

State indicators

Drag and Drop support

Keyboard

Overview

Shortcuts

Default layout

Menus

File

Overview

Atari

Overview

Atari Settings dialog box

Advanced Atari Settings dialog box

Performance Options dialog box

ROM Image Selections dialog box

Drive Selections dialog box

New Disk Image dialog box

Pick Virtual Hard Disk Directories dialog box

Input

Overview

Joystick Options dialog box

Advanced Joystick Options dialog box

Configure Keyset dialog box

Mouse Options dialog box

Keyboard Options dialog box

Keyboard Template dialog box

View

Overview

Graphics Options dialog box

Advanced Graphics Options dialog box

Palette Options dialog box

Sound

Overview

Sound Options dialog box

Misc

Overview

File Associations dialog box

Cheat Options dialog box

Help

Overview

Setup Wizard

FAQ and glossary

Frequently Asked Questions

The Atari program does not work...

How to improve performance

How to improve smoothness of animations

How to connect original Atari joystick

Glossary

Copyright information

GNU General Public License

Atari800 emulator credits

Atari800Win PLus credits


Using help

Welcome to the Atari800Win PLus help. We have attempted to write it in a very clear, concise and descriptive manner. Please read our instructions carefully before asking questions.

Getting help for menus and dialog boxes

All the menu items are described in this help file. To get help for a menu item, point it and press F1. If the menu item normally invokes a dialog box, you’ll get the help page for this dialog box. Otherwise you’ll get the help page for the menu you’ve selected.

The dialog boxes have dual help system:

•	Whole dialog box is described with all its controls. Press F1 in a dialog box to get the help page for it.

•	Every control has its description. Place the mouse pointer over the control you want to get help for and press Shift+F1. Or select the question mark on the caption ( [image]) and click the control.

Abbreviated form of menu/keyboard commands

The menu/keyboard commands in this help are often written in an abbreviated form. For example Atari/Disk drives (Alt+D) means that you should either:

•	Select Disk drives from the Atari menu.

or

•	Press Alt+D.

Help us improve the emulator

If you have any comments or ideas that can help us improving the emulator or the help system, feel free to contact us (Tomasz Szymankowski or Piotr Fusik). See Atari800Win PLus credits for our e-mail addresses. Before sending us a bug report, please read this carefully and check Help/Web page for latest version. Please don’t ask us for ROM images nor Atari games. We delete such e-mails immediately.

You may contact us if you want to become a beta-tester. The beta versions come out much more frequently than official versions.

Where to start from

If you are new to Atari800Win PLus, please learn about its features first.

If you have used Atari800Win PLus before, read what’s new in this version.


Features

Emulation

•	Emulation of Atari 800, 800 XL, 130 XE, 320 XE and 5200. For more information read Emulated machines.

•	Emulation of 8 disk drives. Emulation at computer-to-drive communication and patched SIO levels. For more information read Disk drive emulation.

•	Emulation of a cassette player. Supported are Cassette images (CAS) and raw files. The cassette emulation uses the SIO patch, so you won’t wait a dozen or so minutes for a program to load.

•	Emulation of 4 virtual hard disks. See H: device handler (virtual hard disks).

•	Printer emulation. See P: device handler (printer).

•	Stereo (two POKEYs) emulation.

•	Very accurate emulation of all chips guaranteed by the Atari800 core. See Compatibility.

File service

•	File associations for integration with shell. See File Associations dialog box.

•	Drag and drop support.

•	Direct loading of Atari executables. See Atari executable binary files (XEX, COM, EXE).

•	Creation of blank disk images. See New Disk Image dialog box.

•	Disk flipping for drive 1. See File menu.

•	22 cartridge types supported. See Cartridge images (CAR, ROM, BIN).

•	Current emulation state can be saved in a state file. See State files (A8S).

•	ROM to CART, DCM to ATR, XFD to ATR and Atari<>PC text conversions. See Misc menu.

For more information, see Supported file formats.

Controllers

•	Default keyboard layout for users who are more familiar with their PC keyboard than an Atari one.

•	User-defined keyboard templates (A8K).

•	Atari joysticks emulated with PC joysticks or user-defined keys.

•	Autofire for selected joysticks.

•	Paddles, Atari touch tablet, Koala pad, light pen, light gun, ST/Amiga mouse, Atari trak-ball, joystick and Atari 5200 analog controller emulation using PC mouse.

Graphics

•	Normal and double window modes, using GDI or DirectDraw.

•	9 full-screen resolutions (DirectDraw).

•	Interpolation, scanlines and artifacting to make Atari screen look like on a real TV set.

•	Atari palette read from a file or calculated basing on user-defined parameters.

•	Double-buffering and synchronization with monitor refresh rate.

•	Horizontal and vertical screen mirroring for DirectDraw modes.

Capture functions

•	Direct printing of current Atari screen. See View menu.

•	Screen snapshots (normal and interlaced) to PCX files.

•	Video can be written to AVI files.

•	Sound can be written to WAV files.

User interface

•	Setup Wizard for automating installation.

•	Emulation state indicators on the status bar.

•	Many keyboard shortcuts for easier use.

See also

Emulated machines

Disk drive emulation

Compatibility

Supported file formats

ROM patches – Overview


Emulated machines

The table below contains basic characteristics of the emulated computers:

Machine	RAM	ROM	OS	Controller ports
800 OS-A	48 KB	10 KB	OS-A	4
800 OS-B	48 KB	10 KB	OS-B	4
800 XL	64 KB	24 KB	XL/XE	2
130 XE	128 KB	24 KB	XL/XE	2
320 XE (Compy)	320 KB	24 KB	XL/XE	2
320 XE (Rambo)	320 KB	24 KB	XL/XE	2
5200	16 KB	2 KB	5200	4

The Atari 800 was a model from the first series of 8-bit Atari computers – 400/800. The Atari 400 was almost same machine, with except for less RAM and worse keyboard. There were two versions of the operating system in 400/800 – rev. A and rev. B. The latter one fixes many bugs in the first one, however some old software requires rev. A.

The Atari 800 XL was a model from XL series. It has more memory, better operating system (16 KB), built-in BASIC language interpreter (8 KB) and bit different keyboard. This is one of the most popular Atari computers. Subsequent models 65 XE and 800 XE had different casing, but were 100% software compatible (only some slight modifications in OS were made).

The Atari 130 XE had extra 64 KB. The 320 XE is not a name of a computer manufactured by Atari, but the name of a 65 XE or 130 XE with memory expanded to 320 KB. There're two incompatible versions of 320 KB memory expansion, called Compy Shop and Rambo. The Compy Shop is more complicated: it allows independent access of CPU and ANTIC to the extended memory (like in 130 XE), however this is not emulated. The Rambo is a simpler extension. There are also memory expansions to 192 KB, 256 KB, 576 KB and 1088 KB, but they are not supported yet by Atari800Win PLus.

Note for most software, especially games, the memory size isn't a critical thing. 99% of software uses only 64 KB or even 48 KB. The memory expansions are useful only for Ram-disks and for running new demonstration programs.

The Atari 5200 is a game console, which is very similar (as opposed to 2600 and 7800) to 8-bit Atari home computers, however not compatible with them. It has no keyboard, doesn't support disk drives and uses special analog joysticks. The software for 5200 comes only on cartridges, usually 16 KB or 32 KB, and is not compatible with the one for the other models.

TV standards

There are different versions of machines for different video systems:

•	NTSC – American, 60 Hz screen refresh rate, 1.79 MHz computer’s main clock,

•	PAL – European, 50 Hz screen refresh rate, 1.77 MHz computer’s main clock.

Most software works fine on both versions. Many games, which don’t check the video system, play at a different speed under NTSC than they do under PAL.

Although NTSC machines may seem to be faster because of faster clock, some PAL software (mainly demos) may not work on them, because higher refresh rate means less time to display a single frame.

See also

Disk drive emulation

Compatibility


Disk drive emulation

I have no 5.25 inch drive in my PC, how can I use Atari software?

You use it similarly to a real computer. That is, you have to insert a ‘disk’ to a drive. The difference is that instead of real disks, you use disk images. The disk images are regular files on your hard disk. The emulator uses them as real disks, that is when a disk is in a drive, all writes immediately modify the disk image.

What kind of drive is emulated?

There are many different disk drives for 8-bit Atari computers. They vary in speed and formats of disk they can read.

Atari800Win doesn’t emulate any particular disk drive. Instead, it emulates a ‘super’ drive, that is a drive, which is very very fast and supports non-standard disks.

How is the disk drive emulated?

In a real computer, each disk access is done that way:

•	the SIO routine sends a command to the disk drive,

•	the drive interprets the command, turns on the motor etc.,

•	the data is transmitted between computer and disk drive.

The emulator interprets the commands sent to the drive and answers to the Atari computer like a real drive would. It means that all programs that send bytes to the disk drive directly (without using Atari OS) will work.

How to speed up the disk access?

Two things make it slow:

•	the speed the disk is spinning in the drive is low (you already know it if you’ve ever used the floppy in your PC),

•	the transmission between computer and disk drive is serial.

In the emulator, speed of the disk is not a problem, because the data from the hard drive can be accessed very fast for an Atari computer.

The Atari standard for serial transmission speed is 19200 bits/sec. Some drives support higher speeds, but the emulator doesn’t. Instead of increasing the speed of transmission, the serial transmission between Atari computer and disk drive can be avoided at all. In the process described above, the original SIO routine is replaced by the SIO patch, which tells the emulator to directly access the disk image. The SIO patch is a small modification in the Atari Operating System.

Note the patch can be used only for the standard SIO routine in the Atari OS, because the emulator knows its location and how it works.

The presence of the SIO patch doesn’t mean that the disk drive can’t be accessed directly. Of course if it will be, there’s no gain in the speed.

See also

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

SIO patch (fast disk/cassette access)


Compatibility

Years of developement of the Atari800 emulator by different people made it running almost 100% of Atari software. Take it into consideration before you complain ‘The program x doesn’t work with the emulator’. Most of non-working programs we receive are corrupt. They can’t be run on a real Atari computer, thus they don’t work with the emulator.

The emulator’s compatibility rate is growing continuously. You can help us by reporting any non-working software. Please check this first.

This is the list of all known bugs in the emulation:

•	ANTIC emulation is scanline-, not pixel-exact.

This causes display bugs in following programs:

Title	Category
8 Players Demo	demo
Bewesoft’s Demo	demo
Bitter Reality	demo
Darkness Warrior	picture
Demonic Laughter	music collection
Extract	graphics collection
GED	graphics editor
Joyride	demo
Mail Order Monsters	game
Master of the Lamps	game
Orneta '95 invitro	demo
Our 5oft Unity Part	demo
Power Graph	graphics editor
Studio Dream	demo
Sweet Illusion	demo
Te.mod	demo
The Break	demo
•	POKEY interrupts are scanline-, not cycle-exact.

This causes sound bugs in following programs:

Title	Category
Mirax Force	game
Saturday Demo	demo
The Last Guardian	game
•	Intensive 130 XE – banks switching slows down emulation much.

This causes performance problems in following programs:

Title	Category
Impossible but Real	demo
Sheol	demo
Total Daze	demo
Ultra	demo

See also

The Atari program does not work...


Supported file formats

Atari software

Software for Atari comes either as executable binary, disk image, cassette image or cartridge image.

State files

The current state of emulated machine can be saved in a state file to be restored later.

Customization

Atari800Win PLus can handle user-defined keyboard templates and palettes.

Capture functions

The capture functions can write screen snapshots, video and sound of the emulated Atari.

See also

Atari executable binary files (XEX, COM, EXE)

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

Cassette images (CAS)

Cartridge images (CAR, ROM, BIN)

State files (A8S)

Keyboard templates (A8K)

Palette files (ACT)

Screen snapshots (PCX)

Video files (AVI)

Sound files (WAV)


Executable files (XEX, COM, EXE)
Atari executable binary files (XEX, COM, EXE)

Atari executables are files that are run on Atari from an Atari DOS or an executable loader. In emulator they can be of course run that way too.

However, if the executable comes as separate file (not on a disk image), there is easier method of running it. Select File/Load executable (Alt+X) and the file will be loaded. You do not need to use an Atari DOS, because when you load an executable this way, the Atari is rebooted and the file is loaded directly into memory, so whole memory is available for it.

Of course this doesn’t work for programs, which require an Atari DOS (file managers, text editors, etc.). You have to put such programs on disk images and run them from an Atari DOS.

Suggested file name extension: XEX

There is only one format of Atari executable, however the files can have different extensions: COM, EXE, BIN, etc. For use with emulator, the extension should be different from a Windows application’s. It is recommended to use the XEX (XL/XE executable) extension for separate Atari executable files.

CAUTION: Windows does not check the contents of a COM file, but runs it immediately. If it is an Atari executable, it will crash. Thus please use XEX extension to distinguish Atari executables.

Atari executable file can be detected by checking two first bytes of the file – they are both FF hex. in an Atari executable.

See also

File menu

Supported file formats


Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

Disk images are files containing dump of each sector of real Atari 5.25 inch disk.

The disks can be formatted in different densities and can be single- or double-sided, so disk images differ in size.

XFD

The simplest format of Atari disk image is XFD (Xformer disk, Xformer is another Atari emulator). In this format the file contains only raw dumps of all sectors, thus in some cases the structure of the disk may be not recognized correctly. Therefore this format is not recommended.

ATR

A bit more complicated, but much better and more common, is ATR, which additionally has 16-byte header containing some information about disk size, density and write protection. This format is recommended for normal use.

DCM

DCM is a format used by an Atari utility called Disk Communicator, which converts disks to files and vice versa. This format uses very poor compression and is not correctly handled by many disk image tools on PC. You may convert a DCM image to ATR with Misc/Convert/DCM to ATR command.

DCM images may occasionally have DC3 (Disk Communicator ver. 3) extension.

ATZ, XFZ, ATR.GZ, XFD.GZ

ATZ (ATR.GZ) and XFZ (XFD.GZ) are not really new formats, but ATR and XFD images respectively, compressed by the GNU Zip (gzip). You can use both short (ATZ, XFZ) and long (ATR.GZ, XFD.GZ) extensions. Long extensions are more descriptive, but only short forms can be associated with the emulator (GZ extension is typically associated with a decompression utility).

Compressed images (DCM, GNU zipped) can be only read. To allow writing, convert them to ATR or XFD.

Densities

In addition to formats of disk images, there are number of different formats of Atari disks. There are three standard formats:

•	single density (40 tracks * 18 sectors/track * 128 bytes/sector = 90 KB)

•	medium (enhanced) density (40 tracks * 26 sectors/track * 128 bytes/sector = 130 KB)

•	double density (40 tracks * 18 sectors/track * 256 bytes/sector = 180 KB)

Atari800Win PLus supports also non-standard images (any number of sectors, 128 or 256 bytes per sector), however only a few Atari DOSes can handle them correctly. Even not all DOSes handle the medium density, or they handle it different, incompatible ways.

Usage

8 disk drives are supported. You can attach a disk image to a drive with File/Attach disk command or from Drive Selections dialog box.

To boot a disk (which is typical way of running software it contains), attach it to drive 1 and reboot the Atari using Atari/Reset/Cold (Shift+F5).

See also

Disk drive emulation

Drive Selections dialog box

Supported file formats


Cassette images (CAS)

An 8-bit Atari computer stored data on a cassette as sound. That is, the contents of a computer-recorded cassette can be played in an ordinary cassette player and recorded to a WAV file using a PC. However, the emulator doesn’t support WAV files. Supported are cassette images that contain binary data, after decoding the sound.

Ernest Schreurs made an utility called WAV2CAS, which converts the sound from Atari cassette to a digital cassette image (CAS). The format handles different lengths of blocks, gaps, non-standard blocks, baud rates and more. At the moment, the CAS format is supported by the emulator only partially. See http://home.planet.nl/~ernest/atarixle.html for the excellent WAV2CAS converter, which includes detailed description of the format.

Alternatively, you may use any file as a cassette image. That’s because any file can be written to Atari’s C: device, being stored in standard Atari OS format.

Usage

The emulator can only read, not write, the cassette images. Moreover, it requires the SIO patch enabled to emulate the cassette player.

To insert a cassette image, use File/Attach Tape (Alt+T) or Cassette Control dialog box. You can rewind tape by moving the slider, but usually a cassette image contains only one Atari file (real cassettes often contained many).

To boot the tape, hold Atari Start key (F4), while performing cold start (Shift+F5). Then press Space key. Or just use File/Autoboot image (Alt+B).

Note

The emulated cassette transmission is very fast, but before it starts, the Atari OS has ca. 9 second delay. You have to wait that time, or you can use Full speed (F7) if you like.

See also

Supported file formats


Cartridge images (CAR, ROM, BIN)

Cartridge images are dumps of ROMs used in real cartridges.

Atari800Win PLus 3.0 supports many more types of cartridge images than previous versions.

Following table lists currently supported cartridge types:

Id	Machine	Size	Name
1	800/XL/XE	8	Standard 8 KB cartridge
2	800/XL/XE	16	Standard 16 KB cartridge
3	800/XL/XE	16	OSS '034M' 16 KB cartridge
4	5200	32	Standard 32 KB 5200 cartridge
5	800/XL/XE	32	DB 32 KB cartridge
6	5200	16	Two chip 16 KB 5200 cartridge
7	5200	40	Bounty Bob Strikes Back 40 KB 5200 cartridge
8	800/XL/XE	64	64 KB Williams cartridge
9	800/XL/XE	64	Express 64 KB cartridge
10	800/XL/XE	64	Diamond 64 KB cartridge
11	800/XL/XE	64	SpartaDos X 64 KB cartridge
12	800/XL/XE	32	XEGS 32 KB cartridge
13	800/XL/XE	64	XEGS 64 KB cartridge
14	800/XL/XE	128	XEGS 128 KB cartridge
15	800/XL/XE	16	OSS 'M091' 16 KB cartridge
16	5200	16	One chip 16 KB 5200 cartridge
17	800/XL/XE	128	Atrax 128 KB cartridge
18	800/XL/XE	40	Bounty Bob Strikes Back 40 KB cartridge
19	5200	8	Standard 8 KB 5200 cartridge
20	5200	4	Standard 4 KB 5200 cartridge
21	800	8	Right slot 8 KB cartridge
22	800/XL/XE	32	32 KB Williams cartridge

There are two formats of cartridge images: raw and CART.

The raw dump contains no information of how to handle the cartridge, thus you are prompted to choose its type each time you attach raw cartridge. There is no special extension for raw cartridges, but ROM and BIN are most common (ROM is recommended).

The CART file (with CAR extension) contains information about cartridge type, so it can be attached without prompting you for the type. Additionally CART format can be detected, because it contains the ‘CART’ signature at the beginning of the file.

Details of cartridge types

Type 1: Standard 8 KB cartridge

Standard 8 KB cartridge, that occupies 8 KB of address space between $A000 and $BFFF.

Type 2: Standard 16 KB cartridge

Standard 16 KB cartridge, that occupies 16 KB of address space between $8000 and $BFFF.

Type 3: OSS '034M' 16 KB cartridge

There are two types of OSS cartridges. Both are 16 KB and occupy 8 KB of address space between $A000 and $BFFF. The cartridge memory is divided into 4 banks, 4 KB each. One bank ('main') is always mapped to $B000-$BFFF. The other 3 banks are mapped to $A000-$AFFF. The current bank is selected by accessing a byte in $D500-$D5FF. Only 4 lowest bits of address are significant.

The '034M' scheme is the more complicated one. The main bank is D. An access to:

•	$D5x0 or $D5x1 selects bank A.

•	$D5x3 or $D5x7 selects bank B.

•	$D5x4 or $D5x5 selects bank C.

•	$D5x2 or $D5x6 is not useful. It disables ROM (there're $FF bytes in $A000-$AFFF).

•	$D5x8-$D5xF disables whole cartridge (enables computer's memory in address space between $A000 and $BFFF).

Type 4: Standard 32 KB 5200 cartridge

Standard 32 KB cartridge for Atari 5200, that occupies 32 KB of address space between $4000 and $BFFF.

Type 5: DB 32 KB cartridge

A 32 KB bank-switched cartridge. There are 4 banks. Bank D is mapped to $A000-$BFFF. Bank in $8000-$9FFF is selected by an access to $D500-$D5FF. Two lowest bits of address select bank A, B, C or D.

Type 6: Two chip 16 KB 5200 cartridge

In Atari 5200 there's 32 KB of address space reserved for the cartridge ($4000-$BFFF). A two chip 16 KB cartridge is mapped that way:

•	First 8 KB are mapped into lower 16 KB. Since an address line is not connected, $4000-$5FFF and $6000-$7FFF contain same data, which is first half of the cartridge image.

•	Similarly, second 8 KB are mapped into upper 16 KB.

Type 7: Bounty Bob Strikes Back 40 KB 5200 cartridge

The cartridge with "Bounty Bob Strikes Back" game uses very strange bank switching method:

•	Four 4 KB banks (A,B,C,D) are mapped into $4000-$4FFF. An access to $4FF6 selects bank A, $4FF7 - bank B, $4FF8 - bank C, $4FF9 - bank D.

•	Four 4 KB banks (E,F,G,H) are mapped into $5000-$5FFF. An access to $5FF6 selects bank E, $5FF7 - bank F, $5FF8 - bank G, $5FF9 - bank H.

•	The remaining 8 KB is mapped to upper 16 KB of cartridge address space in Atari 5200. That is, $8000-$9FFF and $A000-$BFFF contain same data.

Type 8: 64 KB Williams cartridge

The cartidge has 8 banks mapped to $A000-$BFFF. An acces to $D500 selects bank A, $D501 - bank B, etc. An access to $D508-$D50F disables the cartridge.

Type 9: Express 64 KB cartridge

The cartidge has 8 banks mapped to $A000-$BFFF. An acces to $D577 selects bank A, $D576 - bank B, etc. An access to $D578-$D57F disables the cartridge.

Type 10: Diamond 64 KB cartridge

The cartidge has 8 banks mapped to $A000-$BFFF. An acces to $D5D7 selects bank A, $D5D6 - bank B, etc. An access to $D5D8-$D5DF disables the cartridge.

Type 11: SpartaDOS X 64 KB cartridge

The cartidge has 8 banks mapped to $A000-$BFFF. An acces to $D5E7 selects bank A, $D5E6 - bank B, etc. An access to $D5E8-$D5EF disables the cartridge.

Type 12: XEGS 32 KB cartridge

This bank-switched cartridge occupies 16 KB of address space between $8000 and $BFFF. The cartridge memory is divided into 4 banks, 8 KB each. Bank D (the last one) is always mapped to $A000-BFFF. Two lowest bits of a byte written to $D500-$D5FF select the bank mapped to $8000-$BFFF.

Type 13: XEGS 64 KB cartridge

This bank-switched cartridge occupies 16 KB of address space between $8000 and $BFFF. The cartridge memory is divided into 8 banks, 8 KB each. Bank H (the last one) is always mapped to $A000-BFFF. Three lowest bits of a byte written to $D500-$D5FF select the bank mapped to $8000-$BFFF.

Type 14: XEGS 128 KB cartridge

This bank-switched cartridge occupies 16 KB of address space between $8000 and $BFFF. The cartridge memory is divided into 16 banks, 8 KB each. Bank P (the last one) is always mapped to $A000-BFFF. Four lowest bits of a byte written to $D500-$D5FF select the bank mapped to $8000-$BFFF.

Type 15: OSS 'M091' 16 KB cartridge

This is the simpler one of OSS schemes. It uses only A0 and A3 address lines:

•	A3=0, A0=0 - $A000-$AFFF: bank B, $B000-$BFFF: bank A

•	A3=0, A0=1 - $A000-$AFFF: bank D, $B000-$BFFF: bank A

•	A3=1, A0=0 - disable cartridge

•	A3=1, A0=1 - $A000-$AFFF: bank C, $B000-$BFFF: bank A

Type 16: One chip 16 KB 5200 cartridge

16 KB cartridge for Atari 5200, that occupies 16 KB of address space between $8000 and $BFFF.

Type 17: Atrax 128 KB cartridge

This bank-switched cartridge occupies 8 KB of address space between $A000 and $BFFF. The cartridge memory is divided into 16 banks, 8 KB each. If a byte written to $D500-$D5FF has highest bit set, the cartridge is disabled. Otherwise four lowest bits select the bank mapped to $A000-$BFFF.

Type 18: Bounty Bob Strikes Back 40 KB cartridge

The cartridge with "Bounty Bob Strikes Back" game uses very strange bank switching method:

•	Four 4 KB banks (A,B,C,D) are mapped into $8000-$8FFF. An access to $8FF6 selects bank A, $8FF7 - bank B, $8FF8 - bank C, $8FF9 - bank D.

•	Four 4 KB banks (E,F,G,H) are mapped into $9000-$9FFF. An access to $9FF6 selects bank E, $9FF7 - bank F, $9FF8 - bank G, $9FF9 - bank H.

•	The remaining 8 KB is mapped to $A000-$BFFF.

Type 19: Standard 8 KB 5200 cartridge

Standard 8 KB cartridge for Atari 5200, mapped into $8000-$9FFF and $A000-$BFFF.

Type 20: Standard 4 KB 5200 cartridge

Standard 4 KB cartridge for Atari 5200, mapped into $8000-$8FFF, $9000-$9FFF, $A000-$AFFF and $B000-$BFFF.

Type 21: Right slot 8 KB cartridge

8 KB cartridge for Atari 800, mapped into $8000-$9FFF. Atari 800 was the only 8-bit Atari with a Right Cartridge slot, in addition to the Left Cartridge slot as present on all 8-bit Ataris.

Type 22: 32 KB Williams cartridge

The cartridge has 4 banks mapped to $A000-$BFFF. An access to $D500 selects bank A, $D501 - bank B, etc. An access to $D508-$D50F disables the cartridge.

Usage

Use File/Attach cartridge (Alt+C) to run the program on a cartridge.

If you can run your raw cartridge image, it is recommended to convert it to CART format – use Misc/Convert/ROM to CART.

Remember to detach a cartridge (from ROM Image Selections dialog box) before using software from disk images. Most Atari software does not work if a cartridge is installed in computer.

See also

ROM Image Selections dialog box

Supported file formats


State files (A8S)

A8S files are Atari800 emulator specific files. They contain whole state of emulated machine, including memory, CPU registers, state of chips etc. Optionally current ROM images can be included in A8S file (by selecting Verbose option).

You can save current state of emulation in an A8S file and restore it later.

The disk images are not saved in A8S file, so before loading state file you need to attach proper disk image, if it is accessed by the program, you’re using.

A8S files are not Atari800Win specific – they can be used in any corresponding version of Atari800 emulator (e.g. DOS version). However, because the emulator is still under development, the format of A8S files may change in the future and it is not guaranteed that the future release of Atari800 will support current format. So please use state files only temporarily.

Usage

To save a state file, select File/Save state, then Normal or (if you want ROMs included in state file) Verbose.

To load previously saved state, use File/Load state (Alt+L). You can also drag and drop A8S file or associate A8S extension with the emulator.

See also

File menu

Supported file formats


Keyboard templates (A8K)

A8K files contain keyboard templates, which are defined using Keyboard Template dialog box.

These files are for use with Atari800Win only.

To load a keyboard template file

Click Browse button in Keyboard Options dialog box and locate the file. Make sure Use keyboard template is checked.

See also

Keyboard – Overview

Keyboard Options dialog box

Keyboard Template dialog box

Supported file formats


Palette files (ACT)

ACT files are standard palette files of 256 RGB colors. Each color is defined by a byte of Red, followed by a byte of Green, followed by a byte of Blue. An ACT file must be 256*3=768 bytes long.

Atari800Win PLus can use colors from an ACT file to display the Atari graphics. The ACT file can be selected in Palette Options dialog box.

See also

Palette Options dialog box

Supported file formats


Screen snapshots (PCX)

PCX files are standard bitmap-graphics files.

Atari800Win PLus can save screen snapshots in PCX format.

To save a screen snapshot

Use View/Save screenshot. See View menu for details.

See also

View menu

Supported file formats


Video files (AVI)

AVI files are standard video files in Windows.

Atari800Win PLus can save video of emulated Atari (with or without sound).

To save a video

Use View/Save video. See View menu for details.

See also

View menu

Supported file formats


Sound files (WAV)

WAV files are standard sound files in Windows.

Atari800Win can save Atari sound, it generates, to a WAV file.

To save Atari sound

Use Sound/Save sound. See Sound menu for details.

See also

Sound menu

Supported file formats


ROM patches - Overview
ROM patches – Overview

The emulator can work flawlessly with an original Atari Operating System. However, it is useful to put some slight modifications (patches) in it, in order to increase performance and add some extra functionality.

The extra features available are:

•	SIO patch (fast disk/cassette access)

•	H: device handler (virtual hard disks)

•	P: device handler (printer)

•	R: device handler (TCP/IP)

All patches apply only to 800/XL/XE computers, not the 5200 console.

See also

Atari Settings dialog box


SIO patch
SIO patch (fast disk/cassette access)

The SIO (Serial Input/Output) patch is meant for speeding up disk operations. Originally, data between Atari computer and a disk drive is sent using slow, serial transmission (19200 bits per second). Atari800 fully emulates disk drive, so unlike other emulators it does not require the patch. However, it is much faster, if the emulator can immediately transfer data between a disk image and the Atari’s memory, skipping serial transmission emulation.

The patch is only a change in Atari OS, it does not disable real drive emulation.

The SIO patch can be turned off also when other patches are enabled, but it’s very unlikely that it can be useful for you.

See also

Disk drive emulation

ROM patches – Overview

Atari Settings dialog box


H: device handler
H: device handler (virtual hard disks)

The H: ('Hard Disk') device gives access to every file on your PC to every Atari program. The device number specifies the base directory to be used and if the text conversion is applied:

•	H0: – current directory, no conversion

•	H1: - H4: – directories #1-#4, no conversion

•	H5: – current directory, text conversion applied

•	H6: - H9: – directories #1-#4, text conversion applied

The directories can be chosen in Pick Virtual Hard Disk Directories dialog box.

The text conversion translates Atari EOL (End of Line) character (code 155) to PC’s LF (Line Feed) character (code 10), so the Atari texts can be read by PC text editors (except Notepad, which requires CR/LF pairs).

Example

This sequence of Atari BASIC commands

10 PRINT "HELLO, WORLD"

20 END

LIST "H6:HELLO.LST"

writes a simple program to the file named HELLO.LST to the H1: directory specified in Pick Virtual Hard Disk Directories dialog box.

Then you can remove the program from Atari’s memory by typing

NEW

load it back by typing

ENTER "H6:HELLO.LST"

and delight with it:

RUN

Currently only ‘read file’ and ‘write file’ operations are supported by the H: device (delete file, rename file etc. won’t work).

See also

ROM patches – Overview

Atari Settings dialog box

Pick Virtual Hard Disk Directories dialog box


P: device handler
P: device handler (printer)

The P: ('Printer') device uses the PC printer as if it would be connected to the emulated Atari. This means that you can print using

LPRINT "Hello, world!"

You can print an Atari text file simply copying it to the P: device. 'End of Line' conversion is applied.

Note the printer emulation is at high (CIO), not low (SIO) level. No particular printer model is currently emulated, so you can’t print graphics nor formatted text, just plain text.

You can specify alternate way of using P: handler in the Atari Settings dialog box. Typing ‘notepad %s’ as the alternate print command causes the Windows Notepad to be launched with the ‘printed’ text.

See also

ROM patches – Overview

Atari Settings dialog box


R: device handler
R: device handler (TCP/IP)

The R: (RS232.COM for the Atari) device allows running BBS software in the emulator and allows  users to telnet into it. Unfortunately, the handler doesn’t allow an Atari modem program to “dial-out" via TCP/IP to a server at the moment.

See also

ROM patches – Overview

Atari Settings dialog box


What's new in version 3.0
What’s new in version 3.0

Released 26th March 2002.

Atari800Win PLus 3.0 is an 8-bit Atari computer emulator based on the Atari800 v1.2.2 (with the latest changes) and Atari800Win sources.

Added:

1)	Daniel Noguerol has ported Tom Hunt's R: emulation over TCP/IP to Winsock 2 and got it working with Atari800Win. His code has been merged with the PLus version of the emulator by Piotr Fusik. It allows running BBS software in the emulator and allows people to telnet into it (see R: device handler (TCP/IP) and the Atari Settings dialog box).
2)	There is the ability to turn off sprite collisions detection as well as get “unlimited lives” in games that use a single memory location to store number of “lives” (see the Cheat Options dialog box).
3)	The DirectSound driver for music playback is now available along with a slightly improved WaveOut one (see the Sound Options dialog box).
4)	There is the ability to stream video with sound to an AVI file (see the View/Save video/With sound menu option).
5)	A menu option File/Autoboot image (Alt+B) has been introduced. It allows executing an Atari image file without bothering to know its type.
6)	There is a new Use Windows typematic rate option in the Keyboard Options dialog box. It allows having the actual key repeat rate as in Windows programs regardless of key repeat settings in the Atari and how fast the emulated computer runs (note that the key repeat rate won’t be faster than 25 chars per second for PAL nor 30 for NTSC when a normal Atari speed is set).
7)	Some advanced Atari setting options have been made available to the user (see the Advanced Atari Settings dialog box).
8)	Some new options applying to emulated Atari joysticks have been added (see the Advanced Joystick Options dialog box).
9)	The Shift key prevents from restarting the emulator while dropping disk or tape images into emulator’s window.
10)	A new external palette file has been added (file: Green.act).
Changed:

1)	The emulation speed of range from 10 to 200 percent of the real Atari speed is now available.
2)	The period of time of displaying messages on the status bar does not depend on the speed of emulation anymore.
3)	The Use BASIC option has been removed from a combo list in the ROM Image Selections window. Finally, there is not any user-visible difference in BASIC management when emulating Atari 400/800 and XL/XE machines.
4)	The CRT extension of cartridge images has been changed to CAR to avoid conflict with Internet Explorer (vide the File Associations dialog box).
5)	The message “Paused (F9 to continue)” is now displayed on the screen also when Atari 5200 machine is emulated.
6)	Dialog window options based on check box controls are not automatically cleared when their ascendants are turned off.
7)	A lot of changes to GUI have been made for making use of new Atari800 kernel features. Unfortunately, some of the key shortcuts had to be changed (vide Keyboard shortcuts for complete list).
Fixed:

1)	The Ctrl+Esc capturing now works properly in full-screen mode under Windows 95.
2)	It seems probable that the mouse pointer is now always freed when the emulator window loses focus.
3)	There was a nasty bug causing emulator running monitor to be restart after choosing an Atari image in the Windows Explorer.
4)	The Screen coverage icons are now properly drawn regardless of the Windows’ font size settings (see the Graphics Options dialog box).
5)	Some problems with a sound volume slider in the Sound Options dialog box have been removed.
6)	There were some errors interfering with the keyboard navigation in the Graphics Options dialog box.
7)	A few other errors.
User-visible changes introduced by new Atari800 kernel:

1)	Support for Express, Diamond, SpartaDOS X, XEGS, Action!, BASIC XL and other cartridge types (see here for complete list).
2)	R-Time 8 emulation can be disabled.
3)	Emulation of light gun and trak-ball.
4)	Speed can be selected for all mouse devices.
5)	Cassette recorder emulation (experimental). Currently only reading works and only with SIO patch. See here for details.
6)	ROM patches are now independent and can be toggled at run-time.
7)	The H: device no longer replaces C:. The H: device is now added to HATABS in RAM, and the escape codes are put in 0xd100-0xd1ff, so H: doesn't modify Atari OS at all. Added open mode 9 (append) for H: device.
8)	Changes in the monitor: • "C 600 ABCD" does the same as "C 600 CD AB", • 1 KB boundary is respected by "DLIST", • "POKEY" command, • "S" without parameters repeats last search, • "DLIST" accepts an address.
9)	The background color can be changed inside a scanline. Currently implemented only for blank lines without PMG.
10)	True RANDOM emulation (“Bank Bang!” is now playable).
11)	Fixed STIMER (speech in “Mirax Force” is better, but still not perfect).
12)	Made double density ATR images compatible with SIO2PC.
13)	Format Disk rewritten. Now it can resize both ATR and XFD images. The ATR header is being updated. Double density format works.
14)	A few fixes for stereo detection routines (help "Sheol", "Total Daze", "Crockett's Theme"...).
15)	Fixes that allow running “Spelunker”, “Tree Surgeon” and “Timeless Announcement”.
16)	Second button in 5200 joystick (i.e. Shift) generates “Break key” IRQ (now you may jump in “Moon Patrol”).

CAUTION: This version may still have some flaws related to GUI under Windows 2000 and Windows Me. Also it has not been tested under the newest Windows XP.


What's new in version 2.8
What’s new in version 2.8

Released 6th July 2001.

Atari800Win PLus 2.8 is an 8-bit Atari computer emulator based on the Atari800 v1.0.6 and Atari800Win sources.

Added:

1)	The Setup Wizard is used to perform installation of the emulator in the Windows environment (see the Help/Setup Wizard (Alt+W) menu option).
2)	The Input menu has been added. It provides a comfortable way for accessing all the emulator’s input configuration options.
3)	There is the ability to save video stream to an AVI file (only for GDI display modes and without the sound at the moment, see the View/Save video menu option).
4)	Some state indicators displayed on the status bar have been introduced. The indicators show and allow changing (via mouse double-clicks) some emulation parameters. There is of course possibility to turn them off by using the View/Show/State indicators (Alt+I) menu option.
5)	The stretched graphics modes can be built using interpolation algorithm that gives “smooth” graphics like on an old TV set (vide the View/Stretching/Smooth option). Unfortunately, the interpolation routines are rather slow at the moment.
6)	New full-screen mode (320x400 DirectDraw) has been added. This mode allows achieving a pretty fast emulation with scan lines or interpolation (though vertical only) turned on.
7)	The emulator can now work in background (it means without the focus, see the Misc/Task control/Stop when inactive menu option). There is also the possibility to run it at higher priority level (Misc/Task control/Run at high priority). The user may find these features useful especially for listening to the music played by the emulator run in the background.
8)	The possibility to press simultaneously two keys that are used for emulating the opposite joystick’s directions is blocked by default now, but may be turned on (see the Allow using opposite direction keys option in the Joystick Options dialog box).
9)	The standard system colors may be optionally used for GUI in full-screen modes (see the Use system colors option in the Graphics Options dialog box). Unfortunately, it is reliable only for the standard Windows color scheme.
10)	The Performance Options dialog box has been added. It groups all the kernel-side options that the speed of the emulator depends on (see the Atari/Performance menu option).
11)	There is a new conversion type available (from .XFD to .ATR files, see the Misc/Convert/XFD to ATR menu option). Thanks to Piotr Fusik for sending me the conversion routines.
12)	The Arabic OS image is automatically recognized by the emulator.
13)	The emulator may ask the user for confirming the quit action (see the Misc/Task control/Confirm on exit menu option).
14)	Some new icons have been included (Atari XE and new ones for associating Atari images).
15)	The emulator help file has been revised and large parts of it have been rewritten by Piotr Fusik.
Changed:

1)	Some drawing routines written in assembly language have been improved by Piotr Fusik. With new compilation scheme, which has been used for this release of the emulator, it should give about 10-15% boost in performance. There is also the possibility to use MMX and/or Pentium Pro core optimised routines (see the Advanced Graphics Options dialog box).
2)	The Palette Options dialog box has been reconstructed. All the palette options are now grouped in one window.
3)	The Joystick Options dialog box has been modified. Assigning devices to Atari’s stick ports should be much easier now.
4)	The Keyboard Options dialog box is now invoked via the Input/Keyboard (Alt+K) menu option instead of the Keyboard Template window. The second one is still available but can be opened only by the Edit button in the Keyboard Options.
5)	Printing the Atari screen contents has been improved (thanks to Piotr, again).
6)	The emulator recognises now maximum 32 joystick buttons instead of 4.
7)	The Extra Options window has been removed.
8)	The Graphics menu has been renamed to View.
Fixed:

1)	The Atari screen contents is properly redrawn when the user moves the main emulator window around and parts of the window are not visible on the screen. Also the Atari screen repairing in full-screen modes has been finally implemented. The user can move dialog windows around without destroying the screen contents.
2)	A key assigned in a keyset to center Atari stick should work properly when the Recenter keyboard stick when key is released option is unchecked.
3)	The mouse double-clicks are captured by the emulator when a mouse is emulated.
4)	A lot of serious problems under Windows 2000 have been fixed. The emulator should not crash anymore after loading executable, changing video system etc. Popup menus are properly erased, Ctrl+Esc keystrokes are captured and much, much more.
5)	Some annoying errors during initialising the registry under Windows NT have been removed.
6)	The speed indicator on the status bar is finally independent from the user’s actions performed via GUI.
7)	Changing the emulator display modes has been slightly improved.
8)	Some errors in the multimedia sound initialization have been removed. Moreover, changing the sound options when it is played should not cause the problems with sound quality anymore.
9)	A bug in the small file selector causing some problems with displaying contents of desktop folder has been fixed.
10)	A lot of other errors.

CAUTION: This version may still have some flaws under Windows 2000 and Windows Me.


What's new in version 2.7b
What’s new in version 2.7b

Released 8th January 2001.

Atari800Win PLus 2.7b is an 8-bit Atari computer emulator based on the Atari800 v1.0.6 and Atari800Win v2.5c sources.

Added:

1)	The Advanced Palette Options dialog box invoked from Palette Options window that allows changing color saturation parameters for generated and loaded palettes.
2)	The F1-F4 keys emulation is back, see the Use PC arrows keys as option in the Extra Options window.
3)	Printing support via an application associated with .txt files; there is also possibility to change the print command in the Extra Options dialog box.
4)	Ability to convert Atari text files to PC ones and vice versa (see the Misc/Convert/ATASCII to ASCII and Misc/Convert/ASCII to ATASCII menu options).
5)	The Display disk drive activity indicator option in the Extra Options dialog box.
6)	Some new OS images are automatically recognized by the emulator (ARGS-OS 3, QMEG-OS 2.3/3.2/3.8/4.2/4.3, TOMS-OS).
7)	The ‘<<’ and ‘>>’ buttons in the help window.
8)	The Xformer emulator palette file (file: Xformer.act).
Changed:

1)	New kernel-based autofire method is available now instead of the poor-working old one (see the Atari/Autofire menu option and the Joystick Options dialog box).
2)	The Paddles/Touch tablet item on a device list in the Mouse Options dialog window has been split into three separate ones (Paddles, Atari touch tablet and Koala pad).
3)	The small variants of dialog windows have been slightly improved.
4)	Emulated Atari is rebooted when its OS ROM is changed.
Fixed:

1)	Some problems with screen cleaning in double-buffered full screen modes.
2)	Changes made in dialog’s edit controls are always stored now, even if the user closes the dialog pressing the Enter or Alt+O key.
3)	A small bug causing some problems with 5200 controllers calibration (i.e. in Ballblazer game); thanks to Piotr.
4)	New binary load method has been slightly patched – “Studio Dream” should be loaded properly now; thanks to Piotr, again.
5)	Other little errors.

CAUTION: This version may have some problems under Windows 2000. Also it has not been tested under the newest Windows Me.


What's new in version 2.7
What’s new in version 2.7

Released 1st October 2000.

Atari800Win PLus 2.7 is an 8-bit Atari computer emulator based on the Atari800 v1.0.4 and Atari800Win v2.5c sources.

There are official WWW pages of the PLus project (thanks to Daniel Kozminski (alias Dely) and XLent for their help :) ).

If you are interested in that look at:

http://www.a800win.atari-area.prv.pl/

Added:

1)	At last the help file has been created (file Atari800Win.hlp). One may use context help in dialog windows with the question mark in the right-upper corner. The DOC folder is no longer available. Thanks to Piotr Fusik for his really big support by making that.
2)	Various devices emulation using the mouse (e.g. paddles, light pen, Amiga/ST mouse and 5200 controller); see the Mouse Options dialog box (Alt+M).
3)	Ability to change the speed of emulated Atari of range from 50 to 200 percent (the Percent of original Atari speed option in the Atari Settings window (Alt+T)).
4)	A new full-screen mode (400x300 DirectDraw). This mode allows achieving a pretty fast emulation with full Atari screen and overscan area being visible.
5)	The DirectDraw double-buffer flipping method is now available for all full-screen display modes. Note that menus will be not visible unless you select a menu option or use the Alt key or an accelerator to invoke a dialog window.
6)	Files selected in the File Associations dialog box can be registered automatically on the emulator startup (see the Restore these associations at each startup option in this window).
7)	The Searching for OS ROM images window with the Cancel button that allows breaking directory searching for BASIC and OS ROM images (see the ROM Image Selections dialog box). The searching is done using multiple threads now so finally emulator windows should be properly redrawn.
8)	Useless "special effects" for DirectDraw full screen and windowed modes (the Special DirectDraw mode effects drop-down list in the Advanced Graphics Options dialog box). These "effects" may not work if your graphics adapter driver doesn't support some functions. Useless, but maybe somebody will find it interesting.
9)	The multiple instances of the emulator are disabled now. The actually loaded instance is used any time the user double-clicks the file associated with the emulator.
10)	Ability to disable all the functions assigned to joystick's buttons (the Use all joystick buttons as fire option in the Joystick Options dialog box (Alt+J)).
11)	The Use H: devices in Read Only mode option in the Pick Virtual Hard Disk Directories dialog box (Alt+H). This option indicates if the H: devices can be used to write to a file. It is strongly recommended that you turn this option on unless you want to write files from emulated Atari directly to your hard disk.
12)	New superb external palette file (file: Real.act, author: Zdenek Eisenhammer).
13)	Wonderful Atari XE keyboard picture used in the help file (author: Zdenek Eisenhammer).
Changed:

1)	The emulator settings are now stored using the registry entry called Atari800WinPLus. That should help using the original and PLus versions of the emulator on the same Windows installation.
2)	The menu bar is now displayed after pressing the left Alt key or the left mouse button on the top of the screen in a full-screen mode. There are also window borders drawn in the full-screen modes with visible menus.
3)	The Graphics Options dialog box has been modified. There is the Hide mouse pointer in full-screen modes option in this window now (moved from the Advanced Graphics Options dialog box). Moreover, there is some information about selected full-screen and windowed modes available. The user may toggle between these modes by using the Alt+Enter keystroke.
4)	The active cartridge is detached when the machine type is changed from Atari 800/XL/XE to 5200 and vice versa, because these machines are not compatible.
5)	The emulator can use various OS ROMs now. One may use the Info button in the ROM Image Selections window (Alt+R) to check what ROM images are currently used.
6)	The old “load executable” method has been removed. The new one is extremely good. If there are some files that aren't properly loaded by a new method they are probably corrupt and might also not be loaded by an original Atari.
7)	The Atari's CAPSTOGGLE function is now assigned to the CapsLock key of the PC keyboard and the CAPSLOCK function – to the Page Up key (one may also use Shift+CapsLock keystroke to invoke CAPSLOCK function).
8)	Full path to the most recently used state file is now stored in the registry. It means the user is now able to load that faster and more comfortably after running the emulator.
9)	If there are errors on the emulator startup, the user may invoke the ROM Image Selections dialog box (instead of the Error Log window).
10)	The Alt+M shortcut invokes now the Mouse Options dialog box. The user should use the Alt+Y shortcut to change emulated machine.
Fixed:

1)	The emulator often drew an emulated Atari screen on the top of other windows after losing a focus (when DirectDraw windowed display modes were used). The problem has been finally resolved by using a clipper object. Unfortunately, the normal windowed DirectDraw mode is now about 10-15% slower than before.
2)	16 KB cartridge images for 5200 console are properly read, provided the Atari 5200 Cartridge switch in the Select Cartridge Type window is chosen. When cartridges are loaded from the shell level the emulator take them either for Atari 5200 Cartridge 16/32 KB (when 5200 is emulated) or Standard 16 KB/DB Superduper 32 KB (when 800/XL/XE is emulated).
3)	The File/Load executable menu option wakes up the emulator when it is in the "not running" state. It doesn't work with drag&drop feature.
4)	Console keys (F2-F4) should now work independently of the SHIFT key state. The F1-F4 function keys known from 1200 XL are not available at the moment.
5)	The OK button in the Palette Options window (Alt+P) always enables a chosen palette. It didn't work if the palette had not been loaded on startup because of the unchecked Load this palette at startup option. Also the exposition of the external palette has been changed.
6)	The emulator wasn't properly initialized if there were unknown parameters in the line command.
7)	A DOS-based monitor console is now fired on its own thread so the main window is redrawn properly now. If the emulator was working in the full-screen mode while the monitor was invoked, that mode is restored after closing it.
8)	Some changes have been made in keyboard handling for Atari 5200 game console emulation.
9)	The Misc/Clear all settings menu option has been slightly improved: • all disk drives are now turned off by default, • after choosing this option an emulated Atari screen should not be drawn outside the main window frames any more, • the emulation is restarted to avoid confusion some people had.
10)	Several of other little errors and modifications.

More about the changes:

1. Atari devices emulation using the PC mouse

The PLus 2.7 emulator allows emulating following devices using the mouse:

•	paddles – horizontal moves of the mouse are used for paddle no. 1 emulation (the left mouse button is the fire), vertical for paddle no. 2 (the right mouse button is the fire),

•	touch tablet,

•	light pen – the right mouse button allows the user to see a screen point pointed with the emulated pen,

•	light gun – vide supra,

•	Commodore Amiga mouse,

•	Atari ST mouse,

•	joystick,

•	Atari 5200 controller.

One may choose emulated device using the Emulated device combo box in the Mouse Options dialog box (Atari/Mouse menu option, Alt+M). To enable the emulation the user should check the Capture the mouse to enable the device emulation option before exiting the Mouse Options window or use the Misc/Mouse capture menu option (F12 key). To disable the emulation the user should uncheck the Capture the mouse to enable the device emulation option or use the F12 key again (to toggle this option).

Atari (POKEY processor) can handle the paddle position of range from 0 to 228. Unfortunately, some games don't use the full range (e.g. optimal range for "Arkanoid" game is 0-88). The emulator allows setting the top limit of the paddles range using the Top limit of paddle range option in the Mouse Options dialog box.

One may set the speed of an emulated Amiga/ST mouse using Movement speed of emulated mouse option. The Inertia of emulated joystick sets inertia of objects controlled by an emulated joystick.

For the light pen/light gun emulation one may turn on the "light cursor" (this means the screen place pointed by selected device, see the Always show light pen/light gun pointer option in the Mouse Options dialog box). The user may also "calibrate" the light pen or gun (the Horz offset and Vert offset values, e.g. the "Bug Hunt" game needs 44 and 2, respectively).

The PLus emulator allows emulating the Atari 5200 analog controllers using the PC mouse. This is done in two ways. First, one may use the paddles emulation (the Touch tablet/paddles item in the Emulated device combo-box); in this case the variations of the emulated controllers are dependent on the mouse position. Second, one may use the joystick emulation (the Joystick item); in this case the variations of the emulated controllers are dependent on speed of the mouse moves.

Keep in mind that the 5200 controller emulation is as good as done at the moment and will be improved soon. Also, you may use PC joysticks and/or “joystick keysets” to emulate up to four 5200 controllers now.

The way that the devices emulation works has been taken from the DOS port of Atari800 emulator, which is maintained by Piotr Fusik.

2. The ability to change the speed of an emulated Atari

To change the speed of an emulated Atari one has to use the Percent of original Atari speed drop-list in the Atari Settings dialog box (Alt+T). This option allows selecting the new Atari speed of range from 50% (25 fps for PAL and 30 fps for NTSC) to 200% (100 fps for PAL and 120 fps for NTSC). Note that the VSYNC methods should be turned off to make all the speeds available (e.g. if used monitor's vertical refresh rate is 60Hz, the maximal speed will be equal 120% unless one turns the VSYNC options off).

There is another way to get flawless graphics now: the user may turn the VSYNC method on and set the speed of an emulated Atari to a value (percent) appropriate for refresh rate of the monitor/graphics card (e.g. 120% for 60Hz, 150% for 75Hz etc. (PAL)). Unfortunately, the Atari speed may be too fast to get any advantage of this method. The best way to take superb vertical/horizontal Atari scrolls is still setting the vertical refresh rate of an used PC video system to 50Hz (PAL) or 60Hz (NTSC).

3. Supported OS and BASIC ROM versions

The emulator recognizes the following OS and BASIC ROMs (some description has been taken from "Atari 8-bit Operating Systems" and "Atari BASIC revisions" documents by Freddy Offenga):

400/800 10 KB OS

+-----+--------+------------+------------+---------------------------+

| Rev.| TV     | Date       | CRC-32     | Part Nr(s)                |

+-----+--------+------------+------------+---------------------------+

|  A  | PAL    | (?)        | 2370568491 | CO15199,CO15299,CO12399B  |

|  B  | NTSC   | (?)        | 4051249634 | CO12499B,CO14599B,12399B  |

|  B  | PAL    | (?)        | 3252116993 | (?)                       |

+-----+--------+------------+------------+---------------------------+

XL/XE 16 KB OS

+-----+--------+------------+------------+---------------------------+

| Rev.| System | Date       | CRC-32     | Part Nr(s)                |

+-----+--------+------------+------------+---------------------------+

|  1  | 600XL  | 03/11/1983 | 2613326695 | CO62024                   |

|  2  | XL/XE  | 05/10/1983 | 3764596111 | CO61598B                  |

|  3  | 800XE  | 03/01/1985 | 3591293960 | C300717                   |

|  4  | XEGS   | 05/07/1987 | 3780165629 | C101687                   |

+-----+--------+------------+------------+---------------------------+

Atari BASIC

+-----+------------+---------------------+---------------------------+

| Rev.| CRC-32     | Parts               | peek(0xa8e2)              |

+-----+------------+---------------------+---------------------------+

|  A  | 3021189661 | CO12402 + CO14502   | 0xa2 (162)                |

|  B  | 0266326092 | CO60302A            | 0x60 (96)                 |

|  C  | 2190982779 | CO24947A            | 0xea (234)                |

+-----+------------+---------------------+---------------------------+

The emulator recognizes also the 5200 OS ROM (CRC-32 3182898204).

4. Functions assigned to joystick buttons

The emulator can use four joystick buttons. Three buttons are used to toggle following functions:

•	button no. 2: toggles the Pause option,

•	button no. 3: toggles the Run Atari as fast as possible option,

•	button no. 4: toggles the Enable SIO patch option.

Button no. 1 is always used as "fire". One may check the Use all joystick buttons as fire option in the Joystick Options window to get all the buttons as fire.

5. Extra options

There are some extra options available. Try Alt+X keystroke to take a look, but note that they are experimental at the moment.

•	The Allow multiple instances of emulator option changes the default behavior of the Atari800Win in case when at least one instance of it is being active while the user runs a new Atari image from a shell level. A new emulator instance will not be loaded unless the user turns this option on.

•	Multiple instances handling is a bit better now. There is no message about the last session lookup and the sound might be available for new instances (tested on Sound Blaster Live!; unfortunately not all sound cards can support that).

•	The Capture Ctrl+Esc keystroke option allows capturing the Ctrl+Esc key sequence for an emulated Atari purpose. It is not done perfectly at the moment but... it works I hope. Note that Alt+Tab is also captured when Windows 9x is used.

•	The Use different refresh rate for double window check box allows the user to set the separate refresh rate to be used when the double-windowed mode is active. Otherwise the screen refresh rate value is taken from the Atari Settings window (Alt+T).

6. Kernel 1.0.4 fixes

The Atari800Win PLus is based on the 1.0.4 kernel with the latest unpublished changes by Piotr Fusik and Krzysztof Nikiel.

These changes should help with some new binloader method problems (e.g. the file version of "Draconus" with a trainer should work now). Also minor errors in ANTIC emulation have been fixed.


What's new in version 2.6c
What’s new in version 2.6c

Released 14th July 2000.

Atari800Win PLus 2.6c is based on the Atari800 v1.0.3 and Atari800Win v2.5c sources.

Added:

1)	The New Disk Image function is now available from the level of the Drive Selections dialog box. This function allows creating new disk images. There should be noted that using such created diskettes is possible only after formatting them using system software for Atari.
2)	Choosing the position Read Only or Read/Write at an appropriate drive in the Drive Selections window allows enabling or disabling write-protection for a disk image attached to the drive. This function works only with disk images in ATR format, however they cannot be set on the "Read Only" in the Windows file system.
3)	The button Search in the ROM Image Selections dialog box. After pressing it, the directory should be pointed the one which system ROM images (files .ROM) will be started from. CAUTION: Because of searching all of the subdirectories of the pointed directory, this process may take a lot of time, when the directory's tree is very huge. The best is to point the directory with the ROM images directly.
4)	The conversion of the "raw" ROM images to CART format (the menu Misc/Convert/ROM to CART). The advantage of a "wrapping" CART format is that it contains a complete information about the type of the ROM image, so the emulator is able to recognize it automatically and install without bothering the user. In case of using the "raw" ROM 16/32 KB image the user will be forced to point its type at every attempt of using it – unless it is started from the shell level, when the emulator takes them for the standard ROMs.
5)	New file types in the File Associations dialog box – this means starting from shell level:
	• ROM, BIN	⇒ "raw" dumps of the Atari cartridges,
	• CRT	⇒ CART files (wrapped in the ROM files),
	• A8S	⇒ the Atari saved-state files.
	The above file types can be comfortably started using the drag&drop function. In case of the attempts using the .a8s file it should be remembered that apart from its loading, there could be necessary to attach a disk with the used program on to an appropriate drive.
Fixed:

1)	The error which showed up by crashing the emulated Atari during the attempt of starting the software which uses BASIC with not active Disable BASIC option from the shell level.
2)	Minor problems with the activity of the SIO patch showing after changing it and restarting the emulator by a Warm reset or Cold reset option. It seems that the error resides in the emulator kernel and may be completely eliminated soon.
3)	The error, in result of which the mouse pointer was hidden after crashing the emulating Atari (in the full-screen modes with the active Hide mouse pointer... option).
4)	The used cartridge is now not deactivated after restarting the emulator using the Warm reset or Cold reset option. To "take out" the cartridge one has to use ROM Image Selections dialog box dialog box or choose the Misc/Restart emulation menu option. It should be noticed that active cartridge, which of some reasons was not turned off, may cause problems with executing the software coming from diskettes or executable (binary) files!
5)	A little error in the File Associations dialog window, from time to time showing itself by wrong path stored in Registry. Moreover, the file types used by emulator are now named (which makes their identification from shell level easier) and reading of the registered extensions is realized on the basis of the real state of Windows Registry.
6)	BASIC ROM is always deactivated in the Atari 5200 emulation mode independently from the option Disable BASIC settings. Thanks to this, most probably, there would be impossible to admire fantastic "bushes" on the start screen of this console started without the cartridge.
7)	The small windows for choosing files or folders were improved (the windows invoked from the level of the Pick Virtual Hard Disk Directories dialog box for example):
	• the names of the files and folders are now preceded with appropriate icons, • the folders are grouped at the top of the directory list, • in the windows used for choosing the folders the files cannot be pointed any more, • the double-click on the folder expands it, on the file – chooses the pointed one and closes the window (so as choosing the OK button), • after invoking the window, the most recently used directory/file is selected, • the user has opportunity of changing windows' size.
8)	The error, which makes canceling the operation in the Pick Virtual Hard Disk Directories dialog box impossible.
9)	The error causing the displaying of "bushes" instead of pleasing to eye graphics in games using BASIC. "Bertyx" and "Inspektor" should work without problems (thanks for your help, Piotr).
10)	The names of the files started from shell level are now remembered by emulator in the "long form". The problem is that Windows system transmits the "short form" of the access path to the started file, at that time its API doesn't render the function used in changing these form in the "long" one (GetLongPathName() is available in Windows 98/2000 only).
11)	It is possible now to invoke Atari800Win with any parameter describing the cartridge type (so as in Atari800 DOS version).
12)	The cartridge with the "Bounty Bob" game (version with more than 32 KB length) should have no problems with starting in this version of emulator.
13)	The error showing itself in incorrect arrangement of the controls of the Error Log window displayed on the screen in 320x200 or 320x240 resolution.
14)	The last used file path with saved-state file is remembered in Windows Registry.
15)	New method of loading executable files is now default one.
16)	The change of the Hold down option on reboot option does not cause the restart of the emulator any more.
17)	The problems with refreshing the emulator window with an active Use GDI option. While redrawing the window, one could notice movements in one pixel to the right; the option Show scanlines was also ignored.
18)	Several of others little errors. It is possible that the same amount of new and equally important ones might have came out :).


What's new in version 2.6b
What’s new in version 2.6b

Released 15th May 2000.

This is an unofficial release of Atari800Win based on Atari800 0.9.9j sources.

The changes in the Windows code are minor. The basic aim to create this version was making emulator kernel updated, using the latest Atari800 sources.

Major changes in the Windows code:

Added:

1)	The Drag&drop support for Atari executable files and disk/cartridge images.
Fixed:

1)	Some serious bugs in user interface.


What's new in version 2.6
What’s new in version 2.6

Released 6th May 2000.

This is an unofficial release of Atari800Win based on Atari800 0.9.9i sources with the latest Piotr Fusik's changes.

Major changes in the Windows code:

Added:

1)	An ability to define own keysets for using them instead of joysticks (use the Keyset A and Keyset B buttons in the Joystick Options dialog box).
2)	The Graphics/Save Screenshot menu option for saving screenshots (the normal and interlaced ones) to the .PCX files.
3)	The Palette Options dialog box that allows using external palettes stored in the .ACT files.
4)	The File/Turn disk menu option to help flipping disk images (for drive 1 only).
5)	A few DirectDraw settings (the button Advanced settings in the Graphics Options dialog box).
6)	Many key shortcuts.
Fixed:

1)	Menus and some dialog boxes have been completely reconstructed.
2)	The monitor was slightly corrected (the user has an opportunity of using the CIM opcodes now).
3)	Names of the last used sound and state files are remembered in a current session.
4)	Function keys meaning: F7 – toggle between the Run as fast as possible and the standard speed mode, F8 – launch the monitor console.
5)	Many minor bugs.

More about the changes:

1. Advanced graphics settings

The Advanced Graphics Options window is invoked by using the Advanced settings... button in the Graphics Options dialog box. The user may choose a display mode using two flipped buffers by checking the Use two flipped buffers for full screen modes without menu option. The method has this advantage that is synchronized with a vertical refresh rate of the monitor and doesn't need so much of processor's power as the previous one, which may still be activated by checking the Always blit directly from display memory to the primary buffer and Synchronize blits with the vertical-blank interval options. The user has an opportunity of using the 'two flipped buffers' method for full screen modes without visible menus only.

There should be noted that activating either of these display-sync supporting methods might be not enough to obtain a flawless graphics if the user doesn't follow a few steps which were earlier described in this document. Moreover, for some graphics cards it might be necessary to set up few additional parameters. For example, Matrox Millennium G400 cards need the "FlipOnVBlank" option checked in the "Matrox Tweak Utility" program to flip the buffers on vertical-blank interrupt.

The Wait until the blit can be set up (synchronous blits) option has taken place of the Synchronize with VSYNC one known from previous versions of Atari800Win.

2. The definition of own keysets

The user's ability to define own keysets is very useful if there is no joystick. The emulator allows defining two keysets by using the Keyset A and Keyset B buttons in the Joystick Options dialog box. Note that:

•	The keys, which are used for joystick emulation, are excluded from other functions. For example, if there will be the 'A' key used in a keyset instead of joystick's 'east' direction and the 'L' key – instead of 'west', it won't be possible to type in the 'Ala' word unless that keyset is deactivated.

•	The emulator checks only if there are the same keys in the one keyset. It allows defining two keysets with the same keys, but only the one attached to the stick with a lower number will be working.

•	It is not necessary to define "double-direction" keys, e.g. 'north-east', 'south-west' etc. A simultaneous pressing of two "single-direction" keys works in the same way. For example, if there is the 'cursor left' key defined for joystick's 'east' direction and the 'cursor up' key for the 'north' one, pressing these two in the same time gives the 'north-east' direction.

Moreover, one may use two predefined keysets: numerical block keys ('Numpad') or cursor keys with the right 'control' key as fire ('Arrows + RCtrl as fire'). All the keysets can be used simultaneously that allows playing games with four-joystick support (e.g. "M.U.L.E").

3. The automatical disk turning

Atari800Win 2.6 allows turning disks in the emulated drive 1. Note that the user has to set appropriate names of disk images to use this feature.

The disk images changing is realized in a very simple way: the last character (letter or number) of current disk image name (without extension) is incremented by one (e.g. the 'b' letter is taken place of the 'a' one and the '1' number is incremented to '2'). Provided that there is a file in the current directory with the name equal to the generated one, it will be automatically attached to drive 1. Otherwise, the modification of the last name's sign is continued as long as the maximal value is reached ('z', '9'). In that case the searching is started from beginning ('a', '1').

For example, if there are used two disk images:

Serious 6a.atr

Serious 6b.atr

and the one currently attached to drive 1 is the Serious 6a.atr disk, the user may select the File/Turn disk (Alt+N) menu option to change the disk to the Serious 6b.atr one. The next use of this option will attach the Serious 6a.atr disk again.

4. The screenshot saving

The Graphics/Save Screenshot menu option allows saving an emulated Atari screen to the .PCX file. The user may use the F10 key to invoke this feature (with the Shift key for interlaced screens).

The names for saving files are generated automatically as long as the user doesn't type any own in.

5. The ability to activate a crashed Atari with the CONT command of the monitor

This feature allows using the CIM commands, which are useful to debug and test the Atari software.

6. Key shortcuts and function keys

That's a complete list of shortcuts used by the emulator:

Alt+1	⇒ attach a disk image to drive 1
Alt+2	⇒ attach a disk image to drive 2
Alt+3	⇒ attach a disk image to drive 3
Alt+4	⇒ attach a disk image to drive 4
Alt+5	⇒ attach a disk image to drive 5
Alt+6	⇒ attach a disk image to drive 6
Alt+7	⇒ attach a disk image to drive 7
Alt+8	⇒ attach a disk image to drive 8
Alt+A	⇒ toggle between the artifacting modes
Alt+C	⇒ attach a cartridge image
Alt+D	⇒ invoke the Drive Selections dialog box
Alt+E	⇒ enable/disable a stereo sound support
Alt+G	⇒ invoke the Graphics Options dialog box
Alt+H	⇒ invoke the Pick Virtual Hard Disk Directories dialog box
Alt+J	⇒ invoke the Joystick Options dialog box
Alt+K	⇒ invoke the Keyboard Templates dialog box
Alt+L	⇒ execute an Atari binary file
Alt+M	⇒ toggle between the all emulated Atari systems
Alt+N	⇒ try to attach the next disk image to drive 1
Alt+O	⇒ read a saved-state file
Alt+P	⇒ invoke the Palette Options dialog box
Alt+R	⇒ invoke the ROM Image Selections dialog box
Alt+S	⇒ invoke the Sound Options dialog box
Alt+T	⇒ invoke the Atari Settings dialog box
Alt+U	⇒ turn on/off the sound playback
Alt+V	⇒ toggle between an emulated video-systems (PAL/NTSC)
Alt+Z	⇒ save a state file
Alt+Enter	⇒ toggle between the last used windowed and full-screen mode
The list of the function keys:

F2	OPTION key
F3	SELECT key
F4	START key
F5	RESET key (warm reset)
Shift+F5	turn an emulated Atari off and on (cold reset)
F7	toggle between full/standard speed
F8	invoke the monitor console
F9	toggle between running/paused
F10	save a current screenshot to .PCX file
Shift+F10	save a current interlaced screenshot to .PCX file
F11	toggle SIO (fast disk) patch (only if the Allow ROM patches option in the Atari Settings dialog box is checked)
7. The latest ANTIC and GTIA changes by Piotr Fusik in Atari800 kernel (not published yet):

•	collisions in hi-res fixed – Chicken and Super Bunny work now,

•	horizontal scroll in modes 8 and 9 fixed,

•	PM5 in GTIA 11 fixed,

•	mode 2 / GTIA 11 fixed,

•	PMG flickering more accurate,

•	some optimizations in ANTIC – mostly for hi-res modes (drawn with words) and for blank lines (drawn with memset, if possible),

•	simplified Save/Load State in ANTIC and GTIA.


What's new in version 2.5e
What’s new in version 2.5e

Released 1st April 2000.

This is an unofficial release of Atari800Win based on Atari800 0.9.9g sources.

Major changes in the Windows code:

Added:

1)	The Enable stereo option in the Sound Options dialog box. You may try this feature if you have got any software using that (mostly new demos). The stereo sound support was introduced with version 0.9.9g of Atari800.
2)	The Use digitized effects option in the Sound Options dialog box. This one enables the volume only sound.
3)	A simple DOS-window based monitor console. Select the Misc/Monitor menu or press the F7 key to get in.
4)	A few key accelerators:
	Alt+V	invoke the Pick Virtual Hard Disk Directories dialog box,
	Alt+O	load a saved-state file,
	Alt+Z	save a normal state file.
Fixed:

1)	The Atari console sound support is back. You have to check the Use digitized effects option in the Sound Options dialog box to hear the "clicks".
2)	Behavior of the Sound Options dialog box. "What you see is what you get" now.
3)	The DirectX errors handling. No more unexpected exits I hope.
4)	The Error Log dialog box is resizable now.
5)	Some Visual C++ project settings.
6)	Several minor bugs.


What's new in version 2.5d
What’s new in version 2.5d

Released 29th February 2000.

This is an unofficial release of Atari800Win based on Atari800 0.9.9f sources.

The main goal with this release is simply up-to-date the emulator, but there are also some other changes in the Windows code:

Added:

1)	The Use new binary load method option in the Hardware Settings dialog box. That method was introduced with version 0.9.9d of Atari800.
2)	The File Associations dialog box for help with the shell integration.
3)	Some new icons (main and doc). The older ones are still available.
4)	An alternative synchronization method with the monitor refresh rate (experimental).
Fixed:

1)	Some problems with the main window sizing in the windowed modes. The size of the status bar is getting more appropriate now.
2)	Some problems with Windows NT Registry. There was a small problem with writing empty strings.
3)	Behavior of the Cartridge Management dialog box. The case sensitive path comparison was changed to insensitive, the option Use BASIC was disabled for 320XE machines and other minor fixes.
4)	Behavior of the Hardware Options dialog box. No more surprises I hope (and I don't believe it).
5)	Some strange problems with the navigation using the keyboard in the Graphics Options dialog box.

The cleaning of the Windows code was started and header files were created.

More about new sync method:

I'm the owner of PC 300/374 MHz with two Matrox graphics cards (Mystique 1064SG PCI and Millennium G400 AGP). I couldn't get a smooth graphics neither with first nor the second one (I tried to run the emulator with the Wait on VSYNC and PAL options turned on and a full screen opened in 50Hz via the graphics card's driver).

That's why I have made this modification. I have changed the style of the checkbox Wait on VSYNC in the Graphics Options dialog box: it is 3-state now. The second state forces the emulator to sync with the monitor. It works only in the modes using DirectDraw exclusive and normal).

Unfortunately, there are still some troubles with it:

•	you have to set the monitor refresh rate to 50Hz (PAL) or 60Hz (NTSC) for display modes utilized with the emulator. Not all gfx cards and/or monitors will be able to do this,

•	you have to set to 1 the Refresh option in the Hardware Settings dialog box, scrolls will appear smoother, but sound may not work correctly, if you haven't got a fast PC, don't bother. This won't help you.

You may also try the Run Atari as fast as possible option with any monitor refreshment frequency.


Original Atari800Win history

by Richard Lawrence

12-18-98

Ver 2.5c

•	Corrected small but very hard to find bug with some saved registry values blowing keyboard joysticks (again). Believe me I'm more tired of keyboard joystick problems than you are.

•	Small bug fix to prevent garbled screens when changing hardware mode in a stretched windowed mode with scanlines.

•	Fixed a potentially confusing drive-path remember problem when a temporary disk was mounted (ie a loaded executable disk).

•	Fixed a small problem in saving/restoring the load exe path.

•	DDraw windowed scanline mode was darker than GDI, fixed.

•	This version invalidates older save-state files – they will need to be resaved.

•	Re-synced with the general Atari800 code base. Fixed a couple of ANTIC problems.

•	Fixed screen getting offset when switching hardware types.

•	Fixed the damn keyboard joystick not being detected (was only happening on machines that have no hardware joystick devices, and guess what – all of mine do. Grrr).

•	Joystick selections are saved permanently. If you change your stick config around (hardware wise), it won't crash, but you will probably have to reconfigure via the joystick selection dialog.

•	The scanline modes are now driven by highly tweaked assembly, mostly because I changed the way they worked: they now show half-lumen lines interleaved instead of black ones. In a couple of the available graphics modes (GDI) even though a lot more work is being done it's slightly faster than the older scanline mode.

•	Added keyboard accelerators for the following functions:

Alt-C	Cartridge dialog,

Alt-D	Disk dialog (floppies),

Alt-G	Graphics dialog (screen modes),

Alt-H	Hardware dialog,

Alt-J	Joystick dialog,

Alt-K	Keyboard dialog,

Alt-L	Load Atari executable,

Alt-S	Sound dialog,

Alt-R	Rotate through artifacting modes (including off).

•	Last path used to load Atari executables is remembered.

•	Some small code re-orgs (same functionality, but less code).

•	Fixed screen corruption in stretched-window modes when paused.

•	Smarter about registry updates – doesn't have to reset ROM paths when these occur now. Also, for first time users tries to find the ROMs in either the working directory or "ROMS" subdirectory.

•	Added different machine types in hardware selector for 320XE Compy and 320XE Rambo.

12-05-98

Ver 2.5 (a "beta" release)

Consider this a beta release. It has not been tested extensively. I will be releasing again soon to sync up with the general Atari800 code base and address some other issues of my own.

•	Any "sticky key" problems should be fixed on slow machines.

•	Warmstart reappears on F5 as if by magic :-)

•	Arrgh! ATR images formatted while loaded into the emulator were getting corrupted headers (they were reformatted as XFD). Modified SIO code so that any valid ATR image (even megadisks) can be reformatted by Atari800win.

•	Added option to load Atari executable files individually instead of requiring a disk image. This will NOT work for files that require Atari DOS. I more or less lifted Ken Sider's routines right out of MakeATR (actually I initially wrote a multi-segment loader myself, but it sucked, so people can thank Ken for this feature). When you do this the EXE will replace the disk mounted in drive 1.

•	John Frias contributed some icons (mine are retired to no artistic talent land now).

•	Fixed a problem with the R-TIME cartridge returning the incorrect month. BTW This should come as a surprise to no one, but the R-TIME is not year 2000 compliant.

•	Fixed a small timing problem on keyboard input.

•	Blank scan line option added for some video modes. Read the readme.txt for why I still think this is a *really* stupid idea.

•	Built a new ZLIB DLL which appears much less touchy about alignment. I highly recommend you use the one included with Atari800win as your DLL in general (slightly larger but works much better).

•	Drive status can be set directly from the disk drive dialog. This is mainly so images can be switched to read-only on the fly for some demos. You cannot use the dialog to override actual file permissions – if the file is read-only to the OS, then it will always be read-only to Atari800win (and that's by design, not omission).

•	Corrected small joystick bug that prevented the keypad from working as joystick on port 1 while a real joystick was used on port 2.

•	Inserted a completely bogus wait after DDraw SetDisplayMode that corrects garbage sometimes left on the screen. This very much looks like a DDraw bug. The delay may not be long enough for all systems. Email me if you still see window garbage on your display.

•	640x480 is now a "no visible menu" mode. Use F10 to get a menu (or the keyboard accelerators – e.g. Alt-A + L is Atari/Load Exe). Let me know if you find this a problem – I could make it configurable. 800x600 and up still have menus.

09-09-98

Ver 2.4a (a "doh" version)

Sigh. Single comparison failure led to keyboard joystick not working under NT. Fixed now. Otherwise this build is identical to 2.4

09-08-98

Ver 2.4 (large update, some beta features)

A request: I am looking for an image of the 8-bit Epyx game "Hellfire Warrior". I'm not sure if it was available for the Atari, but it was for the Apple][. I own this game, but only have the TRS-80 disk image. If you can help, please e-mail rich@cstone.net

•	Big feature: support for save states (also known as "snapshots"). You must have ZLIB working (the DLL supplied with Atari800Win must be in the path) to use this. Saved states saves _everything_ about your Atari itself, the entire contents of memory, where you are in a program, etc. A save state does NOT save your display, input, or sound settings. When you load a state save, the Atari will be paused on a black screen. Hit F9 to start the saved state. Saved state file sizes will vary based on the machine type and what it was doing / had loaded.

Use the File menu to access the Load/Save state features. There are two types of save: normal and verbose. Verbose is ONLY necessary if you have patched ROMS that somebody else wouldn't have. Verbose saves are larger.

Save states should be considered a somewhat beta feature. Changes might affect the format as other Atari800 ports adopt it, making the current format obselete. Keep in mind that even if you snapshot a program it may still want to access the disk later; and save states do NOT save disks. If you know a program accesses the disk, you will have to keep the disk handy with your save state to resume later. Save state are machine independent; they will be useable on other ports of Atari800.

•	Machine language routines here and there; small speed difference. I spent considerable time rewriting some large sections in assembly, and found there was little speed increase in them even when heavily optimized.I'll continue investigating asm for things like ANTIC though.

•	Atari crashes are much less dramatic now, as you don't have to exit Atari800Win. The screen will simply go black, you then have the opportunity to change settings, and there is a new Atari/Restart menu option to fire the machine up again (Ctrl-F5 will also work).

•	Added 512x384 mode. Should help those on slow machines without 320 modes. Shows full overscan and on most cards has that "scanline" feel.

•	Completely rewrote the keyboard handler, many changes include:

⇒	A few layout changes; see README.TXT.

⇒	Insert/Delete work correctly (char normally, line when shifted).

⇒	Clear character now on the Windows Home key.

⇒	Option/Select/Start can be held down in combinations,fixes some demos.

⇒	When holding a regular key, pressing then releasing a second key will have no effect (the first key will stay held). Hold down a regular key, hold down a second. Release the first key. The Atari will register the second key as being held down after exactly 1 frame of no keys.

⇒	F1-F4 exist only for XL, returns no keyboard code for other machines.

⇒	Help returns no code for non XL/XE machine.

⇒	With CTRL + SHIFT held, the following keys do NOT work on purpose: J K L ; + * Z X C V B F1 F2 F3 F4 and HELP.

In many cases the new behavior my seem more limiting than before; but it is now highly accurate compared to the real hardware. Many hours in testing with a real XE back this up. Since there is considerable new code there may be an errant key here or there; please e-mail me if you find keyboard oddities (or if you find things fixed!).

•	Keyboard templates option added (Options/Keyboard.. menu). This is a complicated feature for expert users, consult the README for details. Do not mess with it if you don't understand the purpose. Briefly, It allows you to remap almost the entire keyboard to anything you wish to define. Helpful for games that use whacked out directional keys like the Ultima series or if you want to exactly duplicate the Atari layout.

•	Keyboard joystick reworked. Now handles combination keys (numpad4 + numpad8 = diagonal up/right). Ignores your Windows key delay/repeat settings and works right off the keystroke (instant feedback).

•	Checkbox for "use AGP memory", which controls whether a surface is allocated as "local video memory" in Ddraw terms. This is basically for DDraw windowed modes, and could be faster, much slower, or no change on any particular card – you'll just have to try it and compare.

•	Fixed a problem with small graphics selector dialog used in 320 modes.

•	All full screen modes clear their backgrounds.

•	Bolder, more ambitious icons, less filling but taste great. Any icon artists out there?

•	Machine type and speed shown in window title (status bar in full screen).

•	Finally remembered to add keyboard click. You will notice a slight delay between the keystroke and sound, can't be helped at present.

•	Fixed a display bug that had crept in when in windowed mode with the display partially off the desktop.

•	If you exit while running full speed, the next time you launch sound will be (correctly) disabled until you switch back to normal speed.

•	Pause shows paused text on Atari screen (for full screen modes).

•	Fixed crash bug that sometimes occurred changing artifacting modes.

08-03-98

Ver 2.3

•	DCM files (an older semi-compressed disk format) can now be converted to ATR directly from within Atari800Win. This is under the File menu. You can select a single or multiple DCM files to start, and then will be asked the destination directory to save the ATR files.

•	DCM files can be loaded as regular disk images, but they will be read-only since they are in compressed form. Use the DCM->ATR menu option to create an ATR that you can then open read/write.

ATR/XFD files can be compressed with gzip and read directly as disks in compressed form (they also will be read only). The extension used must be ".atr.gz", ".xfd.gz", "atz" or "xfd" for the file to be recognized (I highly prefer .atr.gz and .xfd.gz). ZLIB is used to manage the decompression code, and the DLL is now included with Atari800Win. You can use any recent zlib.dll however; as long as it is in the path somewhere, it will be found. If zlib is not present Atari800win will still load, but won't decompress files. Atari800Win will NOT read ATR/XFDs compressed with ZIP programs (yet). Temporary files created when compressed disks are read are placed in the Windows TMP directory and automatically removed when no longer needed.

PLEASE NOTE THAT COMPRESSED FILES ARE DECOMPRESSED BEFORE BEING READ. IF YOU COMPRESS A MEGADISK, IT'S GOING TO TAKE A LONG TIME TO LOAD AND WILL USE UP THE ORIGINAL DISK SPACE ON YOUR HARD DRIVE IN THE TMP DIRECTORY.

•	Changed graphics dialogs to reflect the apparently common mistake of not de-selecting windowed modes for full screen. The current system is about as intuitive as you can get and still have all the selections available.

•	Added 1024x768 DirectDraw mode. This is mostly for people with LCD screens that cannot actually switch resolutions. It also (on a fast machine) is slightly better than 800x600 because the Atari screen is more "zoomed in". However it is quite slow, since it is 3X expanded instead of 2X.

•	Windows not redrawing the desktop when quitting is fixed.

•	Fixed a problem that could cause the Atari to not reboot on cartridge changes (which was the cause of a few lockups in 5200 mode).

•	Various prompts (dialogs, messageboxes) were changed to give more helpful hints & directions.

•	Fixed a SHIFT handling bug where it could be lost as a key but kept as a state (if that's not confusing enough). This fixes a bunch of demos.

•	Added "Allow ROM Patches" to Hardware dialog. When switched off this automatically disables SIO Patching, and also disables various patches to the machine ROMs (notably HATABS) which might prevent a small number of programs from running.

•	Added no tearing for DDRAW blits option to Graphics dialogs. You can try checking this if you are getting tearing; it could slow things down a lot though, especially if you are running the Atari full speed.

•	Added CTIA color lookup table to artifacting modes for older games that depended on this color set (CTIA is an older version of the graphics chip that became GTIA in later Ataris).

•	Mode 2 artifacting is now implemented from the common code base. You might find this a little disconcerting, as it will make your DOS screen fuzzy or artifacted. Try just turning artifacting off when using DOS and then back on for games etc.

07-12-98

Ver 2.2

•	A disk indicator is drawn at the bottom right hand corner of the display when sector I/O occurs. The small block drawn contains the number of the drive being accessed, and is red for writes, green for reads.

•	5200 controllers work. F5 is reset, Shift-F5 is coldboot, F4 is the start button. Keyboard 0-9 are equivalent to the 5200 controller 0-9 (you can use the keypad if you aren't using it for a joystick). Keypad * or regular * work as the 5200 * key, and keypad – or regular – work as the "#" key. When running in 5200 mode with a joystick triggers 2-4 operate as 5200 triggers 2-4, NOT as function shortcuts like in Atari computer mode.

WARNING: At present several 5200 carts fail. This will have to be worked on for a while.

•	Found the (atari side) bug that was keeping multiple stick inputs from working. You can now play with at least two sticks; I don't have four to test but that should work as well. I HAVE played a full game of MULE with joystick on one port and keypad on another. It works.

•	ModeX was abandoned in favor of simple linear modes at 320xXXX resolutions. Some cards will support these modes, some won't – but at least when present they work reliably. If you have "use ModeX for 320 resolutions" set in your DirectDraw control panel you might want to turn it off (default is off).

•	Switched back to DirectDrawSurface revision one interfaces, since it's obvious some cards that claim to be DirectDraw 5 compliant are not, and do not support DirectDrawSurface2 or 3. If full screen wasn't working for you, this was probably the reason (and it should work now).

•	Shift-ctrl + keycode is sent properly to Atari machine now.

•	Fixed a potential Windows crash condition when the Atari crashed.

•	Fixed a bug that could cause some cartridge options to not be saved out.

•	DirectDraw mode transitions are a little smoother (one screen size to other).

•	Sound is not restarted on mode changes, but it will still get a little garbled (unavoidable).

•	Various small tweaks and refinements.

•	Source code released (this doesn't imply it is done).

06-28-98

Ver 2.1

•	The SIO patch option is now configurable on the fly; it doesn't reboot the machine. Besides the hardware dialog you can flip it with F11.

•	Hardware dialog was reworked to display better on small screens. Antic dialog is gone; its contents are on the Hardware dialog now.

•	Now using better artifacting code from Perry (text mode still doesn't work)

•	Volume will not be set on MMsystems that can't handle it (what's up with THAT anyway? Seems to be true for ancient SoundBlasters. Ugh). Volume slider will be disabled on these systems.

•	Fixed SKSTAT handler (could cause missing keystrokes, missed reads of SHIFT).

•	Any nagging sound initialization problems people were having should be fixed.

•	Added 48Khz sound output. Most sound cards probably don't support this; and the WaveOut functions can NOT check for this capability ahead of time, so be prepared for it to fail. It really rocks on my SoundBlaster PCI64 though; makes a huge difference for disk access noises and high frequency stuff.

•	Joystick dialog differentiates between "none" and "keypad". Keypad can only be assigned to one port, and should always work. On 101 keyboards the arrow keys WILL work as Atari arrow keys regardless of keypad setting. I'm doing it the pristine MSoft way now; so if it still doesn't work on your keyboard, well, sue Bill Gates or something.

•	Woohoo! Autoduel works! Use 130XE, SIO patch off, and you'll want to have F8 (full speed) most of the time. One of the best games ever out of Origin.

•	Took out the internal Atari UI until it can be reworked. Too fugly with the first quicky attempt; and besides it doesn't do anything the Win UI doesn't.

•	Joystick button 2 (if available) flips between full and regular speed (same as keyboard F8). Button 3 pauses/unpauses (keyboard F9). Button 4 flips the SIO patch (keyboard F11). Yes, I will make these configurable later on.

•	Pausing the emulator now shades the screen 50%.

•	Reorganized CPU code for both (slight) speed and size improvement.

•	Fixed SIO bug in drive status (DCOMND 0x53).

06-21-98

Ver 2.0

•	Special mention: Seven Cities of Gold works fine now (you'll have to turn off the SIO patch to generate a world disk). Perry M. found the bug that was keeping it from running. Kewl.

•	Built with MFC dynamically linked instead of statically. This makes the exe much smaller. If you get a DLL not found message download this file: http://activex.microsoft.com/controls/vc/mfc42.cab. If you have Internet Explorer it can install it automatically. If you don't, get the Powertoys Cab Viewer at http://www.microsoft.com/windows/downloads/contents/powertoys/w95cabview/default.asp.

•	Last directory for disk images is remembered even when using ctrl-F1, ctrl-F2, etc. Drives selected with ctrl-F? are saved in registry.

•	Keyboard joystick can be configured to automatically release when key is released (joystick dialog). This setting is saved between sessions.

•	Using relative pathnames for OS images will no longer confuse dialogs.

•	Bad rom paths/names will show a specific dialog about the failed file and will not cause two boot failures in a row.

•	I think all remaining inconsistencies in graphics/hardware dialogs are gone, and the behavior of the graphics dialog is slightly different to be less confusing (de-selecting windowed mode automatically selects fulls screen mode instead of the other windowed mode).

•	Failure to boot (bad roms) several times in a row won't get Atari800Win stuck at a black screen, or leave the hardware dialog up.

•	If individual registry keys are missing/corrupt, they will be replaced with reasonable defaults (after warning the user) so booting proceeds normally next time.

•	Fixed a problem that could cause the small dialogs used for graphics selection in 320xXXX modes to not actually switch until Alt-Enter was hit.

•	Windowed modes now clip the extraneous overscan area like other versions – at a price of about 1ms per screen blit to adjust the bitmap size (internally the screen is still 384x240 for emulation accuracy).

•	2X stretched non-directdraw window modes are now much faster, but unless you have an AGP graphics card, will almost certainly cause your sound to break up. GDI is only so fast.

•	Window/Full screen state changes with alt-enter are saved to registry.

•	All strings moved into the string table. This means Atari800Win should now be VERY easy to translate to other languages. I'm looking for people to do this, if interested, e-mail.

•	The "dont show" flag works for the joystick dialog.

•	Added a "Clear all settings" menu entry under the "Misc" menu. Basically resets everything to first-run defaults.

•	Fiddled around reducing code size, got it below 200K with dynamic MFC.

•	Fixed annoying DirectInput acquire bug.

•	Added support for four joysticks, although I haven't tested this. Each joystick device can only be used for one Atari port (and the selection dialog will enforce this). Note the XL/XE machines don't use joystick ports 3 and 4 (although you can still configure them).

•	When saving the sound to a file, it is now automatically saved in WAV format (audio format is PCM, 8bit/mono, at whatever the sample rate is).

•	Further refined the joystick read routines to avoid 8-bit programs that are pounding on the joystick ports with reads (which gives DirectInput fits).

•	Fixed a bug that occurred when setting the sound volume to 100%.

•	The DirectDraw object is released when transiting modes, so if you start full screen, then go to GDI window, you can run another DirectDraw app without conflicts.

•	Bad screen dimensions fixed when going from DirectDraw stretched window to a full screen mode via Alt-Enter.

•	Realized the timer was off (it wasn't counting time outside Atari800Win properly), so fixed that. Also decreased the frequency of refresh for the speed % window, and put it back to an integer percentage.

•	Changed the way screen refresh works when skipping some updates, so that Atari800Win (unlike other Atari800 versions) doesn't suffer any loss of emulation accuracy when skipping frames. Given this, I highly recommend people with speed problems set refresh=2, which still gives a minimum of 25 fps.

05-03-98

Ver 1.9 (beta 2)

•	Source merged in with main Atari800 project (excepting Win specific modules). There is an effort by the various programmers involved now to keep in touch and work out problems together.

•	mmsystem (waveOut) sounds were reworked and sound great, even under NT. Thanks to Darek Mihocka on suggestions that led to this working. Default sound is now mmsystem and Dsound options have been removed until I can clear up various problems some systems have with primary mode.

•	POKEY interrupts implemented. Berzerk speech works, as well as other special pokey effects.

•	Sound is disabled when running full speed, since mmsystem and Dsound both get far too unstable when the Atari is running 5X or higher.

•	Added "Pokey update divisor" to Sound dialog. Set this higher for LOWER frequencies. This affects games that pound on Pokey to do things like speech. For most apps, high values (262 for NTSC, 312 for PAL) are fine. For Berzerk etc, you want to lowest number that doesn't cause problems. If you hear buzzing at 44Khz, set this to 2 or higher.

•	Frame to frame timing is now very precise compared to previous versions, using either the CPU cycle clock (on a Pentium processor under NT) or the PC 1.19Mhz timer. As a side benefit the timer code is also faster.

•	Display width has been limited to 336 pixels. For now you will see black borders anyway in windowed modes. This is because of some very brain-dead behavior in StretchDIBits, which is 3x slower when clipping a blit rectangle instead of just blitting the whole thing. This does not affect DirectDraw full screen modes.

•	When the emulator is running "ahead" of the emulated Atari, it will return more time to Windows, making it easier to multitask with other programs in the background. Currently it's 25% of a P233 under NT.

•	Sound now has a latency of 2 frames from the initial point it is played. This improves stability in all sound modes (less crack ups etc) but of course adds the latency (40 or 34ms for PAL and NTSC respectively).

•	After exhaustive testing of various stretched windowed modes, I have picked what seemed like the best overall performer. On all machines I could test with this method is an improvement over the older one. Some cards, including my own NT machine Matrox Millenium, just don't stretchblt well. Even when doing it VRAM to VRAM. Anyway, DirectX windowed 768x480 mode is now much faster than GDI 768x480. Try setting refresh rate = 2 for speed (which still gives you 30 or 25fps in NTSC/PAL respectively ).

•	A bug that could cause incorrect output to the error log was fixed.

•	The built-in UI of Atari800 is now supported, although redundant. Access it using Ctrl-Space while the emulator is running. I did this in case anything gets implemented in the UI later that I dont cover, and also because I think it's cool to have the UI run on the Atari :-).

•	Removed PILL option from cartridge dialog; it confused people too much. It's still available from the Atari800 UI.

•	Fixed a bug in the hardware dialog (loosing track of ROM name selected).

•	Now reads the command line (even as a GUI app) much like other Atari800 ports. The exception is "-configure", and "-help", which don't exist. However you can use the command line to set other parameters and disks. Values accepted on the command line will be saved to the Registry.

•	The Atari HELP key exists – use the ` key. I couldn't use F1 because that will (someday) be Windows Help.

•	Added checkbox for SIO patch in Hardware dialog (turn off for some games).

•	For the 100th time folks: It is NOT a bug that games play at a different speed under NTSC than they do under PAL. This is really the way it was with a computer sync'd to VBLANK. I'm tired of getting this e-mail :-).

•	The speed counter is now more accurate.

•	Volume slider works for WaveOut functions also now. This will set a volume relative to what your master volume is in the Win Volume Control (e.g. full slider in Atari800Win is 100% of your current volume setting).

•	MFC is dynamically linked, to limit size of EXE. If anybody gets a DLL not found on load e-mail me. If you have installed any modern Microsoft app this is pretty unlikely though.

•	Alt-Enter flips between DirectDraw full screen and windowed mode.

03-21-98

Ver 1.9 (beta release)

As the title suggests, this is considered a beta. It is much more functional than the previous version, and in general more stable, but there are things I would like to look into before finalizing this to version 2.0. I am specifically looking for bugs in the user interface and use of atari800win vs. the other Atari800 emus, for instance if it works in DOS but not in Win95.

•	The biggest change is building from the 0.9.0 Atari800 code base. This means a huge list of changes to the emulator core; basically, it's much better now. P/M graphics and collisions in particular are really working well.

•	CPU core updated along with above changes. It's very good now, but still not perfect (7Cities of Gold still doesn't work! auuugh!).

•	Some inconsistencies in disk drive dialogs corrected.

•	Large-format ATRs can be read – use MyDos45 (Atari DOS won't read them).

•	Keyboard as joystick problem fixed (and the NT users say, "yea").

•	Better recovery from lost Dsound buffers while in Primary mode.

•	Hardware dialog reworked to fit better for those running 320x240 screens.

•	Added kludgy ANTIC mode f (that's graphics 8 for you Atari BASIC weenies) "artifacting". You can set the colors created and turn the effect on an off via the Atari/Antic menu. This needs to be implemented for character modes as well, but I haven't done that yet.

•	Various small performance increases. There must be a better way to stretchblt the 768x480 modes (actually, I know there is for sure in DDraw, and I need to change that – but look into GDI as well).

•	Spent hours finding a bizarre memory tromp bug. Doh.

•	SIO command 0x21 works. What's that? Oh, nothing much – just disk format :-). You need to have a file to mount first, so copy an existing .ATR file, then mount it, and tell the Atari to format it – voila.

•	Things that need to be added: a monitor, find out what's still wrong with 6502, look at various SIO bits that I think aren't right (GTIA and P/M, DLI all seem GREAT now, much better than XL-it! for example).

09-16-97

Ver 1.4

•	Big changes to the sound code in DirectSound. When hardware sound buffers are present, Atari800Win now writes directly to the sound card, not using the DSound mixer at all. This sounds just about perfect at a good sample rate (e.g., 32Khz) when running at 100% speed. It's very demanding of the sound card though. Many other internal code changes were done to facilitate this as well, but I have tested it fairly extensively (on SoundBlasters that is).

If you are not getting 100% speed consistently, your sound will NEVER be quite right. Try different modes until you get one that you can run 100%.

•	Rearranged code so that all "wait time" (time wasted because the PC is ahead of where the Atari would be) is spent monitoring the sound buffers, checking to see if they need to be refreshed. This should make sound marginally better in most cases and improve sound handling on slower machines. Note however that if you aren't getting 100% speed, your sound will never be right. Also because sound isn't interrupt driven, it will blip now and then. Not much can be done about this given the current capabilities of Win32 and the very high mix rate.

•	You can record sound files with actual sound play turned off now (you won't hear them, but they record with your current settings). Mostly for NT users.

•	Sound buffers will be dynamically resized to match the emulation speed. This means that machines that are running a little slow should sound a little less bad and fast machines running at full speed will sound relatively comical. This is not perfect, and is only recomputed every 60 frames, but it should be better for both slower and faster speeds. The right way to do this would be a frequency shift, but that would be just horrendously expensive processing (although it would give it that goofy chipmunk playback quality).

•	Found what was slowing some games way down. For reasons unknown (I'm looking into it) some Atari programs are sampling the joystick ports at an incredibly high rate – much faster than the ports themselves could change. This was giving DirectInput fits as it tried to read the joystick a few thousand times a second. I re-worked the joystick reading system to avoid this problem, but haven't figured out why the Atari hardware is doing that though.

•	Along with above definitely have joystick repeat/skip options working right now.

•	Fixed condition that would disallow 768 windowed modes when some of the "Don't show this" dialog boxes had been set off.

•	Registry could get an erroneous HKEY_CURRENT_USER entry under the already existing HKEY_CURRENT_USER\Software level. Actually it wasn't _my_ code that was doing this, but I fixed it anyway. So there.

•	Rearranged display module so only the code required for the exact mode being displayed will execute (via a pointer to a function). This might result in very small performance gains, but definitely results in easier to read code.

08-26-97

Ver 1.3

•	Argh. Had managed to create a condition that under certain circumstances would cause a crash on boot. Fixed that, and since it could affect new users I'm immediately releasing this.

08-24-97

Ver 1.2

•	<Drum roll please>...Sound works! At least if you have a card that supports hardware mixing, and run it at 32Khz, primary mode (which is now the default). It will still occasionally blip a little bit, but on the whole it sounds great. Thanks to Ron Fries for putting up with my questions on this.

•	Volume control for DirectSound actually works for whole range instead of 10% like before :-).

•	Added "Force Primary" option to Sound Dialog, removed buffer management. Buffers are computed internally now. "Force Primary" causes Atari800Win to always completely own the sound card when running. It is less friendly to other tasks but works better. If you need to share the DirectSound object with another task, de-select this and use 22Khz mode (which doesn't sound very good...).

•	Fixed a potential race condition when fooling with the refresh rate.

•	DirectDraw Windowed mode is now accelerated in 768x480 for all bitplane depths. It will still, however, be too slow for full speed emulation on most machines.

•	640x400 through 800x600 are checked ahead of time and disabled if unavailable. If this happens, you really need to get a different video card. I left ModeX modes enabled. Some cards that report ModeX as available from the DirectDraw control panel will not work (they allow you to switch to the mode, but fail when any operation is attempted. Yippee).

•	Poor clipping behavoir in DirectDraw windowed modes is corrected.

•	When bringing up a drive dialog, the directory of the dialog box will be that of the last directory used for that drive position.

•	Generally smarter about failure conditions when trying something in DirectDraw that didn't work – allows you to continue to use the emulator now in normal mode.

•	Fixed a metricing problem in windowed mode that was causing one extra pixel line (I hate those).

08-13-97

Ver 1.1

•	Fixed keyboard mapping problems.

•	Running at full speed works, can be toggled with the button on the Hardware dialog or by just pressing F8 (both on/off). Pretty funny to watch the Atari run at 10-15X speed on a P200.

•	Fixed DirectInput focus problems when running windowed with a joystick and switching to another window.

•	Sometimes the small (intended for 320xXXX resolutions) hard disk dialog would appear when in windowed mode, this is corrected.

•	Made a feeble attempt at optimizing display writes in large window DirectDraw mode. They are about 5X faster in 16bit modes now, but no faster in 24/32bit. And they still aren't fast enough (nor will they ever be, I think). Basically you're not going to run a large window at full speed. Well, you might be able to in 16bitplane mode with a REAL fast machine. Compensating for the 5551 and 565 modes when on a 16BPP desktop is a _real_ pain in the ass. I gave up on 24BPP. It's just too slow anyway, don't run in a stretched window under 24bpp!

•	When unfocused (you click on another window) the emulator will just pause now. This keeps it from drawing over top of windows in DirectDraw windowed mode, and when using standard sound drivers makes it quiet down.

•	Fixed a condition that could cause you to have to exit/enter again to make a new cartridge work. Changing cartridges on the fly works fine now.

•	Oops, I had broken printing. Fixed now (prints a bitmap of the page basically).

•	Ctrl + Function key now brings up a dialog to select the floppy for that drive. So Ctrl + F1 sets the drive file for D1:. You can cancel the dialog of course to preserve the existing drive (good idea from Robert Hagenstrom).

•	Found and eradicated two small (2K) memory leaks.

•	The 5200 is working now exactly as well as in Unix Atari800. This means you can bring up title screens :-). David hasn't done the 5200 controllers yet. However, you can flip back and forth from 5200 to Atari 8-bit to your hearts content.

•	Hold down option is now the default (just TOO much confusion over this one).

08-08-97

Ver 1.0

First public release.


Requirements

•	Pentium 75 MHz or better processor

•	Windows 95/98/Me/NT/2000 with DirectX

•	4 MB RAM available

•	a sound card supported by Windows (optional)

•	a joystick supported by DirectInput (optional)

If you're not sure about your performance, after installation use the View/Performance test and Sound/Performance test options. You should be getting < 10ms for graphics and < 2ms for sound.

See also

Installation

Installation problems

How to improve performance


Installation

There is no separate setup program for Atari800Win PLus. You should extract the ZIP file into the directory, where you want the emulator to be installed (e.g. “C:\Program Files\Atari800Win PLus”).

Then run Atari800Win.exe. As you run it for the first time on the computer, the Setup Wizard opens. If not, invoke it with Help/Setup Wizard (Alt+W).

Press F1 in the Setup Wizard to read of how to continue the installation.

See also

Installation problems

Uninstallation

Setup Wizard


Installation problems

Q. Where can I get Atari ROMs?

A. We are not allowed to distribute them with Atari800Win PLus.

You may:

•	Extract the ROMs from your Atari computer:

⇒	Atari Basic (8192 bytes between $a000 and $bfff)

⇒	Atari OS/A (10240 bytes between $d800 and $ffff)

⇒	Atari OS/B (10240 bytes between $d800 and $ffff)

⇒	Atari XL/XE (16384 bytes between $c000 and $ffff)

⇒	Atari 5200 (2048 bytes between $f800 and $ffff)

or

•	Find an emulator that is distributed with the ROM images (e.g. Xformer 2.5).

Note: If you are extracting the Atari XL/XE OS you will find that the ROM area under the custom chip ($d000 to $d7ff) are mapped between $5000 and $57ff when bit 7 of PORTB is set to 1, i.e. you should set bit 7 of PORTB and then dump the memory out in the following order:- $c000 to $cfff, $5000 to $57ff and finally $d800 to $ffff.

Q. I get something about MFC42.DLL or MSVCRT.DLL not found or wrong version.

A. This should be rare (these are common DLLs used by many Microsoft products, and so are often already installed). However if you see this problem download this file: http://activex.microsoft.com/controls/vc/mfc42.cab. If you have Internet Explorer it can install it automatically. If you don't, get the PowerToys Cab Viewer at http://www.microsoft.com/windows/downloads/contents/powertoys/w95cabview/default.asp and install it (it's quite small and useful besides). Not including these files by default makes Atari800Win much smaller and easier to download for the majority of people who already have them.

Q. How about not found on DINPUT.DLL, DDRAW.DLL, DSOUND.DLL?

A. You do not have DirectX installed correctly. Re-install DirectX 5.0 or higher if you have Windows 9x, or install Service Pack 3 or higher if you have NT 4.0.

See also

Installation

Frequently Asked Questions


Uninstallation

If you have created shortcuts in the Start Menu or on the Desktop, you can delete them manually. Or you can have them deleted by the Setup Wizard.

If you have associates some file types with the emulator, you can remove the associations with File Associations or the Setup Wizard.

The emulator consists only of the files that you have extracted from the ZIP file. Therefore in order to remove the emulator you only need to delete these files.

See also

Installation

File Associations dialog box

Setup Wizard


Main window

When you run the emulator in a window, you can see the title bar, the menu bar, the screen of emulated Atari and the status bar:

When running on full screen, you don’t see a title bar, and the information about emulated machine is shown on the status bar.

In some full-screen modes only the Atari screen is visible. In this case, press Alt to activate both menu bar and status bar.

Title bar

It displays the emulator’s name, version and current state:

•	In normal state, shown are the name of emulated machine and amount of its RAM, e.g. 800XL (64 KB).

•	‘Stopped’ means that either the menus/dialogs are in use or the emulator is not the current application (and Misc/Task control/Stop when inactive option is enabled).

•	In pause mode, ‘Paused (F9 to continue)’ is shown.

•	While running the monitor console, ‘Running monitor’ is shown. The main window is inactive while using the monitor. Type ‘cont’ in the monitor window to close it and return to the emulation.

•	If a ROM image required for selected machine is missing, ‘Initialisation failure’ is shown. It means you should go to ROM Image Selections dialog box to configure ROM images or select another machine (for which you have the ROM images) from the Atari menu.

•	‘Not running’ means that the Atari machine has crashed. See The Atari program does not work... for hints.

You can use the Maximize ( [image]) button or double-click the title bar to toggle between normal- and double-sized window.

Menu bar

There is File menu, Atari menu, Input menu, View menu, Sound menu, Misc menu and Help menu.

Note you can only use Alt+F to open the File menu. Alt+A, Alt+I, Alt+V, Alt+S, Alt+M and Alt+H are shortcuts to some commands, not the menus. You can press Alt and then use arrows to select any menu. However, most of menu functions have shortcut keys. See Keyboard shortcuts for complete list.

Atari screen

Here is shown the screen of emulated machine.

In a window, full Atari screen including the overscan area is visible. In a full screen mode it can be partially clipped. See Graphics Options dialog box for details.

To change colors used on Atari screen, use Palette Options dialog box.

Optionally a drive activity indicator in bottom-right corner can be displayed during disk operations.

The indicator is the number of accessed disk drive, and is green for a read operation ( [image]) and red for a write operation ( [image]).

Use View/Show/Disk drive activity to toggle disk indicators.

Status bar

It shows speed the emulator runs at, in percents of original Atari speed.

Optionally, State indicators can be shown on status bar.

While accessing the menus, the status bar shows description of selected menu item.

See also

State indicators

Drag and Drop support


The system menu

Click to expand it.


The title bar

Double-click to toggle between normal- and double-sized window.


The minimize button

Click to minimize the window.


The maximize button

Click to toggle between normal- and double-sized window.


The close button

Click to exit the emulator.


The menu bar

Use the left Alt to activate it.


The screen of emulated Atari

As you can see there is the “Drunk Chessboard” intro in action.


The drive activity indicator

It is displayed during disk operations.


The status bar

It shows speed the emulator runs at, in percents of original Atari speed.


State indicators

The state indicators are small icons displayed on the status bar.

To enable/disable display of state indicators

Use View/Show/State indicators (Alt+I).

Purpose and usage

The main purpose of indicators is to inform about current state of the emulator. You can position the mouse cursor over an icon to display text describing the icon.

You can toggle the option the icon represents, by double-clicking the icon. Use left button to toggle options in normal order and right button to toggle in reverse order. For two-state options there’s of course no difference between double-clicking with left and right button. Note all options that can be toggled by state indicators, can be also toggled with a menu option, and some of them with a shortcut key too.

Description of icons

Icon	Indicates that
	The emulator is not running Atari at the moment (it has been paused, for example).
	The emulator is set to run at constant rate of original Atari speed (typically 100%). Go to Performance Options dialog box to set a rate of 50%, 200% or other.
	The emulator is set to run as fast as possible.
Tip: You can use Atari/Options/Full speed (F7) to toggle between constant and full speed.

	The emulated machine’s video system is NTSC.
	The emulated machine’s video system is PAL.
Tip: You can use Atari/Video system (Alt+V) to toggle between video systems.

	Fast disk/cassette access is disabled.
	Fast disk/cassette access (SIO patch) is enabled.
Tip: You can use Atari/Options/SIO patch (F11) to toggle the SIO patch.

	A gray icon means the mouse is not captured (it emulates no device at the moment).
	No device is selected to be emulated with the mouse.
	Mouse emulates paddles.
	Mouse emulates Atari touch tablet.
	Mouse emulates Koala pad.
	Mouse emulates light pen.
	Mouse emulates light gun.
	Mouse emulates Amiga mouse.
	Mouse emulates Atari ST mouse.
	Mouse emulates Atari trak-ball.
	Mouse emulates joystick.
Note: Double-clicking the icon only selects the device to be emulated. To enable/disable emulation of the device use Input/Capture mouse (F12).

Tip: You can select the device from Input/Mouse device or Mouse Options dialog box.

	Autofire is disabled.
	Autofire is fire-dependent (autofire when joystick button is pressed).
	Autofire is continuous.
Tip: You can use Input/Autofire (F6) to toggle autofire mode.

	Video recording is off. Double-click to start recording.
	Video recording is on. Double-click to stop recording.
Note: Currently video recording is supported only in a GDI mode, so you have to select a windowed mode and the GDI for windows option must be enabled.

Video recording can create very large files over time. If you turn it on, don’t forget to turn it off later!

	Sound recording is off. Double-click to start recording.
	Sound recording is on. Double-click to stop recording.
Note: Sound recording can create large files over time.

See also

Main window


Drag and Drop support

You can drag and drop Atari executables, disk images, cassette images, cartridge images and state files to emulator’s window. After dropping a file, you need to activate the emulator’s window by clicking on it. The dropped file will be run.

If the dropped file is a disk image, it is attached to the drive 1 and the Atari is rebooted (as if by Atari/Reset/Cold (Shift+F5)). You can disable rebooting by holding the Shift key while dropping the image.

Drag and drop is an easy way of running files – you don’t have to select different menu commands nor associate file extensions with the emulator.

See also

Supported file formats

File Associations dialog box


Keyboard - overview
Keyboard – Overview

The emulator uses your PC keyboard for:

•	emulating the Atari keyboard

•	emulating Atari joysticks

•	shortcuts to menu commands

Emulating the Atari keyboard

There are two modes:

•	Default keyboard layout.

In this mode the key mappings are fixed. The concept is try to match the functionality of keys. This was done to avoid confusion from users who are much more familiar with their Windows keyboard than an Atari one, so that the key they saw hit was the key that got typed. Example: you press Shift+2 and get ‘@’ (which is Shift+8 on Atari).

•	Keyboard template.

When using a keyboard template, the behavior is to match physical keys. The mapping of Atari keys (with modifiers like Control or Shift) to PC keys is user-defined. The Default keyboard layout method allows for different keyboard functionality for each modifier key that is held down. With keyboard templates, the key defined will simply be sent to the Atari along with the fact that Control or Shift (or both) were held down as well.

Emulating Atari joysticks

There are two standard sets of keys used for joystick emulation, and two user-defined. Note that keys used for joystick emulation lose their normal functionality. For details, see Joystick Options dialog box.

Shortcuts to menu commands

You can invoke many commands with a single keystroke. See Keyboard shortcuts for complete list.

See also

Keyboard shortcuts

Default keyboard layout

Joystick Options dialog box

Keyboard templates (A8K)

Keyboard Options dialog box

Keyboard Template dialog box


Keyboard shortcuts

F1	Context-sensitive help
Shift+F5	Turn emulated Atari off and on (cold reset)
F6	Toggle between autofire modes
F7	Toggle full speed mode
F8	Invoke the monitor console
F9	Toggle pause mode
F10	Save screenshot to PCX file
Shift+F10	Save interlaced screenshot to PCX file
F11	Toggle SIO (fast disk/cassette access) patch
F12	Toggle emulating a device with the mouse
Alt+0	Detach disk images from all drives
Alt+1	Attach a disk image to drive 1
Alt+2	Attach a disk image to drive 2
Alt+3	Attach a disk image to drive 3
Alt+4	Attach a disk image to drive 4
Alt+5	Attach a disk image to drive 5
Alt+6	Attach a disk image to drive 6
Alt+7	Attach a disk image to drive 7
Alt+8	Attach a disk image to drive 8
Alt+A	Toggle between artifacting modes
Alt+B	Autoboot image
Alt+C	Attach a cartridge image
Alt+D	Invoke the Drive Selections dialog box
Alt+E	Invoke the Atari Settings dialog box
Alt+G	Invoke the Graphics Options dialog box
Alt+H	Invoke the Pick Virtual Hard Disk Directories dialog box
Alt+I	Toggle display of state indicators
Alt+J	Invoke the Joystick Options dialog box
Alt+K	Invoke the Keyboard Options dialog box
Alt+L	Read a saved-state file
Alt+M	Invoke the Mouse Options dialog box
Alt+N	Try to attach the next disk image to drive 1
Alt+O	Enable/disable stereo sound support
Alt+P	Invoke the Performance Options dialog box
Alt+Q	Disable/enable sprite collisions detection
Alt+R	Invoke the ROM Image Selections dialog box
Alt+S	Invoke the Sound Options dialog box
Alt+T	Attach a cassette image
Alt+U	Turn on/off the sound playback
Alt+V	Toggle between emulated video-systems (PAL/NTSC)
Alt+W	Invoke the Setup Wizard
Alt+X	Load an Atari executable file
Alt+Y	Toggle between machine types
Alt+Z	Save a state file
Alt+Enter	Toggle between the windowed and full-screen mode

See also

Keyboard – Overview


Default keyboard layout

The picture below shows real keyboard of XE models:

                                                                                picture by Zdenek Eisenhammer

Differences among other models:

•	800 XL has same keys, but Help, Start, Select, Option and Reset are placed vertically on the right side of other keys,

•	1200 XL additionally has F1, F2, F3 and F4 function keys,

•	800 has no F1-F4 nor Help key, the Inverse key (the one in the bottom-right corner) is marked with the Atari logo, but has the same functionality,

•	5200 has no keyboard, however each joystick has its own keypad (see below).

The general philosophy in keyboard layout is to assign the functionality (not the location) of the Atari key to the equivalent PC keyboard key.

The reason for this is it can be very confusing to have to hit Shift+2 to get a doublequote character when there is sits staring at you from a key on the PC keyboard. So in general, look for it where it is on the PC keyboard, type that, and it will appear. However some keys that exist on the PC have no equivalence on the Atari and will do nothing, such as { and }.

PC keystroke	Atari keystroke	Description
Esc	Esc
F2	Option
F3	Select
F4	Start
F5	Reset
Pause Break	Break
0-9	0-9
Shift+2	Shift+8	types ‘@’ character
Shift+6	Shift+’*’	types ‘^’ character
Shift+7	Shift+6	types ‘&’ character
Shift+8	*	types ‘*’ character
-	-
Shift+’-‘	Shift+’-’	types ‘_’ character
=	=
Shift+’=’	+	types ‘+’ character
Backspace	Backspace
Tab	Tab
A-Z	A-Z
[	Shift+’,’	types ‘[‘ character
]	Shift+’.’	types ‘]’ character
Caps Lock	Caps
Shift+Caps Lock	Shift+Caps
;	;
Shift+’;’	Shift+’;’	types ‘:’ character
'	Shift+7	types ' (apostrophe) character
Shift+’”’	Shift+2	types ” (doublequote) character
Enter	Return
Shift+’<’	<	types ‘<’ character
Shift+’>’	>	types ‘>’ character
\	Shift+’+’	types ‘\’ character
Shift+’\’	Shift+’=’	types ‘|’ character
Insert	Control+’>’	inserts space
Shift+Insert	Shift+’>’	inserts blank line
Home	Shift+’<’	clears screen
Page Up	Shift+Caps
Delete	Control+Backspace	deletes character
Shift+Delete	Shift+Backspace	deletes line
End	Inverse (XL/XE) / Atari key (800)
Page Down	Help (XL/XE)
Left Arrow	Control+’+’	moves cursor left
Right Arrow	Control+’*’	moves cursor right
Up Arrow	Control+’-’	moves cursor up
Down Arrow	Control+’=’	moves cursor down

Note: Function of arrow keys can be changed in Keyboard Options dialog box.

PC key	Atari 5200 joystick key
F4	Start
P	Pause
R	Reset
0-9	0-9
* (either keypad or regular keyboard)	*
- (keypad or regular keyboard)	#
Shift	2nd button

Note: The same keys are used for all 5200 controllers, that is, pressing a key presses it on all controllers simultaneously.

See also

Keyboard – Overview

Keyboard Options dialog box


File menu

This menu contains commands for opening Atari programs (executables, disk images, cassette images or cartridges), and state loading/saving.

This is the only menu, which can be opened at any time with single keystroke, which is Alt+F (as you can see, only the letter F in File in the menu bar is underlined). To access other menus from keyboard, hit Alt and use arrow keys.

To automatically start an Atari program

In version 3.0 there’s new command Autoboot image (Alt+B). It attempts to recognize the type of the file (if it’s an executable, a disk/cassette/cartridge image or a state file) and then run it. The command is especially useful for disk and cassette images, because it boots them (note not all disk/cassette images are bootable).

To load an executable

The Load Executable (Alt+X) command runs an Atari executable, no matter what the current state of emulated Atari is, i.e. you don't need to load an Atari DOS to run an executable.

See Atari executable binary files (XEX, COM, EXE) for details.

To insert a disk image to Atari drive

The Attach disk/Drive 1-8 (Alt+1-8) command inserts a disk image to an Atari drive. Note it only attaches a disk image to a drive, it does not start loading.

The Atari/Disk drives (Alt+D) command opens the Drive Selections dialog box, where you can see, what disks are currently in drives and insert/remove a disk.

To turn the disk in drive 1

The Turn disk (Alt+N) command is available only if a disk image is attached to drive 1. This command is useful, if software you're using comes on several disk images – for example there are many Atari programs that come on two sides of a disk and you have to turn the disk when you're prompted. Without this option, you have to attach the images with File/Attach disk or Atari/Disk drives.

The Turn disk command works in a simple way. It ‘increments’ the last character (a letter or a digit) of current disk image name (not the extension), until an existing disk image is found. If letter 'z' or digit '9' is reached, searching starts from beginning ('a' and '1' respectively).

For example, if you have two disk images:

Serious 6a.atr

Serious 6b.atr

and the first one is currently attached to drive 1, pressing Alt+N attaches Serious 6b.atr. Next time you press Alt+N, Serious 6a.atr image is attached back.

To insert a cassette image

Use Attach tape (Alt+T).

To insert a cartridge image

The Attach cartridge (Alt+C) command inserts a cartridge image to the emulated Atari computer.

To release a disk/cassette/cartridge image

Use a suitable Detach command. A Detach command is available only if there’s an image attached. You can clear all disk drives with Detach disk/All (Alt+0).

To save current state of Atari and restore it later

The Load state (Alt+L) command restores whole state of emulated Atari from a state file.

The Save state command saves current state of emulated Atari in a state file. Normally you may use Normal (Alt+Z) mode. Use Verbose if you want to include current ROM images in the state file.

To quit the emulator

Use Exit (Alt+F4).

See also

Atari executable binary files (XEX, COM, EXE)

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

Cassette images (CAS)

Cartridge images (CAR, ROM, BIN)

State files (A8S)


Select Cartridge Type

This dialog box appears when you must select cartridge type. The size of selected cartridge image is checked first, so you only select from types that match this size.

See also

Cartridge images (CAR, ROM, BIN)


Select cartridge type from this list.


Description of selected cartridge type.


Click OK to continue with selected cartridge type.


Click Cancel to abort the operation.


Atari menu

To select emulated machine

Select a machine type from Machine type submenu or use Alt+Y to toggle between all types.

The Memory size submenu is for selecting RAM size. The RAM size may be set independently for each machine type (different types allow different memory sizes).

See Emulated machines for detailed description of emulated Atari computers.

To change TV system of emulated machine

•	Select it from Video system submenu.

or

•	Use Alt+V to toggle between NTSC and PAL.

To enable/disable Atari BASIC, ROM patches

Select Settings (Alt+E) to open Atari Settings dialog box.

To set speed of emulation and frame rate

Select Performance (Alt+P) to open Performance Options dialog box.

To toggle between constant and full speed

•	Select Options/Full speed (F7).

or

•	Double-click the left-most state indicator.

To pause/resume emulation

Select Options/Pause (F9).

To enable/disable fast disk/cassette access

•	Select Options/SIO patch (F11).

or

•	Double-click fast disk/cassette access indicator.

See ROM patches – Overview for more information.

To setup ROM/disk/cassette images

The ROM images (Alt+R) command opens the ROM Image Selections dialog box.

The Disk images (Alt+D) command opens the Drive Selections dialog box.

The Tape player command opens the Cassette Control dialog box.

To set paths of virtual hard disks

The Hard disks (Alt+H) command opens the Pick Virtual Hard Disk Directories dialog box.

To reset the Atari

•	For warm reset (pressing Atari Reset key): Select Reset/Warm (F5).

•	For cold reset (turning Atari off and on): Select Reset/Cold (Shift+F5).

The difference between warm reset and cold reset

The Atari computers have the Reset key. Unlike in a PC, pressing it not necessarily clears whole memory (it’s up to the running program). For example in Atari BASIC, only a running program is aborted and the screen is cleared.

Cold reset always clears memory and reboots (starts reading from disk drive 1).

Note: The Atari 5200 console has no key for hardware reset, so F5 works same as Shift+F5 for it. There’s a Reset key, but it acts as a regular key and is mapped to R on the PC keyboard.

See also

Atari Settings dialog box

Performance Options dialog box

ROM Image Selections dialog box

Drive Selections dialog box

Cassette Control dialog box

Pick Virtual Hard Disk Directories dialog box


Atari Settings dialog box
Atari Settings

To open this dialog box

Use Atari/Settings (Alt+E).

Note

No option in this dialog box affects the Atari 5200 console emulation.

To enable/disable Atari BASIC

Use Disable BASIC when booting Atari checkbox.

This option has similar effect, but works different ways on 800 and XL/XE machines:

•	on Atari 800 – the BASIC cartridge is simply not inserted into the cartridge slot, i.e. you have no access to Atari BASIC,

•	on XL/XE – the Option key is being held while booting, which forces the OS to disable the built-in BASIC. However, the BASIC can be enabled by Atari software.

To enable/disable a ROM patch

Toggle the suitable Enable ... patch option.

To disable write to the hard disk device

The Use H: devices in Read Only mode checkbox indicates if the H: device can be used to write a file. It is strongly recommended that you check off this box, unless you want to write files from emulated Atari directly to your hard disk.

To change behavior of the P: device

Toggle Use alternative print command checkbox.

•	Unchecked means the text written to the P: device is printed by an application associated with text files.

•	Checked means the text is written to a temporary file, which is passed to an application. You can type the path of any application in the text box. %s represents the name of the temporary file. E.g. ‘notepad %s’ causes Windows Notepad to be launched each time a file is written to the P: device. The command is launched when the P: stream is being closed.

For more options

Click Advanced to open Advanced Atari Settings dialog box.

See also

Advanced Atari Settings dialog box

ROM patches – Overview


The Disable BASIC when booting Atari checkbox disables the Atari BASIC interpreter. On XL/XE it is done by holding down the Option key.


The Enable SIO patch for fast disk access option is recommended for speed and is required for cassette emulation. It has no side effects in typical applications.


The Enable H: patch for hard disk devices checkbox enables H: device emulation.


The Use H: devices in Read Only mode checkbox indicates if the H: devices can be used to write a file. It is strongly recommended that you check off this box, unless you want to write files from emulated Atari directly to your hard disk.


The Enable P: patch for printer device checkbox enables P: device emulation.


The Use alternative print command option causes an external program to be launched with the name of a temporary file (%s) containing the text printed by emulated Atari to the P: device.


The Enable R: patch for TCP/IP checkbox enables R: device emulation.


The Advanced button opens the Advanced Atari Settings dialog box.


The OK button applies changes and closes this dialog box.


The Cancel button closes this dialog box without applying any changes.


Advanced Atari Settings dialog box
Advanced Atari Settings

To open this dialog box

Click Advanced in Atari Settings dialog box.

The Options frame

Reboot when cartridge is attached/detached is enabled by default. That’s because you normally insert/remove a cartridge when Atari is off. You can of course do it when the machine is powered, but the computer will stop, waiting for Reset key.

Reboot when video system is changed is enabled by default. That’s because real machines are either PAL and NTSC.

Turn disk drive off when disk is detached is enabled by default. Normally you don’t have to switch a drive off when you remove a disk, but usually it’s convenient. If you leave drive 1 enabled with no disk, then the Atari, when started, prints BOOT ERROR messages.

To enable/disable R-Time 8 emulation

Toggle Enable R-Time 8 (real time clock). The R-Time 8 module is emulated by taking system date and time (changing it by the emulated Atari is not possible). It is especially useful when using SpartaDOS on the Atari. R-Time 8 shouldn’t harm anything, so normally you can leave it enabled.

See also

Atari Settings dialog box.


Check Reboot when cartridge is attached/detached to automatically perform a cold start as you insert/remove a cartridge.


Uncheck Reboot when video system is changed to be able to toggle between PAL and NTSC while Atari is running (it’s not possible with real Atari).


The Turn disk drive off when disk is detached selects if disk drives will be switched off by File/Detach disk commands.


Enable R-Time 8 (real time clock) controls R-Time 8 emulation, which is useful with SpartaDOS.


The OK button applies changes and closes this dialog box.


The Cancel button closes this dialog box without applying any changes.


Performance Options dialog box
Performance Options

To open this dialog box

Use Atari/Performance (Alt+P).

To change speed of emulation

•	Select amount of real Atari speed in Percent of original Atari speed combo box.

or

•	Check Run Atari as fast as possible checkbox.

To change screen refresh rate

Select how often the Atari screen is updated using Screen refresh frequency option.

1 means that every frame is drawn, 2 – every second frame, etc. Use 1 for smooth animation, greater values for speed. This option has great influence on emulator performance.

You can specify other refresh value for double window, if you have much worse performance in this mode. Just check Use different rate for double window and edit the value below.

To improve performance for the cost of accuracy of sprite collision detection use No sprite collisions in skipped frames checkbox.

See also

How to improve performance


The Percent of original Atari speed option selects how fast the emulator should run compared to real Atari machine.


The Run Atari as fast as possible checkbox enables full speed mode. It can be also toggled with Atari/Full speed menu item or the F7 key.


The Screen refresh frequency selects how often the screen is updated. 1 means that every frame is drawn, 2 – every second frame, etc.


The Use different rate for double window option can be used to specify different screen refresh frequency for 672x480 window. It can be useful in case performance in this mode is much lower than in others.


The No sprite collisions in skipped frames option speeds up the emulation for the cost of accuracy of sprite collision detection. This option is available only if refresh rate is greater than 1.


The OK button applies changes and closes this dialog box.


The Cancel button closes this dialog box without applying any changes.


ROM Image Selections dialog box
ROM Image Selections

The ROM Image Selections dialog box contains file names of all ROM images used in emulator, which includes Operating Systems for different machines, the Atari BASIC interpreter and an external cartridge.

To open this dialog box

Use Atari/ROM images (Alt+R).

To configure OS and BASIC images

The text editing boxes show file names of selected ROM images.

The OS-A button locates the ROM image of the Atari 800 Operating System rev. A, which is necessary for emulating Atari 800 OS-A machine. The file must be 10 KB long.

The OS-B button locates the ROM image of the Atari 800 Operating System rev. B, which is necessary for emulating Atari 800 OS-B machine. The file must be 10 KB long.

The XL/XE button locates the ROM image of the Operating System for XL/XE machines, which is necessary for emulating each of Atari 800 XL, Atari 130 XE and Atari 320 XE machines. The file must be 16 KB long.

The 5200 button locates the ROM image of the BIOS for Atari 5200 game console. The file must be 2 KB long.

The BASIC button locates the ROM image of the Atari BASIC interpreter. The file must be 8 KB long.

Originally the BASIC comes on an external cartridge for Atari 800 and is built-in in XL/XE machines.

The Search button searches for all OS and the BASIC images in selected directory and its subdirectories. The files must have the ‘rom’ file name extension.

CAUTION: Because of searching all of the subdirectories of the pointed directory, this process may take a lot of time if the directory's tree is huge. The best is to point directly to the directory containing the ROM images.

The Info button opens a message box with information about selected ROM images.

To attach/detach a cartridge

The Cartridge button selects a cartridge image to be attached.

Select Detached in the combo box to release the cartridge image.

Alternatively, you may use Attach/Detach cartridge commands from the File menu.

See also

Cartridge images (CAR, ROM, BIN)


The text editing boxes show file names of selected ROM images.


The OS-A button locates the ROM image of the Atari 800 Operating System rev. A.


The OS-B button locates the ROM image of the Atari 800 Operating System rev. B.


The XL/XE button locates the ROM image of the Operating System for XL/XE machines.


The 5200 button locates the ROM image of the BIOS for Atari 5200 game console.


The BASIC button locates the ROM image of the Atari BASIC interpreter.


The Cartridge button selects a cartridge image to be attached.


The cartridge mode can be one of following:

•	Detached – no cartridge is in use,

•	Attached – the selected cartridge is in use.


The Search button searches for all OS and the BASIC images in selected directory and its subdirectories. The files must have the ‘rom’ file name extension.

CAUTION: Because of searching all of the subdirectories of the pointed directory, this process may take a lot of time if the directory's tree is huge. The best is to point directly to the directory containing the ROM images.


The Info button opens a message box with information about selected ROM images.


The OK button closes this dialog box. Currently selected ROM images will be used in emulation.


The Cancel button closes this dialog box without applying any changes you have made.


Drive Selections dialog box
Drive Selections

The Drive Selections dialog box controls state of eight disk drives of the emulated Atari.

To open this dialog box

Use Atari/Disk drives (Alt+D).

Note

The Atari 5200 doesn’t use disk drives.

To insert a disk image into a drive

•	Click the button with a drive symbol to locate the file.

or

•	Type the file name in the edit box next to the button.

or

•	Use File/Attach disk.

To set mode of a drive

In addition to file name of disk image, each drive has its mode, which can be one of following:

•	Off – drive is not present,

•	Read/Write – disk image can be both read and written,

•	Read Only – disk image can be only read,

•	No Disk – drive is present, but contains no disk.

ATR images contain internal write protection flag, so if you switch an ATR image to Read Only mode, it will be opened as read only each time you use it. Select Read/Write mode to unprotect ATR image. The mode can be toggled between Read Only and Read/Write as long as the file doesn’t have the ‘read only’ file attribute set in Windows. Files marked with this attribute are always opened in Read Only mode.

To create new disk image

Click New image button to open New Disk Image dialog box, which allows creating new blank disk image and optionally attaching it to a drive.

To remove disks from all drives

The Clear all button detaches all disk images and resets all drives to Off mode.

See also

Disk drive emulation

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

New Disk Image dialog box


Click the button with drive symbol to attach a image to the drive.


The file names of currently attached disk images can be edited in order to attach another image.


The drive mode can be one of following:

•	Off – drive is not present,

•	Read/Write – disk image can be both read and written,

•	Read Only – disk image can be only read,

•	No Disk – drive is present, but contains no disk.

Switching an ATR disk image to Read Only mode enables internal ATR's write protection, making it read-only permanently, until it is unprotected by choosing Read/Write mode.


The New image button opens New Disk Image dialog, which allows creating new blank disk image and optionally attaching it to a drive.


The Clear all button detaches all disk images and resets all drives to Off mode.


The OK button closes this dialog box. Currently selected disk images will be used in emulation.


The Cancel button closes this dialog box without applying any changes you have made.


New Disk Image dialog box
New Disk Image

This dialog box is used for creating new, blank disk images (of ATR or XFD type).

To open this dialog box

Click New image button in Drive Selections dialog box.

To select format of the disk

In the Disk format frame you choose a format of a disk. Note that not all formats are supported by all Atari DOSes. There are three standard formats:

•	Single density (40 tracks * 18 sectors/track * 128 bytes/sector = 90 KB)

•	Medium density (40 tracks * 26 sectors/track * 128 bytes/sector = 130 KB)

•	Double density (40 tracks * 18 sectors/track * 256 bytes/sector = 180 KB)

You can also select any other format, by clicking Custom and setting Number of sectors and Bytes per sector. Please make sure your Atari DOS supports this format, otherwise the image will be unusable.

If 256 bytes per sector are selected, you can choose between 128 and 256 Bytes in boot sectors. Physically, boot sectors (first three sectors on a disk) are also 256 bytes long, but only 128 are transmitted between Atari and a disk drive (upper halves of sectors are not used). There are disk images with 128 bytes in boot sectors and disk images with 256 bytes in boot sectors. The Atari800 emulator supports both, but other emulators don't. Except some special cases, we recommend 128 for ATR images and 256 for XFD images.

To attach the image to a drive

Optionally you can attach the newly created image to a drive, by selecting Attach new disk image to drive.

To create the image

The Create button opens standard Save As selector, in which you can select image type (ATR or XFD) and the name of the disk image. You may not use the blank image for saving Atari files immediately. You must format the disk with an Atari DOS first.

See also

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

Drive Selections dialog box


Single density is a standard, low-capacity disk format.


Medium density is a standard, medium-capacity disk format.


Double density is a standard, high-capacity disk format.


If 256 bytes per sector are selected, you can choose between 128 and 256 Bytes in boot sectors. Except some special cases, 128 should be used for ATR images and 256 for XFD images.


By selecting Custom you can specify any format, selecting Number of sectors and Bytes per sector.


The Attach new disk image to drive checkbox indicates if the new disk image will be inserted to a disk drive.


The drive to which the new image will be attached.


The Create button opens a Save As dialog, in which you select image type (ATR/XFD) and the file name.


The Cancel button closes the dialog box without creating new image.


Cassette Control dialog box
Cassette Control

To open this dialog box

Select Atari/Tape player.

To insert a cassette image

•	Click Browse and locate the file.

or

•	Type the file name in the edit box next to the Browse button.

or

•	Use File/Attach tape.

Next to the Eject button shown is the cassette image description text, if there’s any inside the selected CAS file.

To position the tape

Drag the slider. To rewind tape to its beginning, drag the slider to leftmost position or click Rewind.

To remove the tape from the player

•	Click Eject.

or

•	Select File/Detach tape.

See also

Cassette images (CAS)


Click Browse button to insert a cassette image.


The name of the selected cassette image file.


Click Eject to detach the cassette image.


The description of the selected CAS file.


Drag to position the tape.


Click Rewind to position the tape at its beginning.


Shows current position of the tape. A block typically consists of 128 bytes of data.


The OK button closes this dialog box. The selected cassette image will be used in emulation.


The Cancel button closes this dialog box without applying any changes you have made.


Pick Virtual Hard Disk Directories dialog box
Pick Virtual Hard Disk Directories

The Pick Virtual Hard Disk Directories dialog box selects directories to be accessed via H: device.

To open this dialog box

Select Atari/Hard disks (Alt+H).

To set paths of virtual hard disks

You can directly type the paths in the names of directories text boxes or use buttons with hard disk symbols to locate the directories.

See also

ROM patches – Overview


The buttons with hard disk symbols select a directory to be accessed via H: device.


The names of directories to be accessed via H: device can be edited directly.


The OK button closes this dialog box. Currently selected directories will be used for H: device accesses.


The Cancel button closes this dialog box without applying any changes you have made.


Input menu

Which PC devices can be used to emulate which Atari controllers

The PC joystick can emulate an Atari joystick.

The PC mouse can emulate:

•	paddles

•	Atari touch tablet

•	Koala pad

•	light pen

•	light gun

•	Amiga mouse

•	Atari ST mouse

•	Atari trak-ball

•	joystick

The PC keyboard can emulate:

•	the Atari keyboard

•	up to four Atari joysticks

To setup emulation of Atari joysticks using keyboard or joystick

Select Joysticks (Alt+J) to open Joystick Options dialog box.

To select autofire mode for joysticks

•	Select it from Autofire submenu.

or

•	Press F6 to toggle between modes.

or

•	Double-click autofire indicator. See State indicators.

or

•	Select it in Joystick Options.

See Joystick Options dialog box for details about autofire.

To setup emulation of keyboard

Select Keyboard (Alt+K) to open Keyboard Options dialog box.

Select meaning of gray arrow keys from Arrow keys submenu.

To setup emulation of a device using mouse

Select Mouse (Alt+M) to open Mouse Options dialog box.

To select a device to be emulated using mouse

•	Select it from Mouse device submenu.

or

•	Double-click mouse device indicator. See State indicators.

or

•	Select it in Mouse Options.

To enable/disable emulation of a device using mouse

Select Capture mouse (F12).

CAUTION: When this option is active, the mouse pointer is not visible and the mouse is used exclusively by the emulation. It means that you can’t access menus unless you press Alt. You can toggle this option with F12 to restore normal functionality of mouse pointer.

See also

Joystick Options dialog box

Mouse Options dialog box

Keyboard Options dialog box


Joystick Options dialog box
Joystick Options

To open this dialog box

Use Input/Joysticks (Alt+J).

Note

Atari 800 and Atari 5200 have four joystick ports. XL/XE machines have only two, so settings for port 3 and 4 are ignored in emulation of a XL/XE machine.

To emulate Atari joystick with PC joystick

Choose a device from the list next to the number of the Atari joystick port. There are shown the devices supported by DirectInput.

To emulate Atari joystick with keyboard

Choose a set of PC keys from the list next to the number of the Atari joystick port. There're two fixed key sets (Numpad and Arrows+RCtrl as fire) and two user-defined (Keyset A and Keyset B).

In the Numpad mode, the arrow keys on the keypad are used to move the stick, and the keypad 0 is the fire button. Additionally you can also use 7 instead of left+up etc.

In the Arrows+RCtrl as fire mode the gray arrows are used, and the right Ctrl key acts as the fire button.

Click Keyset A or Keyset B button to define own set of keys to be used for joystick emulation.

To configure autofire

The Autofire mode can be one of following:

•	Off – no autofire,

•	Fire dependent – autofire while the button is pressed,

•	Continuous – autofire all the time.

Currently there’s no possibility of changing frequency of autofire.

For more options

Click Advanced to open Advanced Joystick Options dialog box.

See also

Configure Keyset dialog box

How to connect original Atari joystick


Selects a device to emulate the Atari joystick.


Selects if to use autofire for that joystick.


Selects Autofire mode:

•	Off – no autofire,

•	Fire dependent – autofire while fire button pressed,

•	Continuous – autofire all the time.


The Keyset A button opens a dialog box for defining keys to be used for joystick emulation.


The Keyset B button opens a dialog box for defining keys to be used for joystick emulation.


The Advanced button opens the Advanced Joystick Options dialog box.


The OK button closes this dialog box and applies the settings.


The Cancel button closes this dialog box without applying any changes you have made.


Advanced Joystick Options dialog box
Advanced Joystick Options

To open this dialog box

Click Advanced button in Joystick Options dialog box.

Options applying to PC joystick

The Do not toggle options using joystick buttons checkbox disables the extra functions:

•	button no. 2: toggles the Pause option,

•	button no. 3: toggles the Run Atari as fast as possible option,

•	button no. 4: toggles the Enable SIO patch option.

Options applying to keysets

The Center keyboard stick when key is released checkbox applies to keyboard joysticks:

•	unchecked – the stick remains in its position even if the keys are released. You must use a 'centre' key (for Numpad it's keypad 5) to restore the neutral position,

•	checked – the stick returns to neutral position as you release the key.

The keyboard differs from a real joystick, allowing you to press two opposite directions simultaneously. Some games don’t expect it and may even crash. As you may press two direction keys accidentally, use Forbid using opposite direction keys option to block passing both directions to the emulated Atari.

Normally the keys assigned for emulating a joystick no longer work as Atari keys. If you press a key and it appears that the corresponding Atari key isn’t pressed, likely the key has been assigned for joystick emulation. If you don’t want to disable normal key functions, check Allow using keyset keys also as regular keys.

If Turn pause off when key is pressed option is enabled, you can resume from pause mode by moving an emulated joystick.

See also

Joystick Options dialog box


The Do not toggle options using joystick buttons checkbox turns off the extra functions of joystick buttons (Pause, Full speed and SIO).


The Center keyboard stick when key is released checkbox indicates that the keyboard joystick returns to neutral position as you release the key.


The Forbid using opposite direction Keys checkbox indicates that opposite positions of the stick can not be passed to the Atari at the same time.


Check Allow using keyset keys also as regular keys to prevent disabling original function of keys assigned to joystick emulation.


The Turn pause off when key is pressed option allows resuming from pause mode by moving an emulated joystick.


The OK button closes this dialog box and applies the settings.


The Cancel button closes this dialog box without applying any changes you have made.


Configure Keyset dialog box
Configure Keyset

The Configure Keyset dialog box is meant for defining a set of keys to be used for joystick emulation.

To open this dialog box

Click Keyset A or Keyset B button in Joystick Options dialog box.

To configure a set of keys for emulation of Atari joystick

You can assign a key for the fire button, 4 keys to move the stick in straight directions (N, S, W, E), 4 keys to move the stick diagonally and a key to recenter the stick.

The name of currently assigned key is displayed on each button. To assign another key, click the button and then press a key to be assigned. If you press Esc, no key will be assigned.

The keys to move the stick diagonally are optional, because you can press two straight direction keys to move the stick diagonally.

The key to recenter the stick is also optional, because the stick can be centered automatically (see the Center keyboard stick when key is released option in Advanced Joystick Options dialog box).

See also

Joystick Options dialog box


Click the button and then press a key to be used to move stick in this direction (Esc to assign no key). The name of the assigned key is displayed on the button.


Click the button and then press a key to be used to recenter the stick (Esc to assign no key). The name of assigned key is displayed on the button. Note the stick can be centered automatically (see the Center keyboard stick when key is released option in Advanced Joystick Options).


Click the button and then press a key to be used as the joystick’s fire button (Esc to assign no key). The name of the assigned key is displayed on the button.


The OK button closes the dialog box, approving the keyset.


The Cancel button closes the dialog box, rejecting changes made to this keyset.


Mouse Options dialog box
Mouse Options

The Mouse Options dialog box contains settings for the controller emulated with the PC mouse.

To open this dialog box

Use Input/Mouse (Alt+M).

Note

The Capture mouse to enable the device emulation checkbox must be checked to enable the emulation of selected controller. Note when this option is on, the normal mouse pointer is not displayed, and the mouse is used exclusively in the emulation. This option can be toggled with Input/Capture mouse (F12).

To select a device to be emulated with mouse

The Emulated device frame indicates what device is emulated with the mouse, and to which Atari port the device is attached. The available devices are:

•	None – no device emulated,

•	Paddles – analog controllers. The paddles are simple potentiometers, attached two to one Atari port. Each paddle has single button. Horizontal mouse position and left button is mapped to the first paddle, vertical position and right button to the second paddle. The paddles are used mostly in games (e.g. Arkanoid and Kaboom),

•	Atari touch tablet – a controller, which returns position of where it has been touched. It has two buttons, which are mapped to your mouse buttons. The touch tablet is used mostly in graphics editors,

•	Koala Pad – a device very similar to the touch tablet. The only difference is that it has reverse up/down orientation,

•	Light pen – it’s a pen, with which you can draw directly on the TV screen (its button presses when you touch the screen). The mouse controls position of light pen. Left mouse button is pen’s button. Right mouse button can be used to display mouse cursor, which is useful if an Atari program doesn't display it,

•	Light gun – works similarly to light pen. The difference is that button (trigger) signal is inverted,

•	Amiga mouse – the standard mouse used with Commodore Amiga computers. This device can be attached to an 8-bit Atari and is used by some software. Like in real Atari, only left mouse button can be used,

•	Atari ST mouse – the standard mouse used with 16-bit Atari ST computers. The device is very similar to the Amiga mouse, and only left button can be used as well,

•	Atari trak-ball – a track-ball device. Similar in operation to Atari ST mouse,

•	Joystick – the mouse emulating a joystick. There were mice for Commodore 64, which had joystick emulation feature. This device can be used with all software using normal Atari joystick, but it will be usable mostly with graphics editors, not games.

The mouse can also be used to emulate 5200 analog joystick. This is useful in games, in which precision is required. Normal joystick emulation (via keyboard) moves 5200 joystick into its extreme positions, so you can't move the stick 'a bit to left', 'a bit more to left' etc. The 5200 controller can be emulated by the mouse in one of two ways:

•	Paddles – the mouse position is the stick position,

•	Joystick – the mouse velocity is the stick position. That is, if you don't move the mouse, the emulated joystick is in central position. The faster you move the mouse, the more emulated joystick is displaced from its central position.

Which emulation way to use, depends on particular game.

The Mouse Port selects to which Atari port attach the emulated device to. The 800 and 5200 have four ports, while XL/XE have only two.

To configure the controller

If the controller moves too slow or too fast, use the Speed of emulated device option.

For Paddles, Atari touch tablet and Koala Pad you can specify the range of controller values.

You can calibrate Light pen and Light gun using Horz/Vert offsets. You should change these values if the program you're using indicates the pen/gun is in different location than the mouse pointer (right-click to toggle displaying of mouse pointer).

The Inertia of emulated joystick option is available only for emulated Joystick. It indicates how far the pointer can move on single mouse movement. This is because the joystick can be only moved (the pointer moves with constant speed) or not, while you can move the mouse faster or slower. If you move the mouse fast, the pointer will be moved slowly to the current position of the mouse. However you may not want the pointer moving next few seconds if you make a fast move – this option restricts it.


The Emulated device drop-down list allows choosing a device to be emulated with the mouse.


The Mouse port drop-down list selects the Atari's controller port the emulated device is plug into. Note there are only two ports in XL/XE.


Use Speed of emulated device to speed up/slow down the controller.


Use Min/Max value options to restrict positions of Paddle, Atari touch tablet and Koala Pad.


Use Horz/Vert offsets for calibration if the Atari program indicates the Light pen or Light gun is in different location than the mouse pointer.


The Inertia of emulated Joystick option limits long movements of cursor if the mouse is moved fast.


The Capture mouse to enable the device emulation checkbox must be selected to enable the emulation of selected controller.


The OK button closes this dialog box and applies the settings.


The Cancel button closes this dialog box without applying any changes you have made.


Keyboard Options dialog box
Keyboard Options

To open this dialog box

Use Input/Keyboard (Alt+K).

To change assignment of the gray arrows in default keyboard layout

The Arrow keys assignment option selects function of arrow keys when default keyboard layout is active:

	Up	Down	Left	Right
Control+arrows	Control+’-‘	Control+’=’	Control+’+’	Control+’*’
Arrow keys only	-	=	+	*
F1-F4	F1	F2	F3	F4

The are no separate arrow keys in Atari. Instead, keys -, =, + and * move the cursor when pressed with the Control key. However, in many programs where typing these characters isn’t necessary, the arrow keys are used without the Control key.

F1-F4 keys are present only in some Atari XL models. However, the OS in every XL/XE machine supports these keys, so some people mount these keys by themselves to get following functions:

	F1	F2	F3	F4
Alone	cursor up	cursor down	cursor left	cursor right
With Shift	cursor to top-left corner	cursor to bottom-left corner	cursor to left margin	cursor to right margin
With Control	lock/unlock keyboard	turn display off (any other key turns it back on)	toggle key click	toggle international character set
To use Windows keyboard repeat settings

The Use Windows typematic rate option is especially useful in full speed mode. Regardless of key repeat settings in the Atari and how fast the emulated computer runs, the actual key repeat rate will be as in Windows programs.

To capture Ctrl+Esc keystroke

The Capture Ctrl+Esc keystroke option toggles if Ctrl+Esc can be read by the emulated Atari. This feature has some disadvantages:

•	the Ctrl+Esc is not read when it is being pressed, only when it is being released. The Control+Esc in Atari is tricked to be pressed for a short time when the Ctrl+Esc is being released,

•	you can't use Alt+Tab for switching between applications,

•	you can't use Ctrl+Esc for opening the Start menu of course.

To use a keyboard template

The Template frame contains:

•	the name of the selected keyboard template file (next to the Browse button). You can type the name or click Browse to load a file,

•	the description of the template file,

•	the Edit button which lets you modify the template file, using Keyboard Template dialog box,

•	the Use keyboard template checkbox, which enables using the keyboard template instead of the default keyboard layout.

See also

Keyboard templates (A8K)

Keyboard – Overview

Default keyboard layout

Keyboard Template dialog box


The Arrow keys assignment option selects function of arrow keys is used when default keyboard layout is active.


Check Use Windows typematic rate to make keys in emulated Atari auto-repeat at the rate set in Windows.


The Capture Ctrl+Esc keystroke option toggles if Ctrl+Esc can be read by emulated Atari. Note some disadvantages:

•	Control+Esc in Atari is tricked to be pressed for a short time when the Ctrl+Esc is being released,

•	you can't use Alt+Tab for switching between applications.


Click Browse button to locate a keyboard template file.


The name of the selected keyboard template file.


Click Edit to modify the keyboard template.


The description of the keyboard template.


Check to use the keyboard template. Clear to use default keyboard layout.


The OK button closes this dialog box and applies the settings.


The Cancel button closes this dialog box without applying any changes you have made.


Keyboard Template dialog box
Keyboard Template

The Keyboard Template dialog box can be used to define your own keyboard layout, that is, which PC keys are assigned to which Atari keys.

To open this dialog box

Click Edit button in Keyboard Options dialog box.

To define a keyboard template

You assign the Atari keystrokes to PC keys.

Select a PC Key first. Then select corresponding Atari Key and optionally Control and Shift modifiers. Then select another PC Key etc.

The PC VKEY is the internal code of the selected PC key.

You should describe your template with few words. The description, typed in the text box, is stored in an A8K file.

To save your keyboard template, click Save button and select a location and a file name.

After closing the dialog box, make sure the Use keyboard template checkbox in Keyboard Options is selected or the template won't be used by the emulator.

See also

Keyboard templates (A8K)

Keyboard – Overview

Keyboard Options dialog box


Selects a key on your keyboard.


Assigns an Atari key to the selected PC key.


The PC VKEY is the internal code of the selected PC key.


Selects if the selected Atari key is pressed with Atari’s Control key.


Selects if the selected Atari key is pressed with Atari’s Shift key.


Click Save to write the keyboard template file. You will be prompted for file name and location.


The description of the keyboard template.


The OK button closes this dialog box. If you have made changes in the template but did not saved it, you will be prompted to confirm


The Cancel button closes this dialog box. If you have made changes in the template, they will be lost.


View menu

To select display mode

The Graphics options (Alt+G) command opens the Graphics Options dialog box.

The Full screen (Alt+Enter) option switches between windowed and full screen modes.

The GDI for windows option indicates that DirectDraw is not used in windowed modes. It solves possible problems with windows redrawing. It can be slower than DirectDraw (especially in double window), but sometimes it’s faster. Note this option affects only windowed modes. On full screen, the DirectDraw is always used.

To show/hide disk and state indicators

Select View/Show/Disk drive activity to toggle display of disk drive indicator. The indicator is shown in bottom-right corner of the Atari screen while disk operations. See Main window for details.

Use View/Show/State indicators (Alt+I) to toggle display of the state indicators. See State indicators for details.

To customize the way the Atari screen is displayed

There are three options that can help you making the emulated Atari screen look like the real one.

The Stretching option affects only stretched display modes (that is double window and full screen modes of at least 640x400 resolution). There are three modes of stretching:

•	Normal – the pixels are duplicated,

•	Smooth – between normal pixels inserted are interpolated pixels (the pixels that are average color of their neighbors), which makes the screen blurred,

•	Scan lines – between normal lines displayed are lines with darkened pixels, so the display looks like on a TV set.

The Artifacting (Alt+A) option selects emulation of a low resolution TV set. This applies only to Atari's high resolution modes (both graphics and text). Normally you should disable this option or the screen will be fuzzy. However, there are some old games, which use artifacting for generating colorful graphics. If the game you're playing displays vertical strips patterns, try selecting one of artifacting modes to see the colors.

The Palette command opens the Palette Options dialog box, where you can change colors, which are used on the Atari screen.

To save screen snapshot

The Save screenshot commands write current Atari display to a PCX file. The image is always of size 336x240 and it may be generated in one of following ways:

•	Normal (F10) – the actual Atari display is written to the PCX file. Indexed Color (8 bits per pixel) mode is used,

•	Interlaced (Shift+F10) – the average of two consecutive display frames is written to the PCX file. This is a special feature for a display method used on Atari to get more colors, called interlace. The file is in True Color (24 bits per pixel) mode.

After you select a Save screenshot command, a Save file as dialog box opens. Default, unique file name in the form of atariNNN.pcx (where NNN is a three-digit number) is generated automatically. You can accept the file name or type other one.

To save video

The Save video commands toggle saving what’s displayed on the Atari screen in an AVI file. Currently this is supported only in a GDI mode, so you have to select a windowed mode and the GDI for windows option must be enabled. You may save the video with or without sound.

After you select a Save video command, a Save file as dialog box opens, where you select the name and location of the file.

Then another dialog box opens, allowing you to select a compressor. The compressors differ in picture quality, compression ratio and speed of compression. The results may vary depending of what is on the Atari screen.

After you select the compressor, the emulator continues running and everything you see on the Atari screen is written to the file you had selected.

To finish recording, select Save video again.

Note: Video recording can create very large files over time. If you turn it on, don’t forget to turn it off later!

To print the snapshot of the current Atari screen

Select Print screen. The snapshot is always printed on the top of the page and is horizontally centered and scaled to fit the page width.

To test performance of current display mode

The Performance test command runs a speed test, so you can check if your system is fast enough to emulate Atari at its original speed. You should get < 10 ms for it. If you don’t, read How to improve performance.

See also

Graphics Options dialog box

Palette Options dialog box


Graphics Options dialog box
Graphics Options

To open this dialog box

Use View/Graphics options (Alt+G).

To select display mode

In the Display mode frame you select a resolution for full screen and window's size in windowed mode. Currently selected modes are shown in Selected modes frame. The radio button in the Display mode frame indicates if full-screen or windowed mode is currently in use.

If some modes are grayed, they are not supported by DirectDraw. Note that in full screen only 8-bit modes are used. Many systems don’t support 320x400 and most laptops don’t support low resolutions.

The Screen coverage icon shows in black color the amount of the Atari screen visible in current mode. The light color indicates areas of Atari screen that are not visible in currently selected mode.

The table below shows properties of all display modes.

Mode	Horizontal overscan visible 1)	Vertical overscan visible 1)	Menus visible 2)	Screen enlargement 3)	Dialog boxes 4)
full-screen
320x200	No	No	No	1x	Small
320x240	No	Yes	No	1x	Small
320x400	No	No	No	1x/2x 5)	Small
400x300	Yes	Yes	Yes	1x	Small
512x384	Yes	Yes	Yes	1x	Normal
640x400	No	No	No	2x	Normal
640x480	No	Yes	No	2x	Normal
800x600	Yes	Yes	Yes	2x	Normal
1024x768	Yes	Yes	Yes	3x	Normal
windowed
336x240	Yes	Yes	Yes	1x	Normal
672x480	Yes	Yes	Yes	2x	Normal
1)	The Atari has 336x240 resolution, but normally only 320x192 is in use. Remaining area is called overscan, and does not fit in some display modes.
2)	If menus are not normally visible, press Alt to activate them.
3)	In high resolutions the Atari screen is stretched two or three times. The non-stretched (1x) modes are faster, but you can't use Smooth nor Scan lines, and the dialog boxes are small.
4)	Some dialogs have simplified versions in order to fit in low resolutions.
5)	1x horizontally, 2x vertically.

In windowed modes you can select Use GDI for windows option, which disables DirectDraw and forces the emulator to run in a normal Windows GDI display. While this is very compatible and allows features such as easy screen captures (via the Print Screen key), it is slower than full screen and extremely slow when in a stretched display. In this mode you can select either 336x240 or 672x480. The color depth will be the same as your desktop depth.

To disable mouse pointer on full screen

The Hide mouse pointer option hides the mouse cursor in the full-screen display modes.

To force system colors when accessing menus and dialogs on full screen

In full-screen modes all the available 256 colors are normally set to the Atari colors. This makes the menus and dialogs look ugly, because colors, they should be in, are unavailable. If the Use system Colors option is enabled, the colors used for UI items are set for the time the menu/dialogs are accessed. The disadvantage of this is that the colors of Atari screen change.

This option works reliably only if you select a color scheme using standard Windows colors.

To select stretching mode

The Stretching mode option selects how the Atari screen is enlarged. This option is also available in the View menu. It affects only stretched display modes (that is double window and full screen modes of at least 640x400 resolution). There are three modes of stretching:

•	Normal – the pixels are duplicated,

•	Smooth – between normal pixels inserted are interpolated pixels (the pixels that are average color of their neighbors), which makes the screen blurred,

•	Scan lines – between normal lines displayed are lines with darkened pixels, so the display looks like on a TV set.

To access more graphics settings

The Advanced button opens the Advanced Graphics Options dialog box.

See also

Advanced Graphics Options dialog box


In the 320x200 mode you will see only few lines of vertical overscan, and the menus will not normally be visible (use Alt to activate them). Dialog boxes will be different in this mode due to its small size.


In the 320x240 mode the horizontal overscan area will be completely clipped off, but you will see the entire vertical overscan. As with 320x200 you will not see the menus until you use them, and dialog boxes will be small.


The 320x400 mode is same as 320x200 except that it’s stretched vertically. It is useful for a fast Scan lines mode.


The 400x300 mode shows the full screen and overscan area. It is non-stretched and as such may be faster on some slower machines or video cards. You will be able to see the menus and status line. Dialog boxes will be different in this mode due to its small size.


The 512x384 mode shows the full screen and overscan area. It is non-stretched and as such may be faster on some slower machines or video cards. You will be able to see the menus and status line.


The 640x400 mode is equivalent to 320x200 – very small vertical overscan, and no horizontal. The menus will not be visible until you use them as with 320x200 mode, but dialog boxes will be normal. The Atari display in this mode is stretched to two times its original size.


In the 640x480 mode you will be able to see a fair amount of the vertical overscan area, but no horizontal area. The menus will not be visible until you use them. The display is stretched to twice its original size.


In the 800x600 mode you will be able to see Windows menus normally, and all of the overscan area in both vertical and horizontal. The display is stretched to twice its original size, leaving a small amount of extra space around the borders of the screen.


The 1024x768 mode is mostly intended for people with LCD displays who can't switch resolutions. It does show less border than 800x600 but is slower (screen is 3X enlarged). Shows full Atari screen area plus Windows menus.


In the 336x240 windowed mode you will be able to see a full size Atari display with most overscan. See the Use GDI for windows option for additional information.


In the 672x480 windowed mode you will be able to see a full size Atari display times two with most overscan. See the Use GDI for windows option for additional information.


The Screen coverage icon shows the amount of the Atari screen shown in a current mode (light = the Atari screen, dark = the mode coverage).


The Use GDI for windows option disables DirectDraw and forces the emulator to run in a normal Windows GDI display. While this is very compatible and allows features such as easy screen captures (via the Print Screen key), it is slower than full screen and extremely slow when in a stretched display. In this mode you can select either 336x240 or 672x480. The color depth will be the same as your desktop depth.


The Hide mouse pointer option hides the mouse cursor in the full-screen display modes.


Select Use system Colors to restore Windows colors in a full-screen mode for the time of using menus and dialog boxes. Menus and dialog boxes will look better, but the Atari screen may look worse.


The Stretching mode affects only stretched display modes (that is double window and full screen modes of at least 640x400 resolution). There are three modes of stretching:

•	Normal – the pixels are duplicated

•	Smooth – between normal pixels inserted are interpolated pixels (the pixels that are average color of their neighbors), which makes the screen blurred

•	Scan lines – between normal lines displayed are lines with darkened pixels, so the display looks like on a TV set


The Full-screen mode indicator shows currently selected full-screen DirectDraw display mode.


The Windowed mode indicator shows currently selected windowed display mode.


The Advanced button opens the Advanced Graphics Options dialog box.


The OK button closes this dialog box and applies all graphics settings.


The Cancel button closes this dialog box without applying any changes you have made.


Advanced Graphics Options dialog box
Advanced Graphics Options

This dialog box contains settings of DirectDraw and CPU-dependent optimizations.

To open this dialog box

Click Advanced button in Graphics Options dialog box.

DirectDraw options

Radio buttons allow you to choose how the Atari screen is displayed:

•	Blit from display memory to primary surface method draws emulated Atari screen on the off-screen surface and then blits it directly to a primary screen buffer.

⇒	To avoid ‘tearing’ of the animations, you can try Synchronize blits with vertical blank. Try to set your PC video system to 50Hz for PAL or 60Hz for NTSC to achieve best results. You need a fast computer for this, because the emulator will wait for an appropriate moment to do the blit.

•	Use flipping surfaces for full screen modes method uses a double-buffering technique. In this case the flipping between a front buffer and a back buffer is performed by switching pointers that the display device uses for referencing memory, not by copying surface memory. It works for full-screen modes only. Note that the menus are not visible if this method is selected.

Note: The video card driver may not be flipping the display buffers in synchronization with the monitor refresh, causing ‘tearing’. Look for an option in the ‘Display Settings’ for your video card, along the lines of ‘Sync to monitor refresh’.

The Access display memory using safe method option is for increasing stability of the emulator at a cost of performance. Check it if you encounter display problems.

The Wait until blit can be set up checkbox indicates if there will be performed synchronous blits instead of asynchronous.

Try different Display memory type settings to achieve best performance on your system. Note the optimal setting may be different in different resolutions.

The Type of FX operation drop-down list allows you to choose the following display effects:

•	No effects – turns off the effects,

•	Horizontal flip – mirrors the surface from left to right,

•	Vertical flip – mirrors the surface from top to bottom,

•	No tearing – this option should avoid a visual artifact produced when the screen refresh rate is out of sync with an application's frame rate.

CPU-dependent optimizations

Some routines for stretching modes are written in assembly language and have a few different versions. Try Optimize for Pentium Pro core and Use MMX instructions options to achieve best performance on your system. The Use MMX instructions option is unavailable if your processor has no MMX™ technology support.

See also

Graphics Options dialog box

How to improve performance

How to improve smoothness of animations


The Blit from display memory to primary surface method draws an emulated Atari screen on the off-screen surface and then blits it directly to the primary screen buffer.


The Synchronize blits with vertical blank option selects synchronization with the vertical blank. Try to set your PC video system to 50Hz for PAL or 60Hz for NTSC to achieve best result.


The Access display memory using safe method option is for increasing stability of the emulator at a cost of performance. Check it if you encounter display problems.


The Use flipping surfaces for full screen modes method uses a double-buffering technique.


The Wait until blit can be set up checkbox indicates if there will be performed synchronous blits instead of asynchronous.


Try different Display memory type settings to achieve best performance on your system. Note the optimal setting may be different in different resolutions.


The Type of FX operation can be one of the following:

•	No effects – turns off the effects,

•	Horizontal flip – mirrors the screen from left to right,

•	Vertical flip – mirrors the screen from top to bottom,

•	No tearing – avoids tearing of the screen.


Try enabling/disabling Optimize for Pentium Pro core option to achieve best performance in stretched modes.


Try enabling/disabling Use MMX instructions option to achieve best performance in stretched modes. If this option is unavailable, your CPU has no MMX™ support.


The OK button closes this dialog box and applies graphics settings.


The Cancel button closes this dialog box without applying any changes you have made.


Palette Options dialog box
Palette Options

To open this dialog box

Select Palette from the View menu.

How the palette can be configured

8-bit Atari machines have 256 colors. The emulator can either:

•	calculate colors basing on the numeric parameters set in the Adjustment frame,

•	read the RGB values of each color from an ACT file, which name is shown in External palette frame.

To configure generated palette

You use following parameters to control generating the palette:

•	Black level adjusts brightness of Atari colors 0, 16, 32, etc. (darkest ones),

•	White level adjusts brightness of Atari colors 15, 31, 47, etc. (lightest ones),

•	Saturation adjusts saturation of all colors,

•	Color shift adjusts hues to be used for Atari colors 16-255 (0-15 are always gray). A hue is used for colors 16-31, next one for colors 32-47, etc.

Each parameter must be an integer within range 0-255.

To configure the palette stored in a file

If you want to read whole palette from a file, you should type the file name inside External palette frame (or click Browse to locate the file) and then check Use external palette. Optionally you may check Apply adjustment, so that you can customize brightness and saturation of loaded palette, using controls in the Adjustment frame. Note it does not affect the file itself.

See also

Palette files (ACT)


The Black level adjusts brightness of Atari colors 0, 16, 32, etc. (darkest ones).


The White level adjusts brightness of Atari colors 15, 31, 47, etc. (lightest ones).


The Saturation adjusts saturation of all colors.


The Color shift adjusts hues to be used for Atari colors 16-255 (0-15 are always gray). A hue is used for colors 16-31, next one for colors 32-47, etc. This parameter is used only for generated palettes, it’s not used for adjusting external palettes.


The preview showing how the selected palette looks like.


Click Browse button to locate the palette file.


The name of the palette file.


The Use external palette checkbox is available only if a palette file has been chosen:

•	unchecked – the palette is generated using parameters in the Adjustment frame,

•	checked – the palette is read from a file.


The Apply adjustment option selects, if the palette read from a file is adjusted with Black level, White level and Saturation parameters.


The OK button closes this dialog box and saves all the changes.


The Cancel button closes this dialog box without applying any changes you have made.


Sound menu

To set all sound options

Select Sound options (Alt+S) to open Sound Options dialog box.

To enable key click

The Digitized effects option enables the Volume Only sound generating method in the emulator, which is used for key click, sampled sounds like speech etc. However this feature is buggy and can sometimes produce really awful sounds.

To enable stereo

The Stereo (Alt+O) option enables emulation of stereo sound. This is not a standard feature of the Atari computer, however the machine's modification is so easy that the stereo extension is now quite popular. The modification is made by adding second sound chip (called POKEY), so separate sound channel is available. Of course stereo music can be heard only in programs that use the extension, otherwise you'll hear the mono sound in the left channel only.

To enable/disable sound

The Mute (Alt+U) option disables the sound.

To create a WAV file containing Atari sound

The Save sound command starts recording Atari sound to a WAV file. After you choose this option and the file name, the sound will be recorded until you select this option again.

To test sound performance

The Performance test command runs a sound speed test, so you can check if your system is fast enough to emulate Atari's POKEY chip.

See also

Sound Options dialog box


Sound Options dialog box
Sound Options

To open this dialog box

Use Sound/Sound options (Alt+S).

To change the volume

Drag the volume slider. Extreme left position = silence, extreme right = max volume.

To change output type

You can select WaveOut or DirectSound, whichever sounds better on your system. For DirectSound select a Sound latency value to achieve best sound quality.

To enable/disable stereo

Use Enable stereo option to enable emulation of stereo sound. This is not a standard feature of the Atari computer, however the machine’s modification is so simple that the stereo extension is now quite popular. The modification is made by adding second sound chip (called POKEY), so separate sound channel is available. Of course stereo music can be heard only in programs that use the extension, otherwise you’ll hear the mono sound in the left channel only. The Stereo option is also available in the Sound menu and via Alt+O shortcut.

To enable/disable digitized effects

The Use digitized effects checkbox enables the Volume Only sound generating method in the emulator, which is used for key click, sampled sounds like speech etc. However this feature is buggy and can sometimes produce really awful sounds. This option is also available in the Sound menu.

To change playback rate

Select mixing rate using the combo box (higher=better quality). Select how often the sound is processed using Update divisor option. Use 1 or 2 for best quality.

Of course better quality requires more processing, but sound isn’t critical compared to other emulation tasks, especially graphics processing.

Note: Many sound cards don’t support 48000 Hz. Use standard 44100 Hz frequency.

To enable/disable sound

Toggle Mute sound playback. You can also use Sound/Mute (Alt+U).

See also

Sound menu


The Volume bar controls loudness.


Select WaveOut or DirectSound, whichever sounds better on your system.


The Sound latency option controls the delay between generating and playing the sound. Choose a value that gives best sound quality on your system.


The Enable stereo option enables emulation of stereo sound (second POKEY chip).


The Digitized effects checkbox enables the Volume Only sound generating method in the emulator, which is used for key click, sampled sounds like speech etc. However this feature is buggy and can sometimes produce really awful sounds.


The Playback rate selects sound mixing frequency. For best quality choose 44100 Hz (many sound cards don't support 48000 Hz).


The Update divisor indicates how often the routine generating sound is called (in units of Atari scanlines). For best quality choose 1.


Check Mute sound playback to disable sound.


The OK button closes this dialog box and applies all sound settings.


The Cancel button closes this dialog box without applying any changes you have made.


Misc menu

To associate file types with the emulator

The File associations command opens the File Associations dialog box.

To convert a file

The Convert commands can be used for converting files between various formats. Currently there are following convert tools:

•	ROM to CART – for converting raw cartridge images to CART format

•	DCM to ATR – for converting Disk Communicator images to more common ATR images

•	XFD to ATR – for converting Xformer images to more common ATR images

•	ATASCII to ASCII – for converting text files from Atari to PC

•	ASCII to ATASCII – for converting text files from PC to Atari

To configure general application options

The Task control submenu contains four options:

•	If Stop when inactive option is enabled and the emulator isn’t the active application, it stops the emulation. Otherwise, the emulator works in background. It may be useful to disable this option for using the emulator to play the music while using other applications,

•	Normally, if you run the emulator while it’s already running, a new emulator window opens. If Reuse emulator window is enabled, new window isn’t created, but the existing one is used,

•	You can try Run at high priority if other running tasks don’t let the emulator to run at 100% Atari speed. This option is useful especially when Stop when inactive is disabled, when the active application doesn’t let the emulator to play the music at normal speed.

Note: Avoid running the emulator at full speed in the background. This will cause the emulator to use almost whole CPU time, so the other applications won’t be usable,

•	If you enable Confirm on exit, you’ll be prompted to confirm as you close the emulator.

Troubleshooting

The Clear all settings command resets all emulator settings to default.

The Restart emulation command reinitializes the emulator (just like quitting and running it again).

The View log file command opens the Error Log dialog box, which displays messages generated by the Atari800 emulator kernel.

To cheat in a game

See Cheat Options dialog box.

To open the monitor console (for advanced users)

The Monitor (F8) command invokes monitor console, to be used for debugging Atari programs, viewing memory contents and other advanced actions. Type help to display list of available monitor commands, type cont to close the monitor console and continue emulation.

See also

File Associations dialog box

Cheat Options dialog box


File Associations dialog box
File Associations

The File Associations dialog box can be used to select file types to be associated with the emulator, so files can be opened by clicking on them in Windows Explorer.

To open this dialog box

Select Misc/File associations.

To select the file types to be associated with the emulator

The File types frame contains all file types the emulator can handle. The types currently associated with Atari800Win PLus are checked. You can quickly select all checkboxes with Select all button or deselect with Remove all.

The Restore these associations at each startup checkbox indicates if the types will be checked if they are still associated with Atari800Win PLus each time the emulator is run. If they are not, they will be registered back to be run with Atari800Win PLus.

See also

File formats – Overview


Click to associate a file type with Atari800Win PLus. Clear to remove association.


The Select all button sets all file types to be associated with Atari800Win PLus.


The Remove all button clears all the file associations.


The Restore these associations at each startup checkbox indicates if selected types are registered each time the emulator is run.


The OK button closes this dialog box and registers selected associations.


The Cancel button closes this dialog box without applying any changes you have made.


Cheat Options dialog box
Cheat Options

Use this dialog box as the last resort in very difficult games. :-)

To open this dialog box

Select Misc/Cheat options.

How can you cheat in a game

There are two ways:

•	You can disable sprite collision detection in the hardware, so the monsters/missiles etc. won’t be harming you.

•	You can enable "unlimited lives" mode, that is, when you die in a game, the number of lives won’t decrease.

Disabling sprite collisions

Select Disable sprite collisions detection. This option may be also toggled with Misc/Disable collisions (Alt+Q).

Then select which kinds of collisions should be disabled. In many cases it’s desirable to disable all the collisions, but sometimes it disallows you e.g. collecting items. Just experiment with it.

Note: Some games use software collision checking. Disabling hardware collisions detection has no effect for these games.

Unlimited lives

The idea behind this feature is simple: it is assumed that the game uses single memory location to store the number of lives. If so, you only need to find this memory location and then the emulator will keep there the value you want.

To enable unlimited lives, you should follow these steps:

•	Start the game and see how many lives you have.

Note: Some games include your current life in the number of lives.

•	Select Misc/Cheat options. Enter the number of lives next to the Memo button. Click the button. Click OK.

•	Now lose one life.

•	Open Cheat options. Enter the number of lives you now have next to the Search button. Click the button.

•	On the right there’s a list of memory locations that may contain number of lives in the game. The addresses of memory locations are shown in hexadecimal (with "$" prefix) and in decimal. Set check at one memory location.

•	Select Lock in and enter how many lives would you like to have.

•	Click OK and continue the game.

What if it doesn’t work?

•	If no memory locations were found, then:

⇒	The game may store a value one less or greater than the number of lives. Repeat Memo and Search with different values.

⇒	The game may not store number of lives in any location, but e.g. check how many life symbols are on the screen. In this case Cheat options won’t help you.

•	If there was more than one memory location to choose, probably you chose wrong one. Open Cheat options and select another memory location.

To disable "unlimited lives" mode

Clear the Lock in checkbox.

Note: This mode will be disabled automatically, when you reset the Atari.


Check Disable sprite collisions detection to cheat in a game.


Select which collisions to disable.


Click Memo to save current contents of memory for later search.


Type the value to search in saved memory contents.


Click Search to list memory locations that:

•	in saved memory contents had the value that is shown next to the Memo button,

•	now have the value that is shown next to the Search button.


Type the value to search in current memory contents.


Check to keep the specified value in selected memory locations.


Type the value to keep in selected memory locations.


Search results.


The OK button applies changes and closes this dialog box.


The Cancel button closes this dialog box without applying any changes.


XFD to ATR

This dialog box is for selecting type of boot sectors in the double density ATR image.

Atari800Win PLus recognizes all three types, but some programs support only one.

Normally the Logical type is recommended, because it’s the shortest and most popular.

See also

Disk images (ATR, XFD, DCM, ATZ, XFZ, ATR.GZ, XFD.GZ)

Misc menu


Selects boot sectors type.


Description of selected boot sectors type.


Click OK to continue with selected conversion type.


Click Cancel to abort the conversion.


ATASCII to ASCII / ASCII to ATASCII

This dialog box is for selecting type of text conversion. The conversion may involve translation of Polish or Czech letters.

See also

Misc menu


Selects conversion type.


Description of selected conversion type.


Click OK to continue with selected conversion type.


Click Cancel to abort the conversion.


Help menu

To open the help system

The Help Topics (F1) command displays help's table of contents.

To view keyboard assignments

The Keyboard layout command displays the description of how PC keys are mapped to Atari keys.

The Keyboard shortcuts command displays the list of menu commands available with single keystroke.

To setup the emulator

The Setup Wizard (Alt+W) command invokes the Setup Wizard.

To download latest version of the emulator

The Web page command opens the Atari800Win PLus Homepage (www.a800win.atari-area.prv.pl).

To display program information and copyright

The About command displays information about the emulator.

See also

Default keyboard layout

Keyboard shortcuts

Setup Wizard


Setup Wizard

The Setup Wizard starts as you run the emulator for the first time. Later you can invoke it by selecting Help/Setup Wizard (Alt+W).

Step 1. Create/remove icons in the Start Menu and on the Desktop

Select a checkbox to create icons, clear to remove.

Click Next to go to the Step 2.

Step 2. Locate Atari OS and BASIC ROM images

In order to emulate an Atari computer, the emulator needs the ROM images for that computer. These files are not distributed with Atari800Win PLus and they can not be distributed with it, because they are copyrighted.

For each file you can type its path or click a button to browse it. The easiest way to configure all the images is to click Search and locate the folder containing the files. If you don’t to point exactly the directory with the files, the subdirectories will be searched.

Note: The images must have the ‘rom’ file name extension in order to be found by Search.

Click Info to display information about selected images.

Click Next to go to the Step 3.

Step 3. Associate file types with the emulator

If a file type is associated with the emulator, you can open a file of this type from Windows Explorer.

Select a checkbox to associate a file type, clear to remove the association. You can select/deselect all file types with Select all and Remove all buttons.

Closing the wizard

Click Finish to accept the settings in all three steps. Click Cancel to reject all the changes you have made.

See also

Installation

Installation problems

Uninstallation


Click Back to back to previous step.


Click Next to go to the next step.


Click Finish to close the wizard, accepting the settings in all three steps.


Click Cancel to close the wizard without applying any changes you have made.


Check to create icon on the Desktop. Clear to remove.


Check to create the Atari800Win PLus group in the Programs menu. Clear to remove.


Frequently asked questions

Q. What's an Atari? How do I use it? What are disks? How do I use those? What kind of DOS is this?

A. Well, I can't teach folks everything about an Atari 8-bit computer here, but luckily there are some guidelines on the net. Try Ivo Van Poorten's page at: http://pmwww.cs.vu.nl/home/ipoorten/Atari.8bit.Homepage/index.html

You may post to comp.sys.atari.8bit newsgroup. The FAQ of this group is available at http://www.faqs.org/faqs/atari-8-bit/faq.

Q. In stretched DirectDraw windowed mode, my screen looks a little "fuzzy".

A. Bone-head graphics card tricks. This is becoming more common on 2D/3D card combinations. Since I am asking it to stretch the bitmap to 2X original size, the card does foolish and unrequested things like bilinear filtering even though the source and destination surface are both 2D. Some cards allow you to turn this off, with others you will just have to use GDI mode, which always works correctly.

Q. I can't use my joystick under NT.

A. That's right, you can't. Can't use it anywhere else under NT either, right? Well there you go. There are some custom drivers that allow this, but they aren't DirectInput compatible. Upgrade to Windows 2000.

Q. Why can't I save a game on a compressed (DCM, gzip) disk?

A. Compressed disks are automatically inserted as read-only. If you want to save a game or write to a compressed disk, decompress it first and insert it as a regular ATR.

Q. What's a "BIN" file?

A. It could be either an executable or a cartridge. Try loading it by File/Load executable (Alt+X), if that works, it's a regular executable, and you should rename it to .XEX. If it works as a cartridge, rename it as .ROM to make things easier next time around.

Q. I’ve been told that a file is an Atari program, but its name extension is very strange.

A. The file is likely an Atari executable. There was practice of using the name extension as part of file name (e.g. BOULDERD.ASH for “Boulder Dash”). Since under Windows you are no longer limited to 8 characters of name and 3 of extension, you can rename the file to “Boulder Dash.xex”.

Q. Why don't 5200 carts work in a 130XE/800XL/whatever, or vice versa?

A. Because they were made not to do that originally.

Q. My sound makes thumping noises.

A. The emulator is running too slow to keep up with the sound buffer generation. This can happen because of poor sound cards ("SoundBlaster compatible"), slow display hardware, or just plain slow computers. Anyway if you aren't running at 100% speed consistently sound will never be quite right.

Q. My sound makes high pitched hum noises.

A. Increase the "Pokey update divisor" on the Sound/Sound options menu. This controls how many times sound is computed. If it is set to 1, the Atari computes sound up to 312 times every 1/50th of a second. Set to 2 this drops to 157, set to 3 it drops to 104, etc. The only adverse affect to increasing it is games like “Berzerk” will sound worse when using digital speech. The HIGHER your sample frequency, the LOWER you can set this value.

Q. In 800x600 mode, I see strange and mysterious things at the edge of the screen.

A. Atari800Win allows you to see the complete overscan area. Most folks with Atari computers never had a chance to see this; the average TV is clipped both vertically and horizontally. Anyway, since it was very rare to see the overscan area, many programs make mistakes in this part of the screen. The designers figured nobody would see it anyway (or maybe they didn't see it themselves).

Q. I have a laptop...

A. Laptops refresh their screens very slowly to conserve power (even when plugged in). This causes DirectDraw to pause for long periods when drawing the screen. GDI mode might even be faster. Laptops are very poor game machines, try it on a desktop machine.

Q. The Atari screen is too dark/bright/saturated.

A. Go to Palette Options dialog box.

Q. Dialog boxes look different in full-screen mode than in windowed.

A. That’s right. Some windows have small versions in order to fit in low resolutions. You can increase the resolution of full-screen mode, so the dialog boxes will be normal (see Graphics Options dialog box).

Q. In full speed some Atari programs run much faster than other.

A. The speed of emulation depends on what is emulated. When the screen is blank and the 6502 is idle, it’s fast. When there’s complicated graphics and high memory utilization, it’s slow.

See also

Installation problems

The Atari program does not work...

How to improve performance

How to improve smoothness of animations


How to improve performance
The Atari program does not work...

If you got ‘The Atari computer has crashed’ message it means the Atari just tried to execute an instruction that doesn't exist on the computer. Most likely a real Atari would have locked up as well. Don’t invoke the monitor console, unless you are an 8-bit Atari expert.

Before you report us any non-working software...

Please make sure that:

•	your settings are correct:

⇒	machine type (try each one),

⇒	TV system (many PAL demos don’t work on NTSC machines),

⇒	no cartridge image is attached if running executables or disk images,

⇒	BASIC is enabled for programs written in BASIC, disabled for others,

⇒	disk image write protection – try switching between Read Only and Read/Write (if the image is on a CD-ROM, copy it to your hard disk first; if the image is compressed, decompress it),

⇒	if the executable requires an Atari DOS, it can’t be run with File/Load executable,

⇒	try disabling ROM patches,

•	the program is not listed as known to be emulated inaccurately (see here),

•	you use the latest version of the emulator (check the web page),

•	the same file can be run on a real Atari computer. Please don’t just write ‘I played that game a few years ago’ – the file you use with the emulator may be corrupt. If you have access to an Atari computer, try to run the program on it.

If you are convinced you discovered an emulator bug, feel free to send a bug report. We will do our best to correct the bug.

See also

Compatibility


How to improve performance

This topic describes, what can you do to speed-up the emulation.

Configure Performance Options

Open the Performance Options dialog box by selecting Performance from the Atari menu.

Make sure that settings in the Emulation speed frame are correct.

If the performance is low in all display modes, increase the Screen refresh frequency value (it will decrease the frequency of screen updates). Note it will affect smoothness of animations.

If the performance is acceptable in all display modes except for double-sized window, check Use different rate for double window and enter number 2 or more.

If you use a refresh rate greater than 1, check No sprite collisions in skipped frames to get extra speed boost. Note it affects collision detection in many games (the sprite collisions are detected only in shown frames).

Configure Graphics Options

The common reason of low performance is slow rendering of graphics.

Open the Graphics Options dialog box by selecting Graphics options from the View menu or by hitting Alt+G.

If you run in the 672x480 window, selecting the 336x240 window should improve the performance really much.

If you run full display, select a non-stretched mode (up to 512x384).

Still in Graphics Options, click the Advanced button.

Select Blit directly from display memory to primary surface. Uncheck Synchronize blits with vertical blank and Access display memory using safe method. Select No effects in Type of FX operation. Try different settings of Display memory type – depending on the machine and the resolution it can increase or decrease performance.

The checkboxes Optimize for Pentium Pro core and Use MMX instructions currently affect only some routines for stretched screen modes (especially Smooth and Scanlines).

If you run in a window, try to enable/disable GDI (either by Use GDI for windows checkbox in Graphics Options or by GDI for windows option in the View menu).

See also

Performance Options dialog box

Graphics Options dialog box

Advanced Graphics Options dialog box


How to improve smoothness of animations

This topic describes, how to avoid ‘tearing of screen’ and achieve smooth animations. To results are best seen on a full-screen horizontal scrolling.

•	First, make sure that Screen refresh frequency in Performance Options dialog box is set to 1.

•	Select Use flipping surfaces for full screen modes in Advanced Graphics Options dialog box.

•	Switch to a full-screen mode.

•	Enable full speed mode.

In the full speed mode the animations should be perfectly smooth, but besides you probably need to run at 100% Atari speed and with sound.

To do this, your monitor refresh rate for the selected full-screen mode must be equal to 50 Hz for PAL and 60 Hz for NTSC. You change the monitor refresh rate with a special program, often included with the display adapter.

If you managed to set it correctly, you should get exactly 100% speed in the full speed mode. If so, just turn full speed off to enable the sound.

See also

Performance Options dialog box

Advanced Graphics Options dialog box


How to connect original Atari joystick

Q. I have an old Atari joystick. Can I connect it to PC and use with the emulator?

A. Yes.

Petr Sumbera has designed simple interface to the printer port, called LPTjoy:

       [ CANON 25 MALE ]                   [ CANON 9 M ]

(acknowledge)  10 ........................... 4  (right)

(busy)         11 ........................... 3  (left)

(out of paper) 12 ........................... 2  (down)

(select)       13 ........................... 1  (up)

(error)        15 ........................... 6  (button)

(strobe)        1 ........................... 7  (Ucc)

(ground)       25 ........................... 8  (ground)

To use the interface in Windows 9x, install the driver made by Robert Petruzela, called AtaJoy: http://www.infos.cz/raster/atari/hw/lptjoy.htm.

Emmanuel Fernandes has designed a bit more complicated interface, which is plugged into game port and requires no special driver: http://users.swing.be/atari/joystick.html.


Glossary

Click a keyword to see description:

6502

ANTIC

artifacting

autofire

BASIC

cartridge

cartridge image

cassette image

disk image

executable binary

frame

GTIA

interlace

NTSC

overscan

PAL

patch

PIA

POKEY

ROM image

SIO

scanline

state file


6502

The microprocessor used in 8-bit Atari computers.


ANTIC

The graphics chip used in 8-bit Atari computers, together with GTIA.


artifacting

The effect of appearing of colors while displaying black and white graphics. Occurs on low-resolution color TV sets and is related to mixing of luminace and colour signals. Used in some games. The Atari800Win PLus can emulate it.


autofire

The function of a joystick, meaning that the joystick sends alternately fire on and fire off signals to the computer in the time you are holding the fire button. This is to trick some games, in which you normally have to press and release the trigger each time you shot. The Atari800Win PLus offers the autofire feature.


BASIC

An easy-to-learn, but not very powerful programming language. The Atari XL/XE computers have the Atari BASIC interpreter built-in.


cartridge

Small box containing a ROM memory chip with software. Plugged in a slot in a computer.


cartridge image

A file containing dump of the memory of a cartridge. To be used with an emulator.


cassette image

A file containing dump of binary data from a tape. To be used with an emulator.


disk image

A file containing dump of data from a disk, sector by sector. To be used with an emulator.


executable binary

A file containing a program. On Atari usually run within a DOS. In Atari800Win PLus you can load an executable without an Atari DOS.


frame

Time unit, equal to the time of displaying single image on a TV. Equal to 1/50 s in PAL and 1/60 s in NTSC system. Also, the image itself.


GTIA

The graphics chip used in 8-bit Atari computers, together with ANTIC.


interlace

Software method of achieving more colors that the hardware can produce. Two different colors are displayed alternately quickly, so that a human sees the average color. The flickering is hardly observed on an Atari with a TV set, but stands out on an emulator with display refresh frequency different than real Atari’s. The Atari800Win PLus can save screenshots of interlaced graphics, taking average of two consecutive display frames.


NTSC

The American TV system, with 60 Hz refresh rate. The 8-bit Atari computers in NTSC version have 1.79 MHz main clock.


overscan

The area of screen displayed by the hardware, but not meant for displaying any information by computer designers. The resolution of the 8-bit Atari is about 336x240, depending on monitor/TV type and settings. The Atari OS uses only 320x192. The emulator can display up to 336x240, i.e. it displays the overscan area.


PAL

The European TV system, with 50 Hz refresh rate. The 8-bit Atari computers in PAL version have 1.77 MHz main clock.


patch

A small change in a ROM image made by emulator to achieve some extra functionality. Also, a change in software in order to make it running with an emulator, if it normally can’t because of low emulator’s quality.


PIA

The I/O chip used in 8-bit Atari computers. In 400/800 used for handling joysticks only, in XL/XE additionally handles memory. Not present in 5200.


POKEY

The sound/keyboard/serial I/O chip used in 8-bit Atari computers.


ROM image

A file containing dump of the memory of a ROM chip with software (e.g. Operating System). To be used with an emulator. Also, the same as cartridge image, provided the ROM chip was used in a cartridge.


SIO

Serial Input/Output. A function of Atari Operating System used for low-level communication with devices connected to the serial port (disk drives, printers, modems, etc.). The Atari800Win PLus provides a patch for SIO in order to speed up disk accesses.


scanline

Unit row of screen, drawn by single left-to-right move of the electron beam of a TV/monitor. It can be observed on a TV because of non-zero distance between scanlines. The Atari800Win PLus can emulate this effect. Also, time unit equal to the time of displaying of single line (about 64 microseconds).


state file

A file containing whole state of emulated machine, including memory, CPU registers, state of chips etc. Used with an emulator to save current state of emulated machine and restore it later.


GNU General Public License

Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.

59 Temple Place - Suite 330, Boston, MA  02111-1307, USA

Everyone is permitted to copy and distribute verbatim copies

of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.

You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.

b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS


Atari800 emulator credits

Atari800 is free and portable Atari800/XL/XE/5200 emulator, originally written by David Firth and now developed by many people on the Net.

David Firth

david@signus.demon.co.uk

•	wrote the original Atari800 emulator.

Ron Fries

•	released a library of routines providing Pokey Sound Emulation.

Alex Hornby

alex@zetnet.co.uk

•	wrote the Virtual 2600 Emulator from which David took some code to access the /dev/dsp device.

Dave Bennett

bennett@halcyon.com

•	code enabling the use of OSS super cartridges,

•	correction to display list jump instruction,

•	tidied cartridge code up.

Chris Lam

lamcw@sun.aston.ac.uk

•	lookup table containing RGB values for each Atari Colour.

Ivo van Poorten

ipoorten@cs.vu.nl

•	added X11 window Expose Event,

•	made hardware registers repeat within their page,

•	control characters in CURSES version,

•	makefile targets for freebsd system,

•	modification to Curses character attributes handling (for freebsd),

•	ported emulator to DOS using DJGPP.

Stephen Firth

stephen@signus.demon.co.uk

•	graphical support for Amiga,

Rob Funk

rfunk@magnus.acs.ohio-state.edu

•	tidied up emulator abort code,

•	case insensitive monitor commands.

Preston F. Crow

preston.crow@dancer.dartmouth.edu

•	corrected calculation of ATR sector count.

Cyrus Malek

Cyrus.Malek@amd.com

•	patch allowing the X11 Backspace key to work the same as the Delete key.

Chris F Chiesa

xetwnk@shell.portal.com

•	added code allowing emulator to run under DEC Windows.

Neil Ship

nlshipp@dictator.uwaterloo.ca

•	correction to new cartridge code introduced in 0.4.0.

Chris Palmer

crpalmer@solo.uwaterloo.ca

•	spotted incorrect declaration of atari_basic[8129] in "pia.c". It should of course be [8192].

Maximum Entropy

entropy@zippy.bernstein.com

•	various corrections to MOTIF code,

•	MOTIF callbacks for Insert Disk, Eject Disk and Insert ROM,

•	bug fixes in sio.c,

•	bug fix to devices.c allowing DOS 2.5 to get a directory of H:,

•	bug fix to monitor.c (EOF on INPUT + Blank Lines),

•	undocumented commands added to monitors HELP command,

•	implementation of Disable Drive menu item for Motif,

•	fixed scrolling problem for machines that can't access longwords on word boundaries (e.g. SGI and SPARC),

•	added FPS Monitor to X11 and Motif versions,

•	changes to pattern matching for H: device,

•	motif fileselector retains state from one invocation tothe next,

•	fixed an unitialized pointer,

•	tidied up declaration of various functions,

•	removed warning messages when compiled with –Wall,

•	configuration program detects if longwords need to be aligned,

•	modification to X11 Paddle Emulation,

•	removed annoying flicker present under some X11 platforms,

•	removed hardcoded paths in MOTIF code,

•	various fixes for curses mode.

Ed Kaminski

ekamins@ibm.net

•	correction of Antic 4&5 Bug affecting Galactic Chase & Mr. Do,

•	improved speed of MS-DOS version by synchronising with a high resolution timer,

•	PORTB duplicated special handling of PORTA.

Nathan Monson

nathan@polaristel.net

•	supplied correction for handling of 6502 V flag during ADC and SBC operations.

Petr Stehlik

pstehlik@zln.cz

•	added support for Atari Falcon (port itself, sound, kbd, joy),

•	added sound, keyboard and joystick support for DOS version,

•	"project coordinator" since v0.8.2 (http://users.zln.cz/~pstehlik).

Karel Rous

•	rewrote CPU.C to optimized MC68030 assembler.

Radek Sterba

raster@infos.cz

•	added all missing CPU 6502 instructions,

•	implemented precise timing into Antic and CPU,

•	fixed PMG registers and implemented PMG flickering,

•	added full 256 opcodes support to dissasembler,

•	various DOS enhancements,

•	added emulation of 320 KB memory (Atari320XE).

Perry McFarlane

ce596@freenet.toronto.on.ca

•	Antic fix in vertical scroll,

•	complete Antic rewrite (DIRECT_VIDEO approach, but better),

•	GTIA enhancements (based on Thomas' code, but using DIRECT_VIDEO),

•	Allegro library in DOS port,

•	colour Artifacting,

•	'digital sound' emulation in DOS port.

Thomas Richter

thor@math.tu-berlin.de

•	GTIA collisions and third colour of players,

•	new SIO code with formatting support,

•	POKEY timers,

•	ADC/SBC "V" bit bug found and fixed using Frodo 6502 emu source.

Rich Lawrence

rich@kesmai.com

•	Win32 port (using DirectX),

•	DCM and ZLIB compressed files support.

Petr Sumbera

xsumbe00@stud.fee.vutbr.cz

•	LPTjoy idea and design of the interface.

Robert Golias

golias@informatics.muni.cz

•	UI enhancements and DJGPP fixes,

•	monitor enhancements (esp. line assembler),

•	fullscreen in DOS port – 320x240 and 320x480 interlaced graphics,

•	VESA2 support in DOS,

•	keyboard and joystick handling, joystick emulated on keyboard.

Robert W. Brewer

rbrewer@Op.Net

•	Voxware sound driver updated for POKEY v2.4.

Michael Beck

beck@dresearch.de

•	SIO2PC ATR patch,

•	SIO Config patches (tested on real XF551),

•	monitor continues last command.

Preston Crow

•	UI enhancement (folders in disk management).

Jason Duerstock

jason@sdi.cluephone.com

•	R-Time 8 cartridge support (real date and time from host machine),

•	page based memory access.

Kuba

kubad@zeus.polsl.gliwice.pl

•	vertical retrace control in DOS port.

Gerhard Janka

gerhard.janka@siemens.at

•	cpu_m68k.s corrections and improvements,

•	double buffering of screen output.

Jindroush

kubecj@asw.cz

•	various corrections and refinements (SIO),

•	hours of testing on real Atari800XL,

•	research on real cartridges.

Ken Sider

•	his binary loader has been used by Rich for developing our EXE LOADER.

Cameron Heide

cheide@home.com

•	16,32-bit X11 SHM support.

Marek Zelem

marek@formax.elf.stuba.sk

•	little improvements in SIO and main sync loop for Unix,

•	X11 keyboard,

•	X11 screen (background => faster emulation),

•	digital (volume only) sound,

•	console sound emulation,

•	disk drive sound emulation,

•	various fixes.

Petr Mojzisek

mojzisek@bimbo.fjfi.cvut.cz

•	rawkey support for svgalib.

Krzysztof Nikiel

krzych00@priv7.onet.pl

•	SaveINT() fix in state save code,

•	Linux improvements (new svgalib keyboard input and screen output),

•	sound improvements (sound interpolation, configurable sound delay, 4 buffers),

•	autoconf stuff

•	Windows code clean up and DirectX version.

Jari Karppinen

jakarppi@mail.student.oulu.fi

•	killed some warnings and bugs in source (like e.g. void main() in joycfg ;-) ).

ERU (Marcin Zukowski)

eru@ibb.waw.pl

•	fix in ANTIC, GTIA,

•	slight monitor improvement.

Christian Groessler

cpg@aladdin.de

•	SVGAlib patch for joystick,

•	BRKHERE command.

Piotr Fusik

fox@scene.pl

•	general rewrite of ANTIC and GTIA (accuracy and speed improvements),

•	changed ANTIC/CPU synchronization,

•	corrected undocumented 6502 opcodes,

•	corrected PCX screenshots and added interlaced screenshots,

•	improved IRQ accuracy,

•	ATR write protection,

•	monitor improvements,

•	loading of .act palette files,

•	improved disk LEDs,

•	rewritten executable loader,

•	UI enhancements,

•	read-only mode for H: devices,

•	exact 17-bit and 9-bit polys for sound and RANDOM,

•	improved potentiometers emulation,

•	support for Express, Diamond, SpartaDOS X, XEGS, Action!, Basic XL and other cartridges,

•	corrected disk formatting,

•	cassette recorder emulation,

•	emulation of paddles, Touch Tablet, Koala Pad, Light Pen/Gun, Amiga/ST mice,

•	util/act2html.

Matthew Conte

matt@conte.com

•	new SoundBlaster driver for DOS.

Nir Dary

ndary@bigfoot.com

•	8*8 KB D50x and OSS 'M091' cartridges.

Vasyl Tsvirkunov

vasyl@pacbell.net

•	WinCE port of Atari800,

•	refactored UI (introduced UI_BASIC).

Jacek Poplawski

jpopl@interia.pl

•	SDL port of Atari800

Nathan Hartwell

mage@magelair.com

•	win32 fixes,

•	sethdr perl script.

Friedrich Delgado Friedrichs

friedel@nomaden.org

•	RPM .spec file.


Atari800Win PLus credits

Richard Lawrence

rich@kesmai.com

http://www.cris.com/~Twist/atari800win/

•	original Atari800Win code.

Tomasz Szymankowski

harry@atari-area.net

http://www.a800win.atari-area.prv.pl

•	Atari800Win PLus development.

Piotr Fusik

fox@scene.pl

•	Atari800Win PLus help file,

•	some improvements in display routines (assembly language),

•	corrected screen printing,

•	XFD to ATR conversion routines,

•	merged Dan Noguerol's R: device code with PLus sources,

•	lots of really good ideas,

•	incredibly precise emulator tests.

Dan Noguerol

Daniel.Noguerol@sagemaker.com

•	win32 implementation of Tom Hunt's BBS extension (R: device).

Zdenek Eisenhammer

pg@pinknet.cz

http://asma.atari.org/

•	Atari XE keyboard layout picture (used in help file),

•	“real” external palette file,

•	precise emulator tests.

XLent

xlent@kki.net.pl

http://xlent.nostalgia.pl/

•	main logo of PLus WWW pages,

•	really good idea to add ‘PLus’ postfix to emulator name,

•	emulator tests.

Mateusz Dziubinski

ircer@go2.pl

http://atari.4ever.cc/

•	Polish version of Atari800Win PLus,

•	emulator tests.

Krzysztof Balicki

kbalicki@univ.rzeszow.pl

•	spreading Atari800Win PLus,

•	emulator tests.

Radek Sterba

raster@infos.cz

http://www.infos.cz/raster

•	conversion table for Capek/Win-1250,

•	emulator tests.

Daniel Kozminski

dely@scene.pl

http://www.atari.pl/

•	hosted WWW pages of PLus project,

•	emulator tests.

Rafal Dziamski

vasco@owl.au.poznan.pl

http://peacock.au.poznan.pl/~vasco

•	emulator tests.

Paul Irvine

mclane.dellos@btinternet.com

•	lots of good ideas,

•	emulator tests.

Toshihiko Tanaka

toshi@poczta.fm

•	emulator tests.

Jacek Zietek

zijacek@kki.net.pl

•	emulator tests.

Michal Garbaciak

dracon@nets.pl

•	emulator tests.

Emmanuel Fernandes

fernandes@agel.ucl.ac.be

•	provided mirror of Atari800Win PLus site.

Pawel Szewczyk

replay@tenbit.pl

•	picture in the Setup Wizard.

Jerzy Giersz

gierszj@prokom.pl

•	emulator tests.

Nir Dary

ndary@bigfoot.com

•	emulator tests.

Ron Fucci

ronfucci@bellsouth.net

•	emulator tests.