#97977 - 2001-07-12 05:13 AM
KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
[Moderator (Sealeopard): Moved thread from 'Scripts' to 'General' forum]
Dear,
After the upgrade of this site the presentation of our previous topic wasn't the same. The link to the old version (= size +/- 270 KBytes) is:
http://kixtart.org/board/Forum2/HTML/000642.html kixstrip.exe
This link is the new one, but the layout isn't correct.
http://kixtart.org/cgi-bin/ultimatebb.cgi?ubb=get_topic&f=2&t=000642
This new entry will continu the story about this tool. Two versions are available on our site http://home.wanadoo.nl/scripting
- kixstrip363.exe using the keywords of KiXtart 3.63 release
- kixstrip400.exe using the keywords of KiXtart 4.00 release
The version at the moment is 2.27. What is new for this version:
- the option /Debug shows not only
"which line was executed" and "what was the time of execution", but also "what is the kixtart error status" by using the macros @error and @serror. Also a starting remark was inserted. - the options /Progress and /Performance doesn't
show an unused kixtart header code. An example of kixstrip.exe input.kix output.kix /debug /show_structurecan be. We have use our script cpu.kix.
code:
CLS AT (1,1) " " IF RedirectOutput("t:\kix-info.log") ENDIF ? "-"+@date+" "+@time+"- Script "+@kix+" starting." ?"- 1-"+@time+"- @error @serror "? IF setconsole("hide") ?"- 2-"+@time+"- @error @serror "? ENDIF ?"- 3-"+@time+"- @error @serror "? ; ?"- 4-"+@time+"- @error @serror "? ; NT/95 calculates cpu type + processor speed - Kixtart 3.63, 4.00 ?"- 5-"+@time+"- @error @serror "? ; ?"- 6-"+@time+"- @error @serror "? ; (c) scripting@wanadoo.nl - 2001 ?"- 7-"+@time+"- @error @serror "? ; ?"- 8-"+@time+"- @error @serror "? ; vs 1.01 - program ?"- 9-"+@time+"- @error @serror "? ; ?"- 10-"+@time+"- @error @serror "? ; 1.00 (20010525) original version. ?"- 11-"+@time+"- @error @serror "? ; 1.01p (20010525) add - warning message by missing external program ?"- 12-"+@time+"- @error @serror "? ; ?"- 13-"+@time+"- @error @serror "? ; external programs: cpu.exe ?"- 14-"+@time+"- @error @serror "? ; ?"- 15-"+@time+"- @error @serror "? $prgrm_version="1.01" ?"- 16-"+@time+"- @error @serror "? ; ?"- 17-"+@time+"- @error @serror "? $tmp_directory=ExpandEnvironmentVars("%tmp%") ?"- 18-"+@time+"- @error @serror "? IF (substr($tmp_directory,len($tmp_directory),1) = "\") ?"- 19-"+@time+"- @error @serror "? $tmp_directory=substr($tmp_directory,len($tmp_directory)-1) ?"- 20-"+@time+"- @error @serror "? ENDIF ?"- 21-"+@time+"- @error @serror "? $cpu_file=$tmp_directory+"\kix-cpu.tmp" ?"- 22-"+@time+"- @error @serror "? ; ?"- 23-"+@time+"- @error @serror "? IF (@inwin = 1) ?"- 24-"+@time+"- @error @serror "? $nt_mode="yes" ?"- 25-"+@time+"- @error @serror "? ELSE ?"- 26-"+@time+"- @error @serror "? $nt_mode="no" ?"- 27-"+@time+"- @error @serror "? ENDIF ?"- 28-"+@time+"- @error @serror "? ?"- 29-"+@time+"- @error @serror "? ; --------------------------------------------------------------------------- ?"- 30-"+@time+"- @error @serror "? ; - site defined settings - ?"- 31-"+@time+"- @error @serror "? ; --------------------------------------------------------------------------- ?"- 32-"+@time+"- @error @serror "? ?"- 33-"+@time+"- @error @serror "? $debug_mode="yes" ; - no/yes - for additional information about checking registry keys - ?"- 34-"+@time+"- @error @serror "? ; - yes = temporary files will not be deleted - ?"- 35-"+@time+"- @error @serror "? $cpu_program="cpu.exe" ; - specifies path of cpu.exe program. - ?"- 36-"+@time+"- @error @serror "? ; - f.e. c:\winnt\cpu.exe or c:\windows\cpu.exe - ?"- 37-"+@time+"- @error @serror "? ?"- 38-"+@time+"- @error @serror "? ; --------------------------------------------------------------------------- ?"- 39-"+@time+"- @error @serror "? ; - - ?"- 40-"+@time+"- @error @serror "? ; --------------------------------------------------------------------------- ?"- 41-"+@time+"- @error @serror "? ?"- 42-"+@time+"- @error @serror "? $os_type="" ?"- 43-"+@time+"- @error @serror "? SELECT ?"- 44-"+@time+"- @error @serror "? CASE ($nt_mode = "yes") AND (@dos = "5.0") ; - Windows 2000 - ?"- 45-"+@time+"- @error @serror "? $os_type="W2K" ?"- 46-"+@time+"- @error @serror "? CASE ($nt_mode = "yes") ; - Windows NT - ?"- 47-"+@time+"- @error @serror "? $os_type="NT4" ?"- 48-"+@time+"- @error @serror "? CASE ($nt_mode <> "yes") AND (@dos = "4.90") ; - Windows ME - ?"- 49-"+@time+"- @error @serror "? $os_type="ME" ?"- 50-"+@time+"- @error @serror "? CASE ($nt_mode <> "yes") AND (@dos = "4.10") ; - Windows 98 - ?"- 51-"+@time+"- @error @serror "? $os_type="W98" ?"- 52-"+@time+"- @error @serror "? CASE ($nt_mode <> "yes") AND (@dos = "4.0") ; - Windows 95 - ?"- 53-"+@time+"- @error @serror "? $os_type="W95" ?"- 54-"+@time+"- @error @serror "? CASE 1 ?"- 55-"+@time+"- @error @serror "? $os_type="???" ; - undetermined - ?"- 56-"+@time+"- @error @serror "? ENDSELECT ?"- 57-"+@time+"- @error @serror "? ?"- 58-"+@time+"- @error @serror "? ; - :script_cpu_processor ?"- 59-"+@time+"- @error @serror "? ?"- 60-"+@time+"- @error @serror "? $cpu="??? MHz" ?"- 61-"+@time+"- @error @serror "? $processor="???" ?"- 62-"+@time+"- @error @serror "? ; ?"- 63-"+@time+"- @error @serror "? MD "c:\temp" ?"- 64-"+@time+"- @error @serror "? IF (@error <> 0) ?"- 65-"+@time+"- @error @serror "? ENDIF ?"- 66-"+@time+"- @error @serror "? IF (exist($cpu_program) = 1) ?"- 67-"+@time+"- @error @serror "? ;CPU Type Identifier/C Version 2.07 Copyright(c) 1996-98 by B-coolWare. ?"- 68-"+@time+"- @error @serror "? ;Processor: Intel Pentium Pro (P6), 812MHz ?"- 69-"+@time+"- @error @serror "? ;Math unit: Internal ?"- 70-"+@time+"- @error @serror "? IF (Exist($cpu_file) = 1) ?"- 71-"+@time+"- @error @serror "? DEL $cpu_file ?"- 72-"+@time+"- @error @serror "? ENDIF ?"- 73-"+@time+"- @error @serror "? SHELL "%comspec% /c "+$cpu_program+" >"+$cpu_file ?"- 74-"+@time+"- @error @serror "? IF (Open(9,$cpu_file) = 0) ?"- 75-"+@time+"- @error @serror "? $result=ReadLine(9) ; - skip - ?"- 76-"+@time+"- @error @serror "? $result=ReadLine(9) ?"- 77-"+@time+"- @error @serror "? IF (Len($result) > 3) ?"- 78-"+@time+"- @error @serror "? $cpu=LTRIM(RTRIM(Substr($result,Instr($result,",")+1,Len($result)-Instr($result,",")))) ?"- 79-"+@time+"- @error @serror "? $processor=LTRIM(RTRIM(Substr($result,Instr($result,":")+2,Len($result)-Instr($result,":")-2+1))) ?"- 80-"+@time+"- @error @serror "? ENDIF ?"- 81-"+@time+"- @error @serror "? IF (Close(9) <> 0) ?"- 82-"+@time+"- @error @serror "? ENDIF ?"- 83-"+@time+"- @error @serror "? ENDIF ?"- 84-"+@time+"- @error @serror "? IF (Exist($cpu_file) = 1) ?"- 85-"+@time+"- @error @serror "? IF ($debug_mode <> "yes") ?"- 86-"+@time+"- @error @serror "? DEL $cpu_file ?"- 87-"+@time+"- @error @serror "? ENDIF ?"- 88-"+@time+"- @error @serror "? ENDIF ?"- 89-"+@time+"- @error @serror "? ? "CPU: "+$cpu ?"- 90-"+@time+"- @error @serror "? ? " "+$processor ?"- 91-"+@time+"- @error @serror "? ELSE ?"- 92-"+@time+"- @error @serror "? ? "Abort CPU.KIX: missing program '"+LCASE($cpu_program)+"' for "+UCASE($os_type)+"." ?"- 93-"+@time+"- @error @serror "? EXIT ?"- 94-"+@time+"- @error @serror "? ENDIF ?"- 95-"+@time+"- @error @serror "? ; ?"- 96-"+@time+"- @error @serror "? ; result: $cpu ?"- 97-"+@time+"- @error @serror "? ; $processor
;($begin) ; ; thu 12-jul-2001 01:30:42 (kix 4.00 vs 2.27e) ; ;Informative KIXSTRIP: no errors found (input=97 output=97 skip=0). ; ;Summary KIXSTRIP: block structures ; - do:until [0:0] ; - for|each:in|to:step|next [0|0:0|0:0|0] ; - function:endfunction [0:0] ; - if:else:endif [11:2:11] ; - select:case:endselect [1:6:1] ; - while:loop [0:0] ;Informative KIXSTRIP: 12 block_structures found. ;Informative KIXSTRIP: no functions found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ;Informative KIXSTRIP: 1 EXIT ;Informative KIXSTRIP: 1 SHELL ; ;($end)
After running this script the result can be
code:
-2001/07/12 01:33:37- Script 3.63 starting. - 1-01:33:37- 0 The operation completed successfully.
- 3-01:33:37- 0 The operation completed successfully.
- 4-01:33:37- 0 The operation completed successfully.
- 5-01:33:37- 0 The operation completed successfully.
- 6-01:33:37- 0 The operation completed successfully.
- 7-01:33:37- 0 The operation completed successfully.
- 8-01:33:37- 0 The operation completed successfully.
- 9-01:33:37- 0 The operation completed successfully.
- 10-01:33:37- 0 The operation completed successfully.
- 11-01:33:37- 0 The operation completed successfully.
- 12-01:33:37- 0 The operation completed successfully.
- 13-01:33:37- 0 The operation completed successfully.
- 14-01:33:37- 0 The operation completed successfully.
- 15-01:33:37- 0 The operation completed successfully.
- 16-01:33:37- 0 The operation completed successfully.
- 17-01:33:37- 0 The operation completed successfully.
- 18-01:33:37- 0 The operation completed successfully.
- 21-01:33:37- 0 The operation completed successfully.
- 22-01:33:37- 0 The operation completed successfully.
- 23-01:33:37- 0 The operation completed successfully.
- 26-01:33:37- 0 The operation completed successfully.
- 27-01:33:37- 0 The operation completed successfully.
- 28-01:33:37- 0 The operation completed successfully.
- 29-01:33:37- 0 The operation completed successfully.
- 30-01:33:37- 0 The operation completed successfully.
- 31-01:33:37- 0 The operation completed successfully.
- 32-01:33:37- 0 The operation completed successfully.
- 33-01:33:37- 0 The operation completed successfully.
- 34-01:33:37- 0 The operation completed successfully.
- 35-01:33:37- 0 The operation completed successfully.
- 36-01:33:37- 0 The operation completed successfully.
- 37-01:33:37- 0 The operation completed successfully.
- 38-01:33:37- 0 The operation completed successfully.
- 39-01:33:37- 0 The operation completed successfully.
- 40-01:33:37- 0 The operation completed successfully.
- 41-01:33:37- 0 The operation completed successfully.
- 42-01:33:37- 0 The operation completed successfully.
- 43-01:33:37- 0 The operation completed successfully.
- 53-01:33:37- 0 The operation completed successfully.
- 54-01:33:37- 0 The operation completed successfully.
- 57-01:33:37- 0 The operation completed successfully.
- 58-01:33:37- 0 The operation completed successfully.
- 59-01:33:37- 0 The operation completed successfully.
- 60-01:33:37- 0 The operation completed successfully.
- 61-01:33:37- 0 The operation completed successfully.
- 62-01:33:37- 0 The operation completed successfully.
- 63-01:33:37- 0 The operation completed successfully.
- 64-01:33:37- 183 Cannot create a file when that file already exists.
- 65-01:33:37- 183 Cannot create a file when that file already exists.
- 66-01:33:37- 183 Cannot create a file when that file already exists.
- 67-01:33:37- 0 The operation completed successfully.
- 68-01:33:37- 0 The operation completed successfully.
- 69-01:33:37- 0 The operation completed successfully.
- 70-01:33:37- 0 The operation completed successfully.
- 73-01:33:37- 0 The operation completed successfully.
- 74-01:33:37- 0 The operation completed successfully.
- 75-01:33:37- 0 The operation completed successfully.
- 76-01:33:37- 0 The operation completed successfully.
- 77-01:33:37- 0 The operation completed successfully.
- 78-01:33:37- 0 The operation completed successfully.
- 79-01:33:37- 0 The operation completed successfully.
- 80-01:33:37- 0 The operation completed successfully.
- 81-01:33:37- 0 The operation completed successfully.
- 83-01:33:37- 0 The operation completed successfully.
- 84-01:33:37- 0 The operation completed successfully.
- 85-01:33:37- 0 The operation completed successfully.
- 88-01:33:37- 0 The operation completed successfully.
- 89-01:33:37- 0 The operation completed successfully.
CPU: 1000MHz - 90-01:33:37- 0 The operation completed successfully.
Intel Pentium III E, 1000MHz - 91-01:33:37- 0 The operation completed successfully.
- 95-01:33:37- 0 The operation completed successfully.
- 96-01:33:37- 0 The operation completed successfully.
- 97-01:33:37- 0 The operation completed successfully.
Greetings. [ 25. January 2003, 13:46: Message edited by: sealeopard ]
|
Top
|
|
|
|
#97985 - 2002-04-10 05:11 AM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
We have made some changes to our kixstrip tool. Currently it is compliant with KiXtart 4.10 build 84 release.
Also we have extend our option /Debug, which will inform you about - which lines were executed. - what was the time of execution. - what was the kixtart error status by execution of each line. - (new) actual environment information about os, user, etc. - (new) when was debugging starting and ending. Also we are replacing all TABs by SPACEs in all situations.
Possible call kixstrip410.exe input.kix output.kix /debug An example of new debug format:
code:
CLS COLOR C+/N AT (1,1) " " IF RedirectOutput("") ENDIF ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.03e script starting." ? "-" ? "-curdir: "+LCASE(@curdir) ? "-scriptdir: "+LCASE(@scriptdir) IF (instr("-4.10-","-"+substr(@kix,1,4)+"-") <> 0) ? "-scriptname: "+LCASE(@scriptname) ENDIF ? "-startdir: "+LCASE(@startdir) ? "-" ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid) ? "-user priv: "+LCASE(@priv) ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd)) ? "-" ?"- start-"+@time+"- @error @serror "?
?"- 1-"+@time+"- @error @serror "? ? @kix
?"- end-"+@time+"- @error @serror "? ? "-" ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.03e script ending." ? "-" IF (instr("-4.10-","-"+substr(@kix,1,4)+"-") <> 0) ? "-"+@cpu+" ("+@mhz+" Mhz, memory "+MemorySize()+" MB)" ENDIF ? "-" ;($begin) ; ; wed 10-apr-2002 03:51:15 (kix 4.10 vs 3.03e) ; ;Informative KIXSTRIP: no errors found (input=1 output=1 skip=0). ; ;Informative KIXSTRIP: no block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ; ;($end)
Current versions - kixstrip363.exe (kixtart 3.63) - kixstrip400.exe (kixtart 4.00, 4.01, 4.02) - kixstrip410.exe (kixtart 4.10) greetings.
|
Top
|
|
|
|
#97986 - 2002-04-11 03:58 AM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
We have made minor change to our kixstrip tool for kixtart 3.6x users. This release can't handle all macro used.
An output example:
code:
-wednesday 2002/04/10 23:23:23- kixtart 4.10 Beta 1/3.04e script starting. - -curdir: x:\kixtart.410\demo -scriptdir: x:\kixtart.410\demo -scriptname: demo-debugging.kix -startdir: x:\kixtart.410\demo - -userid: MCA/MCA -user priv: guest -version: inwin=2/dos=4.0/productsuite=/producttype=Windows 95/csd=B - - start-00:46:21- 0 The operation completed successfully.
- 1-00:46:21- 0 The operation completed successfully.
4.10 Beta 1 - end-00:46:21- 0 The operation completed successfully.
- -wednesday 2002/04/10 00:46:21- kixtart 4.10 Beta 1/3.04e script ending. - -Intel Pentium MMX (0 Mhz, memory 128 MB) -
Current versions 3.04 - kixstrip363.exe (kixtart 3.63) - kixstrip400.exe (kixtart 4.00, 4.01, 4.02) - kixstrip410.exe (kixtart 4.10) greetings.
|
Top
|
|
|
|
#97987 - 2002-07-07 02:40 AM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
We have update our kixstrip tool. Current release is 3.13
- kixtart 4.10 rc 2 (build 95) compliancy.
- add: extension made to option "/Debug". it shows now
- which lines were executed - what was the time of execution - what was the kixtart error status by execution of each line - actual environment information about os, user, etc. - unique name based on @date, @msecs, @scriptname, @time and random number - when was debugging starting and ending. when necessary you only need to change line $_debug_file="kixdebug.txt" ; - %tmp% directory -with a new debugging information filename.
- add: other extensions made to option "/Debug". now
- it creates automatically the debug information file "%tmp%\kixdebug.txt" - it isn't necessary to change your "RedirectOutput" statements in your code. automatically it will reset to specified debug information file - with kixstrip directives ";($debug on)" and ";($debug off)" you can active and deactive debugging code - with kixstrip directive ";($debug line)" you insert debugging code only once other kixstrip directives: - ;($begin) - ;($end)
- change: kixstrip without options will show "help" instead of "date" information.
Example about new "/Debug" extensions:
- script1.kix (without debugging info)
code:
? "script 1 - start - @kix" call "script2.kix" sleep 1 call "script2.kix" ? "script 1 - end - @kix"
script2.kix (without debugging info) code:
? "script 2 - @kix"
script1.kix (with debugging info) code:
CLS COLOR C+/N AT (1,1) " "
$_debug_file="kixdebug.txt" ; - %tmp% directory - ; IF (len($_debug_file) <> 0) IF (substr(ExpandEnvironmentVars("%tmp%"),len(ExpandEnvironmentVars("%tmp%")),1) = "\") $_debug_file=ExpandEnvironmentVars("%tmp%")+$_debug_file ELSE $_debug_file=ExpandEnvironmentVars("%tmp%")+"\"+$_debug_file ENDIF ENDIF ;$_debug_file="c:\kixdebug.txt" $_debug_file=LCASE($_debug_file) IF RedirectOutput($_debug_file) ENDIF
? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script starting." ? "-" ? "-curdir: "+LCASE(@curdir) ? "-scriptdir: "+LCASE(@scriptdir) IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-scriptname: "+LCASE(@scriptname) ENDIF ? "-startdir: "+LCASE(@startdir) ? "-" ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid) ? "-user priv: "+LCASE(@priv) IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd)) ELSE ? "-version: inwin="+@inwin+"/dos="+@dos ENDIF
DIM $_debug_name $_debug_name="" IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) $_debug_name=@msecs SELECT CASE (len($_debug_name) = 1) $_debug_name="00"+$_debug_name CASE (len($_debug_name) = 2) $_debug_name="0"+$_debug_name ENDSELECT $_debug_name="."+$_debug_name IF srnd(@msecs) ENDIF ENDIF $_debug_name=substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)+"_"+substr(@time,1,2)+substr(@time,4,2)+substr(@time,7,2)+$_debug_name+"_"+rnd(32767) IF (len($_debug_name) < 25) $_debug_name=substr($_debug_name+" ",1,25) ENDIF IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) IF (len(@scriptname) < 12) $_debug_name=$_debug_name+" "+LCASE(substr(@scriptname+" ",1,12)) ELSE $_debug_name=$_debug_name+" "+LCASE(@scriptname) ENDIF ENDIF ? "-debug file: "+$_debug_file ? "-debug name: "+$_debug_name ? "-" ?"----- start-"+@time+"-"+$_debug_name+"- @error @serror"?
?"- 1-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 1 - start - @kix" ?"- 2-"+@time+"-"+$_debug_name+"- @error @serror"? CALL "script2.kix" ?"- 3-"+@time+"-"+$_debug_name+"- @error @serror"? SLEEP 1 ?"- 4-"+@time+"-"+$_debug_name+"- @error @serror"? CALL "script2.kix" ?"- 5-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 1 - end - @kix"
?"------- end-"+@time+"-"+$_debug_name+"- @error @serror"? ? "-" ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script ending." ? "-" IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-"+@cpu+" ("+@mhz+" Mhz, memory "+MemorySize()+" MB)" ENDIF ? "-" IF RedirectOutput("CON") ENDIF COLOR C+/N ? ? "debugging information "+CHR(34)+$_debug_file+CHR(34) IF RedirectOutput($_debug_file) ENDIF ;($begin) ; ; sat 06-jul-2002 23:12:02 (kix 4.10 vs 3.13e) ; ;Informative KIXSTRIP: no errors found (input=5 output=5 skip=0). ; ;Informative KIXSTRIP: no block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ;Informative KIXSTRIP: 2 CALL ;Informative KIXSTRIP: 1 SLEEP ; ;($end)
script2.kix (with debugging info) code:
CLS COLOR C+/N AT (1,1) " "
$_debug_file="kixdebug.txt" ; - %tmp% directory - ; IF (len($_debug_file) <> 0) IF (substr(ExpandEnvironmentVars("%tmp%"),len(ExpandEnvironmentVars("%tmp%")),1) = "\") $_debug_file=ExpandEnvironmentVars("%tmp%")+$_debug_file ELSE $_debug_file=ExpandEnvironmentVars("%tmp%")+"\"+$_debug_file ENDIF ENDIF ;$_debug_file="c:\kixdebug.txt" $_debug_file=LCASE($_debug_file) IF RedirectOutput($_debug_file) ENDIF
? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script starting." ? "-" ? "-curdir: "+LCASE(@curdir) ? "-scriptdir: "+LCASE(@scriptdir) IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-scriptname: "+LCASE(@scriptname) ENDIF ? "-startdir: "+LCASE(@startdir) ? "-" ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid) ? "-user priv: "+LCASE(@priv) IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd)) ELSE ? "-version: inwin="+@inwin+"/dos="+@dos ENDIF
DIM $_debug_name $_debug_name="" IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) $_debug_name=@msecs SELECT CASE (len($_debug_name) = 1) $_debug_name="00"+$_debug_name CASE (len($_debug_name) = 2) $_debug_name="0"+$_debug_name ENDSELECT $_debug_name="."+$_debug_name IF srnd(@msecs) ENDIF ENDIF $_debug_name=substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)+"_"+substr(@time,1,2)+substr(@time,4,2)+substr(@time,7,2)+$_debug_name+"_"+rnd(32767) IF (len($_debug_name) < 25) $_debug_name=substr($_debug_name+" ",1,25) ENDIF IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) IF (len(@scriptname) < 12) $_debug_name=$_debug_name+" "+LCASE(substr(@scriptname+" ",1,12)) ELSE $_debug_name=$_debug_name+" "+LCASE(@scriptname) ENDIF ENDIF ? "-debug file: "+$_debug_file ? "-debug name: "+$_debug_name ? "-" ?"----- start-"+@time+"-"+$_debug_name+"- @error @serror"?
?"- 1-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 2 - @kix"
?"------- end-"+@time+"-"+$_debug_name+"- @error @serror"? ? "-" ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script ending." ? "-" IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-"+@cpu+" ("+@mhz+" Mhz, memory "+MemorySize()+" MB)" ENDIF ? "-" IF RedirectOutput("CON") ENDIF COLOR C+/N ? ? "debugging information "+CHR(34)+$_debug_file+CHR(34) IF RedirectOutput($_debug_file) ENDIF ;($begin) ; ; sat 06-jul-2002 23:10:12 (kix 4.10 vs 3.13e) ; ;Informative KIXSTRIP: no errors found (input=1 output=1 skip=0). ; ;Informative KIXSTRIP: no block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ; ;($end)
after kix32.exe run the file %windir%\kixdebug.txt contains code:
-saturday 2002/07/06 23:12:22- kixtart 4.10 Release Candidate 2/3.13e script starting. - -curdir: d:\ -scriptdir: d: -scriptname: script1.kix -startdir: d: - -userid: -/- -user priv: guest -version: inwin=2/dos=4.90/productsuite=/producttype=Windows Me/csd= -debug file: c:\temp\kixdebug.txt -debug name: 20020706_231222.930_3075 script1.kix - ----- start-23:12:22-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . - 1-23:12:22-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . script 1 - start - 4.10 Release Candidate 2 - 2-23:12:22-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . -saturday 2002/07/06 23:12:22- kixtart 4.10 Release Candidate 2/3.13e script starting. - -curdir: d:\ -scriptdir: d: -scriptname: script2.kix -startdir: d: - -userid: -/- -user priv: guest -version: inwin=2/dos=4.90/productsuite=/producttype=Windows Me/csd= -debug file: c:\temp\kixdebug.txt -debug name: 20020706_231222.990_3271 script2.kix - ----- start-23:12:22-20020706_231222.990_3271 script2.kix - 0 The operation completed successfully. . - 1-23:12:22-20020706_231222.990_3271 script2.kix - 0 The operation completed successfully. . script 2 - 4.10 Release Candidate 2 ------- end-23:12:22-20020706_231222.990_3271 script2.kix - 0 The operation completed successfully. . - -saturday 2002/07/06 23:12:22- kixtart 4.10 Release Candidate 2/3.13e script ending. - -Intel Pentium III (0 Mhz, memory 511 MB) - - 3-23:12:22-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . - 4-23:12:23-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . -saturday 2002/07/06 23:12:23- kixtart 4.10 Release Candidate 2/3.13e script starting. - -curdir: d:\ -scriptdir: d: -scriptname: script2.kix -startdir: d: - -userid: -/- -user priv: guest -version: inwin=2/dos=4.90/productsuite=/producttype=Windows Me/csd= -debug file: c:\temp\kixdebug.txt -debug name: 20020706_231223.980_3238 script2.kix - ----- start-23:12:23-20020706_231223.980_3238 script2.kix - 0 The operation completed successfully. . - 1-23:12:23-20020706_231223.980_3238 script2.kix - 0 The operation completed successfully. . script 2 - 4.10 Release Candidate 2 ------- end-23:12:24-20020706_231223.980_3238 script2.kix - 0 The operation completed successfully. . - -saturday 2002/07/06 23:12:24- kixtart 4.10 Release Candidate 2/3.13e script ending. - -Intel Pentium III (0 Mhz, memory 511 MB) - - 5-23:12:24-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . script 1 - end - 4.10 Release Candidate 2 ------- end-23:12:24-20020706_231222.930_3075 script1.kix - 0 The operation completed successfully. . - -saturday 2002/07/06 23:12:24- kixtart 4.10 Release Candidate 2/3.13e script ending. - -Intel Pentium III (0 Mhz, memory 511 MB) -
Example with new "/Debug" kixstrip directives:
- script example [b]os.kix
code:
$os="" $os_dos=@dos SELECT CASE ($NT_mode = "yes") AND ($os_dos = "5.1") ; - Windows XP - $os="XP" CASE ($NT_mode = "yes") AND ($os_dos = "5.0") ; - Windows 2000 - $os="W2K" CASE ($NT_mode = "yes") ; - Windows NT - $os="NT4" CASE ($NT_mode <> "yes") AND ($os_dos = "4.90") ; - Windows ME - $os="ME" CASE ($NT_mode <> "yes") AND ($os_dos = "4.10") ; - Windows 98 - $os="W98" CASE ($NT_mode <> "yes") AND ($os_dos = "4.0") ; - Windows 95 - $os="W95" CASE 1 $os="???" ; - undetermined - ENDSELECT $os=LTRIM(RTRIM(substr($os+" ",1,3))) ; ? "$$os "+$os
script without directives
code:
CLS COLOR C+/N AT (1,1) " "
$_debug_file="kixdebug.txt" ; - %tmp% directory - ; IF (len($_debug_file) <> 0) IF (substr(ExpandEnvironmentVars("%tmp%"),len(ExpandEnvironmentVars("%tmp%")),1) = "\") $_debug_file=ExpandEnvironmentVars("%tmp%")+$_debug_file ELSE $_debug_file=ExpandEnvironmentVars("%tmp%")+"\"+$_debug_file ENDIF ENDIF ;$_debug_file="c:\kixdebug.txt" $_debug_file=LCASE($_debug_file) IF RedirectOutput($_debug_file) ENDIF
? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script starting." ? "-" ? "-curdir: "+LCASE(@curdir) ? "-scriptdir: "+LCASE(@scriptdir) IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-scriptname: "+LCASE(@scriptname) ENDIF ? "-startdir: "+LCASE(@startdir) ? "-" ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid) ? "-user priv: "+LCASE(@priv) IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd)) ELSE ? "-version: inwin="+@inwin+"/dos="+@dos ENDIF
DIM $_debug_name $_debug_name="" IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) $_debug_name=@msecs SELECT CASE (len($_debug_name) = 1) $_debug_name="00"+$_debug_name CASE (len($_debug_name) = 2) $_debug_name="0"+$_debug_name ENDSELECT $_debug_name="."+$_debug_name IF srnd(@msecs) ENDIF ENDIF $_debug_name=substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)+"_"+substr(@time,1,2)+substr(@time,4,2)+substr(@time,7,2)+$_debug_name+"_"+rnd(32767) IF (len($_debug_name) < 25) $_debug_name=substr($_debug_name+" ",1,25) ENDIF IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) IF (len(@scriptname) < 12) $_debug_name=$_debug_name+" "+LCASE(substr(@scriptname+" ",1,12)) ELSE $_debug_name=$_debug_name+" "+LCASE(@scriptname) ENDIF ENDIF ? "-debug file: "+$_debug_file ? "-debug name: "+$_debug_name ? "-" ?"----- start-"+@time+"-"+$_debug_name+"- @error @serror"?
?"- 1-"+@time+"-"+$_debug_name+"- @error @serror"? $os="" ?"- 2-"+@time+"-"+$_debug_name+"- @error @serror"? $os_dos=@dos ?"- 3-"+@time+"-"+$_debug_name+"- @error @serror"? SELECT ?"- 4-"+@time+"-"+$_debug_name+"- @error @serror"? CASE ($nt_mode = "yes") AND ($os_dos = "5.1") ; - Windows XP - ?"- 5-"+@time+"-"+$_debug_name+"- @error @serror"? $os="XP" ?"- 6-"+@time+"-"+$_debug_name+"- @error @serror"? CASE ($nt_mode = "yes") AND ($os_dos = "5.0") ; - Windows 2000 - ?"- 7-"+@time+"-"+$_debug_name+"- @error @serror"? $os="W2K" ?"- 8-"+@time+"-"+$_debug_name+"- @error @serror"? CASE ($nt_mode = "yes") ; - Windows NT - ?"- 9-"+@time+"-"+$_debug_name+"- @error @serror"? $os="NT4" ?"- 10-"+@time+"-"+$_debug_name+"- @error @serror"? CASE ($nt_mode <> "yes") AND ($os_dos = "4.90") ; - Windows ME - ?"- 11-"+@time+"-"+$_debug_name+"- @error @serror"? $os="ME" ?"- 12-"+@time+"-"+$_debug_name+"- @error @serror"? CASE ($nt_mode <> "yes") AND ($os_dos = "4.10") ; - Windows 98 - ?"- 13-"+@time+"-"+$_debug_name+"- @error @serror"? $os="W98" ?"- 14-"+@time+"-"+$_debug_name+"- @error @serror"? CASE ($nt_mode <> "yes") AND ($os_dos = "4.0") ; - Windows 95 - ?"- 15-"+@time+"-"+$_debug_name+"- @error @serror"? $os="W95" ?"- 16-"+@time+"-"+$_debug_name+"- @error @serror"? CASE 1 ?"- 17-"+@time+"-"+$_debug_name+"- @error @serror"? $os="???" ; - undetermined - ?"- 18-"+@time+"-"+$_debug_name+"- @error @serror"? ENDSELECT ?"- 19-"+@time+"-"+$_debug_name+"- @error @serror"? $os=LTRIM(RTRIM(substr($os+" ",1,3))) ?"- 20-"+@time+"-"+$_debug_name+"- @error @serror"? ; ?"- 21-"+@time+"-"+$_debug_name+"- @error @serror"? ? "$$os "+$os ?"- 22-"+@time+"-"+$_debug_name+"- @error @serror"? ; ?"- 23-"+@time+"-"+$_debug_name+"- @error @serror"? ;
?"------- end-"+@time+"-"+$_debug_name+"- @error @serror"? ? "-" ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script ending." ? "-" IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-"+@cpu+" ("+@mhz+" Mhz, memory "+MemorySize()+" MB)" ENDIF ? "-" IF RedirectOutput("CON") ENDIF COLOR C+/N ? ? "debugging information "+CHR(34)+$_debug_file+CHR(34) IF RedirectOutput($_debug_file) ENDIF ;($begin) ; ; sat 06-jul-2002 23:57:16 (kix 4.10 vs 3.13e) ; ;Informative KIXSTRIP: no errors found (input=23 output=23 skip=0). ; ;Summary KIXSTRIP: block structures ; - do:until [0:0] ; - for|each:in|to:step|next [0|0:0|0:0|0] ; - function:endfunction [0:0] ; - if:else:endif [0:0:0] ; - select:case:endselect [1:7:1] ; - while:loop [0:0] ;Informative KIXSTRIP: 1 block_structure found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ; ;($end)
[b]script with directives
code:
CLS COLOR C+/N AT (1,1) " "
$_debug_file="kixdebug.txt" ; - %tmp% directory - ; IF (len($_debug_file) <> 0) IF (substr(ExpandEnvironmentVars("%tmp%"),len(ExpandEnvironmentVars("%tmp%")),1) = "\") $_debug_file=ExpandEnvironmentVars("%tmp%")+$_debug_file ELSE $_debug_file=ExpandEnvironmentVars("%tmp%")+"\"+$_debug_file ENDIF ENDIF ;$_debug_file="c:\kixdebug.txt" $_debug_file=LCASE($_debug_file) IF RedirectOutput($_debug_file) ENDIF
? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script starting." ? "-" ? "-curdir: "+LCASE(@curdir) ? "-scriptdir: "+LCASE(@scriptdir) IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-scriptname: "+LCASE(@scriptname) ENDIF ? "-startdir: "+LCASE(@startdir) ? "-" ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid) ? "-user priv: "+LCASE(@priv) IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd)) ELSE ? "-version: inwin="+@inwin+"/dos="+@dos ENDIF
DIM $_debug_name $_debug_name="" IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) $_debug_name=@msecs SELECT CASE (len($_debug_name) = 1) $_debug_name="00"+$_debug_name CASE (len($_debug_name) = 2) $_debug_name="0"+$_debug_name ENDSELECT $_debug_name="."+$_debug_name IF srnd(@msecs) ENDIF ENDIF $_debug_name=substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)+"_"+substr(@time,1,2)+substr(@time,4,2)+substr(@time,7,2)+$_debug_name+"_"+rnd(32767) IF (len($_debug_name) < 25) $_debug_name=substr($_debug_name+" ",1,25) ENDIF IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) IF (len(@scriptname) < 12) $_debug_name=$_debug_name+" "+LCASE(substr(@scriptname+" ",1,12)) ELSE $_debug_name=$_debug_name+" "+LCASE(@scriptname) ENDIF ENDIF ? "-debug file: "+$_debug_file ? "-debug name: "+$_debug_name ? "-" ?"----- start-"+@time+"-"+$_debug_name+"- @error @serror"?
;($debug off) $os="" $os_dos=@dos SELECT CASE ($nt_mode = "yes") AND ($os_dos = "5.1") ; - Windows XP - $os="XP" CASE ($nt_mode = "yes") AND ($os_dos = "5.0") ; - Windows 2000 - $os="W2K" CASE ($nt_mode = "yes") ; - Windows NT - $os="NT4" CASE ($nt_mode <> "yes") AND ($os_dos = "4.90") ; - Windows ME - $os="ME" CASE ($nt_mode <> "yes") AND ($os_dos = "4.10") ; - Windows 98 - $os="W98" CASE ($nt_mode <> "yes") AND ($os_dos = "4.0") ; - Windows 95 - $os="W95" CASE 1 ?"- 18-"+@time+"-"+$_debug_name+"- @error @serror"? ;($debug line) $os="???" ; - undetermined - ENDSELECT ?"- 21-"+@time+"-"+$_debug_name+"- @error @serror"? ;($debug on) ?"- 22-"+@time+"-"+$_debug_name+"- @error @serror"? $os=LTRIM(RTRIM(substr($os+" ",1,3))) ?"- 23-"+@time+"-"+$_debug_name+"- @error @serror"? ; ?"- 24-"+@time+"-"+$_debug_name+"- @error @serror"? ? "$$os "+$os ;($debug off) ; ;
?"------- end-"+@time+"-"+$_debug_name+"- @error @serror"? ? "-" ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.13e script ending." ? "-" IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-"+@cpu+" ("+@mhz+" Mhz, memory "+MemorySize()+" MB)" ENDIF ? "-" IF RedirectOutput("CON") ENDIF COLOR C+/N ? ? "debugging information "+CHR(34)+$_debug_file+CHR(34) IF RedirectOutput($_debug_file) ENDIF ;($begin) ; ; sun 07-jul-2002 00:01:46 (kix 4.10 vs 3.13e) ; ;Informative KIXSTRIP: no errors found (input=27 output=27 skip=0). ; ;Informative KIXSTRIP: 1 block_structure found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ; ;($end)
Any comment or input is welcome. greetings.
|
Top
|
|
|
|
#97988 - 2002-07-12 09:32 AM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
We have update our kixstrip tool again. We got inspired by one of the topic earlier this week. A guy couldn't run the script after processing by "kixstrip /Debug" on any kixtart release.
After preprocess kixtart scripting code by one of the kixstrip options - /Debug - /Performance - /Progress no longer it is a problem to run them on earlier kixtart releases. We verify it will all windows releases which can be downloaded from this site.
kixstrip now backwards/upwards compatible
Other extensions made to option "/Debug" are - it shows only once complete information block. - it shows only unique name when useful. the required local variable declaration exists from KiXtart 3.60 release. - it removes the statements AT & @mhz. unexpected side effects. - it removes statement CLS. At least an unwanted change of your "RedirectOutput" statements when "/Debug" option isn't specified is corrected. This problem only exist in previous release.
Example what do you see by using the "/Debug" option
Steps:
- we have two scripts. second one will be called by first one.
script1.kix
code:
? "script 1 - kix "+@kix $nul=RedirectOutput("") call "d:\script2.kix" sleep 1 call "d:\script2.kix" ? "script 1 - completed."
script2.kix
code:
? "script 2 - kix "+@kix $nul=RedirectOutput("")
- we add required debugging code to both scripts with the
call: kixstrip script1 script1.kix /Debug
The result for first script is:
code:
;CLS IF (instr("-3.0x-3.1x-3.2x-3.3x-","-"+substr(@kix,1,3)+"x-") <> 0) IF MessageBox("sorry, your kixtart "+@kix+" release is too old."+CHR(13)+CHR(10)+CHR(13)+CHR(10)+" please upgrade.","KiXtart "+@kix+" info",4112,300) ENDIF EXIT ENDIF COLOR C+/N ;AT (1,1) " "
$_debug_file="kixdebug.txt" ; - %tmp% directory - IF (len($_debug_file) <> 0) IF (substr("%tmp%",len("%tmp%"),1) = "\") $_debug_file="%tmp%"+$_debug_file ELSE $_debug_file="%tmp%\"+$_debug_file ENDIF ENDIF ;$_debug_file="c:\kixdebug.txt" IF RedirectOutput($_debug_file) ENDIF
? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.18e script starting" IF (Val(substr(@kix,1,1)) >= 4) IF (len(@scriptname) <> 0) " ("+LCASE(@scriptname)+")" ENDIF ENDIF ? "-" IF ("$_debug_already_starting" <> "yes") ? "-curdir: "+LCASE(@curdir) ? "-scriptdir: "+LCASE(@scriptdir) IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-scriptname: "+LCASE(@scriptname) ENDIF ? "-startdir: "+LCASE(@startdir) ? "-" ? "-userid: "+LCASE(@userid)+"/"+LCASE(@wuserid) ? "-user priv: "+LCASE(@priv) IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) ? "-version: inwin="+@inwin+"/dos="+@dos"/productsuite="+@productsuite+"/producttype="+@producttype"/csd="+LTRIM(RTRIM(@csd)) ELSE ? "-version: inwin="+@inwin+"/dos="+@dos ENDIF ? "-" IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) ? "-"+@cpu+" (memory "+MemorySize()+" MB)" ? "-" ENDIF ENDIF
$_debug_temp_name="" ; -format: yyyymmdd_hhmmss.sss_999 scriptname- IF (instr("-3.6x-","-"+substr(@kix,1,3)+"x-") <> 0) OR (Val(substr(@kix,1,1)) >= 4) IF (instr("-4.xx-","-"+substr(@kix,1,2)+"xx-") <> 0) $_debug_temp_name=@msecs SELECT CASE (len($_debug_temp_name) = 1) $_debug_temp_name="00"+$_debug_temp_name CASE (len($_debug_temp_name) = 2) $_debug_temp_name="0"+$_debug_temp_name ENDSELECT $_debug_temp_name="."+$_debug_temp_name IF Srnd(@msecs) ENDIF SLEEP 0.050 ELSE IF Srnd((-1)*32767/(substr(@time,7,2)+1)) ENDIF SLEEP 1 ENDIF $_debug_temp_name=substr(@date,1,4)+substr(@date,6,2)+substr(@date,9,2)+"_"+substr(@time,1,2)+substr(@time,4,2)+substr(@time,7,2)+$_debug_temp_name+"_"+Rnd() IF (len($_debug_temp_name) < 25) $_debug_temp_name=substr($_debug_temp_name+" ",1,25) ENDIF IF (instr("-4.1x-","-"+substr(@kix,1,3)+"x-") <> 0) IF (len(@scriptname) < 12) $_debug_temp_name=$_debug_temp_name+" "+substr(@scriptname+" ",1,12) ELSE $_debug_temp_name=$_debug_temp_name+" "+@scriptname ENDIF ENDIF ENDIF
IF ("$_debug_already_starting" <> "yes") ? "-debug file: "+$_debug_file ? "-debug name: "+LCASE($_debug_temp_name) ELSE IF (len($_debug_temp_name) <> 0) ? "-debug: "+LTRIM(RTRIM(LCASE($_debug_temp_name)))+" -> "+$_debug_file ELSE ? "-debug-file: "+$_debug_file ENDIF ENDIF
IF (instr("-3.6x-","-"+substr(@kix,1,3)+"x-") = 0) AND (Val(substr(@kix,1,1)) < 4) GOTO _debug_starting_point ENDIF DIM $_debug_name ; -create local variable- :_debug_starting_point $_debug_name=LCASE($_debug_temp_name) $_debug_already_starting="yes" ? "-" ?"----- start-"+@time+"-"+$_debug_name+"- @error @serror"?
?"- 1-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 1 - kix "+@kix $nul=RedirectOutput("") IF RedirectOutput($_debug_file) ENDIF ; -inserted by kixstrip- ?"- 2-"+@time+"-"+$_debug_name+"- @error @serror"? CALL "d:\script2.kix" ?"- 3-"+@time+"-"+$_debug_name+"- @error @serror"? SLEEP 1 ?"- 4-"+@time+"-"+$_debug_name+"- @error @serror"? CALL "d:\script2.kix" ?"- 5-"+@time+"-"+$_debug_name+"- @error @serror"? ? "script 1 - completed."
?"------- end-"+@time+"-"+$_debug_name+"- @error @serror" ? "-" ? "-"+LCASE(@day)+" "+@date+" "+@time+"- kixtart "+@kix+"/3.18e script ending" IF (Val(substr(@kix,1,1)) >= 4) IF (len(@scriptname) <> 0) " ("+LCASE(@scriptname)+")" ENDIF ENDIF ? "-" IF RedirectOutput("CON") ENDIF COLOR C+/N ? ? "Informative KIX "+@kix+":"+" debug info see "+CHR(34)+$_debug_file+CHR(34) IF (Val(substr(@kix,1,1)) >= 4) IF (len(@scriptname) <> 0) " ("+LCASE(@scriptname)+")" ENDIF ENDIF IF RedirectOutput($_debug_file) ENDIF ;($begin) ; ; fri 12-jul-2002 09:10:29 (kix 4.10 vs 3.18e) ; ;Informative KIXSTRIP: no errors found (input=5 output=5 skip=0). ; ;Informative KIXSTRIP: no block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: no labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ;Informative KIXSTRIP: 2 CALL ;Informative KIXSTRIP: 1 SLEEP ; ;($end)
- without any correction we run first script.
The results can be
code:
-friday 2002/07/12 04:13:12- kixtart 3.47/3.18e script starting - -curdir: d:\kixtart\kix347 -scriptdir: -startdir: d:\kixtart\kix347\ - -userid: -/- -user priv: guest -version: inwin=2/dos=4.90 - -debug file: c:\temp\kixdebug.txt -debug name: - ----- start-04:13:12-- 0 The operation completed successfully.
- 1-04:13:12-- 0 The operation completed successfully.
script 1 - kix 3.47 - 2-04:13:12-- 0 The operation completed successfully.
-friday 2002/07/12 04:13:12- kixtart 3.47/3.18e script starting - -debug-file: c:\temp\kixdebug.txt - ----- start-04:13:12-- 0 The operation completed successfully.
- 1-04:13:12-- 0 The operation completed successfully.
script 2 - kix 3.47 - 2-04:13:12-- 0 The operation completed successfully.
------- end-04:13:12-- 0 The operation completed successfully. - -friday 2002/07/12 04:13:12- kixtart 3.47/3.18e script ending - - 3-04:13:12-- 0 The operation completed successfully.
- 4-04:13:13-- 0 The operation completed successfully.
-friday 2002/07/12 04:13:13- kixtart 3.47/3.18e script starting - -debug-file: c:\temp\kixdebug.txt - ----- start-04:13:13-- 0 The operation completed successfully.
- 1-04:13:13-- 0 The operation completed successfully.
script 2 - kix 3.47 - 2-04:13:13-- 0 The operation completed successfully.
------- end-04:13:13-- 0 The operation completed successfully. - -friday 2002/07/12 04:13:13- kixtart 3.47/3.18e script ending - - 5-04:13:13-- 0 The operation completed successfully.
script 1 - completed. ------- end-04:13:13-- 0 The operation completed successfully. - -friday 2002/07/12 04:13:13- kixtart 3.47/3.18e script ending -
for KiXtart 4.10 the result is:
code:
-friday 2002/07/12 04:13:40- kixtart 4.10/3.18e script starting (script1.kix) - -curdir: d:\ -scriptdir: d: -scriptname: script1.kix -startdir: d: - -userid: -/- -user priv: guest -version: inwin=2/dos=4.90/productsuite=/producttype=Windows Me/csd= - -Intel Pentium III (memory 511 MB) - -debug file: c:\temp\kixdebug.txt -debug name: 20020712_041340.620_2063 script1.kix - ----- start-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
- 1-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
script 1 - kix 4.10 - 2-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
-friday 2002/07/12 04:13:40- kixtart 4.10/3.18e script starting (script2.kix) - -debug: 20020712_041340.730_2422 script2.kix -> c:\temp\kixdebug.txt - ----- start-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.
- 1-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.
script 2 - kix 4.10 - 2-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully.
------- end-04:13:40-20020712_041340.730_2422 script2.kix - 0 The operation completed successfully. - -friday 2002/07/12 04:13:40- kixtart 4.10/3.18e script ending (script2.kix) - - 3-04:13:40-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
- 4-04:13:41-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
-friday 2002/07/12 04:13:41- kixtart 4.10/3.18e script starting (script2.kix) - -debug: 20020712_041341.770_2553 script2.kix -> c:\temp\kixdebug.txt - ----- start-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.
- 1-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.
script 2 - kix 4.10 - 2-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully.
------- end-04:13:41-20020712_041341.770_2553 script2.kix - 0 The operation completed successfully. - -friday 2002/07/12 04:13:41- kixtart 4.10/3.18e script ending (script2.kix) - - 5-04:13:41-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully.
script 1 - completed. ------- end-04:13:41-20020712_041340.620_2063 script1.kix - 0 The operation completed successfully. - -friday 2002/07/12 04:13:41- kixtart 4.10/3.18e script ending (script1.kix) -
any comment or suggestion is welcome. greetings.
|
Top
|
|
|
|
#97989 - 2002-07-28 10:36 PM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
Finally we have release our first version of our documentation of kixstrip tool. You can find it as kixstrip.pdf on our site.
It is compatible with the latest kixstrip 3.20 release. A minor fix was made in latest version.
The index of it
code:
Description Goals Important remarks Important restrictions Parameters ? /Block_Check /Combine /Debug /Headers /License /Performance /Print /Progress /Show_Errors /Show_Structure /Translate /Tab Directives ;($begin) ;($debug line) ;($debug off) ;($debug on) ;($end) List of possible errors List of possible screen output (example) List of possible summary report(s) (example) FAQ Can we solve possible warnings about incomplete lines automatically? Which elements may slowdown your script? What is the performance of kixstrip? What to do when you want to reformat a 'combined script' with too much keywords on one line? What to do by problems with kixstrip? How can you get informed about new releases? What is very different with other debug capabilities? What are the general calls? Examples for compressing your KiXtart code for reformatting your KiXtart code for debugging your KiXtart code + how to debug two or more calling scripts for performance analysis of your KiXtart code for progress analysis of your KiXtart code Published versions Release notes Future/to-do activities
any comment, input or remark is welcome. greetings.
|
Top
|
|
|
|
#97990 - 2002-08-02 09:44 PM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear,
Question of Lonkero, what is this line:
;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE
keyword table? what is THEN?
Answer: an example of such information block without errors: quote:
;($begin) ; ; thu 01-aug-2002 18:00:00 (kix 4.10 vs 3.20e) ; ;Informative KIXSTRIP: no errors found (input=1207 output=997 skip=210). ; ;Summary KIXSTRIP: block structures ; - do:until [3:3] ; - for|each:in|to:step|next [0|0:0|0:0|0] ; - function:endfunction [0:0] ; - if:else:endif [155:36:155] ; - select:case:endselect [1:7:1] ; - while:loop [13:13] ;Informative KIXSTRIP: 172 block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: 2 labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ;Informative KIXSTRIP: 3 BREAK ;Informative KIXSTRIP: 38 SHELL ; ;($end)
an example of such information block with errors: quote:
;($begin) ; ; thu 01-aug-2002 19:00:00 (kix 4.10 vs 3.20e) ; ;Informative KIXSTRIP: input=1207 output=997 skip=210 ; ;Warning KIXSTRIP: 2 errors in block structure(s). missing statement(s). ; - do:until [3:3] ; - for|each:in|to:step|next [0|0:0|0:0|0] ; - function:endfunction [0:0] ; -ERROR- - if:else:endif [157:36:155] ; - select:case:endselect [1:7:1] ; - while:loop [13:13] ;Warning KIXSTRIP: 1 line is incompleted. ; rerun program with option "/block_check /show_errors". ;Warning KIXSTRIP: found illegal statement THEN. ;Warning KIXSTRIP: some lines contains errors or possible errors. ; 1 line incomplete "double quotation". ; 1 line incomplete "left square brackets". ; 1 line incomplete "left parenthesis". ; 1 line incompleted. ;Informative KIXSTRIP: 174 block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: 2 labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ;Informative KIXSTRIP: 3 BREAK ;Warning KIXSTRIP: 1 OLExxx (no longer supported at kix 4.x) ;Informative KIXSTRIP: 38 SHELL ;Warning KIXSTRIP: 1 THEN (illegal statement) ; ;($end) ;($begin) ; ;Warning KIXSTRIP: 1201 line incomplete "double quotation". ;Warning KIXSTRIP: 1201 line incomplete "left square brackets". ;Warning KIXSTRIP: 1201 line incomplete "left parenthesis". ;Warning KIXSTRIP: 1201 line incompleted. ; ;($end)
Explanation:
;Informative KIXSTRIP: no errors found (input=1203 output=993 skip=210).
input = the number of lines on your source file output = the number of lines written to your destination file skip = the number of lines which aren't used. It are the comment lines in your script, which are useful by option "/Combine"
;Warning KIXSTRIP: 2 errors in block structure(s). missing statement(s). ; - do:until [3:3] ; - for|each:in|to:step|next [0|0:0|0:0|0] ; - function:endfunction [0:0] ; -ERROR- - if:else:endif [157:36:155] ; - select:case:endselect [1:7:1] ; - while:loop [13:13]
Only the ;Warning KIXSTRIP: 2 errors in block structure(s). missing statement(s). is showing when one of possible block structures is incomplete. Incomplete means: the amount of starting, middle and ending keywords doesn't match the rules, f.e. each IF statement in your script must have also an ENDIF.
The block structure summary will be inserted by an error situation, or by the specifi- cation of option "/Show_Structure".
;Warning KIXSTRIP: 1 line is incompleted. ; rerun program with option "/block_check /show_errors". ;Warning KIXSTRIP: found illegal statement THEN. ;Warning KIXSTRIP: some lines contains errors or possible errors. ; 1 line incomplete "double quotation". ; 1 line incomplete "left square brackets". ; 1 line incomplete "left parenthesis". ; 1 line incompleted.
shows how much lines are incomplete. those line(s) can contain one or more errors or possible errors. by rerunning kixstrip with the option "/block_check /show_errors" it inserts lines in the form of kixtart comment statement, which makes it possible to see fast what is actual wrong in your script. in our example it inserts following lines
code:
; -------> Warning KIXSTRIP: 1201 line incomplete "double quotation". ; -------> Warning KIXSTRIP: 1201 line incomplete "left square brackets". ; -------> Warning KIXSTRIP: 1201 line incomplete "left parenthesis". ; -------> Warning KIXSTRIP: 1201 line incompleted.
the message ;Warning KIXSTRIP: found illegal statement THEN. has to deal with the possibility that programmers are using THEN keyword. Legal in some other languages, but not for kixtart. it prevents such mistyping.
;Informative KIXSTRIP: 174 block_structures found. ;Informative KIXSTRIP: no UDF's found. ;Informative KIXSTRIP: 2 labels found. ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE ;Informative KIXSTRIP: 3 BREAK ;Warning KIXSTRIP: 1 OLExxx (no longer supported at kix 4.x) ;Informative KIXSTRIP: 38 SHELL ;Warning KIXSTRIP: 1 THEN (illegal statement)
means
* how much block structures are specified? * did your script contains UDF's blocks? * are there labels specified, which can mean that you are also using GOTO and/or GOSUB * which kixtart commands and functions can have influence on your performance? statements: - BREAK makes it possible that the default state is changing, which can result in accepting ctrl+break input - CALL can influence your script in negative way, when you are calling specified script from a loop block structure, or when script can't be found on specified location. - DEBUG makes it possible that your script becomes in a debugging mode. It is independent of [i]SetOption("DisableDebugging","On")[/b] statement. - DISPLAY can influence your script in negative way, when specified file contains all kind of unexpected characters, or when specified file can't be found on specified lo- cation. - ENDFUNCTION/FUNCTION - EXECUTE - EXIT/QUIT exists current script, exists kixtart program. It can explain why your last line isn't executed. RETURN statement in main script terminates KiXtart too. - GET/GETS requires user input. You have a problem, when you doesn't see this request or you doesn't have the possibility to enter it because your windows BOX is hidden. - for GOSUB/GOTO labels must be reachable. A simple mistyping elsewhere makes those labels unreachable. - OLExxx statements aren't supporting at kixtart 4.x release. You must convert this piece of code before running this script in a kixtart 4.x environment. - PLAY can explain that your script returns beeps. It can influence you script also, when specified file is long, or when specified file can't be found on specified location. - RETURN causes script execution to continue at the statement following the last CALL or GOSUB statement, and alo returns from inside a UDF. RETURN statement in main script terminates KiXtart. - RUN starts to run command interpreter commands. Immediately script execution continues makes it impossible to use possible results. Use shell for such situations. - SHELL starts to run command interpreter commands. Script execution is stopped until the program exists, or it returns an exit signal regardless of child pro- cesses. To prevent latest possibility you should use start /wait in your SHELL statement. - SLEEP halts script execution for the number of seconds specified. Too much or too long of it can explain the progress of your script. - THEN is an illegal keyword in kixtart language. now it is easy to see such mistypings. - USE can slowdown your script progress, when f.e.network performance is bad.
greetings. [ 02 August 2002, 21:48: Message edited by: MCA ]
|
Top
|
|
|
|
#97992 - 2002-08-29 02:47 PM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
Kdyer
KiX Supporter
   
Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
|
Wishlist:
Can we go above 8.3 for file names?
Lonkero - I run the input/output in the same directory. I run KixStrip with a batch file though.
Thanks!
Kent
|
Top
|
|
|
|
#97995 - 2002-09-04 01:02 AM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
jngibert
Lurker
Registered: 2001-11-01
Posts: 2
Loc: PDX
|
Just discovered a gotcha using KixStrip400 (we're using versions 3.20e).
Using Kixtart 4.02 and the & operator to perform a bitwise AND as follows: Val(@PRODUCTSUITE) & 16 KixStrip400 removes the spaces surrounding the & and Kixtart interprets the &16 as a hexidecimal number. Under certain circumstances this throws an exception error because there suddenly appears to be no operator between Val(@PRODUCTSUITE) and &16.
Workaround has been to change the order in the expression to: 16 & Val(@PRODUCTSUITE) This appears to work even after the spaces surrounding the & are removed.
What have others experienced?
MCA will probably want to rectify this so that others aren't bitten and spend sleepless hours wondering why. I wish Kixtart didn't uses a single & for both denoting a hexidecimal number and the binary AND operation Too late to change now and maintain backward compatibility I think.
-Jon
|
Top
|
|
|
|
#97996 - 2002-11-30 06:46 PM
Re: KIX-TOOL: stripping, reformatting, debugging, performance analyze kix code (kixstrip)
|
MCA
KiX Supporter
   
Registered: 2000-04-28
Posts: 5152
Loc: Netherlands, EU
|
Dear Jon,
Thanks for your feedback. In the earlier days most kixtart users aren't using bitwise operators. We will rectify this in a coming release. greetings.
(TO_DO)
|
Top
|
|
|
|
Moderator: Arend_, Allen, Jochen, Radimus, Glenn Barnas, ShaneEP, Ruud van Velsen, Mart
|
0 registered
and 2141 anonymous users online.
|
|
|