
z26 -- An Atari 2600 Emulator (0.95)
------------------------------------

Copyright (C) 1997-1998 by John Saeger (john@whimsey.com)

Home Page:  http://www.whimsey.com/z26


Introduction
------------

z26 is a small, fast, easy to use Atari 2600 emulator that runs on a DOS
platform, including a Windows 95 DOS box. z26 supports full Atari 2600
sound emulation using a Sound Blaster.


System Requirements
-------------------

z26 will run at full speed on virtually any Pentium class platform with
a reasonable (PCI or better) video subsystem. It also runs fine on most
AMD 5x86 machines (with VLB video), and even on some fast 486's.

z26 supports the use of a Sound Blaster card. It requires a Sound
Blaster with at least version 2.00 DSP. This includes SB 2.0, SB-PRO,
SB-16, and SOME older Sound Blasters. It should also run on more recent
models of Sound Blaster, and many clones as well. I've heard it works on
an Ensoniq PCI sound card.

If you don't have a Sound Blaster or a compatible sound card, z26 will
make an attempt to use the PC speaker to generate sounds. Try not to
expect too much from the speaker though.


Startup
-------

At the command line prompt type:

>z26 filename

where filename is the name of a "standard" Atari 2600 .bin file. For
example: 

>z26 demonatk.bin

will run Demon Attack. You're on your own finding the .bin files. But if
you follow the links on the z26 home page, eventually you may get lucky.


Getting Help
------------

If you type

>z26

without a filename you get a short help screen describing the available
controls and command line options. The screen currently looks like this:


z26 -- An Atari 2600 emulator (0.94)
Copyright (C) 1997-1998 by John Saeger

Home Page:  http://www.whimsey.com/z26

    F1 -- reset        F2 -- select    F5 -- P0 easy      F6 -- P0 hard
    F9 -- B/W         F10 -- color      p -- pause     ENTER -- resume
 SPACE -- fire        ESC -- quit game  = -- PCX screen capture

The Atari joystick is emulated with the arrow keys.

Command Line Switches (put before filename)

 -0    -- player 0 hard
 -r    -- do not wait for VGA retrace (full speed)
 -q    -- quiet (no sound)
 -s    -- show sound diagnostic messages
 -f<n> -- run emulator for <n> frames and display timing results
 -d<n> -- use digital signal processing on sound (1=low, 2=high)
 -v<n> -- video mode (0=70Hz, 1=60Hz, 2=60Hz narrow, 3=60Hz 204 scan lines)
 -j<n> -- joystick (0=joystick off)
 -c    -- show credits (please do!)


Joystick
--------

z26 automatically detects a PC joystick and uses it to emulate an Atari
joystick if one is present. Calibration is not required. Just make sure
the joystick is centered when the emulator is started. Button 1 is the
fire button. The keyboard controls still work even if a joystick is
present. To force keyboard only mode use the -j<n> command line switch.


Video Modes (correct play speed)
--------------------------------

In order to provide good emulation of some of the Atari's more subtle
graphics effects, z26 synchronizes game play with the refresh of the VGA
screen. The original VGA video mode refreshes at 70Hz which makes game
play slightly faster than a real Atari. By default, z26 uses a video
mode that refreshes at 60Hz (Video Mode 3) to provide correct play
speed. If you have a problem with this mode you may select the original
70Hz mode or one of the other modes with the -v<n> command line switch.


Video Mode 0
------------

This is the original 70Hz VGA mode.


Video Mode 1
------------

This mode is full size on older fixed-frequency monitors but is usually
somewhat shorter than normal on modern multi-frequency monitors.
However, you may be able to adjust the controls of the monitor to get
the correct height.


Video Mode 2
------------

This mode is shorter and narrower than normal. If you can't, or don't
wish to make an adjustment to your monitor to get Mode 1 looking right,
or if you just like the smaller size better, you can use this mode to
get the correct aspect ratio.


Video Mode 3 (default)
----------------------

This mode is just like mode 2 except it has 4 additional scan lines for 
a total of 204.  PCX screen capture will still only capture the first
200 scan lines.


Are these video modes safe?
---------------------------

Of course I make no guarantees. But as far as I know they work
everywhere that the original 70Hz video mode works. If you find an
exception please let me know. In any case, monitor damage seems
unlikely. If you suspect a problem, press <esc> to restore your monitor
to text mode, or just turn the monitor off.


Adjusting Your Monitor
----------------------

If you have a modern multi-frequency monitor, one or more of these modes
may require some adjustment to achieve a good appearance. Modern
monitors often have the ability to save multiple settings for multiple
video modes. So it MAY be possible to adjust these modes without
disturbing the adjustments for your other display modes.


Troubleshooting Sound Setup
---------------------------

If you run z26 and don't hear sound when you think you should, the first
thing to check is to make sure the volume is turned up. If you're
running under Windows 95, use the system volume control and make sure
the Mute box is not checked. Also make sure the Wave Balance volume is
turned up and that its Mute box is not checked. If you're running under
DOS, use the volume control (mixer) program that came with your sound
card.

Failing that, try running z26 with the -s (show sound diagnostic messages) 
command line option.

If you get the message "Sound Blaster too old!", maybe it's too old. You
need a Sound Blaster with at least version 2.00 DSP to run z26.

If you get the message "Sound Blaster not found." then either you don't
have a Sound Blaster, or there's a problem with the environment string.
z26 expects you to have an environment string set with the configuration
of your Sound Blaster. If you're running under Windows 95, this usually
is not a problem because Windows 95 seems to set up the environment
string automatically. If you're running under DOS, the environment
string is usually set up during the Sound Blaster installation
procedure.

To find out if your environment string has been set, type

>set

at the command line prompt.  Or type

>set | more

if there's too much information to display on a single screen.

You should see an entry something like this somewhere in the output:

BLASTER=A220 I10 D1 H7 P330 T6

If you don't, that's the problem. Otherwise the information in the
environment string may not match the actual settings on your Sound
Blaster. In either case, re-do the installation procedure for your sound
card to correct the problem, or set up the environment string manually.


More About Sound
----------------

z26 uses the tiasound library by Ron Fries to emulate sound. According
to Ron, the optimum playback sample rate is 31400 samples per second.
This is the "natural frequency" of the Atari, the frequency at which the
sound generator in the Atari originally ran. So if your Sound Blaster is
capable of playing sound at this rate (and most modern Sound Blasters
are), we use this rate. There are a few older Sound Blasters that z26
supports that won't run at this rate. These Sound Blasters are run at a
rate of 15700 samples per second. This causes only a small degradation
in the quality of the sound.

We also use tiasound's ability to generate sound in real time. This
means we can use very small sound buffers. This allows z26 to be more
responsive to rapid changes in the sound that some games call for. z26
currently uses a sound buffer of 128 bytes divided into two parts,
giving it an effective buffer size of 64 bytes.


Digital Signal Processing
-------------------------

z26 supports digital signal processing (DSP) on the sound. This is to
reduce distortion on some clone sound cards, but also causes the sound
to more closely approximate the sound of an old TV set for those users
that prefer a more "classic" sound. To turn on DSP use the -d<n> command
line switch. If n=1 the setting is low, if n=2 the setting is high.


PCX Screen Capture
------------------

Pressing the = key during game play causes a .pcx file with a screen
image to be placed in your directory. Filenames are z26p0000.pcx,
z26p0001.pcx etc. The filename restarts at z26p0000.pcx causing old
versions to be replaced each time you restart the emulator.


Warranty
--------

z26 is provided without a warranty of any kind, either express or
implied. Neither John Saeger nor anyone who has worked on the code may
be held responsible for any damages, either direct or consequential,
caused by the use of z26. 


Freeware
--------

z26 is copyrighted freeware and may not be sold. Please keep all
copyright notices and other acknowledgements intact. Thanks.


Credits
-------

z26 is based on A26 version 0.15 (C) 1996 by Paul Robson
(autismuk@aol.com).

PCX screen capture is (C) 1997 by Ronnie Green (ender@abts.net).

TiaSound, the Atari 2600 sound emulation software is (C) 1996-1997 by
Ron Fries (rfries@tcmail.frco.com).

60Hz video modes courtesy of Jim Leonard (Trixter / Hornet)
(trixter@hornet.org).

Thanks to everyone who has helped with comments, suggestions, and bug
reports. Junky, Kevin White, The Boatwrights, Miguel Guzman Centeno,
Peter, Jay C. Heil, Zoop, Rob Anderson, Zophar, Peter Vogels, Stephan,
Xahji, Ricardo Martinez Garza, Stephano Camarri, Peter Betz, Piero
Cavina, Nick S. Bensema, Erik Mooney, Glenn Saunders, Abraham Velazquez,
Christian Schaefers (Z-Type), Freirias, Brian Deuel, Chris Platt, Israel
Geron T., jose roberto rodrigues, Dan Meyer, and Martin Schaefer.

And thanks to Len Shikowitz for complaining well beyond the call of duty. 
Definitely "the most obstinate, yet sincere, tester." :)

Thanks!!!

