TASVideos

Tool-assisted game movies
When human skills are just not enough

Bizhawk / BKM Format

<< Bizhawk

Note: this is the original movie format of the BizHawk emulator. It was used up until the 1.7.0 release, after which it was obsoleted by the .bk2 format

Text file format

the .bkm format is a text file in UTF-8 encoding

Header

All of these items are strings if not mentioned otherwise.

Main

  • comment - A note that's not used by the emulator in any way.
  • emuVersion - Version of BizHawk used to create the movie.
  • MovieVersion - Movie format version.
  • Platform - Game system used.
  • GameName - Name of the game used.
  • Author - Creator of the movie.
  • rerecordCount - Number of rerecords used while making the movie (Integer).
  • GUID - Globally unique identifier of the movie.
  • StartsFromSavestate - Whether or not the movie was recorded from a savestate (Boolean: True or False).
  • SHA1 - SHA-1 checksum of the ROM file used.
  • FirmwareSHA1 - the SHA-1 checksum of the Firmware (BIOS) file used when recording the movie
  • subtitle - A message to be displayed on screen during the playback of the movie.
    • Format: "subtitle FRAME X Y LENGTH COLOR MESSAGE" where FRAME is an integer denoting when to start the displaying the subtitle, X is an integer for the horizontal position to display it at, Y is an integer for the vertical position to display it at, LENGTH is the an integer defining how many frames to display the subtitle for, COLOR is a hexadecimal number describing the subtitle's color, and MESSAGE is the actual string message for the subtitle.
  • PAL - Whether or not the movie was recorded in PAL mode (Boolean: True or False).
  • BoardName - The board/mapper type, on systems that have this info and have implemented this feature
  • Skip_Bios - indicates the bios was skipped (only certain cores implement this)
  • VideoPlugin - The video plugin used (for cores that use plugins)

  • LoopOffset - this value indicates it is an infinite loop movie. Existence of this line will indicate this. The value is an integer value specifying at which frame the movie will loop back to when it reaches the end of the input log. This feature was originally made available in BizHawk 1.4.1

Headers Imported from Other Emulators

  • CoreOrigin - Version of the core used for the original movie (.LSMV).
  • CRC16 - 16-bit cyclic redundancy check (Integer, .VBM).
  • CRC32 - 32-bit cyclic redundancy check (Integer, .SMV, .VMV, .ZMV).
  • emuOrigin - Version of the emulator used for the original movie (.FCM, .FM2, .FMV, .GMV, .LSMV, .MC2, .MCM, .MMV, .NMV, .SMV, .VBM, .VMV, .ZMV).
  • GameCode - Game Code of the ROM used while recording (Integer, .VBM).
  • InternalChecksum - Internal Checksum of the ROM used while recording (Integer, .VBM).
  • Japan - Whether or not the ROM used is from Japan (Boolean: True or False, .MMV).
  • MD5 - Encrypted checksum of the ROM file used (.FCM, .FM2, .MC2, .MCM, .MMV)
  • MovieOrigin - Version of the movie format used in the original movie (.FCM, .FM2, .FMV, .GMV, .LSMV, .MC2, .MCM, .MMV, .NMV, .SMV, .VBM, .VMV, .ZMV).
  • port1 - Details on the device plugged into port 1 (.LSMV).
  • port2 - Details on the device plugged into port 2 (.LSMV).
  • ProjectID - The movie's ID (.LSMV).
  • SHA256_X - SHA-256 checksum of the ROM file used. X denotes the name of the .sha256 source file (.LSMV).
  • SuperGameBoyMode - Whether or not the the original movie was recorded in SGB mode (Boolean: True or False, .VBM).
  • StartSecond - The second in which the movie starts (.LSMV).
  • StartSubSecond - The sub-second in which the movie starts (.LSMV).
  • SyncHack - Whether or not the sync hack was enabled for the original movie (Boolean: True or False, .FCM).
  • UnitCode - The game's unit code (Integer, .VBM).

GBx Specific

  • Force_DMG_Mode - forces the game into the original GB mode
  • GBA_In_CGB - indicates a GBA game running in Gameboy Color mode
  • SGB - Indicates the game is in Super Gameboy mode

All non-utilized headers are treated like comments. All unknown headers in .FM2 and .MC2 are copied verbatim as such.

Input

NES / Gameboy

  |Flag|UDLRsSBA|
For NES, the Flag can be 'r' to indicate a reset. For Gameboy and NES, it can be 'P' to indicate a hard reset (Power).

Dual Gameboy

Flag UDLRsSBA Flag UDLRsSBA

Same pattern as Gameboy but for two gameboys

GBA

P UDLRsSBALR

'P' is the power button

Genesis 3-Button

  |Flag|UDLRSABC|
Genesis 3-Button currently does not have any flags.

PC Engine

  |Flag|UDLRsr21|
PC Engine currently does not have any flags.

SMS / GG / SG-1000

  |UDLR12|Other Controllers...|pr|
p is pause, and r is reset

SNES / SGB

  |Flag|UDLRsSBAXYLR|
The Flag can be 'r' to indicate a soft reset or 'P' to indicate a hard reset (Power).

Atari 2600

rs UDLRB UDLRB

'r' indicates a soft reset, and s is the select switch

Atari 7800

Prsp UDLR12 UDLR12

  • 'P' is hard reset (Power)
  • 'r' indicates a soft reset
  • 's' is the select switch
  • 'p' is the pause button

N64

Flag UDLRBAZSLRudlr xxx, yyy other controllers

udlr are the C buttons. Flag can be r for soft reset, and P for hard reset (Power)

[space/-]xxx are the characters for the analog X position, if negative the space will be a minus sign. [space/-]yyy is the analog Y position

Saturn

Flag UDLRSXYZABClr

Flag can be r for soft reset, and P for hard reset (Power)

Coleco

UDLRlr123456789*0# UDLRlr123456789*0#

'*' is the Star button, '#' is the pound button

Commodore 64

UDLRB UDLRB 1357l1234567890+-1cicQWERTYUIOP@*urskASDFGHJKL:;=eosZXCVBNM,>/sul_

The first two sections are for the joystick controllers (B is the button). The remaining represent the commodore keyboard.

TI-83

  |0123456789`O=UDLR+_*/c^-()TVCPsmX>nL21HAGtZWY&OD,S|Flag|
TI-83 currently does not have any flags.


Combined RSS Feed
Bizhawk/BKMFormat last edited by adelikat on 2014-06-17 01:06:47
Page info and history | Latest diff | List referrers | View Source