FF7/Field/Script/Opcodes/38 STTIM
From Final Fantasy Inside
- Opcode: 0x38
- Short name: STTIM
- Long name: Set Timer
Contents
Memory layout
0x38 | B1 / B2 | 0 / B3 | H | M | S |
---|
Arguments
- const Bit[4] B1: Bank to find hours value, or zero if hours (B1) is passed as a value.
- const Bit[4] B2: Bank to find minutes value, or zero if minutes (B2) is passed as a value.
- const Bit[4] 0: Zero.
- const Bit[4] B3: Bank to find seconds value, or zero if seconds (B3) is passed as a value.
- const UByte H: Hours, or address to find hours value, if B1 is non-zero.
- const UByte M: Minutes, or address to find minutes value, if B2 is non-zero.
- const UByte S: Seconds, or address to find seconds value, if B3 is non-zero.
Description
Sets the clock, as found in the WSPCL opcode.
If the hours, minutes or seconds are specified in the argument, the corresponding B nybble is zero. Otherwise, the value for the time component is retrieved from the bank and address specified. The seperate time components can be retrieved from memory or specified as a value, in the same argument list, as demonstrated below.
Example
The following example sets the clock to 67:34 using literal values for hours, and retrieved values for minutes and seconds.
SETBYTE(50,12,7) // Bank 5, Address 0x12: 7 minutes SETBYTE(50,14,22) // Bank 5, Address 0x14: 34 seconds STTIM(5,5,1,12,14) // One hour, retrieved vals for minutes/seconds WINDOW(0,20,20,75,75) // Set up a window WSPCL(0,1,5,5) // Set the window to a timer type WMODE(0,2,1) // Transparent, non-closable window MESSAGE(0,1) // Display the window & timer