# Contra: Rogue Corps 1.3.0
# BID: 4CCD2F6D331DD104

unsafeCheck: true

MASTER_WRITE:
  # Read FPS target from code cave at MAIN + 0xA13170
  -
    type: bytes
    main_offset: 0x2004
    value_type: uint32
    value: 0x1428445B
  # CODE CAVE - read FPS target from MAIN + 0xD94628
  -
    type: bytes
    main_offset: 0xA13170
    value_type: uint32
    value:
      - 0xB0001C08
      - 0xB9462908
      - 0x17D7BBA4
  # Redirect DR time factor to MAIN + 0x2ECAB38
  -
    type: bytes
    main_offset: 0x2140
    value_type: uint32
    value:
      - 0x90017648
      - 0xBD4B3909
  # Default value
  -
    type: bytes
    main_offset: 0x2ECAB38
    value_type: float
    value: 1000000
15FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 15
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 2000000
20FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 20
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 1500000
25FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 25
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 1200000
30FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 30
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 1000000
35FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 35
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 857142
40FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 40
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 750000
45FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 45
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 666666
50FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 50
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 600000
55FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 55
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 545454
60FPS:
  -
    type: write
    address: [MAIN, 0xD94628]
    value_type: uint32
    value: 60
  -
    type: write
    address: [MAIN, 0x2ECAB38]
    value_type: float
    value: 500000