Difference between revisions of "FF8/Field/Script/Opcodes/001 CAL"

From Final Fantasy Inside
< FF8‎ | Field‎ | Script‎ | Opcodes
Jump to navigation Jump to search
my_wiki>Myst6re
(dummied cal ops)
 
(4 intermediate revisions by 4 users not shown)
Line 3: Line 3:
 
* Long name: Calculate
 
* Long name: Calculate
  
==== Argument ====
+
==== Argument ====
  
 
Operation to perform (see description).
 
Operation to perform (see description).
  
==== Stack ====
+
==== Stack ====
  
 
..., ''value1'', ''value2'' => ..., ''result''
 
..., ''value1'', ''value2'' => ..., ''result''
  
For unary operation (MIN and NOT):<br>
+
====  Description  ====
..., ''value1'' => ..., ''result''
 
  
==== Description ====
+
Calculate ''value1'' '''Argument''' ''value2'' and push the ''result'' into the stack. Possible values for '''Argument'''<nowiki>: </nowiki>
  
Calculate ''value1'' '''Argument''' ''value2'' and push the ''result'' into the stack. Possible values for '''Argument''':
+
[[FF8/Field/Script/Opcodes/001_CAL/000_ADD|000 ADD]] : Addition
 +
[[FF8/Field/Script/Opcodes/001_CAL/001_SUB|001 SUB]] : Subtraction
 +
[[FF8/Field/Script/Opcodes/001_CAL/002_MUL|002 MUL]] : Multiplication
 +
[[FF8/Field/Script/Opcodes/001_CAL/003_DIV|003 DIV]] : Division
 +
[[FF8/Field/Script/Opcodes/001_CAL/004_MOD|004 MOD]] : Modulo
 +
[[FF8/Field/Script/Opcodes/001_CAL/005_MIN|005 MIN]] : Minus
 +
[[FF8/Field/Script/Opcodes/001_CAL/006_EQ|006 EQ]] : Equal
 +
[[FF8/Field/Script/Opcodes/001_CAL/007_GT|007 GT]] : Greater
 +
[[FF8/Field/Script/Opcodes/001_CAL/008_GE|008 GE]] : Greater or Equal
 +
[[FF8/Field/Script/Opcodes/001_CAL/009_LS|009 LS]] : Less
 +
[[FF8/Field/Script/Opcodes/001_CAL/00A_LE|00A LE]] : Less or Equal
 +
[[FF8/Field/Script/Opcodes/001_CAL/00B_NT|00B NT]] : Not Equal
 +
[[FF8/Field/Script/Opcodes/001_CAL/00C_AND|00C AND]] : And
 +
[[FF8/Field/Script/Opcodes/001_CAL/00D_OR|00D OR]] : Or
 +
[[FF8/Field/Script/Opcodes/001_CAL/00E_EOR|00E EOR]] : Exclusive Or
  
[[FF8/Field/Script/Opcodes/001 CAL/000 ADD|000 ADD]] : Addition
+
Additional bitwise operations not used or named in the executable:
[[FF8/Field/Script/Opcodes/001 CAL/001 SUB|001 SUB]] : Subtraction
+
  [[FF8/Field/Script/Opcodes/001_CAL/00F_NOT|00F NOT]] : Not
[[FF8/Field/Script/Opcodes/001 CAL/002 MUL|002 MUL]] : Multiplication
+
  [[FF8/Field/Script/Opcodes/001_CAL/010_RSH|010 RSH]] : Right Shift
[[FF8/Field/Script/Opcodes/001 CAL/003 DIV|003 DIV]] : Division
+
  [[FF8/Field/Script/Opcodes/001_CAL/011_LSH|011 LSH]] : Left Shift
[[FF8/Field/Script/Opcodes/001 CAL/004 MOD|004 MOD]] : Modulo
 
[[FF8/Field/Script/Opcodes/001 CAL/005 MIN|005 MIN]] : Negate
 
[[FF8/Field/Script/Opcodes/001 CAL/006 EQ|006 EQ]] : Equal
 
[[FF8/Field/Script/Opcodes/001 CAL/007 GT|007 GT]] : Greater
 
[[FF8/Field/Script/Opcodes/001 CAL/008 GE|008 GE]] : Greater or Equal
 
[[FF8/Field/Script/Opcodes/001 CAL/009 LS|009 LS]] : Less
 
  [[FF8/Field/Script/Opcodes/001 CAL/00A LE|00A LE]] : Less or Equal
 
[[FF8/Field/Script/Opcodes/001 CAL/00B NT|00B NT]] : Not Equal
 
[[FF8/Field/Script/Opcodes/001 CAL/00C AND|00C AND]] : And
 
[[FF8/Field/Script/Opcodes/001 CAL/00D OR|00D OR]] : Or
 
  [[FF8/Field/Script/Opcodes/001 CAL/00E EOR|00E EOR]] : Exclusive Or
 
  [[FF8/Field/Script/Opcodes/001 CAL/00F NOT|00F NOT]] : Not
 

Latest revision as of 06:25, 24 October 2020

  • Opcode: 0x01
  • Short name: CAL
  • Long name: Calculate

Argument

Operation to perform (see description).

Stack

..., value1, value2 => ..., result

Description

Calculate value1 Argument value2 and push the result into the stack. Possible values for Argument:

000 ADD : Addition
001 SUB : Subtraction
002 MUL : Multiplication
003 DIV : Division
004 MOD : Modulo
005 MIN : Minus
006 EQ : Equal
007 GT : Greater
008 GE : Greater or Equal
009 LS : Less
00A LE : Less or Equal
00B NT : Not Equal
00C AND : And
00D OR : Or
00E EOR : Exclusive Or

Additional bitwise operations not used or named in the executable:

00F NOT : Not
010 RSH : Right Shift
011 LSH : Left Shift