File Types

From dreamcast.wiki
Jump to navigation Jump to search

Author: Andress Barajas

Introduction

This guide will focus on file types that are associated with the Visual Memory Unit (VMU). The files types covered in this guide are .VMI .VMS and .DCI. First, some facts about the storage specs of the VMU:

  1. Officially has 200 blocks of free storage space where each block is 512 bytes. Files saved to the VMU take up a number of blocks so the file size is always a multiple of 512 bytes.
  2. Can only store one vmu game per VMU at one time.
  3. You can unlock 41 more blocks of storage by running this code here(include link)

VMI

Visual Memory Information File or VMI is just a link-type file that sits on a web server and is not stored/saved on the VMU at all. If you were to try and download a file with this extension using a web browser on the dreamcast, you will instead download a .VMS with the filename located at offset $58 to your VMU.

File Header

Source: [1]

Offset Size (bytes) Datatype Contents
$00 4 Integer Checksum
$04 32 Text Description
$24 32 Text Copyright
$44 2 Integer Creation Year
$46 1 Integer Creation month (1-12)
$47 1 Integer Creation day (1-31)
$48 1 Integer Creation hour (0-23)
$49 1 Integer Creation minute (0-59)
$4A 1 Integer Creation second (0-59)
$4B 1 Integer Creation weekday (0=sunday-6=saturday)
$4C 2 Integer VMI version (set to 0)
$4E 2 Integer File number (set to 1)
$50 8 Text .VMS resource name (without the .VMS)
$58 12 Text Filename (on the VMS)
$64 2 Integer File mode bitfield (see table below)
$66 2 Integer ? (set to 0)
$68 4 Integer File size in bytes

File mode bitfield:

15..2 1 0
not used GAME (1=game, 0=data) PROTECT (1=copy protected, 0=copy ok)

VMS

Visual Memory System File or VMS is a data-type file that contains either a game save, a vmu game, or special data (See EXTRA.BG.PVR and ICONDATA_VMS below).

File Header

Source: [2]

Offset Size (bytes) Datatype Contents
$00 16 Text Description of file (shown in VMS file menu)
$10 32 Text Description of file (shown in DC boot ROM file manager)
$30 16 String Identifier of application that created the file
$40 2 Integer Number of icons (>1 for animated icons)
$42 2 Integer Icon animation speed
$44 2 Integer Graphic eyecatch type (0 = none)
$46 2 Integer CRC (Ignored for game files.)
$48 4 Integer Number of bytes of actual file data following header, icon(s) and graphic eyecatch. (Ignored for game files.)
$4C 20 Reserved (fill with zeros)
$60 32 Integers Icon palette (16 16-bit integers)
$80 512*n Nybbles Icon bitmaps
... depends on type ... Graphic eyecatch palette and bitmap

EXTRA.BG.PVR

  1. VMS Data file with pvr inside
  2. Not shown in DC Boot ROM file manager
  3. Used as sky texture during the bios menus

ICONDATA_VMS

  1. Not shown in DC Boot ROM file manager
  2. Hold Monochrome(vmu) and palette image (DC File manager) Include screen shots
  3. ALTERNATE 3D Bios Menu if at offset 0x2c0: DA 69 D0 DA C7 4E F8 36 18 92 79 68 2D B5 30 86
  4. Press start to switch over to a 30fps mode with light source shaded models. Can press start again to switch back.

DCI

Unlock 41 extra blocks

// Increase to 241 blocks
{
	vmu_root_t root;

	if(vmufs_root_read(dev, &root) < 0)
	    return -1;

	root.blk_cnt = 241;

	if(vmufs_root_write(dev, &root) < 0)
	    return -1;
}

Sources