MICEpack/SLD ver 2.3 Table of Contents: Part 1: MICEpack/SLD Release Part 2: MICEpack/SLD Feature additions Part 3: All PowerTools Development Systems I. System Requirements II. Problems III. MICEpack/SLD Application Notes IV. MICEpack/SLD Limits V. Long filename support Part 4: MICEpack(tm) Emulators I: Problems II. MICEpack Emulator Application Notes III. MICEpack Emulator Limits Part 1: MICEpack/SLD Release Changes in version 2.3 (Release version) ---------------------- * Fixed the bug of variable display when loading program in common mode. * Fixed the bug of the display in Peripheral window. * Fixed the bug of occurring GP Fault when browsing module if module name differs from source name. * Now support long filename completely. * Fixed the bug of wrong result in Code Coverage. * Fixed the bug of showing error message when ROM Break. * Fixed the problem of range length in Code Coverage. Changes in version 2.2a (Temporary version) ----------------------- * Fixed the bug of timestamp error in Trace window. * Fixed the bug of variable display in Variable window * Support M68LC302. * Fixed the bug of point-struct value error. * Add "Upload" command to upload memory into file "upload.s". * Added periodic updating for Variable, Stack and Memory windows while CPU is free-running (Run Access option must be enabled). * Fixed the bug of refresh display in Stack window . Changes in version 2.2 (Release version) ---------------------- * Fixed the bug of changing work path while restoring events. Changes in version 2.1i (Temporary version) ----------------------- * Add an option "common" in Load Options to browse both supervisor and user mode. * Fixed the bug of the breakpoint display in Source Only mode in Source window. * Fixed the bug of the display in Trace window when qualify trace. * Fixed the bug of memory when copy memory to itself. * Fixed the bug of memory copy from TARGET. * Meliorate the problem of out of object point. * Fixed the bug of occruing GP Fault while opening trace window after trigger. * Fixed the bug of occuring GP Fault while doulbe clicking the variable in global struct. Changes in version 2.1h (Temporary version) ----------------------- * Fixed the problem of reading trace buffer after setting triggers. * Support long filenames. (See Part3, V) Changes in version 2.1g (temporary version) ----------------------- * To be able to set software breakpoint while CPU is running (Run Access option must be enabled). * Removed the option "DWord Access" in Memory window. * Fixed the bug of qualify trace while setting event as a range. * To be able to abort searching event in Trace window. * After setting breakpoints, these options "Clear, Enable, Disable Clear All, Enable All, Disable All" will be enabled. * Fixed the bug of timestamps in Delta mode. Changes in version 2.1f (Temporary version) ----------------------- * Put the Source paths by their loading order. * Fixed the bug of Peripheral Base Address none update. * Added "reset CPU only" feature to reset the processor only and does not update the windows. * Corrected errors in config files of peripheral SCC1, SCC2 and SCC3. Part 2: MICEpack/SLD Features MICEpack/SLD-68k 2.0 supports the enhanced MICEpack-68k, equipped with MTAT-II board only. It doesn't support old MICEpack-68k, equipped with MTAT board. Here is the enhancement feature that provided in this SLD: * Support Software Performance Analysis(SPA) features: Module Analysis, Time Analysis and Code Coverage function. * Support 40-bit TimeStamp. * Support Trace Qualify. * Support Trigger On-The-Fly (setting event/trigger without stopping emulation). * Support Trace On-The-Fly (display trace data without stopping emulation). * Support two 32-bit counters or two 32-bit timers or one 32-bit counter + one 32-bit timer. * More trace information on the trace window. Including timestamp, external trace-bit, trigger action, sequence level and Bus-Event-Matched bits. * Support trace off/emulation break when the trace buffer is full. * Serial port for connect to emulator using for after version 2.0. MS-PCE card or MIF key for connection to emulator using for before Version 1.6. * Be sure that you have enough files and buffers defined in your config.sys file. Minimum should be 30 for each. * Be sure you have a minimum swap file of 4 MB (permanent is recommended). * MP/SLD requires a minimum of 5Mbytes of free memory after Windows is loaded. More memory is better, especially if you run other applications at the same time. If memory is low, close other applications to regain memory. * While the emulator runs, status messages are sent from the chassis to the host PC. This adds serial communication overhead to your PC. If you are running a DOS shell at the same time, give it a low priority via the .PIF file settings, or stop the emulator. * One GP fault that showed up in MICEpack/SLD was actually caused by a buggy video device driver of the Diamond Stealth ISA 1M VRAM card (version 2.31) in 1024 X 768 mode. The problem went away when by reducing the resolution to 800 X 600. If this fault occurs, install a more current device driver. * GP Faults If you have received a GP fault, our ability to find and fix it is increased if you can run the Dr. Watson recorder, which captures information at the point of the GP fault. The Dr. Watson program is shipped with windows and is located in your windows directory. To start Windows with Dr. Watson enabled, use the File Manager to drag and drop the drwatson.exe icon (in your windows directory) into the Windows StartUp Group. Another way to do this is to add the path and filename to the load= line of your win.ini file. Example: load=c:\windows\drwatson.exe After a GP fault, the drwatson.log file in your Windows directory holds the information. Fax or e-mail this file, along with any other information that led up to the GP fault, to Microtek International. Microtek International, Inc. (Hsinchu, Taiwan) Voice: +886-3-5772-155 Fax: +886-3-5772-6443 E-mail: mice@smtp.microtek.com.tw Web: http://www.microtek.com.tw * PV.DMP Under some conditions, an error can occur which produces a message box indicating that information about a problem has been placed in the file pv.dmp in your MICEpack/SLD directory. This file gets written over each time an error occurs, so we recommend that you rename the file, then fax or e-mail it to Microtek International. Part 3: All PowerTools Development Systems I. System Requirements The following host computer requirements and recommendations apply: 1. An Intel 386DX, Intel 486, or Intel Pentium(tm)-based PC or 100% compatible system. 2. 8 Megabytes of RAM 3. 4.2 Megabytes of available disk space. 4. VGA or Super VGA graphics card and color monitor (a graphics accelerator card will boost performance). 5. Mouse. 6. MSDOS 3.3, 5.0, or 6.0 7. Windows 3.1 running in 386-enhanced mode. 8. 4 Megabytes or greater swap file (permanent swap file recommended). 9. Minimum: Files=30 Buffers=30 II. Problems 1. The Intermetrics CPU32 toolchain, including the FORM695 translator to IEEE-695 symbol format, generates pointer types not currently dereferencable by the Variable window. The result is that when these pointers are added to the Variable window, the pointer value can be viewed and edited but the pointer cannot be dereferenced. A partial work-around is to open a Memory window and go to the address of the pointer value. The value it is pointing to can be viewed in a choice of radices. This problem will be fixed in the version after MP/SLD . 2. When a pointer within a union is edited in the Variable window, a child variable of that pointer does not update on the screen correctly until you delete the child variable and re-select the pointer. 3. Variables declared with the @far attribute in Whitesmiths files appear as 'static' objects in the symbol table, even if you do not declare them with the 'static' modifier. This is a workaround for invalid debug records generated by the Whitesmiths IEEE-695 translator. 4. Variables declared inside nested blocks do not appear in the Stack window. You can use the Source window to select them for inspection. III. MICEpack/SLD Application Notes 1. MICEpack/SLD can be set up to run an auto-initialization script. The script sets up the emulator to your requirements each time the MICEpack/SLD software is invoked. The product is shipped with an include file that describes how to do this. The file is named "include.me". To create your own script file, edit a file with the commands you want for initialization. Be sure to end each command with a semicolon. Edit the micepack.ini file (in your windows directory) Change the "script=include.me" line to "script=c:\micepack\reset.inc". Be sure to include the path. 2. This version does support the Whitesmiths 68HC16 compiler version 3.32 mod 10 and the converter to695.exe that converts to IEEE-695 output. The Whitesmiths compiler is sold by Intermetrics. 3. Check the Compiler Information appendix in the User's Manual or Compiler Support in the Technical Notes section of the on-line help for complete details on compiler and converter options, and other issues regarding the toolchain you are using. 4. Debugging code contained in C include files is not supported. 5. The Source window does not support browsing of data-only modules. If you have modules that only contain data declarations, define a dummy function in it; you can then browse it and add variables to the Variable window from it. 6. Several operations are available while the target is running if runaccess is enabled. Enable runaccess from the Toolbar Options menu or with the Shell command "runaccess on". To disable target access while the target is running, disable runaccess from the Toolbar Options menu or issue the Shell command "runaccess off" (the initial default). Memory can be read or written with a small amount of processor time taken from the target; a memory read reports the current values in target memory or on-chip peripherals. However, the CPU registers cannot be accessed during emulation; the register display is updated only when emulation halts. Files can be loaded while the emulator is running; you should ensure they are loaded at a different location than the program you are running. The MICEpack trace operates independently of the emulator, so it can be stopped and started without affecting emulation (this is sometimes referred to as logic analyzer mode). 7. When encountering a STOP instruction, the CPU enters the stop state. From the target, only an interrupt or hardware reset can wake up the processor. From the emulator, only a reset command can get control; the Halt operation cannot. If your code has a STOP instruction, you may want to replace it with a JMP-to-self instruction so that you don't have to reset the processor. 8. The Stack window high-water mark feature uses the stack base and stack size information contained in your load file. If the high-water mark is enabled, the Stack window automatically initializes the stack memory to 0xAA55 after the load is complete, and it uses this information to detect how much of the stack has been used. If your load file does not contain initial stack information, you can provide the information with the following Shell window command: setStackArea fillArea; is the starting stack address, is the stack size in bytes, and the optional fillArea switch fills the stack memory range with the value 0xAA55 so that the high-water mark can be calculated. You can put this command in your power-up initialization include file as described in item 1 above. 9. You can access the Shell command history with Ctrl-uparrow and Ctrl-downarrow keys. IV. MICEpack/SLD Limits 1. MICEpack/SLD recognizes only the first 125 characters of a symbol. 2. The maximum number of source lines per module is 16000. V. Long filename support 1. We provide an utility, LONGFILE.EXE, to collect those files with long filenames and store them in MICEPACK.INI in 8.3 format. To map those files with long filenames in 8.3 format, execute the utility and add those files which you want to map. 2. If those files with long filenames are mapped in 8.3 format include this mark '~', SLD will not detect if the source file is newer than the download file or not. Part 4: MICEpack Emulators I. Problems 1. The Trace window Save As... function has a problem when saving trace data with certain frame ranges. When the range is small, the amount of lines saved may be zero even though there are more than zero lines of bus or instruction trace in this range. The fix is to decrease the start frame value. It is also possible to get more lines of trace data in the file than specified by the frame range, due to the method used for accumulating these lines. II. MICEpack Emulator Application Notes 1. MICEpack 68306 doesn't support hardware execution breakpoint in DRAM space. Instead, the MICEpack/SLD will use S/W execution breakpoint. That is, target program can not disable write-cycle in DRAM space.