Fallout2 Opcode Playground

Opcodes: 8000-801F, 8020-803F, 8040-805F,
8060-807F, 8080-809F, 80A0-80BF, 80C0-80DF,
80E0-80FF, 8100-811F, 8120-813F, 8140-8155
 
List Opcodes:Used in Fallout 2Named
Known to DecompilerDescribed

Descriptions for 800d

Opcode800d, return?
>> subfunction   return?

Author: legacy information

22.06.02 13:29:01

800D; return (?); значение для помещения в стек возвратов; результат не возвращается.
Эта команда используется в двух описываемых ниже контекстах. А именно: при возвращении результата и при вызове одной функции из другой. Особенности ее применения заставляют предположить, что кроме основного стека в движке Fallout реализован еще и стек возвратов, через который передаются адреса возврата и результаты функций. Вообще говоря, любая функция скрипта возвращает результат. Обычно тело функции завершается последовательностью (подразумевается, что на вершине основного стека находится результат функции):
800D 8019 802A 8029 800C 801C 802A 8029 801C
Кроме того, в теле функции могут быть еще несколько вариантов возвращения результата, тогда используется укороченная последовательность:
800D 8019 802A 8029 800C 801C
Точное действие остальных команд этих последовательностей не установлено, да это и не требуется, т.к. последовательности стандартны и команды эти используются только в них.