dsm is the movie capture format of DeSmuMe, a Nintendo DS emulator.

DSM file format description


DSM is ascii plain text. It is derived from the FCEUX FM2 format. 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
String keys have values that consist of the remainder of the key-value pair line. As a consequence, string values cannot contain newlines.
Hex string keys (used for binary blobs) will have a value that is like 0x0123456789ABCDEF...
GUID keys have a value which is in the standard guid format: 452DE2C3-EF43-2FA9-77AC-0677FC51543B

Header sync information

The following keys are used (0.9.6 and later) to check sync:


The inputlog section consists of lines beginning and ending with a | (pipe).
The fields are as follows, except as noted in note C.
|c|.............XXX YYY Z|
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.
  1. microphone input
  2. reset
  3. lid switch
The format of the main section is as follows:
Additional fields after this main section may be added later without breaking the file format.


[1]: This order is intended to have sTart before Select, but due to a bug in DeSmuMe these are effectively reversed.

EmulatorResources/Desmume/DSM last edited by CasualPokePlayer on 12/14/2021 2:49 AM
Page History Latest diff List referrers View Source