Difference between revisions of "Lua:wordToByteTable"

From Cheat Engine
Jump to navigation Jump to search
Line 8: Line 8:
 
Same as value from 'math.floor'.
 
Same as value from 'math.floor'.
  
i.e.: 8.1 : 8, 8.9 : 8, -8.1 : -8, -8.9 : -8
+
  i.e.: 8.1 : 8, 8.9 : 8, -8.1 : -8, -8.9 : -8
  
  
 
Note: If the number is larger than a WORD (2 bytes) only the lower portion of the number will be used.  
 
Note: If the number is larger than a WORD (2 bytes) only the lower portion of the number will be used.  
  
i.e.: 0xFFFF00 : 0xFF00
+
  i.e.: 0xFFFF00 : 0xFF00
 +
          2 1 0      1 0
 +
 
  
 
===Function Parameters===
 
===Function Parameters===
Line 31: Line 33:
 
Code:
 
Code:
 
   local bt = wordToByteTable(0xFFFF)
 
   local bt = wordToByteTable(0xFFFF)
 +
                            --1 0
 
   writeBytes('00123ABC', bt)
 
   writeBytes('00123ABC', bt)
  
Line 58: Line 61:
 
Code:
 
Code:
 
   local bt = wordToByteTable(0xFFFF00)
 
   local bt = wordToByteTable(0xFFFF00)
 +
                            --2 1 0
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
 
     print(i, string.format('%02X', v))
 
     print(i, string.format('%02X', v))

Revision as of 05:39, 9 March 2017

function wordToByteTable(Number)

Converts a WORD (2 bytes) to a byte table.


Note: If the number is a float only the integer no greater than or no less than the given value will be used.

Same as value from 'math.floor'.

 i.e.: 8.1 : 8, 8.9 : 8, -8.1 : -8, -8.9 : -8


Note: If the number is larger than a WORD (2 bytes) only the lower portion of the number will be used.

 i.e.: 0xFFFF00 : 0xFF00
         2 1 0      1 0


Function Parameters

Parameter Type Description
Number number The number to convert to a byte table


Examples

Code:

 local bt = wordToByteTable(0xFFFF)
                            --1 0
 writeBytes('00123ABC', bt)


Code:

 local bt = wordToByteTable(10)
 for i, v in ipairs(bt) do
   print(i, string.format('%02X', v))
 end

Output:

 1 0A 
 2 00 


Code:

 local bt = wordToByteTable(10.9)
 for i, v in ipairs(bt) do
   print(i, string.format('%02X', v))
 end

Output:

 1 0A 
 2 00 


Code:

 local bt = wordToByteTable(0xFFFF00)
                            --2 1 0
 for i, v in ipairs(bt) do
   print(i, string.format('%02X', v))
 end

Output:

 1 00 
 2 FF 


See also

Related Functions