Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MemoryRecord Class:
- The memoryrecord objects are the entries you see in the addresslist
- properties
- ID: Integer - Unique ID
- Index: Integer - The index ID for this record. 0 is top. (ReadOnly)
- Description: string- The description of the memory record
- Address: string - Get/set the interpretable address string. Useful for simple address settings.
- OffsetCount: integer - The number of offsets. Set to 0 for a normal address
- Offset[] : integer - Array to access each offset
- OffsetText[] : string - Array to access each offset using the interpretable text style
- CurrentAddress: integer - The address the memoryrecord points to
- Type: ValueType - The variable type of this record. See vtByte to vtCustom
- If the type is vtString then the following properties are available:
- String.Size: Number of characters in the string
- String.Unicode: boolean
- If the type is vtBinary then the following properties are available
- Binary.Startbit: First bit to start reading from
- Binary.Size : Number of bits
- If the type is vtByteArray then the following properties are available
- Aob.Size : Number of bytes
- CustomTypeName: String - If the type is vtCustomType this will contain the name of the CustomType
- Script: String - If the type is vtAutoAssembler this will contain the auto assembler script
- Value: string - The value in stringform.
- Selected: boolean - Set to true if selected (ReadOnly)
- Active: boolean - Set to true to activate/freeze, false to deactivate/unfreeze
- Color: integer
- ShowAsHex: boolean - Self explanatory
- ShowAsSigned: boolean - Self explanatory
- AllowIncrease: boolean - Allow value increasing, unfreeze will reset it to false
- AllowDecrease: boolean - Allow value decreasing, unfreeze will reset it to false
- Collapsed: boolean - Set to true to collapse this record or false to expand it. Use expand/collapse methods for recursive operations.
- IsGroupHeader: boolean - Set to true if the record was created as a Group Header with no address or value info. (ReadOnly)
- IsReadable: boolean - Set to false if record contains an unreadable address. NOTE: This property will not be set until the value property is accessed at least once. (ReadOnly)
- Count: Number of children
- Child[index] : Array to access the child records
- [index] = Child[index]
- HotkeyCount: integer - Number of hotkeys attached to this memory record
- Hotkey[] : Array to index the hotkeys
- OnActivate: function(memoryrecord,before,currentstate):boolean - The function to call when the memoryrecord will change (or changed) Active to true. If before is true, not returning true will cause the activation to stop.
- OnDeactivate: function(memoryrecord,before,currentstate):boolean - The function to call when the memoryrecord will change (or changed) Active to false. If before is true, not returning true will cause the deactivation to stop.
- OnDestroy: function() - Called when the memoryrecord is destroyed.
- DontSave: boolean - Don't save this memoryrecord and it's children
- methods
- getDescription()
- setDescription()
- getAddress() : Returns the interpretable addressstring of this record. If it is a pointer, it returns a second result as a table filled with the offsets
- setAddress(string) : Sets the interpretable address string, and if offsets are provided make it a pointer
- getOffsetCount(): Returns the number of offsets for this memoryrecord
- setOffsetCount(integer): Lets you set the number of offsets
- getOffset(index) : Gets the offset at the given index
- setOffset(index, value) : Sets the offset at the given index
- getCurrentAddress(): Returns the current address as an integer (the final result of the interpretable address and pointer offsets)
- appendToEntry(memrec): Appends the current memory record to the given memory record
- getHotkey(index): Returns the hotkey from the hotkey array
- getHotkeyByID(integer): Returns the hotkey with the given id
- createHotkey({keys}, action, value OPTIONAL): Returns a hotkey object
- global events
- function onMemRecPreExecute(memoryrecord, newstate BOOLEAN):
- If above function is defined it will be called before action* has been performed.
- Active property is about to change to newState.
- function onMemRecPostExecute(memoryrecord, newState BOOLEAN, succeeded BOOLEAN):
- If above function is defined it will be called after action*.
- Active property was supposed to change to newState.
- If 'succeeded' is true it means that Active state has changed and is newState.
- newState and succeeded are read only.
- *action can be: running auto assembler script (ENABLE or DISABLE section), freezing and unfreezing.
- Addresslist Class: (Inheritance: Panel->WinControl->Control->Component->Object)
- properties
- Count: Integer - The number of records in the table
- SelCount: integer- The number of records that are selected
- SelectedRecord: MemoryRecord - The main selected record
- MemoryRecord[]: MemoryRecord - Array to access the individial memory records
- [] = MemoryRecord - Default accessor
- methods
- getCount()
- getMemoryRecord(index)
- getMemoryRecordByDescription(description): returns a MemoryRecord object
- getMemoryRecordByID(ID)
- createMemoryRecord() : creates an generic cheat table entry and add it to the list
- getSelectedRecords(): Returns a table containing all the selected records
- doDescriptionChange() : Will show the GUI window to change the description of the selected entry
- doAddressChange() : Will show the GUI window to change the address of the selected entry
- doTypeChange() : Will show the GUI window to change the type of the selected entries
- doValueChange() : Will show the GUI window to change the value of the selected entries
- getSelectedRecord() : Gets the main selected memoryrecord
- setSelectedRecord(memrec) : Sets the currently selected memoryrecord. This will unselect all other entries
- MemScan Class (Inheritance: Object)
- getCurrentMemscan() : Returns the current memory scan object. If tabs are used the current tab's memscan object
- createMemScan(progressbar OPTIONAL) : Returns a new MemScan class object
- properties
- OnScanDone: function(memscan) - Set a function to be called when the scan has finished
- FoundList: FoundList - The foundlist currently attached to this memscan object
- OnlyOneResult: boolean - If this is set to true memscan will stop scanning after having found the first result, and written the address to "Result"
- Result: Integer - If OnlyOneResult is used this will contain the address after a scan has finished
- methods
- firstScan(scanoption, vartype, roundingtype, input1, input2 ,startAddress ,stopAddress ,protectionflags ,alignmenttype ,"alignmentparam" ,isHexadecimalInput ,isNotABinaryString, isunicodescan, iscasesensitive);
- Does an initial scan.
- memscan: The MemScan object created with createMemScan
- scanOption: Defines what type of scan is done. Valid values for firstscan are:
- soUnknownValue: Unknown initial value scan
- soExactValue: Exact Value scan
- soValueBetween: Value between scan
- soBiggerThan: Bigger than ... scan
- soSmallerThan: smaller than ... scan
- vartype: Defines the variable type. Valid variable types are:
- vtByte
- vtWord 2 bytes
- vtDword 4 bytes
- vtQword 8 bytes
- vtSingle float
- vtDouble
- vtString
- vtByteArray
- vtGrouped
- vtBinary
- vtAll
- roundingtype: Defined the way scans for exact value floating points are handled
- rtRounded : Normal rounded scans. If exact value = "3" then it includes 3.0 to 3.49999999. If exact value is "3.0" it includes 3.00 to 3.0499999999
- rtTruncated: Truncated algorithm. If exact value = "3" then it includes 3.0 to 3.99999999. If exact value is "3.0" it includes 3.00 to 3.099999999
- rtExtremerounded: Rounded Extreme. If exact value = "3" then it includes 2.0000001 to 3.99999999. If exact value is "3.0" it includes 2.900000001 to 3.099999999
- input1: If required by the scanoption this is a string of the given variable type
- input2: If requires by the scanoption this is the secondary input
- startAddress : The start address to scan from. You want to set this to 0
- stopAddress : The address the scan should stop at. (You want to set this to 0xffffffffffffffff)
- protectionflags : See aobscan about protectionflags
- alignmenttype : Scan alignment type. Valid options are:
- fsmNotAligned : No alignment check
- fsmAligned : The address must be dividable by the value in alignmentparam
- fsmLastDigits : The last digits of the address must end with the digits provided by alignmentparam
- alignmentparam : String that holds the alignment parameter.
- isHexadecimalInput: When true this will handle the input field as a hexadecimal string else decimal
- isNotABinaryString: When true and the varType is vtBinary this will handle the input field as a decimal instead of a binary string
- isunicodescan: When true and the vartype is vtString this will do a unicode (utf16) string scan else normal utf8 string
- iscasesensitive : When true and the vartype is vtString this check if the case matches
- RadioGroup class: (Inheritance: GroupBox->WinControl->Control->Component->Object)
- createRadioGroup(owner): Creates a RadioGroup class object which belongs to the given owner. Owner can be any object inherited from WinControl
- properties
- Items: Strings - Strings derived object containings all the items in the list
- Columns: Integer - The number of columns to split the items into
- ItemIndex: Integer - The currently selected item
- OnClick: Called when the control is clicked
- methods
- getRows(): Returns the number of rows
- getItems(): Returns a Strings object
- getColumns(): Returns the nuber of columns
- setColumns(integer)
- getItemIndex()
- setItemIndex(integer)
- setOnClick(function)
- getOnClick()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement