ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
Decomp NamesDSPRE NamesParametersFunctionNotes
2
0000NoopNopNothing
3
0001DummyDummyNothingHas exactly the same ASM code as Nop.
4
0002EndEndEnd script execution
5
0003WaitTimeWaitTimeu16: Time; Var: Countdown VariableStop script execution for Time frames, storing the remaining time in the Countdown Variable
6
0004RegValueSetRegValueSetu8: Script Register; u8: ValueAssigns Value to Script Register value
7
0005RegDataSetRegDataSetu8: Script Register; u32: ValueAssigns Value to Script Register value
8
0006RegAdrsSetRegAdrsSetu8: Script Register; u32: AddressAssigns data in Address offset to Script Register value
9
0007AdrsValueSetAdrsValueSetu32: Address; u8: ValueAssigns Value to the Address offset
10
0008AdrsRegSetAdrsRegSetu32: Address; u8: Script RegisterAssigns Script Register value to the Address offset
11
0009RegRegSetRegRegSetu8: Script Register 1; u8: Script Register 2Assigns Script Register 2 value to Script Register 1 value
12
000AAdrsAdrsSetAdrsAdrsSetu32: Address 1; u32: Address 2Assigns data in Address 2 to the Address 1 offset
13
000BCompareRegsCompareRegsu8: Script Register; u8: Script RegisterCompares two Script Register
14
000CCompareRegValueCompareRegValueu8: Script Register; u8: ValueCompares Script Register value with Value
15
000DCompareRegAdrsCompareRegAdrsu8: Script Register; u32: AddressCompares Script Register value with data in Address
16
000ECompareAdrsRegCompareAdrsRegu32: Address; u8: Script RegisterCompares data in Address with Script Register value
17
000FCompareAdrsValueCompareAdrsValueu32: Address; u8: ValueCompares data in Address with Value
18
0010CompareAdrsAdrsCompareAdrsAdrsu32: Address 1; u32: Address 2Compares data in Address 1 with data in Address 2
19
0011CompareVarToValueCompareVarValueVar: Variable; u16: ValueCompares Variable value with Value
20
0012CompareVarToVarCompareVarsVar: Variable 1; Var: Variable 2Compares Variable 1 value with Variable 2 value
21
0013ParallelCommonScriptParallelCommonScriptu16: ??????Somehow related with parallel common script execution.
22
0014CallCommonScriptCommonScriptu16: Global Script IDCalls Global Script ID scriptSee the HGSS sheet for more info. Table in DPPt hasn't been found yet.
23
0015ReturnCommonScriptLocalScriptReturns to the invoking script/function after a Common Script
24
0016GoToJumpu32: Relative JumpJumps to a function, Relative Jump bytes forward or backwardRelative Jump can have negative values (backward jump).
25
0017JumpIfObjIDJumpIfObjIDu8: Event ID; u32: Relative JumpJumps to a function, Relative Jump bytes forward or backward, if invoking event has Event ID as ID
26
0018JumpIfEventIDJumpIfEventIDu8: ???; u32: Relative Jump???Maybe jumps to a function if invoking event has a specific ID.
27
0019JumpIfPlayerDirJumpIfPlayerDiru8: Player Direction; u32: Relative JumpJumps to a function, Relative Jump bytes forward or backward, if player is looking in Player DirectionSupposed. Needs to be tested in game.
28
001ACallCallu32: Relative JumpCalls a function, Relative Jump bytes forward or backwardCan be used to make loops when calling the own invoking function.
29
001BReturnReturnReturns to the invoking script/function after a Call
30
001CGoToIfJumpIfu8: Condition; u32: Relative JumpIf Condition in the condition table, jumps to a functionAsk AdAstra for the condition list. Condition table is updated after a IfVarValue, IfVarVar, CheckFlag...
31
001DCallIfCallIfu8: Condition; u32: Relative JumpIf Condition in the condition table, calls a function
32
001ESetFlagSetFlagu16: FlagSets Flag to 1
33
001FClearFlagClearFlagu16: FlagSets Flag to 0
34
0020CheckFlagCheckFlagu16: FlagChecks if Flag is setIt updates the internal condition flag and maybe part of the condition table.
35
0021CheckFlagFromVarCheckFlagToVarVar: Flag; Var: VariableChecks if Flag is set and store the result in Variable
36
0022SetFlagFromVarSetFlagFromVarVar: FlagSets the flag whose ID is stored in Flag
37
0023SetTrainerFlagSetTrainerFlagFlex: Trainer IDSets the flag of Trainer ID, so marks it as beaten trainerSo this trainer will not battle against you. Used in every Gym after the leader is beaten.
38
0024ClearTrainerFlagClearTrainerFlagFlex: Trainer IDClears the flag of Trainer ID, so marks it as unbeaten trainerSo this trainer can be challenged again.
39
0025CheckTrainerFlagCheckTrainerFlagFlex: Trainer IDChecks if Trainer ID has been beatenIt updates the internal condition flag and maybe part of the condition table.
40
0026AddVarIncrementVarVar: Variable; Flex: OperandStores the operation Variable + Operand in Variable
41
0027SubVarDecrementVarVar: Variable; Flex: OperandStores the operation Variable - Operand in Variable
42
0028SetVarFromValueSetVarVar: Variable; u16: ValueStores Value in Variable
43
0029SetVarFromVarSetVarFromVariableVar: Variable 1; Var: Variable 2Assigns value of Variable 2 to Variable 1
44
002ASetVarFromFlexibleSetVarFromFlexibleVar: Variable; u16: Flexible ValueStores Flexible Value (or its value if Variable) in Variable
45
002BMessageInstantMessageAllu8: Text SlotDisplay line Text Slot from the text file, all at once
46
002CMessageMessageu8: Text SlotDisplay line Text Slot from the text file
47
002DMessageVarMessageFlexFlex: Text SlotDisplay line Text Slot from the text fileUnlike 002C, this command also accepts a variable as the input field.
48
002EMessageNoSkipMessageNoSkipu16: Text Slot???
49
002FMessageSynchronizedCMD_47u8: Text Slot???
50
0030WaitABPressWaitABWaits for button A or button B to be pressedSomehow it uses ScrReg 0 as countdown.
51
0031WaitABXPadPressWaitButtonWaits for a button to be pressedIt seems only A, B, X and direction pad buttons work.
52
0032WaitABPadPressWaitABPadWaits for button A, button B or pad buttons to be pressedSupposed. Needs to be tested in game.
53
0033OpenMessageOpenMessage???
54
0034CloseMessageCloseMessageCloses message boxSDSME name is misleading, for no button is needed to be pressed.
55
0035CloseMessageWithoutErasingFreezeMessage???Probably keeps the message box alive after a script. ASM differs with CloseMessage only in a BL instruction.
56
0036DrawSignpostInstantMessageSetIconBoardu8: Text Slot; u8: Type; u16: Icon; u16: UnusedPrepares an icon board message box displaying Text Slot message, of Type type, and with Icon image if chosen type supports itType values from 0 to 3 are: brown (with icon), green (with icon), gray and blue.
57
0037DrawSignpostTextBoxSetTextBoardu8: Type; u16: IconPrepares a text board message box of Type type, and with Icon image if chosen type supports itType values from 0 to 3 are: brown (with icon), green (with icon), gray and blue.
58
0038SetSignpostCommandShowBoardu8: ProcessTriggers different Process processes for the boardProcess value 0 keeps the board, value 1 creates the board, value 2 hides the board, value 3 shows the board and value 4 deletes the board.
59
0039WaitForSignpostDoneWaitBoardWaits the board last process to endSupposed.
60
003ADrawSignpostScrollingMessageBoardMessageu8: Text Slot; Flex: VariableDisplays Text Slot message in the current text box, stores the current text box status in Variable
61
003BGetSignpostInputCloseBoardVar: VariableReturns 1 to Variable if the player has pressed a button so the board must close, 0 otherwiseVariable is stored in ScrReg 0. Command waits for a button to be pressed and stores result in Variable.
62
003CShowStartMenuShowStartMenu???
63
003DScrollBG3CMD_61u8: ???; u8: ???; u8: ???; u8: ???; u8: ???; u8: ??????
64
003EShowYesNoMenuYesNoBoxVar: VariableOpens a Yes-No dialog and stores user response in VariableVariable is stored in ScrReg 0.
65
003FScrCmd_Unused_03FDummyGuinnessBoxNothing
66
0040InitGlobalTextMenuMultiStandardTextu8: X; u8: Y; u8: Cursor; u8: Cancel; Var: SelectionPrepares a multiple selection menu at X and Y screen position, with Cursor default selected option and possibility of cancelling depending on Cancel, with text bank #361, returns selected slot ID in SelectionIf Cancel is 1, the user can select the last option by pressing B button.
67
0041InitLocalTextMenuMultiLocalTextu8: X; u8: Y; u8: Cursor; u8: Cancel; Var: SelectionPrepares a multiple selection menu at X and Y screen position, with Cursor default selected option and possibility of cancelling depending on Cancel, with local texts, returns selected slot ID in SelectionIf Cancel is 1, the user can select the last option by pressing B button.
68
0042AddMenuEntryImmAddMultiOptionu8: Text Slot; u8: Multi SlotAdds an option with Multi Slot ID showing Text Slot text
69
0043ShowMenuShowMultiShows the prepared multi in screenThe game will hide it when the player has selected an option.
70
0044InitGlobalTextListMenuListStandardTextu8: X; u8: Y; u8: Cursor; u8: Cancel; Var: SelectionPrepares a multiple selection list at X and Y screen position, with Cursor default selected option and possibility of cancelling depending on Cancel, with text bank #361, returns selected slot ID in SelectionIf Cancel is 1, the user can select the last option by pressing B button. The difference between a Multi and a List seems to be that lists are scrollable.
71
0045InitLocalTextListMenuListLocalTextu8: X; u8: Y; u8: Cursor; u8: Cancel; Var: SelectionPrepares a multiple selection list at X and Y screen position, with Cursor default selected option and possibility of cancelling depending on Cancel, with local texts, returns selected slot ID in SelectionIf Cancel is 1, the user can select the last option by pressing B button. The difference between a Multi and a List seems to be that lists are scrollable.
72
0046AddListMenuEntryAddListOptionFlex: Option Msg; Flex: Highlight Msg; Flex: List SlotAdds a new option to the list, with List Slot ID and showing text line Option MSG. It also displays text line Highlight MSG when that option is highlighted.If Highlight MSG is set to 255 [0xFF], no message will be displayed when the option is highlighted.
This command relies on an open message box in order to display the highlight messages.

Trying to highlight an option with Highlight MSG different than 255 [0xFF] will result in a crash if no message box is already being displayed.
73
0047ShowListMenuShowListShows the prepared list in screenThe game will hide it when the player has selected an option.
74
0048ShowMenuMultiColumnMultiColumnu8: ColumnsSplits the multi window in Columns different columns
75
0049PlayFanfarePlayFanfareFlex: SoundPlays Sound
76
004AStopFanfareStopFanfareFlex: SoundStops Sound
77
004BWaitFanfareWaitFanfareFlex: SoundWaits for Sound to finish
78
004CPlayCryPlayCryFlex: Pokémon; Flex: UnusedPlays a Pokémon cry
79
004DWaitCryWaitCryWaits the current cry to finish
80
004EPlaySoundPlaySoundu16: SoundPauses current music, then Plays Sound
81
004FWaitSoundWaitSoundWaits for Sound to finish, then resumes music
82
0050PlayMusicPlayMusicu16: MusicPlays Music
83
0051StopMusicStopMusicu16: UnusedStops current musicParameter is ignored because the game identifies what music is playing.
84
0052PlayDefaultMusicPlayDefaultMusicPlays map default music
85
0053SetSpecialBGMSetMusicu16: Music???Refers to a "special bgm".
86
0054FadeOutBGMFadeOutMusicu16: Volume; u16: TimeFades out the current music to Volume in Time frames
87
0055FadeInBGMFadeInMusicu16: TimeFades in the current music to normal volume in Time frames
88
0056SetBGMPlayerPausedSetMusicPauseStatusu8: Sseq Player ID; u8: StatusIf Status = 1, the track that's currently played by chosen Player ID will pause. If Status = 0, Player ID will resume the previously paused music.
89
0057PlayFieldBGMPlayFieldBGMu16: MusicWhile in the field overworld, plays Music using SSEQ Player #7 (PLAYER_BGM)
90
0058SetBGMFixedCMD_88u8: ??????Seems to set a flag related to the music system.
91
0059CheckRecordedChatotCryIsPlayableCheckChatotCryVar: VariableChecks if Chatot has custom sound, stores answer in VariableReturns 0 or 1 to the specified Variable. Not for a specific Chatot but for all (they share a custom sound).
92
005ATryRecordChatotCryStartChatotCryVar: VariableStarts Chatot microphone record, stores answer in VariableReturns 0 or 1 to the specified Variable depending on successful recording.
93
005BStopRecordingChatotCryStopChatotCryStops recording Chatot custom sound
94
005CStoreRecordedChatotCrySaveChatotCry???Maybe saves the custom Chatot sound in the savegame.
95
005DSetSubScene63LoadSpearPillarAudioLoads Spear Pillar cutscene sound data (GROUP_SE_CLIMAX in the SDAT)
96
005EApplyMovementMovementFlex: Event ID; u32: Relative JumpApplies movement at Relative Jump to Event IDIt seems that movements must be halfword-aligned in the script file.
97
005FWaitMovementWaitMovementWaits for all movements to finish
98
0060LockAllLockAllLocks every event in the map
99
0061ReleaseAllReleaseAllReleases every event in the map
100
0062LockObjectLocku16: Event IDLocks Event ID