test2.wsx000vQTv/gAAAQAYAAIAwCwXAAQABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.411.01.2016 08:31:27:00011.01.2016 08:31:30:8637782411WorkspaceManager111.01.2016 08:31:30:8829011321WorkspaceManager111.01.2016 08:31:30:8539011201WorkspaceManager1C:\Program Files (x86)\pls\UDE 4.4\StdLibrary.msoThe script contains a collection of macros to save memory content into different file formats
and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm'
' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $
'_______________________________________________________
'
' universal debug engine
'
' Standard command line macros - part 1
'
' pls Development Tools 1999-2004
'
' 28.04.04 SW correction for UDE 1.10
' 03.06.03 SW initial version
'_______________________________________________________
'_______________________________________________________
'
' UnAss command line function
'
' generates disassembly file
'
' command line UnAss output-file range1 [range2] [range3] .....
' range description:
' C:<startaddress>,<length> or - code
' DB:<startaddress>,<length> or - data byte
' DW:<startaddress>,<length> or - data word
' DD:<startaddress>,<length> or - data dword
'_______________________________________________________
Sub UnAss(File,ParameterObj)
set debugger = workspace.Coredebugger(0)
set DisASMObj = debugger.DisASMObj
If Not IsObject(ParameterObj) Then
MsgBox "Number of parameters wrong"
Exit Sub
End If
If IsNumeric(File) Then
MsgBox "File parameter wrong - " & File
Exit Sub
End If
DisASMObj.OutputPath = CStr(File)
bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False)
If bRetVal = True Then
ParmeterCnt = ParameterObj.ParameterCount
If ParmeterCnt = 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
If ( ParmeterCnt Mod 3 ) <> 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
RangeCnt = ParmeterCnt/3
ParamIndex = 0
For Range = 0 To RangeCnt -1
KindOfRange = CStr(ParameterObj.Parameter(ParamIndex))
KindOfRange = UCase(KindOfRange)
Address = CLng(ParameterObj.Parameter(ParamIndex +1))
Length = CLng(ParameterObj.Parameter(ParamIndex +2))
ParamIndex = ParamIndex +3
If IsNumeric(KindOfRange) Then
If KindOfRange = 12 Then
DisASMObj.AddRange Address,Length,1
ElseIf KindOfRange = 219 Then
DisASMObj.AddRange Address,Length,2
ElseIf KindOfRange = 221 Then
DisASMObj.AddRange Address,Length,4
Else
MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1
Exit Sub
End If
Else
If KindOfRange = "C" Then
DisASMObj.AddRange Address,Length,1
ElseIf KindOfRange = "DB" Then
DisASMObj.AddRange Address,Length,2
ElseIf KindOfRange = "DW" Then
DisASMObj.AddRange Address,Length,3
ElseIf KindOfRange = "DD" Then
DisASMObj.AddRange Address,Length,4
Else
MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1
Exit Sub
End If
End If
Next
DisASMObj.HexFileModeFlag = False
DisASMObj.ListModeFlag = False
DisASMObj.WriteAllRanges(False)
End If
End Sub
'_______________________________________________________
'
' SaveHEX command line function
'
' generates intel-HEX file
'
' command line SaveHex output-file range1 [range2] [range3] .....
' range description:
' <startaddress>,<length>
'_______________________________________________________
Sub SaveHEX(File,ParameterObj)
set debugger = workspace.Coredebugger(0)
set DisASMObj = debugger.DisASMObj
If Not IsObject(ParameterObj) Then
MsgBox "Number of parameters wrong"
Exit Sub
End If
If IsNumeric(File) Then
MsgBox "File parameter wrong - " & File
Exit Sub
End If
DisASMObj.OutputPath = CStr(File)
bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False)
If bRetVal = True Then
ParmeterCnt = ParameterObj.ParameterCount
If ParmeterCnt = 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
If ( ParmeterCnt Mod 2 ) <> 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
RangeCnt = ParmeterCnt/2
ParamIndex = 0
For Range = 0 To RangeCnt -1
Address = CLng(ParameterObj.Parameter(ParamIndex))
Length = CLng(ParameterObj.Parameter(ParamIndex +1))
ParamIndex = ParamIndex +2
DisASMObj.AddRange Address,Length,0
Next
DisASMObj.HexFileModeFlag = True
DisASMObj.WriteAllRanges(False)
End If
End Sub
'_______________________________________________________
'
' FillByte command line function
'
' fills memory range with byte pattern
'
' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] .....
' range description:
' <startaddress>,<length>
'_______________________________________________________
Sub FillByte(ParameterObj)
set debugger = workspace.Coredebugger(0)
set DisASMObj = debugger.DisASMObj
If Not IsObject(ParameterObj) Then
MsgBox "Number of parameters wrong"
Exit Sub
End If
ParmeterCnt = ParameterObj.ParameterCount
If ParmeterCnt = 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
If ( ParmeterCnt Mod 3 ) <> 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
RangeCnt = ParmeterCnt/3
ParamIndex = 0
set udearrayobj = debugger.ByteArrayObj(1)
For Range = 0 To RangeCnt -1
Address = CLng(ParameterObj.Parameter(ParamIndex))
Length = CLng(ParameterObj.Parameter(ParamIndex +1))
Pattern = CLng(ParameterObj.Parameter(ParamIndex +2))
ParamIndex = ParamIndex +3
udearrayobj.Resize(Length)
udearrayobj.Fill(Pattern)
debugger.Write Address,udearrayobj
Next
End Sub
'_______________________________________________________
'
' FillWord command line function
'
' fills memory range with word pattern
'
' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] .....
' range description:
' <startaddress>,<length>
'_______________________________________________________
Sub FillWord(ParameterObj)
set debugger = workspace.Coredebugger(0)
set DisASMObj = debugger.DisASMObj
If Not IsObject(ParameterObj) Then
MsgBox "Number of parameters wrong"
Exit Sub
End If
ParmeterCnt = ParameterObj.ParameterCount
If ParmeterCnt = 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
If ( ParmeterCnt Mod 3 ) <> 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
RangeCnt = ParmeterCnt/3
ParamIndex = 0
set udearrayobj = debugger.WordArrayObj(1)
For Range = 0 To RangeCnt -1
Address = CLng(ParameterObj.Parameter(ParamIndex))
Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2)
Pattern = CLng(ParameterObj.Parameter(ParamIndex +2))
ParamIndex = ParamIndex +3
udearrayobj.Resize(Length)
udearrayobj.Fill(Pattern)
debugger.Write Address,udearrayobj
Next
End Sub
'_______________________________________________________
'
' FillDWord command line function
'
' fills memory range with dword pattern
'
' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] .....
' range description:
' <startaddress>,<length>
'_______________________________________________________
Sub FillDWord(ParameterObj)
set debugger = workspace.Coredebugger(0)
set DisASMObj = debugger.DisASMObj
If Not IsObject(ParameterObj) Then
MsgBox "Number of parameters wrong"
Exit Sub
End If
ParmeterCnt = ParameterObj.ParameterCount
If ParmeterCnt = 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
If ( ParmeterCnt Mod 3 ) <> 0 Then
MsgBox "Number of parameters wrong " & ParmeterCnt
Exit Sub
End If
RangeCnt = ParmeterCnt/3
ParamIndex = 0
set udearrayobj = debugger.DWordArrayObj(1)
For Range = 0 To RangeCnt -1
Address = CLng(ParameterObj.Parameter(ParamIndex))
Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4)
Pattern = CLng(ParameterObj.Parameter(ParamIndex +2))
ParamIndex = ParamIndex +3
udearrayobj.Resize(Length)
udearrayobj.Fill(Pattern)
debugger.Write Address,udearrayobj
Next
End Sub
63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_11_01_16_08_31_30_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord01511.01.2016 08:31:30:9037782530Target0.Controller0.Core01ON111000011.01.2016 08:31:30:9937782640Target0.Controller0.Core11ON11011.01.2016 08:31:31:0727782750Target0.Controller0.Core21ON110