SAGA Video Core

Current SAGA Video core provides a Chunky Screenmode that supports 8/15/16/24/32-bits and YUV422.

Final version will have full Planar modes like in original Commodore AGA Chipset but with enhanced specifications.


  • Chunky plane that can be displayed on its own by any dedicated RTG Driver.
  • Supports the following Pixel Formats : CLUT8, RGB15, RGB16, RGB24, RGB32, YUV422.
  • Supports the following Resolutions : Any valid mode from 320×200 to 1920×1080.
  • FrameBuffer can be any address from accessible FastRAM.
  • FrameBuffer can be Read and Write, for Direct Hardware drawings.

Not yet implemented Features :

  • Planar mode that supports all AGA Chipset modes.
  • Planar mode that supports new enhanced modes.
  • Chunky plane that can be displayed together with 8 planar planes or alone on its own.

The FrameBuffer of the Chunky Video Mode can be any address from accessible FastRAM, by specifying the SAGA_VIDEO_PLANEPTR register. The FrameBuffer is Readable and Writable, for faster Direct Hardware drawings.

Register Name Access Size Description
DFF1EC SAGA_VIDEO_PLANEPTR W ULONG Set the SAGA Video FrameBuffer Address
DFF1F4 SAGA_VIDEO_MODE W UWORD Set the SAGA Video Mode
DFF1F8 SAGA_VIDEO_PLLW W UWORD Set the SAGA Video PLLW
DFF1FA SAGA_VIDEO_PLLR W UWORD Set the SAGA Video PLLR

The Chunky Video mode can virtually accepts any resolution from 320×200 (LowRes) to 1920×1080 (1080p). The video engine can be dynamically reconfigured at any time by filling a valid ModeLine.

Register Name Access Size Description
DFF300 SAGA_VIDEO_HPIXEL W UWORD Set the SAGA Modeline HPIXEL
DFF302 SAGA_VIDEO_HSSTRT W UWORD Set the SAGA Modeline HSSTRT
DFF304 SAGA_VIDEO_HSSTOP W UWORD Set the SAGA Modeline HSSTOP
DFF306 SAGA_VIDEO_HTOTAL W UWORD Set the SAGA Modeline HTOTAL
DFF308 SAGA_VIDEO_VPIXEL W UWORD Set the SAGA Modeline VPIXEL
DFF30A SAGA_VIDEO_VSSTRT W UWORD Set the SAGA Modeline VSSTRT
DFF30C SAGA_VIDEO_VSSTOP W UWORD Set the SAGA Modeline VSSTOP
DFF30E SAGA_VIDEO_VTOTAL W UWORD Set the SAGA Modeline VTOTAL
DFF310 SAGA_VIDEO_HVSYNC W UWORD Set the SAGA Modeline HVSYNC

When the SAGA_VIDEO_MODE is set to SAGA_VIDEO_FORMAT_CLUT8, a palette should be defined by filling the 256-colors lookup table. Each color are 32-bits length, in the ARGB format.

Register Name Access Size Description
DFF400 SAGA_VIDEO_CLUT[0] W ULONG Set the SAGA CLUT8 Color #001
DFF7FC SAGA_VIDEO_CLUT[255] W ULONG Set the SAGA CLUT8 Color #256

Universal ModeLine Calculator (UMC for AmigaOS 3.x, available on Aminet) can be used to generate a valid ModeLine for a given resolution. For example, we can ask UMC a valid ModeLine for a 800×600 @ 60Hz resolution. Then just type the following line (add the –rbt option for a reduced framebuffer) :

Example of a standard ModeLine :

>umc 800 600 60
         "MODENAME"    PIXELCLOCK HPIXEL HSSTRT HSSTOP HTOTAL VPIXEL VSSTRT VSSTOP VTOTAL HVSYNC
Modeline "800x600@60"  38.400000  800    832    912    1024   600    604    608    625    -HSync +VSync

Example of a reduced ModeLine :

>umc 800 600 60 --rbt
         "MODENAME"    PIXELCLOCK HPIXEL HSSTRT HSSTOP HTOTAL VPIXEL VSSTRT VSSTOP VTOTAL HVSYNC
Modeline "800x600@60R" 35.500000  800    848    880    960    600    603    607    618    -HSync +VSync

ModeLine Values Description :

Attribute Short Description
PIXELCLOCK Bandwidth (MHz) How many dots it can output per second.
HPIXEL Width Number of horizontal pixels drawn to the visible part of the screen.
HSSTRT-HPIXEL Front Porch Amount of black pixels drawn to the right of the screen.
HSSTOP-HSSTRT Sync Pulse Amount of time it takes to start another line.
HTOTAL-HSSTOP Back Porch Amount of black pixels drawn to the left of the screen.
VPIXEL Height Number of vertical pixels drawn to the visible part of the screen.
VSSTRT-VPIXEL Front Porch Amount of black pixels drawn on the bottom of the screen.
VSSTOP-VSSTRT Vertical Sync Amount of time it takes to move back up to the first line of the screen
VTOTAL-VSSTOP Back Porch Amount of black pixels drawn to the top of the screen.
HVSYNC Flags Sync Polarity. HSync on High Byte, VSync on Low Byte.

Home | Links | SAGA | SAGA Video