Difference between revisions of "MGV"

From MSX Game Library

Line 25: Line 25:
 
  │  │  │  │  └──┴──┴──┴── Screen mode
 
  │  │  │  │  └──┴──┴──┴── Screen mode
 
  │  │  └──┴────────────── Bit per pixel (0: 1-bit, 1: 2-bit, 2: 4-bit, 3: 8-bit)
 
  │  │  └──┴────────────── Bit per pixel (0: 1-bit, 1: 2-bit, 2: 4-bit, 3: 8-bit)
  │  └────────────────────  
+
  │  └──────────────────── Frequency (0: 50 Hz, 1: 60 Hz)
 
  └───────────────────────  
 
  └───────────────────────  
 +
* 0: Text 1
 +
* 1: Graphic 1
 +
* 2: Graphic 2
 +
* 3: Multi Color
 +
* 4: Text 2
 +
* 5: Graphic 3
 +
* 6: Graphic 4
 +
* 7: Graphic 5
 +
* 6: Graphic 6
 +
* 7: Graphic 7
 +
* 8: Graphic 3 mirrored (undocumented)
 
|-
 
|-
 
| (0x0006) || 1 || Video format - Width || 1-256
 
| (0x0006) || 1 || Video format - Width || 1-256

Revision as of 22:02, 30 March 2024

MGLV is a video format for MSXgl.

Format

Header

Offset Size Desc. Value
0x0000 4 Signature "MGLV"
0x0004 1 Flag
7  6  5  4  3  2  1  0
│  │  │  │  └──┴──┴──┴── File format version (0-15)
│  │  │  └────────────── 
│  │  └───────────────── 
│  └──────────────────── 
└─────────────────────── Include video format data (3 bytes)
(0x0005) 1 Video format - Mode
7  6  5  4  3  2  1  0
│  │  │  │  └──┴──┴──┴── Screen mode
│  │  └──┴────────────── Bit per pixel (0: 1-bit, 1: 2-bit, 2: 4-bit, 3: 8-bit)
│  └──────────────────── Frequency (0: 50 Hz, 1: 60 Hz)
└─────────────────────── 
  • 0: Text 1
  • 1: Graphic 1
  • 2: Graphic 2
  • 3: Multi Color
  • 4: Text 2
  • 5: Graphic 3
  • 6: Graphic 4
  • 7: Graphic 5
  • 6: Graphic 6
  • 7: Graphic 7
  • 8: Graphic 3 mirrored (undocumented)
(0x0006) 1 Video format - Width 1-256
(0x0007) 1 Video format - Height 1-256

Commands

Cmd Options Desc.
0x00 End of data
0x01 End of frame
0x02 End of segment (increment segment index and reset data pointer)
0x03
0x04 nn Skip nn+1 bytes (1-256)
0x05 nnnn Skip nnnn bytes (1-65536)
0x06 nn,vv Fill nn bytes (1-256) with vv value
0x07 nnnn,vv Fill nnnn bytes (1-65536) with vv value
0x08 nn,vv[nn] Copy nn bytes (1-256) from vv[nn] data table
0x09 nnnn,vv[nnnn] Copy nnnn bytes (1-65536) from vv[nnnn] data table
0x0A
0x0B
0x0C vv Fill full frame with vv value
0x0D
0x0E
0x0F

Extension

.MGLV (for Windows/Linux) or .MGV (for MSX-DOS)