Difference between revisions of "Script"

From GTAMods Wiki
Jump to navigation Jump to search
m
Line 1: Line 1:
A '''thread''' descripes some kind of minimal process in computer science. Processes and threads are used to simulate parallel execution of programcode. But there is a difference between both: a process descipes the execution of a whole program. It contains an image of the programs binary executeable code in memory just as it is used for handling memory allocation by the operating system. However a thread is nothing in this way. It does just descripe a parallel execution of code inside a process, so one process can hold multiple threads.
+
A term '''thread''' means some kind of minimal process in computer science. Processes and threads are used to simulate parallel execution of programcode. But there is a difference between both: a process describes the execution of a whole program. It contains an image of the programs binary executeable code in memory just as it is used for handling memory allocation by the operating system. However a thread is nothing in this way. It does just describe a parallel execution of code inside a process, so one process can hold multiple threads.
  
 
The description above is just one very simple definition of a thread. GTA simplifies multithreading alot so everything the script needs to do is to start a thread and perhaps end it somehow. It does not need to handle variable synchronisation or communication between two threads. This is what the game does through internal routines.
 
The description above is just one very simple definition of a thread. GTA simplifies multithreading alot so everything the script needs to do is to start a thread and perhaps end it somehow. It does not need to handle variable synchronisation or communication between two threads. This is what the game does through internal routines.
  
== [[Opcode|OpCodes]] & [[Native function|Native functions]] ==
+
== Mission Script ==
{{Incomplete}}
+
[[Opcode]]s:
 
+
* [[00D7]] – Creates a thread
 +
* [[004F]] – Creates a thread with additional parameters
 
* [[004E]] – Ends the current thread
 
* [[004E]] – Ends the current thread
* [[004F]] – Creates a parameterized thread
 
* [[00D7]] – Creates an unparameterized thread
 
 
* [[03A4]] – Gives a thread a name
 
* [[03A4]] – Gives a thread a name
 
* [[0459]] – Ends a named thread
 
* [[0459]] – Ends a named thread
* [[004E]] – Ends the current thread
 
  
 
+
''[[CLEO]] Opcodes'':
''[[CLEO]] OpCodes'':
 
 
* [[0A92]] – Creates a ''CLEO'' thread
 
* [[0A92]] – Creates a ''CLEO'' thread
 
* [[0A93]] – Ends a ''CLEO'' thread
 
* [[0A93]] – Ends a ''CLEO'' thread
 
* [[0A95]] – Enables thread saving for a ''CLEO'' thread
 
* [[0A95]] – Enables thread saving for a ''CLEO'' thread
* [[0A9F]] – Returns the current threads pointer
+
* [[0A9F]] – Returns the pointer to the current thread
 
* [[0AAA]] – Returns the pointer to a named thread
 
* [[0AAA]] – Returns the pointer to a named thread
 
* [[0ABA]] – Ends a named ''CLEO'' thread
 
* [[0ABA]] – Ends a named ''CLEO'' thread
  
== Links ==
+
{{Incomplete}}
 +
== See also ==
 +
* [[Mission Scripting (Overview)]]
 
* {{Icon|SA}} [[Create a thread]]
 
* {{Icon|SA}} [[Create a thread]]
  
== Further Information ==
+
== External links ==
 
* [[Wikipedia:Process_(computing)|Process]]
 
* [[Wikipedia:Process_(computing)|Process]]
 
* [[Wikipedia:Thread_(computer_science)|Thread]]
 
* [[Wikipedia:Thread_(computer_science)|Thread]]
* [[Mission Scripting (Overview)]]
 
  
 
{{N|4|SA}}
 
{{N|4|SA}}
 
[[Category:Mission_Scripting]]
 
[[Category:Mission_Scripting]]

Revision as of 09:44, 13 September 2009

A term thread means some kind of minimal process in computer science. Processes and threads are used to simulate parallel execution of programcode. But there is a difference between both: a process describes the execution of a whole program. It contains an image of the programs binary executeable code in memory just as it is used for handling memory allocation by the operating system. However a thread is nothing in this way. It does just describe a parallel execution of code inside a process, so one process can hold multiple threads.

The description above is just one very simple definition of a thread. GTA simplifies multithreading alot so everything the script needs to do is to start a thread and perhaps end it somehow. It does not need to handle variable synchronisation or communication between two threads. This is what the game does through internal routines.

Mission Script

Opcodes:

  • 00D7 – Creates a thread
  • 004F – Creates a thread with additional parameters
  • 004E – Ends the current thread
  • 03A4 – Gives a thread a name
  • 0459 – Ends a named thread

CLEO Opcodes:

  • 0A92 – Creates a CLEO thread
  • 0A93 – Ends a CLEO thread
  • 0A95 – Enables thread saving for a CLEO thread
  • 0A9F – Returns the pointer to the current thread
  • 0AAA – Returns the pointer to a named thread
  • 0ABA – Ends a named CLEO thread

This section is incomplete. You can help by fixing and expanding it.

See also

External links