Skip to content

v0.6.0 - OCS modes

Choose a tag to compare

@angree angree released this 21 Jul 17:29

OCS screen modes.

  • Two new entries in Game Options: 320x256 OCS and 352x272 OCS. Real
    6-bitplane Extra Half-Brite screens — 64 colours, the upper 32 forced by the
    hardware to be half-brightness copies of the lower 32.
  • Chip RAM for the bitmap drops from 300 KB to 70 KB, and there is a quarter
    less chunky-to-planar work per frame.
  • EHB exists on OCS and ECS as well as AGA, so this is the groundwork for
    running on an A500 or A600.
  • Sprites are reduced to the 64-colour palette once when loaded, never per frame.
  • Lores only — the sixth bitplane is the half-brite control, and OCS/ECS
    cannot fetch six planes at hires bandwidth. A 640 OCS mode would be refused.
  • The splash now renders in whatever mode the game opens, so it no longer forces
    an 8bpp screen.

One list for everything. AGA, OCS and RTG modes now all live in the Screen
resolution dropdown; the separate EHB toggle is gone. Switching between backends
needs a restart — the choice is saved immediately and the game says so on screen.

Fixed

  • 352x272 never actually worked, on AGA either. It exceeds the standard PAL
    lores clip, so Intuition refused it without SA_Overscan. Nobody had checked.
  • A failed mode change left the game with no display at all — the screen is
    closed before the new one opens, and there was no path back. It now restores
    the previous mode.
  • Mode choices were not saved. The config writes sat after the screen open,
    so a failed open discarded the choice. Picking AGA or OCS now also clears the
    RTG flag, which is the way back out if you tried a graphics card and want to
    leave.
  • Vertical stripes through text input fields. Not the converter — the 6-plane
    c2p assumes pixels below 64, and GfxFillRect was writing a literal 215 into
    every edit box on each caret blink. Those extra bits leaked into the half-brite
    plane.
  • Everything was tinted maroon. The EHB tables had been generated in the TTD
    DOS palette while OpenGFX ships the Windows one; the grey ramp is the one range
    where they really differ, so the interface reduced into the browns.

Known rough edges

Window chrome still comes out pink and brown rather than grey. The minimap shows
wrong colours — it writes palette values straight into the buffer, bypassing the
drawing primitives. Both are cosmetic and confined to the OCS modes.

The OCS modes cut colours and bitplanes but not sprite size, so they do not yet
lower the 24 MB requirement.
Half-size graphics are the next step.

Requirements

Unchanged: 68030 with an FPU minimum, 68040/40 recommended, 68060/50 for full
speed.
AGA or a Picasso96 / CyberGraphX card. 24 MB. AmigaOS 3.0/3.1.

Sound effects on by default (-s amiga), -s null for silence. Music is still
not implemented.

Installing

Unpack anywhere and run openttd from a Shell, keeping splash.dat beside it.
OpenGFX and OpenSFX are bundled — nothing from the original TTD is needed. See
LICENCES.txt for what is in the archive and under what terms.