ZDS II for Z8 GP(TM) Emulator 4.9.0 (Build 05112901) ============================================================================== Thank you for purchasing ZiLOG's Emulator kit for the Z8 GP(TM) product line. The following are the features provided in this release: - ZDS II Integrated Development Environment (ZDS IDE) - Z8 language tools including C compiler, assembler, linker/locator, and librarian - In-Circuit Emulation using the appropriate target interface pod - Run-control operations such as Run, Stop, Step-In, Step-Out, Step-Over - Unlimited software breakpoints - Trace and Event System for capturing instruction history and defining complex breakpoints - Instruction Set Simulator - Z8 GP(TM) OTP Device Programming - Technical Documentation provided on the CD-ROM Note: The technical documentation supplied on this CD-ROM is available in PDF format. This format requires that Acrobat Reader be installed on the host machine. Acrobat Reader is available on this CD-ROM and is available free on the Adobe website at www.adobe.com. In the event of a component problem, please complete the Problem Report Form and submit it with your request. The form is located on the CD and in the installation directory of your hard drive. Our staff will use the information to diagnose or log the problem. Contact Information -------------------------------------------------------------------------- ZiLOG Inc. Web Site: http://www.zilog.com Technical Support Channel: http://support.zilog.com Table of Contents -------------------------------------------------------------------------- - Changes from Previous Release - Supported Parts and Emulators - System Requirements - Applications and Other OS issues - Migration Pointers - Precautions and Limitations - Closed Change Requests - Open Change Requests CHANGES FROM PREVIOUS RELEASE ============================================================================== (to 4.9.0) - Added support for the ZGR32300 Series ROM devices - Added support for the ZGR16300 Series ROM devices - Added support for USB - Added new target manger, refer to the online help for more information - Added support for Standard and Assembly-only project types - New document: detailed compiler ANSI compliance document - Added an option to generate printfs inline, which will reduce total code size in many applications. See the ZDS II User Manual - The default range for the Rdata address space was changed to 4-CFh (see Migration Pointers section). - The Project Settings Target tab was removed. The Object Sizes section was moved to the C compiler tab and the Memory information was moved to the Linker tab in the Address spaces category. - The project, linker, and librarian command file extensions were changed to *.zdsproj, *.linkcmd and *.libcmd respectively. - Added a checksum calculator to the tools menu. - Added view/edit memory feature in the OTP dialog. - Added checksum after OTP read or verify - Trace timestamp base units changed to CPU cycles. - Enhanced the command processor language. - Several change Requests have been addressed. Refer to the Closed Change Requests section. COMPATIBILITY ============================================================================== Devices -------------------------------------------------------------------------- ZGP32300 Series: ZGP323XXXXX04, ZGP323XXXXX08, ZGP323XXXXX16, ZGP323XXXXX32 ZGR32300 Series: ZGR323XXXXX04, ZGR323XXXXX08, ZGR323XXXXX16, ZGR323XXXXX32 ZGR16300 Series: ZGR163XXXXX01, ZGR163XXXXX02, ZGR163XXX2004, ZGR163XXXXX08, ZGR163XXXXX16 Please refer to the Project>Settings>General selection for the latest supported devices. Debuggers/Programmers -------------------------------------------------------------------------- Z8 GP(TM) In-Circuit Emulator (ZGP323ICE02ZEM) Z8 GP(TM) USB OTP Programming System (ZGP32300200ZPR) Z8 GP(TM) ZGP323 Programming System (ZGP32300100ZPR) Simulator The ZGP323ICE01ZEM In-Circuit Emulator is no longer supported. (Please refer to the Project>Settings>Debugger Tab for the latest updates.) SYSTEM REQUIREMENTS ============================================================================== Supported Operating Systems -------------------------------------------------------------------------- Windows XP Professional, Windows 2000 SP4, Windows 98 SE, Windows NT 4.0 SP6 Recommended Host System Configuration -------------------------------------------------------------------------- Windows XP Professional Pentium III 500MHz processor or higher 128 MB RAM or more 100 MB hard disk space (includes Application and Documentation) Super VGA Video Adapter CD-ROM for installation USB High-Speed port (when using Z8 GP Emulator/Programmer in USB mode) RS232 communication port with hardware flow control Internet browser (Internet Explorer or Netscape) Minimum Host System Configuration -------------------------------------------------------------------------- Windows 98 SE or Windows NT 4.0 SP6 Pentium II 233MHz processor 96 MB RAM 25 MB hard disk space (only includes Application) Super VGA Video Adapter CD-ROM for installation Ethernet 10Base-T compatible connection RS232 communication port with hardware flow control Internet browser (Internet Explorer or Netscape) Z8 GP(TM) Emulator -------------------------------------------------------------------------- Emulation Image 51.51 Communication Firmware 2.0 RS232 Communication port (for configuration) Hi-Speed USB (fully compatible with original USB) Ethernet 10Base-T compatible connection Z8 GP(TM) OTP Programmer - Ethernet -------------------------------------------------------------------------- Ethernet 10Base-T compatible connection RS232 Communication port (for configuration only) Z8 GP(TM) OTP Programmer - USB -------------------------------------------------------------------------- Hi-Speed USB (Fully compatible with Original USB) *Windows NT is not supported USB DRIVER INSTALLATION INSTRUCTIONS ============================================================================== The USB driver may be found on the CD-ROM or in the ZDS II installation directory. USB Driver, Version 1.0.0 or later Windows XP -------------------------------------------------------------------------- 1. Connect the Z8 GP Emulator to the Host PC (The Found New Hardware Wizard should activate automatically after connecting the hardware for the first time; Select "No, not at this time" if asked to connect to Windows Update) 2. Select "Install from a list or specific location (Advanced)" and click Next (If the Windows Logo testing dialog appears, select Continue Anyway) 3. Select "Search for the best driver in these locations." and "Include this location in search:" then Locate the following directory and Click Next: \device drivers\USB 4. Click Next after the appropriate driver information has been found 5. Click Finish to complete the installation Windows 2000 -------------------------------------------------------------------------- 1. Connect the Z8 GP Emulator to the Host PC (The Found New Hardware Wizard should activate automatically after connecting the hardware for the first time) 2. Click Next in the Found New Hardware Wizard after it has been activated 3. Select "Search for a suitable driver for my device (Recommended)" and click Next 4. Select "Specify a location" and click Next 5. Locate the following directory and Click OK: \device drivers\USB 6. Click Next after the appropriate driver information has been found 7. Click Finish after the Wizard finishes the installation Windows 98SE -------------------------------------------------------------------------- 1. Connect the Z8 GP Emulator to the Host PC (The Add New Hardware Wizard should activate automatically after connecting the hardware for the first time) 2. Click Next in the Add New Hardware Wizard after it has been activated 3. Select "Search for the best driver for your device (Recommended)" and click Next 4. Select "Specify a location:" locate the following directory and Click Next: \device drivers\USB 5. Click Next after the appropriate driver information has been found 6. Click Finish after the Wizard finishes the installation APPLICATION AND OTHER OS ISSUES ============================================================================== 1. Apply the latest Windows updates to the host system when appropriate. 2. ZDS will disconnect from the target if the host enters Stand by or Hibernate. MIGRATION POINTERS ============================================================================== 1. If the user is utilizing a custom link file and wishes to change to a different processor or processor family the linker file must be updated manually. 2. C function calls have now been optimized for size. If C source files are used, the user must now select the "Include C Run-Time Libraries" option located in the linker tab or include the 'lib\frame.obj' file in the Object/library modules field. Including the frame object alone does not allow the linker to reference other library functions. 3. The project, linker and librarian command file extensions were changed to *.zdsproj, *.linkcmd and *.libcmd respectively. 4. When opening a project file from a previous version of ZDS, a conversion utility will be launched. Use the conversion utility to create the new project file used by this version of ZDS. After the conversion is complete, configure the new projects debugger/target. Refer to the FAQs for more information about creating your own target. If the 'Use C runtime' options is set in the project being converted, the converted project will be of the Assemply-only type. Note that the old project file will not be modified in case the previous version of ZDS is needed. 5. When using the new "Generate Printfs Inline" option on the Project > Settings > C > Code Generation page, the total code size of your application will almost certainly decrease as discussed in the ZDS II User Manual, if you call printf() or sprintf() in your code. This is because the library functions linked to your application will be much smaller than if this option (available for the first time in release 4.9.0) is turned off. However, the modules in your code that call printf() or sprintf() will each be slightly larger due to the added inline code that is generated in each module. These small increases are more than made up by the decrease in the library functions. 6. The default range for the Rdata address space is now 4-CFh. The compiler now places working registers/interrupts in D0-EFh, rather than the previous location of 10-20h. Projects using the previous default value of 30-EFh may not execute properly. To correct, modify the Rdata range value via Project > Settings... > Linker > Address Spaces. PRECAUTIONS AND LIMITATIONS ============================================================================== Debugger & Programmer -------------------------------------------------------------------------- 1. The USB connection overrides the Ethernet connection on the Emulator. To use Ethernet, ensure that the USB cable is not connected. 2. The OTP programmer is not accessible while the target is running in debug mode. 3. Editing and building code while in Debug mode requires that the current debug session end. Restart the debugger, after completing the build, to debug the new code. 4. If the external target clock is removed while it is selected, the external clock must be reapplied or the emulator must be reset before communication can be established. 5. The timers are stopped while the emulator is not running. 6. The simulator is an instruction set simulator without special function register support for performing input/output operations. Therefore the SFR and their related debug windows may not contain accurate or any register information. 7. When plugged into a target, the internal clock is only reliable at 3.3 volts. In addition the target crystal must also be removed. 8. The target processor is not accessible while in STOP or HALT mode, so extra care must be taken when debugging a program that uses STOP or HALT instructions. Please review the "Debugging User Notices and Tips" section in the FAQ for more information. 9. When breaking on an event system trigger, the cycle that causes the trigger is not executed and does not appear in trace. In other words the execution will stop one cycle prior to the trigger cycle. 10. While a STOP or HALT is being stepped, the emulator will run in STOP or HALT mode until the proper recovery method is applied. The ZDS II debugger will indicate that the target is not running if the debug session is continued after the "Target in STOP or HALT mode..." notification. Please review the "Debugging User Notices and Tips" section in the FAQ for more information. 11. The ICEBOX watch-dog timeout period is shorter than specified. The watch-dog timeout (Twdt) period measurements are: WDT Tap| Spec. | ICEBOX WDTMR | Twdt | Twdt [1:0] | (mS) | (mS) ======================= 00 | 5 | 7.2 01 | 10 | 12.5 10 | 20 | 21.5 11 | 80 | 79.5 12. The emulator does not drive the RESET* pin low out to the target during an stop-mode recovery or power-on reset. This is different than the actual chip specification. 13. The behavior of the comparators on the ICE differ from the actual Z8 GP devices. The reason for this is that the ICE uses a discrete LM339 comparator to emulate the Z8 GP device's analog comparator function. The LM339 has a different frequency response characteristic from the Z8 GP device. 14. The emulator is ready for communication after the two front panel LEDs have turned off. This may take 15 seconds. 15. The interrupt controller will not capture requests while the emulator is not running. This may cause the interrupt controller to miss GPIO and UART interrupts while stepping through a program. 16. Low and High voltage selections (Device Type > Programming Voltage) in the OTP dialog (Tools > OTP Programmer) support programming parts of different voltage ranges. Select either Low Voltage to program the low voltage parts (ZGP323Lxxxxxxx) or High Voltage for the high voltage parts (ZGP323Hxxxxxxx). Compiler, Assembler, Linker/Locator, & Librarian -------------------------------------------------------------------------- 1. Returning a C struct from a function is expensive and slow, and should generally be avoided in embedded applications. The alternative of passing structs by pointer as function arguments, allowing the called function to modify them if desired, is much better programming practice. In the Z8 compiler, returning a struct by value is not allowed. IDE -------------------------------------------------------------------------- 1. It is recommended to disable anti-virus software while using ZDS II. The scan all files feature makes ZDS II operate extremely slowly. 2. In the Settings > Linker > Input page, if 'Standard' is not selected as the Startup Module, the necessary linker directives are not included in the generated link control file. If you use the 'Included in project' or 'Custom' Startup Module settings AND use the startup source or object provided with the tools (startups.asm or startups.obj), the build results in linker errors/warnings similar to the following example: Linking... WARNING (724) --> Symbol: "__stack" is not defined. WARNING (724) --> Symbol: "__copy_code_to_ram" is not defined. WARNING (724) --> Symbol: "__low_romdata" is not defined. WARNING (724) --> Symbol: "__len_data" is not defined. WARNING (724) --> Symbol: "__low_data" is not defined. WARNING (724) --> Symbol: "__len_bss" is not defined. WARNING (724) --> Symbol: "__low_code" is not defined. WARNING (724) --> Symbol: "__low_bss" is not defined. WARNING (724) --> Symbol: "__len_code" is not defined. WARNING (724) --> Symbol: "__low_romcode" is not defined. To work around this issue, you must add the standard linker directives to the generated link control file via 'Add Directives' on the same settings page. To get the correct directives, set up the project to use the standard startup module and then perform a build. Open the generated link control file (.linkcmd) and copy everything from 'ORDER FAR_DATA,TEXT' to the second blank line into the Add Directives dialog. The link control file will be generated whether or not the build is successful. Reset your project settings and your build should work. 3. The Motorola S-record format is not supported. Utilities exist to convert files to the S-Record format from one or more of the formats supported by ZDS II. These may be acquired via the Internet using an Internet search site such as Yahoo or Google. 4. The OTP programming information will be blank after opening a project that was created with an previous version of ZDS. Open the project settings dialog and click OK to restore the information. CLOSED CHANGE REQUESTS ============================================================================== IDE -------------------------------------------------------------------------- CR 6097 Option bits not verified after programming CR 5967 C:PROGRA~1ZiLOGZDSII_~1.1binZ8cc: C:\TEMP\make9282.sh 1: not found -- build fails on machines with Cygwin installed. CR 4263 OTP programming/RAM CHECKSUM/OTP CHECKSUM fail if performed while debugging. CR 4190 Attempts to edit/write last address location in the memory window generate application error. CR 3888 The "standard start up module" should not be selected as the default during new project creation. Fixed as part of the addition of the Assembly Only project type. CR 3884 Paths longer than the drop down area in the Find In Files dialog are not viewable. CR 3421 After an Emulator reset or an actual PC out of range condition, a -Breakpoint and -PC out of range indicator will be displayed in the debug window. If the program execution stops at a valid breakpoint, the -PC out of range indicator is incorrectly displayed. CR 3275 In the project setting dialog, there are options which are only applicable to C-compiler. Removed when active project is Assembly Only project type. CR 2842 Add use model for creating an Assembly only project. CR 2663 Incorrect or missing line end characters cause syntax or internal error in assembler CR 1245 Editor inserts tabs even when configured to insert spaces OPEN CHANGE REQUESTS ============================================================================== IDE -------------------------------------------------------------------------- CR 6375 The IDE may attempt to set a breakpoint from a previously open project resulting in the error: '[ERROR] Unable to retrieve valid address -- breakpoint not set at line [0] in file' CR 6073 The disassembly window does not reflect run-time code memory changes. Workaround: Use the code memory debug window to read the affected code memory and refresh the disassembly window by entering the desired address. CR 4868 When using Z8 GP Emulator and in debug mode, the Factory option bits can't be programmed. Work-around is to connect using the menu Tools > OTP Programming.