Difference between revisions of "MGV"
From MSX Game Library
| Line 52: | Line 52: | ||
! Cmd !! Options !! Desc. | ! Cmd !! Options !! Desc. | ||
|- | |- | ||
| − | | <tt> | + | | <tt>00</tt> || || End of data |
|- | |- | ||
| − | | <tt> | + | | <tt>01</tt> || || End of line |
|- | |- | ||
| − | | <tt> | + | | <tt>02</tt> || || End of frame |
|- | |- | ||
| − | | <tt> | + | | <tt>03</tt> || || End of segment (increment segment index and reset data pointer) |
| + | |||
|- | |- | ||
| − | | <tt> | + | | <tt>n4</tt> || || Skip <tt>n</tt> bytes (1-16) |
|- | |- | ||
| − | | <tt> | + | | <tt>05</tt> || <tt>nn</tt> || Skip <tt>nn</tt> bytes (1-256) |
|- | |- | ||
| − | | <tt> | + | | <tt>06</tt> || <tt>nnnn</tt> || Skip <tt>nnnn</tt> bytes (1-65536) |
|- | |- | ||
| − | | <tt> | + | | <tt>07</tt> || || Skip a frame |
| + | |||
|- | |- | ||
| − | | <tt> | + | | <tt>n8</tt> || <tt>vv</tt> || Fill <tt>n</tt> bytes (1-256) with <tt>vv</tt> value |
|- | |- | ||
| − | | <tt> | + | | <tt>09</tt> || <tt>vv,nn</tt> || Fill <tt>nn</tt> bytes (1-256) with <tt>vv</tt> value |
|- | |- | ||
| − | | <tt> | + | | <tt>0A</tt> || <tt>vv,nnnn</tt> || Fill <tt>nnnn</tt> bytes (1-65536) with <tt>vv</tt> value |
|- | |- | ||
| − | | <tt> | + | | <tt>0B</tt> || <tt>vv</tt> || Fill a full frame with <tt>vv</tt> value |
| + | |||
| + | |||
|- | |- | ||
| − | | <tt> | + | | <tt>nC</tt> || <tt>vv[n]</tt> || Copy <tt>n</tt> bytes (1-256) from <tt>vv[n]</tt> data table |
|- | |- | ||
| − | | <tt> | + | | <tt>0D</tt> || <tt>nn,vv[nn]</tt> || Copy <tt>nn</tt> bytes (1-256) from <tt>vv[nn]</tt> data table |
|- | |- | ||
| − | | <tt> | + | | <tt>0E</tt> || <tt>nnnn,vv[nnnn]</tt> || Copy <tt>nnnn</tt> bytes (1-65536) from <tt>vv[nnnn]</tt> data table |
|- | |- | ||
| − | | <tt> | + | | <tt>0F</tt> || <tt>vv[]</tt> || Copy a full frame from data table (raw frame) |
|} | |} | ||
== Extension == | == Extension == | ||
<tt>.MGLV</tt> (for Windows/Linux) or <tt>.MGV</tt> (for MSX-DOS) | <tt>.MGLV</tt> (for Windows/Linux) or <tt>.MGV</tt> (for MSX-DOS) | ||
Revision as of 01:08, 31 March 2024
MGLV is a video format for MSXgl.
Contents
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 (4 bytes) |
| (0x0005) | 1 | Video format - Mode |
7 6 5 4 3 2 1 0 │ │ └──┴──┴──┴── Screen mode (0-15) └──┴──────────────────── Bit per pixel (0: 1-bit, 1: 2-bit, 2: 4-bit, 3: 8-bit) Screen mode:
|
| (0x0006) | 1 | Video format - Speed |
7 6 5 4 3 2 1 0 │ └──┴──┴──┴── Frame delay (1-16) └─────────────────────── Frequency (0: 50 Hz, 1: 60 Hz) |
| (0x0007) | 1 | Video format - Width | 1-256 |
| (0x0008) | 1 | Video format - Height | 1-256 |
Commands
| Cmd | Options | Desc. |
|---|---|---|
| 00 | End of data | |
| 01 | End of line | |
| 02 | End of frame | |
| 03 | End of segment (increment segment index and reset data pointer) | |
| n4 | Skip n bytes (1-16) | |
| 05 | nn | Skip nn bytes (1-256) |
| 06 | nnnn | Skip nnnn bytes (1-65536) |
| 07 | Skip a frame | |
| n8 | vv | Fill n bytes (1-256) with vv value |
| 09 | vv,nn | Fill nn bytes (1-256) with vv value |
| 0A | vv,nnnn | Fill nnnn bytes (1-65536) with vv value |
| 0B | vv | Fill a full frame with vv value
|
| nC | vv[n] | Copy n bytes (1-256) from vv[n] data table |
| 0D | nn,vv[nn] | Copy nn bytes (1-256) from vv[nn] data table |
| 0E | nnnn,vv[nnnn] | Copy nnnn bytes (1-65536) from vv[nnnn] data table |
| 0F | vv[] | Copy a full frame from data table (raw frame) |
Extension
.MGLV (for Windows/Linux) or .MGV (for MSX-DOS)