Difference between revisions of "FF7/Field/Script/Opcodes/17 IFSWL"

From QhimmWiki
Jump to navigation Jump to search
Qhimm>Synergy Blades
m
Qhimm>Synergy Blades
m
Line 6: Line 6:
{| border="1" cellspacing="1" cellpadding="3" style="border: 1px solid black; border-collapse: collapse;"
{| border="1" cellspacing="1" cellpadding="3" style="border: 1px solid black; border-collapse: collapse;"
! width="40" | 0x17
! width="40" | 0x17
! width="40" | ''B''
! width="40" | ''B / 0''
! width="40" | ''A''
! width="40" | ''A''
! width="40" | ''V''
! width="40" | ''V''
Line 15: Line 15:
==== Arguments ====
==== Arguments ====


* '''const UByte''' ''B'': Memory bank to access.
* '''const Bit[4]''' ''B'': Memory bank to access.
* '''const Bit[4]''' ''0'': Zero.
* '''const UShort''' ''A'': Address of the value to retrieve.
* '''const UShort''' ''A'': Address of the value to retrieve.
* '''const Short''' ''V'': Unsigned value to compare the retrieved value to.
* '''const Short''' ''V'': Unsigned value to compare the retrieved value to.

Revision as of 00:25, 25 August 2006

  • Opcode: 0x17
  • Short name: IFSWL
  • Long name: If (Signed Word, Long Jump)

Memory layout

0x17 B / 0 A V C E

Arguments

  • const Bit[4] B: Memory bank to access.
  • const Bit[4] 0: Zero.
  • const UShort A: Address of the value to retrieve.
  • const Short V: Unsigned value to compare the retrieved value to.
  • const UByte C: Type of comparison to perform.
  • const UShort E: Amount to jump if the comparison does not hold.

Description

This is similar to the IFSW opcode in allowing the comparison value to be negative, but in addition, allows the jump on comparison failure to be longer than 0xFF bytes.