?_ÿÿÿÿcvl¶žë7BvST950-W.hlp Copyright ® 1997, SoftBox Corp.þ è( @€€€€€€€€€ÀÀÀ€€€ÿÿÿÿÿÿÿÿÿÿÿÿ€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ˆ€ˆˆˆˆˆˆˆˆˆˆˆ€ˆ€øˆˆˆˆˆˆˆˆˆˆ€ˆ€ÿwwwwwwwwwx€ˆ€ÿwwwwwwwwwx€ˆ€ÿwwwq—wwwwx€ˆ€ÿwwww—wwwx€ˆ€ÿwwww—w—wwx€ˆ€ÿwwqwwx€ˆ€ÿww™“™w—wx€ˆ€ÿww9™™wwx€ˆ€ÿyw“™“™qwx€ˆ€ÿy™™™™9™wx€ˆ€ÿww™“™“wwx€ˆ€ÿww™™99wwx€ˆ€ÿww—™“™‘wx€ˆ€ÿw™w™™™;wx€ˆ€ÿwww——y³—wx€ˆ€ÿww™w—y™wwx€ˆ€ÿwwwy—wwwwx€ˆ€ÿwwwwwwwwwx€ˆ€ÿwwwwwwwwwx€ˆ€ÿÿÿÿÿÿÿÿÿÿø€ˆ€ÿÿÿÿÿÿÿÿÿÿÿ€ˆ€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ÿÿÿÿõUU_õUU_õUU_àààààààààààààõUU_õUU_õUU_0RegisterRoutine("MMSYSTEM","sndPlaySound","Si")-RegisterRoutine("MMSYSTEM","mciExecute","S")?CreateButton("btnGlossary","Glossary","JumpID(`',`Glossary')")6CreateButton("btnIndex","Index","JumpID(`',`Index')")BrowseButtons()Z‡main?MAIN²;BvST950-W.hlpOz0WGä ôrOvOŸM##¬O,‡lG,ŸÿÿÿÀÀÀZÿsecondaryWindow1;vST950-W.hlpOz0WGä ôrOvOŸW##¬O,‡l@=@=ÀÀÀZÿsecondaryWindow2;vST950-W.hlpOz0WGä ôrOvOŸW##¬O,‡lÿÿŸÀÀÀÀZÿsecondaryWindow3;vST950-W.hlpOz0WGä ôrOvOŸW##¬O,‡lÿÿÿŸÀÀÀÀZÿsecondaryWindow4;Glossary.hlpOz0WGä ôrOvOŸW##¬O,‡lÿÿŸÀÀÀÀZÿsecondaryWindow5;Indexry.hlpOz0WGä ôrOvOŸW##¬O,‡lÿÿÿŸÀÀÀÀ/&;)z4šuÒë—‰>Ùÿÿ'i'ÿÿÿÿ|CONTEXTÑ?|CTXOMAP3|FONT’|KWBTREEÑ|KWDATA|KWMAP3|SYSTEM|TOPIC÷|TTLBTREEÑ/|bm0H|bm1 J|bm10,Q|bm11R|bm12ÆR|bm13S|bm14lT|bm15+U|bm16*V|bm17W|bm18ðW|bm19»X|bm2ŒJ|bm20šY|bm21qZ|bm228[|bm23÷[|bm24Ò\|bm25©]|bm26Ž^|bm27‹_|bm28Z`|bm29a|bm3“K|bm4jL|bm5=M|bm6N|bm7ÛN|bm8šO|bm9YP77 ^19CBBE21 F1ProjectGlossary9 1 F1ProjectGlossary9 E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 77 @ D5D0 MIX 0 MIX E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 78 > 4FC MM 0 MM E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 79 `5538EE3D F1ProjectGlossary10 1 F1ProjectGlossary10 E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 79 B 2503C3 NEXT 0 NEXT E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 80 `5538EEE0 F1ProjectGlossary51 1 F1ProjectGlossary51 E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 80 B 268692 OPEN 0 OPEN E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 81 `5538EEE0 F1ProjectGlossary51 1 F1ProjectGlossary51 E:\MYDOCU~1\HELP›’ ÿÿÿÿ 9ÿÿÿÿE1SÿÿÿÿœE{Contents6 {* $€€6ˆˆ˜²€€‚ÿContents˜pE( €á€6„Œ€²€‚ÿSystem commands can be entered by typing inside command window, or can be read from the macro command file. To invoke macro command file, name of the file needs to be entered in the command window. The system will automatically open command file, if entered token cannot be matched with any of the system System commands can be entered by typing inside command window, or can be read from the macro command file. To invoke macro command file, name of the file needs to be entered in the command window. The system will automatically open command file, if entered token cannot be matched with any of the system commands.){<& €€4N€²€‚ÿ-i* $€€6„Œ€²<€‚ÿ›þ< ý€6„„€²ã4{&$€‰€‚ãh2Õ©€‰€‚ã\eÍ€‰€‚ãq9ˆ€‰€‚ãÐqœ€‰€‚ë5ˆDŸ€‰€‚ãwˆßπ‰€‚ãyр€‰€‚ãeûk8€‰€‚ÿGeneral NotesThe command interpreterCommand line expressionsProgramming the emulator with the command line interfaceFile managementFunction keysMouse operationAdditional Window ControlsCommand Line Parameters*i.' €€6„Œ€²€‚ÿ)W& €€4N€²€‚ÿF.0 0€,€6„„€²ãü!¿€‰€‚ÿList of commands> WÛ1  Ûð General Notes;* $€"€6ˆˆ˜²€€‚ÿGeneral Notes±iÛÇ H ^€Ó €6„Œ€²€€âï8U‰‚ÿThe following notes describe the syntax and general concepts used in the description of commands.1: Debugger's commands can be typed in both lower and upper case letters, arguments of commands must be separated by at least one space, tab or comma.2: The names of commands can be written in full or in abbreviated form: in the commands descriptions, the maximum (i.e. the shortest) allowed abbreviation is shown in upper case and the remaining part of the name is shown in lower case.3: The following syntax has been used:The character "|" means "or".An argument between square brackets is optional.Words are generic arguments such as addresses, values, file names.An argument followed by dots as in "value ... " means that the argument can bespecified more than once. Braces "{" and "}" are used to group arguments that are treated as a single construct.4: Numeric values are interpreted and printed in the selected numeric base (DECIMAL, OCTAL, or HEXADECIMAL). The current base selected is indicated by the prompt letter at the beginning of each command line ("d:" "o:" or "x:" ) (ref. BASE command). Some commands require and/or print value in decimal base only; this will be explicitly indicated in the command description.5: Iteration or long commands can be aborted by typing key6: The last command executed may be requested again by typing a dot character7: All previous commands can be recovered with the up and down arrows, and modified using left and right arrows, , , , ...8: Error messages produced by the debugger are self-explanatory and indicate the cause of the error.)ð & €€4N€²€‚ÿHÇ 8 1õœ€8 } MFThe Command InterpreterEð } * $€6€6ˆˆ˜²€€‚ÿThe command interpreter›)8 $Fr ²€S€6„Œ€²€ãeO¯‰â?ï8U‰ã{‰ãI‰ãI‰ãI‰ãǀ‰ãþ‰‚ÿThe command interpreter is a recursive function which parses and executes commands entered at the keyboard, command files, macros and trap / breakpoint commands. It is an infinite loop that executes the following steps:1: Reads a line from the input.2: Breaks a read string into words using a sequence of one or more of blanks, tabs, or commas as separators. Characters enclosed between double quotes are treated as a single word (this is only used in the PRINT command).3: Replaces each occurrence of the symbol "@" } $Fð with the actual value of that argument [DO] if the input source is a macro.4: Scans each word and string that is enclosed in reverse quotes "' " and treats it as an expression.5: Evaluates the expression and substitutes the result (printed as one to four hexadecimal digit characters) in the expression string. Each time a new input source is set up, the command interpreter is recursively called to read the new source up to the end. The DO command starts the input from a macro body, the macro is read up to the end of body. Macros, command files, and trap commands can be nested up to 20 levels. The IF/ELSE/ENDIF commands select a group of commands to execute without changing the input source and without affecting the level count. The command interpreter ends when the ELSE or the ENDIF command is found.Ending the top level (standard input reading) command interpreter, terminates the emulator program (after a confirmation request). During their execution, some commands ( ASM, SM, etc...) require more input to be read. This input is taken from the same source from which the command was read. Lines beginning with a colon character are ignored and can be used for programmer's comments.The following key sequences are defined in keyboard input mode: clears the input line switches between insert and overtype erases the current characterup and down arrows retrieves previous commandsCommands and arguments are not case sensitive except in some particular cases which will be noted where applicable.)} MF& €€4N€²€‚ÿI$F–F1J Ѓ–FÜFõKCommand line expressionsFMFÜF* $€8€6ˆˆ˜²€€‚ÿCommand line expressionsŽN–FjJ@ N€€6„Œ€²€âàî8U‰â=î8U‰âï8U‰‚ÿCommand line expressions contain one or more terms. Each term can be preceded by an unary operator, and separated by binary operators. Expressions must be single words and,therefore, cannot contain spaces.The syntax and semantics of expressions are very close to those of C language.When an expression must be interpreted as a number, either to be used as a memory address, a register, or a value, the expression is sent to the expression evaluator. The expression evaluator returns the numeric value of the expression. Intermediate results are stored as 32 bit unsigned integers. The final result can be truncated to the lowest 8 or 16 bits as required.In the following definitions:• lowercase words inside angle brackets are generic names• uppercase words are keywords which can be in uppercase or lowercase inside the expression)ÜF“J& €€4N€²€‚ÿ\,jJïJ0 0€X€6„Œ€²âeî8U€‰€‚ÿDefinition of terms used in expression)“JK& €€4N€²€‚ÿEïJ]K0 0€*€6„Œ€²â7ï8U€‰€‚ÿUnary operators)K†K& €€4N€²€‚ÿF]KÌK0 0€,€6„Œ€²â:î8U€‰€‚ÿBinary operators)†KõK& €€4N€²€‚ÿi8ÌK^L1Ç€X„^LÄLZMProgramming the emulator with the command line interfacef<õKÄL* $€x€6ˆˆ˜²€€‚ÿProgramming the emulator with the command line interface–L^LZMJ d€˜€6„„€²ãžNK8€‰€‚ã= #@€‰€‚㐟l€‰€‚ÿDefining macro commandsProgrammingMemory and register accessHÄL¢M1}Ѓ9¢MçM?†Defining macro commandsEZMçM* $€6€6ˆˆ˜²€€‚ÿDefining macro commandsyI¢M`O0 .€“€6„Œ€²€â=î8U‰‚ÿMacro commands can be defined to carry out a sequence of individual emulator commands.The watchdata or action in breakpoint commands can be used to run a program starting from address 100, and see the value of the memory at address 50 when the program reaches the address 110. Alternatively a macro command can be written.)çM‰O& €€4N€²€‚ÿQ`Oæ€4 6€;€6„Œ€²!O€‚ÿ1: To define a macro, use the de -m command (ref. DEFINE)de -m ru‰Oæ€ZMn_and_seesr PC 100sb 110go: display memory at address 50dm 50endmThe first line defines the macro name "run_and_see"; the last line indicates ends the macrocommand. Line 5 begins with a colon and is not read.)‰O& €€4N€²€‚ÿŒa怛+ &€Â€6„Œ€²!O€‚ÿ2: To run a previously defined macro, use the do command (ref.“DO” on page 53):do run_and_see)Ä& €€4N€²€‚ÿöěº‚2 2€‰€6„Œ€²!O€‚ÿ3: To define the same macro with the possibility of defining the address at each execu-tion,specify parameter "@ 1" in the macro definition:de -m -f run_and_seesr PC 100sb 110godm @1endm)āã‚& €€4N€²€‚ÿºº‚ƒ- (€€6„Œ€²!O€‚ÿ4: To execute this macro, type:do run_and_see 40The macro will be executed as before, replacing parameter @1 by its specified value: 40.)ã‚Æƒ& €€4N€²€‚ÿ‚VƒH„, (€¬€6„Œ€²!O€‚ÿ5: To list the macro commands, use command li (ref. LISTSYMBOL):li -m run_and_see)ƃq„& €€4N€²€‚ÿÞH„„…5 8€œ€6„Œ€²!O€â8î8U‰‚ÿ6: To store your macros in a file on disk, use the command ar (ref. ARCHIVE):ar -p -m file.macThis command stores the macro in the file named "file.mac". This is an ASCII filewhich can be modified with any editor.)q„­…& €€4N€²€‚ÿi>„…†+ &€|€6„Œ€²!O€‚ÿ7: To retrieve the macro from file, type:ar -g -m file.mac)­…?†& €€4N€²€‚ÿ< †{†1õX„{†Ž†x‹Programming9?†Ž†* $€€6ˆˆ˜²€€‚ÿProgramming›B{†O‹Y €€…€6„Œ€²€ã*› ‰â=î8U‰‚ÿVariables and programming statements can be included in a macro-commands. For full details on programming inside macros, ref. FOR, IF, JUMP commands.Up to 30 variables can be user defined from "v0" to "v1d" hexadecimal address.These variables can be set, tested, or used in programming statements.Expressions must not contain spaces. For example, the line:v0 = 0is incorrect.Using the same macro as above:1: To run the program 10 times and see the following byte each time, use the define com-mand (ref. DEFINE):de -m -f run_and_seesr PC 100sb 110for v0 1 A 1godm @1+v0endforendmWhen typing:do run_and_see 40the commands between FOR and ENDFOR will be executed 10 times (i.e. A times in hexadecimal, note that parameters are in current base). Command "dm @1+v0" will be interpreted as "dm 40+1", then "dm 40+2", and so on.2: To execute out a test program:de -m -f run_and seeresetsb 110v0=1.loopgodm @1+v0v0=v0+1if (v0<=A) jump loopendm3: To define a label use the de command ( ref. DEFINE)4: To jump to a label use the jump command (ref. JUMP).)ކx‹& €€4N€²€‚ÿKO‹Ã‹1œ9€Ë Œ‚ÂMemory and register accessHx‹ Œ* $€<€6ˆˆ˜²€€‚ÿMemory and register accessBÆËYÂ| ƀ €6„Œ€²€â=î8U‰ãeO¯‰€€€€€€â?ï8U‰âï8U‰€€‚ÿTo display the memory location in hexadecimal format and the memory value in decimal format, define a macro as follows:de -m -f run_and_seesr PC 100sb 110for v0 1 A 1goprint -n -f "%x = " @1+v0print -f "%d" m(@1+v0)endforendmIn this macro, the syntax "m(@1+v0)" requests the memory value at address(@1+v0). The PRINT command gives a formatted display.1: To obtain the data in P memory at address 10, type or use in a macro:v0=m102: To obtain the data in X memory at address 10, type or use in a macro:v0=mx:103: To obtain the double data in memory at address 10 and 11, type or use in a macro:if (m10<=m11)The test will be true if data in P memory at address 10 is lower or equal to data in memory at address 11.v0=m(mm10) --> v0 will contain the data in memory which address is contained in double data at address 10 and 11: this expression is an indirect a ŒYÂx‹ccess to the memory.v0=mm(m10) --> v0 contains the word in memory whose address is contained in data in memory at address 10.v0=mmm10 --> will be interpreted as: v0=mm(m10).The above examples use absolute addresses, but symbolic names can be used instead. The character '$' means a symbol name.print m$if (v0 == m$) ...Symbols can be used for register addresses:v0=r$a1hv0 will contain the value of the register A1H.You can write expressions such as:if (r$pc==mm100) jump endMemory and register access syntax is explained in full in the PRINT command description.) Œ‚Â& €€4N€²€‚ÿ@YÂÂÂ1K pˆÂÂÿÂÌFile management=‚ÂÿÂ* $€&€6ˆˆ˜²€€‚ÿFile managementñWÂÂð˚ ¯€6„Œ€²€â8î8U‰â=î8U‰âï8U‰ã’†&‰ã ‰âàî8U‰€€€€€€€€€€€€‚ÿChannels are used to store the results of programs. In the D950 emulator, the channel feature is similar to file management in C or other high-level language: channels can opened, read from, written to and closed.Channels may be opened as input or output, but not both; they can contain ASCII or binary values. All values must have the same length, for example, to read a different memory address at each step of the previous debugging program, and store the content of X-space memory in a file. Channel syntax is explained in full in the OPEN and CLOSE command description.See the following example:1: Edit a file called "address", containing the addresses to check.Since addresses are 16-bits long, use a file that contains 16-bits long values. In ASCII mode, each value must be separated by spaces, tab or end of line. Suppose the "address" file is:0000 0100 0105 0107 0168 00a4 0078 0123 0150 01202: To open the file "address" for reading, giving it the channel number 1, reading each time 2 bytes, type:open 1 address input ascii 2Output values are stored in a binary file "result", in which each value will be a data.3: To open file "result" for writing, giving it the channel number 2, writing each time 2 bytes, type:open 2 result output binary 24: To read and write from/to a channel, we use the character "#" followed by the channel number. For example, "#1" means one value, read from or written to the file associated to channel 1.The macro becomes:de -m test_autoopen 1 address input ascii 2open 2 result output binary 2for v0 1 A 1gov1=#1#2=mx:v1endforclose 1close 2endmExpression "v1=#1" writes to v1 the 16-bit value read in file "address" (channel #1).Expression "#2=mx:v1" writes in the "result" file (channel #2) the contents of thememory at location "v1" in the memory space X.By running this macro and checking the contents of the file "result" versus a reference version each time the program is changed, you have a non-regression procedure to test program evolution.5: To test for the end of file, open the file as input and use the @ command.)ÿÂÌ& €€4N€²€‚ÿ> ðËWÌ1m€,Š W̒ÌÎÎFunction keys;̒Ì* $€"€6ˆˆ˜²€€‚ÿFunction keysšWÌ¥Îk €€Q€6„Œ€²€€€ƒƒ€€ƒƒ€€ƒ€€ƒƒ€€ƒƒ€€ƒƒ€€ƒƒ‚ÿDefined standard function keys:F1HelpF5GoShift-F5HaltF7Go to the cursor (Code window only) F8StepF9Toggle breakpoint at the cursor (Code window only)F10Next (jump over soubroutines) clears the input line switches between insert and overtype erases the current characterup and down arrows retrieves previous commands)’ÌÎÎ& €€4N€²€‚ÿ@¥ÎÏ1£pˆ ÏKϗMouse operation=ÎÎKÏ* $€&€6ˆˆ˜²€€‚ÿMouse operationÛÏn< F€·€6„Œ€²€€€€€â=î8U‰‚ÿTo facilitate running the target code, special mouse processing within Code window is added: Double left-click togglKÏnÎÎes the breakpoint (same as F9 key). Right-click runs code to the address (same as F7 key).)Kϗ& €€4N€²€‚ÿKnâ1f,Šâ â*_Additional Window ControlsH—** $€<€6ˆˆ˜²€€‚ÿAdditional Window Controls Ÿâ6N j€}€6„Œ€²€€€€€ãǀ€‰ãÐՉ㔉€‚ÿBesides standard windows controls, Window specific functions are available on the window pull-down menu (mouse-click on the window's icon in the top-left corner of the window).Font allows to change size of the font for the window. Global font control is located in the main Options pull-down menu.Asm, Mixed, Source allow to change display mode of the Code window. This can be also acomplished with the ASM, MIX and SRC commands.)*_& €€4N€²€‚ÿD6£1Ìœ £èƒCommand Line ParamsE_è* $€6€6ˆˆ˜²€€‚ÿCommand Line ParametersV-£>) €[€6„Œ€²€‚ÿTo allow target configuration at the program start-up, command line parameters can be specified. All target reference options, can be also set within the Open Connection dialog (Options pull-down menu).For multiple configurations, it is recomended to use custom file name for the system "INI" file)èg& €€4N€²€‚ÿól>Z‡ ܀Ù€6„Œ€²€€€€ƒ€€€ƒâ’î8U‰€â=î8U€‰€ƒ€€€ƒâàî8U‰€€€ƒ€€€ƒ€€€ƒ‚ÿ -SnameFile name to save windows settings on exit -Ttype Interface type -AaddressIP address if TCP/IP connection to the BoxSerever -Dn Device number to access -Cn COM port number to access (BoxView direct or BoxServer) -BbaudInitial baud rate -PportI/O port base address (in hexadecimal))gƒ& €€4N€²€‚ÿ9ZŒ1ˆâ× Œò˄Commands6 ƒò* $€€6ˆˆ˜²€€‚ÿCommandsjŒ € Õ€6„„€²ãµ3€€‰€‚ãd…™€€‰€‚ã±63€€‰€‚ãǀ€€‰€‚ãW€€‰€‚ãªq€€‰€‚ã›ÚÔ€€‰€‚ãúˆ€€‰€‚ÿADDR Set disassembly/source addressALIAS Set/display command aliasARCHIVE Save/get macros/symbolsASM Change Code window display mode to assemblyBASE Change base of numbersBEEP Generate alert soundBREAK Set/Clear/Display software breakpointsBYE Exit applicationAòA Ž 6€6„„€²ãù™ô€€‰€‚ãŒØ “€€‰€‚ãE€€‰€‚ãÜ»u«€€‰€‚ãj€€‰€‚ã €€‰€‚㎀€‰€‚ãN€€‰€‚ãt€® €€‰€‚ÿCALLS Display call stackCASCADE Cascade all windowsCD Change current directoryCHANGE Change memory /register contentsCLOCK Set cycle duration of the DSP clock (SIM only)CLOSE Close I/O channelCLS Clear Terminal windowCM Compare memory valuesCODEMENU Add/remove entry to Code window menu9• z€ +€6„„€²ãƒ–€€‰€‚ãq‘ €€‰€‚ãjÜ €€‰€‚ãYò€€‰€‚ã ð€‰€‚ãÕ €€‰€‚ãÕ €€‰€‚ãCÄ€€‰€‚ÿCOLOR Change window colorCOMPARE Compare memory valuesCONNECT Initialize Hardware InterfaceCOPY Copy memory blockCYCLES Toggle/display of the cycles count (SIM only)@CURX Return the current cursor column value@CURY Return the current cursor line valueDASM Set disassembly address or scroll Code Window Page DownlA –@€ Ù€6„„€²ãsU¢³€€‰€‚ãŌ‚Ž€€‰€‚ãɔ€€‰€‚ãŌ‚Ž€€‰€‚ãÓ< €€‰€‚ãJ£ÿQ€€‰€‚ãy€€‰€‚ã{€€‰€‚ÿDEFINE Define symbols and macrosDI Disassemble memoryDIR Display directory contentsDISASM Disassemble memoryDISCONNECT Close connection to the target processorDISPLAz–@ƒY Display memory address or Scroll Page Down Memeory WindowDM Display memoryDO Execute macro command=™zÓB€ 3€6„„€²ã~€€‰€‚ã°Q€€‰€‚ãsU¢³€€‰€‚ã|€€‰€‚ã|£x€€‰€‚ãÕv€€‰€‚ãøœ€€‰€‚ãj€€‰€‚ÿDR Display/set registersDUAL Set dual memory access (SIM only)ENDM End of macro definitionEVAL Evaluate expressionEXEIO Initializes data transfer? Evaluate expression and print results@EOF Test end of input channel''Test end of input channelFILL Fill memory with a pattern''Fill memory with a pattern$€–@÷D€ €6„„€²ãÏ€€‰€‚ã˜Ö¡€€‰€‚ã=€€€‰€‚ãÛ?¢€€‰€‚ãÌ,6Ԁ€‰€‚ãü€€‰€‚ãzîp쀀‰€‚㮕Ù€€‰€‚ÿFM Fill memory with a patternFOCUS Bring window to frontFOR Loop command executionFORCE Reset or halt targetFUNCTION Display function in Code windowGO Start executing target code up to addressGOCURSOR Execute code to cursor within code windowGRAPH Set/PgDn grapph memory window address8„ÓB/GŽ 6 €6„„€²ãi€€‰€‚ãIº€€‰€‚ãX‹:߀€‰€‚ãI€€‰€‚ãþ}=€€‰€‚ã*› €€‰€‚ãƒÕÓ€€‰€‚ãı"€€‰€‚ãž>£{€€‰€‚ÿHALT Halt target processorHELP On-line helpIDCODE Read JTAG IDCODEIF Conditional operatorINPUT Open a file and pass data to the targetJUMP Go to labelLIMIT Set execution time limit in nanoseconds (SIM only)LINE Display assembler source lineLISTSYMBOL Displays symbols and macrosw÷DJI€ ï€6„„€²ãêÚ"€€‰€‚㶁Áû€€‰€‚ãˆÏ€€‰€‚ãpԀ€‰€‚ãñ€€‰€‚ãՀ€‰€‚ãËw‡€€‰€‚ãÐՀ€‰€‚ÿLOAD Load program and symbolsLOCATE Set cursor positionLOG Open/Close session log fileMAP Display external memory mappingMB Modify Conditional BreakpointsMEM Set memory address or Scroll Page Down Memory WindowMEMMAP Configure memory mappingMIX Change Code window menuw/GeK€ ï€6„„€²ãü€€‰€‚ãÃ%€€‰€‚ã’†&€€‰€‚ãaY€€‰€‚ãMS'€€‰€‚ãIpêـ€‰€‚㛀€‰€‚ãázb€€‰€‚ÿMM Move memoryNEXT Execute next statementOPEN Open a file and save dataOUTPUT Open a file and save data from the targetPATH Define, display or remove search pathsPCCURSOR Set PC value at cursor within code windowPAUSE Pause for a number of secondsPCHIST Program counter history4€JI™MŽ 6€6„„€²ãeO¯€€‰€‚ã‡)€€‰€‚ã«ÜCǀ€‰€‚ãE*V.€€‰€‚ã&€€‰€‚ãËWìɀ€‰€‚ã `.€€‰€‚ãçû€€‰€‚ãY÷*€€‰€‚ÿPRINT Print strings and valuesQUIT Exit applicationREFRESH Refresh display windowRELOAD Reload program code (no symbols)RESET Reset target processorRESTART Reset program to its entry pointRETURN Exit from subroutineRUN Execute multiple instructionsSAVE Save memory to .s19 file{eKžO€ ÷€6„„€²ã÷²2 €€‰€‚ã󀀉€‚ã @8€€‰€‚ãš8€€‰€‚㎠7€€‰€‚ãv€€‰€‚ãŽèã7€€‰€‚ã±D€€‰€‚ÿSAVEOMF Save memory block(s) to the fileSB Set/Display Simple Conditional BreakpointsSBDEL Delete Simple BrakpointsSBPUT Put/Display Simple BreakpointsSEARCH Search a pattern in memorySET Set/reset optionsSIGNAL Define asynchronous signal waveform (SIM only)SLOAD Load symbol table9…™MýŽ 6 €6„„€²ãþ€€‰€‚㔀€‰€‚ãžOýƒ€€‰€‚㔀€‰€‚ã‚N€€‰€‚ã–¥:€€‰€‚ãÄ}+€€‰€‚ãpΪ̀€‰€‚ãr+€€‰€‚ÿSM Set memorySOURCE Change Code window display mode to sourceSR Set registersSRC Change Code window display mode to sourceSTART Reset and start executionSTATUS Check target statusSTEP Single step or multiple instructionsSTEPOVER Execute next statementSTOP Stop executing codeCžO@„Ž 6€6„„€²ãf,€€‰€‚ã1f,€€‰€‚ã]*u€€‰€‚ã{lm€€‰€‚ãP&:€€€‰€‚ã3€€‰€‚ãl‘ج€€‰€‚ãÒ.€€‰€‚ã…Ï/€€‰€‚ÿTILE Tile all windowsTIME Get timing informationTIMER Set/get application timer valueUNALIAS Remove alias for given nameUNDEFINE Remove symbolsUSE Define, display, or remove search pathsVERSION Display program versionVIEW Open View windowWAIT Wait for mcsecs or until device is in DEBUG mode‹Hý˄C V€€6„„€²ã(€€‰€‚ãÐÏøZ€€‰€‚ÿWATCH Add watch variableWINDOW Open a new window5@„…1œ•…‚…l†ADDR>˄>…- *€"€6ˆˆ˜²€€ €‚ÿADDR addressD…‚…* $€4€6Œ„€²€ €‚ÿMenu: View --> SymbolsÁ>…C†1 0€!€6„Œ€²€â=î8U‰‚ÿThe ADDR command sets starting address for the last active CODE window.address -- starting address value of the program to be displayed.)‚…l†& €€4N€²€‚ÿ6C†¢†1©×㢆)‡¡‰ALIASP#l†ò†- *€F€6ˆˆ˜²€€ €‚ÿALIAS [alias name[," string"]]7 ¢†)‡* $€€6Œ„€²€ €‚ÿMenu: ---Oò†x‰4 6€7€6„Œ€²€â4î8U‰âàî8U‰‚ÿThe ALIAS command entered without any parameters will display all defined aliases. If only the name is specified, system will display current definition of the alias associated with this name.name alias name for the reference as the system commandsstring command string referenced by the name. Multiple commands in the alias definition need to be separated with the semicolon. Command parameters can be specified with the percent sign and a number (%1, %2, …). Previously defined alias names can be used in the new command string.))‡¡‰& €€4N€²€‚ÿ8x‰ى1 •pىcŠҎARCHIVES&¡‰,Š- *€L€6ˆˆ˜²€€ €‚ÿARCHIVE {-g|-p} {-a|-m} [-f] file7 ىcŠ* $€€6Œ„€²€ €‚ÿMenu: ---k,Š΍R r€3€6„Œ€²€â?ï8U‰â=î8U‰€€€€€€€€‚ÿThe ARCHIVE command loads into memory from a file or saves in a file the symbol table of the specified type:-a memory address type symbols-m macros-g (shorthand for "get") Symbols and definitions found in file are loaded into the symbol table. Unless the -f option is selected, symbols already defined in the symbol table are not redefined and an error message is issued.-p (shorthand for "put") Symbols of the given type and their definitions are stored in the specified file. If the file already exists and option -f is not selected, a confirmation is requested before overwriting the file. of memory addresses are saved in files in alphabetical order, one per line with their value in hexadecimal format.Macros are saved in files as they are defined (that is literally))cŠ÷& €€4N€²€‚ÿ8΍/Ž3 6€ €6„Œ€²€ ‡"€€‚ÿz5÷©ŽE Z€j€6„Œ€²ãsU¢³€‰ã{‰ãԂމãž>£{‰ãP&:€‰‚ÿDEFINE, DO, DISASM, LISTSYMBOL, UNDEFINE)/ŽҎ& €€4N€²€‚ÿ4©Ž1Õ』 'ÂASMIҎO- *€8€6ˆˆ˜²€€ €‚ÿASM [address mnemonic]Q' * $€N€6Œ„€²€ €‚ÿMenu: Local menu of the code window¹~OeÁ; D€ý€6„Œ€²€â=î8U‰€€‚ÿThe ASM command without parameters w eÁҎill change display mode of the last selected Code window to assembly mode.The ASM command with address and mnemonic will invoke the inline assembler in the context of the specified address.This command allows to write D950 instructions in C-like syntax in the program memory at the specified address.Example: cmd>asm 100 jump begin) ŽÁ& €€4N€²€‚ÿ8eÁÆÁ3 6€ €6„Œ€²€ ‡"€€‚ÿ8 ŽÁþÁ- *€€6„Œ€²ãŌ‚Ž€‰‚ÿDISASM)ÆÁ'Â& €€4N€²€‚ÿ5þÁ\Â1œpd\ÂÒÂ^ÄBASE?'›Â- *€$€6ˆˆ˜²€€ €‚ÿBASE {x|o|d}7 \ÂÒÂ* $€€6Œ„€²€ €‚ÿMenu: ---c+›Â5Ä8 >€W€6„Œ€²€â?ï8U‰‚ÿThe BASE command may be used to select the base of numbers."x" selected hexadecimal numbers"o" selected octal numbers"d" decimal numbersThe base currently selected is indicated by the prompt symbol of the debugger, according to the parameter of the BASE command.Example: Base dBase x)ÒÂ^Ä& €€4N€²€‚ÿ55Ä“Ä1ã€߁“ÄŲÅBEEP6 ^ÄÉÄ- *€€6ˆˆ˜²€€ €‚ÿBEEP7 “ÄÅ* $€€6Œ„€²€ €‚ÿMenu: ---‰bÉĉÅ' €Ä€6„Œ€²€‚ÿThis command activates system's default sound (configured through "Sounds" in theWindows Panel))ŲÅ& €€4N€²€‚ÿ6‰ÅèÅ1ÉdCƒèÅyÆÈBREAKG²Å/Æ- *€4€6ˆˆ˜²€€ €‚ÿBREAK [OFF] [address]J èÅyÆ* $€@€6Œ„€²€ €‚ÿMenu: Breakpoint --> Displayo'/ÆèÇH ^€O€6„Œ€²€â=î8U€‰€€€€€â?ï8U‰‚ÿThe BREAK command sets the software breakpoint at the specific address. If no parameters are specified, system will display all breakpoints set.OFF will remove breakpoint at the specific address, or all breakpoints if the address is omitted.[address] -- absolute address or symbol)yÆÈ& €€4N€²€‚ÿ4èÇEÈ1–߁nƒEÈ­ÈÉBYE1ÈvÈ* $€€6ˆˆ˜²€€‚ÿBYE7 EÈ­È* $€€6Œ„€²€ €‚ÿMenu: ---<vÈéÈ( €(€6„Œ€²€‚ÿExit application)­ÈÉ& €€4N€²€‚ÿ6éÈHÉ1RCƒӄHɶÉ×ËCALLS7 ÉÉ- *€€6ˆˆ˜²€€ €‚ÿCALLS7 HɶÉ* $€€6Œ„€²€ €‚ÿMenu: ---b:ÉË( €u€6„Œ€²€‚ÿThe CALLS command displays current call stack in the command window. This represents the information displayed also in the Calls window, but it will allow to add this information ioto the log file. Call stack is build using the information created by C programs. This is not available for the assembly programs.)¶ÉAË& €€4N€²€‚ÿ8ËyË3 6€ €6„Œ€²€ ‡"€€‚ÿ5AË®Ë- *€€6„Œ€²ãˆÏ€‰‚ÿLOG)yË×Ë& €€4N€²€‚ÿ8®ËÌ1µnƒ0…ÌŒÌÍCASCADE9 ×ËHÌ- *€€6ˆˆ˜²€€ €‚ÿCASCADEDÌŒÌ* $€4€6Œ„€²€ €‚ÿMenu: View --> Symbols[4HÌçÌ' €h€6„Œ€²€‚ÿArrange all opened windows in the cascade format.)ŒÌÍ& €€4N€²€‚ÿ3çÌCÍ1ӄօCÍ·Í•ÎCD=Í€Í- *€ €6ˆˆ˜²€€ €‚ÿCD pathname7 CÍ·Í* $€€6Œ„€²€ €‚ÿMenu: ---µ†€ÍlÎ/ ,€ €6„Œ€²€€€‚ÿCD command allows to change or display debugger's current working directorypathname -- directory path to be changed or displayed)·Í•Î& €€4N€²€‚ÿ7lÎÌÎ1¡0…ÌÎϰCHANGEh;•Î4Ï- *€v€6ˆˆ˜²€€ €‚ÿCHANGE address | address range | register name, valueK!ÌÎÏ* $€B€6Œ„€²€ €‚ÿMenu: Direct resource editingüy4χƒ Ԁó€6„Œ€²€âï8U‰â=î8U€‰€âï8U€‰âáî8U‰€€€€€â?ï8U‰â!ŸË€‰€€€€€â ï8U‰Ï‡•΂ÿThe CHANGE command allows to change contents of the memory range or the register.address -- memory address to be changed in the format: space:offset, where space is one of the allowed memory spaces for the processor (P, X, Y or L) and offset is an absolute value of the address offset. Address can be also specified in the form of the application symbol.address range -- specifies memory area to be changed to the value. Range can be accepted in two formats: start_address..end_address or start_address#count.register register name -- refers to one of the valid DSP registers (A, X0, PC, etc.))ϰ& €€4N€²€‚ÿ6‡æ1Vօüæ‘¶CLOCK>°$- *€"€6ˆˆ˜²€€ €‚ÿCLOCK nsec6 æZ* $€€6ˆ„€²€ €‚ÿSIM only7 $‘* $€€6Œ„€²€ €‚ÿMenu: ---üÌZ0 .€™€6„Œ€²€€€‚ÿCommand CLOCK will set the duration of the DSP clock. This will allow translation to the time value used by the commands LIMIT and SIGNALNote: (SIM only). This is available for the simulator only.)‘¶& €€4N€²€‚ÿ6ì1==ìbnCLOSE?¶+- *€$€6ˆˆ˜²€€ €‚ÿCLOSE channel7 ìb* $€€6Œ„€²€ €‚ÿMenu: ---L +®? L€€6„Œ€²€€€€€âàî8U‰‚ÿThe CLOSE command allows to close the channel specified. channel must be a decimal number from 1 to 10.Closing a channel that has not yet been opened does not cause an error. Once closed a channel cannot be used for reading or writing data.Example:close 1)b×& €€4N€²€‚ÿ8®3 6€ €6„Œ€²€ ‡"€€‚ÿ6 ×E- *€€6„Œ€²ã’†&€‰‚ÿOPEN)n& €€4N€²€‚ÿ4E¢1¡üࢠz CLS1nÓ* $€€6ˆˆ˜²€€‚ÿCLS7 ¢ * $€€6Œ„€²€ €‚ÿMenu: ---fÓš* $€Ì€6„Œ€²€‚ÿThe CLS command clears the screen, and put cursor at the first line, first columnExample: CLS) Ã& €€4N€²€‚ÿ8šû3 6€ €6„Œ€²€ ‡"€€‚ÿVÃQ 9 B€:€6„Œ€²ãÕ €‰ãÕ ‰ã¶Áû‰‚ÿ@CURX, @CURY, LOCATE)ûz & €€4N€²€‚ÿ3Q ­ 1¿=•­ / œ CMLz ù - *€>€6ˆˆ˜²€€ €‚ÿCM addr1 addr2 [count]6 ­ / * $€€6Œ„€²€ €‚ÿMenu:---žkù ç M h€×€6„Œ€²€€€â=î8U‰€€€€€€‚ÿThe CM command allows to compare the content of count data of memory at address addr1, with the content of memory at address addr2.If count is not specified, it is assumed equal to 1.For each comparison resulting in a difference, the addresses and the contents of the corresponding memory cells are printed.Example:CM 10 100 20CM x:10 x:100 20)/  & €€4N€²€‚ÿ8ç H 3 6€ €6„Œ€²€ ‡"€€‚ÿL ” 9 B€&€6„Œ€²ãy€‰ãωãþ‰‚ÿDM, FM, SM)H œ & €€4N€²€‚ÿ9” ö 1àFö x MCODEMENUKœ A - *€<€6ˆˆ˜²€€ €‚ÿCODEMENU text [command|r]7 ö x * $€€6Œ„€²€ €‚ÿMenu: ---¬ƒA $) €€6„Œ€²€‚ÿCODEMENU command allows to add or remove custom commands from the CODE window's local menu (available with right-mouse click).)x M& €€4N€²€‚ÿ6$ƒ1ß•€ƒBCOLORGMÊ- *€4€6ˆˆ˜²€€ €‚ÿCOLOR window_id value7 ƒ* $€€6Œ„€²€ €‚ÿMenu: ---Ú©ÊçA1 0€S€6„Œ€²€âàî8U‰‚ÿThe COLOR command allows to change default colors in the specific window. Parameter winName represents the window name, as it appears in its title. ColorId is the number for the color type to change. TheçAMre are different numbers of colors for different windows. This information is displayed in the colors setup dialog (Options-->Colors). The value is a hexadecimal value representing the background (high nibble) and foreground (low nibble). The color association with color values 0..15 can be seen in the Color Setup dialog. The default for value 0xf (15) is white, default for value of 0 is black, but any color can be changed with above dialog.Example:Color memory 1 f2)B& €€4N€²€‚ÿ8çAHB1ÇFŸ HBÎBdECOMPAREP#B˜B- *€F€6ˆˆ˜²€€ €‚ÿCOMPARE addr1 addr2 [count]6 HBÎB* $€€6Œ„€²€ €‚ÿMenu:---Àm˜BŽDS t€Û€6„Œ€²€ãN‰€€â=î8U‰€€€€€€‚ÿThe CM command allows to compare the content of count data of memory at address addr1, with the content of memory at address addr2.If count is not specified, it is assumed equal to 1.For each comparison resulting in a difference, the addresses and the contents of the corresponding memory cells are printed.Example:CM 10 100 20CM x:10 x:100 20)ÎB·D& €€4N€²€‚ÿ8ŽDïD3 6€ €6„Œ€²€ ‡"€€‚ÿL·D;E9 B€&€6„Œ€²ãy€‰ãωãþ‰‚ÿDM, FM, SM)ïDdE& €€4N€²€‚ÿ8;EœE1ë€O…!œEIFJCONNECTf9dEF- *€r€6ˆˆ˜²€€ €‚ÿCONNECT [interface type[,device[,[IpAddr][,port]]]]GœEIF* $€:€6Œ„€²€ €‚ÿMenu: Open --> Connection‘8FÚIY €€q€6„Œ€²€â’î8U€‰€€€âàî8U‰€€â=î8U‰€€‚ÿThe CONNECT command initializes connection to the target processor. Parameters specify details of the connection. interface type -- defines type of target to open connection with.device -- indicates device # in the scan chain to connect to. This is required for the multi processor systems. For the EVM connection this number will be ignored.IpAddr -- defines TCP/IP address for the remote connection to the server. For the local connection this parameter needs to be empty. port -- indicates physical address of the target to be connected to. In case of the remote connection to the IpAddr this is server's port number (by default 5417 is used). For the local RS-232 connection this is the COM port number (1, 2, …). For the local I/O port interface, this is the I/O port base address (240, 340, …).)IFJ& €€4N€²€‚ÿ5ÚI8J1%Ÿ†"8J¿J³KCOPYP#JˆJ- *€F€6ˆˆ˜²€€ €‚ÿCOPY address_range mem_address7 8J¿J* $€€6Œ„€²€ €‚ÿMenu: ---˝ˆJŠK. *€;€6„Œ€²€â»î8U‰‚ÿThe COPY command allows the user to execute a fast copy of the memory block specified by the address_range to another location specified by mem_address.)¿J³K& €€4N€²€‚ÿ7ŠKêK1kO…‡#êKcLMCYCLESB³K,L- *€*€6ˆˆ˜²€€ €‚ÿCYCLES [ON|OFF]7 êKcL* $€€6Œ„€²€ €‚ÿMenu: ---Ú,LtM7 <€µ€6„Œ€²€€€€€‚ÿToggle/display of the cycles count (SIM only). Command allows to display current executed cycles count. ON/OFF switch controls cycles display on the status bar.Note: This is available for the simulator only.)cLM& €€4N€²€‚ÿ6tMÓM1 †$ÓMDN5€CURXY:M N* $€ €6ˆˆ˜²€€‚ÿ@CURX, @CURY7 ÓMDN* $€€6Œ„€²€ €‚ÿMenu: --- × NNO3 4€¯€6„Œ€²€ãN‰‚ÿ@CURX and @CURY are variables that return the current cursor position. CURX returns the current column value, and CURY returns the current line value.Example:CM 10 100 20CM x:10 x:100 20V0=@CURXprint @cury)DNwO& €€4N€²€‚ÿ8NO¯O3 6€ €6„Œ€²€ ‡"€€‚ÿEwO €3 6€$€6„Œ€²ãŽ€‰ã¶Áû‰‚ÿCLS, LOCATE¯O €M)¯O5€& €€4N€²€‚ÿ5 €j€1—‡0%j€â€H‚DASMA5€«€- *€(€6ˆˆ˜²€€ €‚ÿDASM [address]7 j€â€* $€€6Œ„€²€ €‚ÿMenu: ---= «€‚4 6€€6„Œ€²€â=î8U‰€€‚ÿThe DASM command will set starting address of the Code window to the address value. If no parameter is specified, command will cause to scroll Code window one page down. Command affects only the last selected Code window, other Code windows are not affected.)â€H‚& €€4N€²€‚ÿ7‚‚1 G &‚8ƒ%ŒDEFINE‚LH‚ƒ6 <€˜€6ˆˆ˜²€€ €€ €€‚ÿDEFINE -a [-f] symbol address''DEFINE -m [-f] symbol''...''...''ENDM7 ‚8ƒ* $€€6Œ„€²€ €‚ÿMenu: ---ð~ƒ(‹r ²€ý€6„Œ€²€â?ï8U€‰€â=î8U€‰€€€ã{‰€€€€‚ÿIn the first case, defined symbol will allow references to the given address.The second case is used to define the macro called symbol. A macro is a collection of commands that can be put into execution via the DO command. The lines following the DEFINE command are read up to a line containing the keyword ENDM and form the macro body.Notice that macro body is stored in memory literally, without any interpretation, except that leading blanks are stripped, and lines beginning with the colon character (:) are discarded. Macro parameters can be embedded in macro body as "@", where is a single digit between 0 and 7. They will be expanded at macro execution time with the literal value of the actual parameters passed to the macro.Unless the -f (shorthand for "force") option is specified, if the symbol is already defined, an error message is issued and the definition of the symbol is not changed.If two address symbols have the same value, the most recently defined one will be used when the symbol table will be searched for a value.Symbols are stored in memory for fast retrieval and alphabetical sorting. Each symbol requires memory that is allocated when the symbol is defined and released when the symbol is removed. Defining more symbols than allowed by the available memory will cause an "OUT OF MEMORY" error message.Address symbols may be used in any expression by writing them preceded by the dollar operator ("$"). This operator will cause the symbol to be replaced by its numeric value.Example:define -a lab x:10define -m LOADANDGOresetprint "LOADING FILE @1"load @1sb on @2goendmA macro, once defined, may be invoked using the DO command. About the example illustrated above, the LOADANDGO macro could be executed like this: do LOADANDGO prog_8 1234 Then a DSP reset will be done, prog_8 loaded, run and finally stopped if address 1234 is reached.)8ƒQ‹& €€4N€²€‚ÿ8(‹‰‹3 6€ €6„Œ€²€ ‡"€€‚ÿs4Q‹ü‹? N€h€6„Œ€²ã±63€‰ãԂމãž>£{‰ãP&:€‰‚ÿARCHIVE, DISASM, DO, LISTSYMBOL, UNDEFINE)‰‹%Œ& €€4N€²€‚ÿ7ü‹\Œ10d '\ŒôŒŏDISASMa.%ŒœŒ3 6€\€6ˆˆ˜²€€ €€ €‚ÿDISASM addr [count] or DI addr [count]7 \ŒôŒ* $€€6Œ„€²€ €‚ÿMenu: ---ΜŒD V€€6„Œ€²€â=î8U‰€€€€€€‚ÿThe DISASM and DI commands allow to display the content of memory at address addr, in symbolic format, i.e., in mnemonic assembler code.If only addr is typed, the command iteratively displays the instruction at address addr, then if key is typed, it displays the next instruction, and so on. If before the a new address is typed, the command starts disassembling instruction from the new address.To leave the command type "q".)ôŒ/& €€4N€²€‚ÿ8g3 6€ €6„Œ€²€ ‡"€€‚ÿ5/œ- *€€6„Œ€²ãǀ€‰‚ÿASM)gŏ& €€4N€²€‚ÿ4œ À1¯G V( À‰ÀÂDIRŏ ÀŏFŏRÀ- *€2€6ˆˆ˜²€€ €‚ÿDIR [directory name]7 À‰À* $€€6Œ„€²€ €‚ÿMenu: ---U-RÀÞÁ( €[€6„Œ€²€‚ÿThe DIR command displays a directory listing in the display area of the COMMAND window. If you use the optional [directory name] parameter, the debugger displays a list of the specified directory's contents. If you do not use the parameter, the debugger lists the contents of the current directory.)‰ÀÂ& €€4N€²€‚ÿ; ÞÁBÂ17d C‚)BÂÎÂÔÃDISCONNECT<Â~Â- *€€6ˆˆ˜²€€ €‚ÿDISCONNECTP&BÂÎÂ* $€L€6Œ„€²€ €‚ÿMenu: Options --> Close connectionݵ~«Ã( €k€6„Œ€²€‚ÿThe DISCONNECT command will disable connection with the target processor. This allows to select another processor to be accessed (in case of the multiprocessor or remote access).)ÎÂÔÃ& €€4N€²€‚ÿ8«Ã Ä1žVŒƒ* Ä†Ä ÆDISPLAYCÔÃOÄ- *€,€6ˆˆ˜²€€ €‚ÿDISPLAY [address]7 ĆÄ* $€€6Œ„€²€ €‚ÿMenu: ---^#OÄäÅ; D€G€6„Œ€²€â=î8U€‰€€€‚ÿThe DISPLAY command will set starting address of the Memory window to the address value. If no parameter is specified, command will cause to scroll Memory window one page down. The DISPLAY command affects only the last selected Memory window, other Memory windows are not affected.)†Ä Æ& €€4N€²€‚ÿ3äÅ@Æ1ÖC‚Y…+@ÆÉÆnÉDMR Æ’Æ3 6€>€6ˆˆ˜²€€ €€ €‚ÿDM addr or DM from to7 @ÆÉÆ* $€€6Œ„€²€ €‚ÿMenu: ---Ï‚’ƘÈM h€€6„Œ€²€â=î8U‰€€€€€€â8î8U‰‚ÿThe DM command allows to display the memory content on a word basis.In the first case, the command displays the content of memory at address addr.In the second case, the command displays the content of the memory block enclosed between addresses from and to (included). Memory content is displayed both in numeric notation and in ASCII code.Example:DM 0 50DM x:10 20)ÉÆÁÈ& €€4N€²€‚ÿ8˜ÈùÈ3 6€ €6„Œ€²€ ‡"€€‚ÿLÁÈEÉ9 B€&€6„Œ€²ãN€‰ãωãþ‰‚ÿCM, FM, SM)ùÈnÉ& €€4N€²€‚ÿ3EÉ¡É1Œƒ\‰,¡É+ÊüÎDOT*nÉõÉ* $€T€6ˆˆ˜²€€‚ÿDO macro_name [actual_parameters_list]6 ¡É+Ê* $€€6Œ„€²€ €‚ÿMenu:---Û”õÉÎG \€)€6„Œ€²€€€ãǀ‰€€‚ÿThe DO command executes the macro macro_name with the specified parameters. The macro body is read by the command interpreter and commands executed as if read from the keyboard.Interactive commands, like ASM, take their input from the lines following the command in the macro body. They also work silently, i.e., they do not display any prompt. Before a line is read from macro body, any instance of "@n", where n is a single digit between 0 and 7, is substituted with the corresponding parameter taken from the actual_ parameter_list."@0" is the macro name itself, "@1" is the first parameter, and so on. Up to 7 parameters can be given in the parameter list. Parameters not defined are substituted with a null string.Macro executions can be nested. Execution can be interrupted with keyExample:define -m LOADANDGOresetprint "LOADING FILE @1"load @1sb on @2goendmdo LOADANDGO prog_8 1234)+Ê/Î& €€4N€²€‚ÿ8ÎgÎ3 6€ €6„Œ€²€ ‡"€€‚ÿl-/ÎÓÎ? N€Z€6„Œ€²ãsU¢³€‰ãž>£{‰ã‡)‰ãP&:€‰‚ÿDEFINE, LISTSYMBOL, QUIT, UNDEFINE)gÎüÎ& €€4N€²€‚ÿ3ÓÎ/Ï1tY…-/ÏÐÏDRj1üΙÏ9 B€b€6ˆˆ˜²€€ €€ €€ €‚ÿDR or DR or DR 7 /ÏÐÏ* $€€6Œ„€²€ €‚ÿMenu: ---|=™ÏX? L€{€6„Œ€²€â ï8U‰âÐÏXüÎï8U‰‚ÿThe DR command displays the content of registers.Used without argument, it displays all DSP registers.If a single register is specified, only that register will be displayed.In the last form, the registers between and (included) are displayed, one per line.Example:DRDR A0HDR IX0 IX3)Ðρ& €€4N€²€‚ÿ8X¹3 6€ €6„Œ€²€ ‡"€€‚ÿ4í- *€€6„Œ€²ã€‰‚ÿSR)¹& €€4N€²€‚ÿ5íK1ÿ\‰¢.KÿÍDUALG’- *€4€6ˆˆ˜²€€ €‚ÿDUAL xaddr yaddr size6 KÈ* $€€6ˆ„€²€ €‚ÿSIM only7 ’ÿ* $€€6Œ„€²€ €‚ÿMenu: ---¥YÈ€L f€³€6„Œ€²€€€âï8U‰€€€€€€‚ÿThe DUAL command defines size and start addresses for the dual port memory available for the XRAM and YRAM references.xaddr - begining of the dual port memory in the XRAM spaceyaddr - begining of the dual port memory in the YRAM spacesize - length of the dual port memory blockNote: This is available for the simulator only.)ÿÍ& €€4N€²€‚ÿ5€1ž/EVALU(ÍW- *€P€6ˆˆ˜²€€ €‚ÿEval rval=lval addr2 [count]''''6 * $€€6Œ„€²€ €‚ÿMenu:---^-Wë1 0€[€6„Œ€²€âï8U‰‚ÿThis command allows to evaluate any “C type” expression. The evaluation result is stored into the “lval” destination. Destination can be any register, memory location or system variable (v0..v1d). To display the result of the evaluation, “?” command needs to be used.Example:EVAL R4 = *ptr + 4)& €€4N€²€‚ÿ6ëJ1B¢Q0JŽÅ EXEIO3 }* $€€6ˆˆ˜²€€‚ÿEXEIO7 JŽ* $€€6Œ„€²€ €‚ÿMenu: ---]} G \€-€6„Œ€²€€€â=î8U‰âàî8U‰âï8U‰‚ÿCommand initializes data transfer to/from the DSP. Parameters of the data transfer are passed within global variables v20..v23. Result of the data transfer is returned in the variable v24. If transfer fails, variable is set to non-zero value.Glovbal variables definition: v20 - transfer starting address within the DSP memory v21 - number of words to transfer v22 - direction (0x8000 - write, 0x4000 - read) and memory space (0 - PMEM, 1 - XMEM, 2 - YMEM) v23 - file # to use v24 - error flag set by transfer routine)Ž: & €€4N€²€‚ÿ8 r 3 6€ €6„Œ€²€ ‡"€€‚ÿS: Å = J€,€6„„€²ãþ}=€‰€‚ãaY€‰€‚ÿINPUTOUTPUT6r û 1d €1û ¬ wNINPUTzMÅ u - *€š€6ˆˆ˜²€€ €‚ÿINPUT [#(file_number)] OFF | TERM | filename [-dec | -hex | -bin [-cnt]]7 û ¬ * $€€6Œ„€²€ €‚ÿMenu: --- u ÃMü Ɓ"€6„Œ€²€€€âàî8U‰€€€€€€€€â8î8U‰€€€€€€ã|£x‰€€â=î8U‰âï8U‰€€€€€€€€€€€€€€€€‚ÿThe INPUT command is used to open a text or binary file and use the file to pass data to the target DSP chip. The data is passed to the target DSP when the user's program reaches a software breakpoint. The file lists the data sequentially.The INPUT command with no parameters displays all open input files. # file_number is the number of the file opened (multiple files can be opened simultaneously). The file number is optional, the range is 1 to 99.OFF closes an opened input file. If a file is not specified, all opened files are closed.TERM uses the terminal/keyboard (instead of a text file) to input data to the target DSP.filename is the name of the file used for data input. -dec specifies decimal ASCII data representation -hex specifies hexadecimal ASCII data representation. This is the default. -bin specif¬ ÃMÅ ies binary data representation -cnt specifies number of byte to read per each target word. It applies only to the binary format.The transfer of the data is invoked from the debugger by the EXEIO command. This command expects transfer parameters to be stored in the glabal variables: v20..v24. To automate data transfer, user needs to set a breakpoint within the DSP code, and specify "execute" and "test" options for this breakpoint. Command file, invoked with the breakpoint's "execute" option, will initialize global variables, and invoke debugger transfer routine with the EXEIO command. The breakpoint's "test" option will evaluate result of the data transfer, and if it was successful, it will restart the DSP. Global variables can be initialized using variables/registers from the user program, or setup by the user command file.Glovbal variables definition: v20 - transfer starting address within the DSP memory v21 - number of words to transfer v22 - direction (0x8000 - write, 0x4000 - read) and memory space (0 - PMEM, 1 - XMEM, 2 - YMEM) v23 - file # to use v24 - error flag set by transfer routineDetails on the INPUT data file in text formatsThe text file is always ASCII, with the data listed sequentially. BoxView provides ways to simplify the file editing. For example, if one word must be send to the DSP repeatedly, you can have a repeat code instead of typing an infinitely long file. The following are the codes that may be used in the ASCII file: # Specifies the number of times a data word is repeated. () Parenthesis are used to group words. If parenthesis are preceded by # the whole group is repeated. If # doest not precede the parenthesis, the group of words is repeated indefinitely. Example 1:1 2 3 4Send data words 1, 2, 3, 4.Example 2:121#10Send the data word 121 10 times.Example 3:(0 121)#10Send 0, 121, 1, 121 ....Example 4:(7fff)aSend 7fff indefinitelyExample 5:1 2 3 5#2 (10 20)#3 (10)send 1, 2, 3, 5, 5, 10, 20, 10, 20, 10, 20, 10, 10, 10, 10, ...Examples on entering the input commandExample 1: Display all currently open input files.INPUTExample 2: Open “DATA.IN” file, label it file number 1. Data in “DATA.IO” is in decimal.INPUT #1 DATA.IO -decExample 3: Open DATA3.BIN file, label the file automatically. Data in DATA3.BIN is in binary format, read one byte per DSP wordINPUT DATA3.BIN -b -1Example 4: Read data from the terminal (keyboard) and send it to the DSP.INPUT TERMExample of the command file initializing gloabal variables and breakpooint for INPUT transfer:INPUT off ;switch off old input streamsINPUT data_1 ;this will open an input fileBREAK p:110 xset_in tv24!=0 ;set a breakpoint, execute transfer, run targeteval v20=0x1040 ;start address to loadeval v21=0x10 ;read 16 words at a timeeval v22=0x8002 ;write to YMEMeval v23=1 ;read from file #1eval v24=0 ;error flag set if transfer failsExample of the command executed, when the breakpoint at address p:110 is reached:exeio ;execute transfereval v20+=v21 ;increment destination addressbreak disable ;disable breakpointsstep ;step over the breakpointbreak enable ;reenable the breakpoints)¬ ìM& €€4N€²€‚ÿ8ÃM$N3 6€ €6„Œ€²€ ‡"€€‚ÿSìMwN= J€,€6„„€²ã|£x€‰€‚ãaY€‰€‚ÿEXEIOOUTPUT7$N®N1ÚQ2®NgO OUTPUT‚UwN0O- *€ª€6ˆˆ˜²€€ €‚ÿOUTPUT [#(file number)] OFF | TERM | filename [-dec | -hex | -bin] [-ovr] [-cnt]7 ®NgO* $€€6Œ„€²€ €‚ÿMenu: ---å0OXŽá  €6„Œ€²€€€âàî8U‰â8î8U‰€€€€€€€€€€€€€€€€ã|£x‰€€â=î8U‰âï8U‰€gOXŽwN€€€€€€€€€€€€€‚ÿThe OUTPUT command is used to open a text or binary file and use the file to save data passed from the target DSP chip. The data is passed to the file when the user's DSP program reaches a software breakpoint. The OUTPUT command with no parameters displays all open output files. #(file number) is the number of a file opened (multiple files can be opened simultaneously). The file number is optional, the range is 1 to 99. The ASCII text file lists the data sequentially.OFF closes an opened output file. If a file is not specified, all opened files are closed.TERM uses the terminal/monitor (instead of a text file), and display the data.filename is the name of the file used for data output. -dec specifies decimal ASCII data representation -hex specifies hexadecimal ASCII data representation. This is the default. -bin specifies binary data format -ovr Over-write file if the file exists. -cnt Column count for ASCII formats 1..8), or byte count to store into the file for every target word read in binary format (1..2)The transfer of the data is invoked from the debugger by the EXEIO command. This command expects transfer parameters to be stored in the glabal variables: v20..v24. To automate data transfer, user needs to set a breakpoint within the DSP code, and specify "execute" and "test" options for this breakpoint. Command file, invoked with the breakpoint's "execute" option, will initialize global variables, and invoke debugger transfer routine with the EXEIO command. The breakpoint's "test" option will evaluate result of the data transfer, and if it was successful, it will restart the DSP. Global variables can be initialized using variables/registers from the user program, or setup by the user command file.Glovbal variables definition: v20 - transfer starting address within the DSP memory v21 - number of words to transfer v22 - direction (0x8000 - write, 0x4000 - read) and memory space (0 - PMEM, 1 - XMEM, 2 - YMEM) v23 - file # to use v24 - error flag set by transfer routineExamples on entering the output command:Example 1: Display all currently open output files.OUTPUTExample 2: Open “DATA.OUT” file, label it file number 1, and use the file to save data. Data is saved in decimal with one word per line. OUTPUT #1 DATA.OUT -d -1Example 3: Open DATA4.BIN file, overwrite old one if exists, label the file automatically. Data in DATA4.BIN is in the binary format using 2 bytes for every DSP word.OUTPUT DATA4.BIN -b -2 -oExample 4: Read data from the DSP and send it to the Terminal window in hexadecimal format, 4 words per line.OUTPUT TERM -h -4Example of the command file initializing gloabal variables and breakpooint for OUTPUT transferOUTPUT off ;switch off old input streamsOUTPUT data4.txt -o ;this will create an output file (overwrite existing file)BREAK p:120 xset_io tv24!=0 ;set a breakpoint, execute transfer, run targetExample of the command executed, when the breakpoint at address p:120 is reachedeval v20=addrStart ;get the start address to read from the application variableeval v21=xferCnt ;initialize count variableeval v22=0x4001 ;read from XMEMeval v23=1 ;write to file #1eval v24=0 ;error flag set if transfer failsexeio ;execute transferbreak disable ;disable breakpointsstep ;step over the breakpointbreak enable ;reenable the breakpoints)gOŽ& €€4N€²€‚ÿ8X޹Ž3 6€ €6„Œ€²€ ‡"€€‚ÿRŽ = J€*€6„„€²ã|£x€‰€‚ãþ}=€‰€‚ÿEXEIOINPUT6¹ŽA1€€3A¹ÁEVAL1B ƒ- *€*€6ˆˆ˜²€€ €‚ÿ? [lval= ] rval6 A¹* $€€6Œ„€²€ €‚ÿMenu:---ÞÀ* "€ß€6„Œ€²€‚ÿThis command displays the re¹ÞÀ sult from the expression evaluator. This is identical to the EVAL command, but it also displays the result in the command window. The expressions supported are any C-type expression string.Example: ? r4+n4)¹Á& €€4N€²€‚ÿ4ÞÀ;Á1Nd‚4;Á¿ÁÜÄEOFM ÁˆÁ- *€@€6ˆˆ˜²€€ €‚ÿIF @EOF(channel) JUMP label7 ;Á¿Á* $€€6Œ„€²€ €‚ÿMenu: ---NˆÁ Ä8 >€-€6„Œ€²€‚ÿEOF tests if the end of a file opened when the input channel has been reached.The function returns FALSE if the end of a file has not been reached, otherwise it returns TRUE. The function works like the C-language function, meaning that it returns TRUE, when the program has tried to read after the end of the file; in this case, the value read is undefined.Example:de -m testopen 1 @1 input ascii 2.loopv1=#1if @EOF(1) jump endfileprint v1jump loop.endfileprint "end of file encountered"close 1endmdo test datas.2)¿Á6Ä& €€4N€²€‚ÿ8 ÄnÄ3 6€ €6„Œ€²€ ‡"€€‚ÿE6ijÄ3 6€$€6„Œ€²ã’†&€‰ã ‰‚ÿOPEN, CLOSE)nÄÜÄ& €€4N€²€‚ÿ5³ÄÅ1H€²ƒ5ÅŽÅ¥ÇFILLFÜÄWÅ- *€2€6ˆˆ˜²€€ €‚ÿFILL from to pattern7 ÅŽÅ* $€€6Œ„€²€ €‚ÿMenu: ---A WÅÏÆ8 >€€6„Œ€²€â=î8U‰ãω‚ÿFill the memory block indicated by the limit address and with the values indicated in patternUp to 8 values can be indicated. They will be repeatedly put in the memory in the same order until the block is filled.Example:FM x:100 200 1234 5678)ŽÅøÆ& €€4N€²€‚ÿ8ÏÆ0Ç3 6€ €6„Œ€²€ ‡"€€‚ÿLøÆ|Ç9 B€&€6„Œ€²ãN€‰ãy‰ãþ‰‚ÿCM, DM, SM)0Ç¥Ç& €€4N€²€‚ÿ3|ÇØÇ1@d‚ü„6ØÇSÈbÊFMD¥ÇÈ- *€.€6ˆˆ˜²€€ €‚ÿFM from to pattern7 ØÇSÈ* $€€6Œ„€²€ €‚ÿMenu: ---9ÈŒÉ2 2€€6„Œ€²€â=î8U‰‚ÿFill the memory block indicated by the limit address and with the values indicated in patternUp to 8 values can be indicated. They will be repeatedly put in the memory in the same order until the block is filled.Example:FM x:100 200 1234 5678)SȵÉ& €€4N€²€‚ÿ8ŒÉíÉ3 6€ €6„Œ€²€ ‡"€€‚ÿLµÉ9Ê9 B€&€6„Œ€²ãN€‰ãy‰ãþ‰‚ÿCM, DM, SM)íÉbÊ& €€4N€²€‚ÿ69ʘÊ1Ó²ƒs†7˜ÊËÀÌFOCUSP#bÊèÊ- *€F€6ˆˆ˜²€€ €‚ÿFOcus winName|forward|reverse6 ˜ÊË* $€€6Œ„€²€ €‚ÿMenu:---yEèÊ—Ì4 6€‹€6„Œ€²€€€€€‚ÿFOCUS command allows to change active window within debugger interface. If the window name is specified, it will activate first window of the specified type. For forward/reverse parameters windows will be activated in the round robin order. Command can be assigned to the function key or button with the ALIAS command.)ËÀÌ& €€4N€²€‚ÿ4—ÌôÌ1Œü„’‡8ôÌTͯÎFOR`0ÀÌTÍ0 0€`€6ˆˆ˜²€€ €€‚ÿFOR var start end [step]''...''...''ENDFOR2ìô̆ÎF Z€Ù€6„Œ€²€€€€€€€€€‚ÿLoops from start value to end value in increments of step. The parameter var must be a valid variable (v0 to v1d). Default value for increment is 1.Example : Set memory between 10 and 20 to zeroFOR v0 10 20sm v0 0ENDFOR)TͯÎ& €€4N€²€‚ÿ6†ÎåÎ1®s†9åÎNÏÖFORCE3 ¯ÎÏ* $€€6ˆˆ˜²€€‚ÿFORCE6 åÎNÏ* $€€6Œ„€²€ €‚ÿMenu:---œ’Ï+ $€%€6„Œ€²€‚ÿThe FORCE command allows to stop execution of the program (Break parameter), or reset the target processor (Reset parameter).ExampleNϯÎ:Force r)NÏ@& €€4N€²€‚ÿ8x3 6€ €6„Œ€²€ ‡"€€‚ÿ5@­' €€6„Œ€²€‚ÿHALT, RESET)xÖ& €€4N€²€‚ÿ9­1ג‡š:3FUNCTIONGÖV- *€4€6ˆˆ˜²€€ €‚ÿFUnction name|address7 * $€€6Œ„€²€ €‚ÿMenu: ---}VV ' €¬€6„Œ€²€‚ÿFUNCTION command displays specified function in the code window in the SOURCE mode.)3& €€4N€²€‚ÿ3 f1Fˆ;fêÿGO>3€- *€"€6ˆˆ˜²€€ €‚ÿGO [address]Ffê* $€8€6Œ„€²€ €‚ÿMenu: Process --> Go, F5쟀Ö. *€}€6„Œ€²€â=î8U‰‚ÿThe GO command executes code up to a specific address. If the address is not supplied, code will execute until it reaches one of the breakpoints, or it is stopped with the HALT command.)êÿ& €€4N€²€‚ÿ9Ö81š8<8š“GOCURSOR: ÿr- *€€6ˆˆ˜²€€ €‚ÿGOCursor6 8š* $€€6Œ„€²€ €‚ÿMenu:---”rj. *€)€6„Œ€²€â=î8U‰‚ÿGOCURSOR command is available only for macro command processor and custom menus of the code window. When invoked, it will set a temporary breakpoint at the current position of the cursor within the code window. If the current position of the cursor cannot be translated to the address value, command will have no effect. This command can be also assigned to the function keys with the ALIAS command.)š“& €€4N€²€‚ÿ6jÉ1 ˆß=ÉE! GRAPHF“- *€2€6ˆˆ˜²€€ €‚ÿGRaph [mem_address]6 ÉE* $€€6Œ„€²€ €‚ÿMenu:---³ø4 6€ÿ€6„Œ€²€â=î8U‰â»î8U‰‚ÿThe GRAPH command will set the starting address of the Graph window to the mem_address value. If no parameter is specified, the command will cause the Graph window to scroll one page down. This command affects only the last selected Grapf window; other Graph windows are not affected. If there is no Graph window opened, the command will open a new window in the graph format.)E! & €€4N€²€‚ÿ5øV 1î8|>V Ú — HALT6 ! Œ - *€€6ˆˆ˜²€€ €‚ÿHALTN$V Ú * $€H€6Œ„€²€ €‚ÿMenu: Process --> Halt, Shift-F5”mŒ n ' €Ú€6„Œ€²€‚ÿThe HALT command will enter the target processor into the debug mode, allowing to access target resources.)Ú — & €€4N€²€‚ÿ5n Ì 1 ßC?Ì I 8 HELPA—  - *€(€6ˆˆ˜²€€ €‚ÿHELP [keyword]<Ì I * $€$€6Œ„€²€ €‚ÿMenu: Help, F1ƞ  ( €=€6„Œ€²€‚ÿThe HELP command will invoke help file associated with the debugger application. If keyword is one of the valid topics, it will be automatically displayed.)I 8 & €€4N€²€‚ÿ7 o 1&|ü@o Þ Ó IDCODE8 8 § - *€€6ˆˆ˜²€€ €‚ÿIDCODE7 o Þ * $€€6Œ„€²€ €‚ÿMenu: ---̞§ ª . *€=€6„Œ€²€âàî8U‰‚ÿThe IDCODE command will read and display IDCODE of the target processor. IDCODE is a 32 bit number representing manufacturer, processor type and version.)Þ Ó & €€4N€²€‚ÿ3ª 1bC€Aš%BIFk8Ó q3 6€p€6ˆˆ˜²€€ €€ €‚ÿIF expr command''IF expr''...''[ELSE]''...''ENDIF7 š* $€€6Œ„€²€ €‚ÿMenu: ---HúqüAN j€õ€6„Œ€²€€€€€€€‚ÿConditionally executes one or more other commands, depending on the value of expr. If value of expr is not zero, then:1. In the first case the single following command is executed.2. In the second case all following commands up to ELSE or ENDIF are executedšüAÓ .If value of expr is zero and ELSE is present, then only the commands between ELSE and ENDIF are executed. IF commands can be nested up to 10 levels. Nesting more than 10 IFs will result in an error message. If the command is read from the keyboard, the prompt displays the current nesting level by adding one colon for each level. Hitting will result in an exit from all nesting.Example:de -m -f run_and_seeresetsb 110v0=1.loopgodm @1+v0v0=v0+1if (v0<=A) jump loopendm)š%B& €€4N€²€‚ÿ5üAZB1"ü·BZBÙBÊDJUMPH%B¢B- *€6€6ˆˆ˜²€€ €‚ÿJUMP [condition] label7 ZBÙB* $€€6Œ„€²€ €‚ÿMenu: ---ȉ¢B¡D? L€€6„Œ€²€€€€€€€‚ÿProgram execution continues at the specified label if the condition is true (!= 0). If no condition is specified, then it realizes an unconditional jump. Labels can be defined in a command file. They must start with a point (.) and can be up to 80 characters long. A label MUST be the only entry on a line.ExampleJUMP display_regsJUMP m(0)==2 error_label.display_regs.error_label)ÙBÊD& €€4N€²€‚ÿ6¡DE1b€·‚CE­EÞFLIMIT@ÊD@E- *€&€6ˆˆ˜²€€ €‚ÿLIMIT OFF|nsec6 EvE* $€€6ˆ„€²€ €‚ÿSIM only7 @E­E* $€€6Œ„€²€ €‚ÿMenu: ---ÑvEµF7 <€£€6„Œ€²€ãj‰€€‚ÿThe LIMIT command sets execution time limit for the simulator. The time value is converted into cycles count using the value set with the CLOCK command.Note: This is available for the simulator only.)­EÞF& €€4N€²€‚ÿ5µFG1&·áƒDG”G‰ILINEKÞF^G- *€<€6ˆˆ˜²€€ €‚ÿLINE [line_number] [file]6 G”G* $€€6Œ„€²€ €‚ÿMenu:---5ë^GÉHJ b€×€6„Œ€²€€€€€€€€€€€‚ÿDisplays lines line_number-4, ... to line_number+6, of file file. By default, if line_number is not specified then it takes the current PC, and if file is file is not specified, takes the current loaded.Example:Line 10)”GòH& €€4N€²€‚ÿ8ÉH*I3 6€ €6„Œ€²€ ‡"€€‚ÿ6 òH`I- *€€6„Œ€²ãµ3€‰‚ÿADDR)*I‰I& €€4N€²€‚ÿ; `IÄI1Ë·‚¶†EÄIYJóMLISTSYMBOL^1‰I"J- *€b€6ˆˆ˜²€€ €‚ÿLISTSYMBOL -m[name] | -a[p|x|y] [patern]7 ÄIYJ* $€€6Œ„€²€ €‚ÿMenu: ---µi"JML f€Ó€6„Œ€²€âï8U‰€€€€â?ï8U‰‚ÿLists all the symbols of the given type (address or macro) in alphabetical order along with their definition (value). To list symbols in a specific memory space, specify the memory space as "x:", "y:" or "p:"The expression pattern is built with normal symbol names and characters:"*" matches any sequence of characters;"?" matches any characters.Example:li -a (displays X, Y and P space symbols)li -ax: (displays X space symbols)li -ax: lab (displays X space symbol "lab")li -m (displays macros)li -a:p _str* (displays P space symbols _str...)li -a:x _std? (displays P space symbols _stdin ...))YJ7M& €€4N€²€‚ÿ8MoM3 6€ €6„Œ€²€ ‡"€€‚ÿ["7MÊM9 B€D€6„Œ€²ã±63€‰ãsU¢³‰ãP&:€‰‚ÿARCHIVE, DEFINE, UNDEFINE)oMóM& €€4N€²€‚ÿ5ÊM(N11რF(N¯N€LOADGóMoN- *€4€6ˆˆ˜²€€ €‚ÿLOAD filename [p|x|y]@(N¯N* $€,€6Œ„€²€ €‚ÿMenu: File -->Load¬woNg€5 8€ï€6„Œ€²€â?ï8U‰âï8U‰‚ÿThe LOAD command loads an object file to the target processor and its associated symbol table into memory. The LOAD command is equivalent to the RELOAD and SLOAD commands. If the filename has no extension, system will add automatically the .cld extension. The LOAD command clears t¯Ng€óMhe old symbol table.For .S19 loads optional destination memory space can be specified.)¯N€& €€4N€²€‚ÿ7g€ǀ1!¶†º GǀB2‚LOCATED€ - *€.€6ˆˆ˜²€€ €‚ÿLOCATE line column7 ǀB* $€€6Œ„€²€ €‚ÿMenu: ---ǐ  ‚7 <€!€6„Œ€²€€€€€‚ÿPositions the cursor in Terminal window. line must be in the range 1 to 25 and column must be in the range 1 to 80.Example:locate 3 15)B2‚& €€4N€²€‚ÿ4 ‚f‚1 c Hf‚₵ƒLOGF2‚¬‚- *€2€6ˆˆ˜²€€ €‚ÿLOG [OFF | filename]6 f‚â‚* $€€6Œ„€²€ €‚ÿMenu:---ª¬‚Œƒ) €€6„Œ€²€‚ÿLog command allows to open or close the log file. All output to the terminal window is automatically saved into the log file.)₵ƒ& €€4N€²€‚ÿ4Œƒéƒ1 º ý IéƒQ„+…MAP1µƒ„* $€€6ˆˆ˜²€€‚ÿMAP7 éƒQ„* $€€6Œ„€²€ €‚ÿMenu: ---±ƒ„…. *€€6„Œ€²€â ï8U‰‚ÿThe MAP command will display values of the registers controlling external memory interface: IER0, IER1, XER0, XER1, YER0, YER1)Q„+…& €€4N€²€‚ÿ3…^…1Oc º J^…‡-MB0+…Ž…* $€ €6ˆˆ˜²€€‚ÿMB!ó^…¯†. *€ç€6„Œ€²€€‚ÿMB {num | *} [-off|-on|-z] [{-a [comp] addr [acc] [and|then] [comp] addr [acc]} | {-d{x|y}comp data [acc]}] [and|then] [ ... ] [and] [ ... ] [-c count] [-s] [-t] [-x command]with acc = {rw|r|w} comp = {=|=|=|!=} spc = {p|x|y})Ž…؆& €€4N€²€‚ÿ7 ¯†‡* $€€6Œ„€²€ €‚ÿMenu: ---`¡؆oŒ¿ LC €6„Œ€²€€€€€âàî8U‰€€€€€€€€â=î8U‰âï8U‰€€€€€€€€€€€€€€€€€€ãü‰ãÃ%‰ãçû‰€€‚ÿModifies a conditional hardware breakpoint pattern previously defined (up to 4) or displays the conditional hardware breakpoint settings. If no parameters are defined, MB displays the current memory conditional hardware breakpoint settings.Parameters:• num Breakpoint number (1 to 4)• * All breakpoints.• -off/-on Breakpoint is set but inactive/active.• -z Breakpoint is cleared.• -a Breakpoint address space (p by default, x or y).• addr Breakpoint address value.• -dx -dy Breakpoint data space (x or y).• data Breakpoint data value.• = = = != Breakpoint value comparison (= by default).• rw r w Breakpoint value access (rw by default).• and then Breakpoint condition (and by default).• -c count Breakpoint when count=1, otherwise count is decre-mented.• -s No breakpoint, but snapshot samples recording.• -t Breakpoint trap to stop program execution to displaybreakpoint message or to execute a command (option -x and exceptGO, NEXT, RUN ), then resumes execution.• -x command Emulator command executed after a breakpoint.)‡˜Œ& €€4N€²€‚ÿ8oŒЌ3 6€ €6„Œ€²€ ‡"€€‚ÿ4˜Œ- *€€6„Œ€²ã󀉂ÿSB)Ќ-& €€4N€²€‚ÿ4a1¬ý  KaècMEMC-€- *€,€6ˆˆ˜²€€ €‚ÿMEM [mem_address]Daè* $€4€6Œ„€²€ €‚ÿMenu: View --> SymbolsR€:: B€1€6„Œ€²€â=î8U‰â»î8U€‰€‚ÿCommand MEM will set starting address of the Memory window to the mem_address value. If no parameter is specified, command will cause to scroll Memory window one page down. Command affects only the last selected Memory window, other Memory windows are not left unchanged.)èc& €€4N€²€‚ÿ7:š1jº ä LšCÀ|ÂMEMMAPW*c À- *€T€6ˆˆ˜²€€ €‚ÿMEMMAP [{ON|OFF} |{addr_block, type}]š Àc7 šCÀ* $€€6Œ„€²€ €‚ÿMenu: ---Ô ÀSÂ< F€©€6„Œ€²€â=î8U‰â!ŸË‰‚ÿThe MEMMAP command sets mapping for memory address ranges. Enabling mapping option, will enable READ and/or WRITE accesses to selected memory areas, while undefined memory blocks will not be accessed by the emulator.ON - enable memory mappingOFF - disable memory mapping-r - remove specified meory block or all blocksaddr_block - address range to apply mapping modetype - type of access for the specified block.Supported modes are: RAM, ROM, READ, WRITE)CÀ|Â& €€4N€²€‚ÿ4S°Â1* ¶‚ M°Â+Ã$ÄMIX1|ÂáÂ* $€€6ˆˆ˜²€€‚ÿMIXJ °Â+Ã* $€@€6Œ„€²€ €‚ÿMenu: Local code window menuКáÂûÃ( €Q€6„Œ€²€‚ÿThe MIX command will change display mode of the last selected Code window to mixed mode. If the source line information is not available command will have no effect.)+Ã$Ä& €€4N€²€‚ÿ3ûÃWÄ1>ä vƒ NWÄÒÄßÅMMD$Ä›Ä- *€.€6ˆˆ˜²€€ €‚ÿMM from to [count]7 WÄÒÄ* $€€6Œ„€²€ €‚ÿMenu: ---䙛ĶÅK d€3€6„Œ€²€€€â=î8U‰€€€€€€‚ÿThe MM command allows to copy count data of memory from address from to address to. Default value for count is 1.Example:MM x:10 y:20 4)ÒÄßÅ& €€4N€²€‚ÿ5¶ÅÆ1¶‚ €„ OÆŸÆíÇNEXT>ßÅRÆ- *€"€6ˆˆ˜²€€ €‚ÿNEXT [count]M#ÆŸÆ* $€F€6Œ„€²€ €‚ÿMenu: Process --> Stepover, F10%÷RÆÄÇ. *€ï€6„Œ€²€âàî8U‰‚ÿThe NEXT command will execute the single step, or jump over the subroutine calls. The NEXT command can be accessed also with the function key F10. Count specifies number of the statements to be executed before refreshing the debugger windows.)ŸÆíÇ& €€4N€²€‚ÿ5ÄÇ"È1vƒ ‰‰ P"ȱȒÎOPENX+íÇzÈ- *€V€6ˆˆ˜²€€ €‚ÿOPEN channel file mode format [length]7 "ȱÈ* $€€6Œ„€²€ €‚ÿMenu: --- —zÈÑ͉ à€/ €6„Œ€²€€€âàî8U‰€€€€ãþ}=‰ãaY‰â6î8U‰€€â8î8U‰â;î8U‰€€â=î8U‰‚ÿOpens an input or output channel with a file, for subsequent reading/writing data from/to the file.channel can be a decimal number from 1 to 10.file may be the name of any accessible file or the reserved word TTY, in which case the keyboard or the terminal, whichever is appropriate, is used.mode can be INPUT, OUTPUT, or APPEND format can be ASCII or BINARY length expresses the number of bytes read or written in the file. It can be 1, 2, 3 or 4; default value is 1.The content of a file read through an ASCII channel should be a sequence of hexadecimal numbers separated by one or more spaces, tabs or newline char-acters.When reading a TTY channel, the numbers will be read from the keyboard one for each line. Data read or written are truncated if value exceeds the length given with command.Once opened for INPUT a channel may be read by using the # operator followed by the channel number (e.g., #1) and the data read may be assigned to any variable handled by the expression evaluator.Example:de -m test_autoopen 1 address input ascii 2open 2 result output binaryfor v0 1 A 1v1=#1#2=mx:v1endforclose 1close 2endm)±ÈúÍ& €€4N€²€‚ÿ8ÑÍ2Î3 6€ €6„Œ€²€ ‡"€€‚ÿ7 úÍiÎ- *€€6„Œ€²ã €‰‚ÿCLOSE)2Î’Î& €€4N€²€‚ÿ5iÎÇÎ1*€„  QÇÎEÏ_PATHG’ÎÏ- *€4€6ˆˆ˜²€€ €‚ÿPATH [pathname[,OFF]]7 ÇÎEÏ* $€€6Œ„€²€ €‚ÿMenu: ---T*Ï™Ï* $€T€6ˆ„€²€ €‚ÿDefine, display or remove search paths‘iEÏ6( €Ó€6„Œ€²€‚ÿThe PATH command with no parameter will display list of the de™Ï6’Îfined search paths for the system. Search paths are used to locate object files, source files and alias commands. If the pathname is specified, it will be added to the list of the search paths. The OFF parameter will remove specified pathname or clear all the path list if the pathname was empty.)™Ï_& €€4N€²€‚ÿ: 6™1‰‰ ± R™ ìPCCCURSOR: _Ó- *€€6ˆˆ˜²€€ €‚ÿPCCURSOR7 ™ * $€€6Œ„€²€ €‚ÿMenu: ---¹‘ÓÃ( €#€6„Œ€²€‚ÿPCCURSOR command is available only for macro command processor and custom menus of the code window. When invoked, it will change value of the taget's PC to the current position of the cursor within the code window. If the current position of the cursor cannot be translated to the PC value, command will have no effect. This command can be also assigned to the function keys with the ALIAS command.) ì& €€4N€²€‚ÿ6Ã"1Ò  S"•6PAUSE<ì^- *€€6ˆˆ˜²€€ €‚ÿPAUSE secs7 "•* $€€6Œ„€²€ €‚ÿMenu: ---xG^ 1 2€Ž€6„Œ€²€€€‚ÿTemporization command, waits for secs seconds.Example:Pause 10)•6& €€4N€²€‚ÿ7 m1U± ö TmÜPCHIST8 6¥- *€€6ˆˆ˜²€€ €‚ÿPCHist7 mÜ* $€€6Œ„€²€ €‚ÿMenu: ---ûÄ¥×7 <€‰€6„Œ€²€ã*› ‰‚ÿPCHIST command displays contents of the emulator's trace bufferExample:+ pchistP:0122 JUMP $103P:0103 IX0 = #$1P:0105 IX1 = #$1P:0107 IY0 = #$1P:0109 STA = #$CP:010B AX0 = #$40)Ü& €€4N€²€‚ÿ6×61Ý ~ U6º PRINT¢oØ3 6€Þ€6ˆˆ˜²€€ €€ €‚ÿPRINT -x | -d | -o] [-n] [-r] [expr] ... or PRINT [-x | -d | -o] [-n] [-r] -f "C-like-format" [expr] ...6 6* $€€6Œ„€²€ €‚ÿMenu:---ƒ Ø‘ y À€€6„Œ€²€€€€€€€€€€€€€€€âï8U‰â=î8U‰â?ï8U‰‚ÿThe PRINT command allows to print (display) strings and values. It may be usefulwhen used in macros to print messages and to convert the base of numbers.-x specifies the hexadecimal output format.-d specifies the decimal output format.-o specifies the octal output format.Note that expressions in the list of arguments are always interpreted according the current base, independently from options -x, -d and -o.-n omits a newline to be printed at the end of a line.-r displays in reverse video mode.-f "C-like-format" allows to format output. The same format is applied to all expr parameters. Follows the ANSI C syntax.Example:print -r "TITLE IN REVERSE"print -f "value = %04x" 0x0A --> value = 000Aprint -f "value = %04d" 0x0A --> value = 0010print -f "value = %4x" 0x0A --> value = Aprint -f "value = %4d" 0x0A --> value = 10print "value of stack pointer register =" r$SPprint -d "LOOP COUNTER VALUE=" m$LOOPCNT--> print value (in decimal format) at the address defined by symbol LOOPCNT)º & €€4N€²€‚ÿ5‘ ï 1ýö  Vï f 2QUIT6 º % - *€€6ˆˆ˜²€€ €‚ÿQUITAï f * $€.€6Œ„€²€ €‚ÿMenu: File --> Exit£|%  ' €ø€6„Œ€²€‚ÿThe QUIT command will close target connection (if opened), save current windows configuration, and close the application.)f 2& €€4N€²€‚ÿ8 j1Å~ | WjÚnREFRESH9 2£- *€€6ˆˆ˜²€€ €‚ÿREFRESH7 jÚ* $€€6Œ„€²€ €‚ÿMenu: ---kC£E( €†€6„Œ€²€‚ÿThe REFRESH command will force update of all debugger windows. )Ún& €€4N€²€‚ÿ7E¥1M ª€ X¥C@]ARELOADCn @- *€,€6ˆˆ˜²€€ €‚ÿRELOAD [filename]¥ @n7 ¥C@* $€€6Œ„€²€ €‚ÿMenu: ---N$ @‘@* $€H€6ˆ„€²€ €‚ÿReload program code (no symbols)£vC@4A- *€ì€6„Œ€²€â?ï8U‰‚ÿThe RELOAD command will load last loaded code to the target processor. RELOAD command leaves symbol table intact.)‘@]A& €€4N€²€‚ÿ64A“A1| à Y“ABnCRESET7 ]AÊA- *€€6ˆˆ˜²€€ €‚ÿRESETE“AB* $€6€6Œ„€²€ €‚ÿMenu: Process --> Reset6ÊAEC( €€6„Œ€²€‚ÿThe RESET command will reset the target processor to debug mode. This is the hardware reset using the physical processor reset signal. In multiprocessor systems it can affect other processors. For the software reset only, appropriate macro command should be executed.)BnC& €€4N€²€‚ÿ8ECŠC1Nª€ ҂ ZŠC&DCERESTART9 nCßC- *€€6ˆˆ˜²€€ €‚ÿRESTARTGŠC&D* $€:€6Œ„€²€ €‚ÿMenu: Process --> RestartôÆßCE. *€€6„Œ€²€ãêÚ"‰‚ÿThe RESTART command resets the program to its entry point. This command assumes, that program is already loaded with the LOAD command, or symbolic information is entered with the SLOAD command.)&DCE& €€4N€²€‚ÿ7EzE1ðà kƒ [zEøE·FRETURN8 CE²E- *€€6ˆˆ˜²€€ €‚ÿRETURNFzEøE* $€8€6Œ„€²€ €‚ÿMenu: Process --> Return–o²EŽF' €Þ€6„Œ€²€‚ÿThe RETURN command will execute code in the current C function, and halts when execution reaches the caller.)øE·F& €€4N€²€‚ÿ4ŽFëF18҂ B„ \ëFfGmHRUN5·F G- *€€6ˆˆ˜²€€ €‚ÿRUNFëFfG* $€8€6Œ„€²€ €‚ÿMenu: Process --> Go, F5Þ° GDH. *€a€6„Œ€²€ãü‰‚ÿThe RUN command executes count of instructions using on target's "trace counter". If the count is omitted, the RUN command will behave as the GO command with no parameter.)fGmH& €€4N€²€‚ÿ5DH¢H18kƒ … ]¢H I'JSAVEGmHéH- *€4€6ˆˆ˜²€€ €‚ÿSAVE filename from to7 ¢H I* $€€6Œ„€²€ €‚ÿMenu: ---ޚéHþID V€5€6„Œ€²€€€€€â=î8U‰€€‚ÿThe SAve command will save memory block into the file in the S19 format.filename - file to save intofrom - starting addressto - end address) I'J& €€4N€²€‚ÿ8þI_J1ÑB„ ܇ ^_JK NSAVEOMFk>'JÊJ- *€|€6ˆˆ˜²€€ €‚ÿSAVEOmf address_range [,address_range] filename [options]6 _JK* $€€6Œ„€²€ €‚ÿMenu ---#ïÊJ#L4 6€ß€6„Œ€²€â8î8U‰ãêÚ"‰‚ÿThe SAVEOMF command saves memory blocks specified by one of more definitions of the address_range to the ASCII file in the OMF format (extension .LOD). This data file can be loaded back to the processor memory with the LOAD command.)KLL& €€4N€²€‚ÿا#L$M1 0€O€6„Œ€²€€âï8U‰‚ÿaddress_range specifies memory area to be changed to the value. Range can be accepted in two formats: start_address..end_address or start_address#count.register)LLMM& €€4N€²€‚ÿ*í$MwN= H€Û€6„Œ€²€€â6î8U‰âàî8U‰‚ÿoptions-o overwrite an existing file-a append to the existing file-x save in binary format-[1..8] number of words per line (default: 8)-h hexadecimal format (default)-d decimal format)MM N& €€4N€²€‚ÿ3wNÓN1Æ … + _ÓN€$‹SB0 NO* $€ €6ˆˆ˜²€€‚ÿSB òÓN/€. *€å€6„Œ€²€€‚ÿSB num [-off|-on] [{-a [comp] addr [acc] [and|then] [comp] addr [acc]} | {-d{x|y}comp data [acc]}] [and|then] [ ... ] [and] [ ... ] [-c count] [-s] [-t] [-x command]with acc = {rw|r|w} comp =O/€ N {=|=|=|!=} spc = {p|x|y})OX€& €€4N€²€‚ÿ7 /€€* $€€6Œ„€²€ €‚ÿMenu: ---„ÅX€†¿ L‹ €6„Œ€²€€€€€âàî8U‰€€€€€€€€â=î8U‰âï8U‰€€€€€€€€€€€€€€€€€€ãü‰ãÃ%‰ãçû‰€€‚ÿSets a new conditional hardware breakpoint (up to 4) or to display the onditional hardware breakpoint settings. These hardware breakpoints work in a real time context. If no parameters are defined, SB displays the current memory conditional hardware breakpoint settings.Parameters:• num Breakpoint number (1 to 4)• * All breakpoints.• -off/-on Breakpoint is set but inactive/active.• -z Breakpoint is cleared.• -a Breakpoint address space (p by default, x or y).• addr Breakpoint address value.• -dx -dy Breakpoint data space (x or y).• data Breakpoint data value.• = = = != Breakpoint value comparison (= by default).• rw r w Breakpoint value access (rw by default).• and then Breakpoint condition (and by default).• -c count Breakpoint when count=1, otherwise count is decre-mented.• -s No breakpoint, but snapshot samples recording.• -t Breakpoint trap to stop program execution to displaybreakpoint message or to execute a command (option -x and exceptGO, NEXT, RUN, START), then resumes execution.• -x command Emulator command executed after a breakpoint.)€<†& €€4N€²€‚ÿ8†t†3 6€ €6„Œ€²€ ‡"€€‚ÿC<†·†3 6€ €6„Œ€²ãñ€‰ãš8‰‚ÿMB, SBPUT)t†à†& €€4N€²€‚ÿF·†&‡- *€2€6„Œ€²ã¥ßwr€‰‚ÿBuses and conditions)à†O‡& €€4N€²€‚ÿªy&‡ù‰1 0€ó€6„Œ€²€â ï8U‰‚ÿThere are only 4 internal DSP breakpoint registers, limiting hardware break-pointresources. Only one internal DSP counter exists and it may be affected by 1 to 4 break-points (the count value written is the last supplied). The snapshot mode uses conditional breakpoint logic to record bus samples. In this case the end of program execution occurs when the asked samples number is reached and recorded. When a breakpoint is met, 1 or 2 instructions are executed.Remember that one program address breakpoint can be used by simple software breakpoints. Do not use SB to modify an existing breakpoint, instead use the MB command.)O‡"Š& €€4N€²€‚ÿٟù‰ûŠ: B€?€6„Œ€²€€‚ÿExample: resetload test_bpsb 1 -a p:100sb 2 -off -a 200 and -a <= x:300 w -t -x linesb 3 -dy<= 400 r -c 10sbgodrmb 1 -zmb 2 -onmbgodrmb * -z)"Š$‹& €€4N€²€‚ÿ6ûŠZ‹1³܇ ô `Z‹݋_SBDELM $‹§‹- *€@€6ˆˆ˜²€€ €‚ÿSBDEL * [addr1 [addr2 ...]]6 Z‹݋* $€€6Œ„€²€ €‚ÿMenu:---µ§‹’Œ4 6€€6„Œ€²€€€‚ÿDeletes simple software breakpoints located at the specified addresses.* means all breakpoints.Example:SBDEL $_swi 200)݋»Œ& €€4N€²€‚ÿ8’ŒóŒ3 6€ €6„Œ€²€ ‡"€€‚ÿC»Œ63 6€ €6„Œ€²ãó€‰ãš8‰‚ÿSB, SBPUT)óŒ_& €€4N€²€‚ÿ66•1‡+ € a•Ž|ÀSBPUTN!_ã- *€B€6ˆˆ˜²€€ €‚ÿSBPUT [addr 1 [addr 2 ... ]7 •Ž* $€€6Œ„€²€ €‚ÿMenu: ---‰O㍣: B€Ÿ€6„Œ€²€â=î8U‰€€‚ÿSets simple software breakpoints located at the specified addresses. If no parameters are defined, the command reports all the active breakpoints. Note: these software breakpoints do not work in a real time context. They need one program address hardware breakpoint and three words in a valid stack.Example:SBPUT $_swi 200)Ž̏& €€4N€²€‚ÿ8£À3 6€ €6„Œ€²€ ‡"€€‚ÿ̏À_C̏SÀ3 6€ €6„Œ€²ãó€‰ã @8‰‚ÿSB, SBDEL)À|À& €€4N€²€‚ÿ7SÀ³À1Mô w b³À2ÁNÃSEARCHH|ÀûÀ- *€6€6ˆˆ˜²€€ €‚ÿSEARCH from to pattern7 ³À2Á* $€€6Œ„€²€ €‚ÿMenu: ---ƒ+ûÀµÂX ~€W€6„Œ€²€€€€€€€â=î8U‰€€€€ãy‰‚ÿSearches the value pattern in memory, between from and to address. The pattern can consist of 1 to 8 words.If the pattern is found, the display is preceded by the address of memory where it has been found. The format is similar to that of DM command.Example:SE x:100 200 FF00)2ÁÞÂ& €€4N€²€‚ÿ8µÂÃ3 6€ €6„Œ€²€ ‡"€€‚ÿ8ÞÂNÃ0 0€€6„„€²ãy€‰€‚ÿDM4ÂÃ1 € c‚ÃÄ SETINÃËÃ- *€8€6ˆˆ˜²€€ €‚ÿSET [option [argument]]7 ‚ÃÄ* $€€6Œ„€²€ €‚ÿMenu: ---# — ËÃ%ÏŒ æ€/€6„Œ€²€€€ãˆÏ‰€€â=î8U‰ãü‰‚ÿDisplays or changes the setting of the emulator.option can be: DSPVER, ECHO, GOFROM, LOG, SOURCE, VERBOSE, MECHO, TAB , WATCH , TIMER, TIME24, ERRORS, TTYLOG, TTYWRAP, SCROLLargument can be OFF, ON, or valueDSPVER n decimal value representing version of the ST18950 silicon.TAB ndecimal value representing tab character size in spaces (1..32) WATCH msdelay time in ms, for displaying instant watch values within code window TIMER msdelay time in ms between checking the target status. Decreasing this time will accelerate single step operation, but it will use more PC's CPU time. TIME24 ON|OFFIf the TIME24 option is enabled (ON), time of file creation (DIR command) will be displayed in the 24 hour format. ERRORS ON|OFFenabled option will stop execution of the command file, if the error is detected. If the ERRORS option is set to OFF, macro command will continue. TTYLOG ON|OFFenabled option, will LOG all commands to the Terminal window. If the file logging is enabled, this option is also automatically enabled.TTYWRAP ON|OFFenabled option, will wrap long lines when the right side of the terminal window is reachedSCROLL xhexadecimal value limiting window's scroll range. Value can be between 0x100 and maximum address value.GOFROM ON|OFFenabled option will interpret the address for the GO command, as a start address - it will change PC value before restarting target. Default is OFF, which treats address, as "goto" address.ECHO ON | OFF When set to OFF, no messages are echoed in the terminal window. This command must be used in a command file. When set to ON, all messages are echoed again in the terminal window.LOG ON | OFF If is specified this option makes a typescript of everything printed in the terminal window into . When argument is OFF the current LOG file is closedSOURCE ON | OFFWhen set to ON, it enables to display the current mnemonic instruction executed loaded from the assembler source file, if there is one.When set to OFF, it enables to display the current mnemonic instruction disassembled. The default selection is OFF when entering the emulator.VERBOSE ON | OFFWhen set to ON, any command, either read from the keyboard, from a macro or from a command file is echoed before being executed. The commands are displayed in the terminal window and logged to the log file.MECHO ON | OFF When set to OFF, no commands are echoed to the command window during macro execution. When set to ON, during macro command execution, all commands will be echoed to the command window.Example:set source onset verbose onset log tracesettimeset echo offgoset echo ontimeset log off)ÄNÏ& €€4N€²€‚ÿ8%φÏ3 6€ €6„Œ€²€ ‡"€€‚ÿ.NÏŽÏ' €€6„Œ€²€‚ÿTIME)†Ï & €€4N€²€‚ÿŽÏ NÃ7ŽÏC1w ž dCüÛSIGNALL - *€>€6ˆˆ˜²€€ €‚ÿSIGNAL signalId time param6 CÅ* $€€6ˆ„€²€ €‚ÿSIM only7 ü* $€€6Œ„€²€ €‚ÿMenu: ---¶cŲS t€Ç€6„Œ€²€€€€€€€€€‚ÿCommand SIGNAL will enable sending of the simulation signal.signalId - signal identifier. Valid identifiers are: EXEC - execution signal HOLD - hold signal INT - interrupt signal LP - low power signal PPORT0..7 - pport signal P0 to P7 RESET - reset signaltime - active signal timeparam - parameter for the requested SIGNAL. It depends on the signal type: - duration for hold signal - level 0 or 1 for pport signals - vector for interrupt signal - 0 for low power and reset signals - OFF to disable previously enabled SIGNALNote: This is available for the simulator only.)üÛ& €€4N€²€‚ÿ6²1f   e‰ŸSLOAD7 ÛH- *€€6ˆˆ˜²€€ €‚ÿSLOADA‰* $€.€6Œ„€²€ €‚ÿMenu: Load --> File ÞH•. *€œ€6„Œ€²€â?ï8U‰‚ÿThe SLOAD command loads the symbol table of the specified object file. SLOAD clears existing symbol table before loading the new one. If the filename has no extension, system will add automatically the .CLD extension.)‰Ÿ& €€4N€²€‚ÿ3•ñ1÷ž ‘ fñp6SMHŸ9- *€6€6ˆˆ˜²€€ €‚ÿSM [-w] address value7 ñp* $€€6Œ„€²€ €‚ÿMenu: ---ðª9`F Z€U€6„Œ€²€â=î8U€‰€€€€€‚ÿChanges the content of the memory at the specified address. The content of memory at the address specified is set to that value.Example:x: SM x:10 FFFFx:)p‰& €€4N€²€‚ÿ8`Á3 6€ €6„Œ€²€ ‡"€€‚ÿL‰ 9 B€&€6„Œ€²ãN€‰ãy‰ãω‚ÿCM, DM. FM)Á6& €€4N€²€‚ÿ4 j1;  € gj÷ SRCC6­0 0€&€6ˆˆ˜²€€ €€‚ÿSRC or SOURCEJ j÷* $€@€6Œ„€²€ €‚ÿMenu: Local code window menuá¹­Ø ( €s€6„Œ€²€‚ÿThe SRC (or SOURCE) command will change display mode of the last selected Code window to the source mode. If the source line information is not available command will have no effect.)÷ & €€4N€²€‚ÿ3Ø 4 1ø‘  h4 ° w SRE y - *€0€6ˆˆ˜²€€ €‚ÿSR register [value]7 4 ° * $€€6Œ„€²€ €‚ÿMenu: ---žay N = J€Â€6„Œ€²€âï8U‰€€€€‚ÿSets the register indicated by register to the specifed value.Example:x: SR ax0 10x:)° w & €€4N€²€‚ÿ6N ­ 1ɀ j i­  ¯ START3 w à * $€€6ˆˆ˜²€€‚ÿSTART7 ­  * $€€6Œ„€²€ €‚ÿMenu: ---oHà † ' €€6„Œ€²€‚ÿSTART command resets target and starts execution of the user program.) ¯ & €€4N€²€‚ÿ7† æ 1"  % jæ U FSTATUS8 ¯  - *€€6ˆˆ˜²€€ €‚ÿSTATUS7 æ U * $€€6Œ„€²€ €‚ÿMenu: ---È  ( €A€6„Œ€²€‚ÿThe STATUS command checks the target processor status. Status is also displayed on the right side of the status bar, on the bottom of the application window.)U F& €€4N€²€‚ÿ5{1¥j € k{ý}@STEP>F¹- *€"€6ˆˆ˜²€€ €‚ÿSTEP [count]D{ý* $€4€6Œ„€²€ €‚ÿMenu: Process --> StepK¹T@. *€;€6„Œ€²€ãçû‰‚ÿThe STEP command will single step the target code. If count is not specified it will step single instruction. For the multi-instruction step, debugger windows will be refreshed after every step. To execute multipýT@Fle instructions without windows refresh, RUN command should be used.)ý}@& €€4N€²€‚ÿ9T@¶@1‡% C l¶@KA¡BSTEPOVERB}@ø@- *€*€6ˆˆ˜²€€ €‚ÿSTEPOver [count]S)¶@KA* $€R€6Œ„€²€ €‚ÿMenu: Menu: Process --> Stepover, F10-ÿø@xB. *€ÿ€6„Œ€²€âàî8U‰‚ÿThe STEPOVER command will execute the single step, or jump over the subroutine calls. The STEPOVER command can be accessed also with the function key F10. Count specifies number of the statements to be executed before refreshing the debugger windows.)KA¡B& €€4N€²€‚ÿ5xBÖB1î€ ȁ mÖB?CüCSTOP2¡BC* $€€6ˆˆ˜²€€‚ÿSTOP7 ÖB?C* $€€6Œ„€²€ €‚ÿMenu: ---”mCÓC' €Ú€6„Œ€²€‚ÿThe STOP command will enter the target processor into the debug mode, allowing to access target resources.)?CüC& €€4N€²€‚ÿ5ÓC1D1²C ‚ n1DªD+ETILE6 üCgD- *€€6ˆˆ˜²€€ €‚ÿTILEC1DªD* $€2€6Œ„€²€ €‚ÿMenu: Window --> TileX1gDE' €b€6„Œ€²€‚ÿArrange all opened windows in the tile format.)ªD+E& €€4N€²€‚ÿ5E`E1 ȁ ¹ƒ o`EÍEšGTIME6 +E–E- *€€6ˆˆ˜²€€ €‚ÿTIME7 `EÍE* $€€6Œ„€²€ €‚ÿMenu: ---²‚–EG0 .€€6„Œ€²€‚ÿThis command allows to display current system time, or time in milliseconds from last TIME command usage.Parameter mode allows for different display formats:0 - Display full time and date (default)1 - Display time and delta time from last TIME (hh:mm:ss.mmm (msec))2 - Display delta time from the last TIME command (milliseconds)3 - Clear millisecond delta timer (initialize))ÍEšG& €€4N€²€‚ÿ6GÞG1:‚ ’„ pÞGTH]ITIMER?šGH- *€$€6ˆˆ˜²€€ €‚ÿTIMER [value]7 ÞGTH* $€€6Œ„€²€ €‚ÿMenu: ---à·H4I) €o€6„Œ€²€‚ÿThe TIMER command allows to adjust application idle timer. This timer is used to periodically check for the target processor status.Value represents the idle time in milliseconds.)TH]I& €€4N€²€‚ÿ84I•I1Ú¹ƒ … q•I JµJUNALIAS@]IÕI- *€&€6ˆˆ˜²€€ €‚ÿUNALIAS [name]7 •I J* $€€6Œ„€²€ €‚ÿMenu: ---€YÕIŒJ' €²€6„Œ€²€‚ÿThe UNALIAS command will remove all system aliases if the command parameter was empty.) JµJ& €€4N€²€‚ÿ9ŒJîJ10’„ X† rîJ”K“MUNDEFINEo<µJ]K3 6€x€6ˆˆ˜²€€ €€ €‚ÿUNDEFINE {-a | -m} symbol...''UNDEFINE {-a | -m} -all7 îJ”K* $€€6Œ„€²€ €‚ÿMenu: ---Ð]K«LG \€¡€6„Œ€²€â?ï8U€‰€€€â=î8U‰‚ÿRemoves the symbol of the given type from the symbol table, or clears the entire symbol table if the -all option is specified.-a memory address.-m macros.Example:un -a labun -m LOADANGO)”KÔL& €€4N€²€‚ÿ8«L M3 6€ €6„Œ€²€ ‡"€€‚ÿ^%ÔLjM9 B€J€6„Œ€²€ã±63‰ãsU¢³‰ãž>£{‰‚ÿ ARCHIVE, DEFINE, LISTSYMBOL) M“M& €€4N€²€‚ÿ4jMÇM1ê… sÇMDN €USEF“M N- *€2€6ˆˆ˜²€€ €‚ÿUSE [pathname[,OFF]]7 ÇMDN* $€€6Œ„€²€ €‚ÿMenu: ---h NÔO( €Ñ€6„Œ€²€‚ÿThe USE command with no parameter will display list of the defined search paths for the system. Search paths are used to locate object files, source files and alias commands. If the pathname is specified, it will be added to the list of the search paths. The OFF parameter will remove specified pathname or clear all the path list if the pathname was empty.)DN €& €€4N€²€‚ÿÔO €“M8ÔOD€1ÎX† i tD€Ž€QVERSION9 €}€- *€€6ˆˆ˜²€€ €‚ÿVERSION7 D€Ž€* $€€6Œ„€²€ €‚ÿMenu: ---tM}€(' €š€6„Œ€²€‚ÿThe VERSION command will display version numbers of all active components.)Ž€Q& €€4N€²€‚ÿ5(†1€ ® u†üo‚VIEW?QŁ- *€$€6ˆˆ˜²€€ €‚ÿVIEW filename7 †ü* $€€6Œ„€²€ €‚ÿMenu: ---J#ŁF‚' €F€6„Œ€²€‚ÿOpen file in the browser window.)üo‚& €€4N€²€‚ÿ5F‚€‚1Si  v€‚$ƒF…WAITIo‚í‚- *€8€6ˆˆ˜²€€ €‚ÿWAIT time | DEBUG| MAIL7 €‚$ƒ* $€€6Œ„€²€ €‚ÿMenu: ---ù¶í‚…C T€m€6„Œ€²€€€€€€€‚ÿThis command allows to suspend macro command execution for specified numner of milliseconds (time), or wait until the target device gets into the debug mode (DEBUG) (reaches one of the breakpoints).If parameter MAIL is used it waits until receives acknowledgement for all sent commands to another debuggers. This feature is available only for multi-DSP development systems.Example:Load test.cldBreak mainGoWait debugbeep)$ƒF…& €€4N€²€‚ÿ6…|…1–® ¬ w|…†‚ˆWATCH^1F…څ- *€b€6ˆˆ˜²€€ €‚ÿWATCH address | register [ ,label| [ ,mode]]C|…†* $€2€6Œ„€²€ €‚ÿMenu: View --> Symbol<ÏڅYˆm š€Ÿ€6„Œ€²€â=î8U€‰€âï8U€‰€â ï8U‰€€€€€€â8î8U‰‚ÿThe WATCH command will add or remove watch variable from the Watch window.address is a memory address register is one of valid DSP registerslabel is a string which will be displayed instead of the watch address. mode is one of the following:c - ASCII characterd - decimale - exponential floating pointf - fractionalo - octalp - addresss - ASCII stringu - unsigned decimalx - hexadecimalr - remove watch from the watch window.)†‚ˆ& €€4N€²€‚ÿ7Yˆ¹ˆ1ü ÿÿÿÿx¹ˆ;‰ŠWINDOW=‚ˆöˆ- *€ €6ˆˆ˜²€€ €‚ÿWINDOW typeE¹ˆ;‰* $€6€6Œ„€²€ €‚ÿMenu: View --> win_type¢{öˆ݉' €ö€6„Œ€²€‚ÿWindow command allows to open new window of the specified type. Window type can be specified with the partial name only.);‰Š& €€4N€²€‚ÿE݉KŠ1@ÿÿÿÿÿÿÿÿyKŠŠœBuses and conditionsBŠŠ* $€0€6ˆˆ˜²€€‚ÿBuses and conditionsæ¢KŠsD V€E€6„Œ€²€‚ÿ-a p:addr-a p:addr AND addr-a p:addr AND -a x:addr-a p:addr AND -a x:addr AND addr-a p:addr AND -a x:addr AND -a y:addr-a p:addr AND -a y:addr-a p:addr AND -a y:addr AND addr-a p:addr THEN addr-a p:addr THEN -a x:addr-a p:addr THEN -a x:addr AND addr-a p:addr THEN -a x:addr AND -a y:addr-a p:addr THEN -a y:addr-a p:addr THEN -a y:addr AND addr-a x:addr-a x:addr AND addr-a x:addr AND -a y:addr-a x:addr AND -dx= data-a x:addr THEN addr-a x:addr THEN -a y:addr-a x:addr THEN -dx= data-a y:addr-a y:addr AND addr-a y:addr AND -dy= data-a y:addr THEN addr-a y:addr THEN -a x:addr-a y:addr THEN -dy= data-dx= data-dx= data AND -dy= data-dy= data)Šœ& €€4N€²€‚ÿBsލ1QÿÿÿÿÿÿÿÿzލŽêÀEntering Commands?œŽ* $€*€6ˆˆ˜²€€‚ÿEntering Commands˜pލÁÀ( €á€6„Œ€²€‚ÿSystem commands can be entered by typing inside command window, or can be read from the macro command file. To invoke macro command file, name of the file needs to be entered in the command window. The system will automatically open command file, if entered token cannot be matched with any of the system System commands can be entered by typing inside command window, or can be read from the macro command file. To invoke macro command fileŽÁÀœ, name of the file needs to be entered in the command window. The system will automatically open command file, if entered token cannot be matched with any of the system commands.)ŽêÀ& €€4N€²€‚ÿ9ÁÀ#Á1­ÿÿÿÿÿÿÿÿ{#ÁŒÄ8ËGlossary6 êÀYÁ* $€€6ˆˆ˜²€€‚ÿGlossary«#ÁwÄs Ž„€2|€²ãºQÖꀆ"€‰€ã>åʝ€†"€‰€ãEåʝ€†"€‰€ãFåʝ€†"€‰€ãGåʝ€†"€‰€ãHåʝ€†"€‰€ãIåʝ€†"€‰€ãJåʝ€†"€‰€ãKåʝ€†"€ ‰€ãLåʝ€†"€ ‰€ãMåʝ€†"€ ‰€ãNåʝ€†"€ ‰€ãOåʝ€†"€ ‰€ãPåʝ€†"€‰€ãQåʝ€†"€‰€ãRåʝ€†"€‰€ãSåʝ€†"€‰€ãTåʝ€†"€‰€ãUåʝ€†"€‰€ãVåʝ€†"€‰€ãWåʝ€†"€‰€ãXåʝ€†"€‰€ãYåʝ€†"€‰€ãZåʝ€†"€‰€ã[åʝ€†"€‰€ã\åʝ€†"€‰€ã]åʝ€†"€‰€ã^åʝ€†"€‰€€‚ÿ EYÁŒÄ> L€€6„Œ€²ÈBack()€ ‡"€‰€‚ÿ/wÄëÄ* $€ €6°Œ€²€€‚ÿ#‰2ŒÄtÅW ~€d€6„Œ€²âŸË€‰€‚âŸË€‰€‚âŸË€‰€‚âŸË€‰€‚ÿ#term$symbol'character'(expr)/ëÄ£Å* $€ €6°Œ€²€€‚ÿAÅTtÅhÆq ²€š€6„Œ€²â!ŸË€‰€‚â=î8U€‰€‚â4î8U€‰€‚â5î8U€‰€‚â6î8U€‰€‚â8î8U€‰€‚ÿaddress rangeaddressalias namealias stringAPPENDASCII/£Å—Æ* $€ €6°Œ€²€€‚ÿB^!hÆõÆ= J€B€6„Œ€²â:î8U€‰€‚â;î8U€‰€‚ÿBinary operatorsBINARY/—Æ$Ç* $€ €6°Œ€²€€‚ÿD\,õÆ€Ç0 0€X€6„Œ€²âeî8U€‰€‚ÿDefinition of terms used in expression/$ǯÇ* $€ €6°Œ€²€€‚ÿID€ÇóÇ0 0€(€6„Œ€²â’î8U€‰€‚ÿinterface type/¯Ç"È* $€ €6°Œ€²€€‚ÿMa$óǃÈ= J€H€6„Œ€²â¹î8U€‰€‚â»î8U€‰€‚ÿM term MM termmem_address/"ȲÈ* $€ €6°Œ€²€€‚ÿN< ƒÈîÈ0 0€€6„Œ€²âàî8U€‰€‚ÿnumber/²ÈÉ* $€ €6°Œ€²€€‚ÿO< îÈYÉ0 0€€6„Œ€²âáî8U€‰€‚ÿoffset/ɈÉ* $€ €6°Œ€²€€‚ÿR–?YÉÊW ~€~€6„Œ€²âçî8U€‰€‚âèî8U€‰€‚âï8U€‰€‚â ï8U€‰€‚ÿR$symbolregister sequenceregisterregisters/ˆÉMÊ* $€ €6°Œ€²€€‚ÿSSÊ Ê= J€,€6„Œ€²âï8U€‰€‚â?ï8U€‰€‚ÿSpacesymbol/MÊÏÊ* $€ €6°Œ€²€€‚ÿUE ÊË0 0€*€6„Œ€²â7ï8U€‰€‚ÿUnary operators$ÏÊ8Ë" €€€ÿ6ËnË1Uÿÿÿÿÿÿÿÿ|nËÏ&EIndex3 8Ë¡Ë* $€€6ˆˆ˜²€€‚ÿIndex«nË¿Îs Ž„€2|€²ãŠ$=€†"€‰€㢛6€†"€‰€㩛6€†"€‰€㪛6€†"€‰€㫛6€†"€‰€㬛6€†"€‰€㭛6€†"€‰€㮛6€†"€‰€㯛6€†"€ ‰€㰛6€†"€ ‰€㱛6€†"€ ‰€㲛6€†"€ ‰€㳛6€†"€ ‰€㎛6€†"€‰€㵛6€†"€‰€㶛6€†"€‰€㷛6€†"€‰€ãž›6€†"€‰€㹛6€†"€‰€㺛6€†"€‰€㻛6€†"€‰€㌛6€†"€‰€㜛6€†"€‰€㟛6€†"€‰€㿛6€†"€‰€ãÀ›6€†"€‰€ãÁ›6€†"€‰€ã›6€†"€‰€€‚ÿ E¡ËÏ> L€€6„Œ€²ÈBack()€ ‡"€‰€‚ÿÊK¿ÎÎÏ ΀–€6„Œ€²€€‚ïyр€‰€‚ïµ3€‰€‚ïd…™€‰€‚ï±63€‰€‚ïǀ€‰€‚ÿAAdditional Window ControlsADDRALIASARCHIVEASMÁBÏ› ΀„€6„Œ€²€€‚ïWÎÏ›8Ë€‰€‚ïªq€‰€‚ï›ÚÔ€‰€‚ï¥ßwr€‰€‚ïúˆ€‰€‚ÿBBASEBEEPBREAKBuses and conditionsBYE ÎÎÏ€; D‚€6„Œ€²€€‚ïù™ô€‰€‚ïŒØ “€‰€‚ïE€‰€‚ïÜ»u«€‰€‚ïj€‰€‚ï €‰€‚‰€‚ïN€‰€‚ït€® €‰€‚€‰€‚ï\eÍ€‰€‚ïeûk8€‰€‚ïü!¿€‰€‚ïq‘ €‰€‚ïjÜ €‰€‚ïŠUô%€‰€‚ÿCCALLSCASCADECDCHANGECLOCKCLOSECLSCMCODEMENUCOLORCommand line expressionsCommand Line ParamsCommandsCOMPARECONNECTContentsu›V |€>€6„Œ€²ïYò€‰€‚ïÕ €‰€‚ï ð‰€‚ÿCOPYCURXYCYCLESƒŒ€œ÷ Œ€6„Œ€²€€‚ïCÄ€‰€‚ïsU¢³€‰€‚ïžNK8€‰€‚ïɔ€‰€‚ïŌ‚Ž€‰€‚ïÓ< €‰€‚ïJ£ÿQ€‰€‚ïy€‰€‚ï{€‰€‚ï~€‰€‚ïv€‰€‚ï°Q€‰€‚ÿDDASMDEFINEDefining macro commandsDIRDISASMDISCONNECTDISPLAYDMDODRDSPVERDUALõT‘¡ š€6„Œ€²€€‚ïv€‰€‚ï; *ۀ‰€‚ïøœ€‰€‚ïv€‰€‚ï|€‰€‚ïÕv€‰€‚ï|£x€‰€‚ÿEECHOEntering CommandsEOFERRORSEVALEVAL1EXEIOdœ§² 4È€6„Œ€²€€‚ïÐqœ€‰€‚ïj€‰€‚ïÏ€‰€‚ï˜Ö¡€‰€‚ï=€€‰€‚ïÛ?¢€‰€‚ïÌ,6Ԁ‰€‚ï5ˆDŸ€‰€‚ÿFFile managementFILLFMFOCUSFORFORCEFUNCTIONFunction keysÝM‘„ ð€š€6„Œ€²€€‚ï4{&$€‰€‚ïºQÖꀉ€‚ïü€‰€‚ïzîp쀉€‚ïv€‰€‚ﮕـ‰€‚ÿGGeneral NotesGlossaryGOGOCURSORGOFROMGRAPHc§çL h€.€6„Œ€²€€‚ïi€‰€‚ïIº€‰€‚ÿHHALTHELP~!„e] Š€B€6„Œ€²€€‚ïX‹:߀‰€‚ïI€‰€‚ïþ}=€‰€‚ÿIIDCODEIFINPUTIç®; F€€6„Œ€²€€‚ï*› €‰€‚ÿJJUMPº;eh  ΀v€6„Œ€²€€‚ïƒÕÓ€‰€‚ïı"€‰€‚ïž>£{€‰€‚ïêÚ"€‰€‚ﶁÁû€‰€‚ÿLLIMITLINELISTSYMBOLLOADLOCATE.®– ' €€€€€‚ÿLOGVh ì E Z€"€6„ŒÖ²ïˆÏ€‰€‚ïv€‰€‚ÿLOGSETQ}– = Ô xú€6„Œ€²€€‚ïpԀ‰€‚ïñ€‰€‚ïv€‰€‚ïՀ‰€‚ïËw‡€‰€‚l€‰€‚ï$/€‰€‚ïÐՀ‰€‚ïü€‰€‚ïwˆßπ‰€‚ÿMMAPMBMECHOMEMMEMMAPMemory and register accessMenusMIXMMMouse operationIì † ; F€€6„Œ€²€€‚ïÃ%€‰€‚ÿNNEXTe= ë L h€2€6„Œ€²€€‚ï’†&€‰€‚ïaY€‰€‚ÿOOPENOUTPUT*ˆ†  ¢ €6„Œ€²€€‚ïMS'€‰€‚‰€‚ïIpêـ‰€‚ïázb€‰€‚ïeO¯€‰€‚ï= #@€‰€‚ïq9ˆ€‰€‚ÿPPATHPAUSEPCCCURSORPCHISTPRINTProgrammingProgramming the emulator with the command line interfaceIë ^ ; F€€6„Œ€²€€‚ï‡)€‰€‚ÿQQUITùX W¡ °€6„Œ€²€€‚ï«ÜCǀ‰€‚ïHC¡2€‰€‚ïE*V.€‰€‚ï&€‰€‚ïËWìɀ‰€‚ï `.€‰€‚ïçû€‰€‚ÿRREFRESHRegister orderRELOADRESETRESTARTRETURNRUNTo^ «å šÞ€6„Œ€²€€‚ïY÷*€‰€‚ï÷²2 €‰€‚ï󀉀‚ï @8€‰€‚ïš8€‰€‚ïv€‰€‚ïŽ 7€‰€‚ïv€‰€‚ïŽèã7€‰€‚ï±D€‰€‚ïþ€‰€‚ÿSSAVESAVEOMFSBSBDELSBPUTSCROLLSEARCHSETSIGNALSLOADSM1 WÜ' €€€€€‚ÿSOURCEV«>@E Z€"€6„ŒÖ²ïÜ>@8Ëv€‰€‚‰€‚ÿSETSRCÞDÜAš ˆ€6„Œ€²ï€‰€‚‰€‚ï‚N€‰€‚ï–¥:€‰€‚ïÄ}+€‰€‚ïpΪ̀‰€‚ïr+€‰€‚ÿSRSRCSTARTSTATUSSTEPSTEPOVERSTOPë[>@B ð€¶€6„Œ€²€€‚ïv€‰€‚ïÌΠ€‰€‚ïh2Õ©€‰€‚ïf,€‰€‚ï1f,€‰€‚ïv€‰€‚ÿTTABTerms definitionThe Command InterpreterTILETIMETIME240 A7B' €€€€€‚ÿTIMERXBBE Z€&€6„ŒÖ²ïv€‰€‚ï]*u€‰€‚ÿSETTIMER\7BëBE Z€.€6„Œ€²ïv€‰€‚ïv€‰€‚ÿTTWRAPTTYLOGƒ&BnC] Š€L€6„Œ€²€€‚ï{lm€‰€‚ïP&:€€‰€‚ï3€‰€‚ÿUUNALIASUNDEFINEUSEƒ&ëBñC] Š€L€6„Œ€²€€‚ïv€‰€‚ïl‘ج€‰€‚ïÒ.€‰€‚ÿVVERBOSEVERSIONVIEWInC:D; F€€6„Œ€²€€‚ï…Ï/€‰€‚ÿWWAIT0 ñCjD' €€€€€‚ÿWATCHX:DÂDE Z€&€6„ŒÖ²ïv€‰€‚ï(€‰€‚ÿSETWATCH@ jDE4 8€€6„Œ€²ïÐÏøZ€‰€‚ÿWINDOW$ÂD&E" €€€ÿ6E\E1Ÿÿÿÿÿÿÿÿÿ}\EEýEMenus3 &EE* $€€6ˆˆ˜²€€‚ÿMenusE\EÔE' €<€6„Œ€²€‚ÿInsert Menus help text here)EýE& €€4N€²€‚ÿ?ÔEý…•†' €|€6„ŒŒŒ€‚ÿData read or written should be interpreted in ASCII format.10†Ɔ1ûÿÿÿÿÿÿÿÿŠÿÿÿÿƆŠ>•†‡* $€(€6Œ„ŒŒ€€‚ÿBinary operatorsŒXƆŠ4 6€±€6„ŒŒŒ€‚ÿAll binary operators group left to right except the assignment operator which groups right to left. In decreasing order of precedence, the binary operators are:* / % Multiplication, division and modulo (remainder).+ - Addition and subtraction.>> << Logical right and left shift, i.e. 0xC>>2 is equal to 3.== != Logical equality and inequality, evaluated as 1 if true and 0 if false,i.e. 5==3+2 is equal to 1 and 5!=3+2 is equal to 0.> >= < <= Logical comparison for greater, greater or equal, less, less or equal,evaluated to 1 if true and 0 if false.& Bitwise AND.^ Bitwise EXCLUSIVE OR.| Bitwise OR.= Assignment operator. The left operand can be only an M, MM or #term. The right operand can be an M, MM, #term or the result of an expressionevaluation.1‡ÁŠ1»ÿÿÿÿÿÿÿÿ‹ÿÿÿÿÁŠK‹4 ŠõŠ* $€€6Œ„ŒŒ€€‚ÿBINARYV/ÁŠK‹' €^€6„ŒŒŒ€‚ÿData should be interpreted in binary format.1õŠ|‹1%ÿÿÿÿÿÿÿÿŒÿÿÿÿ|‹pT*K‹Ћ* $€T€6Œ„ŒŒ€€‚ÿDefinition of terms used in expression f|‹p: B€Í€6„ŒŒŒ€‚ÿnumberA sequence of one or more hexadecimal, decimal or octal digits, depending on the current base selected [BASE]. It can be prefixed with '0x' to force it to be interpreted as a hexadecimal number.'character'A character enclosed between single quotes is evaluated as its ASCII value (so that 'A' is equivalent to the hexadecimal value 41).$symbolA legal symbol name, preceded by the dollar sign '$'. The value is the symbol value.(expr)An expression enclosed between parenthesis is a single term and the value is the value of the expression. It can be used to change the order of the evaluation of the expression terms.M term MM termThe value is the content of the memory (first case) at address term, or the content of the concatenation (second case) of the 2 emory data at term.#termThe value read from channel term [OPEN]R$symbolThe value is1Ћ¡1³ÿÿÿÿÿÿÿÿÿÿÿÿ¡ÂÀ<pݏ* $€$€6Œ„ŒŒ€€‚ÿinterface typeÙ®¡ÂÀ+ $€]€6„ŒŒŒÝÂÀp€‚ÿSupported interface types:EMUST950ISA - ISA Based Emulator EMUST950PP - DSPlug with printer port interface EMUST950-Test - No hardware; GUI Test Mode1ݏóÀ10ÿÿÿÿÿÿÿÿŽÿÿÿÿóÀòÁ<ÂÀ/Á* $€$€6Œ„ŒŒ€€‚ÿM term MM termÛóÀòÁ( €7€6„ŒŒŒ€‚ÿThe value is the content of the memory (first case) at address , or the content of the concatenation (second case) of the 2 memory data at .1/Á#Â10ÿÿÿÿÿÿÿÿÿÿÿÿ#Â"Ã9òÁ\Â* $€€6Œ„ŒŒ€€‚ÿmem_addressƞ#Â"Ã( €=€6„ŒŒŒ€‚ÿMemory space followed by the memory offset. For example: P:0122, X:2C0F. Address can be also represented by the valid symbol from the target's object file.1\ÂSÃ1RÿÿÿÿÿÿÿÿÿÿÿÿSÃtÄ4 "ÇÃ* $€€6Œ„ŒŒ€€‚ÿnumberíÅSÃtÄ( €‹€6„ŒŒŒ€‚ÿA sequence of one or more hexadecimal, decimal or octal digits, depending on the current base selected [BASE]. It can be prefixed with '0x' to force it to be interpreted as a hexadecimal number.1‡Ã¥Ä1³ÿÿÿÿÿÿÿÿ‘ÿÿÿÿ¥Ä'Å4 tÄÙÄ* $€€6Œ„ŒŒ€€‚ÿoffsetN'¥Ä'Å' €N€6„ŒŒŒ€‚ÿabsolute value of the address offset1ÙÄXÅ1¹ÿÿÿÿÿÿÿÿ’ÿÿÿÿXÅàÅ6 'ÅŽÅ* $€€6Œ„ŒŒ€€‚ÿR$symbolR+XÅàÅ' €V€6„ŒŒŒ€‚ÿThe value is the content of the register1ŽÅÆ1ƒÿÿÿÿÿÿÿÿ“ÿÿÿÿÆcÈ?àÅPÆ* $€*€6Œ„ŒŒ€€‚ÿregister sequenceÝÆcÈ6 :€»€6„ŒŒŒ€‚ÿAX0, AX1 X address registersAY0, AY1 Y address registersIX0, IX1, IX2, IX3X index registersIY0, IY1, IY2, IY3Y index registersSP Stack pointerLS, LC, LE Loop start/count/end registersL0, L1, R0, R1 DCU input registersPL, PH Product registers LSB/MSBCCR Condition code registerSTA Status registerA0L, A0H, A0E Accumulator 0 LSB/MSB/ExtBSC Barrel shifter control registerA1L, A1H, A1E Accumulator 1 LSB/MSB/ExtPSC Product shift control registerPC Program counter1PÆ”È1Ëÿÿÿÿÿÿÿÿ”ÿÿÿÿ”È.Ê6 cÈÊÈ* $€€6Œ„ŒŒ€€‚ÿregisterd3”È.Ê1 0€g€6„ŒŒŒ€‚ÿAX0, AX1 X address registersAY0, AY1 Y address registersIX0, IX1, IX2, IX3X index registersIY0, IY1, IY2, IY3Y index registersSP Stack pointerLS, LC, LE Loop start/count/end registersL0, L1, R0, R1 DCU input registersPL, PH Product registers LSB/MSBCCR Condition code registerSTA Status register1ÊÈ_Ê1Ìÿÿÿÿÿÿÿÿ•ÿÿÿÿ_ÊúË7 .Ê–Ê* $€€6Œ„ŒŒ€€‚ÿregistersd3_ÊúË1 0€g€6„ŒŒŒ€‚ÿAX0, AX1 X address registersAY0, AY1 Y address registersIX0, IX1, IX2, IX3X index registersIY0, IY1, IY2, IY3Y index registersSP Stack pointerLS, LC, LE Loop start/count/end registersL0, L1, R0, R1 DCU input registersPL, PH Product registers LSB/MSBCCR Condition code registerSTA Status register1–Ê+Ì1Öÿÿÿÿÿÿÿÿ–ÿÿÿÿ+ÌÐÌ3 úË^Ì* $€€6Œ„ŒŒ€€‚ÿSpacerK+ÌÐÌ' €–€6„ŒŒŒ€‚ÿspace is one of the allowed memory spaces for the processor (P, X or Y),1^ÌÍ1ÿÿÿÿÿÿÿÿ—ÿÿÿÿÍ`Î4 ÐÌ5Í* $€€6Œ„ŒŒ€€‚ÿsymbol+Í`Î( €€6„ŒŒŒ€‚ÿcan be any word composed of letters, numbers, "_" (underscore), "$" characters. The first character can be a "." (period), but can not be a digit. Symbols are case sensitive, can be of any length, but only its first 8 characters are considered meaningful.15Í‘Î1oÿÿÿÿÿÿÿÿ˜ÿÿÿÿ‘Î =`ÎÎÎ* $€&€6Œ„ŒŒ€€‚ÿUnary operatorsבÎ * "€¯€6„ŒŒŒ€‚ÿThe unary operators group right to left are defined as follows:! ! is evaluated as 1 if has value 0, 0 otherwise.~ ~ is the bitwise negation of , i.e ~0x55 is equal to FFFFFFAA.ÎÎ `Î1ÎÎ=1Uÿÿÿÿÿÿÿÿ™ÿÿÿÿ=a$ a" €€€ÿ1=ÿÿÿÿ1ÿÿÿÿÿÿÿÿšÿÿÿÿÿÿÿÿÿÿÿÿ¡˜ ŒHelvƒ|u ÇFö饐ArialD‰Fò‹^ôö‡Å€uCourier+ÉQQSšÆ/WƒÄMs Sans SerifD‰FøMs Serif‰VîëÄ^ì&€?SymbolFì‹Fì9Føwé‹^ðTimes New RomanÿvüÿZapfDingbats‹G‰Fò‹Systemt@‰Fò‹Fò+Ò)FÿÓÊyœU û€<ЃX„;9.€pˆ2,Šèüâýœé×ê•ëãìpí€îdï߁ñCƒònƒóӄô0…õօöü÷=øàù•úFþ€ÿŸO…‡0G €V C‚ Œƒ Y… \‰¢$Q5€€d‚²ƒü„s†’‡šˆ8ß |!C"ü%€&·‚'áƒ(¶†) *º ,ý -º + 0ä 1¶‚ 3vƒ 4€„ 6‰‰ 8 7± 9 :ö =~ > @| Aª€ Bà C҂ Dkƒ E… F܇ G+ Hô I€ Jw Kž L  N‘ M€ O  Pj Q% R€ SC Vȁ W‚ X¹ƒ Y’„ Z… [X† \ ]i ^® _ `¬ ðU  € #€‚ /V?€T΂-$וãp€d߁Cƒnƒӄ0…օü=à•F€âœ€ŸO…‡†0X„€G VC‚ŒƒY…\‰w w €w ¢€d‚²ƒü„s†’‡pˆœšˆw 8ß|CüQ€··‚ჶ† º w c ý w º  ä ¶‚ ,Švƒ €„ €‰‰ ±   ö 9Ѓ~  | ª€ à Ò‚ kƒ B„ … ܇ + ô w € w ž   w ‘ € ‘  j % € C w  ȁ ‚ w w ¹ƒ w w ’„ … X† w i ® w  ¬ /& ;) i24jectGlossaryÿÿ…þ…ÿÿÿÿAdditional Window ControlsADDRALIASARCHIVE ASMBASEBEEPBREAKBYE CALLS$CASCADE(CD,CHANGE0CLOCK4CLOSE8CLS<CM@CODEMENUDCOLORHCommand line expressionsLCommand Line ParamsPCommandsTCOMPAREXCONNECT\Contents`COPYdCURXYhCYCLESlDASMpDEFINEtDefining macro commandsxDIR|DISASM€DISCONNECT„DISPLAYˆDMŒDODR”DSPVER˜DUALœECHO EOF€ERRORSšEVAL¬EVAL1°EXEIOŽFile managementžFILLŒFMÀFOCUSÄFORÈFORCEÌFUNCTIONÐFunction keysÔGeneral NotesØGOÜGOCURSORàGOFROMäGRAPHèHALTìHELPðIDCODEôIFøINPUTüJUMPLIMITLINELISTSYMBOL LOADLOCATELOGMAP MB$MECHO(MEM,MEMMAP0Memory and register access4MIX8MM<Mouse operation@NEXTDOPENHOUTPUTLPATHPPAUSETPCCCURSORXPCHIST\PRINT`ProgrammingdProgramming the emulator with the command line interfacehQUITlREFRESHpRELOADtRESETxRESTART|RETURN€RUN„SAVEˆSAVEOMFŒSBSBDEL”SBPUT˜SCROLLœSEARCH SET€SIGNALšSLOAD¬SM°SOURCEŽSRŒSRCÀSTARTÄSTATUSÈSTEPÌSTEPOVERÐSTOPÔTABØThe Command InterpreterÜTILEàTIMEäTIME24èTIMERìTTWRAPôTTYLOGøUNALIASüUNDEFINEUSEVERBOSEVERSION VIEWWAITWATCHWINDOW H-BVT~1\BVST95~1.rtf 50 `5538EF11 F1ProjectGlossary67 1 F1ProjectGlossary67 E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 50 D 478A37C EXEIO 1 EXEIO E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf 50 F17591161 OUTPUT 1 OUTPUT E:\MYDOCU~1\HELP\VH-BVT~1\BVST95~1.rtf/& ;) LzžƒÄžƒ>Äžÿÿ›ˆ›ÿÿÿÿContentsœGeneral Notes The Command Interpreter€Command line expressionsЃProgramming the emulator with the command line interfaceX„Defining macro commands9ProgrammingMemory and register access€File managementpˆFunction keys,ŠMouse operationAdditional Window ControlsâCommand Line ParamsœCommands×ADDR•ALIASãARCHIVEpASM€BASEdBEEP߁BREAKCƒBYEnƒCALLSӄCASCADE0…CDօCHANGECLOCKüCLOSE=CLSàCM•CODEMENUFCOLOR€COMPAREŸCONNECTO…COPY†CYCLES‡CURXYDASM0DEFINEG DISASMd DIRVDISCONNECTC‚DISPLAYŒƒDMY…DO\‰DRDUAL¢EVALEXEIOQINPUT€OUTPUTEVAL1€EOFd‚FILL²ƒFMü„FOCUSs†FOR’‡FORCEFUNCTIONšGOˆGOCURSOR8GRAPHßHALT|HELPCIDCODEüIF€JUMP·LIMIT·‚LINEáƒLISTSYMBOL¶†LOAD LOCATEº LOGc MAPý MBº MEM MEMMAPä MIX¶‚ MMvƒ NEXT€„ OPEN‰‰ PATH PCCCURSOR± PAUSE PCHISTö PRINT~ QUIT REFRESH| RELOADª€ RESETà RESTART҂ RETURNkƒ RUNB„ SAVE… SAVEOMF܇ SB+ SBDELô SBPUT€ SEARCHw SET SIGNALž SLOAD  SM‘ SRC€ SR  STARTj STATUS% STEP€ STEPOVERC STOPȁ TILE‚ TIME¹ƒ TIMER’„ UNALIAS… UNDEFINEX† USE VERSIONi VIEW® WAIT WATCH¬ WINDOWU Buses and conditions Entering Commands€ Glossary€‚ IndexVMenus€Register order΂Terms definitionІن;‡Ä8¿ûm³úfŸ/ €­€Z)‚Z‚‘‚ƒ„…‡V‡cˆ   /& ;) L4/d: lpÿÿπÏÿÿÿÿP&:€… yрq9ˆÐƒŒØ “Ó„Ðqœ€>åʝހ Eåʝ Fåʝn Gåʝ” Håʝ” IåʝŁ JåʝŁ KåʝŁ LåʝŁ MåʝŁ Nåʝށ Oåʝށ Påʝށ Qåʝށ Råʝ‚ Såʝ‚ Tåʝ)‚ Uåʝ)‚ Våʝ)‚ Wåʝm‚ Xåʝˆ‚ Yåʝˆ‚ Zåʝ¢‚ [åʝ¢‚ \åʝ¢‚ ]åʝ¢‚ ^åʝ¢‚ 5ˆDŸpˆÓ< VÌΠ΂h2Õ© Ü»u«Ö…l‘ج ðsU¢³0Ō‚ŽG «ÜCÇ ËWìÉà pΪÌ€ \eÍ€wˆßÏ,ŠÌ,6ÔIpêÙ ; *Û X‹:ßCºQÖê€ zîp숶Áû E0…NàyŒƒ{Y…~\‰Ï²ƒüšIüñý ü¶‚ ó܇ þ  € ǀpúˆCƒŽ=ɔ€øœ€=€s†ˆÏº pÔc Õº ÐÕä çûkƒ vw ”‘ 3X† µ3×W€ªqdYòO…CİQ|¢jd‚ißIº|*› €ı"·‚êÚ"¶†Ã%vƒ ’†&€„ MS'‰‰ ‡)~ Y÷*B„ Ä}+% r+C f,ȁ 1f,‚ Ò.i …Ï/® Ëw‡ d…™•›ÚÔ߁ù™ônƒj üƒ–FÕ ‡Õv|£x˜Ö¡ü„Û?¢’‡®•Ù8Š$=€‚ þ}=QƒÕÓ·$/V›± eO¯ö &ª€  @8+ š8ô ±Dž ‚N  ]*u¹ƒ ( t€® •q‘ €jÜ ŸaY€ŸËІŸËنŸË;‡ŸË!ŸËÄü!¿œázb ÷²2 … 4{&$œŠUô%E*V.|  `.҂ HC¡2€±63㢛6|ƒ ©›6|ƒ ª›6ǃ «›6¬›6í­›6y®›6ͯ›61°›6~±›6•²›6¶³›6ÄŽ›6ĵ›6¶›6”·›6¢ž›6»¹›6Cº›6Q»›6©Œ›6D€œ›6ҀŸ›6ø€¿›6À›6TÁ›6T›6TŽ 7€ Žèã7 žNK8X„eûk8â–¥:j = #@9J£ÿQC‚4î8U¿5î8Uû6î8Um8î8U³:î8Uú;î8Uf=î8U8eî8UŸ’î8U/ ¹î8U€»î8U­€àî8UZáî8U)‚çî8UZ‚èî8U‘‚ ï8U…ï8U‡ï8Uƒ„7ï8Ucˆ?ï8UV‡ÐÏøZ¬ Ÿl¥ßwrU ž>£{áƒ{lm’„ T:RïT"RïT RïTòQïTÚQïTÂQïTªQïT’QïTzQïTbQïTJQïT2QïTQïTQïTêPïTÒPïTºPïT¢PïTŠPïTrPïTZPïTBPïT*PïTPïTúOïTâOïTÊOïT²OïTšOïT‚OïTjOïTROïTÆSïT®SïT–SïT~SïTfSïTNSïT†XïTnXïTVXïT>XïT&XïTî PÖ PŸ PŠ PŽ Pv P^ PF P. P Pþ PºP¢PŠPrPZPBP*PPúPâPÊP²PšP‚PjPRP:P"P PòPÚPÂPj /dR /d: /d" /d /dò /dÚ /d /dª /d’ /dz /d²/dš/d‚/dj/dR/d:/d"/d /dò/ lpÀÀŽ& @\€€€€€€€€€€€€ÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿ0+w…pFf+ˆp+ˆp+ˆpˆˆ€ˆˆˆˆ€ˆ‰€€ˆ€ˆˆˆ…pˆŽ€ˆˆ€ˆˆ€ˆ€ˆˆ€ˆ‰€€ˆˆ€ˆ€ˆ€ˆ…pˆ‰€ˆˆ€ˆˆˆ€ˆ…ˆˆ€ˆ„€ˆ€ˆ‚ˆpˆˆ€ˆ€ˆ‰€ˆ€ˆ€ˆ€ˆƒ€ˆpˆ‰€ˆˆ€ˆ€ˆŒ€ˆ€ˆ€ˆˆˆ€ˆ€ˆˆ…pˆŠˆˆˆ€ˆ€ˆŒ€ˆ€ˆ€ˆˆ€ˆ€ˆ€ˆ…p`ˆ€ˆ†€ˆˆˆ‹ˆ€ˆ€ˆˆˆˆ…p "pˆ„€ˆˆ€ ˆ„ˆ€ ˆ€ˆ…p̈„€ˆˆ€ ˆ„ˆ€ˆ…p(̈ƒ ˆ„€ˆˆ€ˆ…p‰à+ˆ…p› +ˆ…p©Â+ÿ„p f4-ƒÌ ¯ŠlpÀÀ0""7-€ÿ'À€ÿ'À€ÿ'À€ÿÀÀ€ÿ'À€ÿ À À€ÿ'À€ÿ À À€ÿ'À€ÿÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿ ÀÀÀ€ÿ ÀÀÀ€ÿ À À€ÿÀÀÀ€ÿÀÀÀ€ÿ À À€ÿÀÀ À€ÿÀÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ À À€ÿ À À À€ÿÀÀÀ€ÿÀÀÀ€ÿÀÀÀ€ÿÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÓÊlpÀÀ0""L7-€ÿ'À€ÿ'À€ÿ ÀÀ€ÿ À À À€ÿ À À À€ÿ À À À€ÿ ÀÀ€ÿ À À À€ÿ À À À€ÿ ÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÇŸlpÀÀ0""47-€ÿ'À€ÿ'À€ÿÀ À€ÿ À À À€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ À À À€ÿÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿ À À€ÿ À ÀÀ€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À ÀÀ€ÿ À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8¿¶lpÀÀ0""$7-€ÿ'À€ÿ'À€ÿ À À€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ À À€ÿ ÀÀ€ÿ ÀÀ€ÿ À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8¿¶lpÀÀ0""$7-€ÿ'À€ÿ'À€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ À À€ÿ ÀÀ€ÿ ÀÀ€ÿ À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÓÊlpÀÀ0""L7-€ÿ'À€ÿ'À€ÿÀ À€ÿ À À À€ÿ ÀÀ À€ÿ À À À€ÿ ÀÀ€ÿ ÀÀ À€ÿ À À À€ÿÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÛÒlpÀÀ0""\7-€ÿ'À€ÿ'À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8¿¶lpÀÀ0""$7-€ÿ'À€ÿ'À€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÇŸlpÀÀ0""47-€ÿ'À€ÿ'À€ÿÀÀ€ÿ ÀÀÀ€ÿ ÀÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ßÖlpÀÀ0""d7-€ÿ'À€ÿ'À€ÿ À À À€ÿ À ÀÀ€ÿ À ÀÀ€ÿ ÀÀÀ€ÿ ÀÀÀ€ÿ ÀÀÀ€ÿ À ÀÀ€ÿ À À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8¿¶lpÀÀ0""$7-€ÿ'À€ÿ'À€ÿ À À€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÿölpÀÀ0""€7-€ÿ'À€ÿ'À€ÿ ÀÀÀ À€ÿ ÀÀÀ À€ÿ ÀÀÀÀ À€ÿ ÀÀÀÀ À€ÿ ÀÀÀÀ À€ÿ À À À€ÿ À À À€ÿ ÀÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8ïælpÀÀ0""„7-€ÿ'À€ÿ'À€ÿ À À À€ÿ À À À€ÿ ÀÀÀ À€ÿ ÀÀÀ À€ÿ ÀÀÀ À€ÿ ÀÀÀ À€ÿ À À À€ÿ À À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿÀ À€ÿ À À À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ À À À€ÿÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8ËÂlpÀÀ0""<7-€ÿ'À€ÿ'À€ÿ ÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8ßÖlpÀÀ0""d7-€ÿ'À€ÿ'À€ÿÀ À À€ÿ À À À€ÿ ÀÀÀ À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ À À À€ÿÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿ À À À€ÿ À ÀÀ€ÿ À ÀÀ€ÿ ÀÀÀ€ÿ ÀÀ€ÿ À À À€ÿ À À À€ÿ ÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÇŸlpÀÀ0""47-€ÿ'À€ÿ'À€ÿ À À€ÿ À À À€ÿÀ À€ÿÀÀ€ÿ ÀÀ€ÿ ÀÀ€ÿ À À À€ÿ À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8¿¶lpÀÀ0""$7-€ÿ'À€ÿ'À€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿ ÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÛÒlpÀÀ0""\7-€ÿ'À€ÿ'À€ÿ À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ À À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿÀÀ€ÿÀÀ€ÿÀÀÀ€ÿÀÀÀ€ÿ À À À€ÿ À À À€ÿ ÀÀ À€ÿ ÀÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8 lpÀÀ0""Œ7-€ÿ'À€ÿ'À€ÿ ÀÀ À€ÿ ÀÀ À€ÿÀÀ ÀÀÀ€ÿÀÀ ÀÀÀ€ÿÀÀÀÀÀ€ÿÀÀÀÀÀ€ÿÀ ÀÀ ÀÀ€ÿÀ À ÀÀ€ÿ'À€ÿ'À€ÿ'À€-ÿ8×ÎlpÀÀ0""T7-€ÿ'À€ÿ'À€ÿ À À À€ÿ ÀÀÀ€ÿ ÀÀÀ€ÿÀÀ€ÿÀÀ€ÿ ÀÀÀ€ÿ ÀÀÀ€ÿ À À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8ÏÆlpÀÀ0""D7-€ÿ'À€ÿ'À€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀÀ€ÿ À À À€ÿ À À À€ÿ ÀÀ À€ÿ'À€ÿ'À€ÿ'À€-ÿ8¿¶lpÀÀ0""$7-€ÿ'À€ÿ'À€ÿ À À€ÿ ÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿÀÀ€ÿ À À€ÿ'À€ÿ'À€ÿ'À€-ÿ8úñlpÀÀ€.(úl€€€€€€€€€ÀÀÀp`Ÿ·¯ÏÜØç€  €€€ÿÿÿÿÿÿÿÿÿÿÿÿUP O ‚L‚ ‚L‚ ‚L‚ ‚L‚ ‚†‚ ‚‚™‚ ‚‚‰†‚ ‚‚‚ ‚‚–‚ ‚‚„‚ ‚‚‚,‚ ‚‚…,‚ ‚„,‚ ‚L‚ ‚L‚ ‚L‚ ‚L‚ O PW