{
  "executable_sha256": "2cc41a39fa95a2c9fd883c4220d7bdd9cca00c543c89b019eb270763f59d1d9a",
  "callbacks": [
    {
      "scan_code": "0x1",
      "key": "Escape",
      "callback_file": "0x84e60"
    },
    {
      "scan_code": "0x2",
      "key": "1",
      "callback_file": "0x85d9c"
    },
    {
      "scan_code": "0x3",
      "key": "2",
      "callback_file": "0x85dc4"
    },
    {
      "scan_code": "0x4",
      "key": "3",
      "callback_file": "0x85dec"
    },
    {
      "scan_code": "0x5",
      "key": "4",
      "callback_file": "0x841ec"
    },
    {
      "scan_code": "0x6",
      "key": "5",
      "callback_file": "0x85e54"
    },
    {
      "scan_code": "0x7",
      "key": "6",
      "callback_file": "0x85e3c"
    },
    {
      "scan_code": "0x8",
      "key": "7",
      "callback_file": "0x85e88"
    },
    {
      "scan_code": "0x9",
      "key": "8",
      "callback_file": "0x85ec4"
    },
    {
      "scan_code": "0xa",
      "key": "9",
      "callback_file": "0x85f00"
    },
    {
      "scan_code": "0xb",
      "key": "0",
      "callback_file": "0x85f24"
    },
    {
      "scan_code": "0xc",
      "key": "-",
      "callback_file": "0x84c70"
    },
    {
      "scan_code": "0xe",
      "key": "Backspace",
      "callback_file": "0x84a78"
    },
    {
      "scan_code": "0xf",
      "key": "Tab",
      "callback_file": "0x85a54"
    },
    {
      "scan_code": "0x10",
      "key": "Q",
      "callback_file": "0x83e78"
    },
    {
      "scan_code": "0x11",
      "key": "W",
      "callback_file": "0x84498"
    },
    {
      "scan_code": "0x12",
      "key": "E",
      "callback_file": "0x85f50"
    },
    {
      "scan_code": "0x13",
      "key": "R",
      "callback_file": "0x861c0"
    },
    {
      "scan_code": "0x14",
      "key": "T",
      "callback_file": "0x851dc"
    },
    {
      "scan_code": "0x16",
      "key": "U",
      "callback_file": "0x850a0"
    },
    {
      "scan_code": "0x17",
      "key": "I",
      "callback_file": "0x84908"
    },
    {
      "scan_code": "0x18",
      "key": "O",
      "callback_file": "0x84a78"
    },
    {
      "scan_code": "0x19",
      "key": "P",
      "callback_file": "0x86210"
    },
    {
      "scan_code": "0x1a",
      "key": "[",
      "callback_file": "0x842b0"
    },
    {
      "scan_code": "0x1b",
      "key": "]",
      "callback_file": "0x84370"
    },
    {
      "scan_code": "0x1c",
      "key": "Enter",
      "callback_file": "0x84598"
    },
    {
      "scan_code": "0x1d",
      "key": "Ctrl",
      "callback_file": "0x846e8"
    },
    {
      "scan_code": "0x1e",
      "key": "A",
      "callback_file": "0x85f90"
    },
    {
      "scan_code": "0x1f",
      "key": "S",
      "callback_file": "0x86258"
    },
    {
      "scan_code": "0x20",
      "key": "D",
      "callback_file": "0x85c78"
    },
    {
      "scan_code": "0x21",
      "key": "F",
      "callback_file": "0x846e8"
    },
    {
      "scan_code": "0x22",
      "key": "G",
      "callback_file": "0x84914"
    },
    {
      "scan_code": "0x23",
      "key": "H",
      "callback_file": "0x850a8"
    },
    {
      "scan_code": "0x24",
      "key": "J",
      "callback_file": "0x85118"
    },
    {
      "scan_code": "0x26",
      "key": "L",
      "callback_file": "0x841f8"
    },
    {
      "scan_code": "0x28",
      "key": "'",
      "callback_file": "0x83e00"
    },
    {
      "scan_code": "0x29",
      "key": "`",
      "callback_file": "0x84514"
    },
    {
      "scan_code": "0x2b",
      "key": "\\",
      "callback_file": "0x847ec"
    },
    {
      "scan_code": "0x2c",
      "key": "Z",
      "callback_file": "0x8445c"
    },
    {
      "scan_code": "0x2d",
      "key": "X",
      "callback_file": "0x84430"
    },
    {
      "scan_code": "0x2e",
      "key": "C",
      "callback_file": "0x85bb0"
    },
    {
      "scan_code": "0x2f",
      "key": "V",
      "callback_file": "0x862ac"
    },
    {
      "scan_code": "0x30",
      "key": "B",
      "callback_file": "0x84eb0"
    },
    {
      "scan_code": "0x31",
      "key": "N",
      "callback_file": "0x8500c"
    },
    {
      "scan_code": "0x32",
      "key": "M",
      "callback_file": "0x84520"
    },
    {
      "scan_code": "0x33",
      "key": ",",
      "callback_file": "0x841ac"
    },
    {
      "scan_code": "0x34",
      "key": ".",
      "callback_file": "0x841cc"
    },
    {
      "scan_code": "0x35",
      "key": "/",
      "callback_file": "0x84de4"
    },
    {
      "scan_code": "0x37",
      "key": "keypad *",
      "callback_file": "0x84c24"
    },
    {
      "scan_code": "0x39",
      "key": "Space",
      "callback_file": "0x83fa8"
    },
    {
      "scan_code": "0x3b",
      "key": "F1",
      "callback_file": "0x85348"
    },
    {
      "scan_code": "0x3c",
      "key": "F2",
      "callback_file": "0x85498"
    },
    {
      "scan_code": "0x3d",
      "key": "F3",
      "callback_file": "0x85528"
    },
    {
      "scan_code": "0x3e",
      "key": "F4",
      "callback_file": "0x855b8"
    },
    {
      "scan_code": "0x3f",
      "key": "F5",
      "callback_file": "0x855ec"
    },
    {
      "scan_code": "0x40",
      "key": "F6",
      "callback_file": "0x856c8"
    },
    {
      "scan_code": "0x41",
      "key": "F7",
      "callback_file": "0x857e0"
    },
    {
      "scan_code": "0x42",
      "key": "F8",
      "callback_file": "0x858a8"
    },
    {
      "scan_code": "0x43",
      "key": "F9",
      "callback_file": "0x8598c"
    },
    {
      "scan_code": "0x44",
      "key": "F10",
      "callback_file": "0x85820"
    },
    {
      "scan_code": "0x49",
      "key": "Page Up/keypad 9",
      "callback_file": "0x84540"
    },
    {
      "scan_code": "0x4a",
      "key": "keypad -",
      "callback_file": "0x84cac"
    },
    {
      "scan_code": "0x4c",
      "key": "keypad 5",
      "callback_file": "0x839c8"
    },
    {
      "scan_code": "0x51",
      "key": "Page Down/keypad 3",
      "callback_file": "0x8456c"
    },
    {
      "scan_code": "0x52",
      "key": "Insert/keypad 0",
      "callback_file": "0x86124"
    },
    {
      "scan_code": "0x53",
      "key": "Delete/keypad .",
      "callback_file": "0x86168"
    },
    {
      "scan_code": "0x56",
      "key": "ISO extra key",
      "callback_file": "0x859fc"
    }
  ],
  "screenshot": [
    {
      "call": "exists",
      "text": "GRAB_00.LBM"
    },
    {
      "call": "exists",
      "text": "GRAB_01.LBM"
    },
    {
      "call": "exists",
      "text": "GRAB_02.LBM"
    },
    {
      "call": "save_bitmap",
      "text": "GRAB_02.LBM",
      "framebuffer": "0xc1000",
      "format_argument": 2
    }
  ],
  "cheat": {
    "phrase": "PLOP",
    "reader_file": "0x838dc",
    "cases": [
      {
        "shift_scan": "0x2a",
        "active": 0,
        "messages": []
      },
      {
        "shift_scan": "0x36",
        "active": 1,
        "messages": [
          "CHEAT ACTIVE"
        ]
      },
      {
        "shift_scan": "0x36",
        "active": 0,
        "messages": [
          "CHEAT DISENGAGED"
        ]
      }
    ]
  },
  "auto_stick_pressure": {
    "handler_file": "0x85e54",
    "compiled_default": 1,
    "states": [
      0,
      1
    ]
  },
  "speed_preset_cases": [
    {
      "craft": "Eurofighter",
      "preset_mach": 0.7,
      "speed_of_sound": 340.0,
      "autopilot_target_speed": 237.99999999999997
    },
    {
      "craft": "F-117",
      "preset_mach": 0.85,
      "speed_of_sound": 340.0,
      "autopilot_target_speed": 289.0
    },
    {
      "craft": "F-22",
      "preset_mach": 1.2,
      "speed_of_sound": 340.0,
      "autopilot_target_speed": 408.0
    }
  ],
  "D_shortcuts": [
    {
      "key": "D",
      "calls": [],
      "countermeasure_counts": [
        0,
        0
      ]
    },
    {
      "key": "Shift+D",
      "calls": [
        "default_loadout",
        "select_weapon"
      ],
      "countermeasure_counts": [
        15,
        15
      ]
    },
    {
      "key": "Ctrl+D without cheat",
      "calls": [],
      "countermeasure_counts": [
        0,
        0
      ]
    },
    {
      "key": "Ctrl+D with cheat",
      "calls": [
        "arming_screen",
        "reload_view_artwork",
        "reload_projectile_models",
        "select_weapon"
      ],
      "countermeasure_counts": [
        0,
        0
      ]
    }
  ],
  "scope": "Native callback initialisation, screenshot naming/save-call arguments, cheat recognition, pressure toggle, speed preset and D shortcut dispatch. Message/file/menu/resource callees are intercepted; no game files are written and no complete mission or arming screen is run."
}
