• Aucun résultat trouvé

1987 HANDl8l0m{S Product

N/A
N/A
Protected

Academic year: 2022

Partager "1987 HANDl8l0m{S Product"

Copied!
819
0
0

Texte intégral

(1)
(2)

To order Intel literature write or call:

Intel Literature Sales P.O. Box 58130

Santa Clara, CA 95052-8130

Intel Literature:

(800) 548-4725

Use the order blank on the facing page or call our Toll Free Number listed above to order literature.

Remember to add your local sales tax and a 10% postage charge for U.S. and Canada customers, 20% for outside U.S. customers.

1987 HANDl8l0m{S

Product line handbooks contain data sheets, application notes, article reprints and other design information.

'PRICE IN

NAME ORDER NUMBER U.S. DOLLARS

COMPLETE SET OF 9 HANDBOOKS 231003 $125.00

Save $50.00 off the retail price of $175.00

MEMORY COMPONENTS HANDBOOK 210830 $18.00

MICROCOMMUNICATIONS HANDBOOK 231658 $20.00

EMBEDDED CONTROLLER HANDBOOK 210918 $18.00

(includes Microcontrollers and 8085,80186,80188)

MICROPROCESSOR AND PERIPHERAL HANDBOOlI 230843 $25.00

(2 Volume Set)

DEVELOPMENT TOOLS HANDBOOK 210940 $18.00

DOS DEVELOPMENT SOFTWARE CATALOG 280199 N/C

OEM BOARDS AND SYSTEMS HANDBOOIC 280407 $18.00

MILITARY HANDBOOK 210461 $18.00

COMPONENTS QUALITY /RElLIABILITY HANDBOOIC 210997 $20.00

SYSTEMS QUALITY/RELIABILITY HANDBOOK 231762 $20.00

PRODUCT GUIDE 210846 N/C

Overview of Intel's complete product lines

LITERATURE PRICE LIST 210620 N/C

List ofIntel Literature

INTEL P ACICAGING OUTLINES AND DIMENSIONS 231369 N/C

Packaging types, number of leads, etc.

*These prices are for the U.S. and Canada only. In Europe and other international locations, please contact your local Intel Sales Office or Distributor for literature prices.

(3)

inter

LITERATURE SALES ORDER FORM

NAME:_~

______

~

____

~

______________________________________ __

COMPANY:~~

____________

~

______________________________

~

__ ___

ADDRESS: ______

~---~---

CITY: ______________________ -.,---:-_____ STATE: _-'--__ -'-'- ZIP: ________ _ COUNTRY: __________

~

________________________________________ ___

PHONE NO.:

(!-__ ---!.. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ " ' - -_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

ORDER NO • .

I

Must add appropriate postage to subtotal (10% U.S. and Canada, 20% all other)

TITLE

. ,

, QTY. PRICE TOTAL ___ x ___ =

_. _. _ X _ _ _

=

____ X _ _ _

=

____ X _ _ _

=

____ X _ _ _

=

____ X _ _ _

=

. ' ____ X _ _ _

=

____ X _ _ _

=

___ X _ _ _

=

___ X _ _ _

=

Subtotal Must Add Your

Local Sales Tax'

~

Postage Total

Pay by Visa, MasterCard, American' Express, Check, Money Order, or company purchase order payable to Intel Literature Sales. Allow 2-4 weeks for delivery. .

o Visa 0 MasterCard 0 American Express Expiration Date ________ __

AccountNo. ___________________

~

__ - - - - Signature: _________ -'-_ _ -:-:-_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Mall To: Intel Literature Sales

P.O. Box 58130 Santa Clara, CA

95052-8130

International Customers outside the U.S. and Canada should' contact their local Intel Sales Office

or

Distributor listed in the back of most Intel literature.

European Literature Order Form in back of book.

Call Toll Free:

(800) 548·4725 for phone .orders

Prices good until 12/31/87.

(4)

We Bring 'OurWorld

to Your Door

Intel's New Product

Literature Subscription Service.

Keeping up with today's technology takes alot of time and effort. With Intel's new Literature Subscription Service you will receive a package of.current literature plus automatic quarterly updates on all the latest product and service news from Intel. From micropro- cessors - to peripherals and memories, - to OEM boards, systems and software, you can choose to receive information from one, or all three, product categories for an entire year at a low one-time cost.

Save Time and Money.

Subscribe Today.

Save 10% when ordering two or more packages.

Each Literature Package Contains:

To order, use the literature order form provided in this book or call TOLL FREE 800-548-4725

Newly published Data Sheets, Fact Sheets, Application Notes, Reliability Reports, Errata Reports, Article Reprints, Promotional Offers, Brochures, Flyers, Benchmark Reports, Technical Papers and more ...

The charge for this serv.ice covers, our printing, postage and handling costs only.

In Addition, Each Individual Package Contains:

Product Line Handbooks on Micropro- cessors, Development Tools and Embedded Controliers.

plu.

Quality/Reliability Information, The Product Guide, Literature Guide and Packaging Information.

plu.

Three Quarterly Updates containing ali new documentation on these products.

(Retail Value of Handbooks alone: $81) Your price for the complete package with quarterly updates: $70

Order Number 555100

inter

Product Line Handbooks on Per;pher- als, Microcommunications. Memories, and EPLD

plu.

Quality/Reliability Information, The PrOduct Guide, The Literature Guide, Packaging Information and other supporting information.

plu.

Three Quarterly Updates containing ali new documentation on these products.

(Retail value of Handbooks alone: $83) Your price for the complete package wtth quarterly updates: $70

Order Number 555101

Produce Line Handbooks on OEM Boards and Systems

plu.

Quality/Reliability Information, The Product Guide, The Literature Guide, and other supporting information.

plu.

Three Quarterly Updates contain'ing ali new documentation on these products.

(Retail Value of Handbo,oks alone: $38) Your price for the complete package with quarterly updates: $60

Order Number 555102

Customers outside the U.S. and canada should order directly from the U.S. on the U.S. literature order form.

Offer expires 12131187

(5)

FREE DEVELOPMENT

SOFTWARE CATALOG

Intel's DEVEWPMENT SOFTWARE CATAWe con- tains a complete description of Intel's high level languages, utilities, assembly languages, editors and debuggers running on DOS, VMS, ISIS, and iNDX.

Call or write today for your FREE COPY

Call TOLL-FREE 1-800-87-INTEL for your free copy, or fill out the coupon below:

Clip and mail to:

Intel Corporation p.D. Box 58065

Santa Clara, CA 95052-8065 (H89) 0 YES! I want my free copy of

Intel's Development Software Catalog.

o Have an Intel Sales Representative Call Me.

Name _ _ --'-_ _ _ _ _ _ _ _ _ _ _ Title _ _ _ _ _

Company Mailstop _ _ _ _

Address _...,---_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Phone ( _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

City _ _ _ _ _ _ _ _ _ _ _ State _ _ _ _ ZIP _ _ _

(6)
(7)

DEVELOPMENT TOOLS HANDBOOK

1987

About Our Cover:

Intel's open environment provides developers with a portable set of dedicated tools with networking capabilities resulting in greater productivity, expandability, upgraqeability and a shorter time to market Our powerful dedicated and proven set of software development tools are abstractly represented here as another familiar set of dedicated and proven tools.

Concept/Design: Hall Kelley, Concept/Photography: R.

J.

Muna

(8)

-, ~ . "

Intel Corporation makes no warranty for the use of its products and assumes no responsibility for any errors which may appear in this document nor does it make a commitment to update the information contained herein.

Intel retains the right to make changes to these specifications at any time, without notice.

Contact your local sales office to obtain the latest specifications before placing your order.

TheJ9Uowing are trademarks of Intel Corporation and may only be used to identify Intel Products:

Above, BITBUS, COMMputer, CREDIT, Data Pipeline, FASTPATH, GENIUS, i,

t

ICE, iCEL, iCS, iDBP, iDIS, 121CE, iLBX, Inboard, im, iMDDX, iMMX, Insite, Intel, intel, intelBOS, Intelevision, inteligent Identifier, inteligent Programming, InteUec; Intellink, iOSP, iPDS, iPSC, iRMX, iSBC, iSBX, iSDM, iSXM, KEPROM, Library Manager, MAP-NET, MCS, Megachassis, . MICROMAINFRAME, MUL TIBUS, MULTICHANNEL, MUL TIMODULE, MultiSERVER, ONCE, OpenNET, OTP, PC-BUBBLE, Plug-A-Bubble, PROMPT, Promware, QUEST, QueX, Quick-Pulse Programming, Ripplemode, RMX/80, RUPI; Seamless, SLD, UPI, and VLSiCEL, and the combination of ICE, iCS, iRMX, iSBC, iSBX, iSXM, MCS, or UPI and a numerical suffix 4-SITE.

Ethernet is a trademark of Xerox.

MDS is an ordering code only and is not used as a product name or trademark. MDS® is a registered trademark of Mohawk Data Sciences Corporation. •

*MUL TIBUS is a patented Intel bus.

Additional copies of this manual or other Intel literature may be obtained from:

Intel Literature Department

SCEi~59 . .

. P~O.:. Box 58065 . . Santa Clara, CA 95052-8065.

@) INTEL CORPORATION 1987

(9)

Table of Contents

Alphanumeric Index ... . . . ix Intel's Development Environment-The Complete Solution. . . xi CHAPTER 1

Microcomputer Development Languages DATA SHEETS

386 Software Tools. . . 1-1 80286 Software Development Package .. . . 1-14 PASCAL286 ... 1-19 PL/M 286... 1-22 iC 286 ... ,... 1-26 8086/8088 Software Development Package for Series II/PDS ... 1-30 8086/8088/80186/80188 Software Packages... 1-40 FORTRAN 808080/8085 ANS FORTRAN 77 Intellec® Resident Compiler ... 1-61 Pascal 80 Software Package ... , .. ;... 1-65 PLIM 80 High-Level Programming Language... 1-70 8087'Support Library ... '.' . . . • . . . 1-73 80287 Support Library ... ' . . . 1-77

--Yc- 8051 Software Packages. .. . . .. . . .. . . .. . . .. . . .. . . .. . . 1-81 MCS®-48 Diskette Based Software Package. . . 1-90

X MCS®-96 Software Development Packages .. . .. . . .. . . .. . . 1-92 VAx*7VMS* Flesident Software Development Packages for 80286 . . . .. 1-100 VAX· /VMS· Resident 8086/8088/80186 Software Development Packages. . . ... 1-106 PRODUCT BRIEFS

Ada 286 Compilation -System ... , ... 1-113

FACT SHEETS .

Intel Microprocessor Languages ... '... 1-115 ARTICLE REPRINTS

AR-59 Modular Programming in PLIM ... 1-117 AR-136 PLIM 86 Combines Hardware Access with High-Level Language

Features. . . .. 1-124 AR-200 Compiler Organization Techniques. . . .. . . .. 1-131 AR-239 PLIM 51: A High Level Language for the 8051 Microcontroller Family. . . .. 1-137 AR-377 Integrated Tools Accelerate Code Development ... 1-144 AR-388 Ada Task Synchronization in a Multiprocessor System with Shared

Memory ... 1-150 AR-390 Ada Capabilities for Today's Microprocessors ... 1-161 AR-501 .OBJ Lessons ... : ... " .... '. 1-165 CHAPTER 2

Microcomputer Software Development Tools DATA SHEETS

PSCOPE Monitor 386ES (P-MON 386ES) ... 2-1 PSCOPE-86 for DOS

High~Level

Application Program Debugger. . . 2-5 PSCOPE High-Level Program Debugger for iRMXTM, XENIX*, Series III and

Series IV ... 2-12 DeblJg MONitor 386 (D-MON 386P) ... 2-20 8086 Handyman ...•... ;... 2-23 AEDIT Source Code and Text Editor for PC-DOS. . . .. . . . .. . . .. . . • . . 2-28 iPATTM Performance Analysis Tool. . . .. . . .. . . .. . . 2-31

PRODUCT BRIEFS . '

80386 Development Environment . . . .. . . .. . . • . 2-44 APPLICATION NOTES

AP-243 Debugging with Intel on the VAX· ... 2-46

(10)

Table of Contents (Continued)

AP-253 Adding Value to Intel's NDS II Development System Network with

CP/M-80. . . .. .. . . .. . . 2-56 ARTICLE REPRINTS

AR-225 Debugging Catches up with High-Level Programming . . . 2-64 AR-319 Software Development... 2-70 AR-352 Integrated Environment Speeds System Development. . . 2-75 CHAPTER 3

In Circuit Emulators DATA SHEETS

-~<iSBE-96

Development Kit Single Board Emulator. . . .. . . 3-1 . 1

2

1CE Integrated Instrumentation and In-Circuit Emulation System. . . 3-9 7\VLSiCETM_96P

!n-~ircuit

Emulator for the MCS®-96 Family of Microcontrollers ...

~

3-62 ICETM-386 In-CircUit Emulator for the 80386 . . . .. . . .. . . 3-73 ICETM-51 00/044 In-Circuit Emulator for the RUPITM-44 Family . . . 3-83 -;~f ICETM-51 00/252 In-Circuit Emulator for MCS®-51 Family of Microcontrollers. . . 3-91

ICETM-51 00/452 In-Circuit Emulator for the UPITM 452 Family of Programmable

I/O Processors... 3-101 APPLICATION NOTES

AP-239 Customer Applications of the EMV-88 Emulation Vehicle. . . .. 3-110

AP~262

Using Procedures to Speed 1

2

1CETM System Debugging ... ; . . . . .. 3-123 AP-273 Developing MCS®-96 Applications Using the SBE-96 . . .. . . .. . . .. 3-174 CHAPTER 4

Network Development Systems DAiASHEETS

OpenNETTM Network Resource Manager (NRM) iMDX 460 . . . .. . . 4-1 Compilengine iMDX 485CE . . . 4-6 OpenNETTM Personal Computer Link. . . .. . .. . . 4-11 NDS liN AX'" Link Networking Software ... '.. ... . .. . .. . .. .. .. .. . .. . .. . . .. .. 4-17 iMDX 555 NDS-II NRM OpenNETTM Upgrade. . . .. . . 4-20 iMDX 581 ISIS Cluster Board Packages... ...

4~24

Intel Asynchronous Communications Link . . . 4-28 NDS II/Series IV/OpenNETTM Toolbox... 4-31 PRODUCT BRIEFS

VAX*NMS*/OpenNETTM Networking Software ... ,... 4-36 FACT SHEETS

Networking for the Development Environment ... 4-39 APPLICATION NOTES

AP-240 Using Archive to Efficiently Control a Network. . . 4-42 AP-242 Additional Printer Support for the NDS-II System ... 4-54 AP-244 Distributed Job Control the Key to Increased Network Productivity. . . 4-66 AP-246 Setting Up an Efficient Hierarchical File System. . . .. . . 4-79 AP-247 Adding Capability to the NDS-11 System with Cluster Boards. . . 4-93 AP-278 Integrating the PC AT into the Intel Development Environment... 4-105 ARTICLE REPRINTS

AR-204 Smartlink comes to the Rescue of Software-Development Managers ... 4-124 AR-425 Helping Computers Communicate. . . .. 4-129 CHAPTERS

Microcomputer Development Systems DATA SHEETS

iMDX 430/431/440/441 Intellec® Series IV Microcomputer Development

System... 5-1 iPDSTM Personal Development System .. '... 5-6

vii

(11)

Table of Contents

(Continued)

iPDSTM-130 Optional Flexible External Disk Drive for the iPDSTM Personal

Development System. . . .. . . 5-18 iPDSTM Proto Kit . . . 5-22 APPLICATION NOTES

AP-156 Designing Modules for the iPDSTM and iUP Systems. . . 5-24 AP-245 Using Command Files to Speed Program Development ... 5-46

CHAPTER 6

System Design Kits

DATA SHEETS

SDK-86 MCS®-86 System Design Kit . . . 6-1

CHAPTER 7

PROM Programming

DATA SHEETS

iUP-200AliUP-201A Universal PROM Programmers... 7-1 iUP/iPDSTM Programming Modules. . . 7-11 APPLICATION NOTES

AP-179 PROM Programming with the Intel Personal Development System

(iPDSTM) . . . 7-20

CHAPTER 8

EPLD Development Tools

DATA SHEETS ,

iPLDS Intel Programmable Logic Development System. . . 8-1 APPLICATION NOTES

AP-279 Implementing and EPLD Design Using Intel's Programmable Logic

Development System. . . 8-9

viii

(12)

Alphanumeric Index

386 Software Tools.· .. ' ... '; ... :.'; .. " .... " . . . 1-1 80286 Software Development Package ...•... , . 1-14 80287 Support Library ... ' ... , ... '.' . . . 1-77 80386 Development Environment ... ; •...•... , 2-44 8051 Software Packages ... ' ..•.... , ... ;. , ... ' .. ' ... ;; . ."; ... '.... . 1-81 8086 Handyman '.' ... '.' ... , . , ... , ' ... " ... ' . ; . '... 2-23 8086/8088/80186/80188 Software Packages. . . .. . . .. 1-40 8086/8088 Software Development Package for Series II/PDS ... :: . 1-30 8087 Support Library ...•. ~ .. ~ . ; .. ~ 1'-73 Ada 286 Compilation System ... , ... ," . . . .1-113 AEDIT Source Code and Text Editor for PC-DOS ... " .. ~ . . . 2-28 Compilengine iMDX 485CE ... ; . 4;,6 Debug MONitor 386 (D-MON 386P) ... , .... , .. '" , 2-20 FORTRAN 80 8080/8085 ANS FORTRAN 77lntellec® Resident Compiler ...•.. ; ... 1~61 121CE Integrated Instrumentation and In~Circuit Emulation.?ystem ...•... , .. , ... ,.. . 3-9 iC 286 ... · ...•... ' •. '. ... 1-26 iMDX 430/431/440/441 Intellec® Series IV Microcomputer Development System ... -:~ 5-1 iMDX 555 NOS-II NRM OpenNETTM Upgrade ... " ~ ... : ... , .. ' 4-20 iMDX 581 ISIS Cluster Board Packages ...•...• ; • . . 4-24 iPATTM Performance Analysis Tool ... , ., . . . 2-31 iPDSTM Personal Development System. . . .. . . ' 5"6 iPDSTM Proto Kit ... , ... " ... ; ... ".' .. 5~22 iPDSTM-130 Optional Flexible External Disk Drive for the iPDSTM Personal Development '.

System ... " ... ; ... ' ... ' .. ' ... ' ... ;"

iPLDS Intel Programmable Logic Development System ... , . ~' .. . iSBE-96 Development Kit Single Board Emulator ... . iUP-200A/iUP-201 A Universal PROM Programmers ... , ., ... ' ... ; ... , .... . iUP/iPDSTM Programming Modules ... , ... . Intel Asynchronous Communications Link ... . Intel Microprocessor Languages ... . ICETM-386 In-Circuit Emulator for the 80386 ... . ICETM-51 00/044 In-Circuit Emulator for the RUPITM-44 Family ... . ICETM-51 00/252 In-Circuit Emulator for MCS®-51 Family of Microcontrollers ... . ICETM-51 00/452 In-Circuit Emulator for the UPITM 452 Family of Programmable I/O

Processors ... . MCS®-48 Diskette Based Software Package ... . MCS®-96 Software Development Packages ... . , Networking for the Development Environment ... . NOS II/Series IV /OpenNETTM Toolbox .. ; ... . NOS IIIVAX* Link Networking Software ... . OpenNETTM Network Resource Manager (NRM) iMDX 460 ... . OpenNETTM Personal Computer Link ... ' ... . Pascal 80 Software Package ... . PASCAL 286 ...•... ~ ... , ... . PL/M 286 ... , ... . PLIM

eo

High-Level Programming Language ... . PSCOPE High-Level Program Debugger for iRMXTM, XENIX*, Series III and Series IV .... . PSCOPE Monitor 386ES (P-MON 386ES) ... . PSCOPE-86 for DOS High-Level Application Program Debugger ... . SDK-86 MCS®-86 System Design Kit ... . VAX· IVMS· Resident Software Development Packages for 80286 ... . VAX"IVMS* Resident 8086/8088/80186 Software Development Packages ... , VAX*IVMS*/OpenNETTM Networking Software ... . VLSiCETM-96P In-Circuit Emulator for the MCS®-96 Family of Microcontrollers ... .

ix

5-18 8-1 3-1 7-1 7-11 4-28 1-115 3-73 3-83 3-91 3-101 1-90 1-92 4-39 4-31 4-17 4-1 4-11 1-65 1-19 1-22 1-70 2-12 2-1 2-5 6-1 1-100 1-106 4-36 3-62

(13)

CUSTOMER SUPPORT

CUSTOMER SUPPORT

Customer Support is Intel's complete support service that provides Intel customers with hardware support, software support, customer training, and consulting services. For more information contact your local sales offices.

After a customer purchases any system hardware or software product, service and support become major factors in determining whether that product will continue to meet a customer's expectations. Such support requires an interna- tional support organization and a breadth of programs to meet a variety of customer needs. As you might expect, Intel's customer support is quite extensive. It includes factory repair services and worldwide field service offices providing hardware repair services, software support services, customer training classes, and consulting services.

HARDWARE SUPPORT SERVICES

Intel is committed to providing an international service support package through a wide variety of service offerings available from Intel Hardware Support.

SOFTWARE SUPPORT SERVICES

Intel's software support consists of two levels of contracts. Standard support includes TIPS (Technical Information Phone Service), updates and SUbscription service (product-specific troubleshooting guides and COMMENTS Maga- zine). Basic support includes updates and the SUbscription service. Contracts are sold in environments which repre- sent product groupings (i.e., iRMX environment).

CONSULTING SERVICES

Intel provides field systems engineering services for any phase of your development or support effort. You can use our systems engineers in a variety of ways ranging from assistance in using a new product, developing an application, personalizing training, and customizing or tailoring an Intel product to providing technical and management con- sulting. Systems Engineers are well versed in technical areas such as microcommunications, real-time applications, embedded microcontrollers, and network services. You know your application needs; we know our products. Work- ing together we can help you get a successful product to market in the least possible time.

CUSTOMER TRAINING

Intel offers a wide range of instructional programs covering various aspects of system design and implementation. In just three to ten days a limited number of individuals learn more in a single workshop than in weeks of self-study.

For optimum convenience, workshops are scheduled regularly at Training Centers worldwide or we can take our workshops to you for oil-site instruction. Covering a wide variety of ~opics, Intel's major course categories include:

architecture and assembly language, programming and operating systems, bitbus and LAN applications.

x

(14)
(15)

intJ

INTRODUCTION

Intel recognizes that developing a product based on an advanced microprocessor creates major challenges for an engineering group. Intel helps you meet these chal- lenges and keep your project under control with a set of development tools tailored to the architecture you are using. These tools help you get your product develop- ment done with your schedule and budget targets by solving problems that waste valuable engineering time.

The first key to productive development is to work on your product instead of developing and integrating tools. Intel has tools for each phase of your project, and each of them works smoothly with the others to form an effective, integrated tool set. And the tools work on popular industry-standard systems, including the IBM PC AT and PC XT and compatible personal computers and Digital Equipment Corporation V AX!VMS

*

sys- tems.

HIGH-LEVEL LANGUAGE SUPPORT

Each Intel microprocessor and microcontroller is sup- ported by a set of high-level languages that have the three important elements of well-integrated tools:

The most important integration is between the tools and the processor. Intel assemblers and compilers are optimized around the architectures they sup- port: that means better performance for your prod- uct. And efficient compilers mean you can write more of your code in high-level languages instead of assembly language.

Effective coding generally requires a family of com- patible translators so that you can draw on the most appropriate language to implement. each part of a design. PL/M, Pascal, C, FORTRAN, and assem- bly language enjoy certain advantages over each other, depending on the application. You can link object modules from any of the Intel translators without further modifications.

The symbolic debugging power of Intel's debuggers is enhanced by communication between the transla- tors and debuggers.

Development Languages and Utilities

Assemblers All Intel assemblers-and there's one for every . major Intel component-provide full macro support.

PL/M

C

PL/M was the first high~level language designed expressly for microprocessors. It is a procedure-oriented language with data structuring facilities that gives. the engi- neer full control over microprocessor-de- pendent architecture features. It is one of the most widely used tools in the micro- processor and microcontroller world.

C-86 is a true implementation of the C programming language defined. by Kering- han and Ritchie. C is known for its flexi- bility and portability.

Pascal Pascal-86 and Pascal-286 are supersets of ISO Pascal, with extensions for indepen- dent compilation and port I/O. They also embody advanced code optimization tech- niques to achieve extremely efficient pro- grams.

FORTRAN FORTRAN-86 and FORTRAN-286 .are ANSI-77 standard compilers augmented with full 8087/80287 support and the abil- ity to handle very large arrays (over 64 KB).

Utilities Intel linkage utilities allow independent assembly and compilation of program modules. Library managers allow the management of standard modules and routines. In the case of the 80286, a sys- tem builder is provided to allow easy con- figuration of a complex, protected, memo- ry-managed system.

HARDWARE AND SOFTWARE DEBUGGERS

Most of the unpleasant surprises that can delay a proj- ect attack in the debugging phase. Intel has made de- buggers a part of each microprocessor family package, beginning with ICE 80, the world's original in-circuit emulator. Intel's debuggers have the power to let you find bugs early, while they are still cheap and easy to fix, imd to find many bugs that would not otherwise be fixed without a major waste of engineering time and schedule time.

Intel's popular ICETM In-Circuit Emulators continue their key role in development projects, with. full-speed, transparent debugging for Intel components. Intel ICE debuggers feature symbolic debugging, the ability to stop execution under user-determined conditions, trace collection, and emulation memory for program execu- tion.

(16)

intJ INTRODUCTION DEBUGGERS FOR 8086, 80186, AND

80286 FAMILY MICROPROCESSOR APPLICATIONS

Intel's debugging product line for the 8086, 80186, and 80286 families of IDicroprocessors features a pair of powerful tools covering the full range of development

needs: ; , '

Debugging Task Tool

Host-resident, high-level PSCOPE software debugging

Full-Speed, transparent 121CETM Emulator software-hardware

integration and debug

The took share a common user interface and high-level language debuggmg capability. Symbolic debugging au- tomates a' task that can eat up valuable development time and introduce error into the debug process. Sym- bolic debugging builds on the debug records loaded from the output of Intel assemblers and compilers-yet another 'example of the added' debugging power gained from integration of development toolS. Using user-de- fmed names, the engineer has access to memory loca- tions and program variables (including dynamicvari- ableli. and high-level-language data structures).

PSCOPEHlgh-Level Language Debugger

PSCOPE is a host-resident debugg~r that lets you exe- cute and debug programs at the source code level. You can set break and trace points, examine memory, or simply follow' progr!llll flow at the, instruction, state- ment or procedure level for programs written in,Ft/M, Pascal, C, FORTRAN, 8086 assembly langUage, or 80286 assembly language. PSCOPE even lets you make high-level language patches and store them for later use in updating source files.

The PSCOPE syntax, including debug procedures, is the lIame used by the I2ICE and TargetSCOPE sys- telD.\!, so that when you move from soft:ware develop- ment to software-hardware integration, the user inter.

face stays the same. There's no new learning curve to ascend, no lag in the development cycle.

1 2 1CETM Integrated Instrumentation and In-Circuit Emulation System

I2ICE is unmatched in its ability to kill hardware and software bugs across the entire development process. Of course, PICE offers the high-leve~ language symbolic

debugging expected of a software debugger. It also inte- grates transparent emulation support for all members of Intel's 8086 and 80286 families of microprocessors.

A full PICE configuration can simultaneously'emulate four separate processors, stopping execution on an indi- vidual event, on an address range, on conditional events and on inter_processor events. The system then displays a trace of execution or bus activity. Full-speed execu- tion is possible using either target system memory or up to 288 K-bytes of emulator memory for each processor.

PERFORMANCE ANALYSIS

The iPAT Performance Analysis Tool provides real- time performance analysiS and real-time coverage of programs running on 8086/88, 80186/88, and 80286 microprocessors to help software engineers optimize code and improve software reliability.

Object code generated by Intel assemblers and compil- . ers (C, PL.M, Pascal, and FORTRAN) can be ana- lyzed symbolically to improve software efficiency and to validate test coverage. Any object code that lacks compiler information--but that can be run by Intel em- ulators and for which an absolute program map is available-can also be analyzed non-symbolically by the iP Ai' analyst.

xii

DEBUGGERS FOR 80386 FAMILY MICROPROCESSOR APPLICATIONS

Users of Intel's 80386 advanced, 32-bit microprocessor have a compatible set of software ,and hardware debug- ging tools available for their projects:

Debugging Task Tool High-level software PSCOPE Monitor

debugging 386 (P-MON 386)

Software debugging Debug Monitor

monitor 386 (D-MON 386)

Full-speed, transparent ICETM 386 software-hardware Emulator integration and debug

PSCOPE Monitor (P-MON 386)

P-MON 386 is' a high~level. hosted software debugger for 80386-based systems. It can access and control all of the80386's visible user hardware resources without any assistance from the operating system. It can also be used to debug applications running under the control of an operating system.

(17)

INTRODUCTION

P-MON 386 allows symbolic debugging of programs written in high-level languages. With the help of this debugger, a user can download an application program into the target prototype memory, set hardware and software breakpoints at symbolically specified address- es, trace program execution, and write patches to the program under development.

Debug Monitor 386 (D-MON 386)

D-MON 386 is an unhosted, EPROM-based software debug monitor that provides system-level debug sup- port for 80386 systems. Using D-MON 386, a user can set hardware and software breakpoints, examine and modify memory and registers, and control program ex- ecution. This monitor can be configured to run on any 80386-based target board with a user-supplied commu- nication driver and hardware initialization' routine.

ICE 386™ lri-Circuit Emulator

The ICETM 386 In-Circuit Emulator provides hard- ware and software debugging for 80386-based designs.

Its capabilities include emulation for the 80386 CPU and the 80287 and 80387 numeric processors. With ICE 386, programs can execute continuously at speeds up to 16 MHz or in a single-step mode. And it includes symbolic debugging to let users work in the context of their original programs.

Intel designed the 80386 and ICE 386 interactively to get the debugging power required of an advanced, 32- bit microprocessor, including non-intrusive' access to internal processor activity. Breakpoints allow stopping emulation on specified instruction execution addresses or data addresses. Trace capability lets a user, record program execution history prior to the break.

DEBUGGERS FOR

MICROCONTROLLER APPLICATIONS

Microcontroller applications are typically characterized by high performance requirements, a variety of asyn- chronous events, and a lot of on-chip activity. All of these characteristics add to the challenge of debugging your product. Each Intel microcontroller family has in- circuit debugging support to meet the challenges. The ICE and VLSiCE emulators share a user interface with I2ICE and PSCOPE, which saves learning time for projects with multiple processor types.

ICETM 5100 In-Circuit Emulator

The ICE 5100 emulator gives its user, real-time, non- obtrusive control over 805 I-family system debugging at clock speeds up to 16 MHz. It includes the ability to view and modify system activity at' a symbolic, high-

xiii

level language level. ICE 5100/252 debugs HMOS and CHMOS versions of the 8051, the 8052, and the 80C52 including on-chip RAM and ROM. The ICE 5100/044 supports the 8044, including BITBUSTM systems.

VLSiCETM-96 In-Circuit Emulator

VLSiCE 96 provides real-time, non-obtrusive debug- ging support for the MCS-96 family of 16-bit microcon- troller components. It features full symbolic debugging;

64 K-bytes of mappable ICE memory; dynamic execu- tion and data trace, including internal RAM accesses;

and a break/state machine which allows stopping emu"

lation or enabling trace on user specified combinations of execution addresses, opcodes, data addresses and val- ues, and' selected PSW bits.

iSBE 96 8096 Emulator

The iSBE 96 debugger permits basic execution and de- bug of programs written for the MCS 96 family of 16- bit microcontrollers, within the emulator or in the us- er's target system.

GENERAL TOOLS FOR ALL COMPONENT FAMILIES EPROM Programming Support

Intel offers a full line of EPROM programmers for Intel devices. Through parallel development efforts, Intel is able to provide the earliest programming sup- port for new Intel EPROMs, EEPROMs, KEPROMs and microcontrollers-with the fastest programming algorithms in the industry. The modular architecture of Intel EPROM programmers allows new support to be added with low-cost add-ons, as they become available.

EPLD Development Tools

Intel's iPLDS Programmable Logic Development Sys- tem makes it easy to use an erasable, programmable logic device (EPLD) in your design. The iPLDS pro- vides all of the software, programming hardware, and documentation needed to convert random logic into a fully optimized, tested, and document device.

AEDIT Text Editor

AEDIT is a full-screen text editor that can be either menu- or command-driven. It offers the ability to switch easily between two files or to view two files simultaneously through windows. Text entry and edit- ing are further simplified through the use of macros, which allow you to save command clusters for later use.

(18)

c}l

2-

IIJ

rn

'tJ c

'tJ 0

~ 0 :::J 'tJ 0 CD· :::J

~. ~

-I r-0

()

!!!.

~

..

CD

z

il

DEVELDPMENT ON NOS II

_RDOIJIICE_

-...

!RF3H

D-

11,-.

--

E5~

PICI!

--

I :L

....".

. - -

JHOSTSJ

1=1

JTOOLSJ

ICEftL51GO

DEVElOPMENT ON INDUSTW- STANDARD HOSTS WITH

OpenNET CONNECTION

I CIponNET'O

I VAX·

1IIIIIIIilllllllill 1111111111111111111

L..LJ

IIEVELOPIENT 8OF1WARE

EJd~

I CIponNET'O

....".

VLIICE ICE"LI1IO

-

ON-TARGET DEVElOPMENT ON INTEL SYSTEM 2861310

I CIponNET'O

_.

- " ' DEYELoPIIENr SOI'TWAIE

280336-1

(

z

-f

::u

0 C

c::

C')

0

-f Z

(19)

INTRODUCTION

Development Host Selection

Intel's development tools are available on a selection of industry-standard host systems, giving users of Intel microprocessors and microcontrollers the ability to ap- ply a combination of valuable elements in their develop- ment projects:

• design and debug tools built around the needs of the specific microprocessor or microcontroller.

• host systems optimized around installed equipment or the experience and needs of the development team:

V AX/VMS Centralized development and project control for large teams, on an industry stan- dard system.

PC AT, PC XT (DOS) Versatile, standard, high-per- formance workstation.

• continued use of Intellec Series, II, III, and IV and Model 800 dedicated development systems.

• an open network to link tools across the various host environments.

Whether you run the Intel tools on a VAX minicom- puter, a PC AT or XT, or an Intel system, the integra- tion work is done before you install the tools on the system-you don't waste time getting the tools ready for the project.

Network Connections

Your host workstations can be a part of a complete development network using Intel's OpenNETTM imple- mentation of the high-performance Ethernet local area network.

The OpenNET network is based on open, ISO OSI standard protocols. In a development application it lets your PC- and V AX-based development stations share files resident on the VAX system. The OpenNET con- nection also (1) lets PC users share files resident on Intel's NDS II Network Resource Manager and (2) gives users doing on-target development on Intel iRMX® and XENIX' systems access to files resident on a V AX/VMS, iRMX, XENIX, or DOS system from an iRMX, XENIX, or DOS system.

Component Support on Industry Standard Host Systems Components Supported

Development 8086/80186

80286 80386 8096 8044

Languages 8088/80188 8051

Assembler PC PC PC PC PC

VAXIVMS VAXIVMS VAXIVMS Series IV Series 11

Series IV Series IV Series IV

PL/M PC PC PC PC PC

VAXIVMS VAXIVMS VAXIVMS Series IV Series 11

Series IV Series IV Series IV

C PC PC PC PC

VAXIVMS VAXIVMS VAXIVMS

Series IV Series IV

Pascal PC PC

VAXIVMS VAXIVMS

Series IV Series IV

FORTRAN PC

VAXIVMS Series IV Debuggers

PSCOPE PC Series IV

121CETM PC Series IV PC Series IV

VLSiCETM PC Series IV

ICETM PC PC

Series IV NOTES:

Tools that run on Series IV or Series II also run on Series III.

Intel also offers versions of development languages that run on iRMXTM- and Xenix-based systems for on-target develop- ment.

'VAX and VMS are trademarks of Digital Equipment Corporation.

'XENIX is a trademark of Microsoft Corporation.

xv

(20)
(21)

Microcomputer Development 1

Languages

(22)
(23)

386 SOFTWARE TOOLS

PL/M 386 Software Package

• Systems Programming Language for the Protected Virtual Address Mode 386

• Upward Compatible with PL/M 286, PL/M 86, and PL/M 80 Assuring Software Portability

C 386

• Implements Full C Language and New Extensions

• Produces High Density Code Rivaling Assembler

• Supports Intel Object Module Format (OMF)

386 Relocation, Linkage and Library Tools ASM 386

• Provides System Development Capability for High-Performance 386 Applications

• Allows Creation of Multi-User Virtual Memory, and Memory-Protected Systems

• Instruction Set and Assembler Mnemonics Are Upward Compatible with ASM 286 and ASM 86

Type~Checking

at Assembly Time Helps Reduce Errors at Run-Time

~

f5

PROTECTED, MULTI-

/~ @ ~i '~

OPERATING SOFTWARE

SYS~EM ~

" \

,...0:-...,

/ TARGET

~~

SYSTEM

261637-1

Figure 1, Development Environment Tools for the 386

386 Software tools are available on industry standard hosts, including VAXIVMS, PC· DOS, and XENIX·

1·1 November 1986

(24)

inter 386 Software Tools.

ASM 386

• Instruction Set and Assembler Mnemonics Are Upward Compatible with ASM 286 and ASM 86 .

• Powerful and Flexible Text Macro Facility

• Type-Checking at Assembly Time Helps Reduce Errors at Run-Time

• Structures and Records Provide Powerful

D~ta

Represel"ltation

• "High-Level" Assembler Mnemonics Silnpllfythe LanSiuage

• Supports Full Instruction Set of the 386, Including Memory Protection 'and

Numerics .

• Supports 286 Addressing Modes

ASM 386 is the "high-level" macro assembler for the 386 assembly language. ASM 386 translates symbolic assembly language mnemonics into relocatable object code. The assembler mnemonics are a superset of ASM 286/86/88 mnemonics; new ones have also been added to support the new 386 instriJctions. The segmentation directives have been greatly simplified.

The 386 assembly language includes approximately 275 instruction mnemonics. From these few mnemonics the assembler can generate over 40,000 distinct machine instructions. Therefore, the software development task is simplified, as the programmer need' know only 275 mnemonics to generate all possible machine instructions. ASM 386 will generate the shortest machine instruction possible (given explicit information as to the characteristics of any forward referenced symbols).

The powerful macro facility in ASM 386 saves development and maintenance time by coding common pro- gram sequences only once. A macro substitution is made each time the sequence is to be used. This facility also allows for conditional assembly of certain program sequences.

ASM 386 offers many features normally found only in high-level languages. The assembly language is strongly typed, which means it performs extensive checks on the usage of variables and labels. This means that many programming errors will be detected when the program is assembled, long before it is being debugged.

ASM 386 object modules conform to a thorough, well-defined format used by all 386 high-level languages and utilities. This means.it is easy to call (and be called from) HLL object modules.

SUPPORT

Hotline Telephone Support, Software Performance Report.(SPR), Software Update, Technical Reports, and Monthly Technical Ne~sletters are available.

ORDERING INFORMATION

Part Number

X286ASM386 D86ASM386

Documentation Package

Description 386 Assembler 386 Assembler

ASM 386 Assembly Language Reference Manual

ASM 386 Macro Assembler Operating Instructions for XENIX· 286 Systems ASM 386 Pocket Reference for XENIX 286 Systems

·XENIXTM is a trademark of Microsoft.

1-2

Operating Environment 286/310XENIX· System PC-DOS 3.0 or greater

(25)

386 Software Tools

386 RELOCATION, LINKAGE ANDLIBRARV TOOLS

• System Development Capability for High-Performance 386 Applications

• Allows creation of Multi-User, Virtual Memory, and Memory-Protected Systems

• System Utilities for Program Linkage and System Building

• Package Supports Program

Development with ASM 386, PL/M 386, C 386, Ada 386 and FORTRAN 386.

The 80386 is a 32-bit microprocessor system with 32-bit addressing, integrated memory protection, and instruction pipelining for high performance. The 386 Relocation, Linkage, and Library Tools are a cohesive set of software design aids for programming the 386 microprocessor system. The package enables system pro- grammers to design protected, mUlti-user and multi-tasking operating system software, and enables applica- tion programmers to develop tasks to run on a protected operating system.

The 386 Relocation, Linkage and Library tools include a program binder (for linking separately compiled modules together), a system builder (for configuring protected multiple-task systems), a cross reference map- per, a program librarian, and the 287/387 support library.

APPLICATION SOFTWARE

DEBUGGERS:

ICET,"MONITOR. ETC.

Figure 1. Development Environment Tools for the 386

261637-2

(26)

386 Software Tools

386 SYSTEM BUILDER

• Supports Complete Creation of Protected, Multi-task Systems

• Resolves PUBLIC/EXTERNAL

. Definitions (between protection levels)

• Supports Memory Protection by Building System Tables, Initializing Tasks, and Assigning Protection Rights.

to Segments

• Creates a Memory Image of a 386 System for Cold-start Execution

• Target System may be Boot-Ioadable, Programmed Into ROM, or loaded from Mass-store.

• Generates Print File with Command Listing and System Map

BLO 386 is the utility thatlets system programmers configure multi-tasking, protected systems from an operat- ing system and discrete tasks. The Builder generates a cold-start execution module, suitable for ROM-based or disk-based systems.

The Builder accepts input modules from .386 translators or the 386 Binder. It also accepts a "Build File"

containing definitions and initial values for the 386 protection mechanism - descriptor tables, gates, segments, and tasks. BL0386 generates a Loadable or bootloadable output module, as well as a print file with a detailed map of the memory-protected system.

Using the Builder command Language, system programmers may perform the following functions:

- Assign physical addresses to segments; also set segment access rights and limits.

- Create Call, Trap, and Interrupt "Gates" (entry- points) for inter-level program transfers.

- Make gates available to tasks; this is an easier way to define program interfaces than using in- terface libraries.

- Support Page tables for boot files.

- Create Global (GOT), Interrupt (lOT), and any Lo- cal (LOT) Descriptor Tables.

1-4

- Create Task State Segments and Task Gates for multi-task applications.

- Resolve inter-module and inter-level references, and perform type-checking.

- Automatically select required modules from li- braries.

- Configure . the memory image into partitions in the address space.

- Selectively generate an object file and various sections of the print file.

(27)

inter 386 Software Tools

386 BINDER

Links Separately Compiled Program Resolves PUBLIC/EXTERNAL Code and Modules Into an Executable Task Data References, and Performs

Makes the 386 Protection Mechanism Intermodule Type-Checking

Invisible to Application Programmers Provides Print File Showing Segment

Works with PL/M 386, C 386, FORTRAN Map, Errors and Warnings

386 and ASM 386 Object Modules Assigns Virtual Addresses to Tasks in

Performs Incremental Linking with the 2

32

Address Space

Output of Binder and Builder Generates Linkable or Loadable Module for Debugging

The Binder is the only utility an application programmer needs to develop and debug an individual task. Users of the Binder need not be concerned with the architecture of the target machine, making application program development for the 386 very simple.

BND 386 combines 386 object modules into executable tasks. In creating a task, the Binder resolves Public and External symbol references, combines segments, and performs address fix-ups on symbolic code and data.

The Binder takes object modules written in ASM 386, PL/M 386, C 386 and FORTRAN 386 and generates a loadable module (for execution or debugging), or a linkable module (to be re-input to the Binder later; this is called incremental binding). The binder accepts library modules as well, linking only those modules required to resolve external references. BND 386 generates a print file displaying a segment map and error messages.

The Binder will be used by system programmers and application programmers. Since application programmers need to develop software independent of any system architecture, the 386 memory protection mechanism is

"hidden" from users of the Binder. This allows application tasks to be fully debugged before becoming part of a protected system. (A protected system may be debugged, as well.) System protection features are specified later in the development cycle, using the 386 System Builder. It is possible to link operating system services required by a task using either the Binder or the Builder. This flexibility adds to the ease of the 386 utilities.

1-5

(28)

inter 386 Software Tools

80287 SUPPORT LIBRARY

• Library to support floating point arithmetic in C 386, PL/M 386, ADA 386, ASM 386, and FORTRAN 386

• Decimal conversion module supports binary-decimal conversions

• Supports proposed IEEE Floating POint Standard for high accuracy and software portability

• Common elementary function library provides trigonometriC, logarithmic and other useful functions

• Error-handler module simplifies floating point error recovery

The 80287 Support Library providesC 386, PLIM 386, ADA 386, ASM 386 and FORTRAN 386 users with numeric data processing capability. With the Library, it is easy for programs to do floating point arithmetic.

Programs can bind in library modules to do trigonometric, logarithmic and other numeric functions; and the user is guaranteed accurate, reliable results for all appropriate inputs. Figure 1 below illustrates how the 80287 Support Library can be bound with PL/M 386 and ASM 386 user code to do this. The 80287 Support Library supports .the Proposfild IEEE Floating Point Standard. Consequently, by using this Library, the user not only saves software development time, but is guaranteed that the numeric software meets industry standards and is portable-the software investment is maintained. .

The 80287 Support Library consists of the common elementary function library (CEL287.LlB), the decimal conversion library (DC287,LlB), the error handler module (EH287.LlB) and interface libraries (80287.LlB),

(NUL287.LlB). . .

B.PLM A.PLM m~:tTI~~ ~~~!~:fJTHETA) REAL OOERNAL.:

ENDmqerTNH:

DECLARE (INPUT VALUE, OUTPlrr VALUE) REAL;

INPliT VAlUE"O.62;/or .. t Vlllu."/

OU'WUT VAlUE=mq.rnlH(INPUT VALUE);

6:~,501~ ;:t3!" test Input, OUTPUT VALUE Is about

D.ASM C.ASM

~T~\:.[XTRN mu.t appear outsld. of all SECMENT~ENDS tXTllN mqer TNH: FAR

INPUT VALUE DQ(~O.62) ;lnltlglllgtlDn r. 0 t .. t :volut OUTPUT VALUE DO ?

;~r;~~":~~~t~~~.dnUt~":.~:~tt~it~bLc:t~(tt

;variable.

FlO INPUT VALUE :laod tI" pcram.ter Into the 80287 :stock

~t~ OU'\P~~~AlUE ~~~ \1111" hl"p;:::I~~~~~:nt~.

:602811tock :W1th Ih. last Input, OUTPUT VALUE II now about

;-0.55112803

ASM-386

COMPILED SOURCE MODULES

ASSEMBLED SOURCE MODULES

80287 SUPPORT LIBRARY

Figure 2. Use of 80287 Support Library with PL/M 386 and ASM 386.

1-6

LINKED USER OBJECT MODULE

231637-3

(29)

386 Software Tools

386 MAPPER

• Flexible Utility to Display Object File Information

• MAP 386 Selectively Purges Symbols

from a Load Module .

• Provides Inter-Module Cross-

Referencing for Modules Written in All Languages

• Supports OS Information

• Mapper Allows Users to Display:

Protection Debug

Information Information

SEGMENT MODULE

TABLES NAMES

GATE PROGRAM

TABLES SYMBOLS

PUBLIC LINE

ADDRESSES NUMBERS

The cross-reference map shows references between modules, simplifying debugging. The map also lists and controls all symbolic information in one easy-to-read place.

386 LIBRARIAN

• Fast, Easy Management of 386 Object Module Libraries

• Only Required Modules Are Linked, When Using the Binder or Builder

•. Librarian Allows Users to: Create Libraries, Add Modules, Replace Modules, Delete Modules, Copy Modules from Another Library, Save Library Module to Object File, Create Backup, Display Module Information (creation date, publics, segments)

Program libraries improve management of program modules and reduce software administrative overhead.

(386 Librarian provides efficient use of program libraries.)

SUPPORT:

Hotline Telephone Support, Software Performance Report (SPR), Software Updates, Technical Reports, and Monthly Technical Newsletters are availabl~.

ORDERING INFORMATION:

Part Number Description

X286RLL386 386 Relocation, Linkage and Library Tools VVSRLL386 386 Relocation, Linkage, and Library Tools D86RLL386 386 Relocation, Linkage, and Library Tools

Documentation Package

386 Utilities User's Guide for Xenix' 286 System 386 System Builder User's Guide for Xenix· 286 System 80287 Support Library Reference Manual

'XENIX is a trademark of Microsoft.

Operating Environment 286/310 XENIX' System VAXIVMS 4.3 and Later PC-DOS 3.0 or Greater

(30)

386 Software Tools

PL/M 386 SOFTWARE PACKAGE

• Systems programming language for the protected virtual address mode 386

• Upward compatible with PL/M 286, PL/M 86 assuring software portability

• Enchanced to support design of protected, multi-user, multi-tasking, virtual memory operating system software

• Produces relocatable object code which is linkable to object modules generated by all other 386 language translators

• Advanced, structured system ..

implementation language for algorithm development

• Supports Intel Object Module Format (OMF)

PL/M 386 is a powerful, structured, high-level system implementation language for the development of system software for the protected virtual address mode 386. PL/M 386 has been enhanced to utilize 386 features- memory management and protection-for the implementation of mUlti-user, multi-tasking virtual memory oper- ating systems.

PL/M 386 is upward compatible with PL/M 286, PLlM 86 and PLIM 80. Existing systems software can be re- compiled with PLIM 386 to execute in protected virtual address mode on the 80386.

PL/M 386 is the. high-level alternative to assembly language programming on the 80386. For the majority of 386 system programs, PL/M 386 provides the features needed to access and to control efficiently the underly- ing 386 hardware and consequently it is the cost-effective approach to develop reliable, maintainable system

software. .

The PL/M 386 compiler has been designed to efficiently support all phases of software development. Fea- tures such as a built-in syntax checker, multiple levels of optimization, virtual symbol table and four models of program size and memory usage for efficient code generation provide the total program development support needed.

FEATURES

Major features of the Intel PLIM 386 compiler and programming language include:

Structured Programming

PL/M source code is developed in a series of mod- ules, procedures, and blocks. Encouraging program modularity in this manner makes programs more readable, and easier to maintain and debug. The language becomes more flexible by clearly defining the scope of user variables (local to a private proce- dure, for example).

The use of modules and procedures to break down a large problems leads to productive software devel- opment. The PL/M 386 implementation of block structure allows the use of REENTRANT proce- dures, which are especially useful in system design.

1-8

Language Compatibility

PL/M 386 object modules are compatibtewith .ob- ject modules generated by all other 386 translators.

This means that PL/M programs may be linked to programs written in any other 386 languages.

Object modules are compatible with In-Circuit Emu- lators; DEBUG compiler control provides the In-Cir;- cuit Emulators with full symbolic debugging capabili- ties.

PL/M 386 language is upward compatible with PLIM 286, PL/M 86 and PL/M 80 so that application pro- grams may be easily ported to run on the protected mode .80386.

(31)

inter 386 Software Tools

Supports Fourteen Data Types Numerics Support

PLIM makes use of fourteen data types for various applications. These data types range from one to eight bytes and facilitate various arithmetic, logic, and addressing functions:

-BIT(n): 1 to 32 bit unsigned number -BYTE: 8 bits unsigned number -HWORD: 16 bits unsigned number -WORD: 32 bits unsigned number -DWORD: 64 bits unsigned number -OFFSET: 32 bits memory address -CHARINT: 8 bits Signed nUl1Jber -SHORTINT: 16 bits signed number -INTEGER: 32 bits signed number -LONGINT: 64 bits signed number -REAL: 32 bits floating-point number -SELECTOR: 16 bits segment name -POINTER: 48 bits selector, offset -LONG REAL: 64 bits floating-point number Another powerful facility allows the use of BASED variables which permit run-time mapping of variables to memory locations. This is especially useful for passing parameters, relative and absolute address- ing, and dynamic memory allocation.

Data Type Compatibility

PL/M 286 programs may be recompiled and retar- getted to the 386 by use of the WORD16 control.

With this control, PL/M 386 provides transparent ac- cess to the seven data types provided by PLIM 286.

Two Data Structuring Facilities

In addition to the 14 data types and based variables, PL/M supports two powerful data structuring facili- ties. These help the user organize data into logical groups.

- Array: Indexed list of same type data elements - Structure: Named collection of same or different

type data elements

- Combinations of both: Arrays of structures or structures of arrays and structures within struc- tures.

1-9

PLIM programs that use 32-bit REAL data are exe- cuted using the 80287 Numeric Data Processor for high performance. All floating-point operations sup- ported by PL/M are executed on the 80287 accord- ing to the IEEE floating-point standard. PLIM 386 programs can use built-in functions and predefined procedures-INIT$REAL$MATH$UNIT, SET$REAL

$MODE, GET$REAL$ERROR, SAVE$REAL$

STATUS, RESTORE$REAL$STATUS-to control the operation of the 80287 within the scope of the language.

Built-In Port 1/0

PLIM 386 directly supports input and output from the 386 ports for Single BYTE, HWORD and WORD transfers. For BLOCK transfers, PLIM 386 programs can make calls to predefined procedures.

Interrupt Handling

PL/M 386 has the facility for generating and han- dling interrupts on the 386. A procedure may be de- fined as an interrupt handler through use of the IN- TERRUPT attribute. The compiler will then generate code to save and restore the processor status on each execution of the user-defined interrupt handler routine. The PL/M statement CAUSE$INTERRUPT allows the user to trigger a software interrupt from within the program.

Protection Model '

PL/M 386 support the implementation of protected operating system software by providing built-in pro- cedures and variables to access the protection mechanism of the 386. Predefined variables- TASK$REGISTER, LOCAL$TABLE, MACHINE$

STATUS, CONTROL$REGISTER, etc.-allow'direct access and modification of the protection system.

Untyped procedures and functions-SAVE$

GLOBAL$TABLE, RESTORE$GLOBAL$TABLE, SAVE$INTERRUPT$TABLE, RESTORE$INTER- RUPT$TABLE, CLEAR$TASK$SWITCHED$FLAG, GET$ACCESS$RIGHTS, GET$SEGMENT$LlMIT, SEGMENT$READABLE, SEGMENT$WRITABLE, ADJUST$RPL-provide all the facilities needed to implement efficient operating system software.

(32)

386 Software Tools

Complier Controls

The PLIM 386 compiler offers controls that facilitate such features as:

.-.:. Interface to other 386 languages - Optir:nization

- Conditional compilation

- The inclusion of additional PL/M source-files from disk

- Cross-reference of symbols

- Optional assembly language code in the listing file

- The setting of overflow conditions for run-time handling.

- WORD16/WORD32 .-.: Interface to 286 languages

Addressing Control

ThePLlM 386 compiler uses the SMALL and COM- PACT controls to generate optimum addressing in- structions for programs. Programs of any size can be easily modularized into "subsystems" to exploit the most· efficient memory addressing schemes.

This lowers total memory requirements a:nd im- proves run-time execution of programs.

Code Optimization

The PLiM 386 compiler offers four levels of opti- mization for significantly reducing.overall program size .

- Combination or "folding" of constant expres- sions; and short-circuit evaluation of Boolean ex- pressions

- "Strength reductions": a shift left rather than multiply by 2; and elimination of common subex- pressions within the same block

- Machine code optimizations; elimination of su- perfluous branches; removal of 'unreachable code

- Optimal local register allocation ,

Error Checking

The PL/M 386 compiler has a very powerful feature to speed up compilations: If a syntax or program er- ror is detected, the compiler will skip the code gen- eration and optimization passes. This usually yields a 2X performance increase for compilation of pro- grams with errors.

A fully detailed and helpful set of programming and cOmpilation error messages is provided by the com- piler and user's guide.

Cost-Effective Alternative to Assembly Language

PL/M 386 programs are code efficient. PLIM 386 combines all of the benefits of a high-level language (ease of use, high productivity) with the ability to access the 386 architecture. Consequently, for the development of systems software, PLIM 386 is the cost-effective alternative to assembly language programming.

Support

Hotline Telephone Support, Software Performance Report (SPR), Software Updates, Technical Reports, and Monthly Technical Newsletters are available.

ORDERING'INFORMATION

Part Number X286PLM386 D86PLM386

Documentation Package

Description

PL/M 386 Compiler PL/M 386 Compiler

PL/M 386 User's Guide for Xenix· 286 System 'XENIX is a trademark of Microsoft.

Operating

Environment

XENIX· 286/310 PC-DOS 3.0 or Greater

Références

Documents relatifs

The access control operates by inhibiting the setting or use of a shared variable by one owner or the other, depending upon the access state of the variable, and the value of an

The Network Terminal Option (NTO) is an mM program product that extends the capabilities of the Advanced Communications Function Network Control Program (ACF/NCP) in a 3705

In addition to these management facilities, CICS provides system service programming to identify terminal operators, to give dynamic control of the entire

It provides single terminal operators, supervisory terminal operators, master terminal operators, application programmers, system programmers, system analysts,

If the batch Frocessing requirements of the installation dictate that standard access methed support be used for tatch programs accessing online data sets,

When words are verified for correct spelling, the original word, using the case (upper, lower, or mixed) as it occurs in the input line after

For SYSOUT data sets, open processing (by the SSI function routine) consists of constructing an entry to be placed in the control block that JES3 uses to define

universal access authority (UACC).. The default access authority that applies to a resource if the user or group is not specifically permitted access to the resource.