Redguard: Elder Scrolls Adventures

From XentaxWiki
Revision as of 14:24, 15 September 2017 by WATTO (talk | contribs) (Created page with " Game: Redguard: Elder Scrolls Adventures Status: Complete Category:Extension_gxa | Ex...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents: GRAFs page - All - 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z - Edit

Format Type: Archive
Extensions: gxa
Platforms: unknown
Endian Order: Little Endian



Format Specifications

Still trying to work out the RLE encoding!!!
Image or Animation
BIG ENDIAN FORMAT (except for a few fields)
FILE HEADER
  uint32 {4}       - Header (BMHD)
  uint32 {4}       - Color Palette Offset (34) (relative to the end of this field)
  byte {32}        - Description (GXlib image conversion )
  uint16 {2}       - Number of Animation Frames (LITTLE ENDIAN)

COLOR PALETTE (256 Colors)
  uint32 {4}       - Header (BPAL)
  uint32 {4}       - Color Palette Length (768)
  for each color
    byte {1}         - Red
    byte {1}         - Green
    byte {1}         - Blue

IMAGE DATA
  uint32 {4}       - Header (BBMP)
  uint32 {4}       - Pixel Data Length (relative to the end of this field)
  for each animation frame...
    uint16 {2}       - Unknown (256)
    uint16 {2}       - Image Width (LITTLE ENDIAN)
    uint16 {2}       - Image Height (LITTLE ENDIAN)
    uint32 {4}       - null
    uint32 {4}       - RLE Encoding? (0=no encoding, 1=encoding)
    uint32 {4}       - null
    NO ENCODING
      for each pixel
        byte {1}         - Palette Index

    RLE ENCODING
      uint32 {4}       - Length of Encoded Data (LITTLE)
      THE BELOW IS NOT RIGHT, AND NOT COMPLETE.
      Note: the first 16 palette indexes are junk data, so maybe 4 bits are used as the indicator field?
      eg bit 1 might mean "repeat the next X pixels", bit 2 might mean "no repeat", bit 3 might mean "go back and copy X pixels" etc.
      for each row of the image
        Read 2 bytes
        if (byte[2] == 0 && byte[1]&128 == 1) {
          byte[1]&127 = Number of Repeats
          Read 1 byte - this is the pixel to repeat
          now continue reading bytes, which are real pixels, until you reach the next null
          byte {1}         - null end of block terminator
          }

        else {
          byte[1] is a real pixel
          go back to the start, using byte[2] as the first of the 2 bytes you read
          }

FILE FOOTER
  uint32 {4}       - Header (END )



MultiEx BMS Script

No BMS script

Supported Programs



Notes

No additional notes

Games

  • Redguard: Elder Scrolls Adventures



Navigation

Jump to a listing by...
All Formats - Common Formats - Standard Formats - Malformed Pages
Platforms
Microsoft:
Xbox
Xbox 360
Nintendo:
GameCube
DS
Desktop:
PC
Sega:
Dreamcast
Sony:
PlayStation
PlayStation 2
PlayStation 3
PlayStation Portable
Type
Animation - Archive - Audio - Image - Mesh - Miscellaneous - Model - Video
Endianness
Little-endian - Big-endian
BMS Scripts
Pages Without a BMS Script

All Pages with Scripts:
Recently Added Scripts

Program Support
No Known Support

MultiEx Commander - Game Extractor

Format Specification Completion
Work in Progress - Almost Done - Completed
Compression and Encryption
No Compression or Encryption Used - Unknown Compression or Encryption Used

One or Both Used:
Compression Used - Both Compression and Encryption Used