Dc 4gb
pci express host bus adapters for linux
and windows (36 pages)
Summary of Contents for HP 64767
Page 1
User’s Guide for the Graphical User Interface HP 64767 80186/8/XL/EA/EB Emulation/Analysis...
Page 2
Hewlett-Packard Company. The information contained in this document is subject to change without notice. HP is a trademark of Hewlett-Packard Company. Microtec is a registered trademark of Microtec Research Inc. OSF/Motif and Motif are trademarks of the Open Software Foundation in the U.S.
Page 3
Printing History New editions are complete revisions of the manual. The date on the title page changes only when a new edition is published. A software code may be printed before the date; this indicates the version level of the software product at the time the manual was issued. Many product updates and fixes do not require manual changes, and manual corrections may be done without accompanying product changes.
Page 4
The emulator requires an emulation analyzer that captures 48 channels of emulation processor bus cycle information synchronously with the processor’s clock signal. The HP 64706 (48 channel), the HP 64703 (64 channel), the HP 64704 (80 channel), or the HP 64794 (80 channel, dee memory) Emulation Bus Analyzer meets this requirement.
Page 5
Start and stop up to 16 emulators at the same time (up to 32 if modifications are made). • Use the analyzer in one HP 64700 to arm (that is, activate) the analyzers in other HP 64700 card cages or to cause emulator execution in other HP 64700 card cages to break.
Page 6
Part 2. User’s Guide Chapter 2 shows how to plug the emulator into a target system. Chapter 3 shows you how to start and exit the HP 64700 interfaces. Chapter 4 shows you how to enter commands. Chapter 5 shows how to configure the emulator.
Contents Part 1 Quick Start Guide 1 Getting Started The Emulator/Analyzer Interface — At a Glance The Softkey Interface Softkey Interface Conventions The Graphical User Interface Graphical User Interface Conventions The Getting Started Tutorial Step 1. Start the demo Step 2: Display the program in memory Step 3: Run from the transfer address Step 4: Step high-level source lines Step 5: Display the previous mnemonic display...
Page 8
Step 4. Plug the 8018x PGA emulator probe into the target system Step 5. Connect the BGND flying lead Step 6. Turn ON power 3 Starting and Exiting HP 64700 Interfaces Starting the Emulator/Analyzer Interface To start the emulator/analyzer interface...
Page 9
Contents 4 Entering Commands Using Menus, the Entry Buffer, and Action Keys To choose a pulldown menu item using the mouse (method 1) To choose a pulldown menu item using the mouse (method 2) To choose a pulldown menu item using the keyboard To choose popup menu items To place values into the entry buffer using the keyboard To copy-and-paste to the entry buffer...
Page 10
Contents Forwarding Commands to Other HP 64700 Interfaces To forward commands to the high-level debugger To forward commands to the software performance analyzer 5 Configuring the Emulator Using the Configuration Interface To start the configuration interface To modify a configuration section...
Page 11
Contents 6 Using the Emulator Loading and Storing Absolute Files To load absolute files To load absolute files without symbols To store memory contents into absolute files Using Symbols To load symbols To display global symbols To display local symbols To display a symbol’s parent symbol To copy-and-paste a full symbol name to the entry buffer Using Context Commands...
Page 12
Contents Displaying and Modifying Registers To display register contents To modify register contents Displaying and Modifying Memory To display memory To display memory in mnemonic format To return to the previous mnemonic display To display memory in hexadecimal format To display memory in real number format To display memory at an address To display memory repetitively To modify memory...
Page 13
Contents 7 Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces To start a trace measurement To display the trace status To stop a trace measurement To display the trace To position the trace display on screen To change the trace depth To modify the last trace command entered...
Page 14
Contents Saving and Restoring Traces To save trace commands To restore trace commands To save traces To restore traces 8 Making Software Performance Measurements Activity Performance Measurements To set up the trace command for activity measurements To initialize activity performance measurements To interpret activity measurement reports Duration Performance Measurements To set up the trace command for duration measurements...
Page 15
Contents 10 Making Coordinated Measurements Setting Up for Coordinated Measurements To connect the Coordinated Measurement Bus (CMB) To connect to the rear panel BNC Starting/Stopping Multiple Emulators To enable synchronous measurements To start synchronous measurements To disable synchronous measurements Using Trigger Signals To drive the emulation analyzer trigger signal to the CMB To drive the emulation analyzer trigger signal to the BNC connector To drive the external analyzer trigger signal to the CMB...
Page 16
Contents Part 3 Reference 12 Emulator/Analyzer Interface Commands How Pulldown Menus Map to the Command Line How Popup Menus Map to the Command Line Syntax Conventions Commands break bbaunld cmb_execute copy copy io_port copy local_symbols_in copy memory copy registers copy trace display display data display global_symbols...
Page 17
Contents performance_measurement_end performance_measurement_initialize performance_measurement_run pod_command QUALIFIER RANGE reset SEQUENCING specify STATE step stop_trace store --SYMB-- trace TRIGGER wait WINDOW 13 Error Messages Graphical/Softkey Interface Messages - Unnumbered Graphical/Softkey Interface Messages - Numbered Terminal Interface Messages Emulator Messages 80186/8/XL/EA/EB Emulator Messages General Emulator and System Messages Analyzer Messages 14 Specifications and Characteristics...
Page 18
16 Installation Installing Hardware Step 1. Connect the Emulator Probe Cables Step 2. Install Boards into the HP 64700 Card Cage Step 3. Plug the emulator probe into the demo target system Step 4. Apply power to the HP 64700...
Page 19
Contents Installing Sun SPARCsystem Software Step 1. Install the software from the media Step 2. Start the X server and OpenWindows Step 3. Set the necessary environment variables Step 4. Verify the software installation Step 5. Map your function keys Verifying the Installation Step 1.
Chapter 1: Getting Started The Emulator/Analyzer Interface — At a Glance When an X Window System that supports OSF/Motif interfaces is running on the host computer, the emulator/analyzer interface is the Graphical User Interface which provides pull-down and pop-up menus, point and click setting of breakpoints, cut and paste, on-line help, customizable action keys and pop-up recall buffers, etc.
Chapter 1: Getting Started Status line. Displays the emulator and analyzer status. Also, when error and status messages occur, they are displayed on the status line in addition to being saved in the error log. Command line. Commands are entered on the command line by pressing softkeys (or by typing them in) and executed by pressing the Return key.
Chapter 1: Getting Started The Graphical User Interface Menu bar Action keys Entry buffer Entry buffer recall button. Display area. Scroll bar. Status line. Command line. Command line entry area. Softkey pushbuttons Command buttons. Includes command Cursor buttons for command line area recall button.
Page 27
Chapter 1: Getting Started Entry Buffer. Wherever you see "()" in a pulldown menu, the contents of the entry buffer are used in that command. You can type values into the entry buffer, or you can cut and paste values into the entry buffer from the display area or from the command line entry area.
Chapter 1: Getting Started The command Recall button allows you to recall previous or predefined commands. When you click on the command Recall button, a dialog box appears that allows you to select a command. • Cursor buttons for command line area control. Allow you to move the cursor in the command line entry area forward or backward, clear to the end of the command line, or clear the whole command line entry area.
Page 29
Mouse Button Bindings and Description Bindings: Generic Button Name Description HP 9000 SPARCsystem paste left left Paste from the display area to the entry buffer. command paste middle...
Page 30
Chapter 1: Getting Started The following tables show the default keyboard bindings. Keyboard Key Bindings Generic Key Name HP 9000 Sun SPARCsystem menu select extend char extend char insert insert char insert char delete delete char delete char left-arrow left arrow...
• The HP 64767 emulator and HP 64703 analyzer are installed into the HP 64700 Card Cage, the HP 64700 is connected to the host computer, and the emulator/analyzer interface software has been installed as outlined in the "Installation" chapter.
"platformScheme" resource setting in the "Xdefaults.emul" file. For example, if the Graphical User Interface will be run on a HP 9000 computer and displayed on a Sun SPARCsystem computer, change the platform scheme to "SunOS".
Chapter 1: Getting Started Step 2: Display the program in memory Step 2: Display the program in memory 1 If the symbol "main" is not already in the entry buffer, move the mouse pointer to the entry buffer (notice the flashing I-beam cursor) and type in "main". 2 Choose Display→Memory→Mnemonic ().
Chapter 1: Getting Started Step 3: Run from the transfer address Step 3: Run from the transfer address The transfer address is the entry address defined by the software development tools and included with the program’s symbol information. • Click on the Run Xfer til () action key. Or, using the command line, enter: run from transfer_address until main <RETURN>...
Chapter 1: Getting Started Step 4: Step high-level source lines Step 4: Step high-level source lines You can step through the program by high-level source lines. The emulator executes as many instructions as are associated with the high-level program source lines.
Chapter 1: Getting Started Step 5: Display the previous mnemonic display Step 5: Display the previous mnemonic display • Click on the Disp Src Prev action key. Or, using the command line, enter: display memory mnemonic previous_display <RETURN> This command is useful, for example, when you have stepped into a funtion that you do not wish to look at—you can display the previous mnemonic display and run until the source line that follows the function call.
Chapter 1: Getting Started Step 6: Run until an address Step 6: Run until an address When displaying memory in mnemonic format, a selection in the popup menu lets you run from the current program counter address until a specific source line. •...
Chapter 1: Getting Started Step 7: Display data values Step 7: Display data values 1 Position the mouse pointer over "num_checks" in the source line that reads "num_checks++;" and click the paste mouse button (notice "num_checks" is cut and pasted into the entry buffer). 2 Choose Display→Data Values→New ()→int32.
Chapter 1: Getting Started Step 8: Display registers Step 8: Display registers You can display the contents of the processor registers. • Choose Display→Registers→basic. Or, using the command line, enter: display registers <RETURN>...
Chapter 1: Getting Started Step 9: Step assembly-level instructions Step 9: Step assembly-level instructions You can step through the program one instruction at a time. • To step one instruction from the current program counter, click on the Step Asm action key.
Chapter 1: Getting Started Step 10: Trace the program Step 10: Trace the program When the analyzer traces program execution, it looks at the data on the emulation processor’s bus and control signals at each clock cycle. The information seen at a particular clock cycle is called a state.
Page 42
Chapter 1: Getting Started Step 10: Trace the program Notice that now the message on the status line is "Emulation trace complete". This shows the trigger state has been found and the analyzer trace memory has been filled. 5 To view the captured states, choose Display→Trace. Or, using the command line, enter: display trace <RETURN>...
Chapter 1: Getting Started Step 11: Exit the emulator/analyzer interface Step 11: Exit the emulator/analyzer interface • To exit the emulator/analyzer interface and release the emulator, choose File→Exit→Released. Or, using the command line, enter: end release_system <RETURN>...
Page 48
If the emulator is currently connected to the demo target system or a different target system, unplug the emulator probe. Plug the emulator probe into the target system. Turn ON power (first the HP 64700, then the target system). CAUTION Possible Damage to the Emulator Probe. The emulation probe contains devices that are susceptible to damage by static discharge.
HP 64700 power is OFF before removing or installing the emulator probe into the target system. Do not turn HP 64700 power OFF while the emulator is plugged into a target system whose power is ON. 1 If the emulator is currently plugged into a different target system, turn that target system’s power OFF.
Chapter 2: Plugging into a Target System Step 3. Set up the probe for the clock source Step 3. Set up the probe for the clock source A 14-pin DIP socket located at the target connector end of the probe is used to prepare the emulator probe for the type of clock source in the target system.
Page 51
Chapter 2: Plugging into a Target System Step 3. Set up the probe for the clock source Parasitic circuit parameters in the emulator/target interconnect may cause problems when the target system uses a high frequency crystal. The frequency limit is very much dependent on the target system.
Page 52
Chapter 2: Plugging into a Target System Step 3. Set up the probe for the clock source 2 Replace the jumper with either a standard 14-pin oscillator of the desired frequency or a prototyping socket on which a crystal and any capacitors or tank circuitry are assembled. 3 Replace the plastic cover, and insert new plastic rivets (supplied with the emulator) to secure the cover.
Chapter 2: Plugging into a Target System Step 4. Plug the 8018x PGA emulator probe into the target system Step 4. Plug the 8018x PGA emulator probe into the target system 1 Install the emulator probe into the target system socket. Make sure that pin 1 of the connector aligns with pin 1 of the socket.
Chapter 2: Plugging into a Target System Step 5. Connect the BGND flying lead Step 5. Connect the BGND flying lead Damage to the Emulator Probe Will Result if the BGND Output Line is CAUTION Incorrectly Installed. When installing the BGND output line into the emulator probe, make sure that the ground pin on the output line (labeled with a white dot) is matched with the ground receptacle in the emulator probe.
Page 58
Up to 10 interface windows may be started for the same emulator. Only one C debugger interface window and one SPA window are allowed, but you can start multiple emulator/analyzer interface windows. The tasks associated with starting and exiting HP 64700 interfaces are grouped into the following sections: •...
Chapter 3: Starting and Exiting HP 64700 Interfaces Starting the Emulator/Analyzer Interface Starting the Emulator/Analyzer Interface Before starting the emulator/analyzer interface, the emulator and interface software must have already been installed as described in the "Installation" chapter. This section describes how to: •...
Chapter 3: Starting and Exiting HP 64700 Interfaces Starting the Emulator/Analyzer Interface Examples To start the emulator/analyzer interface for the 80186/8/XL/EA/EB emulator: $ emul700 em8018x <RETURN> The "em8018x" in the command above is the logical emulator name given in the HP 64700 emulator device table file (/usr/hp64000/etc/64700tab.net).
Chapter 3: Starting and Exiting HP 64700 Interfaces Starting the Emulator/Analyzer Interface To run a command file on interface startup • Use the emul700 -c <cmd_file> <emul_name> command. You can cause command files to be run upon starting the interface by using the -c <cmd_file>...
Chapter 3: Starting and Exiting HP 64700 Interfaces Starting the Emulator/Analyzer Interface Or, the information may be similar to: em8018x - i186xl running; user = guest@myhost description: I80c18xxx emulation w/64740EA, 1024Kb emul mem user interfaces: xdebug, xemul, xperf, skemul, sktiming internet address: 21.17.9.143...
Opening Other HP 64700 Interface Windows The File→Emul700 menu lets you open additional emulator/analyzer interface windows or other HP 64700 interface windows if those products have been installed (for example, the software performance analyzer (SPA) interface and the high-level debugger interface).
Chapter 3: Starting and Exiting HP 64700 Interfaces Opening Other HP 64700 Interface Windows To open the high-level debugger interface window • Choose File→Emul700→High-Level Debugger ... under "Graphic Windows", or enter the emul700 -u xdebug <emul_name> command in another terminal emulation window.
Exiting HP 64700 Interfaces Exiting HP 64700 Interfaces There are several options available when exiting the HP 764700 interfaces. You can simply close one of the open interface windows, or you can exit the debug session by closing all the open windows. When exiting the debug session, you can lock the emulator so that you can continue later, or you can release the emulation system so that others may use it.
Chapter 3: Starting and Exiting HP 64700 Interfaces Exiting HP 64700 Interfaces To exit a debug/emulation session • To exit the interface, save your configuration to a temporary file, and lock the emulator so that it cannot be accessed by other users, choose File→Exit→Locked.
Page 68
Using menus, the entry buffer, and action keys. • Using the command line with the mouse. • Using the command line with the keyboard. • Using command files. • Using pod commands. • Forwarding commands to other HP 64700 interfaces.
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys Using Menus, the Entry Buffer, and Action Keys This section describes the tasks you perform when using the Graphical User Interface to enter commands. This section describes how to: •...
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To choose a pulldown menu item using the mouse (method 1) 1 Position the mouse pointer over the name of the menu on the menu bar. 2 Press and hold the command select mouse button to display the menu. 3 While continuing to hold down the mouse button, move the mouse pointer to the desired menu item.
• To initially display a pulldown menu, press and hold the menu select key (for example, the "Extend char" key on a HP 9000 keyboard) and then type the underlined character in the menu label on the menu bar. (For example, "f" for "File".
Page 72
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys • To move left to another pulldown menu after having initially displayed a menu, press the left-arrow key. • To move down one menu item within a menu, press the down-arrow key. •...
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To choose popup menu items 1 Move the mouse pointer to the area whose popup menu you wish to access. (If a popup menu is available, the mouse pointer changes from an arrow to a hand.) 2 Press and hold the select mouse button.
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To place values into the entry buffer using the keyboard 1 Position the mouse pointer within the text entry area. (An "I-beam" cursor will appear.) 2 Enter the text using the keyboard. To clear the entry buffer text area from beginning until end, press the <Ctrl>u key combination.
Page 75
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys contains only numbers 0 through 9 and characters "a" through "f") automatically has an "h" appended. Note If you have multiple Graphical User Interface windows open, a copy-and-paste action in any window causes the text to appear in all entry buffers in all windows.
Page 76
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys Example To paste the symbol "num_checks" into the entry buffer from the interface display area, position the mouse pointer over the symbol and then click the paste mouse button.
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To recall entry buffer values • Position the mouse pointer over the Recall button just to the right of the entry buffer text area, click the mouse button to bring up the Entry Buffer Recall dialog box, and then choose a string from that dialog box.
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To copy-and-paste from the entry buffer to the command line entry area 1 Place text to be pasted into the command line in the entry buffer text area. You may do that by: •...
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To use the action keys 1 If the action key uses the contents of the entry buffer, place the desired information in the entry buffer. 2 Position the mouse pointer over the action key and click the action key. Action keys are user-definable pushbuttons that perform interface or system functions.
Page 80
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys File Selection From the working directory, you can select an existing file name or specify a new file name. Entry Buffer Recall You can recall a previously used entry buffer text string, a predefined entry buffer text string, or a newly entered entry buffer string, to the entry buffer text area.
Page 81
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys Examples To use the File Selection dialog box: The file filter selects specific files. A list of filter-matching files from the current directory. A list of files previously accessed during the emulation session.
Page 82
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To use the Directory Selection dialog box: Label informs you of the type of list displayed. A list of predefined or previously accessed directories. A single click on a directory name from the list highlights the name and copies...
Chapter 4: Entering Commands Using Menus, the Entry Buffer, and Action Keys To access help information 1 Display the Help Index by choosing Help→General Topic... or Help→Command Line..2 Choose a topic of interest from the Help Index. The Help Index lists topics covering operation of the interface as well other information about the interface.
Chapter 4: Entering Commands Using the Command Line with the Mouse Using the Command Line with the Mouse When using the Graphical User Interface, the command line portion of the interface gives you the option of entering commands in the same manner as they are entered in the Softkey Interface.
Chapter 4: Entering Commands Using the Command Line with the Mouse Off means the command line is not displayed and you use only the pulldown menus and the action keys to control the interface. The command line area begins just below the status line and continues to the bottom of the emulator/analyzer window.
Chapter 4: Entering Commands Using the Command Line with the Mouse To edit the command line using the command line pushbuttons • To clear the command line, click the Clear pushbutton. • To clear the command line from the cursor position to the end of the line, click the Clear to end pushbutton.
Chapter 4: Entering Commands Using the Command Line with the Mouse To edit the command line using the command line popup menu • To clear the command line: position the mouse pointer within the Command Line entry area; press and hold the select mouse button until the Command Line popup menu appears;...
Chapter 4: Entering Commands Using the Command Line with the Mouse To recall commands 1 Click the pushbutton labeled Recall in the Command Line to display the dialog box. 2 Choose a command from the buffer list. (You can also enter a command directly into the text entry area of the dialog box.) Because all command entry methods in the interface —...
Chapter 4: Entering Commands Using the Command Line with the Keyboard Using the Command Line with the Keyboard When using the command line with the keyboard, you enter commands by pressing softkeys whose labels appear at the bottom of the screen. Softkeys provide for quick command entry, and minimize the possibility of errors.
Chapter 4: Entering Commands Using the Command Line with the Keyboard To recall commands • Press <CTRL>r or <CTRL>b. The most recent 20 commands you enter are stored in a buffer and may be recalled by pressing <CTRL>r. Pressing <CTRL>b cycles forward through the recall buffer. Examples For example, to recall and execute the command prior to the last command: <CTRL>r <CTRL>r <RETURN>...
Chapter 4: Entering Commands Using the Command Line with the Keyboard To access on-line help information • Use the help or ? commands. To access the command line’s on-line help information, type either help or ? on the command line. You will notice a new set of softkeys. By pressing one of these softkeys and <RETURN>, you can display information on that topic.
Chapter 4: Entering Commands Using Command Files Using Command Files You can execute a series of commands that have been stored in a command file. You can create command files by logging commands while using the interface or by using an editor on your host computer. Once you create a command file, you can execute the file in the emulation environment by typing the name of the file on the command line and pressing <RETURN>.
Page 93
The only way to pass a parameter containing a space is to enclose the parameter in double quotes (") or single quotes (’). Thus, to pass the parameter HP 9000 to a command file, you can use either "HP 9000" or ’HP 9000’.
Page 94
Chapter 4: Entering Commands Using Command Files When you execute CMDFILE, you will be prompted with: Define command file parameter [&ADDR] To pass the parameter, enter the address of the first memory location to be modified. You will then be prompted for &VALUE1. If you enter, for example, "0,-1,20, 0ffffh, 4+5*4", the first parameter "0,-1,20,"...
Chapter 4: Entering Commands Using Command Files characters for shell commands which are double quotes ("), single quotes (’), and the backslash symbol (\). For example, the following three lines are treated as a single shell command. The two hidden line feeds are ignored because they are inside the two single quotes (’): !awk ’/$/ { blanks++ } END { print blanks }...
Chapter 4: Entering Commands Using Command Files To playback (execute) a command file • Choose File→Log→Playback and use the dialog box to select the name of the command file you wish to execute. • Using the command line, enter the name of the command file and press <RETURN>.
Chapter 4: Entering Commands Using Pod Commands Using Pod Commands Pod commands are Terminal Interface commands. The Terminal Interface is the low-level interface that resides in the firmware of the emulator. A pod command used in the Graphical User Interface bypasses the interface and goes directly to the emulator.
Chapter 4: Entering Commands Using Pod Commands To display the pod commands screen • Choose Display→Pod Commands. The pod commands screen displays the results of pod (Terminal Interface) commands. To set the interface to use pod commands, choose Settings→Pod Command Keyboard. To use pod commands •...
Forwarding Commands to Other HP 64700 Interfaces To allow the emulator/analyzer interface to run concurrently with other HP 64700 interfaces like the high-level debugger and software performance analyzer, a background "daemon" process is necessary to coordinate actions in the interfaces.
Chapter 4: Entering Commands Forwarding Commands to Other HP 64700 Interfaces To forward commands to the software performance analyzer • Enter the forward perf "<command string>" command using the command line. Examples To send the "profile" command to the software performance analyzer:...
Page 102
Configuring the Emulator This chapter describes how to configure the emulator. You must map memory whenever you use the emulator. When you plug the emulator into a target system, you must configure the emulator so that it operates correctly in the target system. The configuration tasks are grouped into the following sections: •...
Chapter 5: Configuring the Emulator Using the Configuration Interface Using the Configuration Interface This section shows you how to modify, store, and load configurations using the emulator configuration interface. This section shows you how to: • Start the configuration interface. •...
Chapter 5: Configuring the Emulator Using the Configuration Interface To start the configuration interface • Choose Modify→Emulator Config... from the emulator/analyzer interface pulldown menu. • Using the command line, enter the modify configuration command. The configuration interface main menu (see example below) is displayed. The configuration sections that are presented depend on the hardware and features of your particular emulator.
Page 105
Chapter 5: Configuring the Emulator Using the Configuration Interface Examples The 80186/8/XL/EA/EB emulator configuration interface main menu is shown below. Clicking on one of these lines selects a particular configuration section. Clicking this button presents the questions for the selected configuration section.
Chapter 5: Configuring the Emulator Using the Configuration Interface To modify a configuration section 1 Start the emulator configuration interface. 2 Click on a section name in the configuration interface main menu, and click the "Modify Section" pushbutton. 3 Use the command line to answer the configuration questions. If you’re using the Softkey Interface: The configuration questions in the "General Items"...
Page 107
Chapter 5: Configuring the Emulator Using the Configuration Interface Each configuration section presents a window similar to the following. The menu bar. Configuration help text display area. Emulator status and error message line. Command line text entry area. Pushbutton softkeys. Command control and cursor control pushbuttons.
Chapter 5: Configuring the Emulator Using the Configuration Interface At the last question of a configuration section, you are asked if you wish to return to the main menu. You can click the "next_sec" softkey pushbutton to access the questions in the next configuration section. To recall a configuration question, click the "RECALL"...
Chapter 5: Configuring the Emulator Using the Configuration Interface For more information on how to use dialog boxes, refer to the "To use dialog boxes" description in the "Using Menus, the Entry Buffer, and Action Keys" section of the "Entering Commands" chapter. To change the configuration directory context •...
Chapter 5: Configuring the Emulator Using the Configuration Interface To display the configuration context • When answering the configuration questions, choose Display→Context... from the pulldown menu. The current directory context and the current configuration files are displayed in a window. Click the "Done" pushbutton when you wish to close the window. To access help information •...
Chapter 5: Configuring the Emulator Using the Configuration Interface To exit the configuration interface • When answering the configuration questions, choose File→Exit... from the pulldown menu (or type <CTRL>x), and click "Yes" in the confirmation dialog box. • From the configuration interface main menu, click the "Exit Window" button, and click "Yes"...
Enable/disable entry into the monitor after configuration. To select the type of processor to emulate • Answer the "Processor type for 64767A/B emulator?" question. When using the HP 64767A emulator: Answer "80C186EA" to emulate the 80C186EA microprocessor. Answer "80C188EA" to emulate the 80C188EA microprocessor.
Chapter 5: Configuring the Emulator Modifying the General Configuration Items To specify the target memory access size • Answer the "Target memory access size?" question. When accessing target system memory locations, the access mode specifies the type of microprocessor cycles that are used to read or write the value(s). For example, when the access mode is byte and a target system location is modified to contain the value 12345678H, byte instructions are used to write the byte values 12H, 34H, 56H, and 78H to target system memory.
Chapter 5: Configuring the Emulator Modifying the General Configuration Items To restrict the emulator to real-time runs • Answer "yes" to the "Restrict to real-time runs?" question. CAUTION If your target system circuitry is dependent on constant execution of program code, you should restrict the emulator to real-time runs.
Chapter 5: Configuring the Emulator Modifying the General Configuration Items To turn OFF the restriction to real-time runs • Answer "no" to the "Restrict to real-time runs?" question. All commands, regardless of whether or not they require a break to the emulation monitor, are accepted by the emulator.
(refer to the previous "Using the Configuration Interface" section). The emulation monitor program is an 80186 program that the emulation microprocessor executes as directed by the HP 64700 system controller. The emulation monitor program gives the system controller access to the target system.
Chapter 5: Configuring the Emulator Selecting the Emulation Monitor Program Comparison of Background and Foreground Monitor Programs Monitor Program Characteristic Background Foreground Takes up processor memory space Allows the emulator to respond to target system interrupts during monitor execution Can be customized To select the background monitor program 1 Answer "background"...
Chapter 5: Configuring the Emulator Selecting the Emulation Monitor Program To select the foreground monitor program 1 Answer "foreground" to the "Monitor type?" question. 2 Answer "yes" to the "Reset map (change of monitor type requires map reset)?" question. 3 Enter the segment portion of the monitor program’s base address in response to the "Monitor segment?"...
Page 119
Chapter 5: Configuring the Emulator Selecting the Emulation Monitor Program Locking Foreground Cycles to Target RDY If you wish to synchronize monitor cycles to the target system (that is, interlock the emulation and target system RDY on accesses to the monitor memory block), answer "yes"...
Chapter 5: Configuring the Emulator Selecting the Emulation Monitor Program To use a custom foreground monitor program 1 Answer "user_foreground" to the "Monitor type?" question. 2 Answer "yes" to the "Reset map (change of monitor type requires map reset)?" question. 3 Enter the segment portion of the monitor program’s base address in response to the "Monitor segment?"...
Page 121
Chapter 5: Configuring the Emulator Selecting the Emulation Monitor Program It is possible for foreground monitors to cause breaks. If these breaks occur Note consistently within approximately 10 ms of monitor entry, the emulator will become unresponsive. An example of this is a foreground monitor that accesses guarded memory.
Chapter 5: Configuring the Emulator Mapping Memory Mapping Memory Because the emulator can use target system memory or emulation memory (or both), it is necessary to map ranges of memory so that the emulator knows where to direct its accesses. Up to 16 ranges of memory can be mapped, and the resolution of mapped ranges is 1 Kbytes (that is, the memory ranges must begin on 1 Kbyte boundaries and must be at least 1 Kbytes in length).
Page 123
Chapter 5: Configuring the Emulator Mapping Memory Writes to emulation ROM will be inhibited. Writes by user code to target system memory locations mapped as ROM or guarded memory will result in a break to the monitor but are not inhibited (that is, the write still occurs). Emulation memory ranges can have the attributes: lock or nolock.
Page 124
Chapter 5: Configuring the Emulator Mapping Memory Public interrupt 00000 00003 00004 Abs. segment Private libcconst 85FCC 863A3 003D8 Word Public libdata 10110 10113 00004 Word Public ??DATA1 ??INIT 863A4 863A6 00003 Byte Common Notice the CODE and ROM sections occupy locations 0 through 10H and 80000H through 863EFH.
Chapter 5: Configuring the Emulator Mapping Memory To exit out of the memory mapper, enter: end <RETURN> To characterize unmapped ranges • Use the default softkey to characterize unmapped ranges. The default softkey in the memory mapper allows you to characterize unmapped memory ranges.
Chapter 5: Configuring the Emulator Mapping Memory To delete memory map ranges • Use the delete softkey to delete mapped ranges. Note that programs should be reloaded after deleting mapper terms. The memory mapper may re-assign blocks of emulation memory after the insertion or deletion of mapper terms.
Some analysis modules must have time tagging turned OFF if the processor clock rate will be greater than 16 MHz. If the analysis module in the HP 64700 cannot count time above 16 MHz, time counting will be disabled.
Chapter 5: Configuring the Emulator Setting the Debug/Trace Options To enable/disable breaks on writes to ROM • Answer "yes" to the "Break processor on write to ROM?" question to enable breaks; answer "no" to disable breaks. When breaks on writes to ROM are enabled: The emulator will break into the emulation monitor whenever the user program attempts to write to a memory region mapped as ROM.
Page 130
Using the Emulator This chapter describes general tasks you may wish to perform while using the emulator. These tasks are grouped into the following sections: • Loading absolute files. • Using symbols. • Executing user programs (starting, stopping, stepping, and resetting the emulator).
• Using the command line, enter the load <absolute_file> command. You can load absolute files into emulation or target system memory. You can load OMF-86 format absolute files. You can also load HP format absolute files. The store memory command creates HP format absolute files.
To store memory contents into absolute files • Using the command line, enter the store memory command. You can store emulation or target system memory contents into HP format absolute files on the host computer. Absolute files are stored in the current directory. If no extension is given for the absolute file name, it is given a ".X"...
Chapter 6: Using the Emulator Using Symbols Using Symbols If symbol information is present in the absolute file, it is loaded along with the absolute file (unless you use the nosymbols option). Both global symbols and symbols that are local to a program module can be displayed. Long symbol names can be truncated in the symbols display;...
Chapter 6: Using the Emulator Using Symbols Examples To load symbols from the demo program: load symbols ecs.x <RETURN> To display global symbols • Choose Display→Global Symbols. • Using the command line, enter the display global_symbols command. Listed are: address ranges associated with a symbol, the segment the symbol is associated with, and the offset of that symbol within the segment.
Chapter 6: Using the Emulator Using Symbols To display local symbols • When displaying symbols, position the mouse pointer over a symbol on the symbol display screen and click the select mouse button. • When displaying symbols, position the mouse pointer over the symbol, press and hold the select mouse button, and choose Display Local Symbols from the popup menu.
Page 136
Chapter 6: Using the Emulator Using Symbols Examples To use the Symbols Display popup menu: View the local symbols associated with the highlighted symbol by choosing this menu item.
Page 137
Chapter 6: Using the Emulator Using Symbols Using the command line: To display local symbols in a module: display local_symbols_in update_sys <RETURN> To display local symbols in a procedure: display local_symbols_in update_sys.save_points <RETURN>...
Page 138
Chapter 6: Using the Emulator Using Symbols To display address ranges associated with the high-level source line numbers: display local_symbols_in update_sys."update_sys.c": <RETURN>...
Chapter 6: Using the Emulator Using Symbols To display a symbol’s parent symbol • When displaying symbols, position the mouse pointer over the symbol, press and hold the select mouse button, and choose Display Parent Symbols from the popup menu. Examples View the parent symbol associated...
Chapter 6: Using the Emulator Using Symbols To copy-and-paste a full symbol name to the entry buffer • When displaying symbols, position the mouse pointer over the symbol, press and hold the select mouse button, and choose Cut Full Symbol Name from the popup menu.
Chapter 6: Using the Emulator Using Context Commands Using Context Commands The commands in this section display and control the directory and symbol contexts for the interface. Directory context. The current directory context is the directory accessed by all system references for files—primarily load, store, and copy commands—if no explicit directory is mentioned.
Chapter 6: Using the Emulator Using Context Commands To display the current directory and symbol context • Choose Display→Context. • Using the command line, enter the pwd and pws commands. The current directory and working symbol contexts are displayed, and also the name of the last executable file from which symbols were loaded.
Chapter 6: Using the Emulator Using Context Commands You can predefine directories and set the maximum number of entries for the Directory Selection dialog box by setting X resources (see the "Setting X Resources" chapter). To change the current working symbol context •...
Chapter 6: Using the Emulator Executing User Programs Executing User Programs You can use the emulator to run programs, break program execution into the monitor, step through the program by high-level source lines or by assembly language instructions, and reset the emulation processor. When displaying memory in mnemonic format, a highlighted bar shows the current program counter address.
Chapter 6: Using the Emulator Executing User Programs To run programs from an address • Position the mouse pointer in the entry buffer and enter the address you want to run from; then, choose Execution→Run→from (). • Using the command line, enter the run from <address> command. Examples To run from address 920H: run from 920h <RETURN>...
Chapter 6: Using the Emulator Executing User Programs A run from reset command can also be entered while the emulator is plugged into a powered-down target system. In this case, the emulator will run from the normal reset address (0FFFF0H) when the target system powers up and releases the RESET input.
Chapter 6: Using the Emulator Executing User Programs To stop (break from) user program execution • Choose Execution→Break. • Using the command line, enter the break command. This command generates a break to the background monitor. Software breakpoints and the run until command allow you to stop execution at particular points in the user program.
Chapter 6: Using the Emulator Executing User Programs Examples To step through instructions associated with the high-level source lines at the current program counter: step source <RETURN> To step through instructions associated with high-level source lines at address "main": step source from main <RETURN> To step assembly-level instructions •...
Chapter 6: Using the Emulator Executing User Programs To reset the emulation processor • Choose Execution→Reset. • Using the command line, enter the reset command. The reset command causes the processor to be held in a reset state until a break, run, or step command is entered.
Note Version A.04.00 or greater of the HP 64700 system firmware provides support for permanent as well as temporary breakpoints. If your version of HP 64700 system firmware is less than A.04.00, only temporary breakpoints are supported.
Chapter 6: Using the Emulator Using Software Breakpoints ROM. (You can, however, copy target ROM to emulation memory by storing the contents of target ROM to an absolute file, re-mapping the range as emulation RAM, and loading the absolute file.) This section shows you how to: •...
Page 152
Chapter 6: Using the Emulator Using Software Breakpoints The status of a breakpoint can be: temporary Which means the temporary breakpoint has been set but not encountered during program execution. These breakpoints are removed when the breakpoint is encountered. pending Which means the temporary breakpoint has been set but not encountered during program execution.
Chapter 6: Using the Emulator Using Software Breakpoints To enable/disable breakpoints • Choose the Breakpoints→Enable toggle. • When displaying the breakpoint list, press and hold the select mouse button and then choose Enable/Disable Software Breakpoints from the popup menu. • Using the command line, enter the modify software_breakpoints enable or modify software_breakpoints disable command.
Page 154
Chapter 6: Using the Emulator Using Software Breakpoints Examples To enable software breakpoints using the breakpoints display popup menu: Bring up menu and choose this item to change states.
• Using the command line, enter the modify software_breakpoints set <address> permanent command. Permanent breakpoints are available if your version of HP 64700 system firmware is A.04.00 or greater. The breakpoints feature must be enabled before individual breakpoints can be set.
• Place an absolute or symbolic address in the entry buffer; then, choose Breakpoints→Temporary () (or Breakpoints→Set () if your version of HP 64700 system firmware is less than A.04.00). • Using the command line, enter the modify software_breakpoints set <address>...
Chapter 6: Using the Emulator Using Software Breakpoints Note that you must only set software breakpoints at memory locations which contain instruction opcodes (not operands or data). When displaying memory in mnemonic format, asterisks (*) appear next to breakpoint addresses. An asterisk shows the breakpoint is active. Also, if assembly level code is being displayed, the disassembled instruction mnemonic at the breakpoint address will show the breakpoint instruction.
Chapter 6: Using the Emulator Using Software Breakpoints To re-activate a breakpoint • When displaying breakpoints, position the mouse pointer over the line displaying the inactivated breakpoint and click the select mouse button. Or, press and hold the select mouse button and choose Set/Inactivate Breakpoint from the popup menu. The "inactivated"...
Page 159
Chapter 6: Using the Emulator Using Software Breakpoints Examples To re-activate breakpoints using the breakpoints display popup menu: Change status with a mouse click on this line (menu and highlight do not appear). Choose this menu item to change the state of the highlighted breakpoint.
Chapter 6: Using the Emulator Using Software Breakpoints To clear a breakpoint • When displaying memory in mnemonic format, position the mouse pointer over the program line at which you wish to clear a currently set breakpoint (notice the asterisk at the left of the line) and click the select mouse button. Or, press and hold the select mouse button and choose Set/Clear Software Breakpoint from the popup menu.
Page 161
Chapter 6: Using the Emulator Using Software Breakpoints Examples To clear a software breakpoint using the breakpoints display popup menu: Bring up the menu and choose this item to clear the highlighted breakpoint.
Chapter 6: Using the Emulator Using Software Breakpoints To clear all breakpoints • When displaying breakpoints, position the mouse pointer within the Breakpoints Display screen, press and hold the select mouse button, and choose Clear (delete) All Breakpoints from the popup menu. •...
Chapter 6: Using the Emulator Displaying and Modifying Registers Displaying and Modifying Registers This section describes tasks related to displaying and modifying emulation processor registers. You can display the contents of an individual register or of all the registers. The register classes and names are listed in the following table.
Page 164
Chapter 6: Using the Emulator Displaying and Modifying Registers Register Class Register Description pollsts Poll Status (Programmable imask Interrupt Mask interrupt primsk Priority Mask inserv In-Service controller Interrupt Request registers) reqst intsts Interrupt Status tcucon Timer Control dma0con DMA 0 Control (80186/8/XL/EA Only) dma1con DMA 1 Control (80186/8/XL/EA Only) scucon...
Page 165
Chapter 6: Using the Emulator Displaying and Modifying Registers Register Class Register Description d1srcl Source Pointer Low (DMA Channel d1srch Source Pointer High 1 registers - d1dstl Destination Pointer Low 80186/8/XL/EA d1dsth Destination Pointer High Only) d1tc Transfer Count d1con Control Word b0cmp Channel 0 Baud Rate Select...
Chapter 6: Using the Emulator Displaying and Modifying Registers To display register contents • Choose Display→Registers. • Using the command line, enter the display registers command. When displaying registers, you can display classes of registers and individual registers.
Chapter 6: Using the Emulator Displaying and Modifying Registers To modify register contents • Choose Modify→Registers... and use the dialog box to name the register and specify its value. Clicking the "Recall" pushbutton lets you select register names and values from predefined or previously specified entries.
Chapter 6: Using the Emulator Displaying and Modifying Memory Displaying and Modifying Memory You can display and modify the contents of memory in hexadecimal formats and in real number formats. You can also display the contents of memory in assembly language mnemonic format.
Chapter 6: Using the Emulator Displaying and Modifying Memory To display memory in mnemonic format • To display memory at a particular address, place an absolute or symbolic address in the entry buffer; then, choose Display→Memory→Mnemonic (), or, using the command line, enter the display memory <address>...
Chapter 6: Using the Emulator Displaying and Modifying Memory To display memory in hexadecimal format • Place an absolute or symbolic address in the entry buffer; then, choose Display→Memory→Hex () and select the size from the cascade menu. • Using the command line, enter the display memory <address> blocked <size> command.
Chapter 6: Using the Emulator Displaying and Modifying Memory To display memory in blocked byte format: display memory ascii_old_data blocked bytes <RETURN> To display memory in real number format • Place an absolute or symbolic address in the entry buffer; then, choose Display→Memory→Real () and select the size from the cascade menu.
Chapter 6: Using the Emulator Displaying and Modifying Memory Examples To display memory in 64-bit real number format: display memory real long <RETURN> To display memory at an address • Place an absolute or symbolic address in the entry buffer; then, choose Display→Memory→At ().
Chapter 6: Using the Emulator Displaying and Modifying Memory To display memory repetitively • Choose Display→Memory→Repetitively. • Using the command line, enter the display memory repetitively command. The memory display is constantly updated. The format is specified by the last memory display command.
Chapter 6: Using the Emulator Displaying Data Values Displaying Data Values The data values display lets you view the contents of memory as data types. You can display data values in the following formats: bytes 8-bit integers unsigned 8-bit integers chars words 16-bit integers...
Chapter 6: Using the Emulator Displaying Data Values To clear the data values display and add a new item • Place an absolute or symbolic address in the entry buffer; then, choose Display→Data Values→New () and select the data type from the cascade menu. •...
Chapter 6: Using the Emulator Changing the Interface Settings Changing the Interface Settings This section shows you how to: • Set the source/symbol modes. • Set the display modes. To set the source/symbol modes • To display assembly language mnemonics with absolute addresses, choose Settings→Source/Symbol Modes→Absolute, or, using the command line, enter the set source off symbols off command.
Chapter 6: Using the Emulator Changing the Interface Settings To set the display modes • Choose Settings→Display Modes... to open the display modes dialog box. Press and hold the select mouse button and drag the mouse to select "Source Only", "Source Mixed", or "Off".
Page 178
Chapter 6: Using the Emulator Changing the Interface Settings Source/Symbols View Source in Memory specifies whether source lines are included, mixed with assembly code, or excluded from mnemonic memory displays. Source in Trace specifies whether source lines are included, mixed with stored states, or excluded from trace displays.
Chapter 6: Using the Emulator Using System Commands Using System Commands With the Softkey Interface system commands, you can: • Set UNIX environment variables while in the Softkey Interface. • Display the name of the emulation module. • Display the event log. •...
Chapter 6: Using the Emulator Using System Commands To display the name of the emulation module • Using the command line, enter the name_of_module command. While operating your emulator, you can verify the name of the emulation module. This is also the logical name of the emulator in the emulator device file. Examples To display the name of your emulation module: name_of_module <RETURN>...
Chapter 6: Using the Emulator Using System Commands To display the error log • Choose Display→Error Log. • Position the mouse pointer on the status line, press and hold the select mouse button, and then choose Display Error Log from the popup menu. •...
Chapter 6: Using the Emulator Using System Commands To edit files • Choose File→Edit→File and use the dialog box to specify the file name. • To edit a file based on an address in the entry buffer, place an address reference (either absolute or symbolic) in the entry buffer;...
Page 183
Chapter 6: Using the Emulator Using System Commands Examples To edit a file that defines a symbol: Choosing this menu item brings up a terminal window with an edit session open on the file where the highlighted symbol is defined.
Page 184
Chapter 6: Using the Emulator Using System Commands To edit a file at a source line: Choosing this menu item brings up a terminal window with an edit session open on the file where the highlighted source line exists.
Chapter 6: Using the Emulator Using System Commands To copy information to a file or printer • Choose File→Copy, select the type of information from the cascade menu, and use the dialog box to select the file or printer. • Using the command line, enter the copy command. ASCII characters are copied to the file or printer.
Chapter 6: Using the Emulator Using System Commands Registers ... Copies the current values of the BASIC register class to a file. To copy the contents of the other register classes, first display the registers in that class, and then use the File→Copy→Display ... command. Breakpoints ...
Chapter 6: Using the Emulator Using Simulated I/O Using Simulated I/O Simulated I/O is a feature of the emulator/analyzer interface that lets you use the same keyboard and display that you use with the interface to provide input to programs and display program output. To use simulated I/O, your programs must communicate with the simulated I/O control address and the buffer locations that follow it.
Chapter 6: Using the Emulator Using Simulated I/O Examples A message tells you whether the display is open or closed. You can modify the configuration to enable status messages. To use simulated I/O keyboard input • To begin using simulated I/O input, choose Settings→Simulated IO Keyboard. •...
This section shows you how to: • Store BBA data to a file. Refer to the HP Branch Validator (BBA) User’s Guide for complete details on the BBA product and how it works. To store BBA data to a file •...
Page 192
Using the Emulation Analyzer This chapter describes tasks you may wish to perform while using the emulation analyzer. These tasks are grouped into the following sections: • The basics of starting, stopping, and displaying traces. • Qualifying trigger and store conditions. •...
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces The Basics of Starting, Stopping, and Displaying Traces This section describes the basic tasks that relate to starting and stopping trace measurements. When you start a trace measurement, the analyzer begins looking at the data on the emulation processor’s bus and control signals on each analyzer clock signal.
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces To start a trace measurement • Choose Trace→Everything. • Using the command line, enter the trace command. The trace command tells the analyzer to begin monitoring the states which appear on the trace signals.
Page 195
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces Examples To display the trace status: display status <RETURN> The first line of the emulation trace status display shows the user trace has been "completed"; other possibilities are that the trace is still "running" or that the trace has been "halted".
Page 196
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces The "States" line shows the number of states that have been stored (out of the number that is possible to store) and the line numbers that the stored states occupy. (The trigger state is always stored on line 0.) The "Sequence term"...
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces To stop a trace measurement • Choose Trace→Stop. • Using the command line, enter the stop_trace command. You can, and most likely will, specify traces whose trigger or storage states are never found.
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces To display the trace • Choose Trace→Display or Display→Trace. • Using the command line, enter the display trace command. You can display captured trace data with the display trace command. The available options to the display trace command are described in the "Modifying the Trace Display"...
The next column shows the count information (time is counted by default). "Relative" indicates that each count is relative to the previous state. If your analyzer card contains external analysis (for example, HP 64703), the next column shows the data captured on the external trace signals.
Chapter 7: Using the Emulation Analyzer The Basics of Starting, Stopping, and Displaying Traces To change the trace depth • Using the command line, enter the display trace depth command. The display trace depth command allows you to specify the number of states that are displayed.
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions Qualifying Trigger and Store Conditions This section describes tasks relating to the qualification of trigger and storage states. You can trigger on, or store, specific states or specific values on a set of trace signals (which are identified by trace labels).
Page 202
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions Hexadecimal (example: 0a7fh). You must precede any hexadecimal number that begins with an A, B, C, D, E, or F with a zero. Don’t care digits may be included in binary, octal, or hexadecimal numbers and they are represented by the letters X or x.
Page 203
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions However, you cannot add two symbols unless one of them is an EQU type symbol. Emulation Analyzer Trace Signals When you qualify states, you specify values that should be found on the analyzer trace signals.
Page 204
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions State Qualifiers Whenever a state can be specified in the trace command (trigger state, storage state, prestore state, etc.), you will see the following softkeys that allow you to qualify the state: address The value following this softkey is searched for on the lines that...
Page 205
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions Predefined Values for Qualifiers When you specify status qualifiers for analyzer states (by pressing the status softkey), you will be given the following softkeys which are predefined values for the qualifiers. Qualifier Status Bits (31..20) Description...
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To qualify the trigger state and position • Enter a trigger state specification in the entry buffer; then, choose Trace→After (), Trace→About (), or Trace→Before (). • When displaying memory in mnemonic format, position the mouse pointer over the source line where you want to set the trace trigger, press and hold the select mouse button and choose Trace After, Trace Before, or Trace About from the popup menu.
Page 207
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions Examples Suppose you want to look at the execution of the demo program after the call of the "update_system()" function (main.c: line 102) occurs. To trigger on this address, enter: trace after address main."main.c": line 102 <RETURN>...
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To trigger on a number of occurrences of some state • Use the occurs <#TIMES> after specifying the trigger state. When specifying a trigger state, you can include an occurrence count. The occurrence count specifies that the analyzer trigger on the Nth occurrence of some state.
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To qualify states stored in the trace • Enter a storage state specification in the entry buffer; then, choose Trace→Only (). • Using the command line, use the only option in the trace command. By default, all captured states are stored;...
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To prestore states before qualified store states • Enter a storage state specification in the entry buffer; then, choose Trace→Only () Prestore. • Use the prestore option in the trace command. Prestore allows you to save up to two states which precede a normal store state.
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To change the count qualifier • Use the counting option in the trace command. After initializing the analyzer, the default count qualifier is "off". When counting is turned OFF, up to 1024 states can be stored in the trace. When you count states, the counter is incremented each time the state is captured (not necessarily stored) by the analyzer.
Page 212
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions Examples Suppose you want to know how many loops of the program occur between calls of the "do_sort" function. To change the count qualifier to count a state that occurs once for each loop of the program, enter: trace only do_sort status exec counting state main."main.c": line 102 status exec <RETURN>...
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To trace until the analyzer is halted • Choose Trace→Until Stop. • Using the command line, enter the trace on_halt command. The trace on_halt command allows you to prevent triggering. In other words, the trace runs until you enter the stop_trace command.
Chapter 7: Using the Emulation Analyzer Qualifying Trigger and Store Conditions To break emulator execution on the analyzer trigger • Enter a trigger state specification in the entry buffer; then, choose Trace→Until (). • When displaying memory in mnemonic format, position the mouse pointer over the program line which you wish to trace before, press and hold the select mouse button and choose Trace Until from the popup menu.
Chapter 7: Using the Emulation Analyzer Using the Sequencer Using the Sequencer When you use the analyzer’s sequencer, you can specify traces that trigger on a series, or sequence, of states. You can specify a state which, when found, causes the analyzer to restart the search for the sequence of states.
Page 216
Chapter 7: Using the Emulation Analyzer Using the Sequencer Examples In the demo program, suppose you wish to trigger on the following sequence of events: the "save_points" function, the "interrupt_sim" function, and finally the "do_sort" function. Also, suppose you wish to store only opcode fetches of the assembly language PUSH BP instruction (whose opcode is 55H) to show function entry addresses.
Chapter 7: Using the Emulation Analyzer Using the Sequencer To specify a global restart state • Use the restart option to the trace command. When using the analyzer’s sequencer, an additional sequence restart term is also allowed. This restart is a "global restart"; that is, it applies to all the sequence terms. The restart term is a state which, when captured before the analyzer has found the trigger state, causes the search for the sequence of states to start over.
Chapter 7: Using the Emulation Analyzer Using the Sequencer Notice in the preceding trace (you may have to press <PREV> in order to see the states captured prior to the trigger) that, in addition to states captured in the sequence, "sq adv" is also shown next to states which cause a sequencer restart. To trace "windows"...
Page 219
Chapter 7: Using the Emulation Analyzer Using the Sequencer If you wish to combine the windowing and sequencing functions of the analyzer, there are some restrictions: • Up to four sequence terms are available when windowing is in effect. • Global restart is not available when windowing is in effect.
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display Modifying the Trace Display This section describes the options available when displaying trace lists. This section describes how to: • Display the trace about a line number. • Display the trace in absolute format. •...
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display the trace about a line number • Use the <LINE #> option to the display trace command. The <LINE #> trace display option allows you to specify the line number to be centered in the display.
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display the trace in absolute format • Use the absolute option to the display trace command. The absolute trace display option allows you to display status information in absolute format (binary, hex, or mnemonic). The absolute status mnemonic display is the same as default mnemonic display, except that opcodes are not disassembled.
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display the trace in mnemonic format • Use the mnemonic option to the display trace command. The mnemonic trace display option allows you to display the trace information in mnemonic format (that is, opcodes and status).
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display the trace with high-level source lines • Use the set source command. To include high-level source lines in the trace display, you must use the set command. The set command allows you to include symbolic information in trace, memory, register, and software breakpoint displays.
Page 225
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To set the number of source lines to be displayed at 12: set source on number_of_source_lines 12 <RETURN> display trace <RETURN>...
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display the trace with symbol information The set symbols on/off command allows you to specify that address information be displayed in terms of program symbols. Examples To display the trace with symbol information: set source off symbols on <RETURN>...
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To change column widths in the trace display • Use the set width command. The set width command allows you to change the width of the address and mnemonic (or absolute) columns in the trace list. Values from one to 80 can be entered.
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display time counts in absolute or relative format • Use the count option to the display trace command. Count information may be displayed two ways: relative (which is the default), or absolute.
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display the trace with addresses offset • Use the offset_by option to the display trace command. The offset_by trace display option allows you to cause the address information in the trace display to be offset by the amount specified.
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To return to the default trace display • Use the set default command. The set default command allows you to return to the default display. Examples To return to the default trace display: set default <RETURN>...
Chapter 7: Using the Emulation Analyzer Modifying the Trace Display To display external analyzer information • Use the external option to the display trace command. The external trace display option allows you to include data from the external analyzer in the trace list. External bits are displayed by default. If you do not wish to have the external bits information in the display, you can turn them off.
Chapter 7: Using the Emulation Analyzer Saving and Restoring Traces Saving and Restoring Traces The emulator/analyzer interface allow you to save trace commands and trace lists. You can restore trace commands in order to set up the same trace specification. You can restore traces in order to view trace data captured in the stored trace.
Chapter 7: Using the Emulation Analyzer Saving and Restoring Traces To restore trace commands • Choose File→Load→Trace Spec. • Using the command line, enter the load trace_spec command. Trace commands that are restored will always work, even if symbols have been changed;...
Chapter 7: Using the Emulation Analyzer Saving and Restoring Traces To save traces • Choose File→Store→Trace Data. • Using the command line, enter the store trace command. You can save a trace to a trace file and reload it at a later time. The trace is saved in a file named "trcfile.TR"...
Chapter 7: Using the Emulation Analyzer Saving and Restoring Traces To restore traces • Choose File→Load→Trace Data. • Using the command line, enter the load trace command. The restored trace depth is the depth specified when the trace was stored and cannot be increased.
Page 238
The SPMT allows you to make some of the measurements that are possible with the HP 64708 Software Performance Analyzer and its Graphical User Interface (HP B1487). The SPMT post-processes information from the analyzer trace list. When you end a performance measurement, the SPMT dumps the post-processed information to a binary file, which is then read using the perf32 report generator utility.
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Activity Performance Measurements Activity measurements are measurements of the number of accesses (reads or writes) within an address range. The SPMT shows you the percentage of analyzer trace states that are in the specified address range, as well as the percentage of time taken by those states.
Page 240
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Program Activity State Percent Rel = 0.18 Abs = 0.18 Mean = 0.90 Sdv = 0.88 Time Percent Rel = 0.16 Abs = 0.16 stack Address Range 40000H thru 43FFFH Memory Activity State Percent Rel = 11.72...
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Absolute count - state 5120 Absolute count - time - Us 2221.20 This section describes how to: • Set up the trace command for activity measurements. • Initialize activity performance measurements. •...
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Examples To specify a trace depth of 512: display trace depth 512 <RETURN> To trace after any state, store all states, and count time: trace counting time <RETURN> To initialize activity performance measurements •...
Page 243
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Initialization with User Defined Ranges You can specifically give the SPMT address ranges to use by placing the information in a file and entering the file name in the performance_measurement_initialize command. Address range files may contain program symbols (procedure name or static), user defined address ranges, and comments.
Page 244
Chapter 8: Making Software Performance Measurements Activity Performance Measurements You can also use the local_symbols_in option with procedure symbols; this allows you to measure activity related to the symbols defined in a single function or procedure. Restoring the Current Measurement The performance_measurement_initialize restore command allows you to restore old performance measurement data from the perf.out file in the current directory.
Page 245
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Examples Suppose the "addr_ranges" file contains the names of all the functions in the "ecs" demo program loop: combsort do_sort gen_ascii_data get_targets graph_data interrupt_sim proc_specific read_conditions save_points set_outputs strcpy8 update_system write_hdwr Since these labels are program symbols, you do not have to specify the address range associated with each label;...
Chapter 8: Making Software Performance Measurements Activity Performance Measurements To interpret activity measurement reports • View the performance measurement report. Activity measurements are measurements of the number of accesses (reads or writes) within an address range. The reports generated for activity measurements show you the percentage of analyzer trace states that are in the specified address range, as well as the percentage of time taken by those states.
Page 247
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Standard Deviation Deviation from the mean of state count. The following equation is used to calculate standard deviation: Where: Number of traces in the measurement. Average number of states in the range per trace. mean Sum of squares of states in the range per trace.
Page 248
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Error Tolerance and Confidence Level An approximate error may exist in displayed information. Error tolerance for a level of confidence is calculated using the mean of the standard deviations and the mean of the means. Error tolerance gives an indication of the stability of the information.
Page 249
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Label strcpy8 Address Range 800F8H thru 8016CH Memory Activity State Percent Rel = 21.89 Abs = 14.61 Mean = 74.80 Sdv = 154.20 Time Percent Rel = 23.01 Abs = 14.88 Program Activity State Percent Rel =...
Page 250
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Address Range 81C88H thru 81CAFH Memory Activity State Percent Rel = 6.82 Abs = 4.55 Mean = 23.30 Sdv = 104.20 Time Percent Rel = 6.04 Abs = 3.90 Program Activity State Percent Rel = 0.00...
Page 251
Chapter 8: Making Software Performance Measurements Activity Performance Measurements State Percent Rel = 5.77 Abs = 3.85 Mean = 19.70 Sdv = 88.10 Time Percent Rel = 5.95 Abs = 3.85 Program Activity State Percent Rel = 0.00 Abs = 0.00 Mean = 0.00...
Page 252
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Program Activity State Percent Rel = 0.00 Abs = 0.00 Mean = 0.00 Sdv = 0.00 Time Percent Rel = 0.00 Abs = 0.00 proc_spec_init Address Range 81C60H thru 81C87H Memory Activity State Percent Rel = 0.00...
Page 253
Chapter 8: Making Software Performance Measurements Activity Performance Measurements Mean Standard Dv 76.34 95% Confidence 146.45% Error tolerance Time count Relative Time - Us 1068.96 No hits within range, Summary not available for Program Activity Absolute Totals Absolute count - state 10240 Absolute count - time - Us 1652.72 The measurements for each label are printed in descending order according to the...
Chapter 8: Making Software Performance Measurements Duration Performance Measurements Duration Performance Measurements Duration measurements provide a best-case/worst-case characterization of code execution time. These measurements record execution times that fall within a set of specified time ranges. The analyzer trace command is set up to store only the entry and exit states of the module to be measured (for example, a C function or Pascal procedure).
Chapter 8: Making Software Performance Measurements Duration Performance Measurements If a module is entered at the normal point, and then exited by a point other than the defined exit point, the entry point will be ignored. It will be judged the same as any other unused prefetch, and no time-duration measurement will be made.
Page 256
Chapter 8: Making Software Performance Measurements Duration Performance Measurements trace after module_name start or module_name end only module_name start or module_name end counting time <RETURN> Where "symbol_entry" and "symbol_exit" are symbols from the user program. Or, where "module_name" is the name of a C function or Pascal procedure (and is listed as a procedure symbol in the global symbol display).
Chapter 8: Making Software Performance Measurements Duration Performance Measurements To initialize duration performance measurements • Use the performance_measurement_initialize command with the duration option. After you set up the trace command, you must tell the SPMT the time ranges to be used in the duration measurement.
Page 258
Chapter 8: Making Software Performance Measurements Duration Performance Measurements When no user defined time range file is specified, the following set of default time ranges are used. 1 us 10 us 10.1 us 100 us 100.1 us 500 us 500.1 us 1 ms 1.001 ms 5 ms 5.001 ms 10 ms 10.1 ms 20 ms...
Chapter 8: Making Software Performance Measurements Duration Performance Measurements To interpret duration measurement reports • View the performance measurement report. Duration measurements provide a best-case/worst-case characterization of code execution time. These measurements record execution times that fall within a set of specified time ranges.
Page 260
Chapter 8: Making Software Performance Measurements Duration Performance Measurements Standard Deviation Deviation from the mean of time. The following equation is used to calculate standard deviation: Where: Number of intervals. mean Average time. Sum of squares of time in the intervals. sumq Error Tolerance and Confidence Level An approximate error may exist in displayed information.
Page 261
Chapter 8: Making Software Performance Measurements Duration Performance Measurements Mean of the means (i.e., mean of the average times in each time range). Examples Consider the following duration measurement report (generated with the commands shown): display trace depth 512 <RETURN> trace after interrupt_sim start or interrupt_sim end only interrupt_sim start or interrupt_sim end counting time <RETURN>...
Page 262
Chapter 8: Making Software Performance Measurements Duration Performance Measurements From Address 800F7 File main(module)."/users/guest/demo/debug_env/hp64767/main.c" Symbolic Reference at interrupt_sim+A6 To Address 80051 File main(module)."/users/guest/demo/debug_env/hp64767/main.c" Symbolic Reference at _interrupt_sim Number of intervals 1270 Maximum Time 132505.760 us Minimum Time 99983.480 us Avg Time 109555.798 us Statistical summary - for 10 traces...
Chapter 8: Making Software Performance Measurements Running Measurements and Creating Reports Running Measurements and Creating Reports Several performance measurement tasks are the same whether you are making activity or duration measurements. This section describes how to: • Run performance measurements. •...
Chapter 8: Making Software Performance Measurements Running Measurements and Creating Reports Examples To run the performance measurement, enter the following command: performance_measurement_run 20 <RETURN> The command above causes 20 traces to occur. The SPMT processes the trace information after each trace, and the number of the trace being processed is shown on the status line.
Chapter 8: Making Software Performance Measurements Running Measurements and Creating Reports To create a performance measurement report • Use the perf32 command at the UNIX prompt. The perf32 report generator utility must be used to read the information in the "perf.out"...
Page 266
Chapter 8: Making Software Performance Measurements Running Measurements and Creating Reports Examples Now, to generate a report from the "perf.out" file, type the following on the command line to fork a shell and run the perf32 utility: !perf32 | more...
Page 268
Using the External State Analyzer The HP 64703A analyzer provides an external analyzer with 16 external trace channels. These trace channels allow you to capture activity on signals external to the emulator, typically other target system signals. The external analyzer may be configured as an extension to the emulation analyzer, as an independent state analyzer, or as an independent timing analyzer.
Setting Up the External Analyzer Setting Up the External Analyzer This section assumes you have already connected the external analyzer probe to the HP 64700 Card Cage. Before you can use the external analyzer, you must: • Connect the external analyzer probe to the target system.
Chapter 9: Using the External State Analyzer Setting Up the External Analyzer To connect the external analyzer probe to the target system 1 Assemble the Analyzer Probe. The analyzer probe is a two-piece assembly, consisting of ribbon cable and 18 probe wires (16 data channels and the J and K clock inputs) attached to a connector. Either end of the ribbon cable may be connected to the 18 wire connector, and the connectors are keyed so they may only be attached one way.
Page 271
Chapter 9: Using the External State Analyzer Setting Up the External Analyzer 2 Attach grabbers to probe wires. Each of the 18 probe wires has a signal and a ground connection. Each probe wire is labeled for easy identification. Thirty-six grabbers are provided for the signal and ground connections of each of the 18 probe wires.
Page 272
Chapter 9: Using the External State Analyzer Setting Up the External Analyzer CAUTION Turn OFF target system power before connecting analyzer probe wires to the target system. The probe grabbers are difficult to handle with precision, and it is extremely easy to short the pins of a chip (or other connectors which are close together) with the probe wire while trying to connect it.
Chapter 9: Using the External State Analyzer Configuring the External Analyzer Configuring the External Analyzer After you have assembled the external analyzer probe and connected it to the emulator and target system, the next step is to configure the external analyzer. The external analyzer is a versatile instrument, and you can configure it to suit your needs.
Chapter 9: Using the External State Analyzer Configuring the External Analyzer To control the external analyzer with the emulator/analyzer interface 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify external analyzer configuration?" question. 3 Answer the "Should emulation control the external bits?" question. Answer "yes"...
Chapter 9: Using the External State Analyzer Configuring the External Analyzer To specify the threshold voltage 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify external analyzer configuration?" question. 3 Answer "yes" to the "Should emulation control the external bits?" question. 4 Answer the "Threshold voltage for bits 0-7 and J clock?"...
Chapter 9: Using the External State Analyzer Configuring the External Analyzer To specify the external analyzer mode 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify external analyzer configuration?" question. 3 Answer "yes" to the "Should emulation control the external bits?" question. 4 Answer the "External analyzer mode?"...
Chapter 9: Using the External State Analyzer Configuring the External Analyzer To specify the slave clock mode 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify external analyzer configuration?" question. 3 Answer "yes" to the "Should emulation control the external bits?" question. 4 Answer "state"...
Page 278
Chapter 9: Using the External State Analyzer Configuring the External Analyzer If no slave clock has appeared since the last master clock, the data on the lower 8 bits of the pod will be latched at the same time as the upper 8 bits. If more than one slave clock has appeared since the last master clock, only the first slave data will be available to the analyzer (see the figure below).
Page 279
Chapter 9: Using the External State Analyzer Configuring the External Analyzer Answer "demux" to specify the true demultiplexing mode. In this mode, only the lower eight external channels (0-7) are used. The slave clock (as specified by your answers to the next four questions) latches these bits and the emulation clock samples the same channels again.
Chapter 9: Using the External State Analyzer Configuring the External Analyzer If no slave clock has appeared since the last master clock, the data on the lower 8 bits of the pod will be the same as the upper 8 bits. If more than one slave clock has appeared since the last master clock, only the first slave data will be available to the analyzer.
Page 281
Chapter 9: Using the External State Analyzer Configuring the External Analyzer to extend past bit 15. Thus, the sum of the start bit number plus the width must not exceed 16. The "polarity?" question allows you to specify positive or negative logic for the external bits.
Page 284
Measurement Bus (CMB), you can start and stop up to 32 emulators at the same time. You can use the analyzer in one HP 64700 to arm (that is, activate) the analyzers in other HP 64700 Card Cages or to cause emulator execution in other HP 64700 Card Cages to break into the monitor.
Page 285
The location of the CMB and BNC connectors on the HP 64700 rear panel is shown in the following figure. CMB Connector BNC Connector Signal Lines on the CMB There are three bi-directional signal lines on the CMB connector on the rear panel of the emulator.
Page 286
READY false and will hold it false until it is ready to resume running. When an emulator is reset, it also drives CMB READY false. EXECUTE The CMB EXECUTE line is low true. Any HP 64700 on the CMB can drive this line. It serves as a global interrupt and is processed by both the emulator and the analyzer.
RS-232C communications. Applying RS-232C signals to the CMB connector is likely to result in damage to the HP 64700 Card Cage. To use the CMB, you will need one CMB cable for the first two emulators and one additional cable for every emulator after the first two.
Page 288
Chapter 10: Making Coordinated Measurements Setting Up for Coordinated Measurements 1 Connect the cables to the HP 64700 CMB ports.
* A modification must be performed by your HP Customer Engineer. Emulators using the CMB must use background emulation monitors. At least 3/4 of the HP 64700-Series emulators connected to the CMB must be powered up before proper operation of the entire CMB configuration can be assured.
Page 290
Chapter 10: Making Coordinated Measurements Setting Up for Coordinated Measurements 1 Connect one end of a 50 ohm coaxial cable with male BNC connectors to the HP 64700 BNC receptacle and the other end to the appropriate BNC receptacle on the other measuring instrument.
Chapter 10: Making Coordinated Measurements Starting/Stopping Multiple Emulators Starting/Stopping Multiple Emulators When HP 64700 Card Cages are connected together via the Coordinated Measurement Bus (CMB), you can start and stop up to 32 emulators at the same time. These are called synchronous measurements.
Chapter 10: Making Coordinated Measurements Starting/Stopping Multiple Emulators When you enter a normal trace command, trace at execute is disabled, and the analyzer ignores the CMB EXECUTE signal. Examples To enable synchronous measurements: specify run from 1e8h <RETURN> To trace when synchronous execution begins: specify trace after address main <RETURN>...
Using Trigger Signals The HP 64700 contains two internal lines, trig1 and trig2, over which trigger signals can pass from the emulator or analyzer to other HP 64700s on the Coordinated Measurement Bus (CMB) or other instruments connected to the BNC connector.
Page 294
CMB connector or BNC connector so that, when the analyzer finds its trigger condition, a trigger signal is driven on the HP 64700’s Coordinated Measurement Bus (CMB) or BNC connector. This can also be done for the external analyzer when it is configured as an independent state or timing analyzer.
Chapter 10: Making Coordinated Measurements Using Trigger Signals This section shows you how to: • Drive the emulation analyzer trigger signal to the CMB. • Drive the emulation analyzer trigger signal to the BNC connector. • Drive the external analyzer trigger signal to the CMB. •...
Chapter 10: Making Coordinated Measurements Using Trigger Signals To drive the emulation analyzer trigger signal to the BNC connector 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify interactive measurement specification?" question. 3 Answer "receive" to the "Should BNC drive or receive Trig1?" question. You could also drive the emulation analyzer trigger to the BNC over the trig2 internal line by specifying that the BNC should receive trig2 and that the emulation analyzer should drive trig2.
Chapter 10: Making Coordinated Measurements Using Trigger Signals To drive the external analyzer trigger signal to the BNC connector 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify interactive measurement specification?" question. 3 Answer "receive" to the "Should BNC drive or receive Trig2?" question. 4 Answer "drive"...
Chapter 10: Making Coordinated Measurements Using Trigger Signals To break emulator execution on signal from BNC 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify interactive measurement specification?" question. 3 Answer "drive" to the "Should BNC drive or receive Trig1?" question. You could also break emulator execution on a trigger signal from the BNC over the trig2 internal line by specifying that the BNC should drive trig2 and that the emulator break should receive trig2.
Chapter 10: Making Coordinated Measurements Using Trigger Signals To arm the emulation analyzer on signal from 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify interactive measurement specification?" question. 3 Answer "drive" to the "Should CMBT drive or receive Trig2?" question. 4 Answer "receive"...
Chapter 10: Making Coordinated Measurements Using Trigger Signals To arm the emulation analyzer on external analyzer trigger 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify interactive measurement specification?" question. 3 Answer "receive" to the "Should Analyzer drive or receive Trig2?" question. 4 Answer "drive"...
Chapter 10: Making Coordinated Measurements Using Trigger Signals To arm the external analyzer on signal from BNC 1 Enter the modify configuration command. 2 Answer "yes" to the "Modify interactive measurement specification?" question. 3 Answer "drive" to the "Should BNC drive or receive Trig2?" question. 4 Answer "receive"...
Page 304
Resources specifications in later files override those in earlier files. Files are read in the following order: The application defaults file. For example, /usr/lib/X11/app-defaults/HP64_Softkey in HP-UX or /usr/openwin/lib/X11/app-defaults/HP64_Softkey in SunOS. The $XAPPLRESDIR/HP64_Softkey file. (The XAPPLRESDIR environment variable defines a directory containing system-wide custom application defaults.)
Page 305
Chapter 11: Setting X Resources Resource specifications included in the command line with the -xrm option. System scheme files in directory /usr/hp64000/lib/X11/HP64_schemes. System-wide custom scheme files located in directory $XAPPLRESDIR/HP64_schemes. User-defined scheme files located in directory $HOME/.HP64_schemes (note the dot in the directory name). Scheme files group resource specifications for different displays, computing environments, and languages.
Application Resources for Schemes Resource Values Description HP64_Softkey.platformScheme HP-UX Names the subdirectory for platform SunOS specific schemes. This resource should be (custom) set to the platform on which the X server is running (and displaying the Graphical User Interface) if it is different than the platform where the application is running.
Page 307
Chapter 11: Setting X Resources To modify the Graphical User Interface resources Commonly Modified Application Resources Resource Values Description HP64_Softkey.lines Specifies the number of lines in the main (min. 18) display area. HP64_Softkey.columns Specifies the number of columns, in (min. 80) characters, in the main display area.
Page 308
The HP64_Softkey file contains the default definitions for the graphical interface application’s X resources. For example, on an HP 9000 computer you can use the following command to copy the complete HP64_Softkey file to HP64_Softkey.tmp (note that the HP64_Softkey file is several hundred lines long): cp /usr/lib/X11/app-defaults/HP64_Softkey HP64_Softkey.tmp...
Page 309
!HP64_Softkey.columns: Save your changes and exit the editor. 3 If the RESOURCE_MANAGER property exists (as is the case with HP VUE — if you’re not sure, you can check by entering the xrdb -query command), use the xrdb command to add the resources to the RESOURCE_MANAGER property. For example: xrdb -merge -nocpp HP64_Softkey.tmp...
3 Modify the $HOME/.HP64_schemes/<platform>/Softkey.<scheme> file. For example, you could modify the "$HOME/.HP64_schemes/HP-UX/Softkey.MyColor" file to change the defined foreground and background colors. Also, since the scheme file name is different than the default, you could comment out various resource settings to cause general foreground and background color definitions to apply to the Graphical User Interface.
Page 311
For example, to use the "$HOME/.HP64_schemes/HP-UX/Softkey.MyColor" color scheme file you would set the "HP64_Softkey.colorScheme" resource to "MyColor":...
Chapter 11: Setting X Resources To set up custom action keys To set up custom action keys • Modify the "actionKeysSub.keyDefs" resource. The "actionKeysSub.keyDefs" resource defines a list of paired strings. The first string defines the text that should appear on the action key pushbutton. The second string defines the command that should be sent to the command line area and executed when the action key is pushed.
Chapter 11: Setting X Resources To set initial recall buffer values To set initial recall buffer values • Modify the "entries" resource for the particular recall buffer. There are six popup recall buffers present in the Graphical User Interface. The resources for these popup recall buffers are listed in the following table.
Page 314
Chapter 11: Setting X Resources To set initial recall buffer values Examples To set the initial values for the directory selection dialog box when the Graphical User Interface is used with 80186/8/XL/EA/EB emulators, modify the "*i186xl*dirSelectSub.entries" resource: *i186xl*dirSelectSub.entries: \ "$HOME" \ ".."...
Chapter 11: Setting X Resources To set up demos or tutorials To set up demos or tutorials You can add demos or tutorials to the Graphical User Interface by modifying the resources described in the following tables. Demo Related Component Resources Resource Value Description...
Page 316
Chapter 11: Setting X Resources To set up demos or tutorials Tutorial Related Component Resources Resource Value Description *enableTutorial False Specifies whether True Help→Tutorial appears in the pulldown menu. *tutorialPopupSub.indexFile ./Xtutorial/Index-topics Specifies the file containing the list of topic and file pairs. *tutorialPopup.textColumns Specifies the width, in characters, of the of the tutorial...
Page 317
Chapter 11: Setting X Resources To set up demos or tutorials 2 Create the demo or tutorial index file. Each line in the index file contains first a quoted string that is the name of the topic which appears in the index popup and second the name of the file that is raised when the topic is selected.
Emulator/Analyzer Interface Commands This chapter describes the emulator/analyzer interface commands in alphabetical order. First, the syntax conventions are described and the commands are summarized. How Pulldown Menus Map to the Command Line The following table shows the items available in the pulldown menus and the command line commands to which they map.
Page 323
Chapter 12: Emulator/Analyzer Interface Commands Pulldown Command Line File→Log→Playback <command file> File→Log→Record log_commands to File→Log→Stop log_commands off File→Emul700→High-Level Debugger File→Emul700→Performance Analyzer File→Emul700→Emulator/Analyzer File→Emul700→Timing Analyzer File→Edit→File ! vi <file> ! no_prompt_before_exit File→Edit→At () Location ! vi +<line> <file> ! no_prompt_before_exit File→Edit→At PC Location ! vi +<line>...
Chapter 12: Emulator/Analyzer Interface Commands How Popup Menus Map to the Command Line The following tables show the items available in the popup menus and the command line commands to which they map. Mnemonic Memory Display Popup Command Line Set/Clear Breakpoint modify software_breakpoints set/clear --EXPR-- Edit Source ! vi +<line>...
Page 327
Chapter 12: Emulator/Analyzer Interface Commands Status Line Popup Command Line Remove Temporary Message Display Error Log display error_log Display Event Log display event_log Command Line On/Off (toggles command line) Command Line Popup Command Line Position Cursor, Replace Mode <INSERT CHAR> key (when in insert mode) Position Cursor, Insert Mode <INSERT CHAR>...
Chapter 12: Emulator/Analyzer Interface Commands Syntax Conventions Conventions used in the command syntax diagrams are defined below. Oval-shaped Symbols Oval-shaped symbols show options available on the softkeys and other commands that are available, but do not appear on softkeys (such as log_commands and wait). These appear in the syntax diagrams as: Rectangular-shaped Symbols Rectangular-shaped symbols contain prompts or references to other syntax...
Chapter 12: Emulator/Analyzer Interface Commands break break This command causes the emulator to leave user program execution and begin executing in the monitor. The behavior of break depends on the state of the emulator: running Break diverts the processor from execution of your program to the emulation monitor.
BBA information to a file. Then, you can generate reports based on the stored information. See Also Refer to the HP Branch Validator (BBA) User’s Guide for complete details on the bbaunload command syntax.
Chapter 12: Emulator/Analyzer Interface Commands cmb_execute cmb_execute The cmb_execute command causes the emulator to emit an EXECUTE pulse on its rear panel Coordinated Measurement Bus (CMB) connector. All emulators connected to the CMB (including the one sending the CMB EXECUTE pulse) and configured to respond to this signal will take part in the measurement.
Chapter 12: Emulator/Analyzer Interface Commands copy copy Use this command with various parameters to save or print emulation and analysis information. The copy command copies selected information to your system printer or listing file, or directs it to an UNIX process.
Page 334
Chapter 12: Emulator/Analyzer Interface Commands copy Depending on the information you choose to copy, default values may be options selected for the previous execution of the display command. For example, if you display memory locations 10h through 20h, then issue a copy memory to myfile command, myfile will list only memory locations 10h through 20h.
Page 335
Copies the information into a file without headings. pod_command This allows you to copy the most recent commands sent to the HP 64700 Series emulator/analyzer. printer This option specifies your system printer as the destination device for the copy command.
Chapter 12: Emulator/Analyzer Interface Commands copy io_port copy io_port This command copies the current values at I/O port locations to the selected destination. The I/O port contents are copied in the same format as specified in the last display memory command. Contents of I/O ports can be displayed if program runs are not restricted to real-time.
Page 337
Chapter 12: Emulator/Analyzer Interface Commands copy io_port specified in both commands is copied to the destination specified in the current command. Data is formatted as specified in the current command. The comma is also used as a delimiter between I/O port address values. Examples copy io_port 1h , 45h , 60h thru 80h , 0ffh to printer...
Chapter 12: Emulator/Analyzer Interface Commands copy local_symbols_in copy local_symbols_in This command lets you copy local symbols contained in a source file and relative segments (program, data, or common) to the selected destination. Local symbols are symbols that are children of the particular file or symbol defined by --SYMB--, that is, they are defined in that file or scope.
Chapter 12: Emulator/Analyzer Interface Commands copy memory copy memory This command copies the contents of a memory location or series of locations to the specified output. The memory contents are copied in the same format as specified in the last display memory command.
Page 340
Chapter 12: Emulator/Analyzer Interface Commands copy memory The parameters are as follows: --EXPR-- An expression is a combination of numeric values, symbols, operators, and parentheses, specifying a memory address or offset value. See the EXPR syntax diagram. A comma used immediately after memory in the command line appends the current copy memory command to the preceding display memory command.
Chapter 12: Emulator/Analyzer Interface Commands copy registers copy registers This command copies the contents of the processor registers to a file or printer. The copy register process does not occur in real-time. The emulation system must be configured for nonreal-time operation to list the registers while the processor is running.
Chapter 12: Emulator/Analyzer Interface Commands copy trace copy trace This command copies the contents of the trace buffer to a file or to the printer. Trace information is copied in the same format as specified in the last display trace command.
Chapter 12: Emulator/Analyzer Interface Commands display display This command displays selected information on your screen. You can use the <Up arrow>, <Down arrow>, <PREV>, and <NEXT> keys to view the displayed information. For software_breakpoints, data, memory, and trace displays you can use the <CTRL>g and <CTRL>f keys to scroll left and right if the information goes past the edge of the screen.
Page 344
Chapter 12: Emulator/Analyzer Interface Commands display event_log This option displays the recorded list of events. global_symbols This option lets you display a list of all global symbols in memory. local_symbols_in This option lets you display all the children of a given symbol. See the --SYMB-- syntax page and the Symbolic Retrieval Utilities User’s Guide for details on symbol hierarchy.
Chapter 12: Emulator/Analyzer Interface Commands display data display data The display data command can display the values of simple data types in your program. Using this command can save you time; otherwise, you would need to search through memory displays for the location and value of a particular variable. The address, identifier, and data value of each symbol may be displayed.
Page 346
Chapter 12: Emulator/Analyzer Interface Commands display data Symbols are normally set off until you give the command set symbols on. Otherwise, only the address, data type, and value of the data item will be displayed. The parameters are as follows: A leading comma allows you to append additional expressions to the previous display data command.
Page 347
Chapter 12: Emulator/Analyzer Interface Commands display data Examples display data Msg_A thru +17 char , Stack long <RETURN> set symbols on <RETURN> set width label 30 <RETURN> display data , Msg_B thru +17 char , Msg_Dest thru +17 char <RETURN> See Also The copy data and set commands.
Chapter 12: Emulator/Analyzer Interface Commands display global_symbols display global_symbols This command displays the global symbols defined for the current absolute file. Global symbols are symbols declared as global in the source file. They include procedure names, variables, constants, and file names. When the display global_symbols command is used, the listing will include the symbol name and its logical address.
Chapter 12: Emulator/Analyzer Interface Commands display io_port display io_port This command displays the contents of the specified I/O port location or series of locations. Initial values are the same as specified by the command: display io_port 0 absolute bytes Defaults are values specified in a previous display io_port command. The parameters are as follows: absolute Formats the I/O port listing in a single column.
Page 350
Chapter 12: Emulator/Analyzer Interface Commands display io_port --EXPR-- An expression is a combination of numeric values, symbols, operators, and parentheses, specifying an I/O port address. See the EXPR syntax diagram. repetitively Updates the I/O port listing display continuously. You should only use this to monitor I/O ports while running user code, since it is very CPU intensive.
Chapter 12: Emulator/Analyzer Interface Commands display local_symbols_in display local_symbols_in Displays the local symbols in a specified source file and their relative segment (program, data, or common). Local symbols of --SYMB-- are the ones which are children of the file and/or scope specified by --SYMB--.
Chapter 12: Emulator/Analyzer Interface Commands display memory display memory This command displays the contents of the specified memory location or series of locations.
Page 353
Chapter 12: Emulator/Analyzer Interface Commands display memory The memory contents can be displayed in mnemonic, hexadecimal, or real number format. In addition, the memory addresses can be listed offset by a value, which allows the information to be easily compared to the program listing. When displaying memory mnemonic and stepping, the next instruction that will step is highlighted.
Page 354
Chapter 12: Emulator/Analyzer Interface Commands display memory mnemonic This causes the memory listing to be formatted in assembly language instruction mnemonics with associated operands. When specifying mnemonic format, you should include a starting address that corresponds to the first byte of an operand to ensure that the listed mnemonics are correct.
Page 355
Chapter 12: Emulator/Analyzer Interface Commands display memory display memory 2000h thru 202fh , 2100h real long <RETURN> display memory 400h mnemonic <RETURN> set symbols on <RETURN> set source on <RETURN> display memory main mnemonic <RETURN> See Also The copy memory, modify memory, set, and store memory commands.
Chapter 12: Emulator/Analyzer Interface Commands display registers display registers This command displays the current contents of the emulation processor registers. If a step command just executed, the mnemonic representation of the last instruction is also displayed, if the current display is the register display. This process does not occur in real-time.
Chapter 12: Emulator/Analyzer Interface Commands display simulated_io display simulated_io This command displays information written to the simulated I/O display buffer. After you have enabled polling for simulated I/O during the emulation configuration process, six simulated I/O addresses can be defined. You then define files used for standard input, standard output, and standard error.
Chapter 12: Emulator/Analyzer Interface Commands display software_breakpoints display software_breakpoints This command displays the currently defined software breakpoints and their status. If the emulation session is continued from a previous session, the listing will include any previously defined breakpoints. The column marked "status" shows whether the breakpoint is pending, inactivated, or unknown.
Chapter 12: Emulator/Analyzer Interface Commands display trace display trace This command displays the contents of the trace buffer. Captured information can be presented as absolute hexadecimal values or in mnemonic form. The processor status values captured by the analyzer can be listed mnemonically or in hexadecimal or binary form.
Page 360
Chapter 12: Emulator/Analyzer Interface Commands display trace Addresses captured by the analyzer are physical addresses. The offset_by option subtracts the specified offset from the addresses of the executed instructions before listing the trace. With an appropriate entry for offset, each instruction in the listed trace will appear as it does in the assembled or compiled program listing.
Page 361
Chapter 12: Emulator/Analyzer Interface Commands display trace external binary Displays the external analyzer trace list in binary format. <external This option displays a defined external analyzer label. _label> Displays the external analyzer trace list in hexadecimal format. Use this option to turn off the external trace list display. then This allows you to display multiple external analysis labels.
Page 362
Chapter 12: Emulator/Analyzer Interface Commands display trace status binary Lists absolute status information in binary form. Lists absolute status information in hexadecimal form. mnemonic Lists absolute status information in mnemonic form. Examples display trace count absolute <RETURN> display trace absolute status binary <RETURN> display trace mnemonic <RETURN>...
The emulation system is released for other users. If you do not release the emulation system when ending, others cannot access it. Examples end <RETURN> end release_system <RETURN> See Also The "Exiting the Emulator/Analyzer Interface" section in the "Starting and Exiting HP 64700 Interfaces" chapter.
Chapter 12: Emulator/Analyzer Interface Commands --EXPR-- --EXPR-- An expression is a combination of numeric values, symbols, operators, and parentheses used to specify address, data, status, executed address, or any other value used in the emulation commands. The function of an expression (--EXPR--) is to let you define the address, data, status, or executed address expression that fits your needs.
Page 365
Chapter 12: Emulator/Analyzer Interface Commands --EXPR-- valid when "C" appears on the status line, which indicates a valid expression has been defined. <NUMBER> This can be an integer in any base (binary, octal, decimal, or hexadecimal), or can be a string of characters enclosed with quotation marks. <OP>...
Page 366
Chapter 12: Emulator/Analyzer Interface Commands --EXPR-- disp_buf thru +25 is the same as disp_buf thru disp_buf + 25 Examples 05fxh 0ffffh disp_buf + 5 symb_tbl + (offset / 2) start mod_name: line 15 end See Also The SYMB syntax description.
Chapter 12: Emulator/Analyzer Interface Commands forward forward This command lets you forward commands to other HP 64700 interfaces that use the "emul700dmn" daemon process to coordinate actions between the interfaces. Sends messages to the Broadcast Message Server or BMS. <COMMAND>...
Chapter 12: Emulator/Analyzer Interface Commands help help Displays information about system and emulation features during an emulation session. Typing help or ? displays softkey labels that list the options on which you may receive help. When you select an option, the system will list the information to the screen.
Chapter 12: Emulator/Analyzer Interface Commands load load This command transfers absolute files from the host computer into emulation or target system RAM. With other parameters, the load command can load emulator configuration files, trace records, trace specifications, or symbol files. The absolute file contains information about where the file is stored.
Page 371
Chapter 12: Emulator/Analyzer Interface Commands load The parameters are as follows: configuration This option specifies that a previously created emulation configuration file will be loaded into the emulator. You can follow this option with a file name. Otherwise the previously loaded configuration will be reloaded. emul_mem Loads only those portions of the absolute file that reside in memory ranges mapped as emulation memory.
Chapter 12: Emulator/Analyzer Interface Commands log_commands log_commands This command allows you to record commands that are executed during an emulation session. Commands executed during an emulation session are stored in a file until this feature is turned off. This is a handy method for creating command files. To execute the saved commands after the file is closed, type the filename on the command line.
Chapter 12: Emulator/Analyzer Interface Commands modify modify This command allows you to observe or change information specific to the emulator. The modify command is used to: • Modify contents of memory (as integers, strings, or real numbers). • Modify the contents of the processor registers. •...
Chapter 12: Emulator/Analyzer Interface Commands modify configuration modify configuration This command allows you to view and edit the current emulation configuration items. The configuration questions are presented in sequence with either the default response, or the previously entered response. You can select the currently displayed response by pressing <RETURN>.
Chapter 12: Emulator/Analyzer Interface Commands modify io_port modify io_port This command lets you write values to I/O port locations. You can modify the contents of individual I/O port locations to individual values. Or, you can modify a range of I/O port locations to a single value or a sequence of values.
Page 376
Chapter 12: Emulator/Analyzer Interface Commands modify io_port If the address range contains an odd number of bytes and a word operation is being executed, the last word of the address range will be modified. Thus the I/O port modification will stop one byte after the end of the specified address range. If an error occurs in writing to I/O ports, the modification is aborted at the address where the error occurred.
Chapter 12: Emulator/Analyzer Interface Commands modify keyboard_to_simio modify keyboard_to_simio This command allows the keyboard to interact with your program through the simulated I/O software. When the keyboard is activated for simulated I/O, its normal interaction with emulation is disabled. The emulation softkeys are blank and the softkey labeled "suspend"...
Chapter 12: Emulator/Analyzer Interface Commands modify memory modify memory This command lets you modify the contents of selected memory locations. You can modify the contents of individual memory locations to individual values. Or, you can modify a range of memory to a single value or a sequence of values. Modify a series of memory locations by specifying the address of the first location in the series to be modified, and the values to which the contents of that location and successive locations are to be changed.
Page 379
Chapter 12: Emulator/Analyzer Interface Commands modify memory A range of memory can be modified such that the content of each location in the range is changed to the single specified value, or to a single or repeated sequence. This type of memory modification is done by entering the limits of the memory range to be modified (--EXPR-- thru --EXPR--) and the value or list of values (--EXPR--, ...
Page 380
Chapter 12: Emulator/Analyzer Interface Commands modify memory newline horizontal tab backspace carriage return form feed backslash single quote \’ bit pattern \ooo (where ooo is an octal number) thru This option lets you specify a range of memory locations to be modified. This lets you specify values to which the selected memory locations will be changed.
Chapter 12: Emulator/Analyzer Interface Commands modify register modify register This command allows you to modify the contents of the emulation processor internal registers. The entry you specify for <REGISTER> determines which register is modified. Individual fields of control registers may be modified. Register modification cannot be performed during real-time operation of the emulation processor.
Chapter 12: Emulator/Analyzer Interface Commands modify software_breakpoints modify software_breakpoints This command changes the specification of software breakpoints. Software breakpoints provide a way to accurately stop the execution of your program at one or more instruction locations. When a software breakpoint is set, the instruction that is normally at that location is replaced with an INT 3 instruction.
Page 383
Chapter 12: Emulator/Analyzer Interface Commands modify software_breakpoints The parameters are as follows: clear This option erases the specified breakpoint address. If no breakpoints are specified in the command, all currently specified breakpoints are cleared. disable This option turns off the software breakpoint capability. enable This option allows you to modify the software breakpoint specification.
Chapter 12: Emulator/Analyzer Interface Commands performance_measurement_end performance_measurement_end This command stores data previously generated by the performance_measurement_run command, in a file named "perf.out" in the current working directory. The file named "perf.out" is overwritten each time this command is executed. Current measurement data existing in the emulation system is not altered by this command.
Chapter 12: Emulator/Analyzer Interface Commands performance_measurement_initialize performance_measurement_initialize This command sets up performance measurements. The emulation system will verify whether a symbolic database has been loaded. If a symbolic database has been loaded, the performance measurement is set up with the addresses of all global procedures and static symbols. If a valid database has not been loaded, the system will default to a predetermined set of addresses, which covers the entire emulation processor address range.
Page 386
Chapter 12: Emulator/Analyzer Interface Commands performance_measurement_initialize duration This option sets the measurement mode to "duration." Time ranges will default to a predetermined set (unless a user-defined file of time ranges is specified). <FILE> This represents a file you specify to supply user-defined address or time ranges to the emulator.
Chapter 12: Emulator/Analyzer Interface Commands performance_measurement_run performance_measurement_run This command begins a performance measurement. This command causes the emulation system to reduce trace data contained in the emulation analyzer, which will then be used for analysis by the performance measurement software. The default is to process data presently contained in the analyzer.
Page 388
Chapter 12: Emulator/Analyzer Interface Commands performance_measurement_run Refer to the "Making Software Performance Measurements" chapter for examples of performance measurement specification and use.
Page 389
Chapter 12: Emulator/Analyzer Interface Commands pod_command pod_command Allows you to control the emulator through the direct HP 64700 Terminal Interface. The HP 64700 Card Cage contains a low-level Terminal Interface, which allows you to control the emulator’s functions directly. You can access this interface using pod_command.
Chapter 12: Emulator/Analyzer Interface Commands pod_command The parameters are as follows: keyboard Enters an interactive mode where you can simply type Terminal Interface commands (unquoted) on the command line. Use display pod_command to see the results returned from the emulator. <POD_CMD>...
Chapter 12: Emulator/Analyzer Interface Commands QUALIFIER QUALIFIER The QUALIFIER parameter is used with trace only, trace prestore, and TRIGGER to specify states captured during the trace measurement. You may specify a range of states (RANGE) or specific states (STATE) to be captured.
Page 392
Chapter 12: Emulator/Analyzer Interface Commands QUALIFIER trace only address range mod_name:clear thru read_input <RETURN> See Also The trace command.
Chapter 12: Emulator/Analyzer Interface Commands RANGE RANGE The RANGE parameter allows you to specify a condition for the trace measurement, made up of one or more values. The range option can be used for state qualifier labels. Range can only be used once in a trace measurement.
Page 394
Chapter 12: Emulator/Analyzer Interface Commands RANGE This specifies that the analyzer search for the logical "not" of the specified range (this includes any addresses not in the specified range). range This indicates a range of addresses to be specified (--EXPR-- thru --EXPR--). status The value following this softkey is searched for on the lines that monitor other emulation processor signals.
Chapter 12: Emulator/Analyzer Interface Commands reset reset This command suspends target system operation and reestablishes initial emulator operating parameters, such as reloading control registers. The reset signal is latched when the reset command is executed and released by either the run or break command. See Also The break and run commands.
If the emulator is configured to participate in the READY signal on the CMB, then this emulator will release the READY signal so that it will go TRUE if all other HP 64700 emulators participating on that signal are also ready. See the cmb_execute command description.
Page 397
Chapter 12: Emulator/Analyzer Interface Commands address Specifies an address for a temporary register breakpoint that will be programmed into one of the processor’s two breakpoint registers. Up to two addresses may be specified. --EXPR-- An expression is a combination of numeric values, symbols, operators, and parentheses, specifying a memory address.
Chapter 12: Emulator/Analyzer Interface Commands SEQUENCING SEQUENCING Lets you specify complex branching activity that must be satisfied to trigger the analyzer. Sequencing provides you with parameters for the trace command that let you define branching conditions for the analyzer trigger. You are limited to a total of seven sequence terms, including the trigger, if no windowing specification is given.
Page 399
Chapter 12: Emulator/Analyzer Interface Commands SEQUENCING occurs Selects the number of times a particular qualifier must be found before the analyzer proceeds to the next sequence term or the trigger term. This option is not available when trace windowing is in use. See the WINDOW syntax pages. <#TIMES>...
Page 401
Chapter 12: Emulator/Analyzer Interface Commands Controls the display format for the data, memory, register, software breakpoint, and trace displays.With the set command, you can adjust the display format results for various measurements, making them easier to read and interpret. Formatting of source lines, symbol display selection and width, and update after measurement can be defined to your needs.
Page 402
Chapter 12: Emulator/Analyzer Interface Commands langinfo In certain languages, you may have symbols with the same names but different types. For example, in IEEE695, you may have a file named main.c and a procedure named main. SRU would identify these as main(module) and main(procedure).
Page 403
Chapter 12: Emulator/Analyzer Interface Commands <NUMSRC> This prompts you for the number of source lines to be displayed. Values in the range 1 through 50 may be entered. source This option prevents inclusion of source lines in the trace and memory mnemonic display lists.
Page 404
Chapter 12: Emulator/Analyzer Interface Commands <VALUE> Specifies the logical value to which a particular UNIX environment variable is to be set. width source This allows you to specify the width (in columns) of the source lines in the memory mnemonic display. To adjust the width of the source lines in the trace display, increase the widths of the label and/or mnemonic fields.
Chapter 12: Emulator/Analyzer Interface Commands specify specify This command prepares a run or trace command for execution, and is used with the cmb_execute command. When you precede a run or trace command with specify, the system does not execute your command immediately. Instead, it waits until until an EXECUTE signal is received from the Coordinated Measurement Bus or until you enter a cmb_execute command.
Page 406
Chapter 12: Emulator/Analyzer Interface Commands specify The parameters are as follows: disable This option turns off the specify condition of the run process. from --EXPR-- This is used with the specify run from command. An expression is a combination of numeric values, symbols, operators, and parentheses, specifying a memory address.
Chapter 12: Emulator/Analyzer Interface Commands STATE STATE This parameter lets you specify a trigger condition as a unique combination of address, data, status, and executed address values. The STATE option is part of the QUALIFIER parameter to the trace command, and allows you to specify a condition for the trace measurement.
Page 408
Chapter 12: Emulator/Analyzer Interface Commands STATE The default STATE expression type is address. The parameters are as follows: address This specifies that the expression following is an address value. This is the default, and is therefore not required on the command line when specifying an address expression.
Chapter 12: Emulator/Analyzer Interface Commands step step The step command allows sequential analysis of program instructions by causing the emulation processor to execute a specified number of assembly instructions or source lines. You can display the contents of the processor registers, trace memory, and emulation or target memory after each step command.
Page 410
Chapter 12: Emulator/Analyzer Interface Commands step The parameters are as follows: --EXPR-- An expression is a combination of numeric values, symbols, operators, and parentheses specifying a memory address. See the EXPR syntax diagram. from Use this option to specify the address from which program stepping begins. <NUMBER>...
Chapter 12: Emulator/Analyzer Interface Commands stop_trace stop_trace This command terminates the current trace and stops execution of the current measurement. The analyzer stops searching for trigger and trace states. If trace memory is empty (no states acquired), nothing will be displayed. See Also The trace command.
Chapter 12: Emulator/Analyzer Interface Commands store store This command lets you save the contents of specific memory locations in an absolute file. You also can save trace memory contents in a trace file. The store command creates a new file with the name you specify, if there is not already an absolute file with the same name.
Page 413
Chapter 12: Emulator/Analyzer Interface Commands store thru This allows you to specify that ranges of memory be stored. Use this in the store memory command to separate memory locations from the file identifier. trace This option causes the current trace data to be stored in the specified file with a .TR extension.
Page 415
Chapter 12: Emulator/Analyzer Interface Commands --SYMB-- This parameter is a symbolic reference to an address, address range, file, or other value. Note that if no default file was defined by executing the command display local_symbols_in --SYMB--, or with the cws command, a source file name (<FILE>) must be specified with each local symbol in a command line.
Page 416
Chapter 12: Emulator/Analyzer Interface Commands --SYMB-- The parameters are as follows: <FILENAME> This is an UNIX path specifying a source file. If no file is specified, and the identifier referenced is not a global symbol in the executable file that was loaded, then the default file is assumed (the last absolute file specified by a display local_symbols_in command).
Page 417
--SYMB-- Symbolic Retrieval Utilities (SRU) The 80186 emulator interface software can read absolute files in HP-OMF and OMF-86 formats. When you load a program for the first time, the emulator uses the Symbolic Retrieval Utilities (SRU) to build a symbol database for each module.
Page 418
Chapter 12: Emulator/Analyzer Interface Commands --SYMB-- OMF-86 Examples. The following short C code example should help illustrate how OMF-86 symbols are maintained by SRU and referenced in your emulation commands. File /users/dave/control.c: int *port_one; main () int port_value; port_one = 255; port_value = 10;...
Page 419
Chapter 12: Emulator/Analyzer Interface Commands --SYMB-- OMF-86 Symbol Tree. The OMF-86 symbol tree as built by SRU would appear as follows (this is not a complete symbol tree): SRU does not build tree nodes for variables that are dynamically allocated on the stack at run-time, such as i and j within the delay() procedure.
Page 420
Chapter 12: Emulator/Analyzer Interface Commands --SYMB-- Examples of referencing different symbols in the programs shown earlier are: control.c:main control.c:port_one SRU Searches for Symbols. SRU has symbol-searching capability. It also has the ability to explicitly set a "current working symbol" (cws), which allows you to refer to symbols relative to the cws.
Page 421
Chapter 12: Emulator/Analyzer Interface Commands --SYMB-- exists. If the new symbol exists, SRU will assume that is the symbol you want. Otherwise, it will return the message "symbol not found". • If no module was derived from the filename, SRU will return the message "symbol not found".
Page 422
Also refer to the Symbolic Retrieval Utilities User’s Guide for further information on symbols. For information about using a special default prefix for low-level symbols when working with 3rd party symbols, see the file $HP64000/lib/sru/aux/langinfo.hp. That file also describes the language used to reduce ambiguous error messages.
Chapter 12: Emulator/Analyzer Interface Commands trace trace This command allows you to trace program execution using the emulation analyzer. Note that the options shown can be executed once for each trace command. Refer to the TRIGGER and QUALIFIER diagrams for details on setting up a trace. You can perform analysis tasks either by starting a program run and then specifying the trace parameters, or by specifying the trace parameters first and then initiating the program run.
Page 424
This option allows you to specify the external trigger as a trace qualifier, for coordinating measurements between multiple HP 64700s, or an HP 64700 and another instrument. Before arm_trig2 can appear as an option, you must modify the emulation configuration interactive measurement specification.
Page 425
Chapter 12: Emulator/Analyzer Interface Commands trace QUALIFIER This determines which of the traced states will be stored or prestored in the trace memory for display upon completion of the trace. Events can be selectively saved by using trace only to enter the specific events to be saved. When this is used, only the indicated states are stored in the trace memory.
Chapter 12: Emulator/Analyzer Interface Commands TRIGGER TRIGGER This parameter lets you define where the analyzer will begin tracing program information during a trace measurement. A trigger is a QUALIFIER. When you include the occurs option, you can specify the trigger to be a specific number of occurrences of a QUALIFIER (see the QUALIFIER syntax diagram).
Page 427
Chapter 12: Emulator/Analyzer Interface Commands TRIGGER Examples trace after MAIN <RETURN> trace after 1000H then data 5 <RETURN> Also see the trace command examples. See Also The trace command. Also, refer to the "Making Coordinated Measurements" chapter.
Chapter 12: Emulator/Analyzer Interface Commands wait wait This command allows you to present delays to the system. The wait command can be an enhancement to a command file, or to normal operation at the main emulation level. Delays allow the emulation system and target processor time to reach a certain condition or state before executing the next emulation command.
Page 429
Chapter 12: Emulator/Analyzer Interface Commands wait seconds This causes the system to pause for a specific number of seconds. <TIME> This prompts you for the number of seconds to insert for the delay. Note that a wait command in a command file will cause execution of the command file to pause until a <CTRL>c signal is received, if <CTRL>c is defined as the interrupt signal.
Chapter 12: Emulator/Analyzer Interface Commands WINDOW WINDOW Lets you select which states are stored by the analyzer. WINDOW allows you to selectively toggle analyzer operation. When enabled, the analyzer will recognize sequence terms, trigger terms, and will store states. When disabled, the analyzer is effectively off, and only looks for a particular enable term.
Page 431
Chapter 12: Emulator/Analyzer Interface Commands WINDOW See Also The trace command and the SEQUENCING and QUALIFIER syntax descriptions.
Page 434
Error Messages This chapter contains a list of error messages that may occur while operating the emulator and analyzer. The error log records error messages received during the emulation session. You may want to display the error log to view the error messages. Sometimes several messages will be displayed for a single error to help you locate a problem quickly.
Graphical/Softkey Interface Messages - Unnumbered Address range too small for request - request truncated Cause: Too small of an address range is specified in a modify memory command. Action: Specify a larger memory range. Cannot create module file: Cause: Insufficient disk space for the module file. Action: Check disk space under /usr/hp64000.
Page 436
Cause: The host system could not continue the previous emulation session because it could not load the continue file. Action: Try again. If the failure continues, call your HP Service Representative. Continuing previous session, continue file loaded Cause: This is a status message. An emulation session which was ended earlier with the end command has been restarted.
Page 437
(performance verification) command on the emulator to verify that it is functioning properly. Also, verify proper software installation. If loading default configuration still fails, then call your HP 64000 representative. <CONFIGURATION FILENAME> does not exist Cause: The configuration file you are trying to load does not exist.
Page 438
Cause: Communication between the emulator and the host system to continue the emulation session failed. Action: Check the data communication switch settings on the rear panel of the HP 64700 series emulator. If necessary, refer to the HP 64700 Installation/Service Guide.
Page 439
Emul700dmn version incompatible with this product Cause: The emulation session could not begin because the version of the HP 64700 emulator daemon executable on host system is not compatible with the version of the Softkey Interface you are using.
Page 440
Error in configuration process Error starting configuration process Cause: Unexpected configuration error. Action: Verify proper software installation and call your HP 64000 representative. Fatal error from function <ADDRESS OF FUNCTION> Cause: This is an unexpected fatal system error. Action: Cycle power on the emulator and start again. If this is a persistent problem, call your HP 64000 representative.
Page 441
Cause: A user abort occurred while attempting to connect via LAN. Action: Possibly connecting to an emulator many miles away, be patient. HP 64700 I/O error; power down detected Cause: The emulator power was cycled. Action: Do not do this during a user interface session; this may force the user interface to end immediately.
Page 442
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered Illegal status combination Cause: You tried to specify combinations of status qualifiers in expressions incorrectly when entering commands. Action: Refer to the "Emulator/Analyzer Interface Commands" chapter for information about syntax of commands. Illegal symbol name Cause: You tried to specify incorrect symbol names when entering commands.
Page 443
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered Insufficient emulation memory, memory map may be incomplete Cause: You can map only the amount of emulation memory available in your emulator. Trying to map additional unavailable memory may cause information to be missing from your memory map.
Page 444
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered Joining session already in progress, user interface defaulted Cause: When operating the emulator in multiple windows, a new emulation session is "joined" to a current session. In this case, the new session used the user interface default selections.
Page 445
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered Memory block list unreadable Memory range overflow Cause: A modify memory command is attempted that would cross physical 0. Action: Limit the modify memory command to not overflow physical 0 or break the command into two separate modify commands.
Page 446
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered No valid trace data Cause: You tried to store trace data before a trace was completed. Action: Wait until valid trace data is available before attempting to store a trace. Not a valid trace file - load aborted Cause: You tried to load a file.TR that was not created by the emulation session.
Page 447
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered Perfinit - error in input file line <LINE NUMBER> invalid symbol You included a "label" file name with your "performance_measurement_initialize" command, and that file contains an invalid symbol. Action: Edit the file and correct the invalid symbol. Perfinit - error in input file line <NUMBER>...
Page 448
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Unnumbered Performance tool must be initialized Cause: You tried to make a performance measurement when the Software Performance Measurement Tool (SPMT) was not initialized. Action: The Software Performance Measurement Tool (SPMT) must be initialized before making performance measurements on your software.
Page 449
Cause: The emulator was started using a new emulation session, and the user interface was set to default selections. Action: Call your HP Service Representative. Status unknown, run "emul700 -l <LOGICAL NAME>" Cause: The host system cannot determine the status of the emulator.
Page 450
Example: display trace symbols on. Timeout in emul700dmn communication Cause: The host system could not start the emulation session because the HP 64700 emulator process ran out of time before the emulator could start. Action: You must press end_release_system to exit this emulation session completely;...
Page 451
Unexpected message from emul700dmn Cause: The host system could not start the emulation session because of an unexpected message from the HP 64700 emulator process command. Action: You must press end_release_system to exit this emulation session completely; then start a new session. Make sure the host system is operating...
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Numbered Graphical/Softkey Interface Messages - Numbered These numbered messages can occur because of various problems with the emulator/analyzer. 10315 Logical emulator name unknown; not found in 64700tab file Cause: This message may occur while trying to start up the emulator. It indicates that the emulator name specified could not be found in the 64700tab.net or /etc/hosts files.
Page 453
Cause: There may be characters dropped in the information returned from the emulator. Action: Ignore this message unless it becomes frequent. If it becomes frequent, you may have a fatal error; call your HP 64700 representative. 10351 Exceeded maximum 64700 command line length Cause: Your command is longer than 240 characters.
Page 454
Chapter 13: Error Messages Graphical/Softkey Interface Messages - Numbered Action: Upgrade the interface software of product firmware. 10360 Analyzer limitation; all range resources in use Analyzer limitation; all pattern resources in use Analyzer limitation; all expression resources in use Cause: Your trace specification would use more than the maximum number of resources available to the analyzer.
Chapter 13: Error Messages Terminal Interface Messages Terminal Interface Messages This section contains descriptions of error messages that can occur while using the Terminal Interface. The error messages are listed in numerical order, and each description includes the cause of the error and the action you should take to remedy the situation.
Page 456
Chapter 13: Error Messages Terminal Interface Messages No response from monitor Cause: The main cause of this error message is when the target system does not assert RDY for target memory and I/O accesses. Action: Do not attempt to access target locations that don’t return RDY. Monitor failure;...
Action: Determine why the bus error was activated. 80186/8/XL/EA/EB Emulator Messages The following error messages are unique to the HP 64767 emulator. User code load module too big Cause: This error occurs when the size of the user program absolute code is greater than 1 Mbyte.
Action: Write down the sequence of commands which caused the error. Cycle power on the emulator and reenter the commands. If the error repeats, call your local HP Sales and Service office for assistance. Incompatible compatibility table entry Cause: The emulation firmware (ROM) is not compatible with the analysis or...
Page 459
Records expected: %s; records received: %s Cause: The HP 64700 received a different number of records than it expected to receive during a transfer operation. Action: Retry the transfer. If the failure is repeated, make sure that the data communications parameters are set correctly on the host and on the HP 64700.
Page 460
Chapter 13: Error Messages Terminal Interface Messages communications parameters are set correctly on the host and on the HP 64700, then retry the operation. Severe error detected, file transfer failed Cause: An unrecoverable error occurred during a transfer operation. Action: Retry the transfer. If it fails again, make sure that the data communications parameters are set correctly on the host and on the HP 64700.
Page 461
Chapter 13: Error Messages Terminal Interface Messages Action: Determine why the break failed, then correct the condition and retry the command. See message 608. Read PC failed during break Cause: System failure or target condition. Action: Try again. Disable breakpoint failed: %s Cause: System failure or target condition.
Page 462
Chapter 13: Error Messages Terminal Interface Messages Unable to run Cause: System failure or target condition. Action: Run performance verification (Terminal Interface pv command), and check target system. Break caused by CMB not ready Cause: This status message is printed during coordinated measurements if the CMB READY line goes false.
Page 463
Chapter 13: Error Messages Terminal Interface Messages BNC trigger break Cause: This status message will be displayed if you have configured the emulator to break on a BNC trigger signal and the BNC trigger line is activated during a program run. The emulator is broken to the monitor. CMB trigger break Cause: This status message will be displayed if you have configured the emulator to break on a CMB trigger signal and the CMB trigger line is activated during a...
Page 464
Chapter 13: Error Messages Terminal Interface Messages Cause: Monitor specific message. CMB execute break Cause: This message occurs when coordinated measurements are enabled and an EXECUTE pulse causes the emulator to run; the emulator must break before running. Action: This is a status message; no action is required. Configuration aborted Cause: Occurs when a <CTRL>c is entered while emulator configuration items are being set.
Page 465
Chapter 13: Error Messages Terminal Interface Messages Unable to read registers in class: %s Cause: The emulator was unable to read the registers you requested. Action: To resolve this, you must look at the other status messages displayed. Most likely, the emulator was unable to break to the monitor to perform the register read.
Page 466
Action: Initialize the emulator or cycle power. Then reenter the command. If the same failure occurs, call your HP sales and service office. Unable to configure break on software breakpoints Cause: The emulator controller cannot enable breakpoints, possibly because the emulator is in an unknown state or because of a hardware failure.
Page 467
Chapter 13: Error Messages Terminal Interface Messages Enable breakpoint failed: %s Cause: System failure or target condition. Action: Check memory mapping and configuration questions. Disable breakpoint failed: %s Cause: System failure or target condition. Action: Check memory mapping and configuration questions. Breakpoint code already exists: %s Cause: You attempted to insert a breakpoint;...
Page 468
Chapter 13: Error Messages Terminal Interface Messages Stepping failed Cause: Stepping has failed for some reason. Action: Usually, this error message will occur with other error messages. Refer to the descriptions of the accompanying error messages to find out more about why stepping failed.
Page 469
Chapter 13: Error Messages Terminal Interface Messages Run failed during CMB execute Cause: System failure or target condition. Action: Run performance verification (Terminal Interface pv command), and check target system. Target memory access failed Cause: This message is displayed if the emulator was unable to perform the requested operation on memory mapped to the target system.
Page 470
Invalid firmware for emulation subsystem Cause: This error occurs when the HP 64700 system controller determines that the emulation firmware (ROM) is invalid. Action: This message is not likely to occur unless you have upgraded the ROMs in your emulator.
Chapter 13: Error Messages Terminal Interface Messages Lab firmware analysis subsystem; product address: %s Cause: This message should never occur. It shows that you have an unreleased version of analysis firmware. Lab firmware subsystem; product address: %s Cause: This message should never occur. It shows that you have an unreleased version of system controller firmware.
Page 472
Chapter 13: Error Messages Terminal Interface Messages 1108 Unable to redefine label; used by emulation analyzer: <label> Cause: This error occurs when you attempt to redefine an emulation trace label which is currently used as a qualifier in the emulation trace specification. Action: You stop the trace or must change the trace command before you can redefine the label.
Page 473
Chapter 13: Error Messages Terminal Interface Messages 1305 CMB execute; emulation trace started Cause: This status message informs you that an emulation trace measurement has started as a result of a CMB execute signal (as specified by the specify trace command).
Page 474
Chapter 13: Error Messages Terminal Interface Messages Action: Re-enter the command with the trigger duration within the bounds shown. 2042 Trigger delay out of bounds: <bounds> Cause: This error occurs when you attempt to specify an external timing trigger delay outside the valid range. The external timing trigger delay must be between 0 and 10 ms (in 10 ns increments).
Electrical Characteristics of the HP 64767 Emulator Except as noted in the specifications, all electrical differences defined by Intel between the 80C186 and XL processors also apply to the HP 64767 emulator as far as compatibility with processors is concerned. Refer to Intel compatibility documentation for differences between the processors.
Page 477
Chapter 14: Specifications and Characteristics Emulator Specifications and Characteristics Below are specifications for the HP 64767A/B that differ from the specifications for the Intel 80C186EA/EB/XL processors. DC Specifications: Input low voltage -0.5V 0.8V Input high voltage (HP 64767A) 2.0V Vcc + 0.5V Input high voltage (HP 64767B) 0.7 * Vcc...
Page 478
Note: A target system NMI request may be delayed by two clock cycles while running user code or indefinitely while running in the background monitor. Electrical Characteristics of the HP 64700 The electrical characteristics of the HP 64700 communication ports are as follows. Communications Serial Port RS-232-C DCE or DTE to 38.4 Kbaud.
Emulator Dimensions Width 325 mm (12.8 in.) Height 173 mm (6.8 in.) Length 389 mm (15.3 in.) Emulator Weight HP 64749 8.2 kg (18 lb) Cable Length Probe to approximately 914 mm (36 in.) card cage Communications Serial Port 25-pin female type "D" subminiature connector.
Chapter 15: Concepts X Resources and the Graphical User Interface X Resources and the Graphical User Interface This section contains more detailed information about X resources and scheme files that control the appearance and operation of the Graphical User Interface. This section: •...
Page 486
Chapter 15: Concepts X Resources and the Graphical User Interface Class Names or Instance Names Can Be Used When specifying resource names, you can use either instance names or class names. For example, a "Done" pushbutton may have an instance name of "done" and a class name of "XmPushButton".
Chapter 15: Concepts X Resources and the Graphical User Interface Specific Names Override General Names A more specific resource specification will override a more general one when both apply to a particular widget or application. The names for the application and the main window widget in HP64_Softkey applications have been chosen so that you may specify custom resource values that apply in particular situations: Apply to ALL HP64_Softkey applications:...
Page 488
Load Order Resource specifications are loaded from the following places in the following order: The application defaults file. For example, /usr/lib/X11/app-defaults/HP64_Softkey when the operating system is HP-UX or /usr/openwin/lib/X11/app-defaults/HP64_Softkey when the operating system is SunOS. The $XAPPLRESDIR/HP64_Softkey file. (The XAPPLRESDIR environment variable defines a directory containing system-wide custom application defaults.)
This resource should be set to the platform on which the X server is running (and displaying the Graphical User Interface) if it is different than the platform where the application is running. Values can be: HP-UX, SunOS, pc-xview, or a custom platform scheme directory name.
Page 490
Chapter 15: Concepts X Resources and the Graphical User Interface HP64_Softkey.sizeScheme: Names the size scheme file which defines the fonts and the spacing used. Values can be: Large, Small, or a custom scheme file name. HP64_Softkey.inputScheme: Names the input scheme file which specifies mouse and keyboard operation. Values can be: Input, or a custom scheme file name.
Page 491
You can modify scheme files by copying them to the directory for user-defined schemes and changing the resource specifications in the file. For example, if you wish to modify the color scheme, and your platform is HP-UX, you can copy the /usr/hp64000/lib/X11/HP64_schemes/HP-UX/Softkey.Color file to $HOME/.HP64_schemes/HP-UX/Softkey.Color and modify its resource...
Page 496
Minimum HP 9000 Hardware and System Requirements The following is a set of minimum hardware and system recommendations for operation of the Graphical User Interface on HP 9000 Series 300/400 and Series 700 workstations. HP-UX For Series 9000/300 and Series 9000/400 workstations, the minimum supported version of the operating system is 7.03 or later.
Page 497
Chapter 16: Installation From here, you should proceed to the section titled "Installation for HP 9000 Hosted Systems" for instructions on how to install, verify, and start the Graphical User Interface on HP 9000 systems. Minimum Sun SPARCsystem Hardware and System Requirements The following is a set of minimum hardware and system recommendations for operation of the Graphical User Interface on Sun SPARCsystem workstations.
• HP 64704A 80-Channel Emulation Bus Analyzer (instead of HP 64706A). • HP 64794A Deep Memory Emulation Bus Analyzer (instead of HP 64706A). Equipment and tools needed In order to install and use the 80186/8/XL/EA/EB emulation system, you need: •...
Page 499
The following steps in the hardware installation process are described in this section: The steps in the installation process are: Connect the HP 64767 emulator probe to the HP 64748C emulator control card. Install cards into the HP 64700 card cage. Connect the emulator probe to the demo target system.
Installing Hardware Step 1. Connect the Emulator Probe Cables Three ribbon cables connect the HP 64748C emulation control card to the HP 64767 80186/8/XL/EA/EB emulator probe. The shortest cable connects from J1 of the emulation control card to J3 of the emulator probe. The medium length cable connects from J2 of the emulation control card to J2 of the emulator probe.
Page 501
Chapter 16: Installation Installing Hardware 2 When inserting cable connectors into the sockets, press inward on the connector clips so that they hook into the sockets as shown.
Page 502
Chapter 16: Installation Installing Hardware 3 Connect the other ends of the cables to the emulator probe.
1 Use a ground strap when removing or installing boards into the HP 64700 Card Cage to reduce the chances of damage to the circuit cards from static discharge. A jack on the rear panel of the HP 64700 Card Cage is provided for this purpose.
Page 504
Chapter 16: Installation Installing Hardware 2 Turn the thumb screw and remove the top cover by sliding the cover toward the rear and up.
Page 505
Chapter 16: Installation Installing Hardware 3 Remove the side cover by unsnapping the two latches and lifting off. 4 Remove the card supports.
Page 506
Chapter 16: Installation Installing Hardware 5 First, completely loosen the four egress thumb screws. To remove emulator cards, insert a flat blade screwdriver in the access hole and eject the emulator cards by rotating the screwdriver.
Page 507
6 Insert a screw driver into the third slot of the right side of the front bezel, push to release catch, and pull the right side of the bezel about one half inch away from the front of the HP 64700. Then, do the same thing on the left side of the bezel.
Page 508
Chapter 16: Installation Installing Hardware 7 Lift the bezel panel to remove. Be careful not to put stress on the power switch extender. 8 If you’re removing an existing analyzer card that provides external analysis, remove the right angle adapter board by turning the thumb screws counter-clockwise.
Page 509
9 To remove the analyzer card, insert a flat blade screwdriver in the access hole and eject the analyzer card by rotating the screwdriver. Do not remove the system control board. This board is used in all HP 64700 emulation and analysis systems.
Page 510
Installing Hardware 10 Install HP 64704A and HP 64748C boards. The HP 64704A is installed in the slot next to the system controller board. The HP 64748C is installed in the second slot from the bottom of the HP 64700. These boards are identified with labels that show the model number and the serial number.
Page 511
Chapter 16: Installation Installing Hardware 11 Connect the +5 V power cable to the connector in the HP 64700 front panel.
Page 512
Chapter 16: Installation Installing Hardware 12 To reinstall the front bezel, be sure that the bottom rear groove of the front bezel is aligned with the lip as shown below.
Page 513
Chapter 16: Installation Installing Hardware 13 Install the card supports. 14 To install the side cover, insert the side cover into the tab slots and fasten the two latches.
Page 514
Chapter 16: Installation Installing Hardware 15 Install the top cover in reverse order of its removal, but make sure that the side panels of the top cover are attached to the side clips on the frame.
Chapter 16: Installation Installing Hardware Step 3. Plug the emulator probe into the demo target system 1 With HP 64700 power OFF, connect the emulator probe cables to the demo target system.
Page 516
Chapter 16: Installation Installing Hardware 2 Connect the power supply wires from the emulator to the demo target system. The 3-wire cable has 1 power wire and 2 ground wires. When attaching the 3-wire cable to the demo target system, make sure the connector is aligned properly so that all three pins are connected.
The HP 64700B automatically selects the 115 Vac or 220 Vac range. In the 115 Vac range, the HP 64700B will draw a maximum of 345 W and 520 VA. In the 220 Vac range, the HP 64700B will draw a maximum of 335 W and 600 VA.
Page 518
Coco Brown * Part number shown for plug is industry identifier for plug only. Number shown for cable is HP part number for complete cable including plug. ** These cords are included in the CSA certification approval for the equipment.
Page 519
8120-4754 90/230 * Part number shown for plug is industry identifier for plug only. Number shown for cable is HP part number for complete cable including plug. ** These cords are included in the CSA certification approval for the equipment.
Page 520
The line switch is a push button located at the lower left hand corner of the front panel. To turn ON power to the HP 64700, push the line switch button in to the ON (1) position. The power light at the...
Connecting the HP 64700 to a Computer or LAN Refer to the HP 64700 Series Installation/Service Guide for instructions on connecting the HP 64700 to a host computer (via RS-422 or RS-232) or LAN and setting the HP 64700’s configuration switches. (RS-422 and RS-232 are only...
Installing HP 9000 Software Installing HP 9000 Software This section shows you how to install the Graphical User Interface on HP 9000 workstations. These instruction also tell you how not to install the Graphical User Interface if you want to use just the conventional Softkey Interface.
Page 523
/etc/update at the HP-UX prompt. 6 When the HP-UX update utility main screen appears, confirm that the source and destination devices are correct for your system. Refer to the information on updating HP-UX in your HP-UX documentation if you need to modify these values.
X window manager (if you are not currently running an X server). If you plan to run the Motif Window Manager (mwm), or similar window manager, continue with Step 3a of these instructions. If you plan to run HP VUE, skip to Step 3b of these instructions.
Step 3b. Start HP VUE If you are running the X server under HP VUE and have not started HP VUE, do so now. HP VUE is a window manager for the X Window system. The X server is executing underneath HP VUE.
Page 526
-s /users/team/usr/hp64000 /usr/hp64000 If you do not wish to establish a symbolic link, you can set the HP64000 variable to the full path that contains the HP 64000 software. Again, if you installed relative to /users/team, you would enter...
Page 527
3 Set the PATH environment variable to include the usr/hp64000/bin directory by entering PATH=$PATH:$HP64000/bin; export PATH Including usr/hp64000/bin in your PATH relieves you from prefixing HP 64700 executables with the directory path. 4 Set the MANPATH environment variable to include the usr/hp64000/man and...
Chapter 16: Installation Installing Sun SPARCsystem Software Installing Sun SPARCsystem Software This section shows you how to install the Graphical User Interface on Sun SPARCsystem workstations. These instructions also tell you how not to install the Graphical User Interface if you want to use just the conventional Softkey Interface. This section shows you how to: Install the software from the media.
Chapter 16: Installation Installing Sun SPARCsystem Software Step 2. Start the X server and OpenWindows If you are not already running the X server, do so now. The X server is required to run the Graphical User Interface because it is an X application. •...
Page 530
Consult the OpenWindows documentation for an explanation of the DISPLAY environment variable. 2 Set the HP64000 environment variable. For example, if you installed the HP 64000 software relative to the root directory, "/", you would enter setenv HP64000 /usr/hp64000 If you installed the software relative to a directory other than the root directory, it is strongly recommended that you use a symbolic link to make the software appear to be under /usr/hp64000.
Chapter 16: Installation Installing Sun SPARCsystem Software 4 Set the MANPATH environment variable to include the usr/hp64000/man and usr/hp64000/contrib/man directories by entering setenv MANPATH ${MANPATH}:${HP64000}/man setenv MANPATH ${MANPATH}:${HP64000}/contrib/man Including these directories in your MANPATH variable lets you access the on-line "man"...
Chapter 16: Installation Installing Sun SPARCsystem Software Step 5. Map your function keys If you are using the conventional Softkey Interface, map your function keys by following the steps below. 1 Copy the function key definitions by typing: cp $HP64000/etc/ttyswrc ~/.ttyswrc This creates key mappings in the .ttyswrc file in your $HOME directory.
1 Display the 64700tab.net file by entering more /usr/hp64700/etc/64700tab.net at the HP-UX prompt. 2 Page through the file until you find the emulator you are going to use. This step will require some matching of information to an emulator, but it should not be difficult to determine which emulator you want to address.
1 Apply power to the emulator you wish to access after making sure the emulator is connected to the LAN or to your host system. On the HP 64700 Series Emulator, the power switch is located on the front panel near the bottom edge. Push the switch in to turn power on to the emulator.
Page 535
Chapter 16: Installation Verifying the Installation Graphical User Interface. Otherwise, emul700 starts the conventional Softkey Interface. You should include an ampersand ("&") with the command to start the Graphical User Interface as a background process. Doing so frees the terminal window where you started the interface so that the window may still be used.
Page 536
Chapter 16: Installation Verifying the Installation...
Chapter 16: Installation Verifying the Installation Step 3. Exit the Graphical User Interface 1 Position the mouse pointer over the pulldown menu named "File" on the menu bar at the top of the interface screen. 2 Press and hold the command select mouse button until the File menu appears. 3 While continuing to hold the mouse button down, move the mouse pointer down the menu to the "Exit"...
Page 540
HP 64748C emulation control card together, the control card contains the correct firmware for the HP 64767. However, if you ordered the HP 64767 and the HP 64748C separately, or if you are using a HP 64748C that has been used previously with a different emulator probe, you must download the correct firmware into the emulation control card.
• Enter the progflash -v <emul_name> <products ...> command. The progflash command downloads code from files on the host computer into Flash EPROM memory in the HP 64700. The -v option means "verbose". It causes progress status messages to be displayed during operation.
Page 542
Chapter 17: Installing/Updating Emulator Firmware To update emulator firmware with "progflash" Examples To update emulator firmware in the HP 64700 that contains the "em8018x" emulator: $ progflash <RETURN> HPB1471-19309 A.05.00 03Jan94 64700 SERIES EMULATION COMMON FILES A Hewlett-Packard Software Product Copyright Hewlett-Packard Co.
Page 543
Code start 280000H (should equal control ROM start) Code size 2348CH (must be less than control ROM size) Finishing up... Rebooting HP64700... Flash programming SUCCEEDED You could perform the same update as in the previous example with the following command: $ progflash -v em8018x 64767 <RETURN>...
To display current firmware version information • Use the Terminal Interface ver command to view the version information for firmware currently in the HP 64700. When using the Graphical User Interface or Softkey Interface, you can enter Terminal Interface commands with the pod_command command. For example: display pod_command <RETURN>...
HP 64700 that will not boot up. Repeat the firmware update process. If the HP 64700 is connected to the LAN in this situation and you are unable to connect to the HP 64700 after the power glitch, try repeating the firmware update...
Glossary access mode Specifies the types of cycles used to access target system memory locations. For example a "byte" access mode tells the monitor program to use load/store byte instructions to access target memory. active emulator probe An emulator probe that contains circuitry that allows the emulator to more closely imitate the electrical characteristics of the microprocessor thereby avoiding the timing problems that can occur with passive probes.
Page 548
Glossary For example, when you display target system memory locations, the monitor program executes microprocessor instructions that read the target memory locations and send their contents to the emulation controller. emulator An instrument that performs just like the microprocessor it replaces, but at the same time, it gives you information about the operation of the processor.
Page 549
Glossary sequence terms Individual levels of the sequencer. The analyzer provides 8 sequence terms. sequencer The part of the analyzer that allows it to search for a certain sequence of states before triggering. sequencer branch Occurs when the analyzer finds the primary or secondary branch state specified at a certain level and begins searching for the states specified at another level.
206 altitude, operating and non-operating environments, 479 analyzer, 547 arming other HP 64700 Series analyzers, 5 breaking emulator execution into the monitor, 4 breaking execution of other HP 64700 Series emulators, 5 count qualifiers, 211 definition, 4...
Page 552
270 connecting to the target system, 272 analyzer status occurrence left information, 196 sequence term information, 196 app-defaults directory HP 9000 computers, 488 Sun SPARCsystem computers, 488 application resource See X resource arm information, 195 arm_trig2, in trace command, 424...
Page 553
OFF the HP 64700, 49 protect emulator against static discharge, 48 real-time dependent target system circuitry, 114 rear panel, do not stand HP 64700 on, 503 changing directory context in configuration window, 109 directory context in emulator/analyzer window, 142...
Page 554
Index passing parameters, 93 command line, 27 Command Recall dialog box, 28 Command Recall dialog box, operation, 88 copy-and-paste to from entry buffer, 78 editing entry area with popup menu, 87 editing entry area with pushbuttons, 86 entering commands, 85 entry area, 27 executing commands, 85 help, 88...
Page 555
Index loading from file, 111 modifying a section, 106 starting the interface, 104 storing, 108 context changing directory in configuration window, 109 changing directory in emulator/analyzer window, 142 changing symbol, 143 displaying directory from configuration window, 110 displaying directory from emulator/analyzer window, 142 displaying symbol, 142 coordinated measurements, 293 break_on_trigger syntax of the trace command, 293...
Page 556
Index memory to file, 185 registers to file, 186 trace listing to file, 185 count absolute/relative, trace display option, 228 count qualifiers, 211 count, occurrence, 208 current working symbol (cws), 420 cursor buttons, 28 custom foreground monitor, selecting, 120 data copy command, 334 display command, 345-347 data (analyzer state qualifier softkey), 204, 393, 408...
Page 558
Index error tolerance, 260 interpreting reports, 259 maximum time, 259 minimum time, 259 number of intervals, 259 recursion considerations, 254 selecting, 257 standard deviation, 260 trace command setup, 255 editing command line entry area with popup menu, 87 command line entry area with pushbuttons, 86 file, 182, 307 file at address, 182, 307 file at program counter, 182...
Page 559
Index physical characteristics, 479 plugging into a target system, 48 probe cable length, 479 running from target reset, 145 specifications and characteristics, 476-479 status lines, predefined values for, 205 using the, 130 weight, 479 emulator configuration break processor on write to ROM, 128 exiting the configuration interface, 111 foreground cycles, locking, 119 foreground monitor location, 118...
Page 560
Index clearing, 74 copy-and-paste from, 78 copy-and-paste to, 74 Entry Buffer Recall dialog box, 27 Entry Buffer Recall dialog box, operation, 77 multi-window copy-and-paste from, 78 multi-window copy-and-paste to, 75 operation, 77 recall button, 27 recalling entries, 77 symbol width and copy-and-paste to, 75 text entry, 74 with action keys, 77, 79 with pulldown menus, 77...
Page 561
Index emulation session, 66 emulator/analyzer windows, 65 expressions, 201 --EXPR-- syntax, 364-366 external analyzer configuration, 273-281 general description, 4 labels, 274, 280 mode, 276 should emulation control?, 274 specifications, 480 using, 268 external data, trace display option, 231 file display area to, 185 editing, 182 editing at address, 182 editing at program counter, 182...
Page 562
334 help index, 83 on-line, 91 softkey driven information, 91 help command, 368-369 help index, displaying, 83 hexadecimal numbers, 202 HP 64700 Operating Environment, minimum version, 497 HP 9000 700 series Motif libraries, 496 HP-UX minimum version, 496...
Page 564
Index LANG environment variable, 490 LD_LIBRARY_PATH environment variable, 531 libraries, Motif for HP 9000/700, 496 line numbers (source file), symbol display, 135 line numbers (trace), displaying about, 221 lines in main display area, 307-308 list, trace, 198 load command, 370-371...
Page 565
(SPMT), 254 monitor (emulation) background, 117 comparison of foreground/background, 117 foreground, 118 foreground monitor location, 118 function of, 116 selecting, 116-121 selecting entry after configuration, 115 user foreground, 120 user foreground monitor filename, 120 Motif, HP 9000/700 requirements, 496 mouse...
Page 566
229 OMF-86 symbol examples, 418 symbol tree, 419 OMF-86 absolute file format, 131 OMF-86 file format, 417 on-line help, 91 on_halt, trace command option, 213 only, trace command storage qualifier, 209 operating system HP 64700 Series minimum version, 497...
Page 567
387-388 physical characteristics of the emulator, 479 physical run address, conversion to logical run address, 113 platform HP 9000 memory needs, 496 HP 9000 minimum performance, 496 SPARCsystem memory needs, 497 SPARCsystem minimum performance, 497 platform scheme, 306, 489...
Page 568
Index power failure during firmware update, 545 prestore qualifier, 210, 548 primary branches (analyzer sequencer), 548 processor type, 60, 112 progflash example, 542 program activity measurements (SPMT), 239, 246 program counter mnemonic memory display, 34 running from, 144 pulldown menus choosing with keyboard, 71 choosing with mouse, 70-71 pushbutton select mouse button, 29...
Page 569
Index display/modify, 163-167 displaying, 39, 166 modify, 167 modify command, 381 to file, 186 relative count, in the trace display, 228 release_system, end command option, 43, 66, 108 repetitive display of memory, 173 reset (emulator), commands which cause exit from, 149 reset command, 395 reset, run from target, 145 resolution, memory mapper, 122...
Page 570
306, 490 slave clocks, 277 softkey driven help information, 91 softkey pushbuttons, 27 softkeys, 89 software installation for HP 9000, 522-527 installation for SPARCsystems, 528-532 software breakpoints, 150-162 clearing, 160 clearing all, 162 copy command, 335 deactivating, 157...
Page 571
Index ending, 264 how they are made, 238 initialize, 385-386 initializing, 242, 257 initializing, default, 242 initializing, duration measurements, 257 initializing, user defined ranges, 243, 257 initializing, with global symbols, 243 initializing, with local symbols, 243 memory activity, 239, 246 module duration, 254 module usage, 254 program activity, 239, 246...
Page 572
Index sruprint, 417 state, external analyzer mode, 276 STATE, in trace command, 407-408 static discharge, protecting the emulator probe against, 48 status copy command, 335 display command, 194, 344 status (analyzer state qualifier softkey), 204, 394, 408 predefined values for, 205 status line, 27 status line (display), 63 status, emulator, copying to a file, 186...
Page 573
Index --SYMB-- syntax, 414-422 trace display, 226 synchronous measurements, 291 syntax conventions, 328 system requirements HP 64700 minimum version, 497 HP 9000 overview, 496 HP-UX minimum version, 496 OSF/Motif HP 9000/700 requirements, 496 SPARCsystem overview, 497 SunOS minimum version, 497...
Page 574
Index prestore qualifier, 210 recalling trace specifications, 200 starting the, 194 stopping the, 197 storage qualifier, 209 storage qualifier with prestore, 210 store command, 413 storing, 234-235 Trace Specification Selection dialog box, 200 trigger position, 206 trace command, 423-425 default, 194 loading and storing, 232-233 setting up for SPMT measurements, 241 trace display, 220-231...
Page 575
65 opening additional emulator/analyzer, 63 running the emulator/analyzer interface in multiple, 59 workstation HP 9000 memory needs, 496 HP 9000 minimum performance, 496 SPARCsystem memory needs, 497 SPARCsystem minimum performance, 497 write to ROM break, 128 X client, 304...
Page 576
Index .Xdefaults file, 488 /usr/hp64000/lib/X11/HP64_schemes, 491 app-defaults file, 488 class name for applications, 486 class name for widgets, 486 command line options, 489 commonly modified graphical interface resources, 306 defined, 485 general form, 485 instance name for applications, 486 instance name for widgets, 485 loading order, 488 modifying resources, generally, 306-309 RESOURCE_MANAGER property, 488...
Page 577
This Hewlett-Packard system product is warranted against defects in materials and workmanship for a period of 90 days from date of installation. During the warranty period, HP will, at its option, either repair or replace products which prove to be defective.
Page 578
No other warranty is expressed or implied. HP specifically disclaims the implied warranties of merchantability and fitness for a particular purpose.
Page 579
Safety Summary of Safe Procedures The following general safety precautions must be observed during all phases of operation, service, and repair of this instrument. Failure to comply with these precautions or with specific warnings elsewhere in this manual violates safety standards of design, manufacture, and intended use of the instrument.
Page 580
Do Not Service Or Adjust Alone Do not attempt internal service or adjustment unless another person, capable of rendering first aid and resuscitation, is present. Do Not Substitute Parts Or Modify Instrument Because of the danger of introducing additional hazards, do not install substitute parts or perform any unauthorized modification of the instrument.
Page 581
Safety Symbols Used In Manuals The following is a list of general definitions of safety symbols used on equipment or in manuals: Instruction manual symbol: the product is marked with this symbol when it is necessary for the user to refer to the instruction manual in order to protect against damage to the instrument.
Page 582
Caution The Caution sign denotes a hazard. It calls your attention to an operating procedure, practice, condition, or similar situation, which, if not correctly performed or adhered to, could result in damage to or destruction of part or all of the product. Warning The Warning sign denotes a hazard.