Skip to content

0x1F — PAUSE_SPEED

Reads one float operand and, if CRadiApp::WhetherCanPause() is non-negative, stores it to global 0x003B2678.

traced— handler traced, but no shipped script uses this opcode, so the operand layout rests on the trace alone with no real data to check it against.

At a glance

Opcode0x1F (31)
HandlerCRadiScript::Command_1f
SignatureCRadiScript::Command_1f(int,SCR_DATA*,unsigned int,unsigned int)
Translation unitr_script_run0.cpp
Address— debug build; click for all 3
Handler size0x44 (68 bytes)
FamilyScript control, flags and values
Command size4 + extra_words * 4 bytes

Handler behaviour

Reads one float operand and, if CRadiApp::WhetherCanPause() is non-negative, stores it to global 0x003B2678.

Encoding

The command header is one 32-bit word, as described in §3 Instruction encoding:

 31            24 23            16 15             8 7              0
+----------------+----------------+----------------+----------------+
|  flags         |  argument byte |  extra words   |  0x1F          |
+----------------+----------------+----------------+----------------+

Bits 8–15 give the number of 32-bit operand words that follow. Bits 16–23 are handed to the handler as a bitfield; on character commands bit 0 normally says whether a character selector word is present. Bit 31 is the keep-going bit.

Engine calls

Engine functions this handler was observed calling:

  • CRadiApp::WhetherCanPause