home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
dumptool.zip
/
DYNDD.ZIP
/
dyndd.rpn
< prev
next >
Wrap
Text File
|
1997-12-01
|
4KB
|
242 lines
name=cmd.exe
logmax=1027
major=255
minor=1
object=2
offset=0x46ce ; entry point to cmd.exe
opcode=0xfc
; this tracepoint is invoked by starting a command window
;
;
;
; push an invalid request for dyndd
;
push d,9999
call dd
;
; transfer 512 bytes of stack (+3) to the log buffer
push w,512
push ss
push esp
log mrs
; ask dyndd to record it
push d,0
calldd
;
;
;
; Compare two strings at addresses cs:ip and cs:ip - they should be equal
;
setmin w,2 ;minor code chage to identify test 2
; 1st log the string
push w,64
push cs
push eip
log mrs
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
; Now ask Dyndd to compare them
push cs
push eip
push cs
push eip
push d,2
call dd
; now log the result - should be 0
log dn,1
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
;
;
;
; Compare two strings at addresses cs:ip and cs:ip+2 - they should not be equal
;
setmin w,3 ;minor code chage to identify test 3
; 1st log the string
push w,64
push cs
push eip
log mrs
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
; Now ask Dyndd to compare them
push cs
push eip
push cs
push eip
push d,2
add
push d,2
call dd
; now log the result - should be -1
log dn,1
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
;
;
;
; Compare two strings at flat addresses %eip and %eip - they should be equal
;
setmin w,4 ;minor code chage to identify test 4
; 1st log the string
push w,64
push d,0x20000
push eip
add
log mrf
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
; Now ask Dyndd to compare them
push d,0x20000
push eip
add
dup n,1
push d,1
call dd
; now log the result - should be 0
log dn,1
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
;
;
;
; Compare two strings at flat addresses %eip and %eip+2 - they should not be equal
;
setmin w,5 ;minor code chage to identify test 5
; 1st log the string
push w,64
push d,0x20000
push eip
add
log mrf
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
; Now ask Dyndd to compare them
push d,0x20000
push eip
add
dup n,1
push d,2
add
push d,1
call dd
; now log the result - should be -1
log dn,1
; Ask DynDD to record this data now as a sepatate record
push d,0
call dd
;
;
;
; Now for a real fault - compare stings at %0 and %0
; DynDD should recover from this.
;
; 1st log the string
setmin w,6 ;minor code chage to identify test 6
push d,0
dup n,1
push d,1
call dd
;
;
;
; Update a Global variable.
;
setmin w,7 ;minor code chage to identify test 7
push d,0 ; variable 0
push d,0x10101010 ; value to set
push d,6
call dd
;
;
;
; Read all global variables
;
setmin w,8 ;minor code chage to identify test 8
push d,0 ; variable 0
push d,5
call dd
log dn,1
push d,1 ; variable 1
push d,5
call dd
log dn,1
push d,2 ; variable 2
push d,5
call dd
log dn,1
push d,3 ; variable 3
push d,5
call dd
log dn,1
push d,4 ; variable 4
push d,5
call dd
log dn,1
push d,5 ; variable 5
push d,5
call dd
log dn,1
push d,6 ; variable 6
push d,5
call dd
log dn,1
push d,7 ; variable 7
push d,5
call dd
log dn,1
push d,8 ; variable 8
push d,5
call dd
log dn,1
push d,9 ; variable 9
push d,5
call dd
log dn,1
push d,10 ; variable 10
push d,5
call dd
log dn,1
push d,11 ; variable 11
push d,5
call dd
log dn,1
push d,12 ; variable 12
push d,5
call dd
log dn,1
push d,13 ; variable 13
push d,5
call dd
log dn,1
push d,14 ; variable 14
push d,5
call dd
log dn,1
push d,15 ; variable 15
push d,5
call dd
log dn,1
; Ask DynDD to record this data now as a separate record
push d,0
call dd
;
;
; transfer 512 bytes of code but don't log the 3-byte prefix
setmin w,9 ;minor code chage to identify test 9
push w,512
push cs
push eip
log mrs
; ask dyndd to record it
push d,7
calldd