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
[ Back to Main ]

9. Miscelleanous questions and other STE compatible computers
-------------------------------------------------------------
This section simply features a few questions about what
compatibility problems you might expect when coding STE or
what to do when you want to use additional features of
certain models like the TT, the MegaSTE, the Falcon without
abandoning STE compatibility totally.

? How compatible is the STE with the Mega STE, TT and Falcon ?
! Here's a small chart of the additional features of the 1040
  STE and their existance on the other models (including the
  Mega ST and ST for completeness):

                     ST MegaST    STE    MegaSTE      TT  Falcon Note:
  --------------------------------------------------------------------
  4096 colours       no     no    yes        yes     yes     yes  (1)
  Blitter            no    yes    yes        yes      no     yes
  Hardware scroll    no     no    yes        yes     yes     yes  (2)
  screen splitting   no     no    yes        yes     yes     yes  (3)
  DMA sound          no     no    yes        yes     yes     yes  (4)
  LMC1992/Microwire  no     no    yes        yes     yes      no
  Adv.Joystick port  no     no    yes         no      no     yes

  Notes:
  (1) The Falcon has to be in an ST compatible resolution for this.
      On the ST, programs that try to use 4096 will not crash, but
      still be limited to 512 colours.
  (2) Both Base Address and Counter have to be multiples of 4 on
      the Falcon and multiples of 8 on the TT.
  (3) On the Falcon, the Video Counter can only contain values
      that are multiples of 4, on the TT, the Counter has to be
      a multiple of 8.
  (4) There is no 6.125KHz DMA sound on the Falcon.

The Mega STE and its features:
  ? The TT features quite a complex SCSI subsystem but i cannot
    find any information of the Mega STE's SCSI subsystem ?
  ! That is simply because the Mega STE does not have a SCSI
    subsystem. If your Mega STE is equipped with an internal
    SCSI harddisk, it has an internal SCSI hostadapter that is
    mounted on an internal ACSI-bus. Hence, the Mega STE sees
    your harddisk as ACSI, not as SCSI and can also not directly
    access the SCSI controller on it.

  ? I see the Mega STE has a socket for a math coprocessor.
    Which types can i connect ?
  ! The Mega STE was intended to drive a 16 MHz MC68881, but
    it should (!) also work with a 16 MHz MC68882 if it fits.
    The coprocessor will be driven with 16 MHz.

  ? How do i program the Mega STE's MC68881 if present ?
  ! That's unfortunately more complicated than for the Falcon
    and the TT since the 68030 used in TT and Falcon can operate
    an MC68882 directly while the 68000 in the ST, STE and
    Mega STE cannot. The Mega STE has a coprocessor interface
    register from $FFFFFA40 to $FFFFFA5C, but it also requires
    a so-called "coprocessor protocol" to communicate with the
    MC68881. This is rather complex and too much to list here.
    The operation of the MC68881 in the Mega STE is identical
    to the operation of the FPU-cards for the Mega ST, so
    i recommend the documentation of these.

  ? I want to make sure that my software uses the Mega STE in
    "high speed", but when i boot the Mega STE "cleanly", it
    always is in "8 MHz cache off" mode. How do i switch it
    into 16 MHz cache on ?
  ! The Mega STE has a register to control speed and cache
    status:
     $FFFF8E21  - - - -  - - X X

     Bit 0 controls the clockspeed (0 = 8 MHz, 1 = 16 MHz),
     the upper bit controls the cache (0 = Cache off, 1 = cache on).
     This address is part of the system control unit (SCU) and
     writing to this register in anything but a Mega STE will
     most probably lead to a crash, so be sure to check the
     Cookie Jar for _MCH to estimate wether this is a Mega STE
     or not (Upper word is 1 for STE, lower word is 0x0010 for
     Mega STE, 0x0000 for anything else).

  ? How come the Controlfield only allows 16 MHz Cache On, 16
    MHz Cache off and 8 MHz Cache off when the hardware also
    allows 8 MHz Cache on ?
  ! Because the setting "8 MHz Cache On" is senseless. The
    cache operates at 16 MHz and is meant to reduce real
    memory accesses for the 16 MHz CPU since the bus and
    therefore the memory only runs at 8 MHz.
    When you run the CPU in 8 MHz, the cache will operate at
    8 MHz, too, and hence be as quick as the bus - giving no
    more speedup.

  ? Can the Cache of the Mega STE lead to problems with demo
    effects since it does not influence memory directly ?
  ! Yes and no. From the docs i have - and they are not really
    very detailed about the Cache of the Mega STE - any
    hardware register access is not being cached but carried
    out directly. If your "demo" just does a lot of hardware
    register accesses, the cache should not really be a problem.
    However, screen memory and other buffers are in the main
    memory and therefore cached. If timing is critical for
    accesses on these parts of the memory, better turn the
    cache off.

  ? How fast is the Mega STE at 16 MHz without the cache ?
  ! Unfortunately, not very much faster than an ordinary 8 MHz
    STE. The cache might seem small according to todays
    standard (16 KBytes), but for a system like the Mega STE,
    it reduces memory accesses dramatically. If you turn off
    the cache, the 68000 has to fetch everything directly
    over the 8 MHz bus. Only operations that completely work
    in the 68000's registers will gain performance.

The Atari TT and its features:
  ? Urghs. The TT also has this ugly internal speaker that
    sounds awful. How can i turn it off ?
  ! The internal speaker is being controlled by the YM2149
    directly over port IOA6. The settings are
       OnGIbit: ($40) - switch internal speaker off
      OffGIbit: ($BF) - switch internal speaker on

  ? Say, is the 8-bit resolution of the TT a chunky resolution ?
    That would be cool for demos and games.
  ! Unfortunately, it has the same interleaved bitplane structure
    like the ST and STE have. Screen memory is organized:
      Word 0   X X X X  X X X X  X X X X  X X X X  pixel  0-15 plane 0
      Word 1   X X X X  X X X X  X X X X  X X X X  pixel  0-15 plane 1
      ...
      Word 7   X X X X  X X X X  X X X X  X X X X  pixel  0-15 plane 7
      Word 8   X X X X  X X X X  X X X X  X X X X  pixel 16-31 plane 0
      etc.

  ? I read somewhere that the Falcon can be switched to an
    STE compatible mode. Is there something similar for the TT ?
  ! No, not really.
    On the Falcon, "STE-compatibility" usually refers to the DMA-
    sound settings. Otherwise, the Falcon can be switched to 8 MHz,
    has a Blitter which can also be switched to 8 MHz, the extended
    joystick ports and has STE compatible resolutions (4096 colours).
    Furthermore, the Falcon is some kind of a "tuned-up" 16-bit system
    that has a 24-bit address management.
    The TT lacks the Blitter, cannot switch the CPU down to 8 MHz,
    has a full 32-bit address management, sports Fast- and ST-RAM,
    does not have the advanced joystick ports and cannot work with
    15 KHz RGB-monitors. Full STE-compatibility is therefore not
    possible in all respects, even though the TT has the 8-bit DMA-
    soundsystem identical to the one of the STE and also features
    STE-compatible resolutions.

  ? Why does the TT lack the feature to change Video Counter
    during a screen build anyway ?
  ! At least according to Ray/tSCc, it actually allows
    write accesses. However, the official documentation states
    this register as read/only. In the monochrome hires mode
    it is not advisable to write to these registers since the
    TT shifter does 95 MHz (74 Khz at 1280x960), which is
    almost 3 times the speed of the TT's CPU and 6 times the
    speed of the TT's bus. So be careful in this mode.

  ? I toyed around with the SYNC-Mode register but it behaves
    odd on the TT. Why ?
  ! Even though this register is called "ST Sync Mode" officially,
    it's the direct opposite. Only Bit 0 is used and if it is "0",
    screen is off, otherwise screen is on (On the ST, "0" was on).

  ? What's the difference between the ST Shift Mode Register
    and the TT Shift Mode Register ?
  ! The ST Shift mode register is supposed to be only 2 bits wide
    and contain a "00" for ST Low, "01" for ST Mid and "10" for
    ST High. However, the ST Shift Mode Register on the TT also
    contains ALL other bits of the TT Shift Mode Register as well.
    The ST Shift Mode Register is more or less a mirror of the TT
    Shift Mode Register. Hence, be careful when writing to this
    register for STE compatibility, you might turn on/off TT
    specific features.

  ? What is that funky greyscale mode of the TT i read about ?
    Is it any useful ?
  ! The so called "Hper Mono"-mode is a mode in which each
    pixel can have 1 of 256 greyscales. To enable this mode,
    you need to set bit 12 of the TT Shift Mode register:
      $FFFF8262  X - - X  - X X X  - - - -  X X X X

    This mode will combine the green and blue channel (=8 bits)
    to gather 256 greyscales. Obviously, it is not a chunky
    but still a palette mode, however, not using the original
    TT palette (4096 colours can only feature 16 greyscales).
    It is not a chunky mode either but still uses the same
    interleaved bitplane format. Then again, it seems that this
    mode can be engaged not only in the 256 colours resolution.
    But, this mode _only_ exists on the TT. This mode is _not_
    available on the ST, the STE or the Falcon.
    Please note that using this mode will limit your software
    to run solely on the TT.

  ? Then i read about a smear mode on the TT. What is that ?
  ! The so called "Hold & Sample" mode of the TT an be engaged
    by switching bit 15 of the TT Shift mode Register:
      $FFFF8262  X - - X  - X X X  - - - -  X X X X

    In this mode, every pixel with a colour different from 0
    will "smear", meaning that all pixels with colour 0 to the
    right of a pixel with colour X will be drawn in colour X.
    Only the left border resets the smear mode and really draws
    colour 0 as colour 0 until a pixel with colour<>0 follows.
    This mode was meant to make programming of filled-vector
    3D graphics about as easy as programming wireframe vectors.
    Unfortunately, it stayed widely unused.
    Please note that this mode _only_ exists on the TT and is
    _not_ available on the ST, STE or the Falcon.

  ? What TOS does the TT have ? If i use routines from TOS 1.0x
    or 2.0x directly, will it work on the TT, too ?
  ! Unfortunately, there are 5 series of TOS for the TT, TOS
    3.01 to 3.06, not counting the very first TT-TOS called
    TOS030. So please, if using TOS routines, program as cleanly
    as possible to ensure compatibility.

  ? How come that the TT only uses 2/3 of the width of my VGA
    monitor but displays a stupid white border ?
  ! When Atari designed the TT and especially the TT shifter
    which has VGA-compatible elements, IBM decided to change
    the specs of the VGA standard (at least some docs say so,
    there are no official affirmations for this).
    This is why the TT displays a rather pointless border and
    also only uses 2/3 of the screen width.
    The simplest solution to go around this is an OverScan TT
    which simply uses up the whole space the TT reserves for
    the border, giving up to 896 x 496 pixels in TT Mid and
    448 x 496 in TT Low.

The Falcon030 and its features:
  ? How compatible is the Falcon to the STE ? Will my STE code
    work flawlessly on the Falcon ?
  ! Yes, the Falcon was meant to be an (68000-based) successor
    to the 1040 STE, therefore it is easy to code Falcon-
    compatible STE-code. The only exceptions are:
      - The Falcon does not allow 6.125 KHz DMA sound
      - The Falcon's screen base address has to be a multiple
        of 4
      - The Falcon does not have the so-called "Shadow"
        registers of the YM2149
    To also make sure that the timing of the CPU is (almost)
    correct, switch the processor caches off and the CPU and
    the Blitter down to 8 MHz.
    Now, the only obstacle is the DMA-sound matrix of the Falcon
    which might be setup wrongly.

  ? I migrated from a 1040 STE to a Falcon030. But how can I
    connect my external Floppy disk drive or connect my good old
    ACSI-harddisk drive ?
  ! You cannot. The Falcon does not have any kind of interface
    for an external disk drive - even though the TOS 4.0x still
    checks for Drive B: on boot-up. Additionally, the Falcon
    does not have an ACSI port. You cannot connect any ACSI-
    devices such as harddisks or Laser printers.

[ Back to Main ]
[ Onto next Chapter ]

Alive 6