Alive
News Team Current issue History Online Support Download Forum @Pouet

01 - 02 - SE - 03 - 04 - 05 - 06 - 07 - 08 - 09 - 10 - 11 - 12 - 13 - 14

Alive 6
                        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.

-----------------------------------------------------------------------------

Alive 6