Atari Logo
Atari Computer

Hauptseite -
Welches System? -
Hardware -
Software -
Emulatoren -
Internet
MausNet
Programmieren
Verweise
Über

Dateiformate

Home Rasterformate Spectrum 512 (Compressed)-Format Kodak Photo CD

1.2.18 Spectrum 512 (Smooshed)-Format

Extension: .SPS (low)

Dieses Format komprimiert Spectrum 512 Bilder besser als der Stan­dard­al­go­rith­mus. Es gibt zwei Programme, die dieses Format unterstützen, SPSLIDEX und ANISPEC. Sie scheinen sich aber etwas in der In­ter­pre­ta­tion des Formates zu unterscheiden.

Header

1 WORD Flag ($5350 bzw. "SP")
1 WORD reserviert für zukünftige Erweiterungen (immer 0)
1 LONG Länge der Datenbitmap
1 LONG Länge der Farbpaletten

Bilddaten und Paletten

komprimiert, unkomprimiert siehe Spectrum 512

Kompression

Der Algorithmus ist ein modifizierter Lauflängenalgorithmus (RLE), ähnlich dem in Spectrum 512 (Compressed). Die Daten sind in Records gespeichert, die aus einem Header-Byte gefolgt von einem oder meheren Bytes bestehen. Die Bedeutung der Header-Bytes ist folgende:

Für ein gegebenes Header-Byte (unsigned) x:

0<=x<=127 Wiederhole das nächste Byte x+3 mal
128<=x<=255 Verwende die nächsten x-128+1 Bytes

Die Daten erscheinen in folgender Reihenfolge (wie im Spectrum 512 (Compressed) Format, SPSLIDEX?)

  1. Bilddaten, Plane 0, Zeilen 1 - 199
     
  2. Bilddaten, Plane 1, Zeilen 1 - 199
     
  3. Bilddaten, Plane 2, Zeilen 1 - 199
     
  4. Bilddaten, Plane 3, Zeilen 1 - 199
     

Die zweite Variante (ANISPEC?) speichert die Daten als breite ver­ti­ka­le Streifen:

Bilddaten, Plane 0, Zeile   1, Spalten   0 -   7.
Bilddaten, Plane 0, Zeile   2, Spalten   0 -   7.
Bilddaten, Plane 0, Zeile   3, Spalten   0 -   7.
. . .
Bilddaten, Plane 0, Zeile 199, Spalten   0 -   7.
Bilddaten, Plane 0, Zeile   1, Spalten   8 -  15.
Bilddaten, Plane 0, Zeile   2, Spalten   8 -  15.
. . .
Bilddaten, Plane 0, Zeile 199, Spalten 312 - 319.
Bilddaten, Plane 1, Zeile   1, Spalten   0 -   7.
. . .
Bilddaten, Plane 3, Zeile 198, Spalten 312 - 319
Bilddaten, Plane 3, Zeile 199, Spalten 312 - 319.

Eine Schleife zum Auslesen dieser Daten hätte folgenden Aufbau:

for (plane = 0; plane < 4; plane++)
    for (x = 0; x < 320; x += 8)
        for (y = 1; y < 200; y++)
            for (x1 = 0; x1 < 8; x1++)
                image[y, x + x1] = ...

Palettenkomprimierung:

Die Komprimierung ähnelt der in Spectrum 512 (Compressed), aber die Colormap wird als Folge von Bits betrachtet anstatt als Folge von Word betrachtet. Es existieren 597 Records. Jeder Record enthält einen 14 Bit Header, gefolgt von 9 Bit Paletteneinträgen. Der Header gibt an, welche Einträge folgen (1=enthalten, 0=nicht enthalten). Das höchst­wer­ti­ge Bit steht für den Eintrag 1, während das niederwertigste Bit für Eintrag 14 steht. Paletteneintrag 0 und 15 werden auf schwarz (0) gesetzt. Jeder Paletteneintrag wird in der Form "rrrgggbbb" angegeben. Das Format der Palette ist im Kapitel über das unkomprimierte Format Spectrum 512 beschrieben.


Home Rasterformate Spectrum 512 (Compressed)-Format Kodak Photo CD


Best viewed with any browser English version not yet available.

Änderungen und Irrtümer vorbehalten. Letzte Änderung:
14 September 2001.
Home - Mail an den Webmaster - Impressum