Some minor hints and notes on
___________ ___________ ___________
/ /_____/ / / /
/ _____// / _____/ / _____/
/ /____ /____/ / / __/ /
/_____/ / /_____/ / / /_____/
_____/ / / / / /_____
/ / / / / /
/__________/ /_____/ /____________/
Coding
assembled after depressing hours of experiments and tests
that did usually not work out as planned by The Paranoid.
Paranoia
Think you can handle it ?!
(of the Lunatic Asylum)
Note of STS : This great tutorial is so huge that it's been decided to cut it
into smaller parts, namely the chapters you can find below. In each of them
you'll find two links, first one will take you back here while the other one
will lead you to the next chapter. Enjoy the reading. In its original shape,
this article represented +1,700 lines !
-----------------------------------------------------------------------------
Links to various chapters :
1 . The hardware Scrolling
2 . 4096 Colors
3 . The Blitter
4 . DMA Sound - the simple way to make music
5 . The National LMC 1992 and the Microwire
6 . Advanced Joystick, Paddle and Lightpen ports
7 . Hardware related questions
8 . Important changes of the Operating System
9 . Miscelleanous questions and other STE compatible computers
10. Epilogue
11. Final words
-----------------------------------------------------------------------------
Preface:
--------
The Atari STE is, without a doubt, a nice machine. It has so many
features the Atari ST lacked:
- 4096 instead of 512 colours
- Horizontal and Vertical hardware scrolling
(also called hardware windowing of large virtual screens)
- Blitter
- 8 Bit DMA stereo sound (Up to 50 KHz replay rate)
- National LMC 1992 soundchip, connected over Microwire serial port
Treble, Bass, Left/Right/Main Volume Control
- 256KB EPROM containing the TOS, socketed
- 4 30-pin SIMM-slots, up to 4 MB RAM
- Extended and analogue capable joystick ports
Unfortunately, you will pretty soon find out that the STE also contains a lot -
and i mean a lot - of pitfalls. Whatever feature of the STE you want to use,
it will either not work as planned or require special treatment. If it works
as planned and does not require special treatment, it will definetly not work
on the TT or the Falcon. So this documentation is just a little compilation of
the usual traps especially programming beginners might step in and how to dodge
these traps.
This documentation is given on an "as is" basis. Paranoia does not give any
warranties about correctness about the given information here. We can not be
held responsible for any loss of data, damage to your hardware or whatever
might happen to you, your software or your hardware after reading this
document.
Every chapter will describe the special registers for a certain feature and
afterwards list the traps you should look out for. In the bitset tables, "0"
means this bit cannot be set and is automatically assumed "0", "1" means this
bit cannot be set and is automatically read as "1", "X" means it can be
read/written and can feature "0" or "1". In the Tables, "yes" means this
register exists in the model mentioned while "no" means that this register does
not exist. "ro" means "read only" and refers to a register that cannot be
written to, "rw" means "read/write" and declares a register that can be read as
well as written to.
Conventions
-----------
In this context it will be necessary to refer to different types of Atari
computers. The following names will be used to denote the different types:
- Atari 1040 STE, 1040 STE or just STE
This will refer to any kind of Atari 520 STE, Atari 1040 STE or
Atari 4160 STE. It will be referred to as 1040 STE in general
since the 1040 was the most popular model of the STE series that
came in the standard 1040 ST case. It implies having an 8 MHz
CPU on an 8 MHz bus system.
- Atari MegaSTE, MegaSTE or MSTE
This will be meant as a synonym for the Atari Mega/STE series in
general without reflecting memory expansion, harddisk expansion or
any kind of VME card. It also implies that this machine has a 16
MHz 68000 CPU with a 16 MHz, 16KB cache on an 8 MHz bus system.
- Atari TT or just TT
There have been many different variations of the Atari TT, also
known as TT/030, when it comes to memory, fast RAM, harddisk and
VME expansion. These specifications are not really concerned here.
Whenever the term "Atari TT" is being used, it refers to an 68030
system, clocked with 16 MHz (early developer model) or 32 MHz, on
a 16 MHz bussystem, equipped with a video chip named "TT shifter".
Please note that usually, all points discussed here refer to an
Atari ST compatible resolution, unless noted otherwise.
- Atari Falcon or Falcon030
Generally refers to the Atari Falcon030 system, not implying
anything about the memory expansion, accelerator cards, internal
or external storage devices. Since this documentation is focussed
on programming the STE, the capabilities of the Falcon like the DSP,
the true colour mode or the 16-bit DMA sound matrix, are not being
discussed here. When refering to a Falcon, an 68030 CPU and a video
chip named "VIDEL" are implied. Unless otherwise noted, the
further documentation takes a video mode declared "ST compatible"
for granted.
-----------------------------------------------------------------------------
|