Files
tmc/asm/macros/script.inc
T
2021-03-06 14:53:33 +01:00

683 lines
7.4 KiB
ObjectPascal

@ All the macro functions for scripts
@ Generated by disassemble_script.py
.macro SCRIPT_START name
.globl \name
.section .text
\name:
.endm
.macro SCRIPT_END
.short 0xffff
.endm
.macro ScriptCommandNop
.short 0x0400
.endm
.macro StartScript
.short 0x0401
.endm
.macro StopScript
.short 0x0402
.endm
.macro Jump s
.short 0x0803
.short \s
.endm
.macro JumpIf s
.short 0x0804
.short \s
.endm
.macro JumpIfNot s
.short 0x0805
.short \s
.endm
.macro _0807E078 s
.short 0x0806
.short \s
.endm
.macro JumpAbsolute w
.short 0x0c07
.word \w
.endm
.macro JumpAbsoluteIf w
.short 0x0c08
.word \w
.endm
.macro JumpAbsoluteIfNot w
.short 0x0c09
.word \w
.endm
.macro _0807E0E0 w
.short 0x0c0a
.word \w
.endm
.macro Call w
.short 0x0c0b
.word \w
.endm
.macro CallWithArg a,b
.short 0x140c
.word \a
.word \b
.endm
.macro LoadRoomEntityList w
.short 0x0c0d
.word \w
.endm
.macro TestBit w
.short 0x0c0e
.word \w
.endm
.macro CheckInventory1 s
.short 0x080f
.short \s
.endm
.macro CheckInventory2 s
.short 0x0810
.short \s
.endm
.macro HasRoomItemForSale s
.short 0x0811
.short \s
.endm
.macro CheckLocalFlag s
.short 0x0812
.short \s
.endm
.macro CheckLocalFlagByOffset a,b
.short 0x0c13
.short \a
.short \b
.endm
.macro CheckGlobalFlag s
.short 0x0814
.short \s
.endm
.macro CheckRoomFlag s
.short 0x0815
.short \s
.endm
.macro CheckPlayerInRegion a,b,c
.short 0x1016
.short \a
.short \b
.short \c
.endm
.macro CheckPlayerInRegion2 s
.short 0x0817
.short \s
.endm
.macro CheckEntityInteractType
.short 0x0418
.endm
.macro _0807E30C
.short 0x0419
.endm
.macro HasRupees s
.short 0x081a
.short \s
.endm
.macro _0807E3BC s
.short 0x081b
.short \s
.endm
.macro _0807E3E8
.short 0x041c
.endm
.macro CheckKinstoneFused s
.short 0x081d
.short \s
.endm
.macro BuyItem a,b
.short 0x0c1e
.short \a
.short \b
.endm
.macro _0807E48C s
.short 0x081f
.short \s
.endm
.macro _0807E4CC w
.short 0x0c20
.word \w
.endm
.macro _0807E4EC w
.short 0x0c21
.word \w
.endm
.macro _0807E51 s
.short 0x0822
.short \s
.endm
.macro CheckPlayerFlags w
.short 0x0c23
.word \w
.endm
.macro _0807E564
.short 0x0424
.endm
.macro EntityHasHeight
.short 0x0425
.endm
.macro ComparePlayerAction s
.short 0x0826
.short \s
.endm
.macro ComparePlayerAnimationState s
.short 0x0827
.short \s
.endm
.macro _0807E5F8 w
.short 0x0c28
.word \w
.endm
.macro _0807E610 w
.short 0x0c29
.word \w
.endm
.macro SetLocalFlag s
.short 0x082a
.short \s
.endm
.macro SetLocalFlagByOffset a,b
.short 0x0c2b
.short \a
.short \b
.endm
.macro ClearLocalFlag s
.short 0x082c
.short \s
.endm
.macro SetGlobalFlag s
.short 0x082d
.short \s
.endm
.macro ClearGlobalFlag s
.short 0x082e
.short \s
.endm
.macro SetRoomFlag s
.short 0x082f
.short \s
.endm
.macro ClearRoomFlag s
.short 0x0830
.short \s
.endm
.macro Wait s
.short 0x0831
.short \s
.endm
.macro WaitForSomething w
.short 0x0c32
.word \w
.endm
.macro WaitForSomething2 w
.short 0x0c33
.word \w
.endm
.macro WaitPlayerAction8
.short 0x0434
.endm
.macro WaitForPlayerAction0x17
.short 0x0435
.endm
.macro WaitFor_1
.short 0x0436
.endm
.macro WaitFor_2
.short 0x0437
.endm
.macro _0807E778 s
.short 0x0838
.short \s
.endm
.macro _0807E788 w
.short 0x0c39
.word \w
.endm
.macro _0807E79C
.short 0x043a
.endm
.macro ScriptCommandNop2 s
.short 0x083b
.short \s
.endm
.macro DoFade4
.short 0x043c
.endm
.macro DoFade5
.short 0x043d
.endm
.macro DoFade6
.short 0x043e
.endm
.macro DoFade7
.short 0x043f
.endm
.macro _0807E800 w
.short 0x0c40
.word \w
.endm
.macro _0807E80C w
.short 0x0c41
.word \w
.endm
.macro _0807E858 s
.short 0x0842
.short \s
.endm
.macro _0807E864
.short 0x0443
.endm
.macro _0807E878
.short 0x0444
.endm
.macro _0807E888
.short 0x0445
.endm
.macro SetPlayerAction w
.short 0x0c46
.word \w
.endm
.macro StartPlayerScript w
.short 0x0c47
.word \w
.endm
.macro _0807E8D4 s
.short 0x0848
.short \s
.endm
.macro _0807E8E4_0
.short 0x0449
.endm
.macro _0807E8E4_1
.short 0x044a
.endm
.macro _0807E8E4_2
.short 0x044b
.endm
.macro _0807E8E4_3
.short 0x044c
.endm
.macro _0807E908 s
.short 0x084d
.short \s
.endm
.macro _0807E914 w
.short 0x0c4e
.word \w
.endm
.macro _0807E924
.short 0x044f
.endm
.macro _0807E930 s
.short 0x0850
.short \s
.endm
.macro _0807E944
.short 0x0451
.endm
.macro _0807E974 s
.short 0x0852
.short \s
.endm
.macro _0807E9D4
.short 0x0453
.endm
.macro _0807E9DC
.short 0x0454
.endm
.macro _0807E9E4 s
.short 0x0855
.short \s
.endm
.macro _0807E9F0
.short 0x0456
.endm
.macro _0807EA4C
.short 0x0457
.endm
.macro _0807EA88 s
.short 0x0858
.short \s
.endm
.macro _0807EA94
.short 0x0459
.endm
.macro TextboxNoOverlapFollow s
.short 0x085a
.short \s
.endm
.macro TextboxNoOverlap s
.short 0x085b
.short \s
.endm
.macro TextboxNoOverlapFollowPos a,b
.short 0x0c5c
.short \a
.short \b
.endm
.macro _0807EAF0 w
.short 0x0c5d
.word \w
.endm
.macro TextboxNoOverlapVar
.short 0x045e
.endm
.macro _0807EB28 s
.short 0x085f
.short \s
.endm
.macro _0807EB38
.short 0x0460
.endm
.macro _0807EB44 s
.short 0x0861
.short \s
.endm
.macro _0807EB4C a,b
.short 0x0c62
.short \a
.short \b
.endm
.macro _0807EB74
.short 0x0463
.endm
.macro _0807EB8C
.short 0x0464
.endm
.macro SetEntityDirection s
.short 0x0865
.short \s
.endm
.macro SetEntityDirectionWithAnimationState s
.short 0x0866
.short \s
.endm
.macro SetEntityNonPlanarMovement s
.short 0x0867
.short \s
.endm
.macro SetEntity0x20 w
.short 0x0c68
.word \w
.endm
.macro SetEntityPositionRelative w
.short 0x0c69
.word \w
.endm
.macro SetEntityPosition a,b
.short 0x0c6a
.short \a
.short \b
.endm
.macro MoveEntityToPlayer
.short 0x046b
.endm
.macro ScriptCommandNop3
.short 0x046c
.endm
.macro _0807EC1C s
.short 0x086d
.short \s
.endm
.macro _0807EC64 s
.short 0x086e
.short \s
.endm
.macro _0807EC94 s
.short 0x086f
.short \s
.endm
.macro _0807ECC4 s
.short 0x0870
.short \s
.endm
.macro _0807ECF4 s
.short 0x0871
.short \s
.endm
.macro _0807ED24 a,b,c
.short 0x1072
.short \a
.short \b
.short \c
.endm
.macro _0807EDD4 a,b
.short 0x0c73
.short \a
.short \b
.endm
.macro _0807EE04 a,b
.short 0x0c74
.short \a
.short \b
.endm
.macro _0807EE30
.short 0x0475
.endm
.macro _0807EEB4
.short 0x0476
.endm
.macro _0807EEF4 a,b
.short 0x0c77
.short \a
.short \b
.endm
.macro _0807EF3C a,b
.short 0x0c78
.short \a
.short \b
.endm
.macro _0807EF80 s
.short 0x0879
.short \s
.endm
.macro _0807EF90 s
.short 0x087a
.short \s
.endm
.macro SoundReq s
.short 0x087b
.short \s
.endm
.macro SoundReq2 s
.short 0x087c
.short \s
.endm
.macro SoundReq3 w
.short 0x0c7d
.word \w
.endm
.macro SoundReq0x80100000
.short 0x047e
.endm
.macro ModRupees s
.short 0x087f
.short \s
.endm
.macro ModHealth s
.short 0x0880
.short \s
.endm
.macro IncreaseMaxHealth s
.short 0x0881
.short \s
.endm
.macro _0807F034 s
.short 0x0882
.short \s
.endm
.macro _0807F050 s
.short 0x0883
.short \s
.endm
.macro GetInventoryValue s
.short 0x0884
.short \s
.endm
.macro _0807F078 a,b
.short 0x0c85
.short \a
.short \b
.endm
.macro _0807F088 s
.short 0x0886
.short \s
.endm
.macro CameraTargetEntity
.short 0x0487
.endm
.macro CameraTargetPlayer
.short 0x0488
.endm
.macro _0807F0B4 s
.short 0x0889
.short \s
.endm
.macro _0807F0C8 a,b
.short 0x0c8a
.short \a
.short \b
.endm