List of opcodes
Revision as of 19:35, 29 January 2010 by Spaceeinstein (talk | contribs)
This is a list of all opcodes, including nops and unsupported ones, in GTA III, Vice City, and San Andreas.
Opcode | P | Parameter type | Games | Brief description | Notes |
---|---|---|---|---|---|
0000 | 0 | nop | ![]() ![]() ![]() |
no operation | special use in CLEO |
0001 | 1 | int | ![]() ![]() ![]() |
wait | |
0002 | 1 | label | ![]() ![]() ![]() |
jump to label | |
0003 | 1 | int | ![]() ![]() ![]() |
shake camera | |
0004 | 2 | int, int | ![]() ![]() ![]() |
set global to int (G = I) | |
0005 | 2 | float, float | ![]() ![]() ![]() |
set global to float (G = F) | |
0006 | 2 | int, int | ![]() ![]() ![]() |
set local to int (L = I)) | |
0007 | 2 | float, float | ![]() ![]() ![]() |
set local to float (L = F)) | not used in GTA III |
0008 | 2 | int, int | ![]() ![]() ![]() |
add global to int (G += I) | |
0009 | 2 | float, float | ![]() ![]() ![]() |
add global to float (G += F) | |
000A | 2 | int, int | ![]() ![]() ![]() |
add local to int (L += I) | not used in GTA III |
000B | 2 | float, float | ![]() ![]() ![]() |
add local to float (L += F) | not used in GTA III |
000C | 2 | int, int | ![]() ![]() ![]() |
subtract global to int (G -= I) | |
000D | 2 | float, float | ![]() ![]() ![]() |
subtract global to float (G -= F) | |
000E | 2 | int, int | ![]() ![]() ![]() |
subtract local to int (L -= I) | not used in GTA III |
000F | 2 | float, float | ![]() ![]() ![]() |
subtract local to float (L -= F) | not used in GTA III |
0010 | 2 | int, int | ![]() ![]() ![]() |
multiply global to int (G *= I) | |
0011 | 2 | float, float | ![]() ![]() ![]() |
multiply global to float (G *= F) | |
0012 | 2 | int, int | ![]() ![]() ![]() |
multiply local to int (L *= I) | not used in GTA III and Vice City |
0013 | 2 | float, float | ![]() ![]() ![]() |
multiply local to float (L *= F) | not used in GTA III and Vice City |
0014 | 2 | int, int | ![]() ![]() ![]() |
divide global to int (G /= I) | |
0015 | 2 | float, float | ![]() ![]() ![]() |
divide global to float (G /= F) | |
0016 | 2 | int, int | ![]() ![]() ![]() |
divide local to int (L /= I) | not used in GTA III and Vice City |
0017 | 2 | float, float | ![]() ![]() ![]() |
divide local to float (L /= F) | not used in GTA III and Vice City |
0018 | 2 | int, int | ![]() ![]() ![]() |
check global greater than int (G > I) | |
0019 | 2 | int, int | ![]() ![]() ![]() |
check local greater than int (L > I) | |
001A | 2 | int, int | ![]() ![]() ![]() |
check int greater than global (I > G) | |
001B | 2 | int, int | ![]() ![]() ![]() |
check int greater than local (I > L) | |
001C | 2 | int, int | ![]() ![]() ![]() |
check global int greater than global int (G > G int) | |
001D | 2 | int, int | ![]() ![]() ![]() |
check local int greater than local int (L > L int) | not used in GTA III and Vice City |
001E | 2 | int, int | ![]() ![]() ![]() |
check global int greater than local int (G > L int) | not used in GTA III |
001F | 2 | int, int | ![]() ![]() ![]() |
check local int greater than global int (L > G int) | |
0020 | 2 | float, float | ![]() ![]() ![]() |
check global greater than float (G > F) | |
0021 | 2 | float, float | ![]() ![]() ![]() |
check local greater than float (L > F) | not used in GTA III |
0022 | 2 | float, float | ![]() ![]() ![]() |
check float greater than global (F > G) | |
0023 | 2 | float, local | ![]() ![]() ![]() |
check float greater than local | not used in GTA III |
0024 | 2 | global, global | ![]() ![]() ![]() |
check global float greater than global float | |
0025 | 2 | local, local | ![]() ![]() ![]() |
check local float greater than local float | not used in GTA III and Vice City |
0026 | 2 | global, local | ![]() ![]() ![]() |
check global float greater than local float | not used in GTA III and Vice City |
0027 | 2 | local, global | ![]() ![]() ![]() |
check local float greater than global float | not used in GTA III |
0028 | 2 | global, integer | ![]() ![]() ![]() |
check global greater than or equal to integer | |
0029 | 2 | local, integer | ![]() ![]() ![]() |
check local greater than or equal to integer | |
002A | 2 | integer, global | ![]() ![]() ![]() |
check integer greater than or equal to global | |
002B | 2 | integer, local | ![]() ![]() ![]() |
check integer greater than or equal to local | not used in Vice City |
002C | 2 | global, global | ![]() ![]() ![]() |
check global integer greater than or equal to global integer | not used in GTA III and Vice City |
002D | 2 | local, local | ![]() ![]() ![]() |
check local integer greater than or equal to local integer | not used in GTA III and Vice City |
002E | 2 | global, local | ![]() ![]() ![]() |
check global integer greater than or equal to local integer | not used in GTA III and Vice City |
002F | 2 | local, global | ![]() ![]() ![]() |
check local integer greater than or equal to local integer | not used in GTA III |
0030 | 2 | global, float | ![]() ![]() ![]() |
check global greater than or equal to float | not used in GTA III |
0031 | 2 | local, float | ![]() ![]() ![]() |
check local greater than or equal to float | not used in GTA III and Vice City |
0032 | 2 | float, global | ![]() ![]() ![]() |
check float greater than or equal to global | not used in GTA III |
0033 | 2 | float, local | ![]() ![]() ![]() |
check float greater than or equal to local | not used in GTA III and Vice City |
0034 | 2 | global, global | ![]() ![]() ![]() |
check global float greater than or equal to global float | not used in GTA III and Vice City |
0035 | 2 | local, local | ![]() ![]() ![]() |
check local float greater than or equal to local float | not used in GTA III and Vice City |
0036 | 2 | global, local | ![]() ![]() ![]() |
check global float greater than or equal to local float | not used in GTA III and Vice City |
0037 | 2 | local, global | ![]() ![]() ![]() |
check local float greater than or equal to global float | not used in GTA III and Vice City |
0038 | 2 | global, integer | ![]() ![]() ![]() |
check global equal to integer | |
0039 | 2 | local, integer | ![]() ![]() ![]() |
check local equal to integer | |
003A | 2 | global, global | ![]() ![]() ![]() |
check global integer equal to global integer | |
003B | 2 | local, local | ![]() ![]() ![]() |
check local integer equal to local integer | not used in GTA III and Vice City |
003C | 2 | global, local | ![]() ![]() ![]() |
check global integer equal to local integer | not used in GTA III and Vice City |
003D | 0 | unsupported | |||
003E | 0 | unsupported | |||
003F | 0 | unsupported | |||
0040 | 0 | unsupported | |||
0041 | 0 | unsupported | |||
0042 | 2 | global, float | ![]() ![]() ![]() |
check global equal to float | |
0043 | 2 | local, float | ![]() ![]() ![]() |
check local equal to float | not used in GTA III |
0044 | 2 | global, global | ![]() ![]() ![]() |
check global float equal to global float | not used in GTA III and Vice City |
0045 | 2 | local, local | ![]() ![]() ![]() |
check local float equal to local float | not used in GTA III and Vice City |
0046 | 2 | global, local | ![]() ![]() ![]() |
check global float equal to local float | not used in GTA III, Vice City, and San Andreas |
0047 | 0 | unsupported | |||
0048 | 0 | unsupported | |||
0049 | 0 | unsupported | |||
004A | 0 | unsupported | |||
004B | 0 | unsupported | |||
004C | 1 | label | ![]() |
jump to label if true | not used in GTA III |
004D | 1 | label | ![]() ![]() ![]() |
jump to label if false | |
004E | 0 | ![]() ![]() ![]() |
end thread | ||
004F | -1 | label | ![]() ![]() ![]() |
create thread | |
0050 | 1 | label | ![]() ![]() ![]() |
gosub | |
0051 | 0 | ![]() ![]() ![]() |
return | ||
0052 | 0 | nop | no operation | ||
0053 | 5 | integer, float, float, float, player handle | ![]() ![]() ![]() |
create player | parameters rearranged in Sanny Builder |
0054 | 4 | player handle, variable, variable, variable | ![]() ![]() |
get player coordinates | |
0055 | 4 | player handle, int, int, int | ![]() ![]() |
put player at coordinates | |
0056 | 6 | player handle, float, float, float, float, int | ![]() ![]() |
check player is in 2D area | parameters rearranged in Sanny Builder |
0057 | 8 | player handle, float, float, float, float, float, float, int | ![]() ![]() |
check player is in 3D area | parameters rearranged in Sanny Builder |
0058 | 2 | global, global | ![]() ![]() ![]() |
add global integer to global integer | |
0059 | 2 | global, global | ![]() ![]() ![]() |
add global float to global float | |
005A | 2 | local, local | ![]() ![]() ![]() |
add local integer to local integer | not used in GTA III and Vice City |
005B | 2 | local, local | ![]() ![]() ![]() |
add local float to local float | not used in GTA III and Vice City |
005C | 2 | local, global | ![]() ![]() ![]() |
add local integer to global integer | not used in GTA III and Vice City |
005D | 2 | local, global | ![]() ![]() ![]() |
add local float to global float | not used in GTA III and Vice City |
005E | 2 | global, local | ![]() ![]() ![]() |
add global integer to local integer | not used in GTA III and Vice City |
005F | 2 | global, local | ![]() ![]() ![]() |
add global float to local float | not used in GTA III and Vice City |
0060 | 2 | global, global | ![]() ![]() ![]() |
subtract global integer to global integer | |
0061 | 2 | global, global | ![]() ![]() ![]() |
subtract global float to global float | |
0062 | 2 | local, local | ![]() ![]() ![]() |
subtract local integer to local integer | not used in GTA III and Vice City |
0063 | 2 | local, local | ![]() ![]() ![]() |
subtract local float to local float | not used in GTA III and Vice City |
0064 | 2 | local, global | ![]() ![]() ![]() |
subtract local integer to global integer | not used in GTA III and Vice City |
0065 | 2 | local, global | ![]() ![]() ![]() |
subtract local float to global float | not used in GTA III and Vice City |
0066 | 2 | global, local | ![]() ![]() ![]() |
subtract global integer to local integer | not used in GTA III and Vice City |
0067 | 2 | global, local | ![]() ![]() ![]() |
subtract global float to local float | not used in GTA III |
0068 | 2 | global, global | ![]() ![]() ![]() |
multiply global integer to global integer | |
0069 | 2 | global, global | ![]() ![]() ![]() |
multiply global float to global float | |
006A | 2 | local, local | ![]() ![]() ![]() |
multiply local integer to local integer | not used in GTA III and Vice City |
006B | 2 | local, local | ![]() ![]() ![]() |
multiply integer float to integer float | not used in GTA III and Vice City |
006C | 2 | local, float | ![]() ![]() ![]() |
multiply local to float | not used in GTA III, Vice City, and San Andreas |
006D | 2 | global, float | ![]() ![]() ![]() |
multiply global to float | not used in GTA III and Vice City |
006E | 2 | global, local | ![]() ![]() ![]() |
multiply global integer to local integer | not used in GTA III and Vice City |
006F | 2 | global, local | ![]() ![]() ![]() |
multiply global float to local float | not used in GTA III and Vice City |
0070 | 2 | global, global | ![]() ![]() ![]() |
divide global integer by global integer | not used in San Andreas |
0071 | 2 | global, global | ![]() ![]() ![]() |
divide global float by global float | |
0072 | 2 | local, local | ![]() ![]() ![]() |
divide local integer by local integer | not used in GTA III and Vice City |
0073 | 2 | local, local | ![]() ![]() ![]() |
divide local float by local float | not used in GTA III and Vice City |
0074 | 2 | local, global | ![]() ![]() ![]() |
divide local integer by global integer | not used in GTA III and Vice City |
0075 | 2 | local, global | ![]() ![]() ![]() |
divide local float by global float | not used in GTA III and Vice City |
0076 | 2 | global, local | ![]() ![]() ![]() |
divide global integer by local integer | not used in GTA III, Vice City, and San Andreas |
0077 | 2 | global, local | ![]() ![]() ![]() |
divide global float by local float | not used in GTA III |
0078 | 2 | ![]() ![]() ![]() |
not used in GTA III | ||
0079 | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
007A | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
007B | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
007C | 2 | ![]() ![]() ![]() |
not used in GTA III, Vice City, and San Andreas | ||
007D | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
007E | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
007F | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
0080 | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
0081 | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
0082 | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
0083 | 2 | ![]() ![]() ![]() |
not used in GTA III and Vice City | ||
0084 | 2 | global, global | ![]() ![]() ![]() |
set global integer equal to global integer | |
0085 | 2 | local, local | ![]() ![]() ![]() |
set local integer equal to local integer | not used in GTA III |
0086 | 2 | global, global | ![]() ![]() ![]() |
set global float equal to global float | |
0087 | 2 | local, local | ![]() ![]() ![]() |
set local float equal to local float | not used in GTA III |
0088 | 2 | global, local | ![]() ![]() ![]() |
set global float equal to local float | not used in GTA III |
0089 | 2 | local, global | ![]() ![]() ![]() |
set local float equal to global float | not used in GTA III |
008A | 2 | global, local | ![]() ![]() ![]() |
set global integer equal to local integer | not used in GTA III |
008B | 2 | local, global | ![]() ![]() ![]() |
set local integer equal to global integer | not used in GTA III |
External links
GTAForums: Opcodes for Bartons Editor (GTA3 + VC)
GTAForums: GTA:SA Opcodes
- Vice City Opcode Database - retrieved from archive.org
- San Andreas Opcode Database - retrieved from archive.org
- Unified Opcode Database - by PLPynton, hosted by ZAZ
- Latest Vice City opcodes - last update by spaceeinstein
- San Andreas Opcode Database - last update by Deji at GTAGaming.com