1
// MADS Script Engine auto-generated script file
4
#define INDEX_BLOCK_SIZE 8192
6
#define LANGUAGE ENGLISH
8
// List of data variables
9
#define Scene_abortTimersMode2 1
10
#define Scene_abortTimers 2
11
#define Player_stepEnabled 3
12
#define Scene_nextScene 4
13
#define Scene_priorSceneId 5
14
#define Player_playerPos_x 6
15
#define Player_playerPos_y 7
16
#define Player_direction 8
17
#define Player_visible 9
18
#define Scene_activeAnimation 10
19
#define Animation_currentFrame 11
21
// Library function list
23
#define SequenceList_remove 2
24
#define start_reversible_sprite_sequence 3
25
#define SequenceList_setAnimRange 4
26
#define SequenceList_addSubEntry 5
27
#define start_cycled_sprite_sequence 6
28
#define quotes_get_pointer 7
29
#define KernelMessageList_add 8
30
#define SequenceList_unk3 9
31
#define start_sound 10
32
#define SceneLogic_formAnimName 11
33
#define SpriteList_addSprites 12
34
#define hotspot_activate 13
35
#define DynamicHotspots_add 14
36
#define SequenceList_setDepth 15
37
#define quotes_load 16
38
#define form_resource_name 17
39
#define MadsScene_loadAnimation 18
40
#define Action_isAction 19
41
#define start_sprite_sequence3 20
42
#define DynamicHotspots_remove 21
43
#define object_is_present 22
44
#define inventory_add 23
45
#define dialog_picture_show 24
46
#define object_is_in_inventory 25
48
// Script functions start here
52
DSTORE Scene_abortTimersMode2 // 2ecf2h
54
DSTORE Player_stepEnabled // 2ecf8h
55
DLOAD Scene_abortTimers // 2ecfeh
62
LIBCALL SequenceList_remove
71
LIBCALL start_reversible_sprite_sequence
78
LIBCALL SequenceList_setAnimRange
85
LIBCALL SequenceList_addSubEntry
97
LIBCALL start_cycled_sprite_sequence
106
DLOAD $5450 // 2ed62h
111
LIBCALL start_cycled_sprite_sequence
119
LIBCALL SequenceList_setAnimRange
121
LIBCALL quotes_get_pointer
129
LIBCALL KernelMessageList_add
132
LIBCALL SequenceList_unk3
140
DSTORE Player_stepEnabled // 2edb9h
150
JMPTRUE @2edb0 // 2edc3h
158
JMPTRUE @2edce // 2edc9h
159
JUMP @2ed04 // 2edcbh
176
sub low_rooms_entry_sound
177
DLOAD $5A00 // 2b48ch
180
JMPTRUE @2b49e // 2b491h
186
DLOAD Scene_nextScene // 2b49eh
188
JUMP @2b4d8 // 2b4a1h
191
JUMP @2b495 // 2b4a6h
194
JUMP @2b495 // 2b4aah
199
JUMP @2b495 // 2b4b8h
201
DLOAD Scene_priorSceneId // 2b4bah
204
JMPTRUE @2b4c8 // 2b4bfh
205
DLOAD Scene_priorSceneId // 2b4c1h
208
JMPTRUE @2b500 // 2b4c6h
211
JUMP @2b495 // 2b4cah
214
JUMP @2b495 // 2b4ceh
217
JUMP @2b495 // 2b4d2h
220
JUMP @2b495 // 2b4d6h
229
JMPTRUE @2b500 // 2b4deh
236
//--- Begin Jump Table ---
285
//--- End Jump Table ---
294
LIBCALL SceneLogic_formAnimName
300
LIBCALL SpriteList_addSprites
306
LIBCALL SceneLogic_formAnimName
312
LIBCALL SpriteList_addSprites
318
LIBCALL SceneLogic_formAnimName
324
LIBCALL SpriteList_addSprites
330
LIBCALL SceneLogic_formAnimName
336
LIBCALL SpriteList_addSprites
342
LIBCALL SceneLogic_formAnimName
348
LIBCALL SpriteList_addSprites
354
LIBCALL SceneLogic_formAnimName
360
LIBCALL SpriteList_addSprites
366
LIBCALL SceneLogic_formAnimName
372
LIBCALL SpriteList_addSprites
378
LIBCALL SceneLogic_formAnimName
384
LIBCALL SpriteList_addSprites
390
LIBCALL SceneLogic_formAnimName
396
LIBCALL SpriteList_addSprites
402
LIBCALL SceneLogic_formAnimName
408
LIBCALL SpriteList_addSprites
414
LIBCALL SceneLogic_formAnimName
420
LIBCALL SpriteList_addSprites
426
LIBCALL SceneLogic_formAnimName
432
LIBCALL SpriteList_addSprites
438
LIBCALL SceneLogic_formAnimName
444
LIBCALL SpriteList_addSprites
450
LIBCALL SceneLogic_formAnimName
456
LIBCALL SpriteList_addSprites
463
DLOAD $543C // 2cab8h
468
LIBCALL start_cycled_sprite_sequence
475
DLOAD $543E // 2caceh
480
LIBCALL start_cycled_sprite_sequence
487
DLOAD $5440 // 2cae4h
492
LIBCALL start_cycled_sprite_sequence
500
LIBCALL SequenceList_addSubEntry
505
DLOAD $5442 // 2cb07h
510
LIBCALL start_reversible_sprite_sequence
517
DLOAD $5444 // 2cb1dh
522
LIBCALL start_cycled_sprite_sequence
529
DLOAD $5446 // 2cb33h
534
LIBCALL start_cycled_sprite_sequence
541
DLOAD $5448 // 2cb49h
546
LIBCALL start_cycled_sprite_sequence
553
DLOAD $544C // 2cb5fh
558
LIBCALL start_cycled_sprite_sequence
565
DLOAD $544E // 2cb75h
570
LIBCALL start_cycled_sprite_sequence
576
LIBCALL hotspot_activate
578
DSTORE $547E // 2cb8eh
579
DLOAD Scene_priorSceneId // 2cb94h
582
JMPTRUE @2cba1 // 2cb99h
586
DLOAD Scene_priorSceneId // 2cba1h
589
JMPTRUE @2cbb4 // 2cba6h
591
DSTORE Player_playerPos_x
593
DSTORE Player_playerPos_y
595
DLOAD Scene_priorSceneId // 2cbb4h
598
JMPTRUE @2cbc9 // 2cbb9h
599
DLOAD Scene_priorSceneId // 2cbbbh
602
JMPTRUE @2cc36 // 2cbc0h
603
DLOAD $5476 // 2cbc2h
606
JMPTRUE @2cc36 // 2cbc7h
609
DSTORE Player_playerPos_x
611
DSTORE Player_playerPos_y
613
DSTORE Player_direction
617
DLOAD $5450 // 2cbe7h
620
DSTORE Player_visible // 2cbech
624
LIBCALL start_cycled_sprite_sequence
632
LIBCALL SequenceList_setAnimRange
635
LIBCALL hotspot_activate
643
LIBCALL DynamicHotspots_add
647
DLOAD Scene_priorSceneId // 2cc28h
650
JMPTRUE @2cc54 // 2cc2dh
652
JUMP @2cc54 // 2cc34h
657
DLOAD $5452 // 2cc3ch
662
LIBCALL start_cycled_sprite_sequence
668
LIBCALL SequenceList_setDepth
684
JMPTRUE @2ccb8 // 2cc76h
691
LIBCALL form_resource_name
697
LIBCALL MadsScene_loadAnimation
699
DSTORE Player_playerPos_x
701
DSTORE Player_playerPos_y
703
DSTORE Player_direction
705
DSTORE Player_visible // 2cca9h
707
DSTORE Player_stepEnabled // 2ccach
709
DSTORE $5482 // 2ccafh
714
DSTORE $5486 // 2ccb8h
715
CALL low_rooms_entry_sound
721
DLOAD $56E4 // 2eb30h
723
DLOAD $5486 // 2eb33h
726
JMPTRUE @2eb4e // 2eb37h
732
JMPTRUE @2eb44 // 2eb3eh
734
JUMP @2eb46 // 2eb42h
740
DLOAD Scene_abortTimers // 2eb4eh
742
JUMP @2eb92 // 2eb51h
746
JUMP @2eba0 // 2eb5eh
751
DSTORE Player_visible // 2eb69h
753
DSTORE Player_stepEnabled // 2eb6ch
754
DLOAD $56E8 // 2eb6fh
756
DLOAD $542A // 2eb73h
766
JUMP @2eba0 // 2eb87h
769
JUMP @2eba0 // 2eb8fh
815
DLOAD Scene_activeAnimation
819
JMPTRUE @2ebac // 2eba7h
820
JUMP @2ecf1 // 2eba9h
822
DLOAD Animation_currentFrame // 2ebach
825
JMPTRUE @2ebed // 2ebb1h
826
DLOAD $5482 // 2ebb3h
829
JMPTRUE @2ebed // 2ebb8h
830
DLOAD $5482 // 2ebbah
835
LIBCALL quotes_get_pointer
840
DLOAD $5484 // 2ebd9h
845
LIBCALL KernelMessageList_add
847
DLOAD $5484 // 2ebe8h
852
DLOAD Animation_currentFrame // 2ebedh
855
JMPTRUE @2ec2e // 2ebf2h
856
DLOAD $5482 // 2ebf4h
859
JMPTRUE @2ec2e // 2ebf9h
860
DLOAD $5482 // 2ebfbh
865
LIBCALL quotes_get_pointer
870
DLOAD $5484 // 2ec1ah
875
LIBCALL KernelMessageList_add
877
DLOAD $5484 // 2ec29h
882
DLOAD Animation_currentFrame // 2ec2eh
885
JMPTRUE @2ec6f // 2ec33h
886
DLOAD $5482 // 2ec35h
889
JMPTRUE @2ec6f // 2ec3ah
890
DLOAD $5482 // 2ec3ch
895
LIBCALL quotes_get_pointer
900
DLOAD $5484 // 2ec5bh
905
LIBCALL KernelMessageList_add
907
DLOAD $5484 // 2ec6ah
912
DLOAD Animation_currentFrame // 2ec6fh
915
JMPTRUE @2ecb0 // 2ec74h
916
DLOAD $5482 // 2ec76h
919
JMPTRUE @2ecb0 // 2ec7bh
920
DLOAD $5482 // 2ec7dh
925
LIBCALL quotes_get_pointer
930
DLOAD $5484 // 2ec9ch
935
LIBCALL KernelMessageList_add
937
DLOAD $5484 // 2ecabh
942
DLOAD Animation_currentFrame // 2ecb0h
945
JMPTRUE @2ecf1 // 2ecb5h
946
DLOAD $5482 // 2ecb7h
949
JMPTRUE @2ecf1 // 2ecbch
950
DLOAD $5482 // 2ecbeh
955
LIBCALL quotes_get_pointer
960
DLOAD $5484 // 2ecddh
965
LIBCALL KernelMessageList_add
967
DLOAD $5484 // 2ecech
976
sub scene101_preaction
980
LIBCALL Action_isAction
985
JMPTRUE @2eded // 2ede5h
987
DSTORE $56F2 // 2ede7h
989
DLOAD $5476 // 2ededh
992
JMPTRUE @2edf7 // 2edf2h
993
JUMP @2eea9 // 2edf4h
997
LIBCALL Action_isAction
1002
JMPTRUE @2ee44 // 2ee05h
1005
LIBCALL Action_isAction
1010
JMPTRUE @2ee44 // 2ee14h
1013
LIBCALL Action_isAction
1018
JMPTRUE @2ee44 // 2ee23h
1021
LIBCALL Action_isAction
1026
JMPTRUE @2ee44 // 2ee33h
1029
LIBCALL Action_isAction
1034
JMPTRUE @2ee4a // 2ee42h
1037
DSTORE $56F2 // 2ee44h
1039
DLOAD $56F2 // 2ee4ah
1042
JMPTRUE @2eea9 // 2ee4fh
1043
DLOAD Scene_abortTimers // 2ee51h
1048
JMPTRUE @2ee60 // 2ee56h
1059
JUMP @2eee0 // 2ee5bh
1061
JUMP @2eea9 // 2ee5eh
1064
DSTORE $56F4 // 2ee62h
1066
DSTORE Player_stepEnabled // 2ee65h
1067
DLOAD $546E // 2ee68h
1070
LIBCALL SequenceList_remove
1074
DLOAD $5450 // 2ee76h
1079
LIBCALL start_sprite_sequence3
1087
LIBCALL SequenceList_addSubEntry
1089
DLOAD $546E // 2ee91h
1094
LIBCALL SequenceList_setAnimRange
1098
DLOAD $547E // 2eea9h
1101
JMPTRUE @2eeb3 // 2eeaeh
1102
JUMP @2ef9f // 2eeb0h
1106
LIBCALL Action_isAction
1111
JMPTRUE @2eec7 // 2eec2h
1112
JUMP @2ef9f // 2eec4h
1116
LIBCALL Action_isAction
1121
JMPTRUE @2eeda // 2eed5h
1122
JUMP @2ef9f // 2eed7h
1124
DLOAD Scene_abortTimers // 2eedah
1126
JUMP @2ef98 // 2eeddh
1129
DSTORE Player_visible // 2eee9h
1131
DSTORE Player_stepEnabled // 2eeedh
1133
DSTORE $56F4 // 2eef1h
1136
LIBCALL hotspot_activate
1137
DLOAD $5478 // 2eefdh
1140
LIBCALL DynamicHotspots_remove
1144
DLOAD $5452 // 2ef0bh
1149
LIBCALL start_cycled_sprite_sequence
1155
LIBCALL SequenceList_setDepth
1156
JUMP @2eea9 // 2ef23h
1158
DLOAD $56F2 // 2ef26h
1161
JMPTRUE @2ef9f // 2ef2bh
1162
DLOAD $5472 // 2ef2dh
1165
LIBCALL SequenceList_remove
1167
LIBCALL object_is_present
1197
LIBCALL start_sprite_sequence3
1205
LIBCALL SequenceList_addSubEntry
1208
DSTORE Player_stepEnabled // 2ef71h
1214
DSTORE Player_stepEnabled // 2ef82h
1216
DSTORE $547E // 2ef8ah
1219
LIBCALL hotspot_activate
1225
JMPTRUE @2ef26 // 2ef9ah
1241
sub scene101_actions
1242
DLOAD $577A // 2efa0h
1245
JMPTRUE @2efae // 2efa5h
1253
LIBCALL Action_isAction
1258
JMPTRUE @2efca // 2efbfh
1260
DSTORE Scene_nextScene
1261
JUMP @2f6b4 // 2efc7h
1266
LIBCALL Action_isAction
1271
JMPTRUE @2eff9 // 2efdbh
1275
LIBCALL Action_isAction
1280
JMPTRUE @2eff2 // 2efedh
1281
JUMP @2f072 // 2efefh
1283
DLOAD $5476 // 2eff2h
1286
JMPTRUE @2f072 // 2eff7h
1288
DLOAD $5476 // 2eff9h
1291
JMPTRUE @2f003 // 2effeh
1292
JUMP @2f120 // 2f000h
1294
DLOAD Scene_abortTimers // 2f003h
1299
JMPTRUE @2f016 // 2f008h
1320
JUMP @2f0b4 // 2f010h
1322
JUMP @2f072 // 2f013h
1324
DLOAD $5470 // 2f016h
1327
LIBCALL SequenceList_remove
1331
DLOAD $5450 // 2f024h
1336
LIBCALL start_cycled_sprite_sequence
1343
LIBCALL SequenceList_setAnimRange
1345
DLOAD $546E // 2f041h
1350
LIBCALL SequenceList_addSubEntry
1353
DLOAD $546E // 2f051h
1358
LIBCALL SequenceList_addSubEntry
1361
DSTORE Player_stepEnabled // 2f05fh
1363
DSTORE Player_visible // 2f062h
1374
LIBCALL Action_isAction
1379
JMPTRUE @2f09a // 2f083h
1383
LIBCALL Action_isAction
1388
JMPTRUE @2f09a // 2f095h
1389
JUMP @2f1cc // 2f097h
1391
DLOAD $547E // 2f09ah
1394
JMPTRUE @2f0a4 // 2f09fh
1395
JUMP @2f1cc // 2f0a1h
1397
DLOAD Scene_abortTimers // 2f0a4h
1402
JMPTRUE @2f126 // 2f0a9h
1413
JUMP @2f176 // 2f0aeh
1415
JUMP @2f6b4 // 2f0b1h
1420
DLOAD $5450 // 2f0bah
1425
LIBCALL start_cycled_sprite_sequence
1433
LIBCALL SequenceList_setAnimRange
1435
DSTORE Player_stepEnabled // 2f0d7h
1438
LIBCALL hotspot_activate
1446
LIBCALL DynamicHotspots_add
1453
LIBCALL Action_isAction
1458
JMPTRUE @2f116 // 2f111h
1459
JUMP @2f6b4 // 2f113h
1462
DSTORE Scene_abortTimers // 2f116h
1463
JUMP @2f072 // 2f11ch
1470
LIBCALL object_is_present
1500
LIBCALL start_cycled_sprite_sequence
1508
LIBCALL SequenceList_addSubEntry
1511
DSTORE Player_stepEnabled // 2f162h
1515
JUMP @2f6b4 // 2f172h
1517
DLOAD $5472 // 2f176h
1520
LIBCALL SequenceList_remove
1524
DLOAD $5480 // 2f184h
1532
LIBCALL start_cycled_sprite_sequence
1540
LIBCALL SequenceList_setAnimRange
1542
DSTORE Player_stepEnabled // 2f1a8h
1544
DSTORE $547E // 2f1abh
1546
LIBCALL object_is_present
1551
JMPTRUE @2f1bd // 2f1b8h
1552
JUMP @2f6b4 // 2f1bah
1556
LIBCALL hotspot_activate
1557
JUMP @2f6b4 // 2f1c8h
1562
LIBCALL Action_isAction
1567
JMPTRUE @2f1f1 // 2f1ddh
1571
LIBCALL Action_isAction
1576
JMPTRUE @2f248 // 2f1efh
1579
LIBCALL object_is_present
1584
JMPTRUE @2f248 // 2f1fbh
1586
LIBCALL inventory_add
1587
DLOAD $5472 // 2f205h
1590
LIBCALL SequenceList_remove
1594
DLOAD $5456 // 2f213h
1599
LIBCALL start_cycled_sprite_sequence
1607
LIBCALL SequenceList_setAnimRange
1610
LIBCALL hotspot_activate
1613
LIBCALL dialog_picture_show
1615
JUMP @2f16a // 2f245h
1620
LIBCALL Action_isAction
1625
JMPTRUE @2f279 // 2f259h
1629
LIBCALL Action_isAction
1634
JMPTRUE @2f2a6 // 2f26bh
1635
LIBCALL object_is_in_inventory
1640
JMPTRUE @2f2a6 // 2f277h
1642
DLOAD $547E // 2f279h
1645
JMPTRUE @2f2a0 // 2f27eh
1647
LIBCALL object_is_present
1652
JMPTRUE @2f29a // 2f28ah
1658
JUMP @2f6b4 // 2f296h
1672
LIBCALL Action_isAction
1677
JMPTRUE @2f2c6 // 2f2b7h
1678
DLOAD $547E // 2f2b9h
1681
JMPTRUE @2f2c6 // 2f2beh
1689
LIBCALL Action_isAction
1694
JMPTRUE @2f2dc // 2f2d7h
1695
JUMP @2f3d8 // 2f2d9h
1697
DLOAD $5476 // 2f2dch
1700
JMPTRUE @2f2e6 // 2f2e1h
1701
JUMP @2f3d8 // 2f2e3h
1706
JMPTRUE @2f2f4 // 2f2ebh
1708
JUMP @2f6b4 // 2f2f1h
1710
DLOAD Scene_abortTimers // 2f2f4h
1715
JMPTRUE @2f30a // 2f2f9h
1746
JUMP @2f3c2 // 2f304h
1748
JUMP @2f6b4 // 2f307h
1751
DSTORE Player_stepEnabled // 2f30ah
1752
DLOAD $546E // 2f310h
1755
LIBCALL SequenceList_remove
1759
DLOAD $5450 // 2f31eh
1764
LIBCALL start_cycled_sprite_sequence
1771
LIBCALL SequenceList_setAnimRange
1773
DLOAD $546E // 2f33bh
1778
LIBCALL SequenceList_addSubEntry
1781
JUMP @2f16a // 2f349h
1786
DLOAD $5450 // 2f352h
1791
LIBCALL start_sprite_sequence3
1799
LIBCALL SequenceList_addSubEntry
1801
DLOAD $546E // 2f36dh
1806
LIBCALL SequenceList_setAnimRange
1807
JUMP @2f6b4 // 2f37bh
1812
DLOAD $5450 // 2f384h
1817
LIBCALL start_cycled_sprite_sequence
1825
LIBCALL SequenceList_setAnimRange
1829
DLOAD $544A // 2f3a4h
1834
LIBCALL start_cycled_sprite_sequence
1842
LIBCALL SequenceList_addSubEntry
1844
JUMP @2f6b4 // 2f3bfh
1847
DSTORE Player_stepEnabled // 2f3c5h
1851
DSTORE Scene_nextScene
1859
LIBCALL Action_isAction
1864
JMPTRUE @2f3f0 // 2f3e8h
1871
LIBCALL Action_isAction
1876
JMPTRUE @2f410 // 2f3feh
1879
LIBCALL Action_isAction
1884
JMPTRUE @2f438 // 2f40eh
1888
LIBCALL Action_isAction
1893
JMPTRUE @2f431 // 2f41fh
1896
LIBCALL Action_isAction
1901
JMPTRUE @2f438 // 2f42fh
1910
LIBCALL Action_isAction
1915
JMPTRUE @2f481 // 2f449h
1919
LIBCALL Action_isAction
1924
JMPTRUE @2f481 // 2f45bh
1928
LIBCALL Action_isAction
1933
JMPTRUE @2f481 // 2f46dh
1937
LIBCALL Action_isAction
1942
JMPTRUE @2f488 // 2f47fh
1951
LIBCALL Action_isAction
1956
JMPTRUE @2f4a2 // 2f499h
1964
LIBCALL Action_isAction
1969
JMPTRUE @2f4c8 // 2f4b3h
1973
LIBCALL Action_isAction
1978
JMPTRUE @2f4ce // 2f4c6h
1987
LIBCALL Action_isAction
1992
JMPTRUE @2f4e6 // 2f4deh
2000
LIBCALL Action_isAction
2005
JMPTRUE @2f500 // 2f4f7h
2013
LIBCALL Action_isAction
2018
JMPTRUE @2f52f // 2f510h
2022
LIBCALL Action_isAction
2027
JMPTRUE @2f536 // 2f521h
2028
LIBCALL object_is_in_inventory
2033
JMPTRUE @2f536 // 2f52dh
2042
LIBCALL Action_isAction
2047
JMPTRUE @2f54e // 2f546h
2055
LIBCALL Action_isAction
2060
JMPTRUE @2f568 // 2f55fh
2068
LIBCALL Action_isAction
2073
JMPTRUE @2f582 // 2f579h
2081
LIBCALL Action_isAction
2086
JMPTRUE @2f59a // 2f592h
2094
LIBCALL Action_isAction
2099
JMPTRUE @2f5b4 // 2f5abh
2107
LIBCALL Action_isAction
2112
JMPTRUE @2f5cc // 2f5c4h
2120
LIBCALL Action_isAction
2125
JMPTRUE @2f5e6 // 2f5ddh
2133
LIBCALL Action_isAction
2138
JMPTRUE @2f600 // 2f5f7h
2146
LIBCALL Action_isAction
2151
JMPTRUE @2f61a // 2f611h
2159
LIBCALL Action_isAction
2164
JMPTRUE @2f634 // 2f62bh
2172
LIBCALL Action_isAction
2177
JMPTRUE @2f64c // 2f644h
2185
LIBCALL Action_isAction
2190
JMPTRUE @2f664 // 2f65ch
2198
LIBCALL Action_isAction
2203
JMPTRUE @2f67c // 2f674h
2210
LIBCALL Action_isAction
2215
JMPTRUE @2f69c // 2f68ah
2218
LIBCALL Action_isAction
2223
JMPTRUE @2f6ba // 2f69ah
2227
LIBCALL Action_isAction
2232
JMPTRUE @2f6ba // 2f6abh
2238
DSTORE $5768 // 2f6b4h