AMX 386/ET Tool Guide

Similar documents
File System TOOL GUIDE. First Printing: July 1, 1995 Last Printing: November 1, Copyright

First Printing: June 1, 1996 Last Printing: November 1, Copyright

AMX 386/ET Target Guide

AMX 4-Thumb Tool Guide

KwikNet. Device Driver. Technical Reference Manual. Version 3. First Printing: May 15, 1998 Last Printing: September 15, 2005

First Printing: November 1, 1990 Last Printing: March 1, Copyright

series SIGNUM SYSTEMS CORPORATION Chameleon WEMU51 for the USP-51 Installation Instructions

Lab 2: Introduction to Assembly Language Programming

JTAGjet. series SIGNUM SYSTEMS CORPORATION. USB 2.0 Driver for JTAGjet and ADM51. Installation Instructions

Low Level Programming Lecture 2. International Faculty of Engineerig, Technical University of Łódź

FX RFID READER SERIES Embedded SDK Sample Application

DPT - EN1 R1 Users Manual

Digital Forensics Lecture 3 - Reverse Engineering

Machine Code and Assemblers November 6

TMS. series SIGNUM SYSTEMS CORPORATION. JTAGjet Driver for Code Composer Studio 2.x/3.0. Installation Instructions

Dr. Ramesh K. Karne Department of Computer and Information Sciences, Towson University, Towson, MD /12/2014 Slide 1

Installation Guide for Windows

ATOLLIC TRUESTUDIO FOR ARM QUICK START GUIDE

For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to

Edimax Pro NMS Quick Installation Guide

Superscalar Processors

Mechanisms for entering the system

LPC4088 Display Module Measurements

Writing 32-Bit Applications

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II)

H8 C-SPY. User Guide WINDOWS WORKBENCH VERSION

Installation Guide. Tivoli Decision Support 2.0

Assembly Language: Function Calls

Trace Debug Tools Version 1.2 Installation Guide

Memory Models. Registers

embos Real-Time Operating System embos plug-in for IAR C-Spy Debugger Document: UM01025 Software Version: 3.1 Revision: 0 Date: May 3, 2018

Target Definition Builder. Software release 4.20

Assembly Language: Function Calls" Goals of this Lecture"

for ColdFire Architectures V7.2 Quick Start

Zynq-7000 Platform Software Development Using the ARM DS-5 Toolchain Author: Simon George and Prushothaman Palanichamy

Assembly Language: Function Calls" Goals of this Lecture"

Controller Continuum. for Microcontrollers V6.3. Quick Start

Media Archive Server for Small Teams

Assembly Language: Function Calls. Goals of this Lecture. Function Call Problems

SOFTWARE RELEASE GUIDE FOR THE MOTOROLA "MCUez SDI FOR HC12" SOFTWARE APPLICATION PACKAGE

ATOLLIC TRUESTUDIO FOR STM32 QUICK START GUIDE

EECE416 :Microcomputer Fundamentals and Design. X86 Assembly Programming Part 1. Dr. Charles Kim

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Embedded Software Development Tools Module No: CS/ES/36 Quadrant 1 e-text

ADSP-218x Family EZ-ICE Hardware Installation Guide

NEW CEIBO DEBUGGER. Menus and Commands

USB Synchronizer Plug-in

x86 assembly CS449 Fall 2017

Chapter 11. Addressing Modes

AN104 I NTEGRATING KEIL 8051 TOOLS INTO THE SILICON LABS IDE. 4. Configure the Tool Chain Integration Dialog. 1. Introduction. 2.

IAR C-SPY Hardware Debugger Systems User Guide

CodeWarrior Development Studio for Freescale 68HC12/HCS12/HCS12X/XGATE Microcontrollers Quick Start SYSTEM REQUIREMENTS Hardware Operating System 200

Name: CMSC 313 Fall 2001 Computer Organization & Assembly Language Programming Exam 1. Question Points I. /34 II. /30 III.

AC/DC Adapter. Figure 1. Hardware Setup

The Instruction Set. Chapter 5

embos Real-Time Operating System embos plug-in for IAR C-Spy Debugger Document: UM01025 Software Version: 3.0 Revision: 0 Date: September 18, 2017

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

MultiMobile USB. Quick Start Guide MT9234MU. V.92 Portable USB Modem

ToolStick-EK TOOLSTICK USER S GUIDE. 1. Kit Contents. 2. ToolStick Overview. Green and Red LEDs. C8051F321 provides USB debug interface.

Relativity Designer Installation Guide

Agilent E2094M IO Libraries

Debugging Nios II Systems with the SignalTap II Logic Analyzer

Virtual Office. Group Call Pickup. Version 1.0. Revision 1.0

Technical Brief Exporting a List of Device MAC Addresses from Xcalibur Global Document Version 1.0

RE866 Interface User Guide

Configuration Guide. SafeNet Authentication Service. SAS Agent for Microsoft NPS Technical Manual Template

The Plasmon UDO Archive Appliance

Assembly Language. Lecture 2 - x86 Processor Architecture. Ahmed Sallam

Systems Architecture I

RAID Configuration Guide. Motherboard

We can study computer architectures by starting with the basic building blocks. Adders, decoders, multiplexors, flip-flops, registers,...

Assembly Language Programming Introduction

Océ Windows Raster Driver 2. Getting Started

IAR Embedded Workbench

IBM XL Fortran Advanced Edition V8.1 for Mac OS X A new platform supported in the IBM XL Fortran family

Intel Architecture. Compass Security Schweiz AG Werkstrasse 20 Postfach 2038 CH-8645 Jona

This document contains information about the ElectricAccelerator Solution Support Add-in. Topics include: Overview 2. New Features and Improvements 2

Machine and Assembly Language Principles

ESS Utility Android App User Guide

3. Process Management in xv6

CodeWarrior Development Studio for Power Architecture Processors Version 10.x Quick Start

CROSSWARE 7 V8051NT Virtual Workshop for Windows. q Significantly reduces software development timescales

Technical support for MCUez development tools is available through your regional. For More Information On This Product, Go to:

COS 318: Operating Systems. Overview. Prof. Margaret Martonosi Computer Science Department Princeton University

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

DS800 Development Suite Quick Start Guide for the FloBoss 107

EN-9235TX-32 Quick Installation Guide

Practical Malware Analysis

Introduction to IA-32. Jo, Heeseung

CodeWarrior Development Studio for StarCore DSP SC3900FP Architectures Quick Start for the Windows Edition

Basic Execution Environment

Assembly Language. Lecture 2 x86 Processor Architecture

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter

INTRODUCTION TO IA-32. Jo, Heeseung

EN-9260TX-E User Manual

COPYRIGHT. Hatch User Guide : Setup 23-Nov-2015 ii

CMSC 313 Lecture 14 Reminder: Midterm Exam next Tues (10/26) Project 4 Questions Virtual Memory on Linux/Pentium platform

Trademark. Cadex C5100 BatteryStore v1.5 User Guide

HDI HP-GL/2 Driver for AutoCAD Getting Started

Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0

Transcription:

AMX 386/ET Tool Guide First Printing: October 15, 2001 Last Printing: November 1, 2007 Copyright 1994-2007 KADAK Products Ltd. 206-1847 West Broadway Avenue Vancouver, BC, Canada, V6J 1Y5 Phone: (604) 734-2796 Fax: (604) 734-8114

TECHNICAL SUPPORT KADAK Products Ltd. is committed to technical support for its software products. Our programs are designed to be easily incorporated in your systems and every effort has been made to eliminate errors. Engineering Change Notices (ECNs) are provided periodically to repair faults or to improve performance. You will automatically receive these updates during the product's initial support period. For technical support beyond the initial period, you must purchase a Technical Support Subscription. Contact KADAK for details. Please keep us informed of the primary user in your company to whom update notices and other pertinent information should be directed. Should you require direct technical assistance in your use of this KADAK software product, engineering support is available by telephone, fax or e-mail. KADAK reserves the right to charge for technical support services which it deems to be beyond the normal scope of technical support. We would be pleased to receive your comments and suggestions concerning this product and its documentation. Your feedback helps in the continuing product evolution. KADAK Products Ltd. 206-1847 West Broadway Avenue Vancouver, BC, Canada, V6J 1Y5 Phone: (604) 734-2796 Fax: (604) 734-8114 e-mail: amxtech@kadak.com AMX 386/ET Tool Guide KADAK i

Copyright 1994-2007 by KADAK Products Ltd. All rights reserved. No part of this publication may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language or computer language, in any form or by any means, electronic, mechanical, magnetic, optical, chemical, manual or otherwise, without the prior written permission of KADAK Products Ltd., Vancouver, B.C., CANADA. DISCLAIMER KADAK Products Ltd. makes no representations or warranties with respect to the contents hereof and specifically disclaims any implied warranties of merchantability and fitness for any particular purpose. Further, KADAK Products Ltd. reserves the right to revise this publication and to make changes from time to time in the content hereof without obligation of KADAK Products Ltd. to notify any person of such revision or changes. TRADEMARKS AMX in the stylized form and KwikNet are registered trademarks of KADAK Products Ltd. AMX, AMX/FS, InSight, KwikLook and KwikPeg are trademarks of KADAK Products Ltd. Microsoft, MS-DOS and Windows are registered trademarks of Microsoft Corporation. All other trademarked names are the property of their respective owners. ii KADAK AMX 386/ET Tool Guide

AMX 386/ET TOOL GUIDE Table of Contents Page 1. Selecting a Tool Set 1-1 2. Paradigm (PD) Tool Guide 2-1 AMX 386/ET Tool Guide KADAK rev3 iii

This page left blank intentionally. iv KADAK AMX 386/ET Tool Guide

1. Selecting a Tool Set Available Toolsets AMX 386/ET and the KwikLook Fault Finder have been developed on a PC with Microsoft Windows using the software development tools described in this guide. To simplify the selection process, KADAK has prepared this Tool Guide. This chapter introduces the tools and defines the subsets which KADAK has used with success. Subsequent chapters provide specific guidelines for using each of the supported toolset combinations with AMX 386/ET. Note that AMX 386/ET is delivered to you ready to use with each of the supported toolsets. Should you wish to rebuild the AMX 386/ET Library for any reason, follow the construction guidelines provided in Appendix D of the AMX User's Guide. To construct your embedded application, you will require a C or C++ compiler, an assembler, a librarian (optional), a linker and/or locator and a remote debugger. The vendors listed below provide these tools. The tool name listed is the vendor's product name or the name of the executable program used to run the tool. The tool name listed will be used throughout this manual to reference the specific tool from a particular vendor. Vendor C/C++ Assembler Librarian Linker Locator Debugger Paradigm PCC32 PASM32 PLIB PLINK32 LOCATE32 via IDE C++ AMX 386/ET Tool Guide KADAK rev3 1-1

Supported Toolsets Unfortunately you cannot arbitrarily use any combination of the listed tools. Of all the tools listed, KADAK has identified combinations which can be used with AMX 386/ET. The supported toolsets are divided into major classes according to the C/C++ compiler vendor and then, if necessary, into sub-classes, one for each locator and/or debugger. Each supported toolset is given a two character mnemonic called a toolset id which is used by KADAK to identify the toolset combination. The two characters of the mnemonic identify the compiler vendor. PD Compiler Paradigm Systems 32-Bit C++ The following toolset combinations are supported by KADAK. Toolset id: Vendor: C++ Assembler Librarian Linker Locator Debugger PD Paradigm PCC32 PASM32 PLIB PLINK32 LOCATE32 via IDE 1-2 KADAK AMX 386/ET Tool Guide

2. Paradigm (PD) Tool Guide AMX 386/ET has been developed on a PC with Windows NT v4.0 using the Paradigm Systems software development tools listed below. The AMX libraries and object modules on the product disks have been generated using the most recent tools listed. If you are not using this toolset, you may have to rebuild the AMX libraries in order to use your out-of-date tools. Tools v6.0 PCC32 Paradigm C++ compiler v6.0 PASM32 Paradigm assembler (Note 1) v5.0 PLIB Paradigm Librarian v6.0 PLINK32 Paradigm Linker v6.0 LOCATE32 Paradigm Locator v6.0 via IDE Paradigm Debugger v6.0 Paradigm PDREMOTE/ROM Target Monitor Note 1: The assembler provided with Paradigm v5.0 and v6.0 tools identifies itself as v5.0. AMX 386/ET and KwikLook have been tested on the following platforms. 80486 PC/AT Pentium PC/AT Environment Variables Set the following environment variables to provide access to all AMX and Paradigm tools, header files, object files and libraries. CJPATH PATH INCLUDE LIB TMP Path to AMX installation directory (...\AMX722) Path to AMX and Paradigm executable programs Path to all Paradigm include header files Path to all Paradigm object files and libraries Path to a temporary directory for use by tools AMX 386/ET (PD) Tool Guide KADAK 2-1

Object Formats Paradigm generates the OMF object format. The AMX 386/ET libraries and object modules are provided in OMF format. Your object modules and the AMX and Paradigm libraries and object modules, all in OMF format, can be combined to create an executable module in Portable Executable (PE) format suitable for use with the Paradigm IDE debugger. Parameter Passing Conventions AMX 386/ET follows the stack based parameter passing convention common to all toolsets supported by KADAK. Register Usage The Paradigm version of AMX 386/ET makes the following C interface register assumptions. Registers EAX, EBX, ECX and EDX can always be altered by C procedures. Registers ESI, EDI, EBP, ESP and all selector registers are preserved by AMX 386/ET according to the Paradigm rules for C procedures. Integers and pointers are returned from C procedures in register EAX. The DS register is dedicated for access to the global data segment. All code which calls AMX or which is called by AMX must reside in the common code segment referenced by CS. You must NOT use any C compilation switch which changes these register assumptions. Segmentation Assumptions AMX 386/ET assembler modules do NOT use ER and RW segment attributes since the Paradigm assembler does not require them. Data segments are given the class name 'DATA' and are grouped into group DGROUP. Code segments are given the class name 'CODE' and are NOT grouped into group CGROUP. IDE or Command Line The Paradigm C++ Integrated Development Environment (IDE) provides a Windows environment in which the Paradigm tools can be used to create and test your AMX application. The tools can also be invoked directly from the Windows command prompt. This tool guide describes the use of the command line tools, identifying the particular command line switches required for construction of your AMX application. Most developers will prefer to use the Paradigm IDE in which command line switches are replaced by IDE option settings. Browse the HTML manual AMX_PD.HTM in installation directory AMX722\MANUALS\TOOLPD\IDE. It describes how the Paradigm project CJSAMPLE.IDE in directory AMX722\TOOLPD\IDE was created and then used to build the AMX 386/ET Sample Program. 2-2 rev3 KADAK AMX 386/ET (PD) Tool Guide

Compiling the AMX System Configuration Module Your AMX System Configuration Module SYSCFG.C is compiled as follows. All AMX header files CJ722xxx.H and the generic AMX include file CJZZZ.H must be present in the current directory together with file SYSCFG.C. PCC32 -c -f- -O2 -w-aus -w-par -w-pro SYSCFG.C Assembling the AMX Target Configuration Module Your AMX Target Configuration Module HDWCFG.ASM is assembled as follows. The generic AMX header file CJZZZK.DEF must be present in the current directory together with file HDWCFG.ASM. PASM32 /ML /N /T HDWCFG.ASM Making Libraries To make a library from a collection of object modules, create a library specification file YOURLIB.LBM. Use the Paradigm version of the AMX library specification file CJ722.LBM as a guide. Make your library as follows. PLIB @YOURLIB.LBM AMX 386/ET (PD) Tool Guide KADAK 2-3

Using the Paradigm C++ Compiler All AMX header files CJ722xxx.H and the generic AMX include file CJZZZ.H must be present in the current directory together with your source file being compiled. Use the following compilation switches when you are compiling modules for use in the AMX environment. by default ; pass all parameters on stack by default ; output object module FILENAME.OBJ by default ; use flat model -c ; compile but do not link -f- ; (optional) no floating point -O2 ; (optional) use default optimization -v ; (optional) generate debug information The compilation command line is therefore of the form: PCC32 -c -f- -O2 FILENAME.C The following compilation switches are also used when compiling AMX modules to suppress unavoidable warning messages generated by the Paradigm compiler. -w-aus -w-par -w-pro ; suppress warning for unused variables ; suppress warning for unused function parameters ; suppress warning for function pointer without prototype 2-4 KADAK AMX 386/ET (PD) Tool Guide

Linking with the Paradigm Linker When used with Paradigm C++, the modules which form your AMX system must be linked in the following order. C0X32.OBJ ; Paradigm C++ startup module Your MAIN module Other application modules SYSCFG.OBJ HDWCFG.OBJ ; AMX System Configuration Module ; AMX Target Configuration Module AMX PC/AT or Intel386EX Evaluation Board clock driver: AT386BRD.OBJ ; AMX PC/AT board support module CH8253T.OBJ ; AMX 8253 clock driver or your equivalent CJ722UF.OBJ CJ722RAC.OBJ ; Launch and leave AMX (may be customized) ; AMX ROM Access Module (customized) ; (only if AMX placed in a separate ROM) ; (see Appendix C in AMX 386/ET Target Guide) CJ722CV.LIB CJ722.LIB RTTHEAP.LIB NOEH32.LIB CW32.LIB EMBED32.LIB ; AMX 386/ET vc Conversion Library ; (only if converting an AMX 86 v3, AMX 386 v1 or ; AMX 68000 v2 application) ; AMX 386/ET Library ; Paradigm C++ Runtime Libraries for target hardware AMX 386/ET (PD) Tool Guide KADAK rev2 2-5

Create a link specification file YOURLINK.LKS. Use the Paradigm version of the AMX Sample Program link specification file CJSAMPLE.LKS as a guide. Create a locate specification file YOURLINK.CFG. Use the Paradigm version of the AMX Sample Program locate specification file CJSAMPLE.CFG as a guide. Start with the sample link and locate specification files for the board which most closely resembles your hardware configuration. Note If you decide to omit any of the link and locate commands from the sample specification, you may encounter link errors or run-time faults. Link with the Paradigm linker using the following linker options on the command line or in the link specification file. -Tpe ; generate intermediate PE file YOURLINK.EXE -c ; symbols are case sensitive -m ; create a segment and symbol map file YOURLINK.MAP -v ; (optional) add debug information for IDE debugger use The link command line for toolset PD is therefore of the form: PLINK32 -Tpe -c -m @YOURLINK.LKS The resulting load module YOURLINK.EXE must be converted to a form suitable for use with the Paradigm IDE debugger. Locate with the Paradigm LOCATE32 tool using the following command line options. by default YOURLINK by default ; create a segment and symbol map file YOURLINK.LOC ; use configuration file YOURLINK.CFG ; generate output files YOURLINK.AXE and YOURLINK.RTB ; generate image file YOURLINK.HEX if specified by ; configuration file YOURLINK.CFG The locate command line for toolset PD is therefore of the form: LOCATE32 YOURLINK The resulting executable modules YOURLINK.AXE and YOURLINK.RTB are ready for use with the Paradigm IDE debugger. The resulting load module YOURLINK.HEX is ready for burning into ROM. 2-6 rev3 KADAK AMX 386/ET (PD) Tool Guide

Linking a Separate AMX ROM AMX can be committed to a separate ROM as described in Appendix C of the AMX Target Guide. Use the AMX Configuration Manager to edit your Target Parameter File HDWCFG.UP to define your ROM option parameters. Then use the Manager to generate your ROM Option Module CJ722ROP.ASM, ROM Access Module CJ722RAC.ASM and ROM Option locate specification file CJ722ROP.CFG. The AMX Configuration Manager must have access to the ROM Option Locate Template file CJ722ROP.CFT. If you have installed AMX for multiple toolsets, the Manager may not be referencing the Paradigm toolset directory TOOLPD for its template files. Go to the File, Templates... menu and, from the list of selectors, choose the selector for the ROM Option Link/Locate File. Adjust the configuration template by browsing for the file TOOLPD\CFG\CJ722ROP.CFT. The ROM Option and ROM Access source modules are assembled as follows. PASM32 /ML /N /T CJ722ROP.ASM PASM32 /ML /N /T CJ722RAC.ASM The AMX ROM is linked and located with the Paradigm linker and locator using the AMX ROM Option link specification file CJ722ROP.LKS and locate specification file CJ722ROP.CFG as follows. PLINK32 -Tpe -c -m @CJ722ROP.LKS LOCATE32 CJ722ROP This example generates files CJ722ROP.AXE and CJ722ROP.RTB in the file format supported by the Paradigm IDE debugger. The resulting load module CJ722ROP.HEX is ready for burning into ROM. When you link your AMX application, be sure to include your customized AMX ROM Access Module CJ722RAC.OBJ (created above) in your system link specification file. AMX 386/ET (PD) Tool Guide KADAK 2-7

Using the AMX Configuration Generator If you cannot use the AMX Configuration Manager, you may still be able to use the stand-alone AMX Configuration Generator to generate the ROM Option Module CJ722ROP.ASM, ROM Access Module CJ722RAC.ASM and ROM Option locate specification file CJ722ROP.CFG. Copy the ROM Option and ROM Access template files CJ722ROP.CT and CJ722RAC.CT to the current directory. Also copy the ROM Option Locate Specification Template file CJ722ROP.CFT to the current directory. Use the AMX Configuration Generator to generate the ROM option source modules as follows. CJ722CG HDWCFG.UP CJ722ROP.CT CJ722ROP.ASM CJ722CG HDWCFG.UP CJ722RAC.CT CJ722RAC.ASM CJ722CG HDWCFG.UP CJ722ROP.CFT CJ722ROP.CFG Once the ROM option source modules have been created, you can proceed to build your AMX ROM image and your AMX application as previously described. 2-8 KADAK AMX 386/ET (PD) Tool Guide

Paradigm IDE Debugger The Paradigm IDE debugger is a Windows based debugger which supports source level debugging of your AMX 386/ET system. The Paradigm debugger can operate using an in-circuit emulator connected to your 80x86 target hardware. Check with Paradigm to determine which emulators are supported. When used with hardware assisted breakpointing, your target processor is effectively halted while at breakpoints. The Paradigm IDE debugger can also operate using a serial (or other) connection to the system under test. When used in this fashion, you must install the Paradigm PDREMOTE/ROM Target Monitor in your target hardware. Instructions for doing so are provided by Paradigm. Your version of the target monitor must provide a device driver for the serial (or other) device used for communication with the host debugger. It is recommended that your driver use polled I/O so that the target monitor can operate with interrupts disabled. Using the KwikLook Fault Finder The KwikLook Fault Finder is compatible with the Paradigm IDE debugger providing full screen, source level, task-aware debugging from within the Microsoft Windows environment. KwikLook can be invoked directly from the debugger while at breakpoints giving you finger tip access to your application from the AMX perspective. Note that KwikLook and the Paradigm debugger share a common link to the target system. AMX 386/ET (PD) Tool Guide KADAK rev2 2-9

This page left blank intentionally. 2-10 KADAK AMX 386/ET (PD) Tool Guide