View Page Source

Revision (current)
Last Updated by feos on 3/19/2016 10:05 AM
Back to Page

This is the movie format used in:
* [Emulator Resources/Mednafen]
* [Emulator Resources/VBjin]
* [Emulator Resources/Pcejin]

! Format

MC2 is ASCII plain text. It consists of several key-value pairs followed by an inputlog section.

The inputlog section can be identified by its starting with a | (pipe). The inputlog section terminates at eof. Newlines may be \r\n or \n

Key-value pairs consist of a key identifier, followed by a space separator, followed by the value text. Value text is always terminated by a newline, which the value text will not include. The value text is parsed differently depending on the type of the key. The key-value pairs may be in any order, except that the first key must be version.

Integer keys (also used for Booleans, with a 1 or 0) will have a value that is a simple integer not to exceed 32bits

* version (required) - the version of the movie file format; for now it is always 1
* emuVersion (required) - the version of the emulator used to produce the movie
* rerecordCount (optional) - the rerecord count
* PCECD (bool) (optional) - true if the movie was recording on a CD game
* ports (note C) - indicates the number of control inputs (valid ranges are 1-5)
* comment (optional) - simply a memo.
* by convention, the first token in the comment value is the subject of the comment.
* by convention, subsequent comments with the same subject will have their ordering preserved and may be used to approximate multiline comments.
* by convention, the author of the movie should be stored in comment(s) with a subject of: author

! Inputlog

The inputlog section consists of lines beginning and ending with a | (pipe). The fields are as follows, except as noted in note C.
c 	port0 	port1 	port2

Field c is a variable length decimal integer which is a bitfield corresponding to miscellaneous input states which are valid at the start of the frame. Current values for this are

* MOVIECMD_RESET = 1

The format of port0, port1, port2 depends on which types of devices were attached.
SI_GAMEPAD

* the field consists of eight characters which constitute a bitfield.
* any character other than ' ' or '.' means that the button was pressed. By convention, the following mnemonics will be used in a column to remind us of which button corresponds to which column:
* UDLR12NS (Up,Down,Left,Right,I,II,Run,Select)

! Emulator Framerate constant

* FPS = 7159090.90909090 / 455 / 263;  (approx 59.826 fps)