# MEGATON MUSASHI W: WIRED 3.0.3
# BID: 0D28F064B3A5D030

unsafeCheck: true

MASTER_WRITE:
  # Redirect reading DR timing in DynamicResolution::UpdateResolution() to MAIN + 0xC88AF00
  # only for handheld (default handheld: 31.25 ms, docked: 46.875 ms - probably to block DR from working without disabling it)
  -
    type: bytes
    main_offset: 0x74F5118
    value_type: uint32
    value: 
      - 0xB0029CA8
      - 0xB94F0108
  # Default handheld value
  -
    type: bytes
    main_offset: 0xC88AF00
    value_type: uint32
    value: 600000
ALL_FPS:
  # fixedDeltaTime = 1/FPS
  -
    type: evaluate_write
    address: [MAIN, 0xC809DA0, 0x48]
    value_type: float
    value: "1 / FPS_TARGET"
  - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS)
    type: write
    address: [MAIN, 0xC809DA0, 0x100]
    value_type: float
    value: 0.0666666666
  # Dynamic Resolution Timing = (0.9375/FPS) * 19200000
  -
    type: evaluate_write
    address: [MAIN, 0xC88AF00]
    value_type: uint32
    value: "(0.9375 / FPS_TARGET) * 19200000"
