Memory layout

| 0xF2 | B1 / B2 | B3 / B4 | 0 / B6 | Op | Param1 | Param2 | Param3 | Param4 | Param5 | |——|———–|———–|———-|——|———-|———-|———-|———-|———-|

Arguments

Description

Perform an operation described by Op, and uses the parameters depending on the operation.

Operation list (by Aali and DLPB

  • **20** Play one sound effect \[param1=Panning, param2=Effect ID on channel \#1\]
  • **21** Play two sound effects \[param1=Panning, param2=Effect ID on channel \#1, param3=Effect ID on channel \#2\]
  • **22** Play three sound effects \[param1=Panning, param2=Effect ID on channel \#1, param3=Effect ID on channel \#2, param4=Effect ID on channel \#3\]
  • **23** Play four sound effects \[param1=Panning, param2=Effect ID on channel \#1, param3=Effect ID on channel \#2, param4=Effect ID on channel \#3, param5=Effect ID on channel \#4\]
  • **24** Same as 20
  • **25** Same as 21
  • **26** Same as 22
  • **27** Same as 23
  • **28** Play a sound effect on channel \#1 \[param1=Panning, param2=Effect ID\]
  • **29** Play a sound effect on channel \#2 \[param1=Panning, param2=Effect ID\]
  • **2A** Play a sound effect on channel \#3 \[param1=Panning, param2=Effect ID\]
  • **2B** Play a sound effect on channel \#4 \[param1=Panning, param2=Effect ID\]
  • **30** Play a sound effect on channel \#5 with centre panning

  • **98** Resumes music and sound effects
  • **99** Pauses music and sound effects
  • **9A** Resumes only the music
  • **9B** Pauses only the music
  • **9C** Resumes only sound effects
  • **9D** Pauses only sound effects

  • **A0** Volume control (channel \#1) \[param1=Volume\]
  • **A1** Volume control (channel \#2) \[param1=Volume\]
  • **A2** Volume control (channel \#3) \[param1=Volume\]
  • **A3** Volume control (channel \#4) \[param1=Volume\]
  • **A4** Volume transition (channel \#1) \[param1=Transition time, param2=Target volume\]
  • **A5** Volume transition (channel \#2) \[param1=Transition time, param2=Target volume\]
  • **A6** Volume transition (channel \#3) \[param1=Transition time, param2=Target volume\]
  • **A7** Volume transition (channel \#4) \[param1=Transition time, param2=Target volume\]
  • **A8** Pan control (channel \#1) \[param1=Panning\]
  • **A9** Pan control (channel \#2) \[param1=Panning\]
  • **AA** Pan control (channel \#3) \[param1=Panning\]
  • **AB** Pan control (channel \#4) \[param1=Panning\]
  • **AC** Pan transition (channel \#1) \[param1=Transition time, param2=Target panning\]
  • **AD** Pan transition (channel \#2) \[param1=Transition time, param2=Target panning\]
  • **AE** Pan transition (channel \#3) \[param1=Transition time, param2=Target panning\]
  • **AF** Pan transition (channel \#4) \[param1=Transition time, param2=Target panning\]

  • **B0** Tempo control (channel \#1) \[param1=Tempo\]
  • **B1** Tempo control (channel \#2) \[param1=Tempo\]
  • **B2** Tempo control (channel \#3) \[param1=Tempo\]
  • **B3** Tempo control (channel \#4) \[param1=Tempo\]
  • **B4** Tempo transition (channel \#1) \[param1=Transition time, param2=Target tempo\]
  • **B5** Tempo transition (channel \#2) \[param1=Transition time, param2=Target tempo\]
  • **B6** Tempo transition (channel \#3) \[param1=Transition time, param2=Target tempo\]
  • **B7** Tempo transition (channel \#4) \[param1=Transition time, param2=Target tempo\]
  • **B8** Volume control for channel \#1 to \#4 \[param1=Volume\]
  • **B9** Volume transition for channel \#1 to \#4 \[param1=Transition time, param2=Target volume\]
  • **BA** Pan control for channel \#1 to \#4 \[param1=Panning\]
  • **BB** Pan transition for channel \#1 to \#4 \[param1=Transition time, param2=Target panning\]
  • **BC** Tempo control for channel \#1 to \#4 \[param1=Tempo\]
  • **BD** Tempo transition for channel \#1 to \#4 \[param1=Transition time, param2=Target tempo\]

  • **C0** Music volume \[param1=Volume\]
  • **C1** Music volume transition \[param1=Transition time, param2=Target volume\]
  • **C2** Music From-To volume transition \[param1=Transition time, param2=Starting volume, param3=Ending volume\]

  • **C8** Music balance \[param1=balance\]
  • **C9** Music balance transition \[param1=Transition time, param2=Target balance\]
  • **CA** Music From-To balance transition \[param1=Transition time, param2=Starting balance, param3=Ending balance\]

  • **D0** Music tempo \[param1=Tempo\]
  • **D1** Music tempo transition \[param1=Transition time, param2=Target tempo\]
  • **D2** Music From-To tempo transition \[param1=Transition time, param2=Starting tempo, param3=Ending tempo\]

  • **F0** Stop music
  • **F1** Stop sound effects (channel \#1 to \#4)
  • </ul>

    Please Note

    Channel #5 (used from operation 0x30) is dedicated to the menu and should not be used for anything else.
    All transitions use the formula Transition_time (in seconds) = param1 / 60.
    The pan (audio L/R balance) value range is 0 to 127, where 0 is fully left, 64 is centre, and 127 is fully right.
    The maximum volume is 127.
    The tempo value range is 0 to 127. The normal tempo is 0.
    Operations 0x10/14/18/19 do not work on the PSX game from field script [CURRENTLY CHECKING THIS].
    Operations 0xC8/C9/CA are not implemented in the PSX version or PC version despite the field script calling them.