README.TXT ----------------------------------------------------- VAutomation System Analyzer for V8086 DEICE Version 2.0.0.3 Copyright (C) 2005-2007 MIPS Technologies, Inc. $Id: readme.txt,v 1.40 2007/04/20 21:25:49 mindy Exp $ ----------------------------------------------------- File contents: - Change history in reverse chronological order - Known issues with different CPU revisions - Other notes Changes is version 2.0.0.3 -------------------------- - Fix problem with netsetup clobbering the serial number. Changes is version 2.0.0.2 -------------------------- - Added jnet files to paradigm install. Changes is version 2.0.0.1 -------------------------- - Added support for Sysnav-usb probe. Changes is version 1.8.1.1 -------------------------- - Added config resetDuration. This is the duration of the DBRESET pulse for the reset command and the length of delay between the end of reset and beginning of JTAG operations. Changes in version 1.8.0.2 -------------------------- - Updated to new parallel port driver. Third parties using the probe's binary interface will need to install this driver. - Added ECP mode capability to parallel port communication. The status command displays the current communication mode. Changes in version 1.7.1.1 -------------------------- - Corrected bug that appeared to hang the application when the probe hardware is turned off during emulation. Changes in version 1.7.0.1 -------------------------- - No user-visible changes. Changes in version 1.6.0.1 -------------------------- - Added capability to specify the memory access size to be used when setting and restoring software breakpoints. Changes in version 1.5.8.2 -------------------------- - Corrected problem with non-EPP parallel port support introduced in 1.5.8.1. Changes in version 1.5.8.1 -------------------------- - Corrected problem with JtagChain. The V86 core has a JTAG feature that accelerates memory write but is incompatible with systems in which the V86 processor is part of a JTAG chain. The accelerator is no longer used when "config JtagChain" is specified. Changes in version 1.5.2.2 -------------------------- - Corrected problem with RegHack feature on some targets that resulted in corruption of the registers referenced in RegHack. Changes in version 1.5.1.4 -------------------------- - Added config RegHack feature to support the Classic V86 core and others that require special handling prior to unloading registers. - Added feature to config command. With no arguments, config now prints the current settings of all items used within VSA-186. - Added config JtagChain to documentation. This feature allows using the VSA-186 debugger with a V86 core embedded in a chain of devices. - Added password to installer. Changes in version 1.4.2.3 -------------------------- - Added %Z parameter in the flash.cfg file and extended the maximum length of a flash sequence to 16. Changes in version 1.4.2.2 -------------------------- - Bug in installation confused the Paradigm and FS2 installation directories and always placed the Paradigm files in c:\Paradigm even when directed otherwise. - When using Paradigm, the system type (10-pin or standard edition) is now automatically determined by querying the hardware. Changes in version 1.4.1.2 -------------------------- - Fixed bug in installer that overwrote the registry entry for the .hlp file program extension. Changes in version 1.4.1.1 -------------------------- - Updated to Tcl version 8.3.2. - Changed installer to Wise. - System now supports a 10-pin target connection configuration. Changes in version 1.2.3.3 -------------------------- - Increased flash timeout to 60 seconds. Some types of flash devices can take over 30 seconds to erase. This resulted in an error message from flash erase chip even though the chip actually did get erased. Changes in version 1.2.3.2 -------------------------- - Fixed problem with trigger breakpoints and single-stepping rep instructions. Changes in version 1.2.3.1 -------------------------- - Added "test" option to breakpoints to immediately determine whether a software breakpoint can be set. - The CLI load command now uses the global memory access size (set using "size" command) instead of byte access. Changes in version 1.2.2.1 -------------------------- - Added support for configurable trace buffer size and configurable trigger register count. Changes in version 1.2.1.1 -------------------------- - Added capability to set and clear software breakpoints while the target CPU is running. - Added config AddressMode for systems that have non-standard reset entry points. Changes in version 1.0.7.1 -------------------------- - Fixed a compatibility problem with EPP version 1.7 hosts. Some older PC's and many newer PC's support only EPP 1.7 or have a selection available in the BIOS setup. Both EPP 1.7 and 1.9 now work. - Fixed a problem with aborts occurring when ESC is pressed when another application has the input focus. Now ESC aborts a long command in progress only when pressed while the debugger is the active application. Changes in version 1.0.5.1 -------------------------- Added support for V86 Turbo core, revision 1.0. Increased resistance to noisy EPP parallel port signals that can cause memory read failures. The bkpt command now shows the type of breakpoint (sw, hw, or auto). Changes in version 1.0.4.2 -------------------------- Support for V86 Turbo core. The debugger is now able to step through an instruction with a REP prefix. Added ability to configure active logic sense of DBRESET and RESET pins in the target connector. The config command is used to set these parameters. Fixed timing problem on some systems during initialization, detecting what parallel port hardware is present. This sometimes resulted in inability to connect to the debugger. Fixed sporadic problem with Windows NT compatibility. An access violation would sometimes be reported at startup due to the order in which initialization occurred. Fixed problem in poll function for systems without EPP parallel ports. This sometimes caused failures in reporting breakpoints. Changes in version 1.0.3.1 -------------------------- Fixed problem in assembler that caused a GPF after a large number of asm commands. Changes in version 1.0.2.2 -------------------------- Fixed problem with address output in dump command when viewing memory as words or longs. Changes in version 1.0.2.1 -------------------------- Added support for SST28SF040 flash device type. Fixed bugs associated with controlling a V86 compiled in 8-bit mode. Added fix for step through an instruction with a segment override prefix. Changed help application to winhlp32 to support Windows NT. Changed dasm command to read less far ahead to reduce problems with attempting to read memory that doesn't return READY. Changes in version 1.0.1.1 -------------------------- Added support for the 24-bit address mode of the V86. Current mode appears in the "status" command output. Improved hardware version checking to avoid downloading new hardware when updating software if the only change to the hardware was the version number. Changes in version 1.0.0.1 -------------------------- Fixed problem with triggers in mask and arm mode corrupting CS:IP. Cosmetic changes in dasm command output. Fixed problem with IR/DR commands when using bidirectional mode. Changes in version 0.9.7.1 -------------------------- Added "status" command. The "compare" command now returns the address where a mismatch is found. The system now supports IEEE-1284 Byte mode in addition to EPP mode. This is also known as bidirectional or PS/2 mode. Performance is best using EPP mode, however. Changes in version 0.9.6.1 -------------------------- Now uses Tcl/Tk version 8.1 Changes in version 0.9.5.1 -------------------------- No user-visible changes. Changes in version 0.9.4.1 -------------------------- CPU revisions A and 9 are supported, in addition to rev C. A problem with re-opening the parallel port on windows 95 systems has been corrected. This was showing the error "Failed to release parallel port". A problem with finding portloc.exe if it is installed in a directory that is not on the path has been corrected. The software now generates portloc.exe dynamically as needed. The ABI event callback for ABI_EVENT_EMU_STATE now has a pointer to the BOOLEAN variable running as its data parameter. The ABI export "void AbiBkptPoll(void)" has been added. This forces a call to the breakpoint poll function if for some reason the Windows timer isn't sufficient. Changes in version 0.9.3.1 -------------------------- Windows NT is now supported. NT users are prompted to run a second setup program from Administrator mode that installs a parallel port device driver. Problems with the device driver on certain Windows 95 systems have been corrected. These systems failed with the error "Failed to open communication port". A problem with certain EPP implementations (ALi chipset) has been corrected. On certain motherboards, VSA-186 reported "Parallel port device does not support IEEE-1284 negotiation protocol." +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Known Issues with VSA connected to CPU rev. 5 (V86 Turbo) --------------------------------------------------------- Hardware execution breakpoints do not always break on the instruction where they are set. Due to pipelining issues, a break can occur one to three instructions past the breakpointed instruction. Known Issues with VSA connected to CPU rev. 9 (latest) ------------------------------------------------------ Hardware execution breakpoints do not always break on the instruction where they are set. Due to pipelining issues, a break can occur one instruction past the breakpointed instruction. The debugger is unable to stop the CPU when it is in Halt mode (after executing HLT). The debugger reports incorrect values for CPU registers, preventing restart. Triggers in mask mode that trigger in the middle of a multi-cycle instruction may hang the processor. One example of this is in 8-bit mode, triggering on the first cycle of a word write. Two or three reset commands may be required to recover from this condition. Known Issues with VSA connected to CPU rev. A --------------------------------------------- The qualified trace function does not work. No frames are ever recorded when the "-trace" flag is used with the trigger command (or the TRIGACTION_TRACE value through the ABI). 16-bit I/O cycles are actually done as two 8-bit cycles when single-stepping or doing I/O from the debugger. This is a problem for I/O registers such as the IPS board LED register that require 16-bit writes. Known Issues with VSA connected to CPU rev. C --------------------------------------------- I/O read accesses currently show 0xFF. This will be fixed in a future CPU release. Memory or I/O accesses during emulation do not show correct data. This will be fixed in a future CPU release. The first range after a reset in branch trace mode displays incorrect information. The only DEICE implementation the debugger supports with this CPU rev has 4 hardware breakpoints and 16 trace frames. Contact FS2 for information about support for other DEICE implementations. In CPU rev. C, software breakpoints do not work. Rather than causing a breakpoint, execution of the software breakpoint opcode results in an illegal opcode trap. Until this is fixed, use the "bkpt sethw" command to force the system to use hardware breakpoints. Note that you are limited to four simultaneous breakpoints. The debugger currently requires that the stack pointer be even. Registers will not be reported correctly if a breakpoint is encountered while the stack pointer is odd. Note that reset does not affect the stack pointer, so it is possible that after power-up, the stack pointer will be odd. You can use "gr" to execute directly from reset past the point in your code where the stack pointer is initialized. This will be fixed in a future debugger software release. Notes ----- To determine your CPU revision, use the command "_test cpurev". In the beta testing stage, VAutomation decrements the rev number for each successive CPU revision. The next rev after C will be B, then A, 9, etc.