DEC 11 OSPMA A D_PDP 11_DOS_Monitor_V004A_System_Programmers_Manual_May72 D PDP DOS Monitor V004A System Programmers Manual May72
DEC-11-OSPMA-A-D_PDP-11_DOS_Monitor_V004A_System_Programmers_Manual_May72 DEC-11-OSPMA-A-D_PDP-11_DOS_Monitor_V004A_System_Programmers_Manual_May72
User Manual: DEC-11-OSPMA-A-D_PDP-11_DOS_Monitor_V004A_System_Programmers_Manual_May72
Open the PDF directly: View PDF .
Page Count: 422
Download | |
Open PDF In Browser | View PDF |
• disk operating system monitor systems programmer's manual DEG-ll-OSPMA-A-D PDP - 1 1 DIS K OPE RAT I N G (Version No. System S Y S T EM M 0 NIT 0 R V~~4A) Programmer's Manual Software Support Category The software described in this manual is supported by DEC under Oategory I, as defined on page iv of this manual. This manual supersedes the Preliminary Edition, issued under order no-. DEC-ll-MNDA-D. '-/ For additional copies, order no. DEG-11-0SPMA-A-D i'rom Digital Equipment Corporation, Software Distribution Genter, Maynard, Massachusetts 01154 DIGITAL EQUIPMENT CORPORATION • MAYNARD, MASSACHUSETTS Praliainarl, November 1971 ~irst Edition, Mal 1972 Your attention is invited to the last two pages of this document. The "How To Obtain Software Information" fage tells lOU how to keev up-todate with DEO 8 sottware. The "Reader s Comments" page is beneficial to both lOU and DEC; all comments received are considered when documenting subsequent manuals. COPlright @ 1971, 1972 bl Digital Equipment Corporation Associated PDP-11 documents: Disk Operating s"atem Monitor, Programmer's Handbook DEC-"-MWDC-D Getting DOS on the Air DEC-l'-SYDD-D PAL-11R Assembler, Programmer's Manual DEC-l'-ASDC-D Edit-l1 Text Editor, Programmer's Manual DEC-"-EEDA-D ODT-llR Debugging Program, Programmer's Manual DBC-l'-00Dl-D PIP File Utility Package, Programmer's Manual DEO-l1-PIDB-D Link-l1 Linker & Libr-ll Librarian, Programmer's Manual DEC-l'-ZLDC-D NOTIO~ This document is for information purposes, and is subject to change without notice. Trademarks of Digital Equipment Corporation include: DEO DEC tape digital (logo) COMTEX-l1 PDP-l1 BSTS-l1 RSX-l1 UNIBUS ii AJ PREFACE This document explains the philosophy and structure of the PDP-ll Disk Operating System (DOS) Monitor. It is written for the PDP-lI programmer who needs to know the internal operation of the Monitor in more detail than is given in the PDP-II Disk Operating System Monitor Programmer's Handbook (order no. DECII-MWDC-D), which is intended for the general user. Thus, this document should be of assistance tOI • Users who wish to adapt or extend the Monitor for their own special applications. • Software Support Specialists. • Programmers responsible for DOS Monitor maintenance or modification. The document assumes familiarity with the contents of the Programmer's Handbook, and also with the DOS system programs as described in the documents listed on the back of the front page. The source listings of the Monitor (available from DEC's Software Distribution Center) would be useful since this document is designed merely to supplement the detailed comments included in the source listings. The document is divided into nine chaptersl provides an overview of the concepts and organization of the DOS Monitor and gives general information on the form of the rest of the document. Chap.~ Ch~Q~er 2 is devoted to the central executive section of the Monitor which is always resident in core memory. £napter 3 discusses the overall philosophy for the handling of I/O from any peripheral device, followed by a detailed examination of the routines providing program I/O services. This chapter also contains an introduction to device drivers. Chapte~1 is particularly concerned with I/O upon bulkstorage devices for which a file-structure is defined. A general description of this structure is given, followed by an explanation of each of the special routines for file management. Chapter 5 describes the modules which provide I/O services to load and unload the Monitor and certain general utilities. 6 describes the methods adopted for the handling of operator commands at the console keyboard and the processing of each command. Also included is a discussion of a transient ChaE~~r iii Monitor section which occupies memory in the absence of a user program. Chapter 7 covers the question of error diagnosis and outlines the routine providing a central printing service for messages from both the Monitor itself and the DOS system programs. Chapter 8 shows how the Monitor is initially built and stored ready for use and can be later extended or modified. Chapter 9 explains the format and contents of various system object and load modules. Each chapter is concluded with its referenced illustrations. ~ Appendix A, frequently referenced herein, was not available for this printing, thus it does not appear. In June 1972, the appendix will be available on request (free) from DEC's Software Distribution Center, Maynard, Mass. 01754. iv I ---- SOFTWARE SUPPORT CATEGORIES Digital Equipment Corporation (DEC) makes available four categories of software. These categories reflect the types of support a customer may expect from DEC for a specified software product. DEC reserves the right to change the category of a software product at any time. The four categories are as follows: Software CATEGORY Products Supported at no Charge This classification includes current versions of monitors, programming languages, and support programs provided by DEC. DEC will provide installation (when applicable), advisory, and remedial support at no charge. These services are limited to original purchasers of DEC computer systems who have the requisite DEC equipment and software products. At the option of DEC, a software product may be recategorized from Category I to Category II for a particular customer if the software product has been modified by the customer or a third party. Software Products CATEGORY II that Receive Support for a Fee This category includes prior versions of Category I programs and all other programs available from DEC for which support is given. Programming assistance (additional support), as available, will be provided on these DEC programs and non-DEC programs when used in conjunction with these DEC programs and equipment supplied by DEC. CATEGORY III Pre-Re I ease Software DEC may elect to release certain software products to customers in order to facilitate final testing and/or customer familiarization. In this event, DEC will limit the use of such pre-release software to internal, non-competitive applications. Category III software is only supported by DEC where this support is consistent with evaluation of the software product. While DEC will be grateful for the reporting of any criticism and suggestions pertaining to a pre-release, there ~xists no commitment to respond ta these reports. CATEGORY IV Non- Su pported Software This category includes all programs for which ~support is given .• v CON TEN T S Page CHAPTER 1 INTRODUCTION 1.1 The Punction of the DOS Monitor 1.2 Monitor Organization 1.3 Monitor Conventions 1.3.1 Calling Monitor Modules 1.3.2 Return State 1.3.3 Naming Conventions 1.3.4 Definitions CHAPTER 2 RESIDENT MONITOR 2.1 Monitor Tables 2.1.1 System Vector Table 2.1.2 Monitor Residency Table 2.1.3 Device Driver List 2.1.4 Table Initialization 2.2 EMT Handler 2.2.1 Description of the Handler 2.2.2 General Comments 2.3 Swap Area Management 2.3.1 Swap Buffers 2.3.2 Calling SAM 2.3.3 Description of SAM 2.3.4 System Exit 2.3.5 The Swappable Routines 2.4 General Purpose Subroutines 2.4.1 Register Save/Restore & Stack Control 2.4.2 Pree Core Management 2.4.2.1 Buffer Allocation 2.4.2.2 Buffer Release 2.4.2.3 Comments 2.5 Time Control CH!PTER 3 GENERAL I/O PROCESSING 3.1 I/O Concepts and Control 3.1.1 General Strategy 3.1.1.1 Common Processing 3.1.1.2 Buffer Data 3.1.1.3 Dynamic Core Usage 3.1.1.4 I/O Levels 3.1.1.5 Device Assignment 3.1.2 I/O Controls 3.1.2.1 User Link Block 3.1.2.2 Device Assignment Table 3.1.2.3 Dataset Data Block 3.1.2.4 Driver Management 3.2 I/O Processing 3.2.1 Basic I/O Processing 3.2.1.1 Dataset Initialization 3.2.1.2 Basic Transfers 3.2.1.3 Dataset Release vii 1-1 1-2 1-3 1-4 1-5 1-5 1-6 1-6 2-1 2-2 2-2 2-4 2-5 2-7 2-9 2-9 2-11 2-12 2-13 2-14 2-15 2-16 2-17 2-20 2-20 2-22 2-23 2-24 2-24 2-25 3-1 3-2 3-2 3-2 3-3 3-3 3-4 3-5 3-5 3-6 3-7 3-9 3-11 3-15 3-15 3-16 3-18 3-20 Chapter 3, continued. 3.2.2 Sormal I/O Processing 3.2.2.1 Dataset Open (OPB) 3.2.2.2 READ/VRITI Transfers (RWN) 3.2.2.3 Dataset Close (OLS) 3.2.3 Random Access I/O (BLO) 3.2.4 Special Operations 3.2.4.1 Special Junotions (SPC) 3.2.4.2 Devlce Status (8TT) 3.3 Device Drivers 3.3.1 Driver Interface Table 3.3.2 Drlver Servlce Routines 3.3.3 Interrupt Servicing 3.3.4 Systea-Devic. Driv.rs OHAPTER 4 ~ILB STRUOTORBS 4.1 GeneralOoncepts 4.1.1 ~11es 4.1.1.1 Linked Piles 4.1.1.2 Contlguou8 Illes 4.1.2 Dlrectories 4.1.2.1 Kaster Ill. Directorl (MFD) 4.1.2.2 User Ill. Director" (UPD) 4.1.3 Blt Maps 4.1.4 Pl1e Protectlon 4.2 Appllcatlon By Devlce 4.2.1 ~lxed-Head Disks 4.2.2 Movlng-Head Dlsks 4.2.3 ])ECtape 4.3 Pl1e Manag.. ent 4.3.1 User Pl1e Block 4.3.2 '11e Information Block 4.4 General Purpose Routines 4.4.1 Directory Search (LUK) 4.4.2 Check Access, set-Up and Release PIB (OKX) 4.4.2.1 Oheck Access Prlvl1ege 4.4.2.2 Set-Up Pile Informatlon Block 4.4.2.3 Release 11le Information Block 4.4.3 Transfer Bit Map to and from Oore (GMA) 4.4.3.1 Get Map (GWTMAP) 4.4.4 Allocation of Blocks to Linked Flles (LBA) 4.5 Normal 'ile Processing 4.5.1 Openlng Jile. 4.5.1.1 Open an I%isting Pile (FOP) 4.5.1.2 Oreate a Bev Fl1e (FOR) 4.5.2 Processing a Pile 4.5.2.1 Next Block Determinatlon (RWN) 4.5.2.2 Changlng the Oore Map Segment (GNM) 4.5.3 Oloslng Jlles (FeL) 4.6 Housekeeping Operatlons 4.6.1 Allocating Oontlguous Flles 4.6.1.1 Allocate Set-Up (ALa) 4.6.1.2 Oontlguous Block Allocator (OBA) viii 3-22 3-22 3-26 3-33 3-35 3-37 3-38 3-40 3-41 3-41 3-45 3-45 3-46 4-1 4-2 4-2 4-2 4-3 4-4 4-5 4-6 4-B 4-10 4-12 4-12 4-13 4-14 4-17 4-19 4-20 4-23 4-23 4-25 4-25 4-27 4-28 4-29 4-29 4-31 4-33 4-33 4-34 4-36 4-38 4-39 4-42 4-45 4-48 4-48 4-4lj 4-50 Chapter 4, continued PagE! 4.6.2 Deleting Files 4.6.2.1 Deletion Set-up (DEL) 4.6.2.2 Deletion of Contiguous Files (DCN) 4.6.2.3 Deletion of Linked Files (DLN) 4.6.3 ~ppending Files 4.6.3.1 ~ppend General Routine (~pp) 4.6.3.2 Special ~ppend Operations on DECtape 4.6.4 Renaming Files (BEN) 4.6.5 Protecting Files (PRO) 4.6.6 Directory Status (DIR) 4.1 Magnetic fape Structure 4.1.1 Opening Files on MagnetiC Tape (MtO) 4.1.2 Special Operations 4-52 4-52 4-54 4-55 4-56 4-56 (~P2)4-58 4-59 4-60 4-61 4-64 -4-65 4-68 CHlPTER 5 OTHER PROGRAM SERVICES 5.1 Program Loading 5.1.1 Program Loader (LDR) 5.1.2 Monitor Module Loader (LD2) 5.2 General Utilities package (GUT) 5.3 Conversion Utilities Package (CVT) 5.3.1 Conversion to Binary 5.3.1.1 Radix-50 Pack (code ~) 5.3.1.2 Decimal ~SCII to Binary (code 2) 5.3.1.3 Octal ~SCII to Binary (code 4) 5.3.2 Conversions from Binary 5.3.2.1 Radix-SO Unpack (code 1) 5.3.2.2 Binary to Decimal ASCII (code 3) 5.3.2.3 Binary to Octal ~SCII (code 5) 5.4 Command String Interpreter 5.4.1 Syntax ~alyser (CSX) 5.4.2 Specification Decoder (CSM) 5.5 Program Exit (XIT) 5-1 5-2 5-4 5-7 5-10 5-12 5-12 5-14 5-15 5-16 5-16 5-17 5-19 5-19 5-20 5-21 5-24 5-28 CHAPTER 6 KEYBOARD SERVICES 6.1 General Philosophy 6.2 Organization 6.2.1 Command Acceptance 6.2.2 Command Decoding 6.2.3 Command Processing 6.2.4 Command Clean-Up 6.2.5 Command Conventions 6.2.5.1 calling Parameters 6.2.5.2 Processor Stack 6.2.5.3 Call Techniques 6.2.5.4 Reentrancy 6.2.5.5 Residency 6.3 Common Command Processing 6.3.1 Console Keyboard Listener (RMON5) 6.3.2 The Special Console Driver (KBL) 6.3.3 Keyboard Commant Interpreter (KBI) 6.3.3.1 The WAIT Command 6.3.3.2 The CONTINUE Command 6.3.3.3 The STOP Command 6-1 6-2 6-4 6-4 6-6 6-7 6-8 6-9 6-9 6-9 6-10 6-11 6-12 6-13 6-13 6-18 6-24 6-27 6-21 6-28 ix Chapter 6, cont1nued 6.4 Run-T1me Commands 6.4.1 The DlTE Oommand (KB. I.Dl) 6.4.2 !he SAVE Oommand (KBI.S!) 6.4.3 The ECHO, END & PRINT Oommands (lBI,KB) 6.4.4 The ODT Oommand (KBI.OD) 6.4.5 The BEGIN and RESTART Oommands (KBI.BE) 6.4.6 The KILL Oommand (XBI.KI) 0.4.7 The TIME Oommand (DI.!I) 6.4.8 The HODIPI Oommand (KBI.MO) 6.4.9 The ASSIGN Oommand (KBI.AS) 6.4.10 The DUMP Oommand (KBI.DU) 6.5 Between-Program Serv1ces 6.5.1 The Trans1ent Mon1tor (fMOB) 6.5.2 The TMON Oommands 6.5.2. 1 The LOGIN Oommand 6.5.2.2 The lINISH Command 6.5.3 The RUN and GET Oommands 6-28 6-29 6-32 6-38 6-41 6-43 6-50 6-52 6-54 6-59 6-65 6-71 6-71 6-79 6-79 6-81 6-83 CHAPTER 7 ERROR HANDLING Types of Error 7.1 Oal11ng D1agnost1c Pr1nt 7.2 D1agnost1c Print Boutine 7.3 7-1 7-1 7-2 OHAPTER 8 8-1 8-1 8-1 8-2-,- MONITOR GENERATION and HODI'IOATIOB Mon1tor Module Preparation 8.1.1 Module Assembly 8.1.2 Hodule Linking 8.1.2.1 Resident Monitor 8.1.2.2 The Transient Monitor 8.1.2.3 Keyboard Language 8.1.2.4 Other Modules 8.2 s,ystem Building B.2.1 Setting Up a System DEotape 8.2.2 Loading the System Device (SYSLOD) 8.2.2.1 Preparation of SYSLOD 8.2.2.2 SYSLOD Usage 8.2.2.3 SYSLOD Processing 8.2.2.4 Monitor Boot1ng 8.3 Monitor Modification 8.3.1 Res1dent Monitor Modules 8.3.2 Program Services 8.3.3 Device Drivers 8.3.4 Keyboard Oommands 8.3.4.1 Bew TMOB Oommands 8.3.4.2 Other Commands B.l CHAPTER 9 SYSTEM lILE lORMATS 9.1 Object Module Format 9.1.1 Object Module's Oontents 9.1.1.1 Global Symbol Directory (GSD) 9.1.1.2 Text Block 9.1.1.3 Relocation Directory (RLD) 9.1.1.4 Internal Symbol Directory x 7-4 8-2 ~-.J 8-3 8-4 8-4 8-4 8-5 8-7 8-7 8-8 8-8 8-11 8-12 8-13 8-14 8-18 8-18 8-19 8-19 9-1 9-1 9-2 9-2 9-5 9-6 9-6 ____...t Ohapter 9, continued 9.1.2 Object Language 9.2 Load Module format 9.2.1 Load Module Oontents 9.2.1.1 OOM» Contents 9.3 Object Module Library Pormat 9.3.1 Directory Oontents 9.3.2 Object Module Contents 9.4 Load Module Library Format 9.4.1 Directory Oontents 9.4.2 Load Module Contents Fi~e 1-1 1-2 1-3 1-4 1-5 2-1 2-2 2-3 2-4 2-5 2-6 2-7 2-8 2-9 2-10 2-11 2-12 . , 3-1 3-2 3-3 3-4 3-5 3-6 3-7 3-8 3-9 3-10 3-11 3-12 3-13 3-14 3-15 3-16 3-17a 3-17b 9-7 9-13 9-14 9-15 9-17 9-18 9-1B 9-19 9-19 9-19 I L L U S ~. R A T ION S 'ritle The Basic Resident Monitor in Memory Monitor Library on the System Device Memory After Program Load Memory During Program Run DOS-II Monitor Module Structure Usage of the Fixed Vector Locations System Vector Table Content Monitor Residency Table Format Device Driver List Format EMT Handler Operations Stack Shuffle to Remove Call Arguments for Immediate Program Exit From the EMT Handler Swap Buffer Format SAM Operations Memory Usage During I/O Set-Up Buffer Allocation Management Buffer Allocation Operations Buffer Release Operations User Link Block Possible Device Assignment Table Device Assignment Table Entry Format Dataset Data Block (DDB) Monitor DDB Chain DDB St~tus Word Driver Queue Management A Driver Queue Stack State In S.CDQ After Driver Completion Return Flowchart For Initialization Module (INR) Memory After Dataset Initialization TRAN Block Format Flowchart For Dataset Release Routine (RLS) Flowchart For Dataset Open Routine (OPN) Memory State After Dataset Open User Line Format Flowchart For READ/WRITE Processing (mainstream) Subroutines to Handle Device Transfers During READ/WRITE xi 1-7 1-8 1-9 1-9 1-10 2-26 2-27 2-28 2-29 2-30 2-31 2-32 2-33 2-34 2-35 2-36 2-37 3-48 3-49 3-50 3-51 3-52 3-52 3-53 3-54 3-54 3-55 3-56 3-57 3-58 3-59 3-60 3-61 3-62 3-63 Illustrations (continued) Fiffi!!:~ 3-18 3-19 3-20 3-21 3-22 3-23 4-1 4-2 4-3 4-4 4-5 4-6 4-7 4-8 4-9 4-10 4-11 4-12 4-13 4-14 4-15 4-16 4-17 5-1 5-2a 5-2b 5-3 5-4 5-5 5-6 5-7 5-8 5-9a 5-9b 5-10 5-11 5-12 5-13 6-1 6-2 6-3 6-4 6-5 6-6 6-7 3-64 Unique Read Processing Sequences 3-65 Unique Write processing Sequences 3-66 Flowchart For Dataset Close Routine (CLS) 3-67 The BLOCK Block 3-68 The Special Functions Block 3-69 Driver Interface Table 4-70 Linked File Format 4-70 Contiguous File Format 4-71 Master File Directory Block #1 4-71 Master File Directory Block #2 User File Directory Block 4-72 Bit Map Segment Format 4-73 Protection Code Format 4-73 Non-System Disk Format 4-74 System Disk Format 4-74 possible Linked File on DECtape 4-75 DECtape Format 4-76 Monitor File Management Modules 4-77 Potential Stack State - Internal File Management Subroutine Call 4-78 Use of Swap Buffer in File-Handling Operations (First-Level Routine) 4-79 User File Block 4-80 File Information Block (FIB) 4-80 FIB Linkage to Bit Maps 4-81 Program Load Image as Produced by Linker (Link-II) 5-30 Program Load Operations (Phase I, Program Load) 5-31 Program Load Operations (Phase II, Monitor Module Load) 5-32 Operations of the General Utilities Routine 5-33 Conversion Routine Operations 5-34 Command String Input 5-35 Command String Syntax Rules 5-35 Command String Input Buffer 5-36 Command Buffer For CSI 5-36 Command String Syntax Analysis (Mainstream) 5-37 Command String Syntax Analysis (Subsidiary Routines}5-38 CSI Command Block 5-39 Switch Data In the User Link Block 5-39 Command String Decoding 5-40 Exit Operations 5-11 Use of the Keyboard Swap Buffer in Command Processing 6-90 Stack States During Command Processing 6-91 Keyboard Command Buffers 6-92 Keyboard Listener Operations (RMONS) 6-93 Special Keyboard Driver Operations 6-94 Keyboard Interpreter Operations 6-95 Date Command Processing 6-96 xii Illustrations (continued) Fiqur~ Title 8-1 Save Command Processing 6-97 Begin/Restart Commands processing 6-98 Time Command Processing 6-99 Modify Command Processing 6-100 Assign Command Processing (OVerlay #1 & Mainstream, 6-101 OVerlay #2) 6-101 Assign Command processing (OVerlay #3 & Subroutines, OVerlay #2) 6-102 Stack State During 'Assign' Processing 6-103 Example of Line-Printer Dump 6-104 Dump Command Processing 6-105 EOM Adjustment by TMON 6-106 Transient Monitor, General Processing 6-107 Run/Get Command Processing (Load File Check) 6-108 Run/Get Command Processing (Preload) 6-109 Stack State On Entry to the Error Diagnostic Print Routine 7-7 Modules Present in DOS-II Monitor (V4A) 8-23 9-1 9-2 9-3 9-4 9-5 9-6 9-7 9-8 9-9 Object Module Format Blocking of the GSD Contents of GSD Format of a Text Block Format of a Relocating Directory Object Module Library Format Blocking of Object Module Library Load Module Library Format Blocking of Load Module Library 6-8 6-9 6-10 6-11 6-12a 6-12b 6-13 6-14 6-15 6-16 6-17 6-18a 6-18b 7-1 xiii 9-20 9-21 9-22 9-23 9-24 9-25 9-26 9-27 9-28 OOS1."N'" F' AGf! I_I CHAPTER 1 I N T ROD U C T ION Like ~t~.~ bulk ~ed~e, ~e~e~a"v, e dilk!1 eo~v@~~e~t for .to~aae a~d ~et~.eval of system softwe~e .ue~ II Editori, A~.e~~,ers, Com~iler.' ete.' w~ie~ ~ss1st t~e.eom~ute~ u •• r toward • • more r'~id dev@lo~me"t of ~1s 'DD'4elt1c~ls ~rccrAms I"d t~ereafte~ of t~ose ~~oorl~s t~emlelv@s a~d th.~r date. Mc~e .~o~i~iea~tlv, beeause of ftl relet4velv f,lt ~a~d~m aeee •• ~e~eb1lit1e., I disk e~~ be treated IS 8 virtu". exte".10" of Iva1lable eore memory, t~erebv e~ab'1"o the ~rcv1'4c" of I wide ra"oe 01 ~u"-t.me .e~viee. w~1e~ ea~ .a.e .t~e. bU~de" of al' ~roc~am., eve~ .~ t~e .me"er eo~f1Clurat4c"l. t~. The F'OF'-11 D1lk CDerat1"o Sv.tem (DOS) is de •• g~.d to take .dva,.,t.ce ~f t~e.e be"ef1t. 4~ t~e .1,.,ole-u.er di.k-ba.ed ."v4r~"~e~t. T~u, it eo,.,s1.t. basieallv of. Mo,.,4tor w"1e~ ,uDc'.e. t~ • • erv1eel me"t1o~ed a"d 1~ Da~t1eula~ IUD~O~ts a comDreha~.4ve .et of ~roo~.m deve'o~me,.,t loftwa~.. t~ t~. Procremmer l • Ha,.,dbook CDEC-l1-MWOC-8) t~e ~c"1tor 1. des~ribed. ior t~e u.er w~o w~.~e. me~elv to obta~" 1tl, .er~1eel for "11 OW" DUrDOlel a~d to eo"trol t~e ooerat10~ of ~11 Iv.t,m. T"e Ulaae of 1tl a.soeiated ~rogram., '1lted below, •••• e'a1~ed i,., the r@1eva,.,t F'~oa~ammi,.,o Ma~u.' '~OW"I . , EDtT-!! IitAL-l!R LINK-!t OOT-l1R IitIP.it 'ORTRAN T~1. ma~uel Text Ed1to~ AI.emb'e~ L1"ker.' LJ8R-11 Librar1e,., DebuQC1~ Aid File Ut1'itie. Peekeae FORTRAN IV Comc1ler OEe·11-E~DA-D nEC-l1-ASDe.O nEe·i1-ZLDC-D nEe-11-0CDA-O ,.,Ee-l1-PIDA-O "Ee-l1-t~no.t'\c.. ~nI'" ~ .~ :~~¢~ ~ut'.ftQ. "'I\~rt--.e.. RK s~~ •~C!Ab /. \OoHU:1E. "&714 (+ PRoCe.~ .sr:l' 11'k.~ .l"Ila-;rr. .s~511!n\~) C ~- S~&lClt) l>£"u,£ l>UvRA 1 .. ,-'~rcE.R. CiE.N~"'" f)u~PaSe S\J6- RO\JTrt(e,& ~ mA~t.r ... SWAP a~ ~ ~-----.----------------. SWAt- "'leA M"'IIl~ £nn- . ,. ~rtbLER.. ft\oll3:.T'OR. ~.aJl~ MA~ ~"ft\O tU 'iQaOa. SPACE. ,'" ~~cysr-a: '-1: 'THE: 8AKe:. a.£9«J>£..rr MoNrlbfl. ;... MEMOfii!:'( t ~~~ uP Ie T"\'tE -~~~ • PQ,o~ -. - ~ C.e£~~ Ot=' f'kl')oua.& \-orNE. (see t='3u~ kcV - r .. :rtGEx , ... =: I L ________ '::!'-M.~~~ ~"::::-~~--.eI~r-~ -~ rre~"3= tfUT ~M'P£~ • _.~_ eoa£~= ~ ftIo»u~'" J"-------------P.~-~- "' CW\O])UL.E 'I.. ...oet<.,. ~~~. ~,,_~~~ -~-~~~~~~~~-~~~ ~)- "_ ~ ~ _~!'_'!i~~~, ~ _~Sl:.~ ~~_~ .. - f~.!...~~_~."o~ ~~~~_ ~ - c.oaa %IftMn .,.,...,T O#~a.B =-~ :r.. EHMJl #~ - , -- I I ~<=-aJI!,--" c:o-.E. &ft)T c.A ...... -. - .... A»aE&~ ----..." #11 ~w.A. ---=<...-.-" I'l4ME. ( ..... :. -&tID S1"Atn" ~_~____ ~. .~_-=H~za (...,0) __ ~_ "# fI# ~ "'O_~~~"!~_ S1'R«r ,,»ae& . - v _ _ _ _ - . - - ... fr. tftO'iW..E __ ~~ ... ~ ~AT A'l>)Wl~ · I-------~~;;;...-~~-~-~~ _~_ Mo~~.~ "~Cfttt ---~~~ C"Qd.,,-s.)---- -----~----~-- -.,.~~~- ----- _ .~_~~T b~_~ __ ._ ~ _.~_~ .~!~~~~da). of O!_~~.~.•o.~ • ~ I --' ~ ___ ._ ~T ~~.~~. ~r"~a£_ F.S :"'" 1- ~: ~~.,.... Ioo%8R""-"I Ott ~ SV~ "'E.~%C:E... CSA ~----------------------~--CSA l. ~,'"£. .~ E.(Y)(. ~ '-( p~ ~~----------------------~ ,,~ ~ ----..... ~----------------------~~~Toa "~TO: A) >,,11\ 6\lF'tr~ '-)~ C)X/o ».x"'Eb ~, ...~ ""----~.=~ -~-~~ --- -~e.0I'I"J - O'ntEA --- ~"'To. ~ - - tlb,J>e,fCT .. ~ 'Aocrc4«l Au'" Pat.~e.NT~"'" PU~EltTL.'" a.E'S!IoIi>ENT AES1l>&r. MOf(tTO~ MQI\Q:Tb-. (see. F'~. ,.i) (sta c:~. ,.~ 9S ~ ~1'UC'e. \ • 3! t't\ t.mot"~ 0.""- r Pr-o.;,t"Qn) I-..cad 1='1~\lC" I-A.: t()e.MCIC'~ ~ .. ro, P~ta~ ns Run.. ])O~-II Kg pro o~: OC:t 0 I RLJC.TUR..E ('I')O])ULE. ,-P: PI'. ~,c. KE'tBoARD CON1N)AI'ID "'e.t.llI't: 39' ""eI·SA: c.R.: RC-II SA ... e: r ]) 1':>1<. 1-/0 PROcE.e.~O~S: ,I-........_......J .r -) \£, l- '"I I L "8I-~ ""5'\'EXT'1 -- - ~n)O"''lI:, - - - r-~--~----~----~ --- -, _'--_--_...J_ _ _ ~:;::;:::..:..:.;:.:.L_ ______ ... .....J..---~ -- - - - -1--- 1"~:J, c... ~AT'A'S€i' INtr p, .J...~'! OPEN E,)t,I~TlNG- FIL..E. I I J, t ..!, ';' '1'IUI: 1 1 , 1 •~ A8$oL.ll1E Q.a.:;: 1 "7 I ~C1 R.E..L.SI~ 1 , 1 , t I t .J.. I f I I 1 i , 1 '" FcA: J. j,j~ I-a.... llol.s c:AeAlE I'(e"./ c.~ \..,NICS.D FlU:: R€.t&/ OI>Et'I wRri'€.. 1 I J, l' C&..'l.·, 1 1 t 1 1 I ''1 'lIlA:! I,"" I I !. I , I .u J)A~ ..!. CLo:;E I 1I -',(- I I I Ct\ec.,<. j:',~ AC:Cc:..~'1> A~AlE: ~ Corn.s.. C::-IU!.. I &Ir·~ ~ ... .~. .L._ , - .1_-* 1 12>4- &~,<. G€.TrlE:)c\ &1 T', IY'lFIP ,I - ,'h.l,£)cl\1E: S~ecT L..\N~ r,:-,\..£. I '" G-NI'/'\: I'Z. 1 3P"C\~L. Fl.loIc.ilON ),(0- , , 1-.1 ,I - - - - APP;-r J.. 1 I :i>A~- ~MiUS F'1I..s..~ s\ I cor-r.w:; • &....oc..K:.. 1\1+.O~'l'G , I I 1 .j~ , it4 fRo"lt!a F"\I-S. Joe"" oe..L..G..~ I..IrlKS:> coC'l.....,&- j:'t~ L--._ I FI~ Crtl~e I I I ~ I I -..J L.... J ~1 .L &4 , ~,,~: 'i>Et..,G.."E 56 I I !.- Crtlj) I'~ '4oCSS9 I 1 .:. i 1 ' 3)L.",.L sa I , j I I 1 .1.- FINISH R,';"'/GS:\ I I ~It..£ I _ _ _ _ _ ...1 v 'Z.'Z. ~I ht,OI 1 ('RW"I'\ - - -.J .!.. ~PA!!tll> .!I I - ) I~ J 0EL..e..",€ I ---r,- - 11 : ca.,,: • I 1 oz., ~Q.oR ~qGrfloSi V 1 ~ .!I ";> 1 516 'i'~1,1,~7 , GrE.' - t t I ,....,. . . . -.;:r J1 ... I SPc.: 1 I ~5 v G«\AI 1\ ~€LATI"e &\..OCI( "'~I.O:l\~ 'i', R€N:.L~\II l' j¥~ >.tItl!.Cl"iol) ""1 'i' CK)(, J, 5~ 'i' &UI,T ..... ':' .5n": .i 1 '3 1 J.. 3i!: J , ~ I E}>', 1I '-" J I 1 L \.OC\<.·up t- 1 ~/4 '.bATqo;.Er I I ~II.J!, " I RWN: I'" ";> I )I~ec.i~ 1 1 "':' L\JI(,_J 4k "" '10PH: 1 I I (;- _ _ _ _ _ ......1 _ _ _ -) -1- - - - - - - - - - ,. - - -, , 1>E-co'i>e.. '" L - - - - - - - - _,.1 - - - - - I oJP 3. Cl'I\p J, I I c.L£A., .. I ________ 1 I I 1 TMON\ I I XNPUT/OLlIPUT ~ER"'CES:r - - - - - - - - - - - - -r - - - - ~:-3-~........J'-----~1-----J.....l :pumP r I Hl)1i-tt6S C4'l)..... I~\~ tw:\t(])1..f:.~ I(,('T. " Ao\lTIMfi: be..... c..E. "'-----I IJI----....I - IEAAoA. ~~\"SR ,<.&1:: ~PEc:.14'" K6i> 1C6:D I---r----~ ~NTSa:i>~ .....(SA. N<.e.~ Ie:.. .,P-!..._ 31 f'I~PEN:i> J>Ec.'l'APt: F",....e!.'e> D 'I Ke:,:': I J:N~' :1 ": jl I . ..s. NAml!!: f\"Io';l .. c.. ~CrtTr CA~ GC~ ~ IU\l-e.c.h~e.. ,......,:....\1_,;"" ot- COo!".....1 -------,. Re.~t'Ulee.. ~ - - - ......ok./ K&i:> Crt'I~ Em:.(' Io""c-oa.\ Ern'i' CeLli J.,..;n\c. ---------------- CHlPTER 2 RESIDENT MONITOR I~ WIS I~OW~ 4~ C~8ot~r 1 tM,t, i~ Qe~erel, t~e user el~ h4mle'f deter~i"e t~e wav i" w~ic~ ~e w4', ul~ t~e ~odules for~i~o_t~e OOS ~0"4tor e4t~er to live t~~e bv ~8v4"o t~em rel.de~t 4~ ~emorv or to ,ave core by lelv4~o t~em to be broug~t_fr~m t~e SYlt.~.dev1ce 0~1y w~e~ re~u.r8d. eert.i~ ~owever of t~e modulel t~ere ~s ~o c~oicel t~ev must be rel1dA~t at ,11 t1mel for o"e of t~e fo"owi~~ reelo~'1 for They co~tro' t~e system Oe~erlllv !~~'udi"o t~e 10ed1nQ of other Mo~itor routi"el from t~e IVStem-dev4ee. T~ev ere called wit" IUff4cient freaue~ev t~et to bring t~em fro~ t~e IVlte~ device every time t~ev Ire needed would be unrealistic. Thl ~ur~ose o~ thil e~aoter il '0 dileu.' t~e ~ri~c4~.' mod~'e. 11"1 t~11 cateoorY. Se~t40~ 2,1 ~ont~1~1 deleriot40nl of th' tabl'l uled bv t~e Monitor to mlintlin Ideouate eo~ trol of t~e Iyltem Ind '"OWl how t~ev ere set u~ i~4t1a"y. Section 2.2 eoncer"ed wit" t~e rell ~eart of the Mon1tor, the EMT handler, and Section 2.3 'ookl at the tec"n.Quel for br1no4"o module. from t~e Iv.te~.dev4ce by the Swa~ Area Maneger~ Some ~e~erl'-~ur~ole lubrout~nel are c~vered ~~ lectio" 2~4 and fina"v Section 2.e out'ines thA c'ock control routine, .1 Two other re.ident modules are inte"tiona"y omitted ~ere in order t~at they may be dilculled in contewtl 1• 2. T~e minimal conlole tv~ewriter driver needed to serv1ce keyboard command in~uts - see ~eet40~ 6.1. Prel.~t'v t~ • • ~EAO/.WRIT! orocel.or must ,110 ~e residel"lt. bv _re.,o~ of itl I~ze, it ean~ot be brou~~t 4"to tlote Swao Buffer 4n t~e ulual man~er. Nevert~e'esl it w1t~ t~~ ot~er 1/0 orocessors 4~ Seet1o~ 3.2. 11 Th. 'IvoUt of t~e module, wit~i~ t~e ~erm.nentlv Monitor area i. illu.trated 41"1 f10ure 2-1. described res1de"t PAGF: OOS2.~Nn 2.1 ~0~1to~ ,2- 2 Tlble. T~I object of t~1. tlb'.. w~.e~ .~. Seet1~n i •. to .nt~~duee t~e va~40us let uo w1t~1n t~e ~el1dent ~0~1to~ e~el, fo~ 1~t.~eo~~u"4elt40~ ~Itwe.~.el' Mo"ito~ ~outi"e.. T~. tlb' •• t~I~,elvl' a~e f1~.t d1.eu.sed. T~1. 1. fo"owed by • dl.e~~ctio~ of t~e 4"4till1Zlt10" e~oeel' w~1e~ 1. ~81~1y c~ov1d.d to e"'u~1 t~.t t~e tlbl •• I~e ee~~eet'v .et-uo fo~ U'I w~e~ t~e Mo~1to~ i. 101~ed. It ,~ou'd b~ dl'1g~.d te "ot.d et t~1. o01~~ t~lt t~. Mon.to~ ~IS been be 1~d.cen~e~t of t~e 0~11t1o" it ~ceu01e. ~~ ~.m~~v. T~4. ~el~' t~lt O"'V t~o!e ~out1~ •• ~~fe~ fo~~ t~e b , , 1c ~ • I 4d. n t '=' 0 ~ 1t 0 .~ . e In. ~ • 1... I " e. e • e" 0 ~ ~ e ~ d 1 ~ e e t , y .1"ee t~ • • oe~oo~4.te co~~.et40~. ea" be e.t.b'1,~ed du~1"~ '."kl~' bv LINK-lt. A" ot".~ ,.out."e, w~1e~ ea~ eetent11',y b. ,wlce'd-.n o~'V w~e~ "eeu4~ed mUlt u.e 4~~1 ... et ~.t~· od •• To c~ev~d. t~, mOlt .t~.i~~tfo~wl~d leeell to f .. eaue"t'v ~e· au1,..d I~'I' 1" t~. ~~ •• d'"t Mo~1te", DOS t~erefo~e ut1'1zes t~. veeto .. leaee i" 'ocat10~. 4~-~1, ~.~e,.."v "e.e~ved 4" 11' ~DP-l1 .v.te~. fo" 'Ylte~ .oftwa~e use. T~e.e .~e 1~ flet ~". O"'V 'oelt10~. Idd,.elled Ib.o'ute'y with." t~. Mo,,4to,,(1) Cd.viee d,.ive,.. eo"t"0"4~a .t~e exte~~I' ole. ef cou" •• ,.e.ot.d). ~1eu,.e 2-1 I~OW' t~,1~ e"e.e~t u •• ~e. In g.".~.', I ~.1.,.."e. t~"euQh t~e~ ~eouf,.el I 'eve' of i"d~ ~.ct10" b.yO"d t"lt e"ov1d.d w.t~4n t~e 1e~~lt of a 11"~1e PDP-1J1".t,.uet10n. ~.nee t~e eo~~on tee~n.oue fo~ e~t"y, 'IV, into a g.",,,I' eu"oo ••• ub"out1". wit~ it. .t.~t-ooi~t ." one of t~e veeto,.s i. v41 t~e tee ~f t~e c~eee •• o" stack I" MOV .-44,-CSPl J!R PC,'CSP'. 2.1.1 T~. Sy.te~ . - tim.. yeeto,. Tlbl. 01 Veeto~ i"fo,,~ation ..... ---.--. ... VlctO~ f~'e It"uctu~e . eu~"ent'v ISIUme t~e Syste~ rlb]e CSVT) .t,,,tl '~ .• b.o~ute ,oeation ~00 •. T~1. 11 • r •• t~1et1e" t~,t wi" be f1_ed 1" '.te~ ~e'easll of DCS. 1. T~. CR'10Nl' Tab'e CSVT) 0"ov1del • eo~~en ... ea fo~ t~e on t~ • • tate 01 t~e system at ."y Tn cI~t1eu'I'" it co~tI1~1 oo1nte", to ot~.,. oa"t. of Sv.te~ .~o,..ee .GET START AnDRESS OF .SlIBR. 'S.RSAY' .ENTER ROUTINE & CLEAR STACK ~out4" •• PAG~ DOS2.RNn ,. ~~ 2.- 3 the ~ •• 4d~"t Mo~ito~ whfe~ .~. "ot ~efe~e"e.d f~e~ue"tlY ."OuO~ to w.~~."t the MOre f~med •• t • • eee •• dfseu.aed above o~ to .~ ••• w.t~t" • ~u""t"a u.e~ ~~oo~am. It ~o •• "ot f"e1ud. d.t.t, fo~ othe~ rout."es whte~ "o~mal'v ext.t O",y wfthf" the MO"tto~ Lib~.~v ato~ed 0" the 'v.te~.devfee. The ••• e' e~v~red bv ~eD.~.te t.ble. w~.e~ wt" be discussed 4" the fol10wf"c •• etto~ •• Th. t.b'. oeeuDi •• the ff~.t c.~t of t~e ~'It~e~t MO".to~ I,r.. ( t h., 0".1 V ,.,. 1 ~. I. it" f 0 ~ t" ,f! b. f "a _~ he f • ct. t'" t • ~ • • ou~ce .1'0 eo"t.f". the eo"te"t. of the f.x~d veeto~. .~ 41-51'. Nor~."Y tt .t.rt. f~~edf.t.'v .bov. t~e reserved ~"t.~~u~t v.eto,. 'D.ce .t loe.tio" AI~. N.ve~t"e'.aa, .t"e, 4t .s .• lw'V' ref,~e"e,d th~oug". ,oe.tto".4~, thf, add~e •• CI" b. eh."a.d by ~ •••• emblv, D.rtfeul.rly.f f"lt.ll.· ~;O" ~.td. e.tr. v.eto~. fo~ ,Deei., d,vf~e~ Cbee.u •• of the fil • • t~uetur •• ' ~ •• t~fetfo" f"dfe.ted above, the SVT .d· d,. ••• of V104' y.~ •• o" of DOS mu.t "ot be e~'"Oed) Cl'. Th. tt.~. eur,.."t'v t" the ~VT .re ,flted f" ff~ur' 2-2. I" the M.t", th, • • • ,., •• If-,xD18"8torY' how4ve~ .dd1t.o".' "~t •• h.ve b •• " i"e'ud.d wh.~. ".e •••• ry. The t.b'. e." b, •• ~."d.d .1 ~.au.".d bv the eur~e"t st.te of Mo"ito~ deve'· o~m."t but O"'V by .dditto" .~ the e"d. Th'D~e.e"t'Y .de· ff".d f"t.,.".l .t~ueture e.""ot b, eh'"Q,d sf"e~ .11 Mo"ftor ,.outf~ •• d.D."d UDO" ff •• d ~.,.tfv. Do.itio". w(t"f" the SVT 4" ord.r to r.fe~."ee ft. CO"t."t. 8" , -~ Th. SVT .• ' b •• fe.l'y e.t.bl •• ~.d whe" the ~estde"t MO"tto~ •• f4rlt '1~k'd throuahout LINK-It " d,.e,..b~d t" Seetto" .,1.a~ Th. t.b' • • ou~ee ~ •• bee" •• t uo to t~elud., f~ ~a,.· t.cu'.~, the ".e •••• ~Y olob.l ~ef,~e~ce. to other ~o"ftor .dd~.s.e. to aceo~Dl •• h thf •• Othe~ t.ble '"trf •• whtc~ ,.ef'.et.t~. co".ta"t .tate of the eo~f.Qu~.tfo" f" u.e a~e •• t UD du~t~c t~e 4"ftt.'.z.t~0" oroe,.a whic~ f~l'ow. ~o~~to~ ,o.d.~c C••• Seetto" 2.1.4). The v.~ •• b'e .~t~fea, the~ •• ft.r, 're •• ,'.d f" o~ ~'Moved '~D~oD~~.te'v bV •• ve~.' Mo".to~ ~outt" ••• "d the., wf" be "oted at the releva"t eof"t t"~oUGhout the ~eM.i"de~ of t" •• ~."u.,. I" o~de~ th.t the u •• ~ ~,.OO~.~ M'V "'0 ~efe~e"ee D.rtfeu',~ e~t~.e. de.m,d des.~.ble, t"e Ge",r.' Utt,1tte. ~eauest b,sed o~ ~MT .1 •• D~ov4ded •• th. ~eeomMe"ded mea". Caee ~eet.o" ~.2) ..1. --.--~ ..--.-. T".8 i.c.,fty may "10 ."OW a u.e~ who w.... es to ~". erv. ." .~.. oi meM~~v out.~de ~o"~tor eo"tr01 to do 10. Howeve~.tht. u.aQe f. "ot co" •• de~ed a "orma' D~S D~OV.S.O". Thu. eo~,.eet ~o"fto~ oDe~.t.o" j. "ot Gu.~a"teerl if .ts botto~ ts fo~c~d .bov. leK, the Dof"t .t whteh oo.ftfv. .dd~ ••• e. become "ea.ttve. OOS2."Nt"I PAGE .2- 4 t"~O~I' -~~---- The M~n4to~ Re.fdencv Teble (~RT) .upclfes twe tvces of info~met.on, mefnlv fer the EMT han~le~ (se~ Sact4o" 2.2)1 1. It shows w~tch Ho"ftor ~outt"a. are ras4dent 1" etthAr perme"e"tlv or for the ~uretfon of e oroaram run, a"d where t~ev ere loaded currently. 2. ~t. acts a. a directorv to the ~e",afn4na routh,e. estoped w'thtn. the MOn.to~ Lfbr8rv on the system-device, to enab'e fmmedfate aeC~.s when one of_ the.e routfne. mu.t ba brouAht 4"to eSwec Buffer. ~e~orv, The t'ble f. e .et of o"e-word entr4es, eech corresoondfnQ to an EMT eode, and •• ordered fn the .eouence of tho.e code • • tart;"o at 0. Thu., fop e~~mcle, .ince the ~ode. for .INtT call f. 6, the table e"trv for the .I~IT routfne f. at MRT+14. The lenoth of the table wfth1" a"v ~onttor sVltem "Iturlllv dece"ds u~o" the rl"ge of the currentlv esstoned codel. ce.-haps wtth .eare., uo to a ma.imum of 256 wo~ds. The ',"ct~ of the M"T ce" be determ1"ed_b~ .ubtrectfnq the .tlrtf"c Iddre.. of the HRT CSVT+4e, from the .tarttnQ Iddre •• of the DDL CSVT+5P) which immediatelv followl ft. The fermlt of eaeh word in the tlble show. the eurr@"t loeat4o" of the Monftor routine it recrese"ts, ustno the faet t~lt for a velid PDP·J1 Idd~e.1 for e.ecu~fo" eec, •• , bit 0 ~u.t _be ~, f.e. I word ~oundary. The Possfble formats are illu.trated at fiau .. e 2-3. It .hould be "oted that two bft. ee" lufffcientlv deff"e the ma.fmum "umber 64-word legme"t. (or fi.ed-head disk block.) for a"v Mo"4tor routf"e .;"ce the lar~est .wec er.a Ive.'lb1e fs 256 words CI.e Sec~fon 2.3). Horeover 11~ce t~@ ~on.~or ~fbrarv 8lwavI co~es ffrlt on the system deyfce, it f. "ot excected that anv Mon4tor ~out."e wfl, be stered beyond bloc~ '17777. ef The tlble •• tate "eeded for three .tlcell t. I uler crOQram run 11 reache~ fn The ~RT lource t • • e~ ~c t~ contaf" the alobal "ame elch e.fltino Monftor routf"e in th~ apcroorfate oo.ftfo". Ourf"Q If"kaae of the cer~ane"t'v re.fdent Mo"ftor Sect to" with LINK-It Csee Seetfon 8.1.2) the core .ddr~ls for eech routi"e fne1uded f. automltiClllv .et correctlv into the t8ble. LINK-It also zeroe. the ~ema1"i"c e"trv words since the1~ alobel ,eferenc •• ~emlfn u~def.npd. ~f Whe"ever I comolete Mo"itor hoot eceu~s, eit~er f~om cold ste~t via the ROM 10ede, o~ following. PAGE:2- DOS2.RNO e eo".ole FI~I!M comml~d, t~e 1nit.lli~ltton ~out.ne t.ee Sectio" 2.t.4) lelrches the ~o"ito~ L4~~apv tMONLIB) on the .vstem device and pesetl el' 0 e"t~.e. in the MRT to the ~elevl~t di.k info~m~tio" C~o~mlt b, F~oupe 2-3) fj the eorre.~o"d~na pout4"e •• fou"d or with t othe~wi.e. At thf. ti~e, the MRT •• i" it. ~e~ma"ent Itete. A coev t. sto~ed, within the Mon4to~ Librl~V 0" the system dev1ee fo~ llte~ use Clee below'.tl) ~. If the user, by I 010bal peference fn a ~~oo~am, f"dicltes thl~ 10 po~t1"e normellv Itope~ O"'Y 0" the IVltem-device 1. to become pelident while thet ~roQPlm il punn."Q, the DPoo~eM 10adap Clee Seetfo" 5.t) f. 10 4"fcpmed by LINK-tt. The lcleep Ulel the ~1lk.i"fO~~lticn Ito~ed f~ the MRT to ~~ino the ~outi"e into copa I"d ~'Ietl ftl MRT e"t~v to the IPDro~riate eore edd~ell. TheMRT ~e~a1n. 4~ the loed-state th~ouahout the DPOQPlm pun! _it cennot be c~l~o,d_for p~uti"es b~ouoh~ into I aWID Buffe~, bec,use the d41k 4nfoPMatfo" Paleve"t to the~ mUlt reml4~ IVlfllble for leYe~el inte~lelved el"I, e.a. .INIT followed by .OPEN, then back to .INIT 1014n. The SweD Ape. Mlnage~ therefore uses other methodl to control the ·~es •• de"cY" of thele ~outi~es Clle Sect40n 2.3). when the ~~o O~lm 41 finlllv removed from eo~e bv .EXIT f~om the D~capam o~ ~" I conlo'e I(ILL ~o~ml"d,. the MRT eODV en the IVI~e," deYiee .11 read blck into_M,mOry to Plltore the teble to ttl perml"e"t It.te. C.ee !eetio~ 6.e) BI14eA"V, the Device Orive~ Li.t C~OL) Drovfdel the leme< infor~l!ion •• the MR~ co"e,rnfnQ.the eurre"tm~merv OP IVI. tem-device 'oeetio"1 of device d~iver'. ~eweve~, u"'ike the other Mo"ito~ ~out1"es, the drivers mey be lo.ded fnto or ~emovld, 1~o'" memory i" __ c~o~dlnc. with the d~ne,"fe re~uir· ments of I ru,,"1"o Drogrl~ ."d theY do not use the SWID Buffer. Since they mu.t be readilY Ive4'able to service proorlm i"ter~uots whenever thefr deviee 41 in use, they ec· .......--- .... -. 1. A•. ~t.t~d, thil write~out oeeu~s u~d,r "O~ml' ru"nfnQ conditions, Mence at orellnt the Mo"ftor L4b~l~v 0" the IVlte~-devfce must not be wrfte-p~ctected. e~DY e.t~a ~uff'~1 f~Qm.f~ •• eo~ •• 'o~a.~ H.~e • • ee~ ."t~y ~ust be to eo~tef" add4t40"al 4"fo~~et.o". Th. fle.~'tf"O fOfl",.t of. t"e DOL. i. ill'u.t~et.rf at 2-4. Th • • io~ffie."e. of •• c~ it.m i ••• follow.' 1. Hou~e O.vfe. ".me - •• the ~.d •• -5A fo~", fe~ t~e "D~'"U eode •••• O".d to e.eh d.vf~.. T~e o",y w.y a" ."t~y t" the 'i.t e." b. fou"d i. by • • e~~c~. Th •• fte~ th~flefo~. e".ble. ft. 4de"tiffe.tio". "'e~fe CO~. lo.d add~e., - ~O"t •• ". the·.ta~t.of t~. iee d~fve~ wh." ." eo~e. ~th.~wf.e ~ ~~.v.~,. cu~~e"t "0"·~e.1de"Cy~ r"t'~~UDt v.eto~ .dd~,sl the two·wo~~ • fl the d.v4"dfc.t.,·th. .t.~t .dd~... of v.cto~ "'fa~ed to the devf~. withf" "',",o~y ,oe.tio". e-377 (o~ as. oth.~~fse D~ovfd.d) ."d f. " •• d.d to pe~~ft the If"k.oe of the d~fve~" ."t'~~UDt •• ~vfee ,Out4". to the y.eto~ ~"e" 10.d'd~ (S •• 8ectfo".3~2.1) ~t fs h.'dw~th1" the DOL ~.th,~ th." the d~.v.~ ft •• ,f, beeaUte the u.e~ e." Dhy.fc.,ly ' •••• fo" d.vfee. to dfff.~e"t veeto~ •• T~ •• obv •• ~e. """Tbly.of the d~.v~~ ."d .1.0 .,'ow. f"-eo~e modfffc.tio", eve" thouoh t~e d~fve~ .t the tim ••• avafl.b'. o"'y f" the '.te~"a' Mo"ito,. Lfb,..,.y. 4. System-d.vice .ta~t block • of v•• the aetu., deviee .dd,. •• s fo,. the d,.tve,. wfthf" the MO"4to~ L.b ... ~y. A. fO~ th. M~T, "0 d~fve~ •• e.pect.~ to .t.~t b.yo"d block *17'7(8) • ~. • Of 18.wo~d blo~k. - e".b'e~ ~ete .. m.".tio" of .fz. of buff.,. 4t of of ".e •••• ,.y c,D.efty_ ""oth'of e ••••• * the the d,.fv.,. fo,. el.f",i"Q ."~ ,.e' •••• "Q the oecu~f •• whf', f" eo'" ."d fo,. .eeeffy."~ wo~d. to be ~ •• d, f" o,.d ... to De~fo~", the ~oed ( •• e~eetfo" 3.2~1). T~. '1~-bit of the f,.ld .110w • • ",~ •• mu'" d"fve~ tK, whieh f. ",o~. th.~ .mDl. f" mo.t DOL ."d - ~eDl.ee. the .~te~".' .d~~e.s d.t. i" the ,Yltem-d.vic, ."t~y f" the t.ble, .i"ee t~e lett.~ f"fo~m.tfo" 1. f~~.lev."t wh.", by ft. PU~DOS" the ~~.fv,~. fo~ .• ue'" d.vte. e." ".v.~ "'ve ~e~o~y.· The ~rovf •• o" of thf. ft.", f".t"d .)lows the OOL to be of v.~iabl • • 1z. a"d "."ee eo"t.f" O"'v the d~1ve,.s ",eded to .uepo~t the D.,.t.eul.~ eo"ffau~.t.o" be4"0 u •• d. How.v.~ it fs •••• "t •• , th.t the sv.t.", ~.v.c • • ~t~y is .lway the ff~.t t" t~. COL .s show" 4" the dfac~.m. PAGE .2-1 '-....-- Th. DOL f. e.t.b1f.h.d in the •• m. w.v •• wa. de.c .. ib.d fo .. tb. ~RT f" the D... yioUI S.ction, with t~e fellowi"O •• c.ctio" •• a. A d .. 4y .... utomat.callv b.come ..... 4d.nt fo . . . . 4tl eu ..... nt u.aa ••• ".Qui ... d, the ule" e." Q.4" nothi"G by •• t.ndinG 4t. c .. ele"e. f" m.,.,o"y fO" the du ... tion of hi. D.. eO"'~' (ot~ ... th'n ." ecc •• tO"al .v.t.~·d.vtee .cc ••• ). H.nc. h•• 1 Q.v." "0 w.y .c.c.fvi"o t~ia .. e· Qut ... ",.nt. '0"0 •• of b. e.c.u •• e.ch ite~ in .n ."t .. v .... ye. • .i"Ql. t~ ..... i ' "0 n•• d fo ..... e·i".t4~liI4"Q b.ck-uc cocy of the DOL On t~ • • v.t.",·e.v4c •• DU"DO", A. 4ndie.t.d .bay., wh.n.v ... the 0 .. 00"'''' infti.'.ze. 0 . . . . e.? 1 •••••.• d.t •• et, the DOL ....... Ch.d 10 .. the dey;ee ••• aci-~ .~.d with th.t d.t ••• t. P .. oyid.d th.t .uch device •• iat. w.th.n the .y.t.m, t~ • • "t .. y fa .. the eo .... ddl"e.1 a"~ the y.cta .. , thl"auah .t • • ta ... rl .dd ..... , .... beth •• t to ... fl.ct the D..... nc. .b.enc. of the d .. iy .... " "'e",a"y Shaul~ the ~ .. aQ ... m_b .... Ita .. t.d .t ."y tim., c'l"h,D. follawi"o • f.4,~ ... , _ the DDL fl, .... to ... d to H • • "Ui.l .tate, thu • • ffectivelv ... ,.,evinG na .. ,.,.llv "o" ..... ide"t d ... v.... f .. a~ eo ... (I •• a.etton e~.) 0" Th., ., ... m."."tly .... 4dent S.ct4o" of the ~an4to .. 4. load.d 4nta ft. m.ma .. y ....... th ... by a cold .ta .. t th .. augh the ~OM baot.t .. ac ., de'c .. ib.d in the P .. oaa",,,,e .. " H."rlboak 01" fal'aw4"~ • co".ol. ~INISH commane (i" a .. d... to ., .. ey."t oa.li· bl. t",",,,,1 •• io,, of Me"fte .. ce .... uDt.o" bet we." u ..... ). It i. .ceomo."ied by ... outf"e w~.ch ce .. 10 .. "'1 the fu"ctio" of •• t.b'i8h."o the co .... eet ~o"fto . . . tat. fo .. "0 1"'" a 1 us.a., .,,,.c.,"v w.th ... ga .. d to the tabl •• d.sc .. ib.d fn the c .. evi· OUt .~ctie" •• t~; ... outi"., eccuoy1"a eo~e.above the "o .. ",a' .~d of, th! .. e.id."~ Mo"fto .. , il e"te ... d immediatelv .fte" la.d."a, .fte.. • ... v.nQ it. cu .. cos. it 11 .ub.eeu~"tlY ov .... w.. 4tte'" , •• y1"c an'y • • ~.l1 S.ct.an w~.eh 1"t ... fac,1 to the ,vltl'" ..... 0 .. dfa9na.t4e D .. tnt "'odule (.ee Chacte.. 1) .~d a _Buffer Al10eat40" Tebl. u •• d to ea"t"ol 0~e .. at10ns w~thf~ f ..... eo ... (.e~ S.ctia".2.3) (h."~e t~. ohJeet module cont •• n4no it mu.t come , •• t 4" the .... fdent Mo"ito .. l4"k4"o ~I"oee •• • •• e leetta" e~1~2) Th. t •• k. fellow •• e ..... 4.d out by tht. ..,eetal .. ~ut1"e .... al OOS2.qNO 1. PAGE ,2.- 8 D.t.~~inat10" of eo~. a4ze - t~i. is eecomoli.~ed cop'. It.pt("a et 8~ .nd t~en in steDs of 4K until en .~~o~ t~.o th~ouo~ locetion 4 indi~.te, t~e edd~ ••• u.ed 1. nO 10noe~ leoel fo~ th.t ol~ticule~ PDP-II. The end .ddre.. ~f t~e , •• t v.ltd 4K •• gment •• atoped •• the tep of cope 4n t~e SVT. ~y add~'I.i~e P~~v •• ion of Buff.~ Al10e.tion Tlbl. - •• will be .hown 4n Section 2.3 fpee cor. i. eOntrol'ed by I bit maD ~.Dre.ent.tion. Curr.ntly the .4ze of thi. MID provid.1 fe~ thl Dotenti.l uae of h.,f of the eVI4l.bl. Mlmo~y .1 buffep .paee. T~I ~outine therefor, DPepepel t~e IDProDopietl ~.e by ele.pina t~1 ~IQuilfte nUMbl~ of wopd' It th~ end of the Mon4tor Irl.. Thl.1 ere followl~ by two extpI wordl PlalPvld for Dlvfee A"fan~lnt Tlbll '4nkaae C.el Slet~on ~.1.2.2) .Thl mID t~.n be~ome. oapt o. the PI.4dlnt Mon4tor, '0 datI eone.p~4~a the meo Ind the eonllQUlnt ~ew Mo"4top Ind .~e entered into the SVT. Of D~oellaop trep vIetor • • • inca Mon~to~. ft~llf u.e. EMT & lOT. the poutine In;t11l4zltton t~~ ,tore •. th. IDDPoo~4.te edd~e'.e. end .t.tus ve'ues 'n.t~eir vector. 4n loe.tion' 30 end.2~. The peme4~4no vaetor, ere .et to caU'e er~op me"eaes 4f treoD4nq o~cu~,,_t~a .~atu~ vllu, 4n e.e~ e.'eorovidfno .n identific.tion code Cwith4" the Condition Coda bft.) In4ti.'iz.tion of dev4cI fntepruPt vectop. - by 'elrehfnQ t~e ~OL, the routinl dete~M4nes which rlp4ver. were 10.rlad with t~e re.ident. .y.te~. It extrect' information .tored in t~e interf.ce tabla, of the •• drfver. (.1. ~act40n 3.3) 4" order to aet UD the cor~e.Dondina davica inter~u~t vectoP'. As fn .tlD 3 11' otha~ vIctor' Ire initia'4z.d to elu,e ap~or m•••• a. OUtDut to prot'ct .al4nst ICUr4eu •• nte~~uDta befc~e I non-~a.4dlnt ~~.ve~, if such I.ist., il .vltl.ble. M~T & OOL DrePlret40n - II indiceted fn the DP.vfous .Ietion •• the ~outfne e.tlb,tlh.s the c.pm~"ent stete of thlse tlb'es Inrl store. I resto~ltfon CODY of the MRT in the e.tepna' Monitor L4bpepy. It al.0, fro~ 4~1 own ."t~~n.' ~.f.rence sheet, enteps the EMT code u.ed to cell each ~on4top ~odule 4nto the Lfbp.ry 4nd •• on t~e .ystem-deviee (see Chaotep t)~ This enlbl •• LINK-It later to 4dentify to the ore.r.m lo.der tho.1 modules fer wh4eh e user hes soecffi.d oroopam pun-time r •• 4dence (see Section ~.l). It should bl noted thlt t~e who'e Lfbrepy •• .~ DOS2.~NO PAGE .1.- 9 .ea~chedl e Mo~.tor .hould thepe he ~ope the~ o~e ver.'o" of module op dr~,v.r, the 'est o~e lee~ w~" he cataloQu.d .~ the aDDPoDrf.te table. Thus 4t il DOllib'. to ~.ke temDopery che~ge. to the L1bpery ~epely by edd'"; a n.w ver.'o" at the e"d dup1nQ .y.tem loe rl f"a. C.ee Sect10" 9.2.2) e. c,ock-i"it1.'f~.t'o" - i f . eloek-lePvfce routine 4. co"t.in.d w4thi" t~e relfd.~t ~o~ftor ."d e '~".-clock 41 det.rm1"ed to be '~clurled ~n.th. CO"- ffauretfo" tbec.UI. ~re'led), th~ cloek" 4t f" motion. ~o erPor oceur. 4f 4t •• ed4"t.r,uot ••• ".h'ed to •• t D~ eo~o'.tfo~ of th •• e tl.kl, the i"1t4.,4z1"a rout."e 11"kl the ,~.1d."t KeYbOIPd L•• t."er d.scribed 4" S~c~f~" e.3.1 to the c~".o'. '"terruot vectop., DP4"t. out. Mo"'tor 'd.~tif fCI~.o". ,"e'.lge I"d ~x.t. to .w.4t oDerltor .".truct'onl (u,'~a .XIT - .e. Seetie" 5.S) CR~ON2) 1""- 4t WI. Ihow" 1" ch.oter 1 thet .,, ce',. for ~o"ftor te"c. ~" bV WlY of ." E~Ti".truct'~n wfth 4ts Ju"'or bv~e ceded ,t9 4"dfcltl t~e D~rt4cu'lr servfce reau,,.ed. It f. the or4m.,.v fu"ct'o" of the EMT ~."dlep to d.code the c." I"d meke the "ec •••• ry co""ectfo" to the rout."e crov4df"G the •• rv4ce. The ~."d'.~ .,~o .".ur •• th.t tlO reau •• t. f" p.rt'cu'.r do ~ot DPec.ed,u"til.t •• curre"t,y s.f. for them t~ do ,0 ."d CO"t.~". 1t. ew" rout~"A to effect .ny cO"I.aue"tlv ".c •••• ,.y w.ft. ~e.cr'ot.on 2.2.1 of the H.ndler A" outl.ne of the HI"dle,.', oroc.sle • • • a4ven in f4Qu,.e 2-6. ~h1 • • how. thlt the ffrlt .t.o f • • Move of ,..ai.t.,.. e-s O"tp the oroce •• or Iteck to orelerve them for the u.er oroa.-em. Thi. I.rve. two OUPOOI.I, t. A" the serv4ce rout."e. c.n thereafter Ulp. the reai.terl ~,.ee'y. However ft fl the" thetr "e.oon.fbt]ity to ree'.ce the op1Q4nll co"t.nts before Iny exit to the uler DPOa,..,". 2. It wi" b• • hown 1" ~ectfon 2.4.t thAt the .ubpouti"e entered to effect the I.ve .1.0 c~eek~ the .tlte of the Droce.lor It.ck to opotect the Monitor .tl.'f. Thu. thi. ch.ck •• 1,"oo,.~ •• freauentlY .1 the Mo"itop f. cI"ed. PAGE ..2:-1 til The ve~i1ie. that the ~MT code use~ '4~1 w4th4" .,teblilhed r."oe (0.77), A" ~nva'irl code .hould "eve~ occu~ if the cal1i"o ~~oo~am t. workinG co~pect'y. If tt doe.," ~t ~. therefore t~,at.d a. a fate' a~r~r~ t~e oroor.~ 1• • tocoed and ." .ocrocrtat. ep~or m•••• oe t. out cut et the con.o', (F002). ~he He"rlle~.the" r.-r. Th. Hen~le~'. ne.t act ton deD'nd. ~oon the "atu~e of the Qu.,t 4n e.eh c.... Und.r DOS, i" fact, the EMT cod •• • a •• 40".d on the fol10wino b •••• i 1. Code, f~om 0 th~ouah 27 lia"ffv "I"vtc •• 2. A" eth.~ r.au •• t. h.ve code. 4n ~eQu •• t. for 1/0 t~e ~anae 3~-77 No further checki"9 fs "ead.d for reauests f" the .eco"d eat.oo,.y. Th. H."dl.r th.refore extract. t~e e"t~v, eo~pe. Dond1~a to the cod. w4tht~ the ~RT .de.cribed i" Se~tion 2.2.2 • . It wa. s~own the,.. that f~ bit 0 of the entry is e,~ t~ • • "trY f~.e1f i. the co~e .tart addre •• of a" a'readv "e.fdent royt4ne. In tht. ea.e~ the H.nd'.r u.e. the ."trv to dt.D.teh t~m.dtat.,Y to the ~out4ne. 0" the oth.r hand, a 1 tn bft ~ of the e"trY mea". that the rout4n. ~u.t be brouaht 4nto m.mo~v b.for. ft can be u.ed. Th. Handl.r the~efore e.'" the aW,D A... a M."ao.r to ~ffect this C.~e ',ction 2,3) .nd c ••••• on the M~T entrv on the tOD of the oroce.sor .t.ek te fdenttfy the routfne reQuired. A. not.~ ear'.'~' 1/0 reQu.st, a~e not al'ow.~ to eont4~u' wh1', 4t i. un •• fe. Tn thetr ea.e, the Han~l.r ch.ek. for two ib1e .ituat10n. al fol'ow •• " ce •• t. The ~~oq,..mm,~i. Handbook shows thet i" s1' rIo 00"ation., the U.er orocra", mU.t sUDelv • L1"k-b1ock for 'ec" date.et to b. us.d e"d must ca.s ft. addr ••• as on, of the oare",eters at each eal" Once a data •• t h.s bee" c~rr.ct'Y f"itial;zed bv a .INIT ,..aue.t Csee Section 3.2.1,1), , link-word in the b'ock," t... t~e one actuallY add~.,~erl, i. ,e, to a "on-0 value. Usi"o the Qfven carameter a. mea"s of acce," the EMT "'~nd'er ,.a",tn,. th~." word and~ reJect~ al'. can, othe~ than .INtT 4f it co"ta"',,\ 0, Thi. aa,4n t"'c14e. c~ooram failu~' a"d results .n a fata' errol" IIIe •• aae (F000). It w;l' be shown in Seetio" 3.1.~.3 that the value) 'et into t~e '~nk.~ord bv ,INtT 4. the address of e( cont~o' block for the dat •• et witht" t~e Mo"itor 8rea k"ow" ,s the ODB, T~e addre •• e~ word 4" t~e PAGE.2-1 t nOB t, a flac w~~c~ ~, let to ~ ~~ly whe~ t~~re •• "C. oth.r 1/0 oee~.tio" curr.~tly u"derw.y. tf by 'ooktn~ at t~is word, t~e ~MT H.~dle~ see. thAt the d.t.s.t ~ • • lre.dy bu.y, it s.ts u~ a 'O~D .eoue"ce wfth1" it.elf u"tfl a l.ter c~eck ,~ew. ot~erwise. T~4. 100Di"0 doe. "ot ~.oDen, thouoh, .f-t~ • • ctu.' c.l, is .wAITR. In this CAse, the D~oees.or stack •.•.• ~Ju.t.d IIUC~ t",.t Afte" rellto"8t401'\ of t~. user opogP.~ R.o4I1ter~ and ~.mov.l of the c." c.,. •••• te,.., .~ exit 1. taken at the ~USy return Ad~re.s ~4ven •• 01'\. of th ••• t.,., (s.e 4"u't,.~t4ol'\ .t Houre 2-~) D.,. ••• If ".4t he,. sttu.t40n ., ."countered (01" aft.r the 'eco~~ ",., di •• Doe.red), t~. EMT Handle,. c,.f., the dat.~et for the ~ew ,.eouest (un'es, it 4• • WAtT or .W4ITR' by storino the Addre •• t~e e." in t~e DOB busy f,a~. It th.n u,., t~. ,.me o~ece,. to d.,o.te h to the releva~t se~v.ce ~outfne as th.t de,eI"4b.d for non-I/O ,..oue,t,. 4t t"'.' e04"t, of course,. the purDose of .WAIT 01". w~ITR ~8' alre.dy hee" s.ti,fi.d. He"ce"o further Dl"oee.,1"0 f. needed and tke EMT Hanri'er usel A si~tl.r seauenee to t~at f"diceted for .WAtTR 4" t~e b~.~ stata to take a" f~~ed1ate cc.olet40" ~etu~" to t~e uler oroo"a •• of 2.2.2 Ge"eral Co~~ent' Fl"o~ t~e ~e.cr4Dt10n c4ve" 4" the Drevious Seet;O", .t ea" be ,',e~ thAt the EMT HAnd'el" does "ot atte~Dt to verifY the validity of the Darameters Das,ed by the orogra~ at eAch cal'. I" particular,.ft assumes that the '4"k-block ~iven with 1/0 reoue,ts does i" fact co"tai~ a true ~O~ add~ess. Thu, it decend' Qre.tlv UDon the u'e" resoect1"Q the f"teortty o1dat, set 1"to Dro~ra~ erea by the Mon4tor. 4 c~eck i" t~(s ca.e could be .imDly 8cco~Dlished fro. data 1" the ODe i • held by the Mon1tor. However t~fs would 1"volve a If"ea~ $earch which could b!cO~e 'engthy. S4"ce 1n the g'e.u~e~ ,y.te.' eurre~t'y offered by OO~, t~e u,.~ c." only CO~~UDt ~i.'e'f, the check ~.I therefore been omitted by 4nte"ti~n~ _l~ ~he ~.~e~.' e.,e, of courle, the E~T ~and'er h., 4n.uff.cient i"fo~mat10" to carry out the ,.8oui.fte c~eck!._ It 11 thus t~e reI90"lib1l~ty of t~e CAlled serv1c~ ~odu'e to take re'ey.~t aetion. "4. S1"-( To Dr~vide each routi"e ~1t~ a. 1~~ediat. a~ aCcess a. DO'11b'e to .the dAta ,t neerl,! t~e FMT Ha~d'er always DAssel the fol'owi"o aDoroDri.te Rea1ster contents. DOS2,QNO PAGE .:.1..-t2 Rt R2 R!5 • • • .teek eddr-e •• o~ the ll.t ea" cal"a"'et." cushed by the or-OOl"e'" Ule,. ad~,.e'8 of the r-e,event F.:MT eln i" the ""'OQ"I'" add"e •• of P"OC".or- StltUI ".et.ter (or- -2) -....J In Idditio", for- 1/0 ell11 othel" tha" ,INIT. AS r-.",e.n. It? the a~dl"'I' of the DOR, for ell othe" cal'., it is clee ... erl, ~ Th. p ... t~,..tv lev.l et w~tch.t~e HI"dl.,. o~e"ete! "'e"it. exI" oe"e"e', 4t uses the l.v.l of the cll'ino p"oar~"'~ ~oweve" ff th4s should be 4 01" above, he"dw8"e i"t.",.ucta need.d De"hl~s to tel""'fnete I" enfol"ced ,WAtT e. de,c".b~d .a,.lfe,. could be locked out. 0" the othe" he"d, It ',vel., confltct. "'toht a,. •• e if the use~ i"te ... ve"ed et the c~n.o'" Thu. the oe"e"'el leve' 1. leept et 4 4f the p"oa,.a~ ~. h4gh.,., pn e"t,.v neve,.the'e •• , o~1o";tv level 7 •• ..t_ t" ordel" to .,",ure thet the check1"g of the .tecle-Itlte cen be .ffected without t"te""uotfon, but is dr-ocoed_ls '00" e. ~o"'ble the,. •• ft.,. (tekine epc"ox1",atelv 70 u.e,.'. lev.' 7 4. Ig14" uled w"4le the Hendle" cheek. the bu.v stete of I dete.et. The ch.ek cou'd be co""uoted, 4f In ."t.,."uct we". eble to cle1'" e dete.et fo,. anothe" 00e,.ette" Ifte,. eo"d4tion. w.,.. e1,.eedv let to ind4cet. tt. befno eve411ble fo,. th.,1nter,.uoted r-eouest~ (i" t~. o"e.,nt 1')08 of cou,.se, Uti, cln"~t hepcen; ,hOW,Vft" _it wes 0"0vided aaainst I oos.4bl. futu"e exoe".40" fo,. r.el·tt~e use. ) ~le"et4c", 2.3 . SweD A,.ee Mlnaae",.nt (R""ON2) Two bufi." Irees .,.. ,. ••• ,.y.d with." the "e.t~e"t Monitor to Icee~~o~at. Mo"ito" "'Odul,s which a". b,.oyg~t 4~to CO". o"'v uoon orog"I'" de"'e"d. It ts the re.oon.tbilttv of e neees'1"4l~ I"e'.d."~ Sweo '''.1 MI"eae,. (SAM), to CO"tl"O' the usIa. of th •• e buffel"s. wh.n e.ked bv the EMT ~lndl.I" to loed I non-,.elid.nt module. SAM checks the oecuo .. "cv of the eoPl"oDI"4Ite buffe,., if the called r-outt" • • • Il,..ldv load.d fl"o", _e o"ev1ou. I"eaue.t end o"ovided that it 4s 4dle 0'" if not, that it i. " •• nt"e"t, SA~ Da •• e. co"trol to it i~~edt It.,v~ Othe,.w4 •• , ~AM loa~. the Called I"outt"e f"o'" the ,vlte"'-rlevice ff Ind when the cur"ent oceupent hi' co"'oleted tts fu"ctien. U"t4l t~. rout."e •• the" Ible to take ~ve" SAM Icee~., co"trol WU~." the ~on4to" bv "~tlJ""i"Q to th. EMT He"dlftr to loop a"d ~I.t, ~ ~~ 2.3.1 ~WA~ Buffe~s T~e fO~Mlt of • SWIO ~uffe~ ~e. bee~ de.4c"ed to e"eb'e ~ea. 10"lblv Iff1c1e"t ~Ic~i"e uti'4zetio" wit~i~ t~e eo~st~8."t8 of a 5i"g'e·use~ system. T~e mai" co"s1de~lt4o"s I~e ~e. flectAd i~ t~e itlms ~neluded ~"a ~~elm~le to t~e SWle Buffe~ II ."ult~ated i" f1eu~e 2-,i 1• neeuolnt - t~is be.felllv allOWI S4M to ~e-u.e a eo~y of a ~I"~d Men4to~ ~out.~e I'~eldy 101de~ in- to the SWle Buffe~ to Iitilfv a p~ev1~uI ~eQues~, ~.th~r t~l~ fo~ce an u"-nece.'I~y wlft fo~ a new eo· ev to be brought f~o~ the IVltem-deviee. I" o~~e~ t~.t t~e current oecuoa"t mav always be. i~ent4fied SAM Slyel the uniaue IVltem-deviee i"fo~mat10n cI.sed o~ bv t~e EMT Hendler f~om the ~RT Csee Sections 2.t.2 and 2.~.t). Count - th1. protect. t~e eu~re"t oeCUOI"t from o~e~~t~re ·re~oval" before 1t ~e. fullv met it. outstl"d1no comm1t~ent.. Mlny Of the ~on1tor modulel, eleee41lly thOle ~~oY4df"e rio lerv.eel, Ire likely to be unlble to co~cl.t. I ~eauelt immediatelv beelule t~,y must wa4t, UDO" t~e ee~fo~mlnce of .Ome 1/0 operltio". A"v rout4"e mav 4" t~41 ee'e retu~" to t~e user orogram to Illow ot~er D~O ~el.i~c to oroceed i~ltead of keee1~g the svstem idle. However t~e proQram mlV the" mike I "ew lervice reoue.t reQui~1"g·uII of the SWaP Buffe, fo~ some other ~out4"e. It mlY eve" be I reaue.t upon the .ame rout4ne w~4eh 1~ many ca.es ca" be eccected beior. the i4~lt hIS bel". com~leted. Thus SA~ e.oects to use the ff~.t byte of elch rout4"e 4t lOlds as I eounte~ for the number of times control i. passed 4"to t~e routi"e a"d the ~out1"e itself COU"-tl ~Ick th~ ~umbe, of ti~e! it c~meletes a tl •• Clee Seetio" 2.2.3'. The bUffer is t~en deemed f~ee O"'V if the counter ~IS ,etur"ed to it. e~t'v .ettinCl of 0. ~Iaoe ~e-entra~cv switch - this ."OWI each routi"e to 4"form SAM .of ftl re-e"t'a~cv caea~i11tv. Some Mo"-1tcr routines Cln"-ot acceot a seeo~d re~uest wh4le a"ot~er i. 1" arOCASS, I prfnc4PAl rea50" be· 4"0 that the service theY Drovide i. too comolex to be co~oletAd wit~f" the clolc4tv of the SWIO Buffe~] a"e t~ey mUlt t~e~efo~e overlav them~e'vel to eooe.~ ~.~ t~.~efo~e o"lv ~eeal1s I bUIV routine 4f it t • • Ife to do 10 II.i"d4clted by I 0 i" the s~eo"d ~vte of t"e routine. DDS2.lfNn PAGE .2-14 !t.~t add~.ss 4. tf"e ente~s - because t~~ fi~st wo~d of ~ae~ ~outhus .lloeate~ as a eo"t~o' a~ea, SA~ t~e routi"e at this ~Of"t(l). fs Two Swac ~uffers .~e in fact included tor '''ea, 4" the ~e~ide"t ~o"i 1. ~onito,. Swao Buffe~ tM~B' • 25eIOw~ri"fs t~is oe"ere1lv u.ld bv D,o~~.~.s.rvie~ ~odu'e8. 2. Klybe.,.d Sw.e Auffe, (~S~) • 12~Dwor~s • t~is 4s ~.4nlv ~.se,.ved for co"s01.-se,viei"Q, i" ord~~ to ,'low over,.e~ed p"oee.s.n~ hetwee" 8 ~u"".no 0"0o~.~ a"d ext.r".l ooerato~ actio" (~ee ch8ote~ 6). It is al~o u~ed for e~e"~e"cv oDer,tio"" sue~ •• • '''0'' di.o"ostic o,.i"ti"o (se~ chAPter 7), esoeefa11v when the "Iouest for thes. ~ioht .as4lv 0,.1o4n.tl w1t~." the ~S~ and Obvious co"fl1ets would Ulen oceU,. • .t, is • s noteri 4n Section 2.2.1, SA~ 4s "o'~a"v ente~e~ fro~ the EMT H.~d',~. .~ this oofnt, ce,taf" Re~istersare set to va1ue, indie.ted i" Sect40".2.2.2, the.e ~ust b~ e •• sed unehe"oed to the c,'1ed routine 8. t~i' ~ev ~eoe"d Ueo" thei~ content (Just .s if t~e routi"e were cal1ei"f directly f~om the EMT. H'ndle,., i" other wo,d.). r"'e YSl!tr P"0~'8m Reqisters ,re on the st.ck with .v.te~-dev4ee 4nfo,.~at40" 0" t~e rout4"e te be fetc"'ed bv ~.~, a~ shown 4n t~e ~~T, above the",. . , There fs A .econd way in which ~,~ e." be e"tered •• t can be c."eri bv its ow" ,.eserve~ EMT codes C3~ a"d ~0). Th4s soee." ."trv 4s ~rov1rled ~a."'v for inter"a' ~o"itor ~ •• q~ as e. "'I'"S _whe~ebv a se~me"ted routf"~ ea" ove~'av 4tse'f 4" eit~e~ buffe~ • he"ee the two codes, foro re.s~ns to be shown .hO,.t'v~ In th~S e.s. however, the MRT ca""~t sucolv the dat, t"'e loeatfo" 8nd s4ze of the over'av on the system device •• Henee the eal'i"Q ~outf"e ~u.t do '0 in t~. sa~e form.t 4" Re. When SAM 4s then called, t~e data.s 0" too e" .- .... _- ... -.-. . . 1. W~e~,.s 1"~ie.ted 1" Seetio" 2.1.2, t~e ~rog"em Loade~ .ets t~e MRT fo~ ~outi"e. made "e •• de~t fe~ 8 ~~oa~a~ ~U", 4~ .1so use- this add~ess ~at~er t~an t~e ectue1 start 10eatio" t.~. Seet1o" 5.1.) ~ PAGE.2-t5 of the .t.ck a. savftd by the sta"~a~d Reg4.t.~ ••• y. ~~ece •• of the FMT H.~dl.~ C.e. S.ct40~ 2.2.1). It 4s ~upl.cat@d 0" the stack It the sDecil' e"t~y 8"d thus ce"~itio~s beeo~e .et e.actly I. fo~ the "e'~ll ."t~v de.criberi .~ t~e D~ev. out ~'~"QP'.~h. figup'~ It.O" •• ,.a c4ves I Qe"e~ll cut'."e of SAM'. ~~oees.4"Q n~e~. The fipst ~a4~ .teD tlk~" tl to cheek whethe~ the ~out4". reQu.sted rioe. 4" flct e.t.t. As 'how~ ." Sftctfo" 2.1.2, the ~~T ."t~v ce"t.i"s I 1 4" .uch ceSes. If t~fs i. see"t SAM U,8, thl E~T Ha~d'.~ .~p'o~ Seaue"ce t~ ereduce I" '~0~ dfla"olt4e a • • ho"'" f" Sect.o~ - '.2.1. . SAM mu.t the" dete"~4r'1e. whieh. SWID Ruffe~ is to be used. Rout4"e' wh4~h .rl 10lded ,"to the .ub.fdfary ~SB have 4r'1 flet be@r"I •••• g".d EMT codes f" the rl"Oe 30.~71 ." ethep' cod.. 4me,y Mse UI'. ~A~ set. I pef"ter to the aporoDP'4ete buf~e~ a"~ ,'so 0". to a" fr'lter"ll OO~. by which the syste~ dev.ce wil' be co"trol'ed (see Sect.o" 3.t.2 •• ). The flag 4" this DDB il cheeked f" el.e the d~iye~ is eurp'er'lt'v .". gaged 4" 101d4"a a p'out."e. SA~ co"tfnues O"'V .f this .s not tfole ce.e. A. de~cP'4bed i" the pP'evtou. ~ectio", ~AM t~e~eaftep' uses tfole 4de"tif1clt10" for the oecuol"t .to~ed 4" 1p'0"t of the buffe~ to cfole~k wh.ther the ~outf"e "OW p'eQuf~erl i. 81~eadv 10lded I"d if 10 whether it ••• dl. or re·~"t~."t, o~ the bl.4. of the •• tt4"Q of the ffp'lt two bvtel of the ~out4~e ftlelf. If the COP'P'ect co"dit'e". Ire •• e", ~AM t~."sfe~s co"tP'~' 1"to thft ~out."e, hevino ."cP'e~e"ted ~t~ U.a~e COUr'lt bvtft te 4"d 4cete a fp'e.h e"tp'v. If the eeeu~e"t of the buffe~ 1s so~e other ~outi"e. SA~ ex.m1"e, its U•• ge Cou"t. If.t i. 0 sfg"ifv1"c that ~he ~9U t1"e .~."O 10"gep' "eeded, SAM .to~es the .y.te~-de~4ee ."fopm.ti9" fo~ t~e cll'ed pout."e IS oceu~e"t.trler'lt.fie~ ."d the" decodes it to •• t UD the f"te~".1 DOB ePDr~p~f~telv (.ee 8~et~~" 3.1.2.3)~ The .v.te~·dey1ee d~ive~ 4s c~l'e~ to ~eP'f~r~ the "eeesserv tra"sfer th~ouoh the ~rive~ Queue ~."age~. S.CD~ Csee Sect ton 3.1.2.4). ~h4'e t~e t~.".fe~ i. ir'l ~p'ogp'ess o~ 41 the p~evious ehecks .how th8t t~e .vste~-~ev1ce d~ivep' •• 11ree~v er'lQao~d i" 10.d1"Q • Sw.~ Buffer or that t~. recu1~erl Pu1f~r is "ot vet free for a1ter".tfve use. s.~ r.tu~"' to the E~T H."d1~r to 'oop w.4t. Th1, 4" fact ~e~e.ts the w~o1e ereces~ ef decodi"e the e.ll with the exeeotio" Of use~ ~e04ste~ s8v1"o ,,,rl DOS2.~Nr.l I. ReQ.'te~1 e~. e"t~y ~"t~ ,elet to t~. ~eaui~e~ eo~te~t fo~ t~. cIl'ed ,out~" •• _ T~u' SAM does "ot "eed to 'IV, t~eir co"te"t i" o~de~ to the~ ~~il erePI~4"o the t~a"lfer~ c. ule SAM 41 ~ee"teped II op4ai"a"v .ve" i" t~e ,cee.I' elle ~oted 1" the Drevioul Seet40". By the lubl~Qu."t'y "or~e' crOceduP8, t~e~lfe~ of eo"t~ol to t~. rout."e oecurl ".tu~."y II 100" al 4t ~II bee" ,o.ded. .. . Jf m.v 10~et.m'l hIPc." th.t e, A ~e,u't of ." 4"tepruct SA~ 41 Ilk.d to lOld e d4ff.re"t pout.". 4"te the le~. buf;.~, eve" ~.for. t~e or4af"e' reQuelt i • • ati.f4ed, e.a. The DECtaoe d~1v.r ~ight wilh to pri~t e" .r,o~ ~e •• aQe bee.u •• of he,dwlr. fli1u~e Ju.t whe" t~e oc.rltor h••• t~uek I eo",01e kev e"d the Keyboerd lilte"er 41 b.f"o 'eaded, T~e Oe"ere1 eroeedu~e de.er4bed w4" i" this e.,. ho"or t~e .eco"d reau •• t fir.t. Howev.~ co~d.t1o". remaf" sueh t~et the •• ~v.e."Q of the .~t~r,u~ted ea" ee" b. re.umed efterw.~d'. Neverthele," t~fl m.thod cpeetel • ppob'em for 1/0 ce"" Bv the t1m~ t~lt SAM •• f.~.t ."tered, the ~MT He"dler ~e. e'reedv mede the detl.et bUlv U~O" the "ew ee~', If SA~ ~er.'Y ~etur~., .the E~T MI"dle~wi" I.e co"d1t10", Icoro~ri.t. to e" 1mc'1ed .WAIT •• de.er1bed 1" Seetio" '.2.1 a"d SAM w4" "ot reg.1" the ".c •••• ry co"trol. H'"Ce, together w4th the Ilight ~etter of c'.lr1"o the detl els,ed bV the Ha"dler f~om t~. It.ck, SAM remove' the bUIV-ltete fro~ the dltl.et.(u.4"G the co~t."t of R0 to ~eeog"4ze tin ca"1 .ee Sect 40" 2.2.2) It CI" ~ • • ee" f~om the P~'V.OUI ~ectfo" th,t SAM does "ot esk to be ~ecelled by the sVltem-device d~1ver whe" the '0.d1"O of the reQu.~ed rout1"e ~I' bee" ,c~oM~'f'hed. SAM me~.'v ~eQuelts the 'Old a"d the" dec4des wke" it ea" trl"lfe~ co"trol to the routi"e o~ the b.si~ that the d~1ve~ 1s 'o"oer ~o~ki"e 0" the 'Vltem'S b.~.'f e"d the I~pro pr1lt~ SWIO Buff., 1. "OW oeeuc4ed by t~e rout1"e 4" I" idle .tlte. "0 DOS2. ~~H'I PAGE..t- t' In.teed of the reeal', !A~ in fact, t~rouch a Co~c'et.o~ ~e. 4dd,ess set fnto t~e f~te,~a' noe ~.~eet, the dr4ve~ to a .ceefa' .eQuenee. Thf. ff,ltly f~ee. t~e d~fver for te~~ltive u., t~rouah the Dr~ver "eaueue qout~ne, S.C~Q to be deae~1bed in Seetion 3.1.2~'. It then eheck. thlt the transfer ~as been a.t4aflctor.'y carried out .~~ if not .etl u~ the u'timate fata' error. a Syate~ Halt because it ~u.t now be A.sume~ th,t t~e deviee ee~ "0 'e~aer lu~~ort t~e .vatem. If al, 1a 1" orde~, the O~B husy-f'ao f. ele.red to .~form !AM th.t the t~ansfa~ 4. ne 10"Qer u~der way. F~nally, .~nee the .eauenee 41 e~.euted e. ~ert of a" fnterruet from the Iy.t.~-dev.c. e.ee Seet.e~ 3.3), ~eg1. terl seved by t~e d~ive~ .re re.tored a"d a~ exit to the inter~ucted routine 11 taken (bv ~Tr). tu,~ .1. The 'ast cart of thf. seauence, ReQi.ter-~e.tnre & exit, obviou.'y com~'e~ent. the tr.~ & ~eQ1.ter ••• ve '.Que~ee which beQ4n_ the F~T .ervice a. deacr4bed f" Sect40" 2.2. Thus 4t •• t~e ~ath whieh a" Mon4tor rout."e' must take to ,etu,n t9 th .. r;1" 4no ~,oo!"am •. Furt~er~ore, ft w•• shew" .• ~ Seetfo~ 2.3.1 that ff one of t~ese routine. il fn a Swa~ Buffer, it mUlt also decrement the U.aoe Coun~ ~n ftl firlt byte wheneve~ 1t eom~'ete. a ta.k, 4~ or~er to free the buffer ioe other use. It_ca~"ot ~o t~.s w~.'e jt j. a,." 1n the buffer, in ca •• ~h.'.i. r.-.l1~cated before it exft •• The d.erement 1. th.refo,e included .~ the ... au.nce d41eu ••• ~_'bev. (bv-cesled i~ 3A~tl ee.e) end th~a.fs identiffed •• the Sv.t.~ E~ft with In a~~roeriete adrire •• let 4nto fixed vector location 42 the mea~1 of aener.' acce ••• tt) For the aenera' ca'.' th4s fs. .1 S.XITi OECB MSB. ,ENTRV FOP u/e nfCRfMENT JSR R5,'.RRFS ,GfNERAL ENTRV RTI 2.3~~_ The Swepr>able I'outine. T~e Drevious s.et40~s have 8~ew~ t~et a~V routi~. w~.e~ 48 • Dote"tfa' user of a S~eD Buffer mu.t be .et uc with1n ao~e .---------.-.-. t. T~. whe' • • eQue~e@ ine'udina t~~ device t~.~sfe~ vI'tdfty eheek must not be eh8~Qed • ~1ffere~t ~out1~es e~t~r ft at v.~f~u~ ~O."tl o~ the besis of e ff.ed re1.tive to cositio" to t~e add~ess store~ in the v.ctor 10eatio". \ · . . eo,,.t ... f"t. beeau.e of t~i •• S.i"ee a" tl'le ~0"1to" .. ou· tf"~.~ otl'le .. t~a" tho.e w"ie~ "o .. ~."v .. e.1dep ... ~.~e"t'v f" memo .. v a"d t~e d.viee-d .. iv .... , eo~. u"de .. thi~ ~.ad4"o, they a" hive eo~~~" 1"he .. e"t ~.atu .. e • • s a .. esu't~ T~4s seetfc" lum~a .. i •• s t~e.e fe.tu .. e.. It. DurCO'e ft. twOfoldi a. It D.. ov4d •• ,,"t'v a" f"elu~ed i"t .. oduet40" to th. ~odule. D.. ewfthtn the MO"4t~ ... It 'avs eut the a .. ou"d.ru'~, wl'lfeh ~u.t be fo''owed du .. f"~ the develoo~~"t of "e~ ~odu'e. el •• al.o S.etfo" ~.3) (1) B.cau •• SA~ exp,et. t~e f4 ... t wo .. ~ of th' Sw.n .uffe .. to be U.aDI COU"t & R.·."t .. a"cy Sw4tc"'." a. d4Ieu •• ,d i" Seetio" 2.3.1, a" .. out4",. beg4" with a wc .. d fn a fc .. met ~,~ c .. -,,0. Th. Ju"10" 0 byte t~e" ec .... ectlv ~"~t~a14ze. t"'e COU"t. ,he ~4oh.byte .ettf"o ~"dicate. the "outi"e'. ab4'ity to .... vic ••• ve ... ' .. e~ue.t. tcoethe". t • " - It .hou'd be "oted of cou ... e th.t the D.. otect1o" affo .. ded bv the -1 .ettf"o of the Re-e"t ... "cy Sw4teh do.~ "ot ~ea" that tha .. outi"e ca" the" br •• k the "u'e. whfch the te .. m 'r.-e"t"ant" "o .. ~al'v f~D'1e.~ The ,w4tc~ O"'V D.. ev."ts ~AM f .. om "'owi"a • • eco"d re~u •• t to Da •• befo ... a f .... t has b.e" eomclet.'v •• tt.ited~ Mer~ovel" the ~aet t~.t • "outf"e f. cot."tfI1,y .w.PD.bl • • 1'0 .to~4ffe. pot."t1.' l"elide"cY 1" whfeh e ••• th .... i. "o.SAM to t"t'''ve"e. ~e"c ••• fa .... po •• fb1e ~elt .. out1"es t .. v to ob.e .. v. f" c ... t1eul ... the "e.d t~ .v~ld ."~ ~o .. ~ of .elf.~od~f~eat~o", .1t~e .. ~" .~.euteble e~d • . 0" t.mco"."v d.t. .to .. aoe. That. t"'.y .... al.o po.tio"-1"d.p."de"t ... al,v 00 •• without •• y4"o, a.c.ui. the f4r.t w~ .. d of .aeh .. outi". i. t'"'u, ... se .. ved, a" ••• euta~', '.gu."e •• ~.~i" !t.t~ ••• eo"d wo .. d. _A . . . . . sult, the alo~a' ... f .... "e. 1de"tffv4"Q •• ch routf". fo .. Dos.tble ,4"kae. ~"to the .. e.4de"t ~o"i~o .. (s •• q.et~on 2.1.2) ts m.de et.tht. oof"t i" the ' ••• mh'e .. Sou .. ce fo .. the "outf". rath." tha" .t the sta .. t. a.".r.', .• " . outf"e. e"d with (The ...... I" via 'oeatio" seetio" 4~3). ..... ~.--.-.... ~2. a e." ~o t~e.SY.t.~ ~ e.ee~t10"'1 EJCft .e. 4" Darticu'." Thu. th.y ~.et the .. eau1 ... ~e"t. fo.. ...sto .... . 1. Ce"80' ..... v4ee modul,s, fO" oth ... ~ ••• ~"S, must be co,,.fde .. ed s~ecie' e.s.. 4" t~et so~e ~f the eo~~e"t. do "ot eDP'v~ T~e~.~o .. e t~. reeder ..... fer ... d to eh.~ter 6 fo" furt~~ .. deta.'. ~ DOS2.qNO t.o~ ef uSe~ ~eoi.te~ co~te"tl .~d ~.lee.e of the Sw.o Buffep '1, d1'cuI.ed f" the D~ev4oull Seet1ol'l., Pote"t1., .. elideMey, heweve~, .0.4" ~Ai.e • • e .. oble~1 I ~outi"e ~u.t ebvio~.'y, "ot dee .. e~@"t th, U.loe eeu"t t" the SWID Puffe .. 1f tt i. ~et .etUll1v eccucvi"o the buffe~~ HeMee eleh .. eut."e mu.t ~ete .. ~i~e whet he .. iM flct th1 • • teo ~ust b~ tlke~. The f.et thlt the COUl'lt 11 O"'Y i~c .. e~e"ted t" the ft~.t el.ce whe" S4M 9ive, co"trol to the,routi"_ offe .. i the solutio". If the .. outi"e 1. "'lideMt I"d 1. lecel8ed d.~eetlv f"o~ the EMT hll'ld1 . . . . . '''OW". fl'l S.et .• o~ ~.2.t, t"'e f~c"e,".~t do •• "ot o~cu'" T~u • • eOl!!~O" fo .. ~ of exft •• it 8~e,.r. w4thi" ,.ch rout41'1e 1. 111u.t ... ted.b@10w, 1,.uTfI'lO thlt le~.t1~1'1 42 eo"tI4"s th@ .dd ..... S.XIT i"u.tr.t.d 1" the D... viou • • • ctfo~1 Mr.lV .,42,R5 TSTB START eN! •• 4 CMP (~e)+,fP5)+ JMP 'R5 ,COLLECT .e~ECK SYSTE~ FXIT Ar.lOQESS J, USAGE COUNT SET ,IF SO ROUTI~E I~ I~ MSa ,OTHERWISE O~IT ~ECREMENT ,(SECTION 2.3.4) ,G~ TO SVSTE~ ~XtT The '~mitad .• ~ze of the S~I~ ~uif ... "Itu"llly im~o.e . . . e •• t"ietio". 0" elch .. out1~.. I" ~o.t c ••••• th1. do.~ ~ot m.tt, .. , 14"ce the .... vtce .. eauf"ed CI~ be .imely .ccom. Dl •• hed w4thf" the IVI.'lble ceolcitv, but ~et i~ .,1 how.ve .. ~ Thu. lo~e ~out1~ •• ~ust ove",.v th'I!!I.lvel to oet the job do~e. If sueh, e~e~1,v4"o CI~ b., do"~ se!,ue"t1."y, i ••• bv eleh leQI!!e"t comclet1"~ I sDecific D~~ttO" of th@ seQuel'lce I"d the" DISli"o to the ~e.t without I "eed fo .... e. cll" the .ceefll SAM e"t,.v de.c~ib.d i~ Seetio" 2.3.2 ~IY be uled Caea ehIDt.,. e). Howev@,. this .. Ii ••• ot~e .. D.. obl@ma of .to~'Q' wfth." the .v.tel!!-d.vtc. lib .. e .. y - .e. e'Dee.I"v the ~ •• e"f~tio" .01 cor.ol ..... vice ~Odu'.a" w,",1eh.uae t.,i. t.chMiau., 1" ChIDt.,. e. A" 11te""ltiv. ,"ethod, which 11.0 cov.... th •. "o"-aeaue"t181 el.e, (but "@v ... th@l ••• u.e. UD EMT cod@., 11 diacu'led u~d ... F41 ••• t"uctu .. e. 1" Ch'Dt ... 4, ... ~ DOS2.AN(') (A"40NJ) Thi. ~.et.o", il"lt,.eduee. a •• t._of sub·"eutf",e., p!"ovid4"!:1 Ie,.· vice. ef a ae",e,., I"Iltu,e foro ~."'v othe,. Me1"l4tO,. ~odu'el, ~l"Ic~ud~~a t~o.e i'" the ~e~M.l"lel"lt'v ".'~de"'t ~o~t~o",. '~ev a"o I'" "e.tda"'tl they a,e Mod.,at.ly ."o~t .",d th. f,..· au.I"ICY at wh4Ch th.v .,.e l'I.eded ~.ke. ~t fmD,.ct4e.' to 'oed th.~ f"c~ t~ •• v.t.~-d.vtc • • v.,.y ~iM.. •• l"Ietea t" S.ctio", 2.1. !hev .,. • • cc ••• tb', by mea"'. of the .V.te~ veeto,.. i"'? 10.at40",. ".57. ) The,.. I'" a'toaethe,. .t •• ub-,.out4I"1e •• I'I the eet. Howeve,., th.v ",.tu,.."v il'lto ~h,..e ~.l,.. ef~ce, tl'l ea~~ oi the three c, ••• , what 0"' • • ub-,outt",. doa., the othe,. uI'I~oe •• Thu •• "'~ eell_to tha ft,..t ~u.t be eo~pl.~el'lted by • e." to the .eco"~ b.fo,. • • "V o,.tot"., .t.t. t. ,ea.tl'l.d. The th,..e pa.,. ...... i." 1. S.~SAV/S.ARES R•• t.t., •• v. & , •• tc,.e 2. S.GTB/S.RLB A"oc.te , re, ••• e buffe,.. 3. S.CDB/S.COQ O",y the fi,..t two wt" be d.ee,ib.d 4" th. f01. "wt",o .,ctto",.. Th. thlrd, ~aj,., b'~"'Q d.die.ted to 1/0, w4" h. dt.eue •• d 41"1 ~o" • • op,.oo .. 4.t. cOl"lte.t i" e~ecte" 3. O~ ~he.e, 2.'.1 R.of.ter Saye/Ae.to,. , St.ck COl'lt,.o' 1" the "' •• "' .. the DOS Mo"'Ho" h•• be." pe.4g,.,eti to .• uccly U • • e,vice. to th. u•• ,. whi'e It", "'owt~g h4m to take fu" advI"t.e. oi ha,.dw.,.. cac.bi1itia. o~ PDP~11. Hel"lee~ ,ath.,. thal"l tmpo •• U""".c •••• ,.v ,,. •• t,.tctio,,,,. uCOI"l h4. us.,of ReQ~.~e~ •• th. Mo",ito,. auara"t ••• the.,. e~l"It.l"lt, bv .ev4~a th.~ 0" t"'. c,oe •• ,or .taek wh.",.y.,. .nd foro whatev.,. ,..a.o", cOP'lt,01 P ••••• f,.om au.''''. o,oa,..m .nd ,. •• te,.. th.m b.· fo,.. .ueh eo"t,.o' i. ,etu,.".d •. I~, th, t",te,.im, t"'. MOl"lite .. c.'" th.", froee'v u.e the Reof.t.,.. fe,. tt. OW" pu,.oo •••• ,h. Fo,. the gel"l.r.' c ••• , a1' the ,.'04.t.,. • • ,.e likelv te be l"Ieed.d. T"'u. the co",mel"l .ub,.out1I"1e. S.R~AV 81"1~ S.DRES with el"lt,.y t",,.cuah 1oc.tfoP'l' ~. " 6 a,.e p,.ovfde~. 'he f1,..t •• m~'Y ""!Jlh •• " R5 th"ou~ RS'-the seeoP'ld .0091" t~e~ fl"l "eve ,. Ie. Bet'" a,.. c ., , edt", the I . ",'e "'."". ,. • I I _*44,-(9P) JSR R5,'(SP). ~ov P lGE .2--21 DOS2.RNO '-~ (Dt~ect c.,'t"O tl ef cou~le cel11b'e f~e~ ~it~." the ~e"v ~e~~e"e"t1v re.1de"t Mo"itor medu1 •• , e.Q. Re,S.~SAV o~ JaR Re,S.RRES). "O~ JSR T~e ~roee •• or Iteck 4tlelf the 1. e"other co".i~e~etio". lost" "ot •• ked to refref" frc~ edJulti"~ the stack CSP or RS) to luft hi. "eeds. T~e Mc"ito~ ~.~e'v u •• r ~ci"ter ., ~t. provides "O".to~ 4t.elf ~"~tia' ."d .ett~"g a~~~ocr~ate'v~However, the~ a"v buffer. it ha. eltab,ilhed 0" the u'er'l ~e~a'f are in a ~ul"er.b'e ~0Ift1~~ fer ee~r~~t1e" bv the .taek. H."Ce the Mo"itor mu.t trY te p~ovirle lo~e ~~o t.ct10" __ .tmnar to ~hat affQ.~ded by the PDP-U h... dw .... fo~ the v.ctor .~ace be'ow 'ocat1e" ~00. There epe i" fact th .. ee .4tuatie"1 to be con.fd.redi 1. A.a ~elult of "orm.' Dush o~.~.tio"s or ef adlust~e"t to Sp, the stack drop. ~e'ow • rla"ger '4"e and ••• tt', 2. the~e wh." • check t. mad •• Th • • tac~ fl. pu.h.d b.low the 14"e but f. DODD.d beck aaa1" 10 that .t a"v ch.ck, SP .1 ••• ~f"g1V 4" a ha~m'.'1 Delft40". 'v .dJu.t~e"t, SP i. moved below the lin., whe~e it i. u •• d to Itor. date, .nd •• aoa1" ~etu~"ed out o~ he~m~. way be~or. ~t i. checked. The Me"4ter ee" ~ead1'v co~e with the f1rlt two .ftu~t.o"s. At eU _t4me., it "'.~"ta."1 a Do4"te'- to_ ft. OW" dv"e",4c end, "a"'ely that for 1tl OW" p.r",."e"t'v al11o"ed ",emorv are. e.· te"d.d bv !cdu'e' lead,d fo~ e o~eQ"~~ run e"d by cu~re"t'Y es.4Q"ed buffer .c.ee wtth • safety ",eratn_ Tht. DO· inter •• stored i" the SVT a. TO~ of Buffer. eTOB) • lee Seetio" 2.1~1. A .fme'e comoer410" of th~. aoai".t SP i. a lufftc4ent c~eck for the f1~.t case. At the se"'e time the Mo"4ter .et. a bit Datt.~" 4"to ft. e"d wo~d •• show" bv TOB. Jt 1. highly ~rebab,e thet thf~ o.tte~" wil' be co~· rUDte" i" the .eco"d ,ituatio" end a 'i"'~'. cheek ~e,o'ye. thi •• am." ~ Th. check~"a ~oeret10"1 mUlt of course be c~r~ied out as oj. ten as cosstb'e to ~e effect1ve. Sf~ce ~eofster~.ev4"o t~reuoh ,ub~eut.ne S.RSAV "e~~a"v eccu~. as th@ f4~.t steD whe"eve~ the Mo"4tor ae~n' ~O"t~~~ fo~ ,nY Je"gth.of ti~e, Clee th~ EMT Ha"d'e~ 4" Sect to" 2.2.1 a"d devic@ drivers 4" 8eC~40".3.3), the check is included at this time. If a yio'ation 4. see~, S.R~AV ~ove. SP back to ,"ow ce"ectio" of the E~~o~ Diao"o.t4c P~i"t rout1"e fro~ thp. svst@",·device e"d ~8ouest. the out~ut of a fate' F001 mp.ssaoe Csee Ch8cte~ 7). 4 creb'e~ ea" hacpe" though, if the v401et40" is bv the .Y.t.~.device, escec4a"v whe~ workfnQ e" the Mo"1to~'s behalf. a re.u't, for thi. ce.e, the IVlte",~dey.ce is .,- .1 P.G~..2.-22 .t. 'ow.d. to e~oc •• d to COM~l.tfo" - the v401atio" fs ~.ek.d 1 U~ ~. It .s ohvfouslv Dossthl. that t~. ~o"fto~ fts.lf i. the ofa"d "ot the u•• ~. It ~fQht th.~.fo~ ••• em ".c •••• ~V th.t th, e~.ck b. mad. "ot O"'V 0" ."t~Y ~ut ~'so 0" exft, •••• , t" S,RRES a. ~ow.v.~ f" mO.t ca ••• , the Mo"jto~t. w~01 ••• l. u.aa._o~ ~h. ~tack ~. co"if"ed .fther to •• vf"e .R.of.t.~. o~, ff "ot, f. fO"ow.~ bv .ue~ actto". T~u, a"v viol.tio" f •••• " ,1mo.t ;mmedfat.'v, Th. .ddttfo"a' ov.~h.ad of ch.ckf"c aaaf" .v.~y tf~., ~I~elv to c.tch t~. out.fda chll'lce of thfs "ot alway, b.f"O the c •• e, •• toe exe.s.ive a"d .0 the chaek ~. ~M4tt.d ~r~m S~RRES. f."d.~ w.". U"fo~tu~at.'y, the Mo"fto~ ha. "0 wav ~f ~~~v4d."e fo~ the t h 4 ~d • H~at t 0" • • v.'" t h•.ha"dwa~. D~ot .ct ,f 0" -io •• ",ot ad.· \ cuat.lv e9v~" tht ••. It t. O"'V the u •• ~ who. Ca" th .... fo~. ft. Thu. f" th. P~oo~amm ... t. Hal'ldbook, h. f • • ,ked To a..flt h1m f" k"owf"o wh .... the d."'ae~ If". fl, the ~o"fto~ .,,.oyid,. a "'.a". bv which, ha ~a" a.k,. withf" the Ge"a~al Uttlftt •• ca" fl •• Seetto" e.2'. ~. ts a'io a~v.led to wa. tt U"tt' h. hal comel.ted 1/0 •• t ue atfo"1 Cf... .I~IT , .O~E~) b.fo .. e mak4~a t~. adJult",e"t •• th.~. f. th." lesl chl"c. of ~u""f"a f"to troubl.. Ffau ... 2·9 fs ofve" to fllu.t~at. the .dva"taae of dof"Q th~sJ ~~.v."'t t~ ..... ft ••• e .... ~f.h. adlu.tl SP fo~ I"v.~u .. ~ose. oe ... 1 ...~~~~ 't!.. Co,.. M."ac./II."t .1 f"dic.t.d t" eh.Dte~ 1, the Mo"fto~ ules f~.e eo~e leace above ftl ."d al a" a~.a 4" whfch it setl UO buff.~1 i" suepo,.t I.u.e~ D~oQ,.a~ts ,.eau.lt. fO" ItO •• ,.vfe.s, The a,.. ea f' ouft. dV"'amfe f" th.t e. dem."d f"e,..a ••• so doe, the buff.~ s.,ace D,.ovfded a"d lfkew4.e whe" the de"'a"d aoes away. Thul at ."y time the total area eu,,.."t1y a"oeated .1 dai.~ad f,.em the Ita~t of the ff"t avaf'ahle buffe~ as .to,ed •• end ,of MO".tO,. CEOM) i" t~e SVT to t~. e~d of the , •• t ~uff.~ .~t" f" uae (with a ~6-wO~d .afetv ~a'ain' a.~ .hown by TOe i", the SVT (lee ~,ev1ous s.ctton'. ) of In c.. d.~ 'ate~ to eont,.ol the alloeatfo" of buffa~s a~d thei" ~e~ea •• , t~. Mo"itor m.1~tai"aa b.t.m,~ fo~.the f~ee core area. Thfs i. me .. elv a "u~be .. of wo~d. f" wh4e~ each bit ~e~~.aent. a is-word buffer seace. ~a "oted a~ov., the ~a~ .s .'waYI o~iaf"ed at EQM. thy, tha ffrst 1~ words above thfs .co,.releond to bft 0 of the ffrlt ~ae wo~d. Bft. the,. • • after are "umbered fro~ rfaht to left. The lenGth of the tab'. and henca the araa ft ~ote"tfallY co"tro" f~ establishad at Monitor f"ftfa'4zatfo" C•• e Sactio" 2.1. A ). Prele"t1y ~alf the available m.~orv is set •• t~e ahsolute l1m.t~ a4t. a,.. el.ared to 0 wh4le the buff.~s t~ev ,ec~e· -'-- PAGE2-23 lent I~e f~ee, they a~e ~e.et to 1 w~e~ t~e buffe~s a~e a.110"ed. Th. e"d of t~e w~o'e cu~~e"t buffe~ ~rea de"ot~d by TOB th.refo~e 4. a'so ~a~ked by t~e lalt meo bit set to 1. (I.e '.cu~e 2-10). 2 ••• 2.1 euff.~ "loclt.o~ Tk. buffe~ a"ocatio" 4s effected by a call to su~-~out'"e 8.;T8 w4th acce.. th~ouoh v@cto~ loeatio" e4, T~e total IDace ~ecu4~.d must be ,uDolfed, th4, 4s do~e bv ou.h4~~ t~e of 16-wo~d u"ft' O"to tke D~oee •• or .tlck as oa~t of t~e cal', e.g. "u~b.~ totOV •• ,-eSP) MOV '.~4,·(SP) JSR R!5,'(SP'+ ,64_ 'I/ORD BUFfER • CALL S.GTA VIA ~EnD • VECT~R prOvided t~at t~e "ece •• e~v .Dac. 4. evatlabl., the .ub~ou ti"e . "et",,"", h. ~t~'"t add,.el. 0" the Iteck-toe' ~ il used to Ihow "0"-av.41abilttv, • The ,"~cat40" D~eeel' fu~ctte". ~. fol'ow. Csee also F'gu~e 2-11) I 1. ~eve t~e cal'4"o.,"out4"e ReQ4'te"l & set D04"t.,.s to !OM.& t~e bit ~ec .ta"t C,how" i" SVT as RFS • •• e Section 2,t,I,) 't"d the co.4tio" 4" t~e ~aD of the 'owest Ie-word buffer av.flebl. 0" t~e ba.i. of the ft~lt 0 bit, At .ame time me'"ta'" a Doi"te" at t"'. e"d of the buffer u"it he4no checked, J. Check 4f .ufiic4e"~ CO"t~OUOUI le-~o~d u"tta fellow to meet the loe~ified "umbe~. If "ot, "eoeat steo 2 I"d Ite" J u"t" t~e ~ae-e"d sto~ed t" SVT al ~'f 41 ~e.ehed. If thi. occu,.., exit.with 0 0" tOD of t~e st~ck. Simi'ari1y if at a~v tim@ the e"~ of a~ea bei"o co"s4dere~ move. into the oreces.or Iteck a,.ea, do likew •••• 4. If the tot., recui~ed erea is Ivai'ahl., u~dat@ TO~ and "eset th@ stack-steo oatte~" wor~ rlee o".vious Sectto"' •• "eeess."v. 5. ~e~ aoo,.ocrtate ~.o-bit. to 1 to ahow the ."ocatio", Ito"e t~e .ta~t address of t~e erea 0" the steck, ,.e.to", t~e .eved Register. e"d exit. OOS2.~Nn 2.4.2.2 PAGE.t-24 8uffe~ Rele •• e _ _ . ~_.o _ _ ' -_ _ _ _ _ _ Buf~e~ ~el.a.e is De~~o~med bv a c.ll to .uhr~uti~e S.~Le uses 'oc.tio" e~ a. it. yecto~. '" t~is case, two a~ gu~entl mu.t be Dalsed bot~ t~e 'ta~t a~d~esl of t~e buffe~ .~ea bei"Q ~e';neufl~ed a"d itl size i" t6.w~~~ unitl. T~is aivel a c.l'4"o leeue"ce .1. w~ie~ MOV *ADOR,-eSp) MOV *N,-(SP' MOV '*56,-(!P' ,GIVE 8UFFER f ••• & SIZE ,RELEASE IT. AnD~ES8 ••• JSR Re,'(S"'. p~ovirled t~at the '~Qume"tl .~e m.c b4tl a~e e'e.~ed to e"d of the , •• t buffe, Itf" c'ea,.ed 01'1 e)Ch. D~i.t! The ,.Ale.se il effected " - t• '~Da~e"t'y a va,id, t~e 'DD~O e"d TOB i, 4dJu,ted to the al'oceted. T~e 'tack •• follow. elee "'0 F.ou~e 2-12)1 S.ve t~e ce"4"o ,.~utf"e~1 Reo~lte~.~ Set reletive Do."te~1 to the It.,t ,"d end of . . t~e .~e'. to .. be f,.eed, b •• ed 0" the D.,..meterl lucolfed. Fxit w4t~ the .t.ck ele., 4f t~e ,'e' 1. out.ide t~e ~'nQe of the m,D 0,. 4f "0 141e i. afven. - . Comcute t~e hit eO'itf~" fO~ "It t6-w~~d ul'lit fl'l the .~e' .Deeiffed ."d let ,m'lk .cc~,.di"o'v. ~oa11'1 ex4t .~ the sucD'i~d addre •• doe. "~t c~." eide wfth • cor,.ect 16-wo,.d u"it Ita,t c011'1t. Clear aDc~~crt.te bft. i" the ~aD' at t~e "me time track t~e .t,~t of .ac~ u"4t be1"o ~ele.sed. If the el'ld of thi. buff., ., ,'a~ the el'ld of the wh~le "e. prele"t'v .,leceted, cOl'lti"ue t"ck1"Q u"til eithe~ • 1 bit 0,. the Ita,.t ef t~e ~ac is ,e.ched. Re,et T08 ,"d ftl It'ck •• tOp .cco,.dil'lo1v. It shou'd.be l'Ioted th$t o"ce a buffer i. • ••• Ol'led t~ some DurDose, it remei"' 10 ,sliQl'led, eye", t~ouoh ul'litl befo,e it m.V be ,.e'ealed f.,..t~ Re.huff'il'lo to o~eve"t aaDS 1. "ot cO"lirlered wO,.thwhfle whel'l t~il miaht mea" t~e "ecessitv of m,i"ta1"1I'1Q extensive data 0" t~e ~o'e of e.ch buffer. I"stead S.GT8 .ttemetl to ff" UD a"v gacs ~efo,e c'a4~1I'1Q mo~e f~ee c~~e (,ee ,teD t) ,,,,d S.RLB el'llu~e, t~at "ot only 00S2.~Nn the sC8c~f4ed buffe~ but "I~ I"Y ~~aced~"~ ~ee .a ~etu~"ed te free co~e Ca.a .ten ~). T~e u.e~ Ce~ e',o, k.e~ u'l~e to a ~1"1~u~ by ta.4"o cI~e 1" hi. saoue"ce of ~eQu •• ts fo~ ~out1, •• cey.1"o buff.~ a"ocatio" C.rNIT~I,.npFN'.). Thu. th11 41 adv4.ad 1" the P~oo~a~m8~" Ha"dbeok. 2.5 T4~e Co"trol P~ovi~.d that tha CO"f40u~et4e" 4"c1udel a l4"8-cleck, DOS ma1"t.1"1 the t4~e ef dav CTOO) 1" two wo~d. w.t~i" the SVT (I •• Sact4e" 2,1,1) a.1 TnOI w~.~. Tno .WOPO the h1ah.o~de, 1S bit. h1t. of t1~e 4" eloek tickS. ~e~~'le"t. 'ew-o~d.~ 1~ a"d TOO+2 the The .~ab ~" beth ca.e. ~. ~ol~tive, i.e. 0. T~e value 11 1"1t4.'4zed by ~el"' of the co"aole TtME co~me"d C.ee Sect40" S.A.) "--.... The.cloek it •• ,f i. let. 1" ~ot1o" whe" the ~0"1to' i"1t1e14•• tio" ,out1"e e"lble. its 4"te,ruct., IIIU~4"0 thet the ~e Qu1lite d'.ve~ he. be." i"eludad w4th1" the Derme"e"tly ~e. aide"t ~o"ito~ Claa Sect1e" ,,2·.1~4). Tha~.efte~, at .ech 1"t.~~uct. tha drfve~ me,ely ~e'fo'm. 8 double p,eci.io" 1"c~ame"t of the Ito,ed vIlue. If doe. "ot howeVe~ ettemat to make 24~heu' edJu.tme"t or 8"Y io~m of e8le"d.r check, beth of w"'.ch ~ould 1"c~e8Ia, tha dPl4ve"'1 14ze. The o.,e~ato~ mUlt th8~efo~, ~a •• t the sto~.d vllue dlily, 101i" bV a eo"aole TIME e"try. \ ~ .....-g CoN"niiI'IT Cof'frE:.to(T ~ ~vmeo,- aFt Ttte. ;,'ISfCIfl vSc:rbQ. "T1T6a..E. :nqA.T cr:o>~6'SS SAse. ~a.~ Po~ '1"tte;. ~~A~ S~:5l'Qm &)(.]:1. ~",.. s.)(x:r ---- -~-~ s~ A:bblt~ ~ ~ ",Cet 5d 'lE:.US~-~ ~£ eaC5E&~·~E:S~e. ~RTt(. S'M«'r ~ASSS ~ THe. ':M~~ &uewe. ~d"ttllE Feft 'THE. ~ ~"Q)Eo. :s~. ~ ~l>l>QSss. ~.. 5&4. 5.~" S\"A4lt" Al>~S FaA "nE. StAAT fO)~~ 0:1 THe. 'ilte G£t"- &r.>~ ~~~G: S.RQE5 -- S.Cpe. S.~ :;.G~ ~~ 5~ 5l"AC1" 4\l)])C:l&:a5 ~ 'n.e. Q.e..EASE.-B~ SUSA"N. s.ft.1-h F r :l-l: - USAGiE. OF TttE. r:~EJ> O/E'c~ a....oC*,Tl:,ot19 • ~_-4' ..., ....... .--- --+----~~----_t--~-----~-~.------- o ",", IV OrIS"" Pot- EOCT) 0L"'I'OM:C Toe j)~no.tnM:. <---~ F'na.-~ &uHer Spa.ca . End. cJ. A"OCI:t.~ e",,-C' ~ COA€ s.I2.£ A"A~ Sar_ .n·.,,":c..;a.a.r;~n to ~'8~ ,..,~ o.dcl~ (~) ~AOCMA«) ~l> ~eas ~.,..., ~ o.~Cb.1Y'I ~ CCM"t~"il:OrII ~ foe- ~r S~~ 1& Ina;CQ~ Cl'lbl'o.~ Pcu:~,;~;~r onl.!f ..... 1<- C& :.. ,n coC"e. (Io..,..r ~~ loaded) ~~Q. Asa~~rTC\\:iI.. ,3 ur~blishad. Ind:~~ i"hqr pt'b8~~ .v;1I ~~ ext-a.t\\'" })1)&• . ~ ~~., I.~., I...cQ.declj H.;\1 is''--' , • ~ta"" R~I 1(, -I- ~,..,~. -I • ~t'b"' wci,n'~ ~ ~c-_::J.ru~","U)tW e..\obh-~eo,..,MClnc4. Ser;J ~C'!lrt\.n~ ~ .... O»T·nR to Qc:lclraa.n_~ -&to [e..l~ :a "n\c..t to C\ lCll:lded Pfb.9n:t.M Se'r b~ P~~M ~ RS&~r .Y"CDt'18o\e. k~bcatI::l Sca.-a Pc je"~ed P~.9"'C'I') cY~ :setta WTL (belo~ 30 Sa'ta~ UClI".. en~ " ~- pre.c:a.:"", T.rM£ ~r .to [15 ~~ + ; al3ttl caa en~ b." ualoe.. CoMMa.I1cl ond ~ ~\'Wl ~ C~ "eet' ~O.I'" ~ cleo.~ o.:r ~C"f.tSH ,. '-GkQ.~r _'oe. QS.SOCl~\--' ",,',Ha ao~ .'1"I:T'L£ tIL of. C\ loa.ded P~nl~ (p~ ~ ~cu::h~-5¢ -.~ m~T ~AT "~E9S l)::.ed l>l>L. Sw.AT Al>J)QESS J..'~.I t~ )n;',. ~s\- SA'I€ &.q.T. ~.A:i: ~ Pol:tnER P"r Q.a:~ ... r\,e. ~\~OC- ~-.:I.nc.,y TQW.. G.Md d,,"~ ezecu"':'n oJ. bumP cernmo.nd . e..s.'-r AI~ 1Q\\I"",~&I'If" .. r&t1c:io*"~'~I.I\H~ Metil~) ~RT S~ of.. E$ Serer. ';,~hQ't'aQhetl ro --. ~Ai ~t)l" hatt- ~ S'lS1'S1\ b' ~J)A" e6f'1\tnQncA E~ ~r-~ +~ w"rr ~ooP .. ~ • - ef.P.e.ch4 ",EveoAlti) ~~ AlG>4t, Se\" 10 J>'l»)... et)Y'' s fns.6 ..~ ~ ~l>l)4ile;ss ..,h:'e. .. loo.dect ~fb.f'I) 'S s"'~ lor ~r-,.ier ~s '. ~ dddnne. (; .. :n) F.C"Qc:c:.. .~ ~ ~ m..:" ~p B."f.9.ar &ft)1" co})E. ~: - - 1 I --I -, I ~ 3 -- -, A- ~ I '- -----f-,, . t--,, 7 --! S -..; I- ~ - -, --,, - - J _ -' - - - - - - - L I I , ; - - - - - - - - , , ~I j-, l:l - ~-I , 13 -~ ,~ I j - y Fe_mAT (!r.) 1- -. CoOI'''caPorolP4''' AIICH)n:..ta. b ~t ~ '5 --, l'- ---~- -', 17 --,. ,.... - -,, , ---1- ., ~~ .L __,, A. "-IE . . - . - """'ItESS 111I11111111111 srolt,ftlAT ---t-~ ~~ --! ~~ :l~ :1, (~)l" L =- & S3 ~ aoc.m:..... %~ '1"'H« SVsttlrt) ~..v ~AA""'Y:- , =1:- :tAo :rPl c:oaE:- I~ ~~ -M-4c.ft koc:IC ~ I I I 1 ( I I I I I I I fl'l ~l' 3~ 31 3~ 33 3435 3' '1itf\E.~eV' S£~I!.~ - - _I U~"'G-~ kl!tVeOfUtl> ~.,.,~ - t, ¢ 1 1 -; &dt=FBA (w). 37 I C# .".,.. toIOlU> a.....ocx~ (~;. ,..) ~ ~I ~ ~3 "Lt5 - -, - -, F,S~ :l-30: MoraTOR. 1tE.~rlc.y TA8~ ~rnAT. '-....../ , »~.: I£~Y Feet :S~~ ) ~----- -----' I rnE:tnoRV STAR. J>EvJ:CE. EftTA."'f fI'oR. D&.aA:£ F~ 'l>E.-n:c:E. #8 ~l>~SS J:rlI'"eItRUPr V£C'1't>A A»)ctE:$6 ---- , , ,, I #:l e.rttQ.'f -- (1to.rJ.,v. .~) 'J>E'iXce. ..cAme. Et4'J) "])"PL- A~SS - , ____ J ,, , ,, I -- I £,Ina.., Fo4t. ::b£"l:~ ____ .JI , #,.. &n-Q'(' '"/ ~ »E."4c.E. 15 -,..- -.',, I r---- ~Ce. ~ f'(Atc')E:. (Qc.d~.~) I I -----I,, -- ---, I • ----,• I I I e.~y FoR. ~~ce. .,~ ~-~. >J>h. ...J): ,, ____ J MCmoaV STAAT flDl>AE5S o't ¢ .Itl1'€R~uPT ~.. z:,.c ...-~ "fftlS l \ - . . I 'IEe'n:)ft. Al>l>R.ea srACf" &"-OClC oN .1 ~ '(~1S't') -l>e.'IU£ " I , ( , ecr C&£"MHr f'l'Wti .....- - - , - -_ _ _---1 IkrA¥ FoR ® It(!)) sea F~E ~-8 5rACMt" -a,. ~ PoZ~ -=-~ S"'OWN &t!J.Dw j STAcK ~ ~ ~ REc:r~"'i£Il-SA~j ~ 9. 'teo SE.'" AS>~. [A.•• R'+~ . ·WAD"~ (&U~-9 ..wA~("'d\" 6u&"') ~ CEl\lolttol "~~Cl~._ ~(ftCS;" Jk)SV) A.~. <:.III ..... ACl\MItN _ • It~. cA~ .E~ • A. ~~~ __ ~_ SP L,at'4t<-S\.DCK "~~. -~---~---~~-~- 805'( f!£~ "1/tt1 ,.-- --,Rl ~-- __ .JI EJCr~1"r"c;. ~~ .~.-~~.-'~-- Sf'- III R_ --,, ~-- _ _ ..JI -~-(~~~} 'CA~ ~~~'" ~ .~_ ~-- ~CSE.. a: ft.eGL~ A~E ARE. AlS>€l> Tb ~~~<""e. ~.lo: flE'&TOce:J» '1"11£ S'T1:>Q.e.» R5 Xori.D£)( ",:aLOe 'sf»' -A~ XttCAlte.M€NT'-a'~ ~ CA~. ~ SHu~L£ To ~e.c-no~ CA~ AQsurr.e...rrs F"oe Ilon\El>i:A1'E: ~A«) EKJ:T' (:"~ 'noIe. ~T ~~. -- OCC\JPA~T IlE-&lT4tANO( - Ue.NT%.t='XER 5J~)1 u~e. COur.IT el} = M't'r e~ .... ~ Felt ~"" ~T ~Rl> ~ "' L.O"l>G P~oc.e.~l:r( c;. (I) U AReA LfW1S& • elsfc, Ke&· \09 . worcl& ..aenlS] --- ~) Qu.nh!l~ ~,~ • (6 .Qou~ ~ '---ant"'r-.nl'" • -\ ~.-- -- -- - - .... .../" --------- -" -" .--~- -----"" . "---""'" --/ .. ~~..... no\" ....-~h-.."r ® _---L~:s~"".. ~. uoqac Cot.)torr eo AMloU""~ ~OGlitA«) I F~ TWO ~~: - o~TPUl" '1'b 1>E:c.'tftP6 ae&ulRES 1>'SK ,",&.1T. ~--T >I'ITt'l ~~. a..'rtf~ ~ ':,a.L .. 1Itl~ 1n" Ie --:~::----~--~--------..,~ ,,~ "1'4lII sTfM'€ ~ rf"fNr' oUT~ .. ~ ·t:H%.t"d. III. V' Pl\o..£ ~"U(AGE. ------~-~ ~--~~--- ; la, 6t.~ ~----.----I ~--~--~---~----I ~r4It aJ _ ...n(1(,M£ • -------------- ----~~~-----~--=~-~,- f'IIC.tnoa.Y ~s. :!IIM~ oN&foC%rtcs. Of:" 'nW!t ~ ~ ~ ------------~ 1>~ a1"fR"& I'ft)II.M~).. PRcc.~Go. Tb& i I I t 1 .L .• I • I .1 I L I t I • I .J. I I I I • I • I I I --L. I I , I I r-----,.... I I I t I I ... -- I II I I I I 'I I t ~~ --.~ Tor. • :mk.K~1~-~ (c....A!It.. ~ S.Go&'" ~ ~_ _~"~T To~ CA~ If OH1PTER 3 GENERAL _. fl~ t~~ ~IJO~ ~u"~f~a o~og~lm Bv I/O 1y~et'0~ of t~e 01 t~e p~obleml PRO 0 E S SIN G ~O~ Mo~fto~ .e to ~@'.eve a f~vo'ved f~ ~ovf~a fts data betwee" t~. POP-i1 I"~ 4tl oe~fo~e~8' IIO dev4c~.. Mo~eove~ w~f", oe~~e~~f~Q t~4. fu"ctfoM, the Mo~4to~ Af~. It ~.etf"o t~. fel'ow'"g c~fte~'81 1• eo~e eeOMO~V - uSlae .~ould be ~est~'eted to the ~f"4~um Meeded me~elv to .e~v'ee t~e 1/0 ooe~ltfo". eu~~e"tlv u"de~w.y. Mle~."e efffeieMey - .1 f.~ I. ee"'b1. t~@ O~OQ~I~ , he u1d be 1~1~wed.to eo~tf~ue l'te~"ltfve e~oce •• 1"Q w~"e w14t'MQ fo~ "o~mll'v ~,'etiY@lv I'OW 1/0 to eomolete. Oeviee 1~de~eMde~ce - 41 ~e 10 wf.~el' t"e ule~ should be eble to dellV 'Decificltio" t~e ectua' ~ey'eel to be u.ed bv t~e O~OQ~I~ ~'e~t UP to t~e ooi"t 01 e.ecutfoM. of ~"e~ed Ullae of bulk med'l • t~e Ito~loe I"d ~et~f of d1f1e~eMt lets of dltl UPO" bulk ~edfl I~ou'd be eo~pe~8tive'v .4mple 1o~ o~e u.e~ O~ .eve~I" w't" lome ~el.u~e of mutUI' e~etect'O", ,YI' Tbl pu~eo,eof t~f, C~lete~ i, to ,~ow ~ow t~e f.~'t t~~ee of t~e'e aOll. ~Ive ble~ IPe14,d 1o~ III dev,ee., ~eo.~~1ess of t~lf~ "Itu~e. Sect'oM 3.1 fu~t"e~ diseus.,s t~e e~f"e'. ple. I"d 1.01 •• ", t~. geMe~ll CO"t~o' teC"M'QUe. emoloyed. 8ect~eM 3.2 de,c~ibe, ." detli, t~e ~outf"el w~fe" o~ov'de commo" e~eee'lfMQ ,e~vfees fo~ ell deviee., ~.et40" 3.~ .,. ,u't~~te, t"e ge"'~ll fe~m.t_IP!e'f~ed 1o~ ~"e d~1ve~s w"fe" eOMt~01 t~e device, 0" be~.'f of t"o.e ~outf"e •• T". feu~t~ ebJeetive i. t~e e~.~e.o.' lubJeet of c~lete~ 4, T~" w4" '"OW ~ow e~ov'.fo". eove~ed 4" t~is e"4ote~ .~e e~t,"e.d w"e" t~ev I~' lee'4e~ to bu'k-'to~.~e dev'ee. 1M ol~tieull~. 1'.0 DOS3.~NO PAGE 3- 2 .'~ r .~_JJ~~ T~e ~ur~c'e of t"41 lectt~" il to I~OW "C~ ~~ ;e"erl' ~~e Mc"iter It~e~ctl tc ~ettlfv t~e t~ree ~e4~ ChJecttvel fcr I" 1/0 def~"ed 1" t~e 4"trcduetto~. T~e evera" Itrlteov tl deler4bed f1rlt,v 1" leet1o" 3.1.1. Seet40" 3.1.2 t~e" n'u.trlte. t~e ""tl,oe. i,lled to 1"'~'e"'e"t t~e. It,.eteQv 1" o~de,.. tc ~e4"tI4~ IdeQUlte Mc"4tcr eo"t,.c' ef 1/0 coe"l. tic,., •• . F~ve . eo"eect. e"e ee~14dered 4~ t~e fO"cw4"0 Ca"lorloMI. bll'e e9",eect_11 t~et, .1 fer II 1, reelo"lb'e, I" 1/0 1. ~erfermed bv eemme~ cote",t4a"v ,. •• ~t .. e~t .. ou. t'"e. wh1e~ O"'V ~I".I dev4ee dr~v,r 101"'' ' lo",e letYI' CMV • • 1el' _ dev1ee let10" 11 "ee~ed. Th,1 ee",~ "I, t". fc"ow4"~ IdvI"tle., w"e" eO"11de,.ed 1" the '~o~t of t~e atlted oca'., T~e ~roe'I'~"Q 1• T"e rout4,.,.1 t~e"'I.'v.a, ,1k. ot~e~ MO"~tO,. "'cdu]." el" be b"ouo~t 1,.,tc m.mc,.v o~'v w~e~ .. eQu1red. 8.elUle t"ev ute t~. a'rel~V "'oelted SWIC Buffer w~e" t"ev I"e, ~O extra eo,. ••• ~eeded for t~e",. ~creov.r t"e dr4ver" bl1"; deveted so'e'v to oroee.... "eeded te eo"t,.c' t~e device "l"dwI,.e t"ev ree,.e.~"t, Ire eo,.,.4der,b'v .~o,.te" t~I'" t".v m10"t be et~erw1.e. T~e4r eere USIQe 1. t~.,.efo,.e keot I ~t"'4"'u"'. to T"e octe"t~~) re·e"t"I"'CV of t"e rcut1",el a"ewl t"e1r ute fer .eve"I' .. eaue.t, It e time. T"UI,.,c ~e~t"4et.o" "eed be olaeed uoo", t~e a't.,."etive ~roee.a1"~ I o,.eorl~ ~IV 10111" to ee,.fo,,~ whi'e tlO ~. u"derwav. The u.e of eom~o" oroee.~or. foree, t"e defi,.,1t1o" ef I Ita"dard 4"terfle, for a" drivers. T"1 •• 1me'~f1e. the i~o'.ml"tlt1o" of dev1ee-1",deDe"~e"'ee. PAGE 3- 3 ~ ~. 3.1.1.2 . Auffe~ed DatA Beceu.e of t~e alow aec~sa ~ate. ~f 1/0 d~v4cea, moat D~O. ~e~e P~ov ••• on fo~.t~e buffe~.na of ~ata be1"Q pe.sed between t~e co~~ute~ end fts pe~4o~e~a's, De~t4cu'a~'v 4f anv fo~m of ove~1aDPed D~oces.4"a 1, to b. effeeted. I" oene~el, t~,.e D~oo~a~. e~a.day.'ooed w4t~ the deviee. to be use~ ~1" . m4nd. T~ef~ ~uffe~ • • ~~, as e ~elult, let UD to .at4.fv not only the ~,out~em'"t. of t~e D~oo~e~ but alao deviee caDebilities fo~ ~a"d'1"a data - 14"O'v o~ 4n block. of va~v4"o 'fze. I" ene .e".e, howeve~, dev4ee.4"deo."de"ce mee". t~et ~he D~OO~'~ "ead consider .o1eJv fta own o~oee •• 4"0 need. fO~ 4ts buff.~.. T~. Mo"4to~ tnstead mu.t take ca~e of t~e va~v1"9 dev4c. date-he"ri14no att~4bute •• a~am. Fo~ ,.mc14e4tv .arlie~, the f"te~fac. me"tio"ed a" dev4ees al bloek·.t~uetu~.d end eatabliah.s ft. own 4nte~~ed4ate buffe~. aeco~dinQlv. I" .ech ee.e the ail. the bloek, end henee of the buff.~ D~ovfded, fa i ••• d e. eonve"fe"t fo~ ,eeh devie., but ea" ve~v between devieea. T~e d~ive~. t~e" t~e"a1e~ to o~ f~om t~ele buffe~. e. di~ected bv the Mo"4to~ e"d A' fa~ a. Do •• ible th4, 11 do"e f" adva"ce ef t~e D~O a~amll ~.ou4~ement', in the f"te~e't Of machi"e efficiency. Thu. when e p~OQ~am need' 1nDut, lay, it ca" .ak fo~ a fi •• d amou"t of data and the ~o~fto~ ~av, deDendi~g UOO" the devic., be abl. to ,att,fv the ~eoue't f~om data al~eadv 4n core end c,rhaos have more for "ewt t'me. 4" t~. 'te"da~d Mon4to~ d~4v'~ the~,fo~e t~.etl "f n.ye~thele." that the ~o"ito~ p~ov4de' s.~gl, bUf~.~ io~ each 1/0 task andth~ DrOQra~ ~av If .hould be "ot.d, onl~a be fo~eed to wa4t 4f more data ~ust be t~a"lfar~ed to meet G~eater mae~t". effic1e"cv m4~ht fo',ow from anv reou •• t. double ~uff.~1"~. Moweve~ ~h4. obvioully ~'e' more co~e. 'urthe~more 4t .'~eady e~ita to lome e~ten, (a, ~o"ito~ buffer a"d u.e~ buffer) a"d .0 "0 further o~ov'4o" 4s made. T~41 dees "ot of ceurae crevpnt the use~ double·buffer1n~ wit~4" ~i. Drogra m 4f he w11hes to loeed-uD hi. 1/0 ectfvi. tv. Alt~ouQ~ t~e drive~! may be ~e'atfve'y .~a" a. "oted ~" .ect1~n 3.t.l.1, t~ev ~ust Iti,l take UO .o~.ce~e w~il. they ~re i" us. - likewise the ."ternal buffe~a di,eussed tn the nrevieus lectie"_ Mereover the need for t~ei~ D~esenee "ot tra"sfent to t~e •• me e.te"t as t~et fer the "e~~al Men1te~ ~outi"esl s4"ee 4t would be whol'v u"~.a'4st.c to foree eve~y device transfer to be .Isociated with a leeond ene f~e~ the svste~-device, o"ce Ca dr1ve~) fs cal'ed to be. Qi" a ser4es ef 1/0 oDe~atfons it ~ust remain Avai1able f" .1 PAGE 3- ~ m.m~~v u~t.' the •• r4es •• cem~l.te - a~d it •• ~te~~.' buffe ... wit'" H. o~ t"'e oth.~ ha"d, it i. eQuel"v edvisable that neithe~ the d~iv.~ ~o~ euffe~ .hould oceuey co~e until they .... , ~~tuallv nee~ed or ae.i" aft.~ t~.v heve I.~ved their ~ureo.el t"'at co~e ~4Q"'t he ~ut to .o~e othe~ u.e. It •• thus fo~ ce •• s 1ike these t~et the dv"a~ie e"oc8t.O~ a"d r~lease of buife~ .~a~e w~th.~ i~ •• c~r ••• da.c~fbed f~ lectio" 2 ••• 2, i. ~ai"'v e,.ovided. I" eddftion ce,.taf" of t"e Men.te~i. 1/0 o~ocel •• no ~odule8 to be dfsculsed .~ lec· tion 3.2, ~~fMerflv exist 1" o~de~ to a"ew t"'e u.e~ to eontro' the ulage of eo~e fn thil w.v. The faet that a drive'" •• loaded O"'V w~e~ ... e~u .... ed a~d not w.th t~e .~~oQram a,.e fu~the~I the e.ule of device 4"deoende"ee i" that the u.e~ ean. u~der ee~ta1~ cf,.eu~'ta"ee., ... eotifv e ... "'o". 1" device .eeeff1eatiO" eve" After a e~OO~.M ha. b'e" .tarted. C.ee .ectt~n 3.2.1.1' 3.1~1~. 1/0 Leve'. I" .eetfo~ 3.1.1.2 4t we • • ~oW" t~et the ~o"4to~ c.~ allow e y.er Dr~O ... a~ to ... eoue.t ttl d.te trenlfe .... f" Quentities .ufted to tt. own ".eti., ~.t"'e,~ the" to Ifteet devfce ch .... ec· te ... i.tfe.. The Monfto~ a',o en.ble, the O~OQ~a~ to indicate how the mave fa to be mede ."d w"'ethe'" .nv chec~i"o i. to "e car,.ied eut f" the c ... eee... It il .t t"'41, t~e RfA~-WRITE level C.ee .ectio" 3.~.2). thet most u.erl will i" f.et wish to ce"'ferlft thei ... 1/0 o~er.tio" 1" the "or~a' wav. .eme For .oolic.tion. heweve ... , the time take" beth to !!tove the d.ta .c~o •• tw~ buffe ... s and to .ccOmolis~ the ve ... iou. ~ ... oee!.i"Q ~o ... m. ~av be ~~ohibit1ve •. Two othe~ 'eve'. a ... e the ... e'o~e provfded. At the ve~y b.sie, 0'" .TRAN level Csee •• cttO" 3.2.1.), the u.e,. .ae ... fffee. devfce.4~de~e"de~ce but the" v.;tua;lv "'as df~eet ecee •• to a d ... fve~ to t .... ~.fe~ deta bet wee" hf. o ... og ... a~ a~ea and the devfee ~fth~ut the ~onf tor'l i~t''''Medf.t. buffe ... ("o. At the .eeo"e, o~ 8LOC~ 'eve' '.ee .eetto" 3.2.3), the u.e~ fs oiven eceess to the Mon.to~'. buffe~, i"stead of .uDolvf"a h4s own. in o~de~ to c.,.~v out ~.ndo~-ecces. I/O. At both level.. t~ouah, the us.,. D~eQ~a~ ~u.t D.~fo~m tt. OW" det.-o~oee.~i~Q. '-~ PAGE 3- " 3.1.1.5 ~evice Ala.a~me"t .a wil, be a~ow" 4" .ectio" 3.1.2.1, t~e u,e~ C8" de.io"ate the device to. ,e~v.ce ,ac~ dat8s~t wit~i~ ~ L1"k-block f" the p~oar~~. Simi'ar'v, 4f t~e device is file-structured, e' de.eribed i" ~hapter 4, he mav allo "ame t~e f1'e he wi.he. to accea. 1" a DrOQram F4'e-b'ock Clee 'eet10~ 4.3.1). n" the other ha"~, he may "ot k"ow t~is 1"formatio" whe" the oroora m i. wr1tta" aa oerhaDa 4" the eaa. of a ae"eralcooy Droaram. ~ve" 1" the former aituat10", there maY be ecca.io"s w~e" the orio1"a' erogram se.cffieatie", must b, cha"aed Ca 14"e-Dr."te~ is temcorar41v out of actio", for e.amo'e', se a 'ilti"Q is to be outout to a d4sk f1'. o~ a~a.", because a particular data·aeQu1sft1o" rate wa' toe h10h ~or o"-'i"e o~~ees.f"o, t~e 1ata wes dum~e~ 0" the disk a"d "OW the oroce~sf"~ erogra~ ~ust aeeel~ the latt!r r.the~ t~a" the ~ata-aQuisitto" ~evfce. The ~o"1t~~_t~erefo~e provides. two .methods by which ~he uaer may seecifv the device (or f4'e) at e~o~~am ru"-time' t. He ca" e"ter the ru"-tfme soecif1cetfO" via the eo~ao', ASSIQN cemma"d delcribed 4" leetto" 6.4. This w1" the" over-rtde the corresPo"df"o oreoram deta.'. 2. He ca" atructure the pro~ram te aCCect a comma"d stri"o a"d ule the Comma"d Strf"o l"teroreter to o,rform the "ec.,aarY ~eco~1"g a~d.let-uD Csee sectfo" ~.4). Th1s~~et~od is eso~eia"v aporODrfate if_separate ru~s of the same 'oaded orogram ule d1ffere"t devices a"d f1'e., e.o. 41 i" e" Assembler. 3.1.2 _.. ~t!O ~f)"t~E~!.-. I" order to ma1"ta1" the ~o"ceot of dev1ce-."~eee"de"ee, the user il e"couraaed to oroQram 1/0 4" terms of the '0~4ce' Dureo.e served ~1th~" t~e oroaram by the data tra"sferred rather t~a~ oi t~e Dhvs~ca' devfee f"vo'ved~ T~us, 1" the pro~remmeria ~a"d~ook, a" lIn fu"ctio"s are S~OW" to be perform~d. "ot UDO~' deviee but U~O" ~ "data.-.t" • deff"ed a, "a loofeal co"ectfo~ of data which is tre~ted as e" a"t1tv bv the D~o~ram" (1" ot~er w~rda, a" t~e ~eta w~4eh 4a p~aeeaaed i" t~e same ma"~e~ w1thi" the pro~~am'. 1" oractice, dataset a"d device_mav. 1~ fact mea" t~e. a.me t h i"o. I~ a ~ECtao. coeV D~o~~am~ for i"sta"ee, t~e t.oe be1~g eopied .~d ~he on. be1no oroduced each eo".t1tute a dat~set. 0" '~he ~the~ ha"d, e d.ta,et ~ay be 'els tha"_a1' t~e d~ta a device ea" sueply, a.~., 4t mav be Just o"e Of !eve~a' f1'es sto~ed 0" the sa~e OECtace Caee eha~ter .). At times, it ~av eve" atrete~ acrea. s.ve~a' ~eyiCesl as e tvoiea1 e.em- PAGE 3- 6 ~1., .,1 t~. obJ.et mOdul •• b.i~a 14"-k.d 1~to o~. lced ~owhat.v.~ th.4~ .ou~e" fo~~ a .i~ole dat •• et to the '4~kt~Q D~oo~.m, LI~K-It. Two cc4~t. ~u.t ho~.v.~ ~. ~ot.dl dul., A data.et ca" o~lv 'UODo~t o"e .ou~ce o~ delt4"a· ttO" et • t4~e. Thu. althouqh two d4.~ 14'., ".4"~ ~e~Qed by a .o~t D~ca~a~ both fo~m 4t. 4~~ut, e.eh ~u.t b•••• oet.ted wfth • dtffe~e"t ~.t ••• t. It 4. co~eeiv.ble that whe~ • dat •• et 41 .etu.l1y a"cet.ted with. bf-d4~eet.o~.' dev4ee - the cc~ .01e tyoew~.te~ ae~h~o., -.the ule~ ~4oht wt.~ to u•• t~e dat •• et b4-d4~.ct4c"a"y. Bv ~ef4"t ~4~" tht. c.~"~tb.1 loQ~ea"y t"Dut .~d outcu~ a~. o~oce ••• d d4ffe~e~t'v. Neve~tha'e'I' u,.oa of the S,~. data.at l~~k.~a w~thi" the p~OQr'~ (aee ,eetto" 3.1.2.1) f. "ot ecmoletely cut of the Queltto" 4f tht. D~oduca, eeo"o~1e., D~ovided th.t lueh us.oe t. 'eoue~t'al. •••• the d.ta,et .a" be ~e-4~tt.altled fo~ out out •• 10"0 •• 4t •• ~ele.sed f~em ,"y ecm~4tme"t to f"out. ".0 aeett~". 3.1.2.1 to 3~1~2.3 iOJlow4"O d~.e~.be the ,eha""e1 • • et yo by the ule~ a"d tha ~o"fto~ to eo~t~ol the coe~attc". UDc" eaeh data.et. 'eetfe" 3.1~4 d •• eus ••• t~. ~eeh."tlm by whtch the d~iv.~s .a~vtet~a the d.te.ets .~e ~a".c.d. eaeh d.t •• et to be ue,d .eo"eu~~~"t'y, t~e u.e~ D~oo~em • d.t.-b'oek of oote"tt.l1v v.~tab'e 'e"oth k"cw" ••• L4,k-bloek, ,. il'u.t~atad t" f4Qu~e 3-1~ Th4'.4. d~s. e~tbed 4" det.4' i" the P~oQ~am~e~11 H.~dbook. B~4ef'v, it. ~u~Dose i. to e"able tha u.e~ to tde"ttfy the ~'ta.et both 4"te~"a"V • by D•••• "O 4t, .dd~e'l " a e.l, ee~a~et.~ fo~ •• ch ~eoue.t fo~ .~ 1/0 •• ~v.ee • • "d .xter",'lv by a 1oQic.l ~.~e whteh ea~ ba u•• d to a •• oei'te the rlat.·.et with a p~v.~e.' devfoe a.s~o~ed to 4t .t ~u"·t~m. ,(.a~ "~.t .ec. ttc"). The L4"k-bloek el.o ,"ow. h4m to .oeeffv the devtce w~t~f".~he.~~oa~a~ o~ ~av Drov4~e ,Dace fo~. ,dd4tto~a' ~". fc~~at4o~ 4f he t~te"d. to obt.4~ .ueh sD.e4ffeatio" th~OUgh a eom~a"d, .t~.~o C.,e, .eet40" F.~."v he e8" 4~die.te what .etto~ tha Mo"4tor ,~cY'd t.ke, 4f a" 1/0 ~eQuest ea~~ct be ,atia1fed th~ou~~ 'eek of f~e. eo~e fer t~e d~1ve~ c~ buffe,.. "eeded. Fc~ D~ov4dea 5.4'. ~ PAG~ . 3.1.2.2 O.vie. . __ ..-...---o~_.~_. ~'liQ"me~t __ __ . ~ .~~ 3-' TI~le _ _ __ _~~~~ ~ A' I" ~~de~ to o~ve '"' UI'~ a. ~ueh f'.xfbi,ity DO"~bl~, sDec4f1e8t'0" by co""o'e aSI40"~,."t II "oted ." .ectio" 3.1.1.5 can occu~ at va~10ua t'm.a, .ve" befo~. t~e ~~og~_~ 1, 'old.d. T~e MO".to~ mu.t t~e~efo~ • • tope the da. tl from eac'" ASSIGN el"!tPv, Fop Hd. Du~DOle, a Device As· 1'..(.1' "\') .4o"~e"t Tab'e COAT) 1a a.t Uo IS reauip@d wit~1" the ~0"1. 1 \ \~ to~ I~ea Caee tl,e ASSlt;N eo",,,,e"d DPoces.~~ 4" aectio" CJ¥\') ; 6.4.10) a"d 1tl.e"tl"1ea aee t~." checked whe",ver.tt,e DI"O.. ~l'\i' 1\ gpa'" ~"dar e)Cecut101'1 ca", for dat.set 11"dt1aHlat40" Ca.e C/o- c.."",.,...r.r< ( .ect10~ 3.~.2,1). W"'e" 4" e~1.te~ce, ~he teb'e' • • ta~t ad-1 dpea. 11 Itored 1" the eeaf"n4"~ of ,aa10",me"t Tab'e eeAT) \ wo~d 4n t"'e SVT Caee aeet40" 2.1,1) • Devfc~/F1'e •• • "ultrated 4" fioure 3-2, t~e table 1t.elf ~IY eo",,1.t of "DaPlte .eo~el'lts a. follow" due to the vary1"0 "'e~ory 10adi"QI at the time. whe" a •• 1anllle"tl are entel"edl ~pior to o~oara~ loadil'lg • the oe,.~a",e"'t'y pe.4d,,,,t M01'!1to~ 1. v.rtuellv alol'le fl'l ee~e, The table "'av t"'erefore beof" .~"'ed4atelv abov@ 4ti end, ~nt"'e. "'ade at t"'.a time "eed not a. a ~e'u't d1aaCDea,. whe" t~e orooram 4, pe"'oved fro'" ce,.,. 0" cOllloletio1'1 of ita e.ecut1on, Thu, the u.er 1s a1ve" the fa· "~t Just o"e DrOOra", but ~e"ha~, aev.~al oDeret11'10 tooether ,1'1 a su1te. The fact that fOI" this ea.e the table .tl~t. wh.re. t~e_ ~O"ito,. Buffer Al'oeat401'1 Tabl. el'lda 18 uled to Droteet theae e"tP1el,. If thfs j . the o""v OAT •• ame"t, t~e EOM .tored 4" the SVT 1. let at 1t, end (see .ectiol'1 2,1,t). ~~~fty oi asafo"",.nt. wh1c~ . aifee~ ~, 1ft.r Drogra~ 10adi1'1a but before oroa"a~ e.eeut401'1 • 4t is Dos.ible that the "o,.",a"y .. ~a.del'lt ~01'!1tol" "'aV be extel'!ded by rout'l'Ie. 'oeded f~r the o,.oo,.a",( durat1o", ~AT entries here IIIU8t come after the.e ~out4" •• a"d, a1"ce the I"outil'les must 'atel" be ~e· ~oved witt, the o~oc~am, the ent .. ies 8'.0 ac, (4f 4n fact "0 ~out.I'I'. a .. e ,oaded, a word is 'eft hetwee" t~e Buffe .. Tab'. end OAT start a. a" 1"d4eato"), EOM is adjusted also to t~e e"d of th4. seclTle,.,t, After the at art of o .. oo~am exeeutio" • the a~e8 f~olTl EOM 1s u"de~ the eOl'ltl"01 of t~e Mon.tO~ buffe~ "'a"aoe"'.~t .. outi~e. desc~ibed 4"Ieet4ol'! 2.4.2 a"d sOlTle buff .... may already be a"ocate~ to other DU~· oo~e., Thu8 fu,.the~ ~AT el'ltl"1es ~ust .'so use buffers s1m.,a .. ,y obtai~ed, Fo~ s1~cl1e1ty 4~ the AS~IGN com~al'ld D~ocessor, eaCh e"trv uaes a "eW buffe.. eve" thouoh this wastea .oace, A.14Q"mel'!t at this t1me 1s the .. efo .. e not ~ecO~me"ded exceot a. PlGE..3- 8 .. "",1'1, of ... et4fytI"lQ • ., e .... o .. d.t.e-ted du,.f"a d.· t ••• t f"iti.'tJ.tfol'l. e8e8 aeetfol'l 3.'-.t.l). T~.roe .,.. ot~ ... ,. ••• el'l. toel '. Th. buff ... u.ed bv t~e ."troV C,""ot be ,..' ••• ed ul'ltil t~. c .. ea ... ~ t ... ~fl'l.t •• • t~f. eould lock ~ut the bu~f ......... f .. o~ ~ .... c~ .. e .vel'l thouoh they ... e "0 10"0." t" u.e. " D... t "0 .. of t~. ",.1 cl •• .,.u~ c ..... t.d out du ... 1I'1Q the O .. OCI •• tI'lO of the eo".ol. AEGIN eo~m."d C••••• ctf~" 5.~), .1, f .... eo,.. buff ....... e ,..l •••• d fo,. • f,. •• h .t ... t. Vl'll'~1 the .~.fQI'I~.l'It f",ftt.lfr.ttol'l tt wt" i. made befo .. e 1'10 .ff.ct. ~.ve dat.s.t ."d Th. l'O""l'It ..... co~",eet.d bv '. two we,.d 'I'Itro~ at t~e e~ •• eh. Th. ft .. lt we,.d tl let te -I te 4I'1dfe.t. that ."oth ... l'O~."t fol'oWI, the •• co"d th." Ihow, the Ita,.t .dd,. ••• of th.t leg",."t el). CTht. lfl'lkage .1 .11e uled te d.1.te .I'! v .",."d.d bv • ,.t.,. '1Ifal'l"'.l'It). The I"ri of t~e eo~· ~,.t. t.b" .1 d'l'Iot.d bV 0 tl'l the f1 ... t wo,.d. ."t .. Th. fO,.m.t of •• c~ .",troY .1 aive" tl'l f4au ... 3.3. ef the D,.f"ete., ft.", •• 1 ., fe"owI' •fe."e. t• The Ifol'li • Loete., ".",. • ce"",,~ol'ldl to tha •• ",. ftem f" the UI.,. Lt"k-b1ock dtlculled il'l the D... vteu. leetiol'l al"ld thul D,.evfd •• t~e ~OI'lI'l!ct.l'Ig ,.,,~ bet wee" the 'I'ItroV the d.t ••• t tt .ffeetl. ."d O.vfe. ".",. • Ih~WI the with the data •• t. d.vte. to b. ..Ioctat.d D,vie. ul'lft • .to,. ..... 1evIl'lt 4del"ltfffeatfol'l d.vtc •. ael'lt,.o1. I.V,,,,' uI'I1t •• 4f the of Nu"'b.,. of we .. d. to fo"ow .. allow, ... at .. tct~o" ,~e 'I'It .. v_ stze to the mfl'lfmum "e~d.d fo .. al'lV ff'.·ID.cfffe.tfel'l .l'It.,.ed, •• Q., ff Ff1881'1'~' 01'18 ly, this wf1' be 2 • ................. 1. The •• eol'ld 1i"k wo .. d m.v be 0. Th~' fl'ldfe.t •• the table el'ld if ~ ~Ol'llole 8E~IN .. e~ov.1 .ss.al'l~.l"It' ~I'I buf~e ... c••• s.cttOI'l 5.~.5). ~ DOS3."NrI P'G~ 3- 9 T~. ~e~~i"4"g tt.ml .~pclv d.ta othe~wise o.v~" 4" ~he us, e~? The 'oo1ea' ~a.e, of eou~.e~ mUlt ~. luoe14.d. The ~ •• t ~av be validlv om4tt.d~ • • how" t~ l~ctiO" 8.'.10. (rf th.i~ ,Deee mu.t be 4~elu~ed', the ao~~oe~4ate tabl.-.lotl a~e th." set to 0 e.q~, tf o"'y UIe t. e"t.~.d, it.m 4 must be •• t to 4, ~4l.·"a~e a"d fxte~lfo" will b. l.ft bl.I't~. Ftl.·~loe~ (I •••• ctio" 4.3.1'. 3.1.2~3 Oata •• t Oata Block Th. M~"it~r hal "0 k"~wl.~ge of t~e o~c~~am" TIO ~eQ~4~e ma"tl. u"ttl the e~oQ~am 4t •• lf 1d."ttfie. these bV ~eQuest tl'tQ i".tt.,flat4o" of the datalet. to be us.~. ~eflte., a• • tat.~ .I't.t~. P~oQ~amm.~I. Ha"dbook, .INIT ~ust be the f.~st ful'tctto'" Called t" .aeh e.... IfIt ~e.Oe"'le to lueh call, th.2 Hol'tft~~ .et. u~ ft. OW" CQ"t~ol blOCk fo~ t~e d8ta.~t wft~i"\ a Ui.wo~d buff.~ U"U, elahled f~o"" f~ee co~e a'Hi .to~ •• hi \.."..'\< .ddr.~. 1" th, It"k·wo~d of the u'e~ Lf"k-bloek C.ee seetfo" 3.1.2.1). Th'l bloek k"ow" as the Oat ••• t ~at. S10ck C~O~), •• I,Is.d ,th.~e.fte~ a., t"e, mea". bv wl'dch dtff~l"e"t "'e"ho~ ~outt"e. call tl'tfo~""atfol't to .aeh othe~ a",d allo eommu"icate w4th the dr.Y.~ "l"y4cil'tQ the data •• t. It is retaf"ed 4" ,".~orv uI'tt4l the oroora m ~.lea.e. the data.et from fu~ther 1/0 .ct4o" Cle ••• cttOl't 3.2.1.3), itl buff.~ IDaee fl th." r.tu",".d to fl"" cor.~ Th. format of the DOB t. illultrat.d ~ureos. of the fte~. i. a. followsl t• 1" 3-4. f'gure The Mol'ttto~ ltl'tk • ."abl •• the Mo"4to~ to ~afl'ttai" • ec"t r ol cha." of the DOB'. eur~."t'v .stab'ished, al tllult~.ted t" ftaure 3-5. T~e e~ei" ortof"et.1 I t . ' 008 Chain O~fQ1" (nCO) wo~d i" the SVT (see lectio" 2.1.1). '.fltk • t. u •• d to eha'" the DOB's fo~ dataletl wa4til'to UDO" the e.~v1cel of t~. lame deviee .1 de.c~tbed 4" the "ext eect40" • Q . ~r4o~1tv ea" to D~'y.~ level.- ItO~'1 t~e level at driver is marle. w~.c~ a aueued t~e routt~. 1~d.x • ts . . "or~."v 0 ~"'ell eall .1.Queuedl a oot"te~ to t~e d~.ver t4"e reau1~.d •• t~." saved h.~e t"lt'ad. d~4ye~ a ~ou· adore.1 f~om whie~ a.loefa~ed ~'~h the datalet 4. 104ded. DriYer addral. • eo"t.i"s the t~, dr1ve~ T~41 allo Se~yel to fdel'tt4fy the d~.ver w~e" eomea~.d wit" e"triel 1" the DOL Caee leet4o" 2.1.3'. .ttt r'!. '.,. '- () , DOS3.RNrl 8. RUIV f'eQ - 41 let by the fMT He~dle~ Clee seet40~ '.2.1) to the edd~els of the c,oo~.~ I/O c.ll wh," aeeeeted. Thfs fo~ces a~v lubleauent ce" to waft vnt4l the cu~,ent reauelt has be,n l,t4lfied • whe~ it is r •• et to 0. The .dd~e •• of th4. wo~d il the one ,.tored i" the us@~ Link-block .s the ODe co.,~.etio~ to 4t. dat •• et. 7. User 14ne add .. @•• - 4n gene .. e, i. used to s.ve th.\ ~eeo!!cj Da!,mne.~ pa •• ed bv m~.t I/O ~'.". (no .. ",.11 y the address of • d.t •• ~lock in the o"oQr.m, e.Q •• Line Buffer 4n .READ/.WRITE, TRA~.b,ock in .TRAN, ete. 8. Device block • Doint. to the dev4ee ~'ock o~ • bulk stor.oe medfum. .dd~ess of • 8uffel" .dd .. ess • .how. the .t.rt of. "'emorY ... ea for t ... .,lfer • norm.l1y th4. fl .n inte,n., ~o.,ito .. ~ujfer' thus this wo .. d t • • l.~ u.ed~. .n ~ndiG'· tion of the curre"t ••• fa.,,,,e"t of .uch buff.r Ccleared to ~ 4f "one). - . cou.,t • ofve. the .,u",he~ of wo .. d. to be t~.n •• ferred by the device ••• two" co",ple",ent value. ~ord 11. Statu. - i. used t~ direet the drtYer on the tYDe of t .. e"'fe~ reau4red, .,'ow, the drivel" to retur" error i"dic.tors .nd .tores other contro' 4"for~e. tion 0" • bit-b •• ts ••• hown tn ftQure 3.e~ 12. Completion retur., - .howl the .ddre.s .t which a ee,,4nQ routi~e .. eQuf .. e' the d .. fver to ~etur" whe., a ~eaue.ted .erv4ce h•• bee., .etf.ft@d~ Dr4ver word eo~nt - a"ow. the drtver to i"dicate Cea.i., •• two'. co",~le",ent) how manv wo .. d • • re .,ot t~.n.fel"l"ed bec.u.e .n e.,d of deta pofnt i. ~e .ched. This word fs al.o USed to store • va~iable o01nter to the "ext byte to be D~oees.ed 4" the intern., ~o"ftor ~uffer. C~o dev4ce act to" ca" be underway at this time). Ryte count - is used dur1na .REA~/.WQITE Pl"oee •• 1nQ to control byte. ~a •• ed b'twee" the D~oara'" 14.,e and the int.!"na' Monitor buffer. Checksu", - t. ", •• n'v p .. ovf~ed for th~ o .. oc~ •• 4.,g of formetted ~i~a!"y data C.ee .ectton 3~2.2.2). 16. DAT pointel" - •• set dur1"c d.te.et f.,ftia11zatfo" Caee aeett~n 3~2.1.1' to the .ddres. oi ." e.,trv 4., the Deviee ASlionment Teb1e co~r.'Dend1"o to the dataset, if such .~'.t. (Ie. ~~.y'oUI lect.o~). '-- ,."k - FIB con".ctl t~e ODe te a l&·wo~d buff., .xt."11o" w~e".ve~ f11e-st~uctu~ed epe~8t40"1 8~e und.'wIY o~ the data •• t IS dele~4bed fn leet'o" 4.3.2. It 4s set to 0 othe~w.s •• 11. 'ect1o" 3.1.1.1_ thlt. the dey1c@ d~.v.~ a sta"da~d '"te~face to the eO~men 1/0 o~o C'II.~Q rou!."es Of.th. Mo".to~. Th41 '"te~f8c. wi" be diseussed 1" sect.o~ l.l. The ~out'"es 1~ the1~ tu~", howeve~. ~Ult also use .t4"~a~d ca,'.na leaue"ces W~e" theY ~.Qu.re the d~'V.~11 .e~Y'cel. Thi- .ectio" w." dese~.b. th •••• ~oted It WIS Ihould 1" ~~e •• ~t ~on.tor Ca"s to t~e Oriveri In.t •• ,'y it 1e the cal""; ~out'".le ~ •• oonsibi'4ty to e"sure th;t the ~e'evant da~a to contro' the dev'ee.oce~at4one •• ,.t into the DQB d.ee~.bed 1~ t~e 'let •• etio", 4 ••• , D.v1ce ~'ock,.Buff.~ Addp.es, Word Count, Status, C9~o'et1on R.tu~~ and 0 1n the Or.ye~ Word Count. T~. ~out'ne ,'eo let. ~.~ •• te~. a. fo"owei R~ • Add~ess of the DOS (~UIY F'a~) Rl • Indei 4nto t~. D~1ve~ Inte~face Table, (lee Sect1o" 3.3.t). Thie ."dex oo4ntl to e byte conta1ninG a" offset f~o~ the d~4y~r st.art '0 the beg.n~d"Q of ~he rout'ne ~eL.{r-q D~ev1dfna the s.~vfce ~eeu1red, e,a,. npen fa shown by 1, T~an~fer bv 10, etc. The e~"te"t. of t~. othe~ Reg~st.~. are 1mmate~4a',. how.v.~? drive~s do not .ave t~.m. It i. thul UP to t~e rout,ne te) do th4. 4f such ee"te"t. are reauired after retur". The rout'"es themselyes do not actua"v Nor~a~'v a s'"Q'e d.y~ee Co"t~o~le~ can e~at'on t~e d~.ye~. IU~~o~t o"e o~·1 eyen_thoua~ 4t m~y haye ,ev.~.' u"'te.\ 1te.,f ~.ed eo"ta4" o"'v s.~1a"Y ~eusable How.v.r.t muet th." be crot.etad aaa1~et reea" 8t4" De~fo~~."o a"v seryiee. The ~o~ito~ th.~efo~. ~rov1~e~ two sub·~out4nes to ~O"t~o' the ~.e d~4v.r. Ind ei"ce thev must be ea"ed fe~ eYe~v dey1ce actio" t~ev a~e ~a~t ef t~e resident sect4o". Bas4ea'lv t~ese su~~out.~ •• provide fo~ aueued re~ue.t. fe~ a drive~ls se~v1ces 1" o~der Thus code. wh1'e at a t~. t'~e, ca" O"'V d~.v.~ of PAGE3-12 DOS3,ltNrI thlt a ell1f"Q c~oorlM ~IV 4"g II fir II peSlib1e, c~eceed w.t~ a'te~~at4ve croeess· Tha lub~outf"el are S.COS w~4e~ cheeks the ~eed for a ~ueue I"d .atl it uc when necelsarv e~d S.COQ w~feh enlure. thlt the d;iver give" Jobl from t~e aueUe al it eomo'~tes 18eh o"a. Lf-a the other re.fde~t .ub·routf~e8' thev are ae· e,lsed through vector leclt40". (50 a"d e2). resc,ctfvaly, ,1"ca. I ' 'how" Ib9ve, arguments are casserl i" Registers er the D~B. thef~ clllfno seoue"ees ere sf~p'el .1 Driver ~ov '*5~,.(SP' JSq pe,a(~p)+ ,CALL S.CDB(52 F~R S.COQ' ~ueuef"QI Th~ • • ~out'"e needfno a driv,r OClrat4o" f4rst ea1,s S.COR. The proea •• ina of .ue~ ea"s i. illustrated dflorlm~etfcel'y et ff~ure 3·7, It involve. the f~1'owfng .teo., 1. ~xtract the relevl~t driver .tart addr ••• fro~ the ident~f.ed bv R~ end_cheek ft •. f~rst word • a DDB bu'y f'aQ in the stlndard interfece tab'e, to ~e eurrently fd'e, sto~e R0 fn the bu'y fllQ to c'a4m t"'. drtver f~r the ~aoue.tl~ .e~v4ce and to provide the driver with a 1ink to the ODB coneerned. Jf thfs ~s 0, show4na the driver ~. Clear the dr'ver rou~f"e inde • • eve 10elt4en i~ the ODe to indicete direct entrY en~ u.e Rl to ~u41d the eddre., ef the driver service routine rloufred. Jump to th41 eddre ••• thus leavi n o the .eved return eddres. from the S.COS ea11 on toe of the steck e. the ~river" mel~' of .m~ediete e •• t to th~ ea',4nG routfne(1). 4. ~f the driver i. a'ready busy es s~own by e ~o"·~ fleo at .tep 1, cheek the n·'4nk fn the D09 Id· dre.sed by the content of the fl.~. f.e" _the ene currentlY bei"g serviced by the driver (from step 2). Ii thi •• s 3, no aueue Yet exi.tl, .tert one •.....•..... "' .. 1, As wil' be Ihow~ in Section 3.3, e,' driv~rs use the 4nterruet syste~. In generel. a el" to I driv~r mere1y re· lultl in the 4nitiatfo" of the ha~dware actio" ~"d an e.it to Iwa4t t~e fi~.t fnte~~upt. ~e"ee th~ retu~n fro~ '.COR fl not the 'I~e as Co~~'etfo" Retu~" stored .~ the no~. '", -- P1GF.3-t3 by .to~.~Q t~. Irld~.I' of t~. OD~ fo~ t~e "@W ~ •• ~u,.t ~~o~ AI .1" t~~. g-'~~k a~rl .IY. Rt I"rl t~. ~~10~.tY '.yel of t~4. ~eaue.t .~ 4t. OW" 008. e.e. f.qu~. 3.8). If I QU.U. I'~eldy 1 ••• tS, t~8ce it yi. t~. ~.14"k. IIC~ DOR .~d ." •• ~t t~. ~.w ~eQu •• t 4., itt I~ D~e~~fat. o'ace eith.~ IS the '1St It 4tl o~10~1tv '.vel o~ It t~e ."d (.~oW" bv I 0 '4"k), w~4e~eve~ eo~ •• f1~.t. ~ •• t bv .,o~~a' .ub-~out4"e ~.tu~~. i" 0" ~.tu~"~ t~e eaJl~"o ~out.~. ~. o~ eou~.e U"lwa~e flet t~lt the .,'.It .t.e, 3 d4ff.~.~c. 4. 1mmlt'~'I', H 4" .h""~ e ••• u"tU, I" Q.~'~I" the of the exthe but WI- d~4v8~ mlY .ti" ~ot be cll'ed, si"ce t~. o~ 5 Ire t~ ••• ml •. ~ow.ye~ at t~i. t1~e, u.e~ ~outi". c.".do "o~h1"Q d~1Y.~ •• t1.fte., U. ~'Que't. the t"'. e~og~lm 1. ~eC8"ed to ce~t1"ue ftt 00· e~.tio"., u"ti" I. the ~e.u't of 8" 4"te~~u~t' t~e d~1ve~ ~.c.". the ~o"ito~ pouti.,. vi. the Comet.t40., q.tu~~ 4., the DDB. It doe. thi. w4t~ R'Q •• te~. It t~. i"t'r~uct 'Ived 0" the .tlck ."d R~ Iglf~ •• t to t~. ODe Idd~e... It. bUlv f'la ~owev.~, •• ~ot c'el~.d • I~d "oth4"o ~8~ yet ~ee" de~e .bout fu~th.r ~'QU •• tl ~os.4b'v .ti" wa4ti~a 1~ a aueue. - O~1ve~ , OeQueuef"QI It ~. t~.~.fo~. t~. MO"~to~ ~out.~.IS ~'loo"'1b4'4tv to e"thlt the dPfv.~ ••• tl~t.d u~o~ ft • .,ext tl.k 1f ."v. 'o~ t~1i I e.t, to S.CO~ •• u •• d, "o~~a"y_ e~eceded bv 1 •• ve of the co"te"t. of R~ .4~c. t~e 'oUt1"8 "e.ds the 008 .dd~ •••. fo~ it. 'It.~ c~oc"s.~Q a"d thi. c~" be 'Olt t" the ~o •• 4hl. d~.v.r reca". T~e ocp.~at~o~ of S.C~Q i • • 1.0 out'4"ed 4" i1au~. ]-7 I"d CO" •• sts of the fo"owf"o stees. .u~e Extr.ct the dr4vI~ Idd~.s. f~o~ t~e nO~ a1Ye" by R~ I"e C'.I~ ft. fllo • th4. w1" be ~e'8t 1f I"Ot"'.' t •• k 1. 4" ,i"e It .te~ 4. Check 3. t~e ~-l1"k ~t~e~w4,. ~e •• t the 1" the R~ Dn~ a"ri 4f to the Q-'f"k t~48 eo~t."t 4, 0, exit. I.,d c, •• , Q-'1~k. u.~"~ the "ew ~0 value (~o~"t1"g to the OO~ to be '.~vfced with." the a'~eldv e.t.b'fs~ed o~io~.tv tOlhow the "ew ~~~ver se~viee the D~eviouslv ,aved v.lue ."d ~etu~" to S.CDS at stec 2 to ~elt.~t thp. d~.Ye~. ,eOu,"ce), ~eQu.~ed ~ •• et R~ f~o~ AOI1" the saved ~.tu~" add~e'., thi. t.~e from the S.COQ e.ll. e"abl •• t"'e dr.v.~ t~ exit to t~~ ~e~4to~ ~outi"e 8t t~e aD~~oor.ate oo4~t f~o~ w~4c~ 4t CIM restore A0 I"d eOMt4Mue 4tl lervtee to the Uler. ~heM 4t cO~D'etel, the Reo41ter COMteMts leved bv the d~.ver, es Moted ebev8, ere reltored el Dert of t~. "orme' croQre~ ~eee" ProceSI. (lee iioure 3-9). It .heu'd b@ meMt10Med thet both S.eDS ,"d S.r.D~ edJust Drioritv 'eve". No~me"y both oDerate et th@ cal' 'eve', heMe. S~CDQ ~artfeu'er'v beoiMI bv droDoiMO dO~M fro~ the dev(ce ,eve' 14Mce the Mo"ftor routf"e 4. reea"ed from i"terru~t~ Mowever both ~erform i'aa checks aMd fer safetv, they r,i" the 'eve, to' te~oorarf'Y whi'e thev do 10 pOlsiblv eM uMMecesserv feeture tM the curre"t stet, of ~OS dev,'oD~eMt_ el a IfMole.user .4"Qle-talk IYstem, it 4s t"e'ude~ "everthel.l. eQef"lt DOlltb'e future med(ficatfo"s. • / OOS3.RNn 3.2 tlO p, G!.j'-l !5 . P~oce •• . i"Q The D4~po,e oj th~. leet4~n 41 t~ e~.~4~' e.c~ ~f t~e c~~mo" 1/0 o~eeel'1na ~out4ne, 1" detli' w1t~4" the conteKt of the ove~a" Dh1'0~oohY d4~cu •• ed 4n "ction 3.1. Te 4"u.t~ate the aane~.l effect UDon t~. ,v.te~, t~e ~out1~e8 ca"ed bv a u,.~ c~oQ~a~~.no ba.4ea"v .t t~ •• TRAN '.vel wf" b. ha~ dled .1 e~ 1nt~oductto" i~ .ect40n 3.2.1. seet40n 3.2.2 w4ll t~p.n .xpand UDon the ba.ic patte~" bv ~e,c~4~.no the ~outine. ca"ed fo~ no~ma' D~oe ••• 1na et tha .READ/.WRIT! 'eve' •. T~e ~e~a4"1nQ gene~a' 1/0 ~~du'e. fo~ ~endo~ accel' and loee4., oee~.t40n. e~e cove~ed 4n .ection, ~.3 & 3.'. It ,heu'd be noted t~at a" t~. module., be4ng cotent1a"v (the .~EAD/,WRtTF e~oce •• o, eu~~,nt'v exeeeted), u., tae~n4au,. di.eus.ed in leetion 2.3 and a. 1/0 MOdule. 4"ce~~0~ate conee~t. Ihown 1n I'etion 3~1 (oa't~cu'e~· 1v d'1ve~ ca"1nq 1l'u.t~ated 1" •• et40n 3.t.2.'). Hence c~ol'.~.fe~ene1"Q ~o the • • • actions bv the ~eade~ wi" b. a •• umed wh.~. not g4ven. non·~~14dent A,' the ~out4nel Mav take advantaoe of p •• sed ~v t~, EMT hand'e~ a. fol,ow •• ~eg4.te, eontents Add~e.s ef,the D~B fo~ the dats.et to be •• ~v1eed ql • 8tack add~e •• of the f1,.t el" ea~a~.t.~, 1.e., the add~es. of the R0 • u.~,.l.nk.bleek. q2 • P~og~em ea" add~.s. R! • p~oee •• o~ StatuI R.g4.te~ add~ ••• to, -2) At the has4e 'eve' of 1/0. the u.e~ me~e'v re~u~rel the Mon1to~ to control the ooe~ation. a device-rl~.v~~ to oe~fo,~ di"ct trensfe,s of dat, between h1. D~Og~a~ area and the d~v1ce. The o~og~am 1t,e'f ca,,1e. out e" the p~oees.1"o of the rlata ~eQu1rerl. Th11 f. accomplished bv ft ea" to the .TRAN ~eut1ne. However. before any 1/0 o~e~ation ean be effecte~, the prOQ~em M~.t not~iy the Mon~tor oi it. reQu1~e. m.nta bv ea"inQ .INIT to 1nftia,ize the .e~,o~~1.t8 dateset? Ind mek@ the ~eee,.a~v devtee d~1ve~ aveilab'e 1n ~e~o~v. 8etwe~" t~.n.f.~ ~eou8sta, the c~eo~em ~av ea" ,WAIT t~ 8n. aur. the t~ansfa~ ~a8 be.n· eomoleted befo~e o~oeeed4nQ. w~en a" t~ensfe~s heve be@n done, t~e d~fv'~ and ~atal.t 'inkaee .~e ~emoved bv ~ .~LSE ea". The ~eau'tinQ o~o~~e~ out'i~. i. oive" und.~ .TQAN 4n the P~oQram~e~l. ~andbook. of DOS3.RNO p'G£3"-18 T~ •• ~.tT p~oe.llo~ •• '"eluded .~ t~. EMT ~.~dle~ e"d w., dilculled .f" seet'o~ . 2.2.1. T~e othe~ t~~fte ~outtl'les .~e dese~ibed t" the fo"ewf"~ oa~ae~4p~l • • 1 "oted above, the p~il'lc.pal fu"et4o"s of the ~I~IT o~oce, IO~ .~eto _"lUre that th~ d~4ve~ io~ ,~. deviee ~eeuf~ed by a us.~ data.et fs loaded i"to ~emo~v if "ece'8a~v al'ld to co""eet. 4t to a D~og~am Li!'!k-b10ek deff"4!'!Q th, de~aset v4a a DDB with,!'! the ~o"fto~. It a'lo eets the dev4ee.4"te~~uDt y.eto~ • • cco~d'!'!Qly. Seaue~cel Cal1."o The D~oe~am cal1f~Q seau.~e. ~ov !MT 'S as follow., .lN~BLK,-CSP) e ,PASS LtNK.~LnCK ADDRESS ,CALL .tNtT . Pr-oee,,4f11«!1' Th. leQu.~ce of ooer-at'o", eep~.e~ eut by the .INIT opoees1"1" .s outH"ed below. a~d 4• .fu~t"'e,. .• "u'trated 4" f'Qu~e 3-10. The state of ~emo~v 0" comDlet'o" i. g,ve ... 4" ffgu~e :S-11. Co11ect the Li"k-bloek add~e., e"d elee~ .t f!"o~ the .taek bv ~ov'nQ the saved uee~ ~eQf.ters dow~. Set a oo1"te,. to the .ta~t of the ~Ol'ltto~ DD~ cha'l'! as stored ." t"'. SVT ( •• e •• cttO" 2.1.1] t~e ,,"k.wopd i~ the L,"k-bloek 1. "0"-0, cheek 4f ft. cOl'ltel'!t pO,l'Its to a vftl.d o~e bv sea,.eh4"o the DOe ehatl'! a"d 4g!,!0~. 4f not. 11 Oth.,.w'.e t",4. eould be a ,..-.",it. Re'ease a"y valid fnter~allv establi''''ed buffer8 ""ked to the OOB, e.~., data buffer, File I",fo~m8t.ol'l aloek, ~ft-~ao (Ie~. c~a~ter 4), etc. Set uo to use t~e same Or')S aQa'". 4. If."o DOe •• currently established, cl~fm a buff.r U"'t f~om fr-ee eo~e, 4f aveflab'e v4a S.GTB, and ',nk ft to t"'e Mon4top chaf". ~. C'ea" ule~ - - t~e OD~ ""Ik. completely and .tore 'ts ftdrl!"ess 4" PlGE3-17 e. u,t"Q t~e LOQ.eal NI~e from t~e ule~ the Olvice AI,.g~me"t Tabl@ fo~ a vllid e"trY Caee leetio" 3.1.4.2). tf feu"d, ex~r,et the "Ime ~f I"Y d~ive~ IDecified a"d Itore I ooi"ter to t~e e~try i" t~e 008. lf~k-b1oek, 7. dltl.et lel~ch Ot~e~w.ae Qet the driver "ame from t~e l."k-b10ek. W~e" "one .1 ~ive~, el1, oDe~ato~ Actio" Cerror ~ell.oe '~03 - lee eha~ter 7). If • retu," t~e" ~eeu~I' a ".w eO"lo" ala4Q"~."t ~ay ~Ive bee" ~Ide, 10 return to Itee e I"d eh@ek agAt". Sel'~h.th. DOL. CI.e leet~o~ 2.1.3) f~r th, d~.v.~ IDeeifi.d (1). CI1' OO@'ltO~ letio" a, f" Iteo 7 fo~ I drfver "Ime whfeh doel "ot •••• t. Ot~.~w.le GO to 'teD l~ the oDL I~OWI t~. d~ive' to be a,r •• dy 4" ~.morv. U""., . F~om . • switch ,et 1" itl I"terface Tabl. Cse@ aec. tio" 3.1.1), v.rffy the ah111tY of a 'oaded d~fv.~ to IUDoort more tha" one dataset It a ti~e a"d o~ft the lOld D~OC'II ff Iltflfactory. Otherwise .earch th. ~O"tto, chain to e~lure that "0 other ODe i. a.soe.at.d ~fth the la~~ dr4ver, el~'4"a for 8 "IW 1'lfQ"~.nt IS f" IteD , if "eeel.lry. UI~"O the DOL ~niormetfo" on the drive~l. 'ocatio" thl Iv'tl~ ~evfce, elA4~ , buffer o~ drfv~r I.,e 9". from f'ee core. If "one fs ev.i',b1e for thil, or io~ the Oo~ f" stee 6, take 8"V us@r e~ror exit IUDDli.d in the link-block or, faf'.~o t~fs, ca" I flt,1 e~~or tF~07). 11. PreDare the no~ for a read-trl",ilr 4"to the ell. imed buffer from the 'Ylte~.devfee b.led uoon the OOl i"for~~t40" and us~nQ the .a~e routf~e as SAM Clee .ectio" 2.3.4) fo~ handling tra"sfe~ eO~D'e. tio". "10 .et the OoA busy fllo. Save 1.~n1iicI"t Reg4st.r co"te"tl e"d vi. S.COR, el" the SYlte~.devfce driver. _CAl' .WAIT u"t.' t1o"e CIS i"dicated by elearlnce of the ~oB bUIY f,a" in the SAM .eauence). ....... ----- ... 1 • . T~e dr.ver fo~ a cO"lole ~ee·33 Teletyoe considers two devieel KB ,nd PT wfth different entrY Def"ts. The OOL howev.r O~'y showl ~B' ~e"ee the seArCh for PT 'ooks fo~ t~i. 11"0'e e~t~y. T~e ,e'ey~"t entrY ~oi~t fo~ device PT i. com~uted f~o~ t~e e~try ~oi"t of device KB s4"ce the I,me dr4ver cent.f"_ both. ~" comD1et40~, .et t~e D~L to .~e", t~e CO~e 'oes· the d~4ve~ e"d us4~o 4"fo~~st4o".f~0~ t~e d~4ver i~terf.ee teb'e .et UD the dev4ee ."te~ruDt veetor. Cexeeet for 00".01e ty~e"'~4te~ a al~eady eo""eeted to the re.4de"t Kevbo.~d L•• te"e~ Clee leetio", e.3» ttO" of C'e.~ the buffer addre.1 fro~ t~e ~o~ to show th.t ~o data buffer h•• vat bee~ attached .~d relet f~to the ODA "Drfver Addre.s'. COllect a!'ld store the ~e~fee u"it fro~ the nAT or Ule~ Lf~k-b'oek as SDa DrO.,r •• te. 1~. Teke the SYsteM f.it to re'eSae ~he ''''eo Buffe~ if "eCeSlarY, ~e.tore Dro~rs~ ~eo4It.rs saved bv the !~T H.",dler e",d retur",. Comme~t'l The re-e",tra"ev of the .INIT Droees.or merit. further dis- eus,ion~ . The Mo~Uor S.GT8 rout1!'1e is C.• , 'e'" too~tai!'l t"'e buffers for t"'e DDB e",d driver a",d thfs doe. ~ot Droteet ft.o.~"'.t ~!'Iterru~t (a.e seet.o!'l ?'.2)~ As ~ result, .INtT il set to be !'lot r.·."tr.!'It wl'le!'l i" the SW.D Buffer C, • • • aetic!'l 2.3.1). However t"'e .,roteetio~ does !'lot oreve!'lt ;e·.~t~v 4f .INIT 4s made re.ide"'t. T"'is •• "'c oroblem U!'lder DOS eUr~e"t1Y .4"oe 0",1v 14"o'e-t.skf~O •• cerm.tted t~e.u.e~ croar.", •• "ct ree!".~ (4~~'ted by .teo 12). Navsrthe'e •• ear. ta ~.e.s.arv f01,ow1",0 .!'IV ~o"ftor modif4c.tio" for re.'-time u •• oe. •• ,i ."0 CTIU) The .TRAN Mo",4tor ca" e"ab'.s t"'e user to cerform direct tra~sf.~s. ~etwee" , deviee a"d • memOrY 8~ea w.t~out i~ter mediate Mo"itor bufferi"o. T~e s1ze of t~e t~a~lfer 4s 'i",Ued ~""v. by the eao.eftv ot a si~~'e \II~rd-eou"'t C6~'O. T"'a ~o!'l1tor however, exerefae. fta ",orma1 cO!'ltro1 over the deva tee, 4~e~, a"owi!'lo the tra"sfer O"'Y if the driver i. eurr."t,; 4dle ."d Qu.ueino the reoueat otherwi.e. It must be ",oted h~wever t"'.t .T~A~ allowS a~.o'ute aeeess to bulk-'teraoe deviee.. t"d4.crtmi~ate use f!'l t~4s ~elDeet c." eorruot the ftle·structurf"o of sueh ~evfees C.ee ch.ote~ 4). The .TRAN Droee •• or reQuires the oroora'" to parameters for the transfer bv me8"'S of a 8UO~'Y eo~tro' TqA~ab1oek whic~ ~ •• 41'u.t~.t.d fop p.f.p.~c. It f.au~. 3-12, B,4.f'v 4t. 4. to I"ow.t~. u•• ~ to detaf' t~e devfe' a~d ~.~o'V .dd, ••••• fze aP'ld dfpecttoP'l of the t'IP'I,fe, I"d to .llow the MOP'lite, to ,etu,P'I 'CltU' f~fo'~lt.oP'l (fo, fu~t~e~ d.ta.', .ee t~. p,oorlm~.'" ~I"dbook', The addr ••• ef t~. bloek 4. ~1"ld a. I" l'au~'P'lt tP'l the ell' .eQUIP'lc. I. fel'ow.' ~UPDO" MOV MOV *TRAB~K.-tSP) *LNK8L~,.tSP) E~T 10 ,PASS TRA~.~LnC~ AOORESS ,tOfNTI'V OATAS!T ,CALL ,TR4N P,oee •• 4P'1o, Th. "QueP'lc, 10r .TRAN D'oe •••• ~a t. r.1atively .t'atahtfo,· wlrd Ie P'le d.lopa~ t. P'leeded. Bal1cal1y t~e Ite~. a'. a • • howP'l be1ewi . . Extract the driy.~ Idd~e'l fro~ the ~08 IP'ld atore t~e TRAN-block Idd".1 fP'l the u.er LiP'le 4dd,e., wo~d of the OOB, Clee, the ell' I'QUMIP'ltl fro~ the Itack by ~oyfP'lQ leved DPOO'I~ Reatlt.r. dowP'l, ~ove t~e t,IP'lli.r eOP'ltrol Da,a~.terl f'o~ the TRAN-block fP'lto the DDB (with w9~d.eouP'lt ",eaated), At th. 'I~' time cheek for t~v8'fd ce" al fo"ow •• 1".01' fu~cttcP'l fo, device , f~e-D,.tP'lt.P' e, (e,o" read fro ... IP'lvI1fd fu~etfoP'l Fop (a) eP'ld (~) fOP'lor. el" by re~urnfP'l~ .r~o, ItltUS fP'l TRAN-b'ock 'P'ld exft. For (b) ca" fIt., e,Ilor (F003) r.- 3. S.t th. Qoe ComD]ettOP'l Ret~,",R~ a"d ~1 's ou'ped ~or I d~1ve, t"I"lf ... ell' a~d g~ to S,COS. ~h1'e wa1tfno, ,e.to,e .,ved ~,.oepa~ Reoi.te,. IP'ld ,.el" the ~"oopa~. 4. ~h.P'I !. RetuPP'l I fleo to,the us., i" t~e_ TRAN-block for ~'IP'llfe,. of DI,ity ''''01''1 'P'ld .1mil~r'v I~V ."como,ete Wo~d·Cou~t ('1 • Dos4tive vllue) if eft~e, of thele IDo.a, •• P'I t~. DDB. h. "cI"ed by t~e driver, cll' s.eo~ to ~.oueue Cle.r t~e DO~ AusV F1I" aP'ld ~uffe, A~d,.e.s (P'lot • MOP'l.to, buffe~', Tak. the SVlte'" Exit to 'eturP'l to PAIi£3-20 CO",lIIe"'te • • TRAN 1. ~ •• nt~."t .t al, t.~e., ~eoa~dles. ef t~e C'~"'8ne" ty ef ft. te~.-~ ••• d."'e.. Hew.ve~ ~ee.u •• ef ft. 4~t,~"'edf • • ~. ~.tu~~ te t~. u •• ~ .t .teo 3, • fOllewf"a .WAIT i. advi.,d befo~ • • 4th.~ the T~an·bleek o~ the data a~e8 4. e~e c •••• d fu~t~.~. fRLS) T~' .RLSE.Dree ••• o~ b •• ieallv.De~fo~"' •. the fnve~ •• fu"etie" of .tN!T. it ~elea ••• the d~iye~ D~ovfd.d ~h,t no et~.~ data.et •• 'ttll u.ino ft a",d that it i. "et ~.~~.n~ntlY ~.'4. d,nt. It the" ~.tu~n. the ~oe byffe~ t~ f~~e eo~. e"d un,4nk. the u,.~ Li"k-block. Hene. f~o'" thf, Dei",t, the ~o",i tor feraets the ext'te",c. ef the dat •• et until ~.~h'D' a •• cen~ .INIT ~e.to~., it. .RLSE ~a. "e ~ec"a"1s~ fe~ handlino ,till-eo." bu'k·'te~.o. fil •• , howev.~ 4t do., ee~fo~'" ba,ie .CLOSE oee~.t.e~, e", .i"'Dl.~ deyicel. c."i",o.eau.ncel .RLSE •• cI"ed by. ~OV *LN~BLK,-(S~) E~T . 1 ,PASS ,CALL LN~.8LOeK ADO~ .~LSE . p,.oee •• 4MtI Th. "QU.",C. ef oo.~ation. fo~ ~LS i, fllu't~at,d i~ 3-12. The basic steDs a~el 1. Save the L.n~-b,ock stack. E.t~act the add~... dr.ye~ end .dd~e •• ~e~oye f~o~ the f.ou~e it f~e'" OO~. ~. Cheek whet~e~ a ~o"fto~ buffe~ is st." attached to the 008 indicatinG ~h.t ne .eL~S~ ~I' ~een oe~ fo~",ed. _Ge ~o ,t.o e 4f ~ot. C." fatel e~~o~ fF~05) if a flao ;n the d~4ver 4"t.~fae. tabl.·f.ee .,etio" 3.3.1) .how, ft, d.viee te b. ff'e-'t~uctu~.d) othe~wfs •• ~. Set the DO~ COMeletio" R@tu~" 4n ca., ~evfee actie" i. n,.ded, (u.fno the .ay.d ,..tu~ned .dd,. ••• f~o~ • ~S~ cal' te eau.e executien of en em~edded Iho~t fe~m ef the S4M d~ive~ ee~Dletfon •• ouenee - lee DOS3.~NO •• ctio", 2.3.4). Oete~~i~~ w~et~e~ t~. 'alt oc.~.tion O~ t~. eata •• t w.I .outout ."'d, ~~~n w~.!~.~ anv y~l~d data st." ~am •• nl in t~. Mon1te~ buff.~ rb •• ed uoon t~e y"ue t~e ya~ •• bl. oefnta~ Ito~ad in t~a OOB D~.ve~ Wo~d Count'. If 10, laya t~e OOA ad~~el' anrl its 8uIV Fl,g ce",tant a"'d call t~. ~P.y.P to eMetv t~e bUffep yi, S.CDB. Call .WAIT unti' ffnf'hed. of ~e'a'ie t~e Menfte~ buff.~, 41 ,~c~oe'4'te, to f~e. eo~e yia s.~Le,.u.4"O tha If Ie Ihown II t~e d~ive~ Itandl~d 8. 1" its Sa,pc~ the dp4ye~ DOL led~ell i"ta~face t,b'e. fo~ the ent~v a, t~lt ee"'t81~fno 1" the ODe. t~e 18ma W~e" found, t~ace t~e Mo~.to~ 009 chafn fe~ oOI,fb1. otha~ Ule~1 of t~e sl~e d~.yap raeafn a"owfne foP tha dUll natu~e of t~e cOnso'e A~R.33 dpiye~ ,.. feotnotel 4n ,ectton 3.2.11). If Inv, feno~e .ta~ 8. f' t~e ,01. ulep~ 8n~ the nOL enft, d~4ve~ .1 not oe~manentlv ~es.· ~.~t, ~.,.t the davfc. f"t.~~uDt Yaeto~1 to t~80 0" e~~o~, c1.a~ the d~fve~11 co~e arld~es' fn the ~OL Ind ~.tuPn t~a buff.~ 4t eccuc4.1 to f~ee eo~e. Wh.n t~v t~fl Ihowl dltl'.~ t~at Un1fnk the O~B fpom the Mo"4to~ chafn Ind pe'e.l. ttl buffap to f~ee co~a. Take. "O~Ma' SVltem Exit to ~etu~n to the call4nG C'OQ~.m~ Com",e"tl. Sfnce .~LSE usel S.RLR wfth I.m~l~~ vUl"e~a~f11tv.to that of S.GT8. the ~ema~~s in the "It oa,aQPloh of lection ~.2.t.t 1'10 aoelv he~ •• 3.2.2 No~m.' 1/0 P~oc ••• 4"Q As d1se~.s.d i" "etfo" J.l.1. the u•• , w~o deei not wish to eon •• de~ DMYeical dey4ce •• nd reaui~e. ~o~e '8ry1ce f~o~ the ~0"4te~ cerfo~m •• eaue"tf.' 1/0 oD.r.tto" • • t t~. REAO/WRITE '.yal~ I" ~"DO"" to .~E&D or .WRITE e."., the ~o~~tor tr.".f.~. dati, for~.tted to ." •• t."t .o.effted bv the u•• ~, betw.e" • y•• r '1~e of d.Yt~.-1"dacend.~t .tze a"d 4t. OW" f~ter".l buffer which i. fill.d or .~ct4.d bv the d~vice-dr~ver ,. "ee •••• ~v. Pr~or to th' tr."~fer., • e.l1 to .O'EN e.t.blt.h •• the ".e •••• 'v eo"dttio". for o~.r.tto". w!t~ .~v d'v1~ •• Simil.rlv .eLqsE .".u~ •• or~c.r ela'"-uD .fter tha tr.".f.~. have ba." eo~eletad f" .,, e..... Th. fol10wf"g carag~aDh' a.ami". th •• e funetfo". i" mora data.,. I" .act40" 3.2.1.1 4t w~ •.• how" that the .r~IT call ~erelv .".bl,. the uler to a •• oet.t. the dat •• et with tha driv.r to eerv1ee ~t. Tha .OPEN e.l1 ~. Drov1ded, ~" aa"eral, a. t~e mel"' wherebY he CI" Dr4me the dr.ver ."d al.o ~aau •• t thet e.tab'i.h~."t of tha 4nt.rn81 Mo"itor buffar i" rald."a •• for the t~.".fer. to eom.~ I" Dlrtfeul.r, .0oE~ ~.k •• fflc. on bu'k-.to~'Qa dev1ea. av •• 'abla for the •• t~.n.f.r., a. delc;ribed 'at,r i" .eet,ton. 4.5.1. A'tho",gh ~he e." fs n,t striet'v "eeee.e~Y axeaDt for t~. 'atter Du~~o.e, ft. uee 1" a". ~ •• a~ fs . r.eom'!'.nded f" the 4"tep'e.t of devfca-4"deDendent Droor.~mf"a. C."i~a Seaueneel Tha ,.'11"~ •• auene, for .OPEN reaufre •. the.u.ar to erovfde e. Fne-bloek with'n t,l" ~roor~m, whfe~ f., f11u.t,r.te~ at fioure 4.15 ('1"ee 1t. or4"0101' DurDo.e 1. more 'coP'ocrfate to f4,e-.trueturad ocerat.o~.'. For the_o~"er.' e,.e, it e".b'a. the u •• ~ to .how tha i"t.nded tra".fe~ dfr.etfo" and to .ucelr ." ,r~o~ exit ff he w~.h... The ~e"era' fo~~ of the ca" 4s as fol'owll MOV .COOE~FILBLK.2 *FILBLK •• (S') MOV *LNKBLK,-(S') ~OV E~T Ie ,SET MOW ODEN CODE 'PASS FILE~BLOCK & ••• r ••• LINK BLOCK AnDRESS!! ,CALL .OPE~ -...../ P4Gf3-23 ~/ "CODE" 4" this •• auence i" faet ide"tifi.. d4ff.~e"t 10~~1 of .OP~N c~ovided mli"'v .oaf~ fo~ f,ex4bi'4tv in ~a"d'i"Q bu'k-~to~lae f1'el(l). Fe~ the gene~.' elle, thei~ .ffect 11 .1 fellewsi 1• Open I" ~x1'ti"O file fe~ updlte (OPENV).- .~~'.'I beth i"cut I"d.outout. Sine' ~o,t 14~o'e device. (."e'ud1"~ magnetic tloe beeau.e ef inhe~e~t O~ob. "~I) el""et .u'ta1~ both d1~ectio"., this fo~m of ~OPEN 11 vI'id 0" ~i, ••• t~uetu~.d·d.vfc'l ~"'y. ~~e.t. I "ew ,eoue"t~a' file (OPEN"' - no~mal'y Drecedel a" .WRITE ~pe~at40" •• It clu.e. the •• tt~"Q uo Qf I" e~~tv ~nte~n.'bufi'r •. tt ce"e~a"v ~e.ults 1" I elll to I "o"-fi,e.ori."ted dlvfee fo~ the eutout e~ .ome~."it1a'11."Q dltl .ueh as Du"eh lelde~ 3. o~ cr4nte~ fo~m-f.ed. Exte"d I" ex •• tf"o leQue"t4ll ff'e (OP!N!) Itea II OPEN" en "0"-f4'e-or.e~ted devieel~ eoe~ Ope" I" eX.ltf~Q f4'e fo~ 4n o ut (OPE~I' - f. uled oe"e~I"v before I" .READ ~eauestl. It U.UI"V result. 4" I el" to the driYe~ fo~ 8 "e"-if'e dev'ce to eheek fts reldf"esi. The 1"te'"I' buffer •• 'Itl~11.hed end ~v_e"O~her d~.ver ee" th1. buffe, i, fi"ed i" e"tieioatio" of the first .RE.C. ~cen I" exist1"g eo"t1ouous fill fer outeut (OPENC) - .1.ma4"'Y orQv4ded te a"ow ,ecue"tia' .WRtTE eDtratio"1 within I ~I"dem-Ieee •• _ ,reI 0" I fi'e·o~i."~ed dev1ee. 0" other deviees, it let. II OPENO. The o~"@ra'_.OPE~ croe.llor outline •• ,how" at f40ure 3.13 I"d its. Iffect 0" memo~v Ulloe is 1"ult~lt.d It figurl 3-14. Blliel"v it fellowl the leCUe"ce e4ve~ belowl 1. ~xtr.et the dr1v8r address f~om the ~D~, Slve the ~.ramete~s t.mp~r8r.'v." t~e O~B (Uler Lf"e elll ....... --- ..... 1 • . The co,del are a"otted on the baai. t~at bit 1 ;"rl4~ates a 14l,-tyce. dedicated to output a"d bit 2 11m4'.rlv to fnDut Cae • • 'so Foot"ote to Seet1e" 3.3.2). 'ddre •• 'Oevie. Sloek .lot.' .~d cl •• ~.uc .t.ck by mov4no •• ved croQra~ Re~tst.rs dow". the C~.ck th. va'i~4ty ef the code 1" t~e user File-block, .1.0 whether ft. tmc14ed d4r.ctfon 1. luft'bl. for the .tt8e~ed ~r4ver (us."~ I" t"~tca. tor t" ttl .t."dlrd i"terf'ee teble • see Seetto" 3.3.1). f,"u,.e t" eft"'e,. ee •• , e,.1' e fete' .rrO,. (F"lt). '0,., Ch.ek th' Oce" t~d4eeto,. '" the DOB Stetu. wo,.d. If ~l" •• dY .et to ."'ow '.OPE~ ~es bee" c,,"ed wfthout 8 lub.eQu'nt .CLOSE, •• tt to t~. u",.DroQ"'~ with ffle ,,.ro,. ~ e • • t.tus ce" e fete' .,.ro,. (,012) tf "0 eddres. for the "etu"" t • • UDDli.d. or 4. D.t.rmine the •• ,e of th. 'nt."n,l d.te-buff." "eeded by, r.ie,.en~e t~ e .~en~ard for the devtee eo"t'f"ed tn the drfver tntel"face table e"d cla4m the ".e •••• ry Icec. fl"o~ fl"" ~ore, If "o~ ••• ey.fl.bl., take the lt~k.b'oek e~4t 4f ~fve~ or othe,.wi.e c.l1 fltel errol" (F007). !5. St~r. the Itart addre •• o~ the bufie~ f" .nd ele.I" the buffer C~.inly fer out~ut). t~e OOA 'rem ,cDI"ocr4ate indicator' in the d~.ve,. 4"terface t.bl., ch.ek wh.th.r the d.viee fs ff'e •• tructu"ed ~r t • • • ouen!4,' m.g~ettc t.c.. C~urt~er ectton f" .tthe" ce.e f. d"crtbed in the ~e.t De,.egrach) '. 'o~ ~on-bulk .to~'Q' devtee., verffy the e~4.tenc. en OPEN routf"e i" the ~,..ve,. end eltll it tf t"eluded v~. S~COB. U"t41 com~1et~0", return to the e.l1ina croo"em, t~e" use S.CD~ t~ de~ueue the of d,.fv.". Set the Oce~ fnd4c.tor i" the ODe .nd check fo~ 'n~ .OPEN. _ If '0, ,..cen ~"e drive" to, f'l1 the inter"" buffer, IQ.tn ".tu""i"Q to the croa"em unti' done (1). Slve I verieble eointe~ to t~e date ~ut .- ............ . 1. T".a {niti., f4" 4s omitt.d, how.~.r, fO~ Rt.r~t"alw tYDe device • • ue~ es the console ty"ewrfter 4~ o,.der to ~8ke Iny fncut echo corre.e~d to the aeeroe"tete .REAn. i" the DOe 9. e~,e~ D~ive~ wo~d Cou~t. the DDS Buay Flea 8~d teke t~e "o~~a' SYatem !xh. '~Om ~he e~eeedi~o oa~ao~~oh .t ~a" be aeen t~at t~e i"itial ehe~k."~ a"d aettino-uo of t~e 1"ter"al buffe~ acc1v to a" ,However the .~P~N c~oeeaao~ muat t~e" he"d ove~ co"tro' to the ~e'eva"t f11e-ma"aoeme"t ~odu'ea to comclete the4r_o~erat1o"s. It t~er.fo~e orecarea a" aecroer4ate f"terfaee. Thua fo~ the "or~a' ftle-or1e"te~ devfeea C04ak a"d OECtaoe), ateo e above fa followed bvi d~v.e... C,aim a t6-wo~d ~oe exte"afo" ~uffer k"ow" aa a FIB fa.e aeet.o~ 4.3.2). C'ea~ ft a~d link it to the 1)08, 8. Move the oriafnal eel' arOume"ta to te~oora~y atoraae 1" t~e laat two worda of the FI~ and atore ~~e Ooe" tyoe code a'ao i" t~e FIe. Save. OECtaca '"dieator i" the ODB uai"Q driver 4"te~faee tab'e 4"fo~",etfo", Set Reo1stera aco~oc~fate'y a. fe110w.i R0 • Addreas ~f t~e ODe Rt • 'ddreaa of the ee,' oe~e~eter. a • • tored t" the FIe R2 • ~ddr.a. of t~e OCe" tvoe code t" t~e uae~ F.'e-bloek R4 • Addres. t~e FIe. of 'recare the 8corocr1ate EMT ea" to t~e i.'e-ma"eaeme"t ,OPEN routine r.auf~e~ and eel' ~t C.ee aeetton 4.e.l'. Cl) 8.mfl~rly for a'Que"tia' ~aQ"et.etaDe, the \oeeu r I ..... ~.--.-.-.- fol1owt"O steos Si"ee t~t. ~ey re~u.r. Swao 8ufi.r ~e'easft the eall ca"~ot be made from w4t~1" the Swac Buffer. He"ce deoe"d."~ UDO~ the eurre"t 'oeat1o~ of the .OPEN ~~oeesso~ as .~own by tt. U.aae COU"t C.ee s.etto" 2.3.4), the fo"owing seQuence .a stored f" the OOB (Byte Count & eheek.um) - a"d 1s -e.e. cuted from there. 1. DECA MIB, EMT 43 ,RlSE SW.P BUFF!R IF NEC. 'CAll FOP C4' FOR FeR) Set R.af.t.,., ~C!J IU R2 R4 • •• • •• fol10w.i _dd,. ••• of th. ODe Add ..... th. e." c .... "'et .... C. " DDB) Add .. e •• of the u.... 'fl •• bloek • dd ..... of th. d .. tv ... of p,.ep.,. • • " EMT e,l' to th. ~'G"'t4e t.~e.OPEN ,.ou· C•• a 'act to" •• 7) 4" '4m4'1 .. fl.~fo~ to thlt .how" i" .t.D te I"d ~Ik. ft. 8. tf~a Co"'m.~t.1 Th, f.'e.ml".~.m."t ~odu', clll.d by the •• au."e •• d"e,.tb.d 4" _t ha. ';,.ec'd4"G PI .. la .. IDh., ~av b. 1ol~e{'f • "to the SwaD Buffe,. 1" th. nO""'ll WIV. MO,..ov.,. InY .OP!N ,.Iaue.t •• 14k,'Y to."I.ylt in t~, fy,.the,. e.'l. Th,,..fo,., 4f th, oen.,." r~ytt"' f. tt.llf u.fnQ ~h. Swao Buf~'" .ft e,n"o~. b. ell •• fffad , ...... "~,.Int. Thf. o,.ob"m doas ~ot e.f.t ff ft f. mId. ,.a.fdent, of cou,..a' n.v ... t""'a" tha otha,. o~. "ot. ,d u"de .. ~INIT ~tfl1 ,.'~.~n._~ thlt ~i el~'~ to th. U"D .. O· t.et.d S.GTB sub .. outt", fo,. buff.,. alloeltfo"_ Th, ... ml,.k. mlde .• ~ t~a ll.t D... ~o ... ~h of ,'Ct49" ~.2.t.t th,,.,fo .. e .• Dp'v .1.0 to .OP!N, '.D.cf."y .fnc. 4" ft. el.a 4~te .. medfate p,.O" .. ,m "'c"" ean ba m.de. (RIIIN) ., m.,". u"" •• a By of •• R!.D ell', the ,.,a~ t. li"e of date I' A~CII ch~"let',.. 0" bt~',.V wo,.d., wfth 0,. wfthout fo"m.ttin". A. noted ,I,.'f", the 'f".-.4ze mev be set UD to •• tf.fv. the "~ut .. am'~t. of th,_o .. o"',"' o"'y. The .READ p"oe ••• o,. "'1'~t.4~' I~ f"t,,,".l buffa' whfeh ~Ik" e, .. e of ~."v4"g_ d.~1~. p,ovf.io~.. At .•• eh .RfAO eeau •• t, th." •• fO".,dttl fpom thf' buffe .. f. D,oee"ed ,"d t"a".fe"~e~ to the U"" 14", •• ,D.efff,d by the D"O""I~ CI byte ,t • tfme fo .... ",D14efty t" ." mod,.). If the fl'lte,,",' buffa" •• \ amDttad. tha d"1v, .. fo,. tha daviee t. e.l'ed to De"fo,.M tha nace"I~V "f.,1 .nd in,o,"e ... ', thf. oeCU,., .m~.dt~t.,y f" " •• dt".,. fo,. th. l'I.xt "'Qu •• t, avel'l t~OUQh the c"OQ ... ~11 n.,d. I~e cu,.,.."tly •• t •• fted. Sim41.,.,v I. ~WqITE ,..ouest ,n,bl •• the u•• ,. to ,uDclv 1fl'la. of data whtch .,.. D"oces.ed i" lfk,.m,"I'1,,, ,nd .to"ed.f~te"""1Y untfl • full buffa,. c,~ be t,.8"lmftted to the device. Th, o"o""'m mu.t 140D1V f~fo"M.tfo" o~ t~e 1t"e to b. t".~Ifer,..dl 4t the,.efore .ffeetfvelv .eta UD • L.".·b1oc~ fo~ ~. PAG!3-21 th •• eUrDO •••. I"."o~~e1 u.aoe, the b'oek 4mmediatelY o~o c,del the ,14"e 1t cont~oll .1 a heade~, this ~I n~t eSlentt., e. e .o.ctel fo~met COumc) De~mit. it. bein~ detached. Th. fopmet of the b'ock •• fu"Y delcPfbed f" the ppoQPamm.~I, Hlndbook, toa.thep with d.tl." of the diff.,.nt t;o •• of opoc ••• t"O Ive."b'.. FOp '~fe~.ne., 4t fs 11'ustpet,d et fiGUP, 3-1~. Bp •• fly, it e"ow, the US" to De •• m,xtmum ,nd ectuel ltne.,fz •• and .o.cifv the tyoe of .poe •••• na ,.~u.p.d e"d '"Iel,. the .READ/,W~IT! DPoe,.so, to P.tup~ .tltU' d,te ~h." the tp.n.fe, 1,.ccmolete. The Idd, ••• of the b'ock •• oiven I' a ol'emet., in the ea"1"a .e~uenee fol'ow., I. MOV *LINE,-(SP) MOV *LNKBLK,.CSp) !MT 2 .PASS LINE ,'••• •••• LINK.SLOCK ADDRESSES .CALL .W~ITE (' 'O~ ,READ) Pr-oe.i.4nQI Mlny ef the ooe~ltfo", " •• ded to .epYice 'tthep ~READ o~ .WRXTE are eommOn t~ both. Fur-thermo" co"cu~rent i"out e"d outDut hfah'v 'ik.lv. A .fnol. DPoe.,.er th.~.fope ha". dle. both re~u'lt. with it. o"e entry o01nt stop.d in the two eo~p,sDondf"o l'Otl f" the MRT. The ~1.".tr'lm of thf. D'OC ••• op o.pfopml the eommo" oD.'ltton, it ca'" lub.idiapy ,outf~" ~o provide.th. functto~. u"fau' to .~E1D or .w~IT!. To de th4. a"d avoid the need fo~ eheck1"; whieh poutin, •• ~o b, e"'ed eyer-Y time, e co-pouttnfnG t.c~n1qu, i, u.ed •• follow •• .r. The functi~" e. shown ~v the EMT cede (2. .w~ITE, • • .READ) upon fn1tie' e~tr-y (~~ t~e fU"ctfon adlusted by 4 on reea" f~om dr-.ver actto" to a"ow fo~ ver-iation. It th4. tim.) 1. the basf, for the ecmputet;on ~f an aDo~oD'i8te addre •• 1n a b~."eh t.b'e w~ich f' then ee".d by e "o,me' J8R PC,XXXX. CT~ts PP'ev4de. t". c~.ek fop the u"feue ,out4"e re- auf~'d). Wh." the uniQue routine " •• d. to ,etuP" to the mainltr •• m, .t de ••• o by JSR PC,'(Sp)+. Th4. D.'fo~m. a. RTS PC 4" t~.t nroce •• 4"o eo~t4"u., f~o~ t~e add,e" •• ved on the .teek by the or-ta.",1 JS~ ee" ."d removes t~e edd~e.' f,em t~e .tack. ~owev.' 4t il re~lae~d bv t~e ad~re.s at w~4e~ U"taue 0~e,at10n • • ,. to be ~e.umed. S1~1'e~lY the mei",treem .ff'et. t~. r •• umct10" by JSR PC,'(SP'+ ."d ,oD~oor •• te bra"e~ •• in bot~ t~e m.1"str.em e"d un4~u. poutt"e. eomo1,te a"v 'oo~4no n.e •••• rY. Th~ • • ~t.r the first e~eek, t~e correet s.au."ee 18 me4ntef".d natu,."y thouG" t~e ad~~"8 PAG!~2a ~.~ed t~ • • t.ek .~d ~o fu~t~e~ e~8eki~Q is "e- 0" c •••• ~v •. Oee.~tu~e. f,om thf • • eaueoce er. D1f.hed, f" d~e •• ae~.,." bv adJu.tMe~t aecomof the .eved .d- The m.~~.t~e.m D~OC." ~. fl1u.t~ated~" f~au~e b •• 4cI,1v fO"ow. t~e outlf"_ Q~ve" below' 3-16. It 1. S.ve the u.e~ Lf"e .~d Li"k-b1oCk ed~~e.aea f" ODe .~d ~emove f,OM the atlc k the 2. Pe~fo~m th, fol'owt~a oheck. 0" the ~eeu!.t v.,tdfFo~ tv. f.f'u~e 4~ efthe~ (F011) - •• e eh.Dte~ 7 '. e •• e ca" ~u~et.o~ .~d Mode .eceDt.b1e fo~ t~e dev.ce e.wtth the dlte •• t, u.4~o dete 4~ the 'oetet.d d~ive~ ( •• Q. t~te'feee teb'e A Du"eh e.""ot (.ee ~eld, O~4"t.~ h."dle b4".~Y det., b. l. •• e~~o~ I fltel ~.v"id ~OPE~ f.'.-.t~uetu~ed ce" D~ev4ou,'y deviee., .ect.o~ 3.l.1) "o~ es" • 'f~e mAde for e" Pr.D.~e the DDA fo~ the tr.".fe~i •• Cle., Byt. COU"t & Check'um. b. Ve~ffy thet ." t"te~".1 buffer f! .ttached to the .DDB~ Jf ~o~e, beceu~e of ~o .• ~P!N 0" a "o"-ffle device, elaim O~e ~ow ."d li"k ft to the OOB (.t.~t .dd~e •• & .fle,. (if "o~e •• • ve.,.b,e, ~ec.ll the D~Og~.m v4. the uaer L.~k-blo~k ,rror .dd~e •• o~ eal, 8 flta' e"o~ (F0m7) 4f thf. f. 0). e. eol,ect the ve~~'bl~ DO~"te~ ~o the bu~ier ,.ved f~ the OO~ ~rfver Wo~d COU"t e"d ,eD'8ee ft by the, buffer ."d.'dd,e.s eomeuted f'o~ .t.~t & .ize. Set ~eftf.t.ra w~er. (b •• ed o~ ".e •••• ry) deta D•••• rl bV to ahowi R0 • ad~,e.a ef ~1 • add~ •• s ~f t~e oroQ~em the Bvt. COU"t 1" the DDB the_"e.t ~O".to~ buffer. byte (3 ff buffer emotv) ~2 • Addr ••• of the BVt8 COU"t 4" t~e us., Lt". R3 • ~od. & curre~t at.tus (mav be Iccu~ul.tfv. dur1"e the trl".fe~' R4 • Addre.s e~ t~e ~'xt byte t" the u.er Li~e PlG! 3-2~ R5 • CT.mDo~a~y W~~k •• Daca) ~. ~Il' t~a U"~~u@ ~READ/.WRlrE reuti".~ f" tha o~av4~u. ol~ae~IO~ 4" o~d@~ to a. ~"d4cltad eO Mol@te i"itil'.Zlt10n Ind collect the ff~.t rl.tl byte. 'o~ .,, dltl modI •• eou"t the byta I"d ICcu~u'ate • ehack.um 1" the DDB (t~. lett.~ fO~ .f~o'1city, whan it i. o",y ~aal'Y n.c •••• ry fo~ f~~M.ttad bfnIPy). For ASCII model ;" Dlrt4~u'ar, st~io o~ Ganarat. bit 7 (th. oa~ity bit) withf" t~. byte a. ~.eu~red' fo~ jq~Matt.d v~r$4~nl' •• t a" !nd-of.Lin. CEnLl .witeh Chy ela.rfno the user Li". Byt. Count) 4f the byte (8 • li".-delimiter. R.ea" the u"fau. ~out4"1 to como'lt@ the Droe •••• 4"G , stor.ae of the byte. If "OW at the ."d of the Monitor buff.~, ~h@e~ if '" E"d-ef-Date CEOD) occurred at ~he ~r,vfou. dlvfc. tra".f.r. In thil case, .et eooroorfete stetul f,ag, in the u •• r Lf".-bloek .nd r.ce" the o~ogr.m I, 4n .t.c It. .'so c'alr tha vlr.lb'~ co.nte~ to fore • • ub •• auent IttemDt. to f1', or .~ety the buffer to mlw. thf. eheek 1014". 8. Oth.~w4Ie lIve t~. curr."t OOf"ter valu.. i" the or u.a~ Ltna-blec~ a"d_ oraDer. to c." the 9r4ver. I"_~.rtfc~'.r, for. fi'e-structur.rl devfc. a. deff"ed 1n chloter., d.ter~4"' the ne.t d,v.ee blOCk (~he rout4"e to thf. •• ,~b.dded' ft, ge.criot1e" how.v'~ has bee" 1~c'udep in eon. t,.t in •• ctfo" '.~.2). C.,1 the ~rfv@r vfa ~.CDB end return t~ the ~roaraM u"til rlo"e~ OD~ de 0" reea,', deQueua t~. driY.~ via S.CDQ, Ch@ck for ~,vic. Dlri~Y failure or FOD CI. Ih~w" by I" une.e4~.d word COU"t r.tur".~ by the driv@r) and set 008 f'lg. aeeo~d4nQ1Y. (Aea." if ~ ff'e-.tructurld dev1e. fl b.inG u'.d, .om, cl,ln-uo end eheekf"Q 4. ".c •••• ~VJ thf. il 11.0 cover.d 4" sectio" '.~.2). ~,.tore •• v.d oofnt.rs by retur"fno to steo 4. 'orc@ retur" eft.r inftia14lat1o" t" the "e-t steD to o~ft furt~.r byte tr.n.fer .t t~f8 stege If d.v4ce ectio" is "ot Yet reQuired, or ~as bee" cheek fer t~. e"d of the uSer Line blled Uo~" .fth.r the EOl .w4teh m."t10n,d 1" It@o ~ or upon th' 8yte COU"t 4" the ODe b.4ne .~u.' to t~.t .u~p'ied by th@ o~ogra~ (u"fOrMetted ~Od@8 o"'y). If not I'.", r~c.l' ~he u"iQu@ rout4~.~ fo~ fu~t~.r chee k 4nQ Ind ee'1.et40" of the ".xt byte I. "eee.II~Y' w1t~ • retu~" at Iteo 6. co~p'et.d, PAG~·· It. 30 W~e" t~a ~~avtou •• te~ s~ow. tha t~a~.fe~ 4. eomelet., .at .tatu. f"fo~~.t40" a"d_byte CO~"ts t~Jo the u.e~ L1~.-b'~c~. S.v. the buff8r D04"te~ f" ~"~ 008 a"d elea~ ~t~ 8u1y. ".a •. qa.to,a tha .aved e,oo~a~ ~aQt.te~. f,om .~ othe~wf.. cl.a~.d .taek a"d reeall the ~~OQ,a~. From the above 'aQu,"e._.t e." ba •• e" that tha u"fau. rout'"" .re c,"ed fo~ four ~uroo.e. a"d by d.f."ftto" th •• a dfff., for ~RfAD ."d .WAtTE I '. I"itt.' ••• t.e~ e" f1~.t ."try .~~ eol'ectto" of the H ~.t byte b. Comel.tio" of 1"dfvtdual byte arec •••• "O c. ~ •• "itf.,f •• t1o" .fta, d.vic • • cttO" d. 'urther fOL eh.e~f"a ."d co"eet.o~ aue"t byt.s • 1". detafl.d t" figu,e 3-171 ~or .REAO. the ••. oc.~.tfe" • furthe~ 1. outl4"ed ~e'ow For. ffrst i"1ti.,f •• tfo", the followi"a e.'I" •• d outl L.", ef .ub •• ."d .re ta.k. are e, S,t Ute. ~.er 8y~e COU"t t t h. ....aid ilium .tlar 4f "o"e f. ofve", r.tu~" to the Dreor.,.,. wtth .~ 4"v.'fd '4"e er'o~. a. If the 1"te,~.' bu~ier 1. e~Dty c•• ,hew" by AS • 0), ~.tu~" to .teD e t" the "It.1".tr •• ~ te c.u., a fi" bv the dr4ver (01" to .ee ." !OO .et i" • prevfou •• READ) For form.tt.d bt".~y ~ode., look for tha ffr.t "0"-0 word (with t"terma~i.t. buffal" l"eft1' tf "ee •••• ry). If tht, 4. "et t •• raQuf~ed by the .form.t, ,eca" tha D'Oal"a~ with for",.t aI"~or i"dteatto". Otherwfsa .tere the Byte eOU"t fl"Om the date t" the u.a' Lf"a-b'oek. e. d' Col'.ct the f4r.t data byte for croce.sf"Q. . . . 1_ further bvte.oroce •• f~o fs ,eaut,ed fol" bf"arY data, .0 .tor. the byte a"~ I"eeall tha mef".tl".',". ~o PAG~ .3-31 For 4SCII deta. ~oweye~ the f01'owfno addft'o"e' stees ~ust be teka", refo~e t~.s eceu~stl'. a. Ignore RUBOUTS 4'" forMatted mo~es oe~4tv. if neees.erv retu~n.n~ the er~or indicetio", to the Dregrem. e"d check eCDPoor4ate 0" retu~n fre~ d~iyer ection, the me.nstree~ ea'" be recel'ed im Med1atelv for !Ol ehee~f"'Q u",'ess the 11"'e has alreedv been fil'ed in ",o~~al fo~metted ~o~es a"'d exce.s data 11 befno dtscarded. t", thfl eale, e 11"'e c04~ter peset 0'" the bes.s of "'4ne start + "'umber of bytes ~ead" would eorruet the area outside t~e 14",e orooe~, he",ce re.et the DO."t.~ to the last actual bvte of the ,tne before reca" If the Bvte Count i" the DOB end 4", the use~ l4ne ~re eaual 0'" petu~n fer edd4tione, ~Ol checks, the fOL sw4teh 's set for fo~~etted bt",e~v ocepat40ns. In. ttd. case, vartfv the Checksu,," and transmit en eeoropr1ete error to the Droara", a. ",eee.sarVI return to the ~ef".tream to recheck for buffer e",d. In e" other case. of peeel' fpo"" the me4n.t~eam, 4t. is Do,sfb'e 1", forma,ted ,,"ode. that no fu~t~ep room e.tlts in the user Lt"'e a' show" bv t~e me.fmum Bvte Count. (beceule of no 4SCIT '4"'e delt",~t,r o~ too 10"'Q e bj"erV line'. ~e"ce cheek fo~ this e"d if there fs no oPob1e M, raturn to Itee 1 to col'ect the next bvte. Otherwise return an inva'td '1ne e~por to the uler e",di '. In Norma' ~o~matted Modes, let ye to over'ev the lest ,4ne byte e"'d continue from ateo I. In Soec i al modes. reca" the croore'" ('o~ matt~d bi"arv •. the "vt, Ceul'lt ts let to the ful' lfne 'f~e to indicate how "'env bytes MUSt Iti" be ~ead' For .WRtTE, the u"ioue oDerat40"I a~e as fo"ows figur.3-18) • ..... ---- .•...• 1. If an !OL is (lee a'so seen 1" fopmatted ASCII modes • . the ""e1"Itream eheck on tha a"d of the Mo",4tor buffer is f", fact om4tted~ If the devica is a term.",,' the ooerato~ mav ,",ot be ~eedv to inout more data a. needed to refil' the Mo",4tor buffer. ~a"'ce 4", opder to Das. tha alreedv co~~1ete date to the DreQ~am es ouickly as Dossible, the "o~,,"a' oractfce of m.1'"'t'1~1"'Q date i" the bUffep at a" times may be overlooked fn this ease. PAGE 3-32 i. !~4tialilatio~ o~ f.~lt A~trv ~ecufrel t~e fol10w- f~o Ictio"11 a. If"o 8v~e COU"t il ~rovided ~y t~e D~oara~, ~etur" wft~ I~ i~vllid li"e e~~o~ "dieate ri • b. If the buffe~ hal Just bee" eOl9lo1etely e. If I" EOO WII see" 0" a orevfoul .wRIT~, recall t~. Dreara", to I~OW t~fl. ela.~.d, lero it If a for"'atted bf"arv tra"lfa~ ia recuested, Itore a" 4"terl.~e ~aO (8 "ull., f011ewed bv 1 (for bf~arv mode' a"rl the uI@r ~yta COU"t f" the 1"ter~al buffe~, Drevfded sufffcie"t ~oo~ Itfl' ~e",a."s. If "ot( reeal' the I9I.f"l~ream at .teD 7 to e~Dtv it first. Also i"ftfalfze a cheoklum to f"clude the data JUlt atored. e. 2. Collect the byte a"d for fer~atted ASCII ",odel, remove a"y oaritv bit. Save tha u.e~ Li"e Bvte COU"t Clee 2 below). ~or a" mod,a ~ut for~atted ASCIT, "0 further byte-Droeel.i"o is "eaded, merely .tore the bvte I"d retur" to ",ai"ltrea",. otherwile the fO"owi"o cheekl mUlt be earried out befere thili a. If a" !PL termf"ltor was !ee", cheek if the Uler 14"e fl emoty. If "ot a"~ the mode tl Nor",a', restere the slved user Li"e 8yte eOU"t a"d Co"tf"ue. A1IO if at li"e-e"d, foree out out to a ter~f"a' device. e. Provided the~e .1 ~oo~ t" the i"ter"al buffer, ~o,'ow ~orilo"tal TAe wfth PU~OUT a"d vertieal TAe er ferm-feed with "ul1s. Otherwise force eutout 14 rlt. 3. To re1"it4a1.ze after a dev4ee trl"sfer, c'ea~ the buif~r u"'els a".EOO was .~e", i" wh~eh ease reea" the oroQra m al 4" 1. ~or th~ for",atted ASCII mode., Derform the aetio"1 "eted 4~ '-(e). Otherwise retur" to the "'a4"stream. •• If a fo~matted ~1"ary 11"e has _bee" eo"'~'etad, stere the ehee~'um i" t~e buffe~ 8"d retu~" to check if the buffer 1, "OW fu" fo~ outDut. Otherwi.e cel'aet the ~ext bvte ~"d ~eoe.t f~o'" IteD ICe). . PiG! J-33 CO"'ft'I'~t.1 Th,_.~EAD/.WRITE D~OC~IIO~ ~etu~"S to t~e ~~oo'a~ w~e" ~eld UD fop a device t,.".f.p a • • ~OW" at .teD 8 of the ~ai"st~e .~ .,Que ... ce. Th, "O,ftII.' ,eau4,eft'le"t th.t the e,og~.ft'I De,fo'ftII . • • WAIT b'for, 'cc'l.f"~ the 1.~e t~e~efope.aoD'fe •• I" this c ••• it ,1.0 i. i~De,at1v. th.t the Ule, Li"e-b'ock i. "~t Ih."a.~ b.for •. th. t'."lie, 1. k"o~". t~ be cOft'lo1ete bac.u •• ~of t~e 1"t.~"'.d •• t. d.t • • to~'d .~ 4t~ 0" coft'loletio ... ,_it •• the DPOQPaftil's pe.Dol'Is1bil1tv to v@P4fv the accu· ,.cv ef the tp ..... f.p bv ' •• ft'l1 .... t10 ... of the .tatUI ,etuP"'ed bv th. MOl'ltto', B•• a~" of .t • • fl., RWN e.l'I"ot be brouaht 4"to t~e SW.D Buff.,. ,'though t~fl could be effected al fop oth@p poutf".. bv a... oveplav D~O~' •• , t~tl _ wou,~ ft'Ie." t~at cv would be s.c"ftced ft'Iakf"o ft i~Do.sfble to D'O~ ce •• ,ope th." o"e "auelt at • tf~e, t... the case of .RI'D/.WRtT~ thfl fa .p",ew~.t u... r •• ,fltfc. !he ~.tupeof ~h. _'o~'llf"o f"vo'ved. teo doea ~ot le"d ftl@'f to 11ft11D'e oy.,1.vf"o .a ft i. "ot .taue"tf.'. A" .'te'l'I.t4ve ",.thori ~fght be to ~ •• the Swa~ 8uffe, fop, s.v, the "'.1"lt~@.ftII ."d c,.~'" e .~e~.,et. ~uife, fo~. ule by t~e u"~Q~e poutf"es • e fe.14bl~ ao'utfo" I,nc',the c~·pout.ne ~.e""'feue cen b. aimD1v .d.eted to ~~ovid. ft. However .Qetn .1z~, DaPtfeul.~lv with the .dd4tfon ""d.d to co"tPol the extra oee,.tto", DP'V."tl the adoDtfo" ef th.s met~od. Ther~fope fo~ the D,.a."t. the .READ/.WRIT! DPoceSler mUlt fo,~ o.~t of the D"ft'I.".~tlv re.fd'"t ~o~.to' - , ... o~ e"tfp.,v u",latfafaeto,v cO".t~a."~ whe" ",Olt e,og,a~1 wf'~ oPobab1v reQuf~e ftl ae,vicel too f,eauentlv fop IwaDof"g. With p,aa,d to qWN " •• "t~."ev. 4t ftilu.t b. "oted that ft ",av .'so e." the u"~pote~ted.S.GTB ,out1 ... e. aa d~seu~led u ... der .rNIT (seet10" 3.2.1.11 ff the o'oora", do •• "ot eal1 .OPE~ f',at. 'Qa1 ... th.. .~ "0 D,obl.", f" a .1~Q'e-u •• ' sVltem, ~oP peal-time OD'P.ttO"I, the It."dard UI. of .~PEN ca" obv4ate it. ,.·."t" . . eelS) The .eL~SE ea" e~ab'~a the usep to i~for~ t~~ ~o~.to~ t~at el}I'l"e"t, tPal'l.fep ooe,.~t.o"l w4t~f'" a deta-set a,e t~ be te,~4"ated. Itl 0,oee.84"o 4"e'ud@s t~e out~ut of a !'I v data .ti', 1" the i"te,"al buffe~, a ... v ... eees.al"v I~ut-dow ... aet;ol'l 0" a ... o~.ff'e~dev4ce te.;. 'u~eh t,.il,,., 0" d.,.eetol"v elea"-u~ 0" • f4le-ol"1e"ted deviee a"d f1l'1a"v t~a re'ease of the i"tel""a1 buffer. T~e dev.ee dp4ve, a~d t~e DOB ~o~eve, ,e"'a4~ 1~ me~o,v, 14nked to the user eI"0~'5~. Thus one,a. . tio"l e!" be ,.elu~ed bV a "ew c." ~o .~PFN. A~a1", fop t~e .aMe of d,v4ee-1"'deDe"de",ee, ule of th41 ea" il reeem~e"d ed, eve~ t~ou~~ it i. ol'llv eale~t.a' fo,. f(le ooe,atio"1 . (.inca • • RLS! ca" D.rform • • CLOSE cD.r.t4o". 4" eth.~ c •••••••••• ct4on 3~2.1~3)(1). ~OV *LN~BLK,.CSP) E~T l' 'PASS LI~K.BLOCK ADDRESS 'CALL .CLOSE p,.oe.~. (ncu Th •• CLPSE crcee.,or t. outlt".d .t ffoul"' 3~lO. ,. w4th .OP!N C••••• ct4on 3.2.2.1), .CLOS! c.," .~. handled 4n4t1."v by • Q.n.~al reut4~. fer_." device •• This ~.y th.~ be fol]owe9 by. c.ll to the file-m.naoem.nt .odu1. FCL 4f the device i. f4l •• ort.nted. Th. o.n'ra' ,.outi~e u... the .eQue~c. a4ven b.lowl t. C".~ the c.l, Da(.m.tel" from d,..v.r add,. ••• f~om the OD~. .t.ck .nd g.t the Ve"ify the •• 1st.nc. of any v.,td d.tl ".~.'n.no 4n the t"t.,.nal buffe~ 4f the , •• t cD'I"atio" D.~form.d w.s eutDut (u.ino the '.st va,u. of the v.rt.bl. buff.,. Dofnter .ta,..d t" the DDB O,.4v.r Word Count by the .READ/.WRITE D,.OC"'O" C••• l •• t •• ctton»). the ca.. and the device •• check th.t no EOO h•• be.n s •• " the '.st block .~r •• dY b.en O~tDUt 4" thta e.se. Fo,. ,tn_.d fi'e. ('e ••• etto" 4.t.l), •• t the , •• t s 'ink & the DECt.D' tl".n.fer df,..etfon. If such •• f41 •• o,. •• "ted, h.. e." the d~ive,., vf. S.COB to action thia last out(1) and r.tUl"n to the e.'ltn~ croQ".~ until ~o"e. DeQu.ue t~. dr4v.,. by S.COQ 0" r.ca". cut C'ea~ the ODen.indicator in the DnB St.tu • • "d fe~. fi'.-at~uctu,..d d.vtC' e.e. ne.t D.,.a- cheek .. _- ... -- ...... The 'a.~ eutout i" f.et i • • ful' buffer - the , •• t va'. id d~ta follow.d by nu" •• 0" f41e·o~f.nt.d d.vie •• , th4. may m.a~ in the werat ce •• that t". ,a.t block of a lfnk.d f.'a is .,, nul,. A'though this is w.steful. it avoids the ".eeas1ty of ~e·aece ••• "g the DI"ev40UI block to chanQ. ita 'ast 'i"k to 0. 1. -~ .".~'" 4 f .e) ~. ~o~ ~e".ft" dev4c ••• c." t~. dfllfv.~ vf, !.CD~ if ft. eo"~.t~. , CLOSE ~out."e .s 4~dfc,t.d bv I Iwftch t" ftl .ta"d.,d 4"t.,f.c. t.b'. C••••• etio" 3.3.1). 4Q,f" ,.tUfII" to th. e."i"o e,oO~I~ u"t1' co~~'.t •• 7. U.f"o th. .tl"d.,d buff'" liz. sto'ld 4" t"'a d,!y.,.'. ."tafllf.ca . tlb'" fII""S. t"'l ."ta,.".l buff.,. te f, •• ce .. a, vi. s.RLa. . ". C,E.4t•• ,•. the DOB ~usv Fl.a ."d t.ka the u.u.' .Vlt.", •• "ot.d 4" th. ".t e''''~fII'O''', •• CLOSE c,ll 0" • d.t ••• t u,f"o I f.,.-ofll •• "ted d.v4e. ,..aut . . . . . . ubstdfefllv c'" te • ffl.-",." • .,.",."t ",edul.. ~V • • f",4",. ",.thod toth.t da.c"1b.~ .fo" .OPE~ 1" •• ett;" 3.2.2.1, th4. 41 .f~.ct'd w.th .00flleo,.4.t. d.t. o •••• d •• fe"ewI, ~0 • Add ..... of t"'. th. DDa R2 • lddfll ••• of ,Ia ~3 • Addfll ••• of t~. d,,1v.,. RA • 0".04"" Ooa~ tvoa cod. ~2 I" 'd~.tiO"' bit 15 of tha I.t '1 • u•• , L1". Add,.p..s f" the ~O~ f. OECt'De ",.,ka ... CO",,,,.,,tl' t •• a.j". ~e"~b.'.tv, ~h' rem,rk. 1" th. '.It OlfllIO"'O'" of •• cttO" 3.2.2.1, ".0 aoo'v to thA ~CLOSE ,.outf"l~ B.elu~, 8wI~ Ruff., ev,,,'avi"a (BLO) ! be ''''Ow'' f" c~.ot., AI th.t • u •• , ce" fII'.e,.ve ." o"'v.fel"v adJae."t b'oeks u~o" • bulk-stofilaQ' "'ediu'" by fII.Qu •• t4"O th. ,"oc.tio" of • ec"tiauou. ff'.. Th • fs oflloy4ded .s a "'a~"S Wh .... bv ~e ce" t""" ec• 8LnCK ce" ee.s t"'~ eree ra"do""v, The u.a.. 4da"t4ff •• I ohvlfe.' block. ~v ft. f1181.tiv. oelft40" withf" the Arel. The ,~L~CK ~roc'.I~r tflll",f .... th. fIIeQu4red b'~ck i"., 'eeeifted dtfllectio" te o~ fro'" the "o,.",al ~o,,1to,. buffe~ ,"d th." a"owl th. use" te ofllec ••• "' •• date df,..ct'v ." the buff.fII, ,.Ithe .. th." .c'u •• ,_further u",,~ce.s'rv ",ove to 0,. from the user's ow" Ire8, ~efor •. ,BLOCK 41 uled, the u.e,. "'u.t co .. ,..ctlv OPEN t~. f41. 1" o"de,. th.t the Me"4to,. c." •• tlbl.,,,, 1ts buff.,.a ,OPENU ."ow, bot~ ,..ed ."d wfllfte. ,O-ENI ."ow. It wf" '~Ia ef t"- ~ut 0"';, 0" c~m~,.t~o" .CLO~E mu.t a,.o be e.".d~ Althoua~ it wa • • ee" in .actfo" 3.2.2, th8t t~e normal t.vel e." be used for •• aue"t~al ~~oeessi"q of '"Y tVDe of f11., the .ama does n~t a~ely to the u.e of .BLOC~ for r."dOm .cc.... The ".ture of s.Que"tfal fi,e. on bulk ster.o. d.vfe •• , described 1n •• et40" •• 1.1, would make the ue. of .BLoeK too len~t~y • Droe.ss t~.t for t~e ore.e"t ft h.s not bee" 1mDl.~.nted. Ra"dom .ce •••• of eour'e, 0" oth.r d.v4e •• f' me."fngle.si w~ile the .~f'itv to use .BLOC~ e.rhao • • • • m•• n. of .eQu."tf."y Droe •••• nc data whh1n th •. Mo!'dtol" ~uffer m.G~t be. u•• ful, t~e s.'!e .ffect c.n b. obt.i"ed bV .T~AN with very lfttl. e.t~ • • ffort by the u.er, H.n~, the .BLOeK oroc.ssor onlv eceeets ea", uoon co"tfguou. fi' ••• nd r'Jects .11 ot~e~s •• f"v.'4d. RE'D/~AtT~ I . . C.l11"o S.au."c •• • BLQC~ .• ctu"'y D~ovid'l thr •• funct1onl. For ."out, it is .uff1cfent th.t t~. us.~ r.Quests the block .nd t~e inform •• t.40n 0"_ th., block .il r.~urned 10 that he c • ., ,proc.,. ht CO"t."t, '0,. outout, ~owev.,.. the u.er m~st suoDly the data b.fore it ce" be t~ansferr.d and to do thi.he must kno~ the buff.~ ,oc.t40n .nd e.,. i" .dv.nc.. Hence i~ .ddition t~ READ .nd ~RtT! • bleck, a GET ooeration 1s erov.ded for the ouroo.e~ _ To f~d~c.t. the funct.on and ,"ow the Mon.tor to r.turn 1nf9rm!t10n, t~e UI'~ sucolfel a.BlOCK-b10ek. as 1'lu.tr.ted fn ffGur. l~2~ and d.ler1bed in ~ore ~etail in t~e ProQr.m~.rl. H.ndboolc. T~1s t~e" ~ •• n. a callfnG I'QUenca •• MOY MOV !MT 'BLK~LK,-C!P) 'LNK~LK,.(SP' t1 fe"o~.i ,PASS BLOe~-BLOCK &••• , ••• LrNK-~LOCK AOO~ES!ES ,CALL .qL"CI( P~oe,slfnQ. Th. leQuenee of oe.r.tfons in the .BLOCK croce •• or 11 Quit. etr.fQ~tfo~W.~d' thus "~ 4llUltr.tion 1~ neeeSlarv. Ba.ic."y the followinG .teos are takeni t. eol1ect the addr •• s of the ut.r BLOCK-block end eleer both .rgumentl from t~e stack by movino the .ev.d Drogra~ ~.o1.t.rs down. Move the Iddr ••• of th. If ~o"ftor buff.,. into the 8LOCK.blee~. no buffer 4. let Un, no .OPE~ has ~een d~ne. ~.turn t~e a~DrODr •• t. er~o~ fn .'10 the BLOC~-bl~c~ statu. and exit •• f~ stec 7. "AGI!3-37 !.t~.ct th' buffe~ .4ze f~om thp .t."d.~d d~4v.~ f~t.~f.e. t.~,. C.ee •• etfo" 3.3.1) ,~d ,te~, ft t", the 8LOCK.b'oc~, If the ~eaue.ted fu~etfo" i. GET, D~eC"'i",g i. "'OW eo~o1.te, '0 e.it t", 8teo 1. 8' the .~~OC( reou •• t by ~etu~",i~o the .oo~o ... ~o~ flIt! 11'1 the BLOCK-b10ek It.tU. fo ... ",y ef the fo"owf",o ""0"", ea'.'" t.ki~g '''' .-it •• i" ,t,D " ~.J.et 4. o~f.te '. Th •. d.vfee, i. "'ot fil'.lt~uetu~'ef, a. shew" .~ f"d4eeto~ i", the ~~4v.~ i"t.,f.e. tab", by Th. fu",etfo" i- ,",ot ~EAD o~ WRIT~. e. Th. fi', "., b •• " 4"eo~,.ct'y oo.",.d, b ••• d UDO", the OD.", tYD' eede •• v.d f~ the FIB C••• •• etio" 4.3.2), 4.e. .OP~NU he. "~t ~~eeeed.d READ o~ WRITE, o~ .O'ENI for REAn O",'y. ""'a. t.,. of the The bloek ~.aue_ted f_ outside the a, .te~ed .~ the FIB.(whefle b10ek.0 of the fil. f. tha ff~.t e",d the '.st 4, t"us Le"'Qt"-l' Ce~out. the ebsolut. b'oek f~o~ the it.,t .to~.d .'" tha '18 .et UD the ODB io~ the t~'I'I.fe~ .~.e4. Hed. ''''d c." 'l'Id the d~iv.' to .ffeet the t~.",fe~ vi. S.COB retu~'" to the.u'" u"til do"e. _0'" ~etu"'" aueue t~e d~iv.~ vfe S.CDQ a"'d ~etu~" a"y D,~hY e,~o~ f'" the BLOCK-block ,t.tus. 7. Cl'.~ I!.h. d.- the DOB Busy F"a ."d t.ke t~e "0,~a1 SYstem e.c.u •• of the 4I'1te,med4.t. ~etu~", the u •• ~ ,gai", mu.t c." .~.IT b~fe~, ,tt.moti"o to D~ec •• s the buife, a",d it ~s a1so hi. ~'.oo".4bfl.tY to ch.ck the ~etur"'ed er~o~ statu. to e".U,e t'~I'I'fe~ ~'Qy1red ha. beel'l .ati.iact~r41Y ~_ecuted. T~' .BLnc~ D~oe ••• o~ f. a'w,ys r.e",tra",t, whateve~ fts loe.tio",. t". 3.2~4 So.c •• ' Oo .... tto"'. Two furth.~ 110 fUl'lctfo" • • ~e o~ov.ded by the ~o"'fto~ to cater fO" the f.ct th.t wh.,e d.v4ce-1I'1deoel'lrle"ce 4. g~"e~- a"v f.a.4b1. fo~ ~O~m.' d.t •• t~'"lf.~., ee~tat" d.v4ee. ~.. ~~.c41' co~tro'l w~fch.th. O~OQ~aM itaelf MU.t be 'owed to ml".oe ff the ule~ wt.h... Thul the .SP!C c.', f. a ganer.' ~ •• ". bv Wh4ch the U•• ~ c." exeret ••• uch co"tro', a"d th4a 4a dele~ibed f" .eetto" 3.2 ••• 1. It cen itt" b. uaed in the d.v4c.-4ndeoendent env.~onme"t beeeul. it .1 effectively I NOP if the devfee f" u.e doel not ~eeog"fl' the control ,oecifted. Howeve~, in o~der that the uI,r ean .votd un".ees.a~v MO"tto~ e.", and fo~ oth.r Iftuatto"1 wh.~. the o~ooraM m10ht ne.d furth.r f"fo~~.t4on on the a.lto".d dev4ce, the .STAT e"" outltn.d 4" I'etton 3~2 ••• 2, ••• v.f'ab'e. . I'. Qut~. (SPC) Aa not.d abov" the ,SP!C e.,1 fl • M"~' whe~ebV the u~.~ ~.~u •• t • d.vfc.-d~4v'r to ~.rforM •• !.~f,1 funetio" which do.a not Oe".r."v ~eauf~ • • d.t.-t~."af.~ in the no~ ma' •• na. caver.d bv the Droc ••••• fn the D~.v40u ••• etto"l. ~agn.tie taD' Rewind ••• tYOfc.' .x. mole. pete"tf."v a"v dr4va~ m.y eonta." a So.et., 'unetio" ~outt"., but th41 ,. only aat~allv_ino'ud.d wh.n me.nino'u', .• fth.~ b.c.u~. the d.viae . it.elf can ,.~.ct the funetion ~r it C'" be Ifmu,.t.d, '.Q. "thoUQh it fs not cur~ent'y im~lem.nted, • R.wind on D!C~aD' fa not out of the.Qu.stfo". Thu. the .SPEC. D~O. ce •• o~ O"'y call. the driv.r if the r o ut4"e.ta I •• " to b. ~r •• e"t ••• f"dicated t" the .t.nd.~d t"terf.ee teb'e 4" the drtv.r ~.ee •• ct~O" 3~3.1.1). Howev., the r~utfn.il ~r.s ."eedo.s not ".e.s •• r4lv m•• n th.t the driv.r can ,'w.va .at •• fv the functfo", whi', th. maonetic taD' d,4v.r, for tn.tlnca, e.n acceot a ~.w4nd ca"; it wf" net undar.tand .ome so,c1,l operetto" to ao"trol a dtlo'av •. The .~P!C oroce •• or in ft. oen.'.' wav c.nnot discrimin.te. It tl th.re-( fore tha relpon,fbi'ftv of th~ drtv.r to tonor. functionl it . do', not r.coQnfze Cle ••• etion 3.3). CI" Ca',ing SeQu.ncel Th. le.ef" funct~o" ~t~.~f i. d.ifned bv. ~o~.. • ••• o"ed a' th. need art... frOM the ranQ. 0-255. Tht. code 4. p •••• d .a .• ca" e,r.me"ter •. In some e •• ea. the fV"~tfo" .'o~. d.f~n., the u•• r's requ~re~.nt •• t" others, .ddtt40n.' 1nf~r~atie~4. needed to IUDPort t~e fu"ctton o~ eerhaol the Mo"4t~~_ Muat ~.v. the. o~~~rtunttv to retu;" .tatUI dat •• Th.p. ap. t~,p.foP' two oOI.fb1e c."f"Q •• auenees, t~e P •• ',v'"t on. fn •• ah ca •• beinQ d.ftned by t~e .eeeffie fu"etio"1 1. If O"'V the function ne.d. to be the a.p~u~.nt~ pa.~.e, th41 for~s ~/ IIAG! 3- 39 MOV .eOCE,-CSP) ~OV .LNKBLK,-ts" !MT 12 2. ,STATE T~E FUNCTION 'PASS LI~K~BLOCK A"DRESS .CALL .SPEC If 'UDDo~t i~fe~~.tfo" mu.t "80 be 'UDD1 •• d, t~. Drog~.~ .,ts uc ~ SDecie' Fu~etfo"s ~'ock, i"~'. trated at f4ou~. 3-21. T~4. eo"ta4". the codl fo~ t~e fu"et.o~ b~.fca"y I~d I"OWI a vI~tab'e 'e"Qt~ work-,Dlee as of t~41 block MOV MOV EMT ~ec ••• ary. r~ CI.e, the t~4. 1. the IrQume"ti .SPFBLK,.CSP) *LNKBLK,-CSP) 12 Id~~e •• ,PASS SP~·ALnCK &.~. 1 ••• LINK-BLOeK ADDRESS!S ,CALL .SP!C Befort t~e cIl' 4' ~ade. the datl'et ~u.t of oou~ •• b. f~f. tfa'.zed by .INIT to 'oad t~e d~.v.r into m.mory. I" qe".ra', ~owever' 4t .~ou'd not fol'ow I .OPEN u"'e.. this hi. bee" ~eaat.d by .CL08F. PI"oel •• 4"al "0 Thl .~P~C Droee" "e.d. ."u.t~at4o", 4t the .imDle steg. listed belowi t. ~erely follow. Save t~. fu"et.o~ l~aUM.~t 4" the DOB CU •• ,. Lf". 4ddre •• ) a"d cl.a, beth .,aUMe"t. f~om the .tlek. .1 thl ~.Q~-o'd.r byte of the function argU"'t"t the u.er ha. gas.ed only the eode. t~f. follow. frOM the a"otted code ,anae a"d the fact that a" address MU.t be a,.at" the" 411. Hence eheck t~ •• byt •• Move, eo~ •• o"'y .,au"'e"t,to Ryte Cou~t .~ DOe and reDlace it t" the User Li"1 Addr ••• wo~d by the add~e'l ft. new locatio". If ~, of !Mt,act the driYar Iddre •• f~o'" the no~ .nd verify the Dre'l"ee a SDect., Functio", routine t" t~. dr.ver fro'" th, flaa i" ft. i"te,faee tl~'e. If none, exit as 4" .tlD S. of Otherwile cal' the drfv.,. vta S.CD8 A"d retu~" to th, D,09ra,,,. unttl done. On returl"!, d.aueue the driver via s.ceQ. '. Cl,ar the ODA BusV ~. 4t. ~l.a a"d take t~e I"!nr",al SVlte'" Co","'e"'t •• If the d~.ve, fs e.l'ed, th~ cDe,.tto'" at .te~ 2 .bove ~ea",. th.t th~ U.,P L4",e 'd~~e.s i" t~e,DDB .lw.ys eo",t.4" • • '" addpe •• Dof"'t4"'Q to • Soee4.' Fu",et40"'. Bloek.. f.~ as the dr4v.; .s eO"ee~"ed - eVe" if t~1s ~ePe'v eo"s1sts of • • f",o'e werd ~l~ewh.pe f" the,DOB. T~. dP1~.' ea", thus as.u~e a ,t."d.P9 oroeedup. 19P extP.~tt"'a_the code eheek1",q both th.t ~h • • • • • PoPoDP.ate to 4t.elf e"'d th.t t~. ,.Qu4,.d "u"'be~ wepd. follow (th. h.G~·~vte e "oted f" .teD 2 .Q •• 4" afve. to eo"eet , •• ult) • ."d of • SPEC .i fullv ree"t,e"t ,eQ.pdle •• of it. loe.tfo" & u •• qe. However d.vfee .et4c" ~.v be ",e.ried, he"ee f~r •• fetv the .roar.m .hOuld .W'IT before DPOeeed4"Q f'" m."v e ••••• (STT) ••• t.t,d_ •• r't,~, ~he .STAT ~e" .llows th, uSer DPOQPam, to obt.4" f"'f9rm.t40~ 0" t~e devfee a d.t •• et f • • ~tu.,ly u.1"~ for • D.~tteu'.p ~U", .fte~ 4t ha. bee" 4"ft4.'41.d .'" the Ulua' wav bv .INIT. c." , The . il ",.de bv' MOV *LNKBLK,.(SP) EMT 13 'PASS LI~K~BLOCK 'OOR .CALL .STAT The .ST'T D~oces.o~ mep.ly e.treet. the releva"'t d~ta fpo~ the_ dp4v.r .s.oe •• ted,with the DD~ bv re1er,"ee to ft •• "'. terf.e. tab'e (see Seet1o" 3.3.1). The data 4. '.tu~"eri 0" tOD of the .t.c~. ~ow.vep, th~ee items .,e .uDe,iedl . 1• ",iver F.e4l4t4 •• I"die.top' Cle. Seotto", ]'_ 3.1 d.t.4, ) 2. The "'ame of the d.v1e. 1'" oaeked p.dtx-5Q1 format 3. The .4ze of the buffer -. de.~ed fop the ct.vtee·lta"da,d S4"ee o"ly o",e a'Qu"'."t t. D•••• d, the .STAT pout."e eo",. tat"1 a" .p~roD't.t. .t.ek •• huif'e ODe,atto"_ T~e Nop~a' Sv.t.", Fxft fs t.~e", to rec." the DPoQre"'. '-~ COIIIIII''''t •• Th •• STAT ~'ut."'. t. ".0 ful'V ~'-''''t~.~t. ~o~eoye~ be· ~.u •• ~p .~tu,' d~iY.~ .ctio", t. "'eee •• ery, t~. r.oui~.d t",. forlll.tio", •• illlm.di.t.'Y .v •• ,.b'e to t~. D~oer'lII wh.", ~ •• c.n.d •• ~ • • '" .o~h.~ c •••• ~h.re d,t ••• ".tu~"'ed 0'" the .t.ck, 4t •• the DroO~'III'. ~e,po"'14btlitv to el.,~-uD Aft.~ the aata h•••• rv.d ft. DU~Do.e. Much ~ •• b•• ", •• ta f'" the Dr.vioUI •• ct40",. eo~cA~~f"'o the f.ct th.t ~'" o~d.~. t~ ~~~v~a, A d.vic.-i",d'D.",~."'t e"'vtro",· 1II.",t, the a~tv.r. for .1' aevfce. Dr ••• "'t • • t.",da~d t",t.r. f.c. to .th. Mo",itor "eutt~. ""vief"o • D~OQre'" 1/0 ~'QU'lt. Th. Dyreo.~ of th,. lec~.o", ,. to .umlll.~41' t~. f~.tur.. of the t",t.!"f.ce m.t""v. f~ ..... fe",no.. ADD."'~i~ G of t~. P"oor.lIIl11.r'. H.",dbook D~ovfa ••• fu1le" d•• crtotfo",. S,ct.~",i 3.3.1 th~oua~ 3.3.3 d •• cul. the two ",.i", De~t. t",to whieh ev,rv drtv.~ C!'" b. ritv~d.d • • • t.~dArd ~"'te~flC'~ t.b'., Which mu.t COlli' ft",t, I",a e D'ck.a. of routf",.. to •• 'v.~, ~~e dfff.re"'t tVD" of Mo~itor r,Qu •• t Ind the t",· t.'''UDt. oce •• to",.d bv th.... S.Gtfon 3.3.4 th.", ",ote, I Drobl,m ~.cul~., to the drfv.r for the ,y.t,lII-devic •• D•• crtDtto~. of the Gurr.~tlv tIllDl,lII.nt.d df'tv'~' Iv.il· ,bl. with.", the D.vi~. D~tv.~ ~.ck.a, doeullle",t, The d~tv.f' for the ASR-33 T.l.tvee i. delcrib.ri f", AeD.",df. A. .r. Dr~v.r I"'terflee Tlbl. 3.3.1 Th. ff".t p.rt of .verv d"ive" i, I ,t.",de~d t.~l. ~hfch c.", be ref.r.",c.d ~v .verv Men1tof' routf"'e, f.r'tlv 4", o~d.r to d.t'''IfI.~' the .cID~bnhf •• 01 t"'lt f'f"ive .... Ind ,eco",dlY to .ee., • . the .ODroort.t. ,."vte. routfn. vf. t~. D.. fv ... ~u.u. M.n.oement .ubrouti""" S.CDB o~ s.eDQ c••• Sectio", 3.1.2.4) Th. ferlll.t ~f the tlble t. illult~.t.d .t .faUf'e 3-22. I", .ffect 4t •• i", two P.~t" the ffr.t Of w~feh mUlt epoel ... f'" ,11 d~fY'~I' the •• ~o"'d fs "'.c •••• ry .0l'llv .f~ drtYer. fo~ f",-.truet~~ed dev.c~. e~ de,ce1bed f", chaote!" 4. T~ • • io",iftcA",ce of the entr ••• f ••• follow •• 1. ~UlY Flea - fl • e w~.", the dr1ve~ f~ ~veilabl. for u.e ."'d t. !"e.et bv S.CDB to the ~D~ edd~e'l for the d.t •• et b.4",~ •• rv4ced whil. the drtver 4. busy ( •• e l.ct~O'" 3~1.2 •• ). It e"'.ble~ the ~rtv .... to lee.'1 t~e tral'llf.~ CO"t~o' DAr.",.t,r. D"S'~ by the c.,li"'G rout.",e. I" Ge~.r.', t~. dr4y.r do •• "ot elea~ t~f. flaa • tht. C~eweve~ .ee .eet1o~ l.3.~) 2. 4. do"e hy s.eD~ Ge"e~.' '.ef'ftfe. ~ •• , •• ~4e. of hit-.witehe. to that t~a d~fv.~ f. 0"1y c.lled uOO" to o~o· vide .e~vfee. of whieh it •• c.D.bl., Cbft •• t to 1 4" •• ch e"'u~e e•• e', bft 0 • multf-d.ta •• t .uooo~t thf. ~ft •• e~eeked by the .INIT ~out."e to D~eVe"t the "'.Q"~e~t of a .f~a"·OuPDO.e devfee l1ke • DaDep.t.oe p.adep to mop. t~.~ o"e data •• t .t a tf~e. bft 1 • Outeut bft 2 • I"out The •• _t~o bit. ,~e u.e~ wfdely to vep4fv v.lfdfty (1) t~a".f.~ d1,.etto~ b;t 3 • b1",f'v bft •••• eft The •• two_bit. e"able peJeetfe" oi d.te mod •• w~teh .pe u".eceDt.ble, '.0. bf".py 0" a k.vbeerd. b,t 5 • Seect., ,u"etfo" rout."e DPe.e"t btt 5 • Clo'e poutf". D' ••• ~t bit 7 • Dee" pouti"e ~r •• e"t th •• e b4t. a,e u.ed by the ,el.v."t routt". (.O~!N, .eLOS!, .SPEC) to e"'u~e that the drfv.~ •• "ot eal'ed 4i ft f. u".ble to ,uDDlv th~ •• ~vfce C.ee al.o "e.t .ectfo~) ~Dec;.1 FaefHtt •• , ~ D.rtfcula, f.eet. cf lo.f" u.e. t~e d~fv.~1 , bh. to .- ... _--._._.-. T~. co,.~e.oo"d1"O bft • • ~e u.ed 4" .11 ~o"fto, tP.~.fer fu"etfo~. 'oP •••• oi eheekt"Q, '.0. .WP4tee2, .q!AD." 1. fil. ~v~e code. f"clude them, ete. I" m."y ca ••• they .r • • 4m4l.,ly u.ed fo~ deviee ha,dw.,' eo"t~o'. al.c ~ btt I • ter~t".1 ~eviee T~t. btt ,how, that the ft~iv.r eo~t~01' • devtee 14~. t~. eo",01. tYD.wr4ter wh4c~ ,,1Gw, ~."U" d.t ••• ~t~Y ."d the~efe~e r.4.e. ,D.et., erob1em. ~oted 4" .Dee"d4x G of the prOQr'mme~l, H,"dboOk. 4" Dart4eul.r, .WRJT~ for~e, QutDut ,t ~OL ev.~ thouo~ the ~0"4tor buffer 41 "ot yet f.'1.d. b4t a • mult4.u"tt 'Y'tem.dev4ee •• 'hew~ u"d.r 10 below, fu~th.~ table e". trte, co"~ai". bft ",aD pot~t.~. for ,.eh Ul"lft ul"lde" 1 co"tro",~, If t~. d"tv.r 4, ~.,t. dent, a' 4" the ea,. Of. a ,v,t.m-d.v.e. lueh •• ~Kl1, ,11 the,e e"~~t., ~u,t b. ele.red for a f,..,h .ta"t .fter • ~ro~ram f.flure. tht. btt ,hOWl that there ., ~or. tha" 0"' ."try ,.eQut".~a .ueh t,.eatma"t. bit e• ,.Qu'l"Itfal maa"et4c taDe Tht, btt .howl that the devicp, thOUQh l"Iot fully ftl.-,truetu,.ed .,.def;".d t~ eh'Dt.~ 4, h., "everthe'es, a b,,4c f41. fo~m.t ., de,cr4bed t" lectio" 4.'. b4t e• ~.v.,.'tble ~.d4um Tht, btt cl.,,4fte, a d.yfce. lfke OECt,~e whfeh .1'ow, tr.l"I,fers t" .4th.,. dt,..etto" of t.ee motto" a"~ thul ".ed, leeetal t~e.t. ",."t fl.a ,aet.o" •• 2.3) bit 7 • f41e.,truetur'd d.vfe~ Tht. Ihow, the devtce ha' full ffl. ttt., ., 4" C~.Dte,. • •• c.~.bf'. St,"dard 8uffer Size • .~OWI t~e "umbe~ of Ie-word buffer Ul"ltts to be c' •• ~ed v4. S.GTB e, •• S.cttO" 2. 4 .2) for the t"t.r"al buffe,. uled i" .~EAD/.WRIT! a"d BlOC~ leve' 1/0. PlGE3-4A Offl.t te I"t.~'uot S.,vic. Routt". - .~.b'.s the i"~t~.l~l.t~on ~out~nel te I.t t~. 80~~eo~4.t • • dd, •• 1 f~to the d.vic. fnte"uot v.ete, whe~ the d,4v.r ••• ~ co,e(l). e. t"t.r,uot p,jorty L.v.l - 11k. 5, 11 uled te •• t the ItltU' fnto the i~te,~uot vecte~. NO~M."Y ft tl the I~"'. '1, the leve' It wh.c h the h.~dw.'e 4P1t.",uDt occu .... Off •• t. to R~utf~.1 • .re '.f.,.~ced by th,ir ~e1. tiv. oo'ftfe", f~ th. tlble wheneve,_ •. Monito, 'outt"la wi ..... to ~." the .. el.v.nt •• ~v4ee vfa ~.C~R? t,11 •• etto".J.l~2.4). ,The •• byt., a't .et to I 4f ~ the ,0utf"1 i. net o~ovf~.d - .1.0 fPld4clt.d by the eo" •• ee~d.no Flefltt ••• fPld.c.to, tlee 2 Ibov.). 0." .... ' O,vtCI ~I"'I - •• thl ole •• d 'ldt.·51 valu. for oedl 1110ttld to IIC~ d.v4c •• th. ~~O Stl,t ~lock *. fl the hilt, fo, t .. e ffl. It,uetur. 0" • bul.-.to'IO. devfe. IPld fl dfsculsed ~" •• ction 4.1~2.1 B4t."'lo .of"te,. - ."Ibl. the chltPlfPlO of s.ve~.1 d.tl •• t. .hlrfn~ the al~. untt of I bulk-sto,ao. dlvfc. for outout I"d ".Plce the '1"'. f~-eo,e block "'oelttO" bft "'.0 la d.ac,tb.d f" Sectfo" A.l.3. Th.,. MIY b• • 4t~.r 1 0' 8 ."t~fe. d.elndinQ ucon wheth.r the d.vfee hi. I a4"01. u~ft o~ seve~I' • ..... ....... ~-~ 1. Aa Ihown fn the P~oa'~"''''e,'. H.~dbook, the effl@t C8" be I oositfYI i"cfl.",."t of uc te ~5e wo,da. 1" the la~ae~ drive .... th4. ",ay be 4nlufficfe"tl 4n th.t cI~e it ~.y nof"t to I JMP 0, BR to t~. ~e.1 ste,t ef the routfPle. PAG~3-4~ ~. . . ,"y d~1v.~ may b. call.d to Drovide 0"' of four '~rvte.. ,~d mav th.~.for. CO""." the "ece'lary routf" •• fo,. t h. OU ~Do. __ 1 J".a.~.~,' e. Clo,. d. Sp'c4,1 fU"ctfo" Th. f4,.t obvtou.'y f. ,~.au.r'M."t 4" .11 dr;vers, the oth". thr ••• "Dr •• e"t o"'Y.4f .Om. ,ctu.' ~hv.tc.' de~.c. ,ctto~ ea" b• • ff.ct.d. 'or f".ta"c., e eo",ol. tyoew,tt., ou~,ut ea" b. oo.".d ~r c'o •• d wtth.C~/LF OUtDUt, wh.rea. o~ , ftl.-.tructur.d d.vtce ••• how" f" Chept.r 4, both of th... ~U"c~.O" • . ar. t~ iect D~,.f~~med_bv ~orma' t~.".j.r •• H.~ee the aoproor.a" Mo"4tor routf" •• f1~.t ch.ck the Ge"e"~ '~e~ljt~e • • wf!Ch, d•• cr.b~d f" ~h. Drlv~ou, .e.tto", ~efo" call1"Q the ~rtv.r. to o.rfo~m o"e of the •• th~.e fu~etto". ( ••• S•• ttO". 3.2.2 e"d 3.2.4' ,r. '11 d~.¥e~. u"d., DOS ha"dl.d 0" the f~ter~uDt syst.m. The ••• ~v.~, rout;" •• th.r.for. mer~lY f".tfa,. t~. ,.el.va"' d.vfc~ .et~o", ulf"Q the add~ ••• stored f" th.f~ fir.t word C••• or.v4ou •••• t10"' T~. rou~~".' e.tr.ct co"tr01 d.t. ,u"",j.~ bv th •. ~0"1t~r routt". t~ the DDB fo~ the dete •• t reau1,.fnq the •• rvfce a"d tr.".m4t t, •• ".e •••• ry to the device co"'ro' ~erdwe~e. •• , ~ot.d 4" Sectfon 3.1.2.4. th.y M.y u•• ~.of.'.r. f,..ely fo~ th4. Droc •••• Th.y th." .".b'. t~. d.v4c •• "t.~ru.,t i actl.tv ~.t~,." to the ~o"ftor rout4"., to ewaft the f.~.t i"t~"~UDtU.t"Q the .dd~ •••• ev.d on the .tec. by t~. JS~ ca" to a.CD". ... ."q Th.1~d;v.due' "etur. of •• ch of the feur routf"., cu ••• d f" the PrOQremm.r'. He"dbook, ,.,~."di. G. f' di.- J~ follew, fr~m the .,revioul.,.etio", t~et eVery dr4ver muat cont,i" • . ,.outf~. to .e~vfce the ."abl.d f"terruDts. Th. p~tM.ry.eurDO" of tht. routf". is to '~Iure thet the date 4. tre"lf.,.r.d '0. o~ jrom the d.v4c, ~" th •. f~r~ ex~.cted by ,h. c"'1~Q ~o"f'or routt" • • 1 I.tflf.ctor.'y a. DOI'fble and ~o ",ow for the he"d14"G of e"y .rror ce"dftfO". which m'y prev."t thf.. Th. e,ev4.4o". of the deviee ha,.dw.re of PAG! ·J--48 .~ eou~.e d.t.~~f~. the a~ou"t of ,uDDleme"ta~y worle aach Aaa1" Acd~1ver h.s to do 1" order to .e.t th4~ ~u~Do.e, ~a"di. Ma~dbook d4.eu •••• Do •• f.. .." _, . ,of. tha P~oar.m~ar" . b4l4t4e. 4" ~ore . dat.4l, t"'. ,e".~al'y, thouoh, .t e.eh ."tar~uDt the driver tra",fer. d.t, .betw.e" ~'~o~y ."d the d.v4ce al'ow4~o for tha faet th.t the Mo"ftor el" 8"'Y reeoo~tle ASCII o~ ef~ary. If the drfve~ "e.d. R.a4.t.r., ft •• ~e'Do" •• bla for .afeQua~d4"G the~r C~"t.~t 0" ~ha ~"t,~~uDt ."trY, tf f~rther f"terrUDt. ara "4ed.d to comolet. the trl".far, the d~fver take. "er~.l RTI .~4t. to aw.tt the~~ Whe" the wh~'e tra",fer •• do"e, t~. driv,r racall. the MO"~to~ routt"e throuo~ the Co~o~.· (t40" R,~U~" .•• t f"to the ~D9, w4t~ a"y ~eces.,ry .tatu. 1"format4o" Dl.ced 1" the DDB (Darfty fa41u~e flao 1" ~tatu., .~eomDt,t. tr." ••• r 4" D~tvar W~~d eOU"t)~ A. ~how~ 4" s.ct10" 3.1.2.4, the Mo"4to~ rout4" ••• oact. R0 to co"tet" the I~d~ ••• of the DOB Ju.t .erv4eed a"d the CO"t."t. of all R•• 04.t.~. It the f4"al 4~terruet t~ be .Ived 0" the .tack • the drive~ ca" u •• th, ~0"4torl~ S,RSAV .ub-~eutf". to eff.et .thf. ( •• e Sact10" 2,4.1). The driver ~.y di •• bl. 1t • • ~t.rruDt f.ci,ity b.fo~. tha r.eal', it does "ot however edJu.t th •. eroc ••• or crfortty 'ave' or ~'.ar the BUly Flaa i" it, f"t.~fac. t.ble, Th. Mo"ftor routt"e eal', ~,eD~ to ~.~form th.,. oDa~atio"., A' "oted 4" the_."t~oductto" to Ch.oter 2, the ~r4v.~ for the .v.t,m-d.vfc' 11 D,rt of the c,~~.".~t'y r!14de"t Mo"ftor. Be.fc,"v t~f. drfv.r.f. ~o dfffere~t 1" fu"ct10" fro~ t~.t serv'ct"a th, 'a~. d,vfe. whe". thtl t. u •• d •• a .ub.fdfary DerfDh.~al 4" • IYlt.~ ba •• d 0" a"other .f~f'ar dev~ca~ It t. c.l,ad f~ the .a~. way wft~ 4ts f"io~~et10" set 4"to e DOB addrel •• d bV the eo"te~t of ft. Ow" 9u.y Fl.o, eya" thouoh th.t OOB belo~a. to the Sy.t.m a. ~ot.d f" Sectfo" 2, Mo~eove~ IVlte~ ~e~ue.t. t.lee the4r ~,.c. 1" ."y dr4ve, aueue '1ke a" the ra.t. Nev.rthe'e •• 4" it. Dr4v41.aed u.ao. 4t doe. ~ave I" eMtra r •• co~.1b~'.ty, If e tr.".f.~ c."~ot ~e aeeOmol.she~ bee.u •• of ,oMe .. h.~dware t,.'ure, the o~di"a~y ~river 1" most c •••• e.", for .o~. d4a.c"o'tie '!I •• ,aoe •.•• Chapter 7 will .~ow, t~1. re~u'~e. the 10.d'~0 of ~ Mo~1tor ~out'"e to eo"t~o' the ort"t1"o. t" the '"terim t~. driver'. !u.y F'.~ rema10' .et, ., it ts .tt" ef~.ct1yelY .erv1~4~g the t~.".te~ ~e~u •• t. ~o~ the d~'ver of the .v.t.~.device, this ea""o~ ~'I if thf. i • • t11' •• e" to b. busy, the reaU.lt to 'o.d the ~4ao~0.t.e Pr1"t reuti". wf" b. aue~ed to we't ft. tu~". To e4rcu~v."t thi., the d~.ve~ Must it~.'f Cl'8~ it' Bu,y Fl.a before r.au •• tf"O the .rro~ m•• laae, If ".c ••••• J '--....... ~y, w.,.~. th., .,.,.0" '11'1 I'.e "e ,..eti.ted by ODe,..tOI" lettel'l Il'Id ~ •• uMDt.e" ~IY th.1'I b. ,.aQu •• t.d, jt ~u.t al.c .•• ve Il'Id ,. •• t~,.. tha flla eo~t'l'It •• IDD"O~l"i.t.. (11'1 D,.let1e., th •• ,peet." ,ddU401'1 .', fl'l~lud.d 41'1 th" '.I"d.,.,., d"tv ... I. I cOl'ld4t4ol'll' •••• ~bly oDtfel'l •••• "et4e" 1.1' -~-~---------.--------~~---~--------- ~_ _ _ ~~,~~ ~E.nJ~N Al>l>~e.ss (ftobuth~ $IS or s~~ro »& A~£!JjS b~ ·:t.arr J)~5£T L~L.. t(Art)£ ,. I ~--~-~FA;u.r "r/~~ P4'l.' - JIll tiP ",.",.s T. '~~~tllJ D.~ul __ ')£vr.ee. fotA CY)E • ~" ~-~------.~.--.-------------- ~~c(tIJl:&\..e. .~'lX.l>E. S~ TO SW):'TCH 1F ComMA"'» Ttte: ~~t(tr x..1E~M£Te.R. ~ C!.El:I(G- usa"]) (",i.. ;~~cot"ecl ~"* c9- Wonf.~ to ~o\'o~··) - ~--- -.------=---=== -- - =----- ----.~--~--~ 1 ./ " -.. "'tb'T -1 ~ ASSlIrirnEtCT ~-~ ~~T~ ~- .-L.~T~ Tft&'E. Po~T\Aa. " SS:Z:Gi4'(C'I'\~T ~ #=. .~.~~~~.--.---~-~.--. &tn"a.V --, #3 -:=-:: .. ~:.:~.: / ~~- Ase.x~' / eESU>eriT «>oriJ:i"'oR I ~T.l:f'lES ~":l / I " ~~MEt('\ "rA8a.£ ro..£tn'X" ... .. " ---' ~v / ~E&-ttEC'li" (". ~i5' -. . *' ,. AssI~tn£lo(T I / - - 3-3) .. --, I I Mr(~T)[~~Ar ~~} __ l ~.51,)("Q. 3-~: Po. .,~e. bE..fJ:cE: ~S~M&IT ~e.L.E. a..oa.uflh.. - ",..cone. .J • '''''"~ conc.trnecl 'PE"XcE. - t("tC'lE. .. ...~~* I "0'" ,""ojlt;pe f:"o~wrfCG. t=:t.L.E - "'~rt\e I=la...E. .. fE.)(.TE.'" S:t6H • dS6A ~~~Tl:o" COllE 1='5~ ~·3l ))e...,:ccl:. A~mENT TA&...... E.flTAY C:OIttOA, I>~t ... ~ & .. ~~ UE.U£ L.rrt '< f PQXOAl:T'''( ~U~"£ :t.rcJ>~" aasoc:Q '"-.d J>«l:~e.Q &"sv - '"-Eva ~ ~-b"3"9 ,~& ~l>])ttes~ (~ 5=....~Gr a o Lite) A~~ .... XfIIE. US~ - ~ F';," 3-5 ~Nt< Mot«.Tt)1t »E"J:ce &.-oct<. II- ME..tno~y ~'j)l)a.sss &oA:E4t L ., -1. 8u~F'ER rio~l> COUN" 1° STATue COMPL£Tl:ON Q.€\&UtN ----~ wo'0 co\JoNT »Ql:'t'eA. ~V"l"E CocJNT C "'EOA"TASEi" l>A11=t .. a....oc.K ( ~l>e.) F,&" k.-I~ »6 *' -"iii: I1-. - ,'.c1Jt. - •II l- - .. ••__ _ 1. "",+".. ~ ff- , , - , 7 ....14~ ~---"~-t - I I L __ _ ,) t~ ~ II- - r - f- - f-. - I- - - ~ .- - , .. - - - . - - - . - - .r~.,,~ 1 •• ar.-CAtV TtQn~kc' ~ Tt'o.,,&kr XH "'. LM eo,,--,..I "'-"" .. pa,e 7·s~ 'J)e:t'iEA. >£~ ~ ~'l'" ~,,~ ~-..... ~~S FQ.oc1) "..---;- ~€nf"eC' ~',.. _ '¥ ..j).)fI Gd«l('e:;s ~ QddC'E'S':> j)r,~ ~ur'l\ ~ J)..1'bserJ\>sr rOde"..J 3 er s:~8Sy "5-A-"-€'-~~:'I ..... "'1( ~---tCoN~, 'ikc.~ CAJ..&.. PR .... l:t'< ~ ~-~K -~-";l) fflo ... ~ """""'--.....1 r- ( -""\ ":J>R:r.~ \ se::'-uP \ Rou-:uE- , \- _ _ J ) SEi"CAI..I.. 3>:;:>B. F(l>~5PS In &: \.J:NI<' ~~ ~--------~L---- B R9S:= ~i'l:Io{e. ~-I...I.rh< TO CIlj..kJ>.)b 'M%.Y'C!ct ~- .321.t." : ~ .. ~~_ - - ..• i.. ____ ..... • LL"'1 .. • I~' ... ~=~ ro• ~.a..c::..c:;::""-4 • • I I I I Y • •• • A I .. : ---..c--~ ~ L----c.---., A- I : ~, r----'';':'''''' ~ -~--~ y ~ - "E.T~'" Pc. ~,."c »6 'OJ)~SS [u~ :t .. Q_ CA....... ------ --~--- r------~--- --------- RE'c.z:s"IC~ aV ----.~---- ----- ~ ote --- C:O"'I"t..£t'r~ I..,..,.AuK :a:.nc.acuf'T'C • -------- 'A~ ~------ ~ ., Pc St'A'nlS a,.,c%STZ"'~ ..... t - ---------- :stACW. 3-ct: 5~ St"4'1€ >a~~eA '!.f4 S.c.'J)Q .. ~ COf't)Pa..CttOl'4 ~'U~II& P8/C ... tT.I\ ..SZ...."nOH (%Ne) NT -"M.1It ~w:.a ~e:n~ ~ $"NlC\( .-,T ~L. ..,,,~ ~ft'I ..",IJIC,· 1---- z.lar Kr P.".T S~ Ioo-----V S1f'tC'r 9 ~----~~---------~. y :7-r.r GSA -~-----~ ./ ----~-- -- _../'- -- F~u(".. 3-" : rt>t~ Q~~~ 'l)oj-QSar In'artOol l2.o.hct) >Evl:Ce &I-.OC\( # C"tlEN)OA.Y ~~ Al>l>ItESS wo~l) COONT' (to-;~~~ FuNCTIoN /~~T&J5 #~ Wo'l"'De, ... oT 'NANSFERQ£L) ~ ----, «'-!Io. Ge" ..1fhC. 6L.cCt( .. :J----!N AD'II •• " -.-sS -.I: , iI iI ,I I i i ~ i i i «'--1116 U......,.,r<., l>~ ~n, Mo",~«. C..wt,N A...oWettAAT tI"oflit OA~8E\ REL15f\~ ~~e. (~~ :le:T uP lfo(l€0=l'Ic£ ......---!N r-o~ ",TO CAL..i... oP." SEr ufO AP~oe. CA\.,l.. ' " ~A~CO: >j)e. ~----"M ~ OP.c:;. ~ l:aT' uP f'l5 E)(,r ~j)~esS ~';'l)4iaC!S. A~~ 11\1 ~»S s.. c ...~ 6' .. INK (:,8 Y ",0 ~--.:J...>:De. ~ C .. f:A~ O.~ FLa"'c.~"T l>c:rrw:.sET Ro,,""'~E. Foflt oPEl'll (OPN) 7-' () PQ~c 1 r--- '-tr.oOA.flttO -CSA p~ . Af\~ -...-' ,,&e,6l ./ r p~ !S~ --. - - _.. _- - -=-ce. cot\.£. SA~ ~ ~ """,cmoI N"r-mAP .- - S&Gn'\I!f\T (O!.MlSr Ori~'t) " ---_ .. --/ Fr.B ~A,.q ~ ~ ~ 'J)ATA ~ ~ :P~~ (%p "'en" ~oA >"'I~ ., ~ .. >£~ >_~~5E:i'" »B IW-»A'rIlSE'i ~ i'" Il"~ ft)O ta::'TbIt. .~,.. ft')o,..~ - ,- I f=1~·1Jt"& 3-16, M~o"" ~"t'S. o.~t" ~scr afi5N ~ ,",,~~M~ UI'IE J ""''''05 &UE('-:f-' (0.) ---r--- ~ qcru",- e.'IT£ ~~t,.hltTl ~"N~ COU~ 1o.J:HE. ----- ~ ---- 1 InOK AC.1UA.... &Y1E. L..l:"E. - ---~~ ~tE. sn£ (a.:J~ cc"",r , ~ -~ A>J>USS I ----.~-.-. -- ,r------------- ~ J ~--.-- -------. --------- - - ~~~~ r--~----~------------------~ • "sc.u I &:"~ "~cl • unW~"tcl fI Chna.na.l ~ ~ .~~ •, "'....6 ,'""'~r, =' SU"."" ("'r.n,"-, ))."'c&) .~ , 5pec'IQ\ .c.....,- "ct.';" N')od.~:- A&eU P.':"!5 (~, • SpU.O ~"ad f:aac.rJ: Noc\.~~ (~ormo.l.~~ ""'~ecl ..sen: '''''.~ ItlM.~!J (t(~\) ~ca"'-d ~"-' &,;...~ ~.p.i'd"~ (~&. ~G.l) "ft~ f;~ ..... ,."'~ (ttOC'MO\) (J)U~ ~ a;' "'. ~ _~ Pa,c 3'., .. .I floft RoCAl) ~ ...,~,~ Atoce~S''''' & ( ft\'" .IC&'1'tt.EA«l) eoOER 'fIA ~ c.Au- ~"11 ..._ _... 9- C~ rtIT1'I~ EN~~ L..I~E. FQc('l) 'em. s.c::., S .... Ilt.H ..s~co<. IlW S€\ ao ~ »3>6, ~QI"'~ ~ ~L'NE ~G€I 4:-c"or( c~ ~~ ~\~G: eRAoR S~l\JS ~H·~tI c~~ l>J>S 8vSY ~ S~.. :i)~ I'IORO> Co .......... c.....~'n"\ 8v~ ®~ St"".:::.£ 3 I-\~\Y'Q~ -1'8 A .. ~€~'" UN'~u~ &. a- I<-} Po.N' r-c~ Rc,,-:-,f'I€ E)(', $&t • • 4Ilo..trl~eg TO tt.q.-&1>..... ]>£vIce ~,,~ts '-.j 1>ua".... Ryol ."If=)( ct£A» }¥I'll'!'£., ~'"'.ftlU ~:tlCE EKIT" To uSER ReGS. (Il. -Ills.) ~T c'"~ 1'b1r("!'ER !)E."'ICIC. T'IPE. To F,8 A-.A& 5~ &L.,CX;.10( /I IN J>J)6 R'f'I·OOA Posino.... 8,-r- 1ft ,~",cs. ~\~,l"I ~ ctAls~ lb ~,-7 _ _..... FCRC£ .sPe:ct~L- Rt!-Ir(IT 1("(c.R 8\.OC..\(.# GC!;I" L- _____ ,0 E.oF ~\.A_T101'( St.:.T e:o~ Ft..A&Q~ IN ~J6 ----1:----- .oe:~ueuE. M-_..... ~R\"s< vIA S~ fOA\~ .... ~ ~..,pll(".q~cz.rl ~r & JEC~ \-c.('"....xt.:-d. ~. .5Q.uC't.heS >--1W R~JU~'" ~~ ~ courC, ~t=It!:.l'" 0sEIc L.ltCE :>ET CcUN' TO 5ltOW'I r-'UI-l.. L.lnE S. RD,)(\'" t--=--...... ~~ --€..N.'tR'{ AF1'G:R. '.i>RI"ER "MAN~ ~N,l:N Se.T~ fblN~ Ar EN&:> ~-... s'" l\t..ri ro~ S":'1~ O~"S\.!... SE:r R€~..... TO m~rCS~ (II.a. Ri) )C."9 klltire: PR.Oc.e.S~'tIo(S Se.&\J&NCES 0" CL..S Gt!.r ul'(l<:.:),--.........11. . i. C\£AR f=QoI"T) ~c.1<. ~"T~sc.T .O\lT"INI! ~£\ ,-,p ~ (c.'-~ p~ 11'(1'1:.w:1~ CA~ "TO "'''''"---'- F~ ...._,.,. f:/5 F/:5 C~ c~ !.-A'S,,;," ~-.........'NtC..lli ...........c: S\..CC.K.. ,~~ r-· • I STA'YUS S ....OC'" ~Etf\O.'t "'''''''CoTtOr« to( UM&S~ (ru.r:.,.) ~S:FEIl ~>AE.&S U!.N~ i>oMa f.ftT'" EmIr ...,..tlht.. Pr~." .. ot' ~, ... ftot"~ (~ - ~.;''r 6\ock • ¢ r--- ",. - WOIQ:I5 ~tfs.l OlU.TlOt''''- cd»£ F'u,",GTX,oN ~".~T ~A11i\ ~Aotf\ ~.--- MCSAAft') OIl :rrATua _""" ~ ~. ". ~.\IP.O ..-------- ----_._------ ._._-----• .", t=UHCTU)tI "". ------- • F.~"re 3-~O, ""I"'h.. Spec I 0.1 F',u..c..h~n. &I.c:k 'U'le.~ &..s&V F~A. s.e.NUfItt- SP£c:r."L.. ~AC:%...:t.T.tQS w=.-" C%.L.:t"l:~ S'MfIlDAA'J) ~~~ ~f:a€r TO ~tCTe~P"C" set.4It~eE 5%24 (.--,oN \lfti~ pazoar.T"i ofII'P5ILT TO ...e.Ct.."", %"~\SfI'T :sea~ 4tO.aTDtI!. OP.... [-t Q;clr-...J O~se:r 1'"0 C'-OtIE. A~ttE O--..e:r TO T4t"f'CSPaIt onse:;- "C'b (~.a) SfIEc.\AL. l>E."l:Ce. ~T"A.' 0': Fu"'enotlS R. ( ...... -5t5) I'tAct\e. &L.Oc.t< ~.~ m.p.'1) . e.t:.T .. MAP Po:t.nE:l!S ~e.~~ ~oR. :t~"~A~ J>eac.e. Ol\'~ ON1T,s ~ (, or 8) -- . -- . ,ct.X-leR. SC,T_&lP V. :t.n'£Muf1'" It.ol1l'nE.~ F='a'a. - oC'.~ . 'J).lIacee CHAPTER 4 F I L E Bu'~ S T R U C T U RES 8UC~ as disks o~ ~8~~.tie taoel ~~8 by t~e4~ ~a caoab'e of ~o'di"~ ~a"v diffe~e~t lets ~f deta. T~e letl ~8Y be ~~o'ly u"~e'eted to one e~ot~e~ 8"d ~8V, 4" flet" b~'o"~ to di ffe~e"t Ule~1 1~1I'41'10 t~e 18111e lIIed4ulI'I. IP'I t~e 1'101'1118, waY, l'Iol'le of t~ese use~s .s De~tieu'a~1Y eo",c.~",ed wit~ ~ow al'ld wne,.e ~is data 4s ~e'd o~ t~e lIIediu~ I I 10P'lQ as itl il'litie' sto~IQe a~d 'ete~ ftl ~et~.evel a~d De,.~eDI .its ~od4f1eatiol'l 0,. ewte~s40", can.be aceoI!lD'41~ed el 11~o'v .1 DQIsible. ~o~.ove~ eee~ ~Ie,. eXD,ctl 10~~ "'eelu,.e of D~oteet101'1 a~a11'1lt t~e co,.,.uot401'1 of ~4. data e1t~e,. bv n4~le'f o~ ot~e" use~s. ~n .ue~ lIIed41, t~el'efo~" t~e OO~ ~oP'l1t,~. SUODO,.ts e f4'e It,.uet~~e w~4c~ ~1ves ule~. t~ele feei,1tie' aP'ld t~1s 18 desc"1barl 11'1 detei' 11'1 t~4. c~aete". tu~e ~ed18 11'1 tn.s context, 8 "F4'e" is defil'led al a"y 'o~iea"y CO"'Dlet, set of dati I~o,.ed 0" I bu,k lIIediuIII w~1e~ CIP'l be aceelsed tn~oug~ tt,1I, fl1e-It,.uetu"e. I" ed""1t40P'l, to t~e 11'el~ t~e lIIed;u~ 11 a'io uled to Ito,.e eo~t~o' 4nfol'lI'Iet401'1 by w~ic~ tne ~01'l1to~ ea~ aecesl t~e fi,el O~ t"8 use~'s be~a'~ ("O~reetories") and ea" o,.ov4de tne11' sto,.eQe-seaee (~B1t iliAD!"). T~ese oe"e .. a' eo"ceDtl a~e di'eu'led 4~ leetio" 4.1. AI fa" ~, D~lsible, t~e , ' f1'e-struetu,.e ~al been desigl'lerl to be dev4ce-indeDel'ldent, .1'1 aceo,.dal'lce wit~ ove,.I" ~o"4to~ p"i'0800"V, at 'ealt il'l its usage 0" 04skl el'ld O!Cteee. Howeve,. obvioul diff,"el'lces 11'1 t~ole dev1ees, eSD,c.a"Y t~e felt.~ disk aeces! ~ete, ~ave l'Ieeessitated va~18tiol'll i~ deta1'ed ,aoDHcat1ol'l. 'eetio'" 4.2 i l eo"ee~"ed w1t~ t~ele ve~1atio"s. See!101'1 4,,3, t~e~ de~el'1~es tne oe~e~e' ~al'll'le~ i" w~4e~ t~e ~onitQr oroeelses files end section 4.4 dee'! wit" 10ll'le sub,.outil'les w"1e~ e~e ce"ed bv t~e 1i'e-lIIe~e~e",e~t el'oeelsa, to De"fo~~ sDecia' fUl'let10"', Iue~ al d4,.eeto~y lee~e~i~Q. Sect;en 4.5 cove~1 t~o.e o~oee,s.s wn;e~ extel'ld t~e It.~del'd ~~oe.du"es dese~ibed 41'1 ,ect;ol'l 3.2.2 ~o~ ooe~i~g, t~e~sfe~ ,.1~o el'ld c'oli"~ data-setl w~~I'e t~ese e~, loecifiea"y fi'el. F4"8'lv section 4.6 e~a~1~es "outin@8 eIDecia"Y D~ov1ded to service u~e~ "eQuest, fo~ ~ouse~eec."e oo.~a tionl ueo" direeto~iel or t"e 111el ;~ t"elll. It wi" be leen t~at t~~ tvoe of f1'e-It~uctu~e edocte~ 41 bas4ca"v rieoe"del'lt upon ,t"e 1eet thet t~e ~~ve" ~ed1ulII ~e adi'v a"ewl ucdat;~Q 1~ olace, oerticu'a,.1v ~1 eo"t,.o' infOl'~atio". T~e .. e al'e 1""e,.e~t'v ~8Jo~ ~1f1ieu1tiel 1" ~oi~o JUlt t~is on ~P'lrlustrv-co~oatib'~ 1II.~"etic ta~es, e ~ed4uIII P'I~t ~~ev1oullv ~el'lt;ol'l@d • . Beeause of t~e8e ""ifficu't;el. e 11~o'~" structu~e ~al_beel'l ;~ele~4"ted fo" suc~ taoes and t~;s is t~e subJect of seetion 4.7 OOS4.~Nn A• • tated ee~1fe~. a 1i'e il a~v 10Q1ell'y eo~p'etl set of dlte .to~ld on a ~u'k-~ediu~ w1t~1" t~e f~l~ewo~k of t~e IClei" fi'e.st~uetu~e. It il ide"tif.~d bot~ by t~e use~ Ind in!1dl t~e 'Ylte~ by a.name w"1e~ ~ust .tl~t wft~ I 'ettl~ fo',owed by Inv eO~btnlt1o" of ,ett.~. I~d d40itl ue to In ov.~al' ml.imu m of 6 e~.~.cte~l. T~e nl~e ~ey be fu~t~e~ e.tended bv ue to J lette~. o~ dio4tl to df.t4noufl" between ind1vfdu.' ~e~be~s of t~e •• me 111e fam('y. Fo~ e.· I~c'e. e.ten.1on. PlL. OBJ, a~d LOA to t"e "e~e P~OGR~ ~1Qht li;n1~v, t~e allemb'e~ lou~ee. object a~d 'Ol~ 11'e. fo~ t~e lime e~og~am. T"e wav i" w~.c~ t"e file 11 Ito~ed UeO" t~e ~edfum deoend. Ueo" t~e w.y i" w~.e~ t"e ule~ nO~~ll1y e.oeett to e~eate Ind 'Iter c~ocel' it, Two met~odl .~e define~ ~or t"e OOS Mon.te~ I"d ~ence two d.ffe~e"t type. of f1'e a~e Il,owedl 1, L1"ked f.'e. fo~ .eQUlnt111 ecce •• 2, Co"t1;uou. f('I. fo~ ~.ndom aeeeSI 4.1.1.1 L4"ked Filel W~en I u.er w1."e. to e~late a "eW file for data w~1e~ ~e wi" bufld Up a~d u.u.'ly aeees • • eQuent1al1v bv ~eln. of t"e ,W~ITE and ,~EAO ~Ioue.t. de.e~1bed f" .ect.o" 3,2,2, "e f. c~oblb'v unlble to c~ed4et w4t" anv aceu~aev "OW ~ue~ .to~ICI .oaee t~e file will ule upon t"e ~ed1u~. Moreove~, bec.ule of t"1 t4me t.kl" to proee's eac~ 4n~fvidull bloek, .t i. I'mo.t certafn t~at the medium wi" ~ave o •••• d beyond t"e ne.t adJaclnt b'ock befo~e anot~er transfer i. rloui~ld, R.eo •• tfo~ing t~e medium to u.e t"1' block i. obviously timl.w.lti~c. L.~kld f1'e' are tner~fo~e .elf-expand.ng ler1e. of blockl 0"y.1ea"v eo~t1Quoul upon t~e med4u~. T~e first b'oek fo~ t~e ffle is allocated f~o~ f~ee .pace on t"e rned4um fn relPo~se to • user reouest for itl ereltion bv .0PE~O. Furt~er blockl ere Idded one at a t1~e autom.tic.,lv bv t"'e Mon4to~ a. t~e Ito~aQe of t~e data reo,!1res t~is, At t"e lame ti~e, to provfde fo~ future access. t"e blocks a~e C~li~ed, by. a '.~k-wo~d embedded w1t~4n e4e~ b'ock, T~e f1~lt-word of t~e block 4s re.e~ved for t~1. pu~po.e and wit"1" t~e f1'e fs set to t"'e dev1ee a~drel. for t~e next block i" t"'. c"'a1n. w~en t~e file fs ffna"V elo.ed t~e '1~k-word of t~e 'a~t block Ule~ i, let to 1 al a ter~1".tor .nd ."V u"use~ portio" of t"at block i. clea~.d. enn a" w~1e~ .~e not PAGE -$1- 3 devic!l, ~loc~ ~ is ~es~~ved fo~ syste~ u.e. t~@~e ca" th.~eto~e be any confusio" co~c~~"ing t~e t@~~4n.' ~ T~e fo~~~t desc~ibed above is fu~t~e~ il'ust~ated 4n "eve~ ,."~). fi~u~e .-1 • • s D~ev.oully noted, the blocks of a linked fil~ 8~e not, in ge"era', adJace"t to eac~ ot~er. ODti~allv th@y are S~Da~ eted ~y a a'D which is dee~~d sufficie"t to a"~w t~~ Yo"ito~ a~Dle ti~e to D~oeess one b10ek b~for~ the "ext reau.~e~ ~eeehe. the ~eed-w~.te ~e~d of the rlevice. Th~ nu~be~ of blocks fo~~.ng this aeo is deDen1e"t on "evice c~a~aeter1s· tiel and i. D~.-~ete~~ine1 fo~ eae~ device, T~.s nu~~er is known t~e "Inte~1ea~e Faeto~" (IF). T~e g~D ~~y of eou~le inc~,ase.b'tween individual blocks ~eoend1nQ ueo" eu~~."t availabilitv. ,S The lfnk.d f41. fo~~at ~ead11v allow. lat~r e~ten.ion of a f41e ,4nee ~o~e blocks een he added e"d '.nke~ in the SA~e feshion es du~inQ its c~e~tio~. Joini"~ '1n~ed f41es tcg,t~.~ 4s ellc a ~elativalY s1~cle o~oee~s w~e" this eon,i,t, me~e'v of the ~eD'e~ement of the te~~in,l 0 lin~ 1" the 'aat block of the first file ~y the devic~ adrl~ess fo~ the f.~8t block of the second file. (1) T~e aooroe~i.t. Monitor ~eauests a~e th~rafo~e aV4ilable to t~e user a"d a~e di.eussed under sections 4.5.1 an~ 4.6.3, On th, ~the~ hand, li"ked fflel are not d •• io"ed fo~ ranrlo~ aece ••• ince t~. o"'v mean, bv whic~ this ca" be .ffeet~d i' by oerhaDs a 'enqthy s.arch a'ong t~e lin~8 of the file fcr the ~eeu4~ed blcck. Cu~~ently the random-aecels ~eeuest ,BLOC~ .s illegal for 'i"ked files as noted 4n ,.cticn 3.2.3. 4.1.1.2 Contiguous Files Ccntiau~us filas a~e soecifica"y.intenrled 1o~ ~a"d~~ access .BLOCK. Fo~ t~is tyee cf u.age, t~e use~ 4s l1kelv to know t~e .jzes of his ~fle~, By def~"~t~on, too, t~e cur~e"t ohvsical oositio" of a ~ed.u~ is fa~ lesl ra'evant to the e~~e~ 4n 'wh1ch its dat~ 11 orocessed. It •• ~ore .~ D~~tant that the actual device block ca" be ~eadily deter~.ned f~o~ a ~elative value IUDolied by tke use~ an~ ca" be ~eaehed .n ~i".~a' t.me. ~oth of tk~se cr.t~r.a a~e ~ost .i~olv satisfied by t~e use of A" a~ea of ~u~e~iea"v cont4guous bloc~s o~ the med.u~. T~e resolut.o~ of aetua' thrcuo~ • _________ ._.e. 1. No atte~Dt i. ~ade to fi11 unused bvtel 4,., t~e 'ast block ~f a file e~te"ded cr t~~ fi~st if'e a~De"ded. W~ile t"ese bytes (al1 Are "0 o~ohle~ i" ASCtT files or For~attel'j Binary, tl'lev C8n be !"ead as t'fata i" tJ,.,fC,.",stted qi"arYe Thus, ~xte"sion O~ aODendaoe oi files i" t~is mode is cu~re"tly not reco~~ended. "U'" OOS4.~Nn bloek is obviouslv a si~ple elleulation ~~ov.ded th8t tha Ita~tbloek of the a~ea is ~n~w". It alse ~ol10ws th4t ~e. t~4~t4no ~D~~atfons o~ the file to a comDaet a~aa ~n the ~ediu~ affordl ooti~al 8ceess, ~a~tfeu'a~lv on ~ovi"q-head d1lks b~eeuae o~ the Matte~ of h.ad·~olit.o~1"g Ind o~ D£Ctaoe heceuae of its single 'inea~ t~aek ~atu~e. A eontiQuOUI f41e formet is sh~w" at ffQu~e 4-2. It Ihould b. noted that no l4nk-wo~d. are orovided I.nee thev ,e~ve no u.eful ~uroose, 811 wo~ds 1nelud.nQ the ~i~lt ona a~. thul used io~ data sto~aQe, Bef~re a eontiguous f41e ean ~e used, ita Ito~aoe loaee mUlt be ~real10cated th~ouah the ,ALLOe ~'Quelt de,c~ibed in lection 4,6,3, ~eeaule the 'I~e mediu~ Mav he Iha~.d bv both '.nke~ and eontfQuous files, lOMe eonfliet 4" b1eek avaf'lbf14tv ~ust eve"tuallv oceu~, .ve" thouah the mediUM MIV not aetuallv be filled, To delav thfl al 10ng .1 DO.lib'e, ,fnked f41es are set UP on ~11 med~. et the front, o~ low-addresl, end, .nd eontfguoul file. _.~e Qfven loaee Ita~t4no f,.om the tdQh-ad1P;-is8--en~; If--the eo"fl.ct--(fcaa oecu,., as eVideneea-bY. failUr.·of the .ALLnC o~oe.s.o,. to find 8u f f1e 4e"t soaee f~r a new contiQuous f41e, the use~ must either delete I~me of I'Ii. ethe" -fn., ~,. t~enle"fb. theM ~" o~der to utilize more fullv sm.lle~ di.eonnected Q~ps between uaad bl~eks, Doasiblv e~eated bv ee~l.e~ deletiona. Thts si~D'e aop,.oaeh to randOM acees. hal ttl dfsadvantaQ.' tn that, onee the eontfauoua fi'. a"ea he. been establi.hed, it eannot_b' ._tended .inee the~e eAn be "0 aua~antee that the ~eou ••• te adJaeent b'oek. e,.. avaflable' no~ ean .ueh ff'el be Jofned togethe,. unless thev a~e Ju_taoe.ed, an un11kelv situation in ~ost in.tanees. A u.e,. ,.eeue.t for afthe~ of t~e.e ooe~at1on. ~i" the~efo~e be ~e'eeted bV the Honite~~ Apafnst th~., howeve,., the ule~ il n~t '~M'ted to ~andoT aeees, on e.ont i gyOIJI f n es. P rov i ded t hat he ooen the ff,e bv the aDo~oorfate .OPENt o~ .OPFNC eO~Mand, he eln oroeess hi. data seauentia"v bv .REAO o~ .~RtTE. The Mo"4t~~ 81~o ensu~es that lue~ ooe~.tions a~e effected onlv wit~;" t~e ~relet fi'e-~ound •• T~e M~"fto~ e~o'ovs .truetu~e wh4ck .s ff,e. 1~ o~rle,. to Mafntai" those fi'es and 0" t~e UI.~S to WhOM t~ev belo"Q. .t t~e fi,.st 'eve l , a Maste,. Fi'e Di~ee· to,.v tMFO) oriM8~;lY identifies t~e autho~iled use~s of I med1u~ and .~dieate8 the .tart Doint for the seeon"-leve' Use,. Ffle Direeto"v (UFn) assoeiated with eae~ of these users. T~e UFO e8talogues that use,.'s fi'es. sto,.e~ cont~o' on. tke a two-tie,. ~edium ;~format1o" uoo~ ~ith t~e 4~de. B.fo~ • • ~.diu~ ca" be u.ed fo~ file-'to~aoe, a ba.ic d4,ecto~v .t~ucture cO~li.tf"o.of the f4~.t two b'oc~. of the ~F~ mu.t ~ • • stablf.hed UcO" 4t. the followi"O wayl. 1• Thil ~aY be .ffected 4" o~e of ~" the IY.te~ d.vice, 0' 0" U",t 0 ~f the IVlte~ d.vic., 4f thtl has leve,a' U"tt., t~e bl.4c df~ec ~O'Y i. luto~attc."v let uo II ca~t of the 10Ad4"Q of the .y.t.~ bv the 9Y9LOO O~OQ'a~ Clee ,ectic" ~.2.2). ~the~ deyice. o~ othe~ u~it. of the .v.te~ dev4ce ~u.t be t"4tf.,ii.d by mea"' of the IZ~ Iwiteh D~O vfd.d by PIP-II a. CDEC-l1-PIDA-D) de.c~4bed f" the ~e'.v."t ~a"ual "C" I" •••• th. di~.cto~t •• a~ ~oth leve', ar. the~I.'ves It"k.d ftl •• f~ that the i"divtdua' d.vic. b,ock. al'ocated to th.~ .~. ch.i"ed throuoh the fi,.t word of .ach block a"d f~~th.~ ~1ock. ~ay b. add.d ~. a~d whe" th,i, dat.-.oace •• fi".d C.xceot 0" nECtaoe for ~ee.o"s gtve" 4" .ect40" •• 2.2> • •• 1.2~1 ~FO Th. M~D alwaYI .ta~t. at a block (MF01) w~teh fs o"set fo~ .ach devtce. Th. d.vte. addr ••• fOr thf. ~1~ek i • • to~ed w.tht~ the ~el.va"t device ~r4ve~ t"terfaee tab'e ~t.cu.sed 4" ."ctio" 3.3.1. It i. the o"'y d~ta "ot ~tored uoo~ the m.dtu~ it.elf a"d il the Itart-ooi"t fro~ w~tch all f418 eo.~atfo". a,e b.au". Howev.~ ~y d'ltQ~ ~FDI fal'. w.thi~ the a~., ~'I.~ved fo~ ~o"4to~ u.aae 0" a ~edtu~ ulerl _al 'Ylte~ devic., it could therefore be write-o~oteeted f~ futu~e ~o"4tor ~.viI4o".. 41 a ~e.ult, the data ft eo"ta."1 i. let uo d~~."a ~ed.u~-f"1t4altlatto" a"d thereafter fl o"'y read. Ftou~e 4-3 .how. th.t t~tl eur~e"tlv i"cludes ae"eral eo"t~ol ~.ta .uch a, t~e fixed I"terl.av' Factor fo~ the d.vtc' ,"a oof~t'~1 to blockl r ••• ~ved for btt ~ao. (~escrtberl t~ the ~ •• t .'cttO">. It al.o of eou"e atve. the 1i"K to the .eeo"d ~FO block (MFD" whtch .tarts the di~.et~ry nrooer. MFD2, t" ae"."" is e"oeat.d loace at the h.g~-add~ess e"d of the ~~d.u~ CDECteoe e.cluded), allo durt"a th~ f"ft4alilat40" ~e"t.o~.~ crevfou.'v. It, for~at a"ri that of subseQu."t blockl which ~av he added later Ca featur@ howeve~ "ot cu~r'"t'v f~o'e~e"ted> orov1de. for I series of fou~·word a"triel I . show" f" fioure A.A. The sfo"ifica"ee of each of th •• e wo,dl 4s as followi. 1. User Ide"tif4cetfo" Code CtlIC) • is a two-byte value fde"ttfvt"Q the 4"dfvtdual use~ ~"d the o~ouo with whom he ~av be workt"o, 8S delerfbed 4" the -PAGE ~8 Progr.~~.r. ~."dnook UFD start bleck - Dofnt. to the .tart ~f the tieul.r u.er l • UFD ch.fn einiti."v to 0) ,.t '. Dar- ~u.b,r of word. o.r UFD .ntrv - •• o~ov.d.d aoe.~.t eoa.ible future c~.na •• in the f.'e·st~ueture ~~ie~ .ioht '.ad te ex~.~.40" of •• ch entrv eeurre~tlv s.t at g, 4. CAe.erv.d for future .r. .xoan'fo~.) Aft.r ."itialfz.tion, the o~ly .~tr ••• fn the MFO o~ the .y.t •• ·~ev.ee the SY.t.~ .t •• lf eU •• r 1,1) e~d • "Qe~.r • • , u.er" C2~0,20a" on I ~on •• Y.te~.deviee or U".t there .s Ju.t one ~ t~at for the u •• r w~o reQue.ted the .nftfalizattO". All ~ther ."tri •• • r. I.roed. Before .ny ot~er u •• r c,n .tor •. fil •• 0" the •• ~. M.diu~, he ~u.t.reQu.,t t~ • • at· tfno-uD of hi. entrY by ~ •• ~. of the I!N .wfte~ .n PI~.ll. Unt41 the u.,r aetu."y er •• t •• his fir.t f.!e, howev.r, no UFO f. e.t.bl •• hed and h.s MFD 'ink wOrd re~.fn. at I • •• 1.2.2 UFO The for.at ef each UF~ block •• deoicted .t f.Our •.•• !. Th • • fO"ifte."ce of the ft.~ • • et UC ~ithtn .ec~ ~·word File Entry is as fe"owli Fi'en.m. - .•• the 8.ch.ract.r n ••• fer the ffl • • s ~e.crf~ed fn .,ctton .,1,1, .t~red .er~ •• two words in l.ft-Ju.tffied ~.df •• !0 form.t e.ee s.etto" ~.J). ~xte".fo" f. the J·ch.r.cter sufft. to the f.'e-na~e a',o de.crfbed f" •• ctfo~ '.1.1 ."~ .i~4- '.rly .tored i" ~.dix.!0 i" One word~ ~.te - fs 'xtrlct.d from the ,ow-order 1~ bUs of the v.'ue currently .tored f" the Monitor SVT by a keybo.rd OlTF co.~a~d C.ee .ectio" ~.'.1' at the tfme whe~ the f.'e wa. crelted, 4, Tyoe - f. ore.en~lY u •• d to ~ •• cr •• i".te betw •• " '."ked a"~ CO"t.OUOUI f.'e. (~ , t ~eIDectiva'yl th~ r •• ain."o thr.e bftl of the •••• werd .r. r •• • erv.da~a4"st the CO.lib'e future .ntroduct.e~ of ~t~er f.'e tvo ••• ~, count • coveri"Q 8 bft., 4. set to 77 when the ff,e is oD'"'~ for creation a"d oreve"ts the ooeni"Q of the .a~e fi', for .ny other Duroose until it ~a. bee" eo.o'ete~. T~~ eoy"t •• the" res.t to 0, T~e re~.4"f"o cao.city of t~e ••• bits ~.ag. PAGE 4-7 D08~.~N" Cl-1e) 4s p~ovtd.~ to .".~1e th@ ulaOe ffle·lt~uctu~e f~ a"v futu~. ooe~atf~g t~8" a sf"01e ule~. that t~e Mo"4to~ fo~ the Ivlte~ I~ould k"ow ho~ ma"v use~s we~e cu~~e"tlv wo~kf"Q ueo" a file f" o~d.~ to p~.ve"t ftl deletio" o~ mOdfffca· tie" w"fle .t.,l f" u.a. CTh41 fe.tu~e f. "ot fmeleme"t.d u"d.~ DOS because it fmc'fel thet eye~v ,C~OSE ueo~ a ffle (@ye" thoUO" t~.1 wei ooe~ed e~ faf""lv fo~ f"cut o~lv) ~'Quf~.s df~ecte~v cl'I"-UO ICttO". T~is obv40ullv takes time ea~t1cw ula~1v 0" DECt,o,. It fs "ot th.~efO~e d.emed we,w thw~fle If"c.~ it m.~.1v p~ot.ct. the sf"01. UI'~ aoaf".t ~fm.elf). lowi"O mo~. of t~e lame Ivsta", al· It would the" be "eC'SII~V Lock • usf"o 2 bit., f • • et to 1 w".".ve~ the ffl. is ope" fo~ exte"sio" o~ uodlte to o~~ye"t fu~the~ ope"i"a for the •• me DU~Dose u~tfl t"e f4~.t eDe~lw tfo" h.s bee" comoleted. The ff1e ~av Iti', b. ope"ed for f~put o"'v du~4"O t~t. oe~fod, how.v.~. 7. The ~emlf"i"e bits f" thf. word of t"e e"t,v w.~. ori o 4"allv rel.,v.d fo, the Ito~age of the delc,ibed ul'lde,. rl.t.·~ode of the ftle co"te"t Ca. .RE.O/.~~ITE 4" .ectto" 3.2.2). Thts ~IS l'Iot tift· Dleme"tad f" o~d.~ to a"ow ffles of m4.ed ",od~ d.ta. The •• bft. a~e ~ow loe~e. ~. St~rt 9. - shows t~e device add~e'l, fO~ the ff~lt block .llocated to the file ."d for e If"ked f1,. thu. fo~ms the sta~t of the fil. block-Chaf". Le"oth w, is the ~u"'be, of Dhvl4cI' blockl cove~ed the file e"d balic.llv e"eble. co~t,01 of ,,"dom 'cc.s. of co"t4ouou. fil ••• bv 1~. E"d - ShOw8 device add, ••• of the last ff,.-block, 4 ".cesl'rv ,eQui~eme"t fo~ Jof"4"Q 'f~ked ft'es. It. P~otectio~ code • il the efqht bft yalue bv which file Icces, CII'I be de"ie~ to u"autho~ized ule~a ,"d ~hich fs de.c~fbed more fu"v 4" ,ectfol'l ~.1.~. (The re"'ltn4nQ byte of the aame wo~d fs cu~,.e"t'v so,,.e.) .s l'Iote d ,e~lfe" the ff,st UfO block f. al~oeated to • uae~ ,"d 4. It"ked to t~ • • Dp~oo~4.t. w~~~ of hf. MFD el'lt~v w"e" ~e cr~.t.s hf. ff,st ifle~ The block ftself ~a cle.,.ad, a"d fts ff~st ent,v slot 4a th~1'I ~e.e~ved fo~ the new ffle. 5ub.eouA"t fil •• a~~ aS80cfated ~fth the fi~st ay.fl.ble ."'otv s'ot wfthf~ the UFO u~tfl no ~o'e ,emaf~. At this DO. fl'lt • fu~the,. blOCk f8 ad~ed end linked to the UFD "~f'e" DOS4."Nn ,~d •• clelred for •• m.'ar ,ct.o~. It .~oulrl h. "oted t~,t w~e~ a ~.w If"ked.ffle •• to be c~eAted, a~ i~.t.al .~t~y of F.'. ",h." Ffle",mft,. f.t'~lfo", O.te a"d Itl~t block ts ~.~. the f.'e f. o~."ed. Thf. bot~ rll.~vel t~. ~.~.etory "ot ,~d ereve"tl the oee"."~ of ,"ot~er ffle ~y t~. lame ".me. T~' r •• t ~f the ."try fl comel.t.d whe" the fil~ ~._ clo,ed. If ,ffl. f. deleted, the ffr.t t~ree w~r~' of ft. d.r.eto~v .,o~, •••• tt. "I~e I"d •• te"'io", ,~. removed I' thf, ., ,ufficte~t to fr •• the .10t for further U". No Itte"'ot f' ~Id., "o""ve,., to retu,." co~o'et,., v .mety IJFO blockl to the fr •• Icece o~ t~. m.dfu m• O"'V 4.1·~ ~H "'ID, Th. ",ec~I".lm by wh.ch the ~O".to~ co"t~ol. the "'ocet.o" of the 4"dfvfdual bloc~. 0" e med.u~ t, I b4t maP ." which 'Ich bft ,..cr •• e"t. o~. bloc~. T~e bft f • • et to 0 u"tfl the eo~re,oO"d."Q block ~I' b.e" 1 •• fQ~ed to 'o"'e ffl. whe" tt t, r~ •• t to 1. A. ",4th di,..cto,. ••• , a ",a.te~ co~v of the bft mle repr ••• "t."O the w~ole IVI.'lble ",~dfu. f. Ito~.d uco~ the m.dium ftself. T~' •• ze of the com~lete miD fo~ a"y ~art.cul.r med4um f. of cour.e.' fu"ct.~" of the overll' '.'e of the medium ft.elf I~d vI~f.s bet",e." d.vfce •• It follo"'., however, t~lt 0" III but the ''''lll-cl~.cfty ",edfl ",ore t~l" o~e devfce bloc~ ., ".eded to 'te~e the full ",IC. Mo,.eove,. it would obvfou.,y b, u"~.~lf.tfc for the ~O".to~ to have .11 of f! ." cor. f~r f.,.·~roc •• 'f"g It o~. ~.",., Th. ",ac f. th.~e~or. d •• vfded f"to ',Q",e"t., .Ich of whfch occu~.@. o~e devfce hlock ,"d o"'v o"e •• ame"t ".ed be IVI.,.hl. f" Co"e et I"y f".t.~ce. Thf, multf-,eg~e"t .t,.ucture wa' selected, ~.t~e~ th." a"oth.r .chem. i~ ",h4c" th@ ov.,.al' meo •• z. it co~ .tl~t fo~ III dev.ce. I"d ."divfdull bit. c~ver a a~ouc of b'ock~, "ot Ju.t 0"', becau.e ft offer. the fo"owi~Q edv.~ tlge.' t. Wistage of the m.dfum ~. keot to a mf"fmum (hl'f 0" .ve~lo, per ffle) a bloc~ 2. ~v ,.e.trtctf"g file oo~rAt.o~. to a compact .~el o~ cove,.!d by the .f~Ql • • eg~e"t 11'owed f" core, oreate,. efffc.e"cy fl obtlf"ed, eeoec •• l1v 0" mov."g-h.ad dfl~. ~ 3. medfu~ Co"t,.ol of I~lec.tfo" a"~ of block f"t~rle.vf~~ ~ellt.velv .f~Dl •• .s Fo,. t~e .ake of devfCA-f"deDe"d@"ce, ~h@ .fze of • • a~ .eo",e"t •• co"'ta~t fo~ III ~evfce, a~rl f. ba.ed UOO" the cao.cftv of t"e ."'ellest blec~-.fle, "a.e'y 84 wo~ds. FfQu,.. .... • -6 .~ews t~at t~e fo~~at of t~e ~e,ulti~q seg~e"t 4"clude, • fou~-wo~d o~ea~ble, t~1 OU~COII of w~ic~ il 4~dic.ted belowl 1. Link to block • 4~clie, t~at a eo~clete ~ediu~ ~it-~ac is loai" I fo~~ of lin~ed file and.~ig~t a, ~ ~elult be Ito~ed a"vw~e~e 0" the ~ediu~. In oractic., ~oweV8r, t~e indi v idull bl"ekl .~e CO"ti~uoul a"d are ol"erallv set uo dur4n~ .~4tia'4Ia. tio" at the ~ioh.addres, e"d for rea.o~1 to be Qive" i" 'Ictio" 4.2. Cu~~."tlv a'.o t~e ~ao-f4le CI"not bl evten~ld to cover a" 4"creale 4~ the ca· oacity of the ~ed4um a. it hal bee" ~.Iu~.d that 8"V IUC~ i"C~181. wf', ~or~~l'y be followed bv a co~~1ete.rei"itializatfo" w~ic~ wi" rebuild thl w~01e bit.~a~ 8f~esh. It should be "oted, too, t~at becaus. ra"do~·ecce,s caoability il "eeded, carticularlY for f41e deletio", a" .ndew ~f bleck' used for the bit ~8D il Itored 4" t~e f.~lt ~FO block al i~d.cated i" the orevioul lectie". Th4s '~de., rather t~a" the links, ~ay be u.ed 4" ,o~e inlta"ce' for .e~ue"tial accell a. we". 2. ~ac ~e.t "u~ber - il "eeded to allow co~~ytatio" of t~e ra"Oe of t~e b'ocks reorese"ted by t~e ~aD leq~e"t, usi"o alQorit~~1 ,.ke t~e o"e fol'ow4no (ba.ed 0" "u~beri"Q fre~ 1)' ~tG~E~T BLOCK • (~A~ SIZE X 1~ y MA~ .) • 1 ~aD lizl • gives "umber of wordl actuallv u.ed bv the ~aC s4"ce 10~1 dev~ces (oe~t4cu'ar'y OFCtaoe at cre.e"t) may not "ee~ t~e w~ole of t~e 'I~~e"t of eo".ta"t .izl for t~e.r cemolete ~ac. Thi. i"fo~· ~a~io" is t~~~efore ~Iou~~ed for the above co~euta· tion. It i. CO"ltant fe~ a oive" device - if all wo~dS f" the lest ~aD seg~ent .~e not ~eoufred, they a~1 all let to 177777. 4. T~I Li~k to ~0"4tor block - i. crovided to eneb'e t~e to aooly t~e o~il0'o~~y m,nt4on~d 4n t~a oravious section - that of keeoinQ '.n~ed file~ as fa~ as oOlsible at the fro"t e"d of the ~e~ium. Thil 4~olies t~at whenever t~e maD seg~e"t eu~~e"t· lv ~"core I~OW' t~et "0 ~ore block. ar~ evaf'able ~4th4n its e~ea, the sea~ch fo~ another free block for a li"ked file ~Ult alwavs revert to the start of t~e mao in ca.e lome ea~lier blocks ~ave bee" relealed by .o~e rece"t f41e-delet.o~. This link facilitates t~e orocels. r,~ai"4ng coverine 960 60 fi~st wo~dS Block. of on t~e the segment ~edium. for~ T~e t~e ~.D nu~~eri"g itself, of the bit. within eac~ wo~d •• f~om ~iQ~t to ,.ft. T~u. t~e fol. lowino simele alQo~~t~m .uffit.~ ~o~ t~e eo~v,~sion .o~ a ~e. lat4ve ~loe~ numbe~ 4"to the mao oo.4t.on of 4ts ~e~~e.enta. tive h4tl (a.suminq Bloek 0 • Wo~rl ~, Bft 0) 1. As ~ac ~.ntio~ed wo~d • Bloek/1e abov., the ~it-mao .t~uctu~. f • • • tablt.h.d du~.n~ ~.diu~·4"itialfzAtfo". At this t.~. t~. w~o'. mac 4. cl •• ~ed to 0 wit~ the e.e~DttO" of the bit. w~.eh ~.o~elent bloeks al~eady a"ocat.d fo~ t~. MFO, t~. -.D 4tlelf .nd D'~~'O' t~e SYlt.~ and fts UFO. tn the lalt ~ae •• ament 'ny bit. fo~ wh.c~ t~.~. a~. no CO~~.'Do"dfnQ blockl .~ • • 1.0 e.t to 1. In gene~el, th~~.aite~, a. a n@w f~le ~. c~.~t.d, the Mo"ito~ r.ad. a" aDo~oe~4.t. e.Qm.nt into cor., un'." on. is alre.dY t~.~. fo~ som. other Du~ooee. The ~e18yant htte fe~ blocks •••• an.d to the file are •• t to 1 .n the eo~e •• oment whil. th8 fil. fs b.fno buflt. wh.n .t 4. cloe.d, the cor ••• am.nt fl ~ew~ftt.n tnto the ma.t.~ CODY o~ t~e ~.diu~. If the ftl. i. late~ d.lete~. it • • • • tgn.d b4te a~8 ~e •• t to 0. File 4.1.4 P~ot.etion Curfn~ the ~ntroductien to thfl e~act.~, it wa • • tat.d that any file·own.~ •• ceete to be c~otected agatn.t the co~rUD· tio" of hie f11el •• t~.~ by hfm •• lf or ot~.r u •• r. e~artnQ the 'ame mediu~. In fact ~. D~obablY a'so wantl te eont~ol the for~ of aece •• thOle eth.~ ule~1 ~ave to h4s ffle •• ~o~.ov.r ~. may natural'y wf.h to Q;ye o~,at.r ~~ivfl.Q~1 to those w4t~ whom ~e i. cl0 •• ly a.lociat.d in hie usao. of the IYlte~ then .11 othe~ •• Ffgu~A 4·1 f"ustr.tes .n .fQht-bit code by w~4ch the u •• ~ ea" indieate his ~eauire~ents for .ach of ~is ftl ••• The eureo.e of each of th~ thr.e ~iA'dl Ihown f. A' follow •• '. ~wn.~1 the u.e~ ~im.elf can. in oenera', alw.ys aee.ss his f41e. in anv m.nner he eh~o.e~ (e.~. Qead, w~ite, D@lete, etc.). How~ver he t. affo~ded two lafequards r.ere •• nted ~y the bfts 4n th4. fi@ld. qy .etti~g bit e to 1, t~e Ue4~ ea~ denY ~im.elf ~rite an~ O.'ete cacabflit4e. fn o~der to nrevent aceidental cerrunt~on of ~is data. wit~ hit 1 at 1. he can D~ot.et t~e fi18 aga4~.t ~ute· ~atie deletion bv the sy.tem when ~e log. eff the eO~Duter ( • f@.tu~. not yet 4~D'e~e~t~d in OO~). r,rouOI this f;el~ e.n b• • et to • three-bit code by whfe~ t~e user ind4eat.8 the 'eve' ~f .ec@ss ~e is oreca~ed to al'ow h4s "friende", i.e. those who PlGr: 1'-11 DOS4.~Nn lame ~ave t~e codes o~esentlY ., 5 3 1 '" UIe ~~OUD a,sfcned • no AcceSI at • run accel. • ~ead acce.s • w~fte accels • d@lete aceeSI ~u~b@~ as ~fmle'f, T~e a~e' 8" .ne'uI4o~ of ~.g~e~ fl fmolied. Fo~ e.emDle, w1t~ D~otectfon 'eve'l set at code 1, t~e Monitor w4" allow a "fr1e~~" to w~he, read and ~un t~e f4'e, hut "ot ~e'ete ft, At 3. a~v leyel~ of.cou~le, t~e Ot~erll t~41 f4eld can be sfmi'a~'y coded to .how 'evel of acce.s allowed to Ulers outlfde the ow"er" Q~Ouo • t~e • e .ndtcated tn sectton 4.1.2. the resu'ta"t byte fs Itore~ i" t~e. ~ile e"try f" the UFO w~8n the f11e il estab'tshed. The Mon4tor alwavs ch~cks eye~v recuelt for accea' aoef"lt the stored code Clee lectton 4.4.2). T~e ijler cen c~.~ge the code at anv time ~1ther directlY from a Dro~ram using a .RENAM o~ ,~EEP re~u@.t d.ler1b~d 4n ~eetio~ 4.8.4 or throuoh t~e IRE o~ IPq .witchel available in DID_tl. It Ihould acatn be noted that t~e Drotect40n offered by t~fa ca~ be valtd on'y when e~e~y user shar1nQ the me~1um f' perform4n~ all his I/~ oDerat1on, wfth1~ the fi'e-structurl f~amewo~~, f.e. by .REA~, .WRtT£ or ,8L~e~. T~e Mo"ttor can"o! end wi" not deny acee.1 of any lort to a u,e~ reQueat4"" .T~~N Ceve" to ftl own fi'el). cod~ P4G~ 4.2 --~-~. .. i/-t2 . Acolicatio" By Dev4ce The ov.~a~l ~hilo,oohY fo~ the ~O, file-structu~e, ~esc~ibed 4n the oreviou. section_ orovides fo~ ooe~ati~n. which ca~ be deviee-i"d.cen~e"t to some con!iderable de~ree and this concect. ha. been ho"ou~ed al fa~ as cossibl~ in its imclementatio" on a" disks an~ DECtace. ~eve~theless, thA~e a~e obv~oul_~~ob'ems ~n rto~d adhe~~"ce to it at 8v~rv ooint becau.e_of the natu~e of the device. themselves, Th4s section therefore illust~atel the detailed acelication of the ffle·lt~ucture and in ea~ticular in~icate. var4atien. f~o. tha no,.,.,.. 4,2.1 .'thouah the ~Ftl di.k 4. ba.ically wo,.d-o~ie"ted, nns 41'11~Ol~' a block st,.ucture ba.ed 0" ~4 wo,.ds t~ ~ bloc~, with the d~iyer erQvid4"o the "ecel.e~v add,.e,,·cO"V4~lfen. The RC11 dilk drive,. alwav. a"u""es a .imilar blOCk .ire a"d 4" ,. •• ~o".e to e.ch IYltem reQu •• t fo,. a bloek, tran.f.~1 the a~c~oD,.iat. double 32-word .ector accord4nolv. Fu~the~more the additio" of .xt~a ~1atterl to e4t h er co"t,.o11e,. merely •• tend. the continuous .urface available to the .y.te~ tcrov'ded of cour~e that the u.e,. h.s chy.ical'y AI.fQned all hi. cl.tter. in a .t~ict alce"d4"~ •• oue"ce fro~ 0). To All fnte"t. a"d ourcOle., the~efo~e, RF t1 a"d ~C11 Sylteml diff.,. o"'v 4n t"ef~ ove,.all caoacity a"d "AnCe the "umba" of bit-""ao bloeks needed to eo"t r 01 this. The followi"o table .how. the co,.,.escon1.nce, PL.TTER~ 1 X RClt 2 X RClt J l( RC11 4 X Rt 11 or 1 )( RFt! 2 )( RF11 ., )( RF11 4 )( RFlt QLnCI(S 1~2' 2P14-' 3~72 .096 8192 1288 1~384 BYT MAPS 2 3 • 5 9 13 18 The balie fermat for eith4r d4lk, whe" "ot i" use AS the .y.tem d~v4ce, is 4l1ust~ate~ at fiourA 4-~. Th~s shows i" ca,.ticular that the ,.eQuisfte bit-mac blocks ArA 4" a contfguous Ar~e at the ~ioh e"d I' ~es "oteri in s~et.o" 4.1.3. Thev a,.e stored here for two reeson" t. qy thei" nature, they ~u,t be ued~t~d a"d .~ould not be i" a"v Dote"tfll1v wrfte-loek~d Irea - the toe of the d4sk .s the lelst likely oa,.t to be e~o tect~d. PAGE~13 The tOD of t~e di.k 0" t~e othe~ ~e"~ f. t~e "o~~e' Dl.ce fo~ the .to~aoe of CO"t.ouou. file. • the bit ~IO block. I~e thu. cO~D.cted to keeD theM out of the WIY, The Que.t4o" of w~ite·D~otect.o" ."t~oducPS I"ot.he~ rl •••• ~. 'l~ftY bet wee" the two ty~es of dis~ w~e" ute1 II M Iy.te -dev4ce. The hl~dw.~e flc.'.ty 0" ~oth D~ov.de. A set of .w.tc~e. with elch .w.tch cove~i"Q a D.~ticu'l~ .~ea of the dilk .u~face. The .~e. howev.~ •• ·"ot t~e •• ~e. Fo~ ~e'IO"' stlted i" .ectto" 2.1.2, DOS doe. "ot cu~~e"tlY .,'ow the use~ to 'DDly I"V of the.. ,witc~es, ~.ve~thelell to me,t t~e. futu~e eO".b~l.t~ that the Me"~to~ f~.e'f ~iQht be w~fte-o~etected, t~e t9D of the a~el .~e.e~ve~ for ft. use h,l bee" .et to .cei"c.de with I" aDD~oD~iat~ .witch. 0" ffou~e .-9, whiCh give. the layout of a .v.t.~ df.k, a HI~dwa~e P~otectio" ~.n~ hI. bee" .how" co~~e'Do"di"~ tOI t. ~"d of block "'777) 2. ~nd of block '.31 block '1077) '717 0" 0" RFtl Rctt to Ce~u.Yalent C,Qu4vlla"t to wo~d Ictual F.'e.D~ece"i"o oee~ltfo"s 0" both RFll a"d RClt fol'ow the oe"e~,' outl~"e qtve" ~"the D~ev.ous sect.o~, Lf"ked f.'e delet.on .e~ft. fu~the~ cOM~ent h.~ ••• "ce th •••• o"e ODe~ et.o" h,"dled d.ffe~e"tlv 0" O~Ctaee I"d di.k, A ol~t of the D~oee.s •• the IdJu.t~e"t of the .I.t.~ b4t.mao to ~e fleet the bloeks ~elea.ed bv the ~elete~ file~ Thfs ea" 0"lv be eccomDlf.hed bv I •• e~ch of t~. file .t.elf to dete~ mf"e the ~elevl~t blocks, .4"ce the ge"e~.' .t~uctu~e D~O vfde. for no othe~ ~eco~d of thi •• Such .el~eh fMo'.e. thlt the 14"k-wo~d. on the blocks the~.elvet ~ust be ~e~oved to 'lfeQu.~~ Ig •• ".t Dote"tta~ disk-co~~uot'O" l~te~r fo~, .ho~l~ • o~~Q~a. o~ .• v.te. flilure occur, fi' ••. mfght rema4" i"comelete 0" the d4.k a"d the ~e.u't. of de'eti"Q them ." thi. wav could ~e u"D~.diet.ble. This s.erch I"d '4"k.e'ea~ obv40u.'v tlke • • Ome ti.e but it i. not dP.e~erl un~el.onab'e, beclute of the relat~velv fl.t d.,k Icce •• ~~t __ enrl ft IVO· fd. oth~r comnlicatfon' to be d •• eu •• ed i" .ectio" •• 2,J, "'0 The f"te~lelve factor for linked f4'e' 0" both ~Ftl ."d RCtt fl 5~ . rh~. ha. b.~n baaed u~o" the oDtf~a' t.me tA~en bv the Mo"fto~ to eO~D'ete the D~oees.i"Q invo'v~d f" load4"Q a D~o~ram fro. these df.~ •• The O"'V mov4"O-hearl di.k.D~e.e~tlv ,uDoo~ted bv OO~., the R~11, thOUQh thi. occur. 4" two v.~lfo"1 • O"P. ~iQh de"sitv, DOS4."NI'l PAGE 1·14 .t~uctu~e~ into 480~ ,eeto~, of 2~6-wo~d. "eh. the ot~e~ low de~'.tv with ,eeto~' ~,duced to 128 wo~d •• '0' 'i~oli city, bot~ v,~,40n • • ~e hlnrlled bv the ~on4to~ in 25e·wo~d block., t~, Rklt d~4v.~ .Q.4n o~ovidina .dd~e ••• conve~ •• on whe~e ~.alJi~,d, unl •• e the fixed-head d4,~ •• the eddition of e.tr. "K-lt c~~t,4dee. _cennot be t~eat,d ., .i~o1e ext.nsion, of • cont4nuoul Iu,f.ce, 'inc' the U"~ cannot be exo,cted to r,tei" the ,.~e " t of ind4v4duallv c~enQ,.ble e.~t,4~g •• t008t~.~ ., en,entitv, In'te.d 'aeh MUtt ~e~ •• n_e" i"~e~end.nt u~it w4th ft' o~n 't~uctu,e - and, in f.et, i • • d4ffe,ent madfUM 4" the ,,".e of the deffn4tton of • ft'e oive" i" the int,oduction to thf, ch'oter, A,. ,e'ult, th, "umb.r of btt m.PI to cont~ol the c.o.citv of .n RKlt dfl. i. ,'w.V' con.t.nt. _t~ough of cou~.e the~. 4• • dffie,e"c. between the two ve,..40n,. HIGH DENSITY (4810 ALOCKS) • ~OW DfNSITY (241~ e~OCKS) ~ • , MAPS ~APS The lavout of .n "Kit dilk, w~ethe~ u.ed •• t~e .v.te~ d!vice O~ not, 4. otherwi,e the •••• " th.t i"ult,.ted fo~ the fix.d-he.d dil •• at figure. 4-8 .nd 4-9. In D.~t.eul.', th1. mean. that the bit m.~ ~loek. r.m •• " toaethe, .t the top of ~he di~k, be~'IJ.e th ••• e.in .110w. th, u•• r the .o,t conttauou. ,D.ce fo,. la~Qe ~.ndom-.ccel' fil... Thi. t. con,fd.red to be more fMDort.nt th.n the ,eductton of he.d·~ovement, w~.ch mtaht follow tf the meo ,eame"t, we~e d.'De~'@d ee~e" the di' • • u,f.ee .0 thet .ach ~e.4d. Me~e clolelv to 4t' .r.a of centrol. (Thi, WI' 0,404n.',v pl.nned • h'nee t~, linked-f.'e .tructu~e o~ t~e m.D., It .heuld ,1.0 b. noted that ·~.rdw.~e.D~o~e~tfo" 'in." ••• ueh •• me'n~"Qle •• fo~ ,,~tt, .,nee thf. offer. "0 •• 1eettve w'ite~l~ck fe.tu~e • ft , • • 11 or no~hfnQ. Neve~the'e." the bound.,v it ,eo,e"nt, f. the ."d of bloc. *277 whfeh give, the Mon4to,. ,ufffctent r ••• ,ved .re. fO~ ft, o~e.ent need. and lOme ~oom for expan.4on, F41e-D,.oc.,.4"g fo~ RKlt ~Gat" follow~ the outl.ne. o.ve~ i" I,etion 4.1 •• au,'4fted at the e"d of the D~.V.OU' .ectton. The Interleeve facto~ i. al,o 5 on the .e~e ~lli. a. th.t u,ed for "Ftl ."d RClt, .'thouQ~' i" ~."v ways, DECt.D. ea" be eau.t.d to dia.s in mode of us.a. to the extent t~at most f41e-orOc.,.inQ ooe'a. tiona cen b. t~ulv deviee-inde08nde"t, 4t ~.. on. .e~fous d~.w-~Iekl 4t .s .1"Q'e-t~.eked I"d it ., 'f"e.~. It i. ~b. vioullv "ow.~ t~.~.fo~e ~nd tloe-Dolft40ni"G .,.um., • ~uc~ PAGE -st-I!5 OOS4.~Nn g~e.t.~ 0". .1a",fic'"c,. m."o~ .ff'ct of t~is •• t~.t ~ecto~y ."d bit ~.o blocks, w~ic~ .~e ae"e~"1Y .cce.,.rl 04- 4" •• ~e ,eQue"ce • • ~oul~ be keot ~e •• o"ebly c10se tog~th.~ ~.th.~ thA" .t oDoo.ite e"dl •• 0" dt'k. T~4' i. ~.adi'y fe •• ibl~ whe" the ove~." .t~uctu~e .l'owl .lloc.tio" of t~ •• e block. i" ,"y eositi9n ."d Dotentia' w~ite-'oek."Q does "ot ~eou4~e co".ide~.tio", .ince thi. i, not ,,'ective. the A .eco"d co".eQue"ce i •• modification i" the fo~m.t of • link.~ file. If •• e.~ch fo~ t~. ne.t f~.e ~,eckf~'8Ch., the '"d of the m.o .eament cu~~e"t'Y i" u ••• 4t i. ~ •• ,on.ble t~.t th4. le.~c~ b. ~e,umed f~om the st.~~ of the .e~ m.nt on di.k • but "ot '0 0" OECt.o.. ~ee.u •• of the o~y.i· c., t.c. cositiO", .t m.k •• mo~. s.".e to UI' t~. h.~dw.~e f.c4l4tv fo~ t~."sfe~~i"g i" ~ey.~.e. Howev.~, t~i. f.etl.ty onlv .ffect. the .cce •• of the t'De, .t the eo~e .nd, t~.".fe~ i •• lw.ys fo~w.~~s. Tht. ~e'n' that b'ocks w~itt." b.ckw.~d. mu.t ,'10 be ~eAd b.ckw.~d.. Me"ce tt b.eomes "ec •••• ~y to ~em.mb.~ t~e taoe t~."sf.~ d.~.ctton wh.n the file i. c~e.ted. s;"ee one OECt.De cont.4". on'y !57e bloek. of 2!5~-~0~dS e.c~. it is conyenient to u.e the li"k fo~ th4s OU~OO •• I Po.itive li"k • ~e.d "e.t bloek fo~w.~d. N'Q.t1ye 'ink • ~ •• d "e.t b'ock b.ckw.~~. The ••• ~ch "Qo~ith~ .ctu~lly .oolied to OECt.De u •• s the f.ct t~.t when the teoe i. stoooed by t~e d~tve~ efte~ t~.",fe~~.nQ e b'oc~ fo~we~d, it t •• oo~oo~ •• telY Do.ttio"ed fo~ 4~~e~iate ecce •• the o~eced4"Q b'ec~ tvic. ve~.e fo~ • b.ckwerd t~e"sfe~). Thu. this i. the ooi"t f~om whic~ the ••• ~c~ i. ~e.umed. He"c. t~e fo~met of • DECteDe li"ked fil. ~ioht 'oo.lr •• fllust~.ted i" ftou~e 4-10. to 84"ee the drive~ .lw.v. stoc. the tao. bet Wee" t~a".fe~., t.De ~o.itte" t. allo t~e b •••• fo~ the interleAve f.cto~ on OECt.ce, c~e.ent'v set It 4. Owi"Q to the ttme .ctu."y tlke" to bri"Q the teo. to I .tend.ti" I"d late~ to b~.na it b.ek ue to "o~~ll soee~ for I tr.nsfe~ in the .eme di~ec tio", th~ee b'oc~, usuI"Y 0'" ae~o •• t~e ~eed·w~.te ~ •• d. oec •• ~o"."y • fourth ~.v e'IO, e.oeci."y if the brlki"Q·mech."i.~ of the t~I".OO~t is i"eo~rectlY IdJusted, ."d tlOI reoOlitio"1"o i. the" "ec,s'~ry •. ~owev.~, the f~. QU'"CV of .uc~ oceu~re"c. i. "ot lu f ficie"tly htoh that tt cu~~e"t'y WArrlnts An i"c~ ••• e 4" the IF when this ~.Qht u""ece.llri'y. 4~~ose some 5~ Mil'4seco"d. of e_tra .ce ••• t4me for .~c~ ~'oek in ,'~ost ." OErtloe 'i"ked-fi'@ oDer.tionl. L4"ke~.fi'e de'etio" w.s s~ec.ficll'y Me"tio"ed in 'eetio" 4.2!1 b.c.u.e t~1. 1. one major .~e' ." w~4e" DECt.oe •• d1ffere"t. Thed1.~ ~e~Mod w•• S~Ow" to be • m.tte~ of ••• rchi"o t~e fill for its Iisoeieted blocks ~nd at t~e same t1~. ele.~1~o the '.~~.wo~d •• "" OECt.o. t~4. i. out of the aUI.t~o~. the 'I.~eh '~O". ~~a~t b• • ll~othv ~De~~t10", to lee ••••• ch bloek • • eco~d t1 •• to el •• ~ it. 'i~k.wo~d, w1th t'OI ~lo~.~t~o"1~Q .Iae~ ~1m. ~.k •• 1t .~eo,.~b'.. T~. o"'y l't.r"lt1v. 1. t~e Drovt.fo~ of I "D.~.te r.cord to .how thl bleek. f~ •• eh ftl • • ~d the .ho~t •• t fo~~ of thf. t. I"oth.~ btt ~ID. How.v.~, tht. th." ~If ••• t~e DPo~1em. of hlv."a .Iv.rll .10' 4" e~~. It 0"' t.~e (t~. m•• t.p fop tl~mf"lt1o~ of block ev.tl.b111ty .~d 0"' for •• eh f1', cu~· 'I"tlv u"d'r e, •• t1e~) ."d of th~1p 'to~.a. UDO~ the O!C· tiD'. 80t~ Qu •• t.o~. hlv, b •• " .olv.d by t~DO'~~O the fol'OW;~Q _~ t~tet10~, o~ OECtID. u•• o., w~teh.I~' ~'I.o".bl. t" ft. el •• but could not b. eo".1d,r'd for dt.k •• d.· •• 8y ."~wt"Q e~ly 0"' f11, u~der e~ •• tto" I t . t1 •• ("et w1t~out .," •• for o~lette.' oeeP.tt"O eo~.t· d.rltto",) t~. " •• d fo~ I"V but the ~.,t.r btt •• D t~ eor. d1 •• r., The f;le e~Dv e.~ b. eo~· .t~uet.d fro. the b.for • • "d .fter .tat.. of the ~I.t.~. Ao.~t fro~ •• vt"O eo~., t~1. al,o ~.au1~ •• , ••• d.O.rtu~. f~om the •• thod of Qe"'~I' opoe •••• t"O • ~,~.,v o~ t~a oo.~.t.o~ whil, th8 ftl. t. ele,.d. co •• ••• Ay t~oost"Q • ~a.1mum of 58 ftl •• o~ I •• ~e'. t.o., the tndtvtdu.' ftl. miD' e." be oAeked into. CO"t1aueu. I~" of 8 bloek. c.i"c. e.eh bloek of 25~.word. c.~ .ccommodlt. 7 .10, elch u.1"o J8 wo~d'). Mor.ovlr, thi. ftaur. of 56 •• 1"0 the eaDleity of 2 UFO blocks e" the b •••• of 28 9·wc~d .nt~t., o.~ bleek. The for I"V f1'. 1• • • • 1ly .ce •••• d by eQult1nQ ttl rel.ttv. oosttt~~ t" the eonttouou • • ~ •• to t~. pel.ttv. Dostt1en of the ,... f11.' • • "t~v t" the UFO. For •••• 01., the lath ftl. in the d.~.cto~y hi. ttl ~'D .top.d •• the "co"d e~t~v in t~. f1fth block of the m.o ~.. (It .hould b. "eted of cour •• th.t the fo~.ao. 1na " •• d "ot '091v to co"t10uou. ftl". If ."y of the ••• ~ ••• t.blfsh.d on the t.ee, t~.tr eo~r,.· oondi"Q ftle mao. are 1.ft bl."k.) m.c .r- Th. leyeut of I OECt.oe, allowt"Q for the 't~ttlttO"S d •• • crib.d, fs ."u.trated at f'oure 4-11. It will be see" that the full MF"/UFO .truct~re f. orovtd.d. ~astcal1y, tht. ~a· 4"t.t". e~mD.tibtlttv with dtsk oo.ratto" •• Tt .1.0 e"sbla' the oarhlo, dub10u. factlitv of .eve~a, u.ar • • h.r1"q the •• ma teoe. The UF~, of cour.e, c.""ot be e.te"ded, t" view oi the ~.str1etto" 0" t~e numbe~ of ftle.. (S~~ee ~ECt.ee •• ~ot ~u~~,ntlY a oote~t •• , Ivstem deyfce, t~ere is "0 cerr •• co"di"Q illust~.tio".) DOS'.~N'" . DOS fi'e ~.".o.~e~t is ce~for~ed by • • et of ~o~ito~ ~o~ules w~ic~ a~e .1' celled bv EMT, eec~ k.vi~Q 4tl Own u~ioue code. ~oweve~ ell of tke~ ~ave c~a~acter4.t4es w~ick ~ake the~ ~4if8~e~t f~om t~e gene~al 1/0 ~odu'es di'cu!sed du~i"o c~.cter 3. T~e curoo.e of t~t. sectio" 4s to exe~4"e t~e.e c~.r,et~r4.tic. ,~d tke~ to discuss tkeir CO~MO~ tnte~face ch."""s. T~e 4~dfv4~ual modul~1 will he delcrtbed fP'l fol10wfno ~ectioP'l' • • ,, tke module. conce~ned .~e l4.terl w4th t~e4r EMT code. iP'l ~~O~re '-12. T~ey e~e I~own to ~el1 4nto oP'le of fou~ c~te00,.4.sl 1. ~odule. fo~m celled directly ff'e-~ou.ekeec.P'lo .DLETE, etc. e use~ funct40"., f~o~ o~oo~e~ e.o. ~odules called bv otke~ Mo"4to~ ~out4n~., 4"e oe~eral 1/0 ocer.tio"s suc~ e! .OPE~, to p~ovide f4'e-~e~dlf"q. '. to cere .ALLOe, cerfo~m. 4n o~~e~ ~odules ~odules celled oeP'le~ally bv otker fi'e-~8n~QemeP'lt to cerrv out eommoP'l 0~e~et4ens such .s ~f. reetory le.rc~iP'lo. Module • • cecf.llv .Isocfated with ot~e~ ~odu'es the fi'e-menaoement .et. in Th4. orouofP'lO fllu.trete. one obvio~. df1f,re n e' from t~e oe n er,1 tlO module.. o~'v tho.e fn t~e f,,.st cateaO~Y are immedf.tely eccessfble by • u.er. The.. of cour.e, beinQ 1/0 ~o~u'e. tke~se'ves ~eve EMT codes iP'l the r'"oe 0.27 es the li.t .h~w •• T~ev keve orelcrtbe~ c"l;no .seQueP'lcesl de.e,.ibed i~ the P~oer~m~e~'s ~,"dbook, whfc~ inelude the p •••• "O of f"for~etion OP'l the crocesSor .tack e"d tkis must be removed befo~e t~e u.er crOQ~e~ fs ~ee"'ed. On entry f~o~ t~e EMT ~."dle~, the steck too cOnt.i"s t~e eo"tents of the o~Og~.~ Req.lte~. as described 4" eectfoP'l 2.2' tkese mu.t be restored o~ e.ft •. Actuel Regf.te~ conte"ts oessed by the ~~T h.ndler a~e esoeciallv ~elev8nt to t~ese Modules, in o.~ticula"l R0 • add,.ess of. the O~B for t~e dataset nei"Q serviced R1 • add~e.s, 0" t~e stack, of the eal' c.ramete~s casse~ by t~e c~O~"em The ~odu'e. iP'l cateQo~tes 2. t~rouah • 0" the ~t~er ~aP'ld are iP'lvi.4ble to t~e u.~,.. as indicateri "'v t~eir E~T codes. I" the PrOe,.a~Me~'s Ya"dnook t~e.e are Show" a. reserved fo~ 'Yltem use. T~ey a~e not iP'l the 1/0 ra~Qe .ince t~e ~o- DOS4.RNO PAG~ 1l-18 dule., t~ouc~ sti1l oe~fo~m4"c I/~, a~a cI"e~ at I leco"d o~ even t~i~d level w.t~." t~e ~o"ito~ and t~~ ~e~u ••• te f"fo~mlt4o" ~al Il~eady bee" luoe1ied It t~e ff~lt 'eve'. Thi. flct e110 cause. oth~r cha~Qe. 4" t~e ce" terfaee a. fo"ow •• I"d e.ft f"- 1. Ca"fnG 'eQuences need fo"ow"O 1eif"fte fo~m8t. T~e"sie"t i~fo~~etto" mey thu. be t~A"sm.tted efther th~OUQh t~e Itack o~ the ReQi.te~I' whfoheve~ i. more co"ve"4e"t to t~. ~odu'e. be4no ea"ed. 2. If t~e ~egi.te~. a~e u.ed, the ca"e~ ~out~"e .tf" ~eceives t~e deta 0" t~e .taek, A• • eved by the !MT ~andle~. (A tyoice' .tack fo"owf~Q a CI" i • • ,'ust~ated et ffQu~e 4-13.) 3. Un'e" the interflce ~eQui~e. ~t, t~e .eved Reot.ter conte"ts mu.t be re.to~ed 4"tlct te the cI"i"Q ~outines. Th4s aoDl ••• i" oe~ticule~ to ceteQo~te. 3 , 4. Modu'e. in ceteoo~y_2, i".fsct, e.it dt~ect'Y to t~e u.e~1 they th.r.fo~e actuI"Y ~emove the ReQi.te~ co"te"t. I"d the .eved elll PC I"d st~tu. i" ord.r to o~orluce the .tlck .tlte fo~ .uch exit. 4. Contents of qeai.te~, o"_.nt~y f~o~ the F-MT hlnd'e~ i" g.ne~81 hive "0 .ionificl"ce. A les. eoce~e"t diffe~ence bet wee" the file-mlnlQement module. en~ the othe~. I~ile. f~om the feet thAt they sti', ~~ovi~e o~oo~em .e~vice.. The u.e~ ee" th~~efore ,.'ect between mekinQ them ~es.dent, efth.~ Oe~me"e"t'y o~ Ju.t fo~ a o~oo~em ~u", o~ leevinQ them to be .waeoed 4" when ~. au4~erl. Fo~ thi. ou~eo.e, he i •• "fo~med of the e.i.te"ce of e" ef them - even ff they a~e .hown only a • • ub.tdil~y ~outi"e. 4~ Aoeend •• C Of the P~OO~lmmerls H8n~book. If he choo.e. residency, there i. "0 e~obl.~. The sweoef"; .ituatio" .~eweve~ ia e"othe~ ~atte~. In ~ellitv, m~dule. fn eeteQo~fe. 3 , 4 .e~ye el .ub~outt"el o~ov.dt"Q loectll fU"CtiO"1 !o~ the othe~. but they C~""ot ~e b~ou9ht into the Swec Buffe~ fo~ this fs stfl' occucied by th, c,',f"Q dules ." ~Iteoo~ie. 1 a"d~. The ,o'utfo" f. thet the 'ette~ ebtl4" Inot~e~ 256-wo~d ~uffe~ f~o~ f~ee ce~e, vie t~e ~o"ito~ S.GTB ~outi"e described 1" sect4o" 2,.,2. end ~ove themselve. f"to it. T~i. then 'elves the SWle 8uffe~ free for the celled r~uti"es to use in the "o~me' wey whe" reQuf~ed, es desc~ibed fn Section 2.3. .0- The ectuel ~ee~e"4c. "Y w~ieh this eeerst4o" •• meneQed des~u~the~ excle"etion. I" the f4~lt ellce, the ~ove.out must only occu~ if t~e eeteao~y 1 o~ 2 modu1e is ectusl1v 4" the Sw.~ ~uffer a"d "ot a'~eady ~e.4de"t cut.ide 4t, fo~ obvious ~eISO"S. T~e mOdule ~ust itself resolve this 8"rl 4t e~ve OOS4.RN" 0"- use. t~e fact t~at the UIAge-Count i" ftl f~~~t byte ca" 1v ~e a if 4t ~al not ~@ee1verl co"t~Ol throug~ Swae A~ea Ma"Ager Ci" much t~e lAme wev that the other module. de.crfbe~ '" cheeter 3 d~ter~1"e t~eir exft leQU4"Ce). If the COU"t fl "0"-0, the extra buffer i. obtai"ed a"~ the .ove fl eccomol~.~erl, aa ~lluatrated~" ~4~u~e 4-t4~ nurf"o the move, due ~~Q.r~ 41 tak." of the oOlft4o"-f~de~e"de"t "sture of both buffe~s. I" adrl4tio"~ the ffr.t word of the ~outf"e w~e" .tored i" the "e~ buffer is u.ed as A eOU"te~1 t~4. must stert at 111401 Cor -1,1) sf"ce, al ~" ove~1ev, the routi"e ce""ot be re-e"tre"t e"d h@"Ce 41 o"'y once called, ft e"ria at 1 8fter the move and thul Itf'l f"dicetel "o"-rel.de"~y. Th~ routf~e the" cleerl the f1rlt wo~d of the Swe~ ~uffer to free it for. furth@r ~ae a~d_ co"ti"ue' f~om ftl "eW locetio". 0" evft, the extra buffer must be ~etur"ed to f~ee eore. however, the routf"e C4""ot do thi. whfle it fl itaelf st4" in the buffer. T~erefore whe" the UleQe COU"t Cal "oted above), I~OW' .ueh ect1o" to be neee.· lerv, the routi"e simulates a call te the ~o"fto~ S.RLB .ub-reuti~e bv olac4"o the system exft eddre.s Cwithout UI· aQe-Cou"t deereme"t) too of the ateck a"d nv the" u.f"Q JMP rat~er the" JSR. 0" The followi"g paraQreehs descrf~e the date 4rees eaoecfallY esteb'ished for the tre" •• 1slfo" of ffle ~e~eoeme"t deta. A', user o~oorems callf"g. for ffle-ma"aQe~e"t o~e,atfo"s, or for Qe~ere~ I/O w~feh might 'ea~ to .uch oDe~8t40". ff the device is right, are reoufred to suoely ff~e. f"fo~metfo" throuel'l e User File Block (IIFP). Thfs i. deserfbed f~ dete • • , 4" chaoter 2 of tl'le ~rogrammer'l Ha"dbook. Brfefly, el show" 1" fiQure 4-1~, t~fs e"owa the user to f"d1cate ~fs ~uroose e"d fde"tifY the ffle reQuired, f"c'u~f"g fts ow"er, (ff "ot himself), A"d to esteblfsh ft. oroteet40". It e'lo ~rovfrles ~oom for the Mo"ftor to retur" error 4"formatfo" a"d a" ~v.t should such error oecur. The a~dre~s of this F4'e-block 1. oasserl ~s o~e of t~e oro· are. cell ~arameters a"d the Monitor routf~e uses it to ac. cess itR eo"tents as reoufred. ~oweVe~, al 4"dfceted f" section 3.1.2.2, the user can suoolv diff.~e"t f1'e f"fo~ma tfo" v;e • keyboard A~SIG~ commenrl. If he h.. do~. th4s, t~e .tN!T routine seves the add~e~8 of the ~e'eva~t e~t~y 1" the OAT ooi"ter i~ the d8tAset ~O~ as "ot~d i" seet40~ 3.2.1.1~ The fi'.-~aneqe~e"t routi"e th@ref~r@ eheeks .uc~ e"t~y a"d u.e~ its eo~tents 4f ve1frl (se~ L'II( 4n !lactio" 4.4. U It el~e.dY heen ~entfoned t~.t t~e file-~.neQe~e~t ~e e.n UI. t~e .teck or R~Qf.t@r. fer tr.na~itt.n~ tran.ient det. between one enot~er. ~o~e Der~ene"t dete w~fch ~u.t ee ~eld ac~osa .ever.l r~oue.t. r.ouire. d.ff@~ent .tore;e. ~uc~ datA, betng IODlice~le on'y to the dete.et ~einQ .ervteed, •• i~oure and 4. t~e~efore 14~4lar to that .to~ed fn t~e no~ fer oener.l I/~ orecessfno. AI shown 4n Seetion 3.1.2, t~e size of t~@ ~DR 4tse'f ts aet to cater only for t~e ;eneral need, ffl~.~.neQe~ent r80uires ad~ittone' IDec. e~d thf •• 1 provt~ed in • Ftle-tnfo~~et.en qloCk (Frs,. ~ •• d~l.. F'gure '-\6 shows t~e FIB for~et. Ba.fc.lly th4. t. de.f;~.~ to folloW e 180uence cerrelPondfnc te t~. file entry 4~ th! UFD. It will b. not.d, however, thet t~. f41e ne~e ft.e1f t. not fncluded. Thi. •• unn.c •••• ~y fer a ffle whfc~ .1r8ady exi.t., for e n.w ff,., e. noted 4n Section •• 1, t~e need f. re~ov.d beceu.e t~e entry f • • tored 0" the ~ed.u~ ,a .oon e. the f41e f. ooened. Ot~er .te~. doeooear te .yofd unnece ••• rv acce •• te the ~edtum. The ouroole of .ec~ ft8~ described below. .a 1. ~ext Block - 1. orovided ~afn,v for th~ creatton or exten.40n of e lfnked ffle, .tnce the a"ocetion of the next block mu.t occur before t~e current one (or the UFD f~ t~e ca •• of .OPEN~) c_n be wrftten. ~ow Ooen COde - f. uled to tr.nl~it the apcroorfAt@ content of t~e IJFA ~etwe.n Oroo~a~ ~e~ueltl' st"ce the 1.tter is only .ccelsihle durfno .OPEN. (.ee Section 3.2.2.1). *- Extenlion start block saVe' the ~eoin~'nQ block follow4no .OPE~E. T~ orotect t~~ u.er .olinlt feflure .nd .'le allow Alte~nat4ve ule for .ncut at th~ ~a~e t4me, I ff'e beino extended i. left 4n fta original .tl~e u~til t~e .xtens4~n f. ee~olete1 by .CLOSE. T~is item t~erefore fl needed to enlbl. the ".PPE~O" o~eretion w~fc~ occurs .t t~et tf~ •• •• Tyoe - corre.oon~1 te the .f~fllr entry fn the fi'e entry Ind is d1scuI.ed in Section •• 1.2. bleck M - .lwavs contafn. actual ffl. block @ven dur4no extenafon (~enee 3 a~eve' ~tArt * of UFO stlrt block. - fl used •• I counter durino ffle creation or e_tensfon (Ita~tfno f~e. the erfefnal Jenoth fn t~e letter e.se) Ind eventyal1v 4s stored tn the UFO es "Lenot~". P 1 GF..y- 21 DOS4.RNt'I ~nd bloc~ *• ~tore. the Dre.ent e~d of a fi'e extension - othe~wise is ~0~m8"Y u~u!ed u~ til a new file is el0.ed. u~de~ t"de~ into D~rectory BloCk. .~o~. the r~18t4ve ~o'ition of th8 iile e"'t~y ~~ the 8coroD~iate UF~ ~'oek C.ee next). *- Oirectory bloek e~ebles immediate aeeess to the actual device block o~ which the IJFn entf'lY fo~ a file undef'l creat.on ~r exte".ion aODAar. a"d thus ~emove. the ~eed fo~ a f~e.h di~eetorv search o~ .CLOSE. p~oteetio~ 11. Pretection Code - .hows the f41e" el. 'ev- 12. l",terleave faetor - .aves the co~tent of the corre.pO"df~o entf'lY i~ MFO block *1 a. described f~ ~ect.o~ 4.1. Ai~ meD oofnter -. co~tai~. the e~d~e.. of the buffer in core in which the aODroer4ete medium bit-mec .eoment ~. loeded Co~ .s eur~e~tly he'd see ",e~t). 84t meD Q l4",k - e",eble. the eee",f~g of several "'ew file. Co", different ~ate.et.l) o~ the sa~e med4um at the .ame time, For rea.on. .tated i", 'eetio", ~.1, 0",1y o~e bit map .eome"'t fro~ a medium c~~ be in core at a"'y o"e i",.te",ce. Thus .everel file. mu.t ahare t~e .a~e .eome"'t. To a"o~ t.,i" the ePDroP~iete FlA. ere chai"ed Cas shew~ i", figure 4-17) .te~tinQ f~om e~ a,lotted wor~ i~ the device ~~4ver stenderd 4",terfece teble C.ee Sectio'" 3.3.1). When the f4rst fi'e r.Qvi~1",g a map.f. opened, the meD .eQment f. loeded into e buffe~ cleimed fro~ f~e, co~e end the driver Doi~te~ to t~e co~eer"'ed FIR 4. aet. Sub.eQue~t1y FI~s are li~ked a",d u"'.n~ed a. thef~ esaocieted fi'e. a~e opened e",d c'o.e~. Whp", the la.t fi1e is fi~ished, the d~iver word beco~es ~ .gai~ and this is used to .4o~a' the ~e'ease of the meD.bu~fer~ 1~. Temporary wo~kspaee cr.atio~ o~ exte~sio" is used ma4",ly du~i"o file by .w~ITE Caee Seet4o", 4~5.2) T~e F~B is set UD i", A buffer e1aimed f~o~ fr~. co~e via the Mo"4tor S.GTB rout1~e o~'y if fi'e-~.n.Qe~e~t oee~et.e"s a~e ce".~. Fo~ ~orma' fi'e.o~oeess4~o this .a dO~A by the Qe~ era' .OPE~ routf"e Csee Section 3.2.2.1). ~ou.ekeeDi"o ~ou- P4GI!¥-22 ti"e. c~ei~ t~.i~ OW". (I" f.ct, .~"ce t~. 'atte~, i" ga"~eQui~ed fu"ct40". i" o"e u.e~ o~o FIB t. ~ot ~."'y "ece ••• ~y. Howeve~ fo~ como.ti~f'iv of D~oce •• i"o •• peci."y by t~e co~.o" su~~ou· ti"e • • "d to D~ovfde eddftto"el we~k'Dece tt fl .tt', .et UD.' W~i'. t~. FIB •• e.t.b'i.~.d, it ••• cc~.s.d th~OUg~ • pof"te~ i" t~. , •• t wo~d of t~. one C.e. ft~u~. ..18 ."d .ectio" 3.1.2.3). It.s ~.'ee.ed •• SOO" .~ it he ••• ~ved tt. purOOle, e.Q. ~" .CLOSE. ttl ODB e04"t.~ tke" •• e1e.red ."d it. buff.~ i. ~etu~".~ to f~.e eo~. v •• S.RlB. e~e', como1ete e1' a~'~ ~eou~.t, t~e th.i~ 4.4 Ge~e~a' T~e ou~oo.e of fi'.·~a~a~e~e~t .e~vie •• . ~out4~e • Pu~oose t~i. .ection 1. to de.c~ibe tho.e ~orlu'e. wh1c~ act e • • ub.~outi~e. o~ovfdi"a bv the othe~ ~edu'e., .ue~ a. co"ection of a bit.~eo .eO~ent o~ a''ocetio" of a new b'oc~. (Cateoo~v J i" 8ection When non.~8.4dent, theY ooe~ete f~o~ the oe"e~a' Swao euffe~. Qene~a"v ~eeui~ed d.~~cto~v·.~a~ching, '.3.' CLUK) The funct.on of t~is routine i._ to ~e~fo~~ a .ea~ch for e fi'ena~e to dete~m1"e the ore.Anee of a ~a~t.cula~ fi'e on d4.k o~ DECtaoe. d.~eetorv o~ ab.ence .tac~ oointe~ Ca"1"Q Seauencel MOV MOV SUB ~OV *FILBLK,-CSP) *LNKBLK,.CSP) SP,R1 *14,SP EMT 4~ ~0 • Add~ess ~1 • (~OO~-~) T~e cel'e~ for th~ of_the.on8 of Pointe~ to UF8 Must .ubt~act ~out1"e'. 14 f~oM the ~etu~n .~gument.. Note, that t~i' ~out1~e do,1 not ~8Move the ~rQu.ent. DUlhed onto the stac- 4n t~e above ca"ino 'eauence. (~6).~ JX DECOOED AELOW 2(~6).FILE '(R6).~A"'E 6(R6).EXT 1"'(~6).UIC 12(P6).PCODF ~ •• t w4" x•• ? ,PROTfCTI~~ COO~ If the UTC wa. not e~tered i"to the MFO eonta1~ ~ ze~o UOo" ~etu~". nos+. If t~e f"8 d1rl not ex1lt 1n t~e UFD, nDB+' Wi', contai" a 0r nOR+2 wil' b. ~ if ~o emotv slots in th~ UFO ~~ will be the UFO b'oek numbe~ w~4e" ~as 8n e~oty s'ot, ODR+22 w41' be the 4ndex to the emotv slot. If the n8med ff'e wa. 0"'.~' • -2 wi" he ,.etu~"ed also. 4n w~4ch ce.e ODB+4 wil' ~e u"cha"oed. PlGE~-24 X•• 3 Tf t" .... ~". "0 IJFn .tt.eh.d to the MFO ."t .. y. lJoon ... tu"" 0"8+4 ~.,' ee"tei" the "'oclc "u~b ... ce"t •• "i"Q the MFO .~t .. y. O~B+2_w." be .et te the .d~ .. e'l of the U~O oo."t~ .. wit"." the MFO. X.eth ... th." .bev. - th." .t •• the ee... .dd ..... ef t~. UFO .nt,.y. one+4 w." cent"." the "'eck "u~b ... ef the UFO .• "t .. y, the ~l"e~ ce"t.i"."a the uFD ."t .. y •• 4" eo,.e. O•• e .. 4ot.o"1 Thi ... eut.n. e.ecut ••• ~t .... ,v ." th. Sw.e ~uffe .. (~S~), un· ,... it m.d. ce .. e ..... d."t. When th .... euttn. i • • nt .... d, the .t.t. ef the .t.ek tl '1 fcl'ew.i R.g •• t .... A th .. ouah e .... "v.d e~ ~h. tee ef the .t.cle, th.n the pe .nd PS, .nd th." • 6-we .. d we ........ flO.. the ... tu"" .,.gu~~nt •• R0 .nd ~1 .,.. ,. •• te ... d f,.em thei,. •• ved v.'ue~ ~n the .t.ek. Rl ~. th." •• t te Dei"t tc th~ U.e .. File ~'oelc, .nd R2 •• •• t te ee4nt te t". 6-wo,.d we,.k .,. •• en the .t.ek. Th. u .... ftle ",oclc •• th." ~ev.d entc the .t.ck f.'e ~"me, e •• t.n.ton, utc, ."d e,.Ot.ct.C" cede. tf the". w••• " •••• ~" m.nt ~.d., the •••• Q"ed n.me •• moved .". If th.,.. w.. "10 ute 1" the ffl. n.m~ bleck, the utc fs tak." f .. em .blclute lec.tie~ 4.0, whieh f. tha 'eaged t" Ute. If ,.t th4. eetnt the ttl. ".m. •• 0~.~, • -2 •• cut 10" the e,.ev.eu. teo ef the .t.ek .nd the ,.eutt~. ,..tu .. ~. te the c.lle .. th,.euah the cemme" e.tt .. lOut."., S.EXtT, .t .bselut. lec.tt~" 42. .1 .1' New.th ... euttn. g.t. the block nu~b." cf the M~D f .. em the d,vtce d .. tv.... The ff,..t ~F~ ~loclc i. th." ,.eAd f"te ce,.e. t~ the d.viee •• DECt~De ~h. ft ... t ~FO bleck f. skioced .inc. this de •• "lOt cent.f" UTe' •• nd weuld ,.eQu .... a" u"".c ...... v t4me •• c.n... Th. ,.cutine then .c.". the MF~ bleck lecldnQ flO" the ~.s .... d utc. ".ed4"a i" MFO b'eclc. centf"u•• unt41 nO" ..... 1.ft 10 .. the Ute 4. feund. If the UtC fs net feund,. -1 f. cut 10" the c,.evtcu. too ef the steck ."d the com~en •• it fl t.k." b.ck tc the c.l'e ... Wh.n t". de.t,.ed ute t. feu.,d f" the MFD • te.t f. mede te .e. 1f e UFO •• tsts flO" the UIC. If no UF~ a -3 •• eut 0" the c".v.eu' teD of the It.ck ."d the com~e" e.ft ts take" bacle to the c."e,.. I~ a IIFI'I doe • • xi.t flO,. tht. IIIC the Ite"ti"a bleck nu~be .. cf t~. IIFP i. ~ut i"tc the DDS a"d the fi .. st UFO b'eek is ... ad .nte ce .. ,. ~ew the ,.cuti"e ~.o.nl Ica"nfno the UFO flO" the dest"ed f.l~ na~. a"d .xten.ton. UFO bleek. ee"tinue tc be ,..ad in and scanned until th~ en~ ef the UFO chafn 1.... .ch.d 10" until t~. f;l. and .xt~"s.cn .... feu"d. If t"e e"d cf the UFO 4. ~eac~ed wft~out • ~atch, • -2 .s out 0" o".vfCUI ~ce cf the stack an~ the ,.cutf"~ exit. ~s D~ev.ou.'v de.c~.bed. If t~e scan fs successful end a ~8te~ i. ~.~e, PAGF ¥- 25 t~e co~. edd~ ••• of t~. UFO e~t~y is out 0" t~e c~.viou' too of the .tle~ I"d t~. eo~~o" •• it •• tlke". Note. t~. d4~ecto~y LOOKUP ~out4"e ~a~ A" 4~b.dded READ/WRtTE routi"e I"d el.o use' a eo~~o" exit ~out4". t~rouah eblolute loeltio" ~2 whic~ ~e'tore. t~e .teek to 4tl .tete hefore t~e E~T reQue.t. T~4' doe. "ot ~od.fv the retu~" l~au~l"t. 0" the ,tIck. Thi. rout."e •• I three csrt uti,ity oroqrl~ ~h.c~ the fot'o~i"; fu"et40",i cerfo~~. 1 ~ CHECK ACCES~ PRtvrLEGF 2 • SFT UP ~ILE INF~~~~TION BLOC~ 3 - R~L~A9E FILf INFO~MATrO~ ~L~CK The E~T code, for the thr.e fu"etto". Ir. t~e 'I~e, E~T !2, b\lt to elt, the t"dfvfduel fu"ctto" e 0, +1, 0" -I re'oect4velv i. cu.hed O"to t~e .tack. The rout."e wi" t~e" dt,ceteh to the Drooe~ .eo~e"t, ~tth4" the f41e .trueture module •. The three 'eome"t, I~e 4"d4v4dual'v described 4" the followt"; d •• eu.,40"_ ~_~.2.1 Check Acce •• privileae T~e fu"etfo" of t~i. rout'"e 4. to deter~4"e the ~er~4tt.rl READ/WRITE Icces. or4vflege of the ce"er. T~e eel'e,. mu.t reQue.t the 'eve' of ~cce., h~.de'4re._ The" this reQue,ted eece.s is eO~Clred w4th the f41e oroteet40" 'evel. Th@ reQue.ted lece., 4s the" eith.r O~I"t~d o~ de"ted. MOV UIC,-C~6' ~OV PCODE,-C~6) MeV *ACCESS,-CQ6) -(~6) .ZERn INOICATES CLR EMT 52 ACCESS LEVELS. ~ • De'ete 1 - write :5 - qea.-J ~ - ~u" CH~CK ACCESS CALL DOS4.~NO . PAGE: ¥-26 de.fred aeceas De~m.tted de.f~ed aeee •• de"fed " De.e~4pt.ol'll Whel'l t~e .eetiol'l of t~e routfl'le fs e"te~ed, t~e ataek state f. a, f~"ow.1 Saved ~e~i.te~s R0 t~rouQ~ R~, pe a"d PS, FUl'lctfo~ .l'Idieato~ al'ld eal1fl'l0 8rQUMe~ts. Rl fR let to the de.ired acee •• , a"d R~ i. aet to the eroteetfol'l eode, f~om the value. easaed o~ the .tack. T~e 'evel of acees. to anv ffle i. dete~m."ed bv the oWl'ler when he aet. ft. er~teet.ol'l e. de.cribed il'l Sectf~1'I 4.1.4. The c~eck ace e •• routine determine. whether t~e deaf red acce •• bv a"v u.er .hal' be cermitted Or l'Iot i~ the followil'lc mal'll'le~. The rout."e fi~.t check. to .ee 4f the cal'e~ i. the f41e's OW""', by eomparfl'lo the 'oooed-i" 'JIC aoef".t the Ule ca"iI'lQ ergument 0" the .tack. If he fs t~e OWl'le~ the" bit 6 of the Drotectio" code i. teated, if it is aet he ce"l'Iot write 01'1 o~ delete the file, he p~oteeted h •• f.'e a~a fl'lat h4m.elf. Sit 6 befl'lO "ot .et ofvea the ow"er comc1ete aece.s. W~el'l the eel,er il l'Iot the oWl'ler a .eeol'ld teat fs made to determfl'le 4f the ealler f. 41'1 the oWl'ler l • orOUP. TheY are in t~e same group ff th~fr croJee~ "umber f. t~e aame, th4 • • a the hfoh order byte of ute. If they are f" t~e aame orou~ the .cee~. de •• red. fa eomparedeQafl'l~t bit. ~, 4, el'ld ! of the ffle'. protect401'1 code. If ~ot il'l the .Rme QrOUD the aece •• de.fred t. comeared wft~ the low order t~ree bft. of the ~rotectfon code. If the p~oteet4o" code 4s h4Qher thal'l the de •• red ecce •• recue.ted the" aceea ••• del'lied, a!'ld a -1 will be returl'led 01'1 toP of the .taek. If t~e protectton code i. eoual to or ,ower thal'l the reQueated acee •• the~ ac· ee •• i. ora"ted, al'ld a 0 wf" he retur"ed top of the .taek. T~.n the rout.l'le ~eturn. to the ce"e~ throuoh the eOmMOI'I exit routine, al'ld the top of the .tac~ ~o'd. the returl'lerl value, 0 or -1. 0" Accel. level. ~H ~ Set - "w!"Ier eal'llt write Code greeter the" 1 , other. ca!'llt "'rU. Code g~eeter thal'l J, others ean't reed Protect Cod. greAte~ t~a~ 5, others ca!'llt ~u" Pr~tect Pr~tect P 4;F. f- 27 OOS4. IHH" w~.~ t~41 ~outi"e il called. FJ8 ~.y o~ ~av ~ot be attac~.rl to t~e O~B. Th.r.for. t~. routi"e ~al a t~o feld fu"ction. 0". fu"et~o" ~I to o.t a OATA BUFFEq ANO A FI~ 8UFFEQ fro~ free core, ~h.~ ~ece'l.rv. Thil funct40~ •• d •• ired when cal'e~ ~y ~outi" •• oth.r th.".FCP (FILE. OPEN) a~d_FCR (FIL£ CREATF.). Th. '.Co"~ function t~4s routt~. cerforM. i. to •• t u" the FI~ and ~i"k it to th._OOB. Thf. routine .et. t~ • • ddr ••• of t~e d.t. buffer, i" the ~Oq. It t. " •• c •••• ry t9 •• t uo t~. FIB wh.n called bv ~"v ii'e .• tructur •• rout in. 1"clud4no FOP .nd FCP. The FIe i ••• t uo DriM.r41v by trA".ferring date to it from t~e fil •• UFO entry. .'.0 "40'1 *1,·(~6' E"4T S2 R2 • Po~nt.r to the F~l." UFO ."tf'Y fn cora. T~i. il n.c •••• ~y, w~." the routi~e t. c.l'.d, to •• t uo the .~d '4nk it to t~. OO~. '1" OOB+2~ contei~. a n~n·zero v.lue if t~e FI8 w••• ucc.I.fully .,tuc • . The v.lu. i. t~. cor • • ddre •• of the FIB ••• ociat.d wtt~ th4. ODB. 00B+26 cont.in • • zero when t~. FIB w.. not ,ucc.s.fullv •• t uc. . , 0•• cr4gHon. Wh.n th!1 section of the rout.ne i. ini~tally ent.red, the .t.te of the .tac~ i. t~. I.Me •• d •• cribed under the "Check ACCAIS" •• ctton, with the e.cection of the c.l' .rgum.nt •• Thil .ectio~ .et. uo qs wfth the FIR Link Wor~ frOM t~. OOB. Then, t~ there i • • FIB a'r •• dy, q2 f. r •• tored •• t~e 00. t~ter to the F1'e's UFO entf'y. w~en 'ETUPFIB 11 entered the FIB 11~k word of t~e 'O~ 41 to deter~1ne if t~.re 1• • FIB .tt.c~ed to this OOP or 4f it will be nece.slrv to get e bUffe~ for I FYB Ind 1f~k it to the ODd. A zero FIB link 1nd4cates ~o FI'" w~en thi. oceur. the following crocedure i. followed. The driver .ddress 4. deter~.n.d fro~ DDR the St.nd.rd, Driver Buffe~ ~1!e is Qotte" f~o~ t~e dr4ver, a. the ~uMbe~ of Ie word un4ts nee •••• rv. Th1. value is .aved and then this va. 1ue i~ u.ed to calculate a word count, ~h.c~ •• cut in the OOB. The "umbe~ of 16 ~ord units t. increMented by one to telte~ .2, ~ f"e'ude e buff.~ fo~ the FIB. A eell i. the" ~ed. to the ",o"he,., buff.,. e' locate ,.cuti"'e (GETBIIF), ~eQue.ti"t'l the "umbe, of Ie wo~d u",its de.i~e~. T~e GE~BUF ,.out1"e f. ce"ed th,.ouoh ab.olute loe.tio" e4. The ff,.t Ie wo,.d. of the ,.,tu,."ed buffe,. e,.. '."ked to the DDB •• the ~Ie buffe,., .~d the 18 wo~d. a,.e ele.~ed~ The ~.t. Buff." is the" '4"ked to the DDS et DDA+e, t~.",.fe~ buffe~ .dd,. ••• wo,.d. Now t~e ~out4"e 1000' baek to the 4"ftial t •• t UPO" e~t,.y to thf. ,.out."e ."d wt" "OW fi"d • FIR ett.ch,d to th4. D~8. Whe" • 'IB i •• ttaehed to the DDB the fo"owf"O Oecu,.s. J"fer~.tfe" eo"ce,.",t"'o t~e f41. 4. t,..".ie,.,..d f~o~ t~. UFD e"t,.v t~ the '18. The t,.a".fe~"ed ~"fo,.mat.o", ~"clude.· the Next Bloek NUmbe,. whfeh •• e'se the Ff,.t ~,ee., t~e F1'e Type, the F4,e'a St,,.t ~loek NUmbe,., the Fi,. Le"Qth 1'" bloek., . • "d the'fle" L •• t B'ock Numbe,.. The" th,.ee "'0,.' 4te"'. e'e .et uo i" the FIBI the f"~ex f"to the df,eeto,.y block • . t~e df,.,cto,.y bloek "u~b',. '"d the o,.oteetio", eode. Th4. ,outf"e the" exft. back to t~e ca",~ th,oygh the eo",. 1110" e.4t rout4"" ~.FXIT. The f"fo,.~etfo" uaed to let uo the ,IB f. f" eo,.e whe" t~fa "'odu', •• e.' led. The fu"etio" of thta ,.out.", •• to u""4"k t~e FIB f,.e~ the '18 ch.t" e"d ,.e'ea.e the FIB 8uff,,., the Det. Buffe,. ."d .1.e the ~4t M.o ~uff'" 1f "0 IIIo,.e FI~" e,., ,tt.chpd to the DDB, The 'IB ehet~ must ,.,,,,et" eo"tf"uou. afte~ the FIB 4. u"'f"ked. So the"efo~. a FIB ooi",te,. ",u.t be ,.e.et. MOV EMT 'PC,.CR6) e2 The i",.t,.uet10" M~V ,PC,-(Re) ouah,. a "'e~l· tty, "umbe,. O"to the stack. ~ Ne~attva "umbe~ 4",dfeltes a e." fo~ ,.el.l.e FIB • • 'thoua~ the FIB LINK t" the DDB fa.eleared, e"d the a.soef.t.~ . bit "'aD 1. ,.elel.ed, 4f th4. fs the o"'y FIe f'" the ehet". - -'. . D•• c .. iDt10"1 UDO" ~nt .. Y, the .tet. of the .tack.. "S.tUD FI~" cal'. the .a~e a. fo.. 8 Wh." th' Ae'ea •• FIe ~out4" •••• ~.tf8"v e~te~ed the .tatus bvt. the OOB f. t •• ted to .ee 4f the Data.et f. eu .. ~."tlv bu.y, b~t 1 .et. I. the Oata.et ~. bu.v the .. out."e .. atu~"s 4~~.d4.t.Jv to the ca"'" th .. oUQh the com~o~ •• it ~outf"., I.EXIT, wfth "0 .cttO" takan. If the Oat ••• t w.. "ot cu .. ... "tlY bu.v an i"d.x into the device d~fve .. t. calcul.t.d to pof"t .t th' ffr.t 'I~ 'ink, of the FIB cha." 10" t~tl d.v· tee unit. If the ff ... t FIB link 1. 2 ... 0, there •• no FIR eha~nfo .. thtl unit, I" thf. c •• e 4t 1. onlv nece ••• ~y to ... 1•••• the O.ta Buffe .. a~d the FIB, Wh.ch t. do"e th"ouah • e." to the mo"4tor, ~uff8" rete •• e rout.~.. Then el.a~ th.i .. D04nte... f .. om tha 008. The ~out4ne the" ~.tu~~. to the cal) ... ~h .. oUQh S.EXIT. If the it~.t FJB link in the d".v,,, 4. non-z ... o the FIB lfnk f~ the 008 •• th." t •• ted to '" if th~ .. e f •• FIB attaeh.d to the DOB. If ~o.FtB fs .ttlch.~ to the ooa ~.'e"e the Oat. Buff ... , u~lf"k it f .. om the OOB.~d exft b.ck to !he eal' ... th .. ouoh S~EXIT. If the DDB h • • • FIB attaeh.d, .t •• t"ted to .ee ff it ha • • bit m'D .ttach.d. If the FIB ha • • bit m'D .tt.cheri to it and 4·t fa .th. , •• t 'IB 4n the ch.f~, the bit ~ • .; buff ....... e" ••• d th .. ouoh • e.ll to the ~onttor buffer "e'e •• e .. outt~ •• If tha 'I~ ha • • bit m.D but f. "ot the la.t FI~ in the ch •• t", the FIB il m.... lv u"'f"ked f .. om the ch.i" .~d tha ch.t~ ,f"k.Q. ~a •• t. The O.t. BUffe ... nd tha FIe ~uffe .. a .. e th.n both ",' ••• ed throuah the ~onftor .~d the4 .. '.n~aQ'1 .~e ~e. mov.d f .. om the DO~. The commo" .wit •• the~ t.k." b.ck to the C""'" of 4.4.3.1 GET MAP Thi. routf"e Da .. fo~~. t~o functfonls it c.~ be c"'e~ to O.t • buff.r for a btt ~.~, re.~ the bit ~a'; fnto core ."d '~nk th~' FIB to the end of the FIB chaf"~ The .eeond fu"c. tion of the rout ina tl to write the bit m.p f~o~ co .. e to the device. The f1 ... t fu"ction il c4"ad GfT~.~, thp •• co"d WRITMAP. Both .ra cal'e~ with the I'me E~T, w4th th8 v"ua of R3 determfnfn~ the leeeffie fu"ctfOn. R~-Dof"tl~ to DDB R3aD04"tl~ to DDB Et04T b. To w~.te out a bit 153 ~IO R~.DOf~~I~ to D~B R3a0 EMT ,50 'IB+I centI4", )( x-a . Xa.l X.-t ff miD ,etuD ,uce"fu"V ~f"9 buijl' IVI~'lbll_ ff tf'l 1"lldy Ooe" 0., ~ECtaDe. .' DlaC,.1Dtfonl Th4a ~out."e 1.'CUtl, l~ti'I'Y wfthi" thl SwaD euff,~ (MSB) u"'.'. ft f' mlde co,. ,e.fdl"t. 0" I"t,y 'Iof.tl~' RQJ th,eueh A5, thl PC I"d PS 1'1 ,e.elcttYlly .Ivld 0" the tOD of the 'tack. UDO., l"t,V, AI t, 'l,to,ld f'OM ft • • IVld VIlUI 0" the 'tick, te D04"~ to thl DDB. R2 •• 'et to ooi"t to thl. FIB If"ked te thf. DDB, the" Rt f' 'It to thl VI1uI of the co~e bft miD oei"ta, t" the F18. The wo~d count t" the ~DR i, .aved, e"d a dlciMI', thl b4t maD wo~d eou"t ., DUt j"to the 008. Thin th, 'Ivld vilul. ef ~3 0" the .tack 4, tatted to dltl,mt"1 whet hi' thf, f. I eETMAP o~ WRInup cal'. -e. fo~, t~1 DDB t~I."fle bleck "UMbl~ ."d a,e 'Iv.d. The" the buffe, add~e" i. 'It eeual te the core bit mIDlddr •• " the t~a".fe" b10ck "uMbe,. .' _,.t UD a"d the bit mac ~, w~.tt.". out, Thl ori04.,a' buff.~ addr',., the block "umbe~ a"d the 0~1a1"al wo~~ count a~1 the" ~I'tored. e"d a" a.it ., takl" th~oueh thl COmMO" ~outi"e. S.EXIT. If ~RITMAP buffl~ i, callld add~I" I~ GETMAP is eall~d, a tl.t fa ftr,t mad' to ,e@ ~f th'~1 i, a bit mlc attachld to tht, FIB. If the FI~ bft maD D04"t.r is "O"-Z,,.o th,,.e t. a mao attached, io the ~outi.,e ~e'to~l. the o,toi"al wo,d cou.,t a"d ,.ltU'", to the ca"e~ threu~h t~e COMMon ex4t routf"e with a ze,.o t" FIB+~ to t"dfcate ,uccI.,ful comelltio". If no bit maC Ittac~ld th@ ~outt", clea~. the FIR 'i"k of this FIB to ."~tcate e"d of cha1" a"o the" Qet' the ~O."tl~ to thl beoi""i"g of the FIB chain fnr t~4' unit frOM the d~ive~. If the OO."tl~ to the beoi""1,,g of the FrB cha." f' "o"-Ze"o the,.. i. a,,.lady a b4t maD 4" CO"I fo,. thf' unit. 'te,t i, t~I" Made to determi"e 41 th4. i. DECtaDe. If it t. nECtaDe the" YOU ca"a'~,ady ~ PA GF- ,e-J t DOS~.qNrI "ot oe.~ a .eco~d outeut fil. Or'l the 'aMe u~ft. !f not D!Cand_ a ~4'e 1. ~pe" on th~. unit then l~"k t~j. FtB at t~e .nd of the FI8 chai" ~"d 4n •• ~t co~. bit ~ae cof"t.~ a"d fnte~'eave facto~ i~t~ th4. Ft8. a"d the" e.it back to the ca',inQ module, .fte~ ~e.to~i~g the o~.oi"al wo~d COU"t f~ t"'. 0"8. ta~e - al~eady i~ co~e it f. ~ece •• a~y to oet a 6~ wo~d buff.~ fo~ the mao. Thf. f. do"e by a cal' te the m~n4t~~ GETaUF ~outin. th~~uOh ab.olut. 'ocatfo" ~4. Th. GETBUF ~out.ne a"ocate. buffe~. f~o~ f~e. eor •• The buffe~ ~dd~e •• ~. the~ ~.t ~".the F!B a' th, e~~e bft ~ac Doi"te~. The MFO coi"t.~ 4" t~. d'fve~ f. moved f"to the ODB a"d.MFO *1 i. ,ead i". The" the ~out4"e •• t,act. f~om it th, inte~1eave f.cto, a"d the bit ~aO blOCk "umbe~. Then the bit mac f. ~ead i~ and it ~. If"k.d to the dev4ce d~fv.~. Resto~e the o~.o."al DDB a"d clea, FIB+e to f"df. eate a .ucce.,ful call. The" leave th~cuah eemMO" ex4t ~ou· ti"e. The bft maD tra"sfer ~out1". al.e ~a. a" 1mbedd.d ,e.d/w~.te ~out4"e 4" ft. Whe~ t~e bit mac is not The.fu"ctio" of thf. ~out'"e i. to elloeate o~. ble~k of a device., Thi. ,outi". i. calle~ u"d.~ the follow4"o thr •• co"cH t i 1. 0"'1' ~ALLOC (C,eate a C~ntf~uou. bl~ck fo~ the UFO O~ to add F~le) to allocate a block to t~. UFO • a • OPENO (Ooe"4",o • F1'. Fe~ Outeut) to al'ecate a block for the ,.a.o". U"de~ .~LLOC A",d a',o to .,locate the f.~.t block of t~e ff'e • • OPENE (ODe",4nn • Ffle Fo~ Extenlfon) the fi~lt b'~ck of the e.te"'lton. to a"ocat. T"'. REAn/~RtTE o,ocessor u.e. a d.ffe,e",t ~out1"'e to do block a"oeations while a REAO/WRITE •• 1~ er~o~e'l (,ee Sectio" 4.5.2). ~"" PC,~J E"1T 41 E~T 5~ ~0.cointe, rGETto'AP 'LrN~ to ODA qLnc~ ALLOCATE Set R3 eQual to ",on-zero value, t~e" ~.~e .u~e the~e fs • bit mao in co,e, bv an P'G~~-J2 E~T R.tu~~ c." to .GETM'P. A~QU~."tl. a.t. '18+0 to t~. block "umb.~ of the .1lecat.d FIB+0 wal •• t to 0 t~." the dev.ce •• full. bleck. If D'IC~.Dtio"i Thf. ~Oyt.". i. ~ ••• "t~."' ."d e •• cute • • "t.~ely wfthf" t~e aW'D Buff., (MSB) u"'e., it t. ~.d. co,. , ••• ~.~t. UCO" ."t~v, the Reat.te,. R0 th~euQh R5, the PC e"d the -,oc~ •• o~ atitul .,. ..v.d ~'IP.ctiv.ly 0" the tOD of the .t.ck. R0 •• , •• t~~'d f,om ita •• v.rl v.lu! 0" the .t.ck. to eo."t to the DDS. The B10ck Numb.~, Suff.~ Add~'11 ."~ wo,d COU"t t" the DDS .~e th." •• v.d e" t~ • • t.ck, Th. DDB wo~d COU"t f' th." •• t to ~6. decfm.l, fo~ t~.".f.~~."O of bit m,D., The co~. bft M.O ooi"t., •• t,k." f~om the FIe ."d eut i"to the DDS •• the Buff., Add~... fo~ t~.".f.~., ."d the elock Numb., ef tht. bft MIC •• cllcullted e"d .1.0 out 4"to the DDS. Th. ~outt". th." comput •• the lowe.t blOCk "u.b.~ d •• c~.b.d by the cu"."t cepe b.t m.D. The bft ~.o t. th." lel""'d 0". we,d by wo,d b •••• 100kf"Q fo~ • wo,d th.t hI. I f~ •• bit. If "0 f, •• block' .,e fou"d i" t~e cy,~."t mao, tt •• w,ttt." out .~d the block "umb., of the f.~.t mID f" the c h•• " i. Gott.". The f4~lt mao f. ~eld .~ I"d. .el,ch •• beau" ef the ."tf,. bft ~IO cha." fo, • wo,d co"tli"f"O ." U" •• t ~it, If "~". ~" iou"d the d.v.ce i~ iull. '0' I devfce the fo"owi"Q occu, •• The Data ~uffe, 4, ~.fu" J •••• ~ by.th. MO"4to~, euff.~ Relea •• Routt"e, .S,~~U" ."d ttl It"k f •. cl.a,.d f'o~ the ODe. Th. ~De" I~d4c.te~ 4" the DDB •• cl •• ,e~. Th, FIR ch.f" f ••• e'ched fo' the o~eDe' FIB a"d wh." fou"d .t •• '., •••• d by I oal1 to ~.RBUF .~d ft .'.o_u",;"k.d f,om the FIB chlf". Th. M~".to, D4.~"0.tfc P,.~t ,outi". th." D~t"t,." e'~o~ code f"dtc.tt"O • full d.v.ce, .1 f. fou"d wtth • f~,e ~it a malk ., let uo to dewhtch bit of the wo,d t"d1c.te. the ff~.t f,e' block .v.i,ab'e. Th. fi,.t f~.a bit of the wo~d i. ..t whe~ fou"d, I"d the block "umbe, of the allOc.ted bleck •••• t .~ DDB+28. Thi. block "umhe, w.' bei~~ keet a"d Undlted dU'i"Q beth the wepd a~d b4t .e.,c h••• Tha wo,d ceu"t buffe, add"" .~d block "umbe, 4".ti."v seved Ire "OW ~e.to,.d 4" the DOB, a"d the com~e" •• it ,outi"e S.EXIT tlke" b.ek to the ea"e,. Wh." • wo'~ t.'mi~. .5 '-~ PAGE¥-33 ,.ctio" 3.2.2.1 show.d that III .OP~N ell1s a~e e~oeess.d 4"itilllv bv a Q."I~ll ~out."e ~.al~dl.ss of t~. deviel 1" U.I. Hew.ve~, hlvi"G .x.cut.d .ome CO~~o" oC'~ltio". .uch •• c~.ck."o t~. vllfd4tv of t~. call a"d obtli"i"o the "ec."'~v ~.tl_ buife~, this ~out."e t~4" ch.eks t~e d.vtc.. 4f 1t t • • e." to be f1,.-.t~uctu~.d, • 'Ie t- Ittlch.d t~. 008, ~.o1.te~ • • ~e •• t t~ D~ov.d. rel.vl"t d.t • • "d e"e of two ffle~m'"'Qeme"t ~eut4"e. f. call.d to COMDl.t •. t~. D~oC"'."9. rhe DU~DO'. of this .'ctio" f. to d •• c~fbe the.e ~outf"e •• '0 1. ~OP· ~D'" I" l.iltf"G ftle, cll1.d t~.~.fo~. fo~ .OPENU .OPENf, .OPENJ 8"~ .OPENC - Sectfo" 4.5.1.1 2. 'CR. C~elt. I "ew f41. (-.OPENO) • ~ect40" 4.5.t.2 Bot~ ~out."e. u •• the tech"~Qu, de.c~fbed .~ ~eet~o" 4.3 fo~ the m•• 'v.. out of the SW'D Buff.~ 4f th.v I~' "o"-resfd."t. 0" comDletio", th.v ~.tu~" df~eet'y to the u•• ~ D~OO~lm 8"d .t thf. t.~e, they a~e ~esDo".ib'. fo~ ~ovf"e '-/ ' •• vf"G • ~ac~f".·.t.t •. ••• ~tlv as that e.tab' ishld ""eral D~oeel'O~ for "o"-file d.viee., f •••• t. 2. OPEN Iwitch s.t 4" by the t~e O~B St.tu. (bft 7, byte 12) ~.t.-Buff.~ ele.~.d fo~ eXDected .~RtTE followi"o, 01" 3. o.t •• euffe~ filled fOl" .xDeeted .REA~ followf"Q 4. ~uffe~ Pof"te~ •• t o~ a. b. 3 effeeteda f" ~OA O~fve~ Wo~~ eOU"t, 4f 2 Li"k.d ftlel' START+2 Co"tfguous files' START !" 'Qdftio", t~e f4~st file 8lock ~u.t be eo~~eetlv set if .REAO a. b. o~ .WRITE m.v fOllow, 4~e •• L1"~.d fil.s, 1" "~ •• t Block" 1" the.FIB Co"tfguous f41el' f" "Device Sloek" f" t~e DOB PAGE ¥- 34 The funeticn cf t~e Fi'e Open Modu'e (F~P' i. to oDe~ a fi'e .t~uetu~ed device fo~ '4nked f41e e.te~ston (OP£NE), eontfo. uou, f41e 4nDut (OPENI), O~ conti~uou. fi'e cut cut (OPENC'. The ~cutine De~fo~~. the fcl'cw4nQ cDe~atic". to aecomolt.h 4~. f~"et~cn. It f~~.t make. a d.~ectcry_.ea~e~ to dete~. m4~e 4f t~e_ftla a.i.t., .inc, a aa" to fi'e Oae~ (,OP, ~e. Qui~e. the f4'e to al~eady ex4.t. The ,outi"a the" cheeks .i the ce"a~ ha. the_acce •• a~~Y~leoe he d •• ~~e.~ 'o~ a" OPENE it "'ocate. the fi,.t b'oc~ of the e.tenston. Fo, a" OPENI t~e f4~.t block cf the f41 ••• ~ead 4"to cc~.~ Ca"1"Q Sequence. A.o •• ~e~. a~e exaected to b••• t a. fol'ow, w~." tine 4. ee' ,.d. th4. ~ou. ~0 • Pointe~ tc Data.et Data Bloc~ (DOB) At • Pointe~ to .n.e~t ea" a~ou~e"t. F.'. The ODe" Mcdula •• ca".d by the Com~on ~Dan P~oc ••• c, (OPN) t~~oua~ e.ecuticn of acde 4n the DD~. ~at UP and ca" .eQue"c@ •• a. fo"owl. MOV C~P BNE INC MOV EX2, T!T~ BEQ M"V DECB MOV EX31 .lB4043,·(SP) (R2),*2 EX2 (SP) (SP)+,·(R3) (RS) EX3 (PC)+,·(R3) (AS) A3,PC 'E~T 43 PUT ON STAt:1< ,SEE IF AN OPENO 'BRANCH IF OPENE, 'J, C, OR I .E~T PUT INTO DD~ .TEST IF ROUTINE A!SIDENT 'BRANCH IF RESIDENT ,MUST FR!E SWAP ~UFFER ,THIS INSTRUCTIO~ PUT IN DDB ,BEGIN EXECUTING C~DE IN DDB EMT 43 Ca"1 F1'e Ooen EMT 44 ea'" F.'a C~aat@ . Desc~4gt1onl When thp F41e Ooe~ (FOP' Modu'e i. initia"y ente,ed it teata to .ea if ;t •• i" the SwaD Buffe, O~ is a.~~.nent'y core ~e.ident. If 1" the Swac ~uffer it cal'. the Mon4to~'" Get Buffe~ rout4ne (GETBUF), to a"ceate e buffar 4n free core. It then ~ove. it.e'f into the alloeated buffe,. The ,e~ •• te', R~ and Rl a~e tha" ~este,ed f'o~ the .taek. Thi. 'eava. si. we~d. R2.QS, pe end P~ on the .tac~ ~ '-- . which w411 b. us.d fo~ EMf .LOOKUP CDi~.cto~v S.a~ch) ,.tu~" .~;u",e"t. Th. F4l~ Ope" ~odul. th." is.u •• the EMT .L~OKU~, to ••• 4f the 1ile e ••• t.. 1f the f.,. do •• "ot •••• t, t~e ODe" Switc~ 4" th. Dna st.tUI wo~d 4. el.a~.d ."d a" EMT .~LS'IB (R.'e •• e ~IB) 41 i •• ue1 to ~.le •• e t~. FIB Buff" e"1 the Oat. 8u~f.~~ The ~outi"e i~e.. the Oate.et by e'e.,t"a DDB+0 a~d t"." 4t mu.t ~.'.e.e tha f~.e eo'. buffe~ ft oceu~1... The me""e~ 1~ which this i. done •• de,c,tbed f" the 'e.t o.~aa'eDh of thi ••• ction, but the CO",,,,e" •• 4t ~outf"' ;0 •• to the uI.r .r'o~ ,.tu~n. If"o ,~,or ~etu'" wa. ..t, the ~o~ito' Di.o"o.tic ~r."t ,outf"e •• call.d to D~i"t ." .op,oe,4ete .~'o~ ced •• Wh." th~ f." exi.t., the ".xt ch.ek i. of the U.ea, COU"t 4" the fil.'. UFO e"t~v' ;f U.a~e. COU"t 41 76 o~ 77 the" the D~ev4ou. er'O~ e~oc.du~. 4. follow.d, the f11. 4. 00.". S,ve~.'w ",or. te.t. oe,. "ow.made •. If a" ~P~NC, •• ft to • 'i"ked f41. , this i. fll.aa' 4f ft f •• Th." 10' OP!Ne, OPE. NU a"d OPENE ,.au •• t. the UFO e"t~v .s look.d et to •• , f1 th. f4,e i. locked. If locked th' ffl, ce" net b. oD."ed, e~'o~ ha"dled •• b.fo,e. If not. locked, t~. f~l! j. locked th." •. The" f~~ a" ~PENF , chec~ 4. ",ed. to .ee 4f it 4. to e eo"t4euous fflel 'r~o' if ft f •• All 00." reeu •• ts that u •• the File 00," Module ('OP), •••• cut. thi. ~e.t .'Qu."ce. A" EMT .SETu~Fta is ••• u.d to oet a FIB a"d a Date Buffer. Th. utc, the D~ot.etio" cede, e"d the eec... 'ev.' "ece •• ary fo~ the ODe" ,~que.t .~e .et UP a"d a" f~T .CKACSP 4. i •• ued to det'~"'4"e i1 the c.l,., i. p.rm4tt~d the acce •• to the file that he 1e.1,e., (~ead o~ W,it.). If acce •••• denied the e,'O~ Drocedure prevfou.'v de.cribed 1s e.rfor"'ed. If a" OPENC or OPENU t"'. dir.cto~y entrY •• wrttte" out. If a" OPENE a" ~~T .GET~AP .s is.ued to make .ure a bit ",ep f. ~" core, the" e" EMT ~BALLOC ~. i •• ued to .,lec.t, the i~,.t block of the file extension. The block "umber i ••• v.d 4" FIB+4. T~e" the dfreeto~y bloek is w~1tt." out. Now fo~ a" OPENI it 4. ".c •••• rY to ~ead the ffrlt bloek of t~. file ~~to ~~~ ~ata Buff.r. Th. CEOF)."d of_f~le ,witch f • • • t, if t~i. f. also the lA.t block of the f11e. All t~. O~EN ,.auest. now leave 1" the sa~. "'a"".r. The Oa. ta Bufi., eo~"t.r 4. set i" the ~DAr the o~e~ .w~tc~ f. set 4" the stetu. word of the OOB a"d the oata.et fs •• t to the f~ee .tat. by elea~f~g 00B+0. T~. ~outi~e t~.~ t •• ts if it 4s e.~ma"e"tlY eO'e , ••• dentr if it 41 4t le.v •• di~.ctlv th~ouoh t~p. com~on e_it ~outf"e, S.EXIT. If 4~ a f~ee core buffer t~e ,outi"e ~u.t ~elea.e t~. bUff.~ it oecuof.. befo~e retu~"4~; to th~ u.e~. T~41.s do"e ~y .1~ul8t."Q a JSR to the ~0"1t~r" Buffe~ Relea •• routi"e by the f"struc- PAG~ ~- J8 tto"" MPV '*S.R8~~,PC. T~i. fo~ee • • JU~D to t~e Buffe~ R., •••• ~put."'e do,. "ot DUt a ~etu~'" .dd~e •• 0" thl .tIC~' .0 ~~40~ t~ ex,cut1"Q t~e co~~a",d the .dd~! •• of the eom~o" extt ~out4"' i. ~ut 0'" th@ .tack. T~e 8uffe~ Rel.a.. ~out4",e wt", wh,,,, dOl'll, t.ke th.t ~etu~", ,l'Id 00 d4~,ct'y to the eommo" extt ~oUt11'11, to ~etu~" to thl U'I~. 4.5.1.1 C~e.t • • New ffl' Th. fu",ctfo'" of t~. Ffl. C~ •• tl ~odu'l (FCR) ~. to e~e.t. I '4"'''1«1 f.,e 'l'Id .oel" .ft fo~ outeut, thf. ~outi"e f. eanld f~om the Com~o", ODI'" Proel"o~ •• thl ~e.ult of .", OP!~O (0~." L41'1ked F411 for OutDut) ~Iaue.t. Th4. rout4"1 Derforml the f~110w4"O o~I~.tf~"" to .eeomD'4.~ ~t. fUl'lct~o".. It t •• t. 4f the ftl1 I-t.t., .i",c. fe~ .", OP~N~ rloul.t tt t • fo~ the f4'1 to ,'~e.dy •• i.t. If "ot, thl rout4"'1 cr •• t,. . , Ufl'O ."t~y fer tht. ff'e. T~e. fir,t block of the ftl1 4• • 11oe.t@d ."d the .v.ilab11 fi'e 4"fo,.mat40", 4. Dut 4",te it. UFO e"t,.y. Th4. routf"1 "'0 ee~for~ • • oml .ltUD of the FIB. •"'0" C.,l1"'g SIQUI"ce. R,of.!.~. '''1 IXDletld to bl .et a. fo,'ow, whl" this rou- tf". f. CI' 'Id. RI - Po1"tl" to Oat •• et Oat. Block (OOB) Rt • .o4"tl~ to U'I~ C.ll A~gump."t. Th. F4'1 C~I.tl ~odule i. cal lId by thl Ccm~ol'l ~DII'I .or th~o~o~ eXlcutio" of code f" thl OD~. ,laUI"ee •••• fo"ow •• MOV CMP BNE INC MOV EXJI *U"~4J,.(SP) (R2),*2 ElC2 T9T~ eSP) (SP)+,-CA3) (R5) BFQ EXJ ~OV (PC)+,-CA3) (R5) DEC!! MI"IV RJ,PC Emt 43 • ell'. Ff'e Ooe" [MT •• - e.lls File C~e.tl PrecesSet u~ ."d el" .E~T 4J PUT ON STACK .SEE IF AN OPENO .IF OPENO, E~T 43 qECO~ES !~T '4 .E~T P~T INTO ~De .TFST IF ROUTINE R[StD!NT .BRANCH If R~SrO~NT ,MUST FREE SWAP BUFF~R .THIS INSTRUCTrO~ PUT INTO DOB .BEGIN EXECUTING C~C~ IN 008· PAGE~3' NtH'. . ., O•• e"ictiol'll Whe" the ,il. e~.~t. routi". i • • "t."ed t~e .t.ek f. adJust.d te e" •• te a .i. wo"d wo"k a~'1 fo" t"'"Sfer~i"o f"for-matio" b.tw.e" ~odul •• , (4.e. Oir.eto"y S.arch to '.'e Cr •• ,te). Th." the routil'l'. t •• t. ff it f. f" the Sw.o Buffe" 0" •• Derm."."tly eo'" r •• fde"t. If f" the SW'c Buff.~ ft mu.t move ft •• ,f out. Thf. i. do"e by ftr.t ea',f"Q the M~"~t~ri •. Get Buffer- "outj"., (GETBUF) to a"Dclte. t.~~o. "~"Y buffe~ i" fr.e eore. T~. ,41e e"eat. routtl'le thal'l m~v •• ft •• " to the t.mDorary buffe" Ju.t ,"oe.t.d, a"d co"tf"ue. e •• cutfo". N~w the Ffle e"e.t. R~utf"e fs.u •• I" EMT .LO~~UP (Ofrecto~y a.erch) to d.ter~."e if the ffl. to b. o~.".d "".ady •• f.t.. Th. Dir.etory S.a"ch r~ut1"e (LU~) r.tu""' ,r-~u~."t. f" the st.ck work .".a. If t~is waS a" 1".01' file ".~., ff th.r. w•• "0 ute or ff t~. file •• i,t.ri I" e~ro" h8, occurred ."d f.,e cr •• tie" ca" "ot co"tf"ue. rf a" erro~ oceu"r.d the ope" .witc~ f" the OnB .t.tu. wo~d fs cle.red a"d e" EMT_ .RLS'IB f. i"u,~ to.rele.,. the FtB Buff.r I"d the D.t. ~uff.r, a"d thel'l t~efr If"ws are cl.er.d f~om the O~B. Th. nc." Sw4tch 4" the .t.tu. byte of the ODe fs al.o ele.red~ I~ '" '''ro" retur" w•• let uD.ft i, t,kel'l .fter ~ele.'fl'lg to free core the t.mcorary buffer occupfed by Ffl. ere.t.. The ~,I'I"er f" which the free core buffer oecuc4ed by th, ~odule re'ea.,d f. describ.d i" the ll.t Da"aQr'Dh of thi •• ectfo". But .f"ce t~is f • • " .rro~ e.it the r.tur" t. to the u.er. erro~ retur" .ddr.... Whe" there ror ".tur" .et the Mo"ftor'. Of'Ql'lO.tfc Prf"t routi". f. c,"ed to crf"t the aDProor4ate error code. .1 .1 "0 .r- If "o"e of the 'bove co"ditto"', occurred Ff'e Cre.te co"tf"ue. by .ett4"Q ue • UFO ff there wa. "o"e wh." the 01reetorY Se.rch was attemet.d. Thi •• s do"e by f •• uf"~ I" EMT .GETMAP to ~et • bit m.c buff.r ff l'Iec •••• ry. the bft ~.o ~.v .1" •• dy be f" eo",. A" E~T .eAlL~C (Lf"k Bloele A"oc.te) f. UII" f •• ued to a' l~c.t. a blocle fo" t~e 'JFn, The bH ""0 buffe" •• th." w,,;ttel'l out by i •• ufl'lo ." fMT .WqITE~AP. The allocated UFO b'ock fs 'fl'lleed to the MFO ."d the MFO is w"itt~1'I out. Th. UFO b'ock fs cle.r.d a"d the" wrftte" out. Th. "out."e the" eOl'ltf",u •••• if the f41e w.s ~ot fOU"~ ."d ther. wa • • UFD b'ocle which ee"t.1I'1ed a" emotv direetorY e"trv s1~t. The rout4"e "OW h.s the UFO b1oc~ I"d 8 oo4·"ter to the free ,'ot. - ~ If the f11. did "~t eKist i" the 'JFD the reut'",e 'ooks et 008+2 to see if the Dfr.ctorv Sea,.ch ,.etur"ed • liFO "'ock "u~b.~, ce"t.i"~"o a" emety directory ,lot. If ther. w•• ~'t a" .~ety .'ot i~ the UFO the" it fs "eces.srv to ,"ocate a block ."d ,."~ it to the UFO. Th ••• ~e proe.~ur. 4s used to PAGE 4'-38 do thi ••• whe" .1loc.t4"a the f4~.t UFO bloc~, If." e~otv .lot existea o~ w~e" a UF~ bl~ck~. alloc.te~ e"d li"ked, th' follow4"O .eau,"c, occu~.. Th. d4~.cto~v block co"t.4"4"Q t~. e~ptv "ot i. ~e.d 4"to core, The 4"d •• to t~e f~ee .lot w., cut i" 00B+22, bv the Dir.cto~v S•• ~ch rout4"., p~.v4ou.'v. A" E~T .GETM~P (Get. B4t M.p) 4s t •• ued to m.ke .ure t~e~e 1. , bit m.c f" co~e. A te.t t. the" ~Ide to .ee 4f t"41 i. I •• co"d ope" o~ OECt.e" w"tch •• "ot p.~mitted. A" ~MT .BALLOe (L4"k,a Block 4110clto~) t. i •• • ued to g.t t". f4r.t b'ock of the f41.. The dir.ctorv e"t~v •• "OW .et up w4th F.'e N.~., E.tl".io", O.t" F11. TYD., U,.ae Cou~t of 77 t"aic'tf"q 00'" for Outeut, ."d fil' p~ot.ct40". '41, '."oth I"a L•• t BlOck ~umb'r .~, cl •• ~.d. A" EMT ~S!TUPFIB ~. t~.~ •• ,u.d to •• t UP ft" 4"iormat40" 4" the F18. The UFO block i. t~'" wr4tt." out, ."a t~. 00," ,w4tc~ i ••• t t" th., DOB St.tu. Byte. If o.~m."."t'Y cor. re.4d."t t~. routi". r.tur". to th' u•• r a.~,ct'Y th~ouoh t". com~o~ •• it rout4~e. .h.~ t~4. rout4", ;. e.,cut."O f~o~ I t,mpor'~Y buff'~ 4" f~e. co~" w~tch will o,".r.llv be the e.sl,' th, r.tu~" t • • '.o~tly mo~e co~o,.x, b,c.u.e th, buff4~ tt 4. , •• cutt"O t" mu.t b. ~Il ••• ,d. Th. ret UP" to t~e u.e~ 11 o,~fopm.d ~. fol10w.i t" •• d~re •• ef th. com~O" ~.~t ~out4", 4. eut 0" t~' .• t'~k, th." th., .ad" •• of the MO"'to~" Buffe~ -.~ •••• ro~t." ••• ~ov'd, t"to the ~C. Th4. .4~ul't'. I JSR to the Buffe~ Rele •• e routt". but wh," 4t aoe. to th' .t.ck foP ft. ~.tur" .ddr ••• tt wtl1 f."~ the ,dd~, •• 9f th, Co~mo" e.it • • "a w4" petu'" d4r.ctlv to th. com~o" ex4t ~outi"e w~tC" the" ~etur"s to the use" !.t.P.2 Proce.~. F41e "orm.' i"Dut or ,o~tout ,. O"ce , f4le.h •• be," ope"ea fo~ d •• e~4bed 4" .ectio" 4.5.1. the u.er t. ,ble to OPoc" •• t. dlta 4" Ju.~ the W'v •• for ,"y othe~ "0~.f4'. a.vtce., by me.". of .RE4~ o~ ,WRtTE. Wh41. the ~o"itor c." ODer.te UDO" the d.!. w.t~i" 4t. OW" buffe~, it _"ee~ take "0 'D.c4,' •• ct~0". Mowever, w~." , d.v4ce.tr.".fe~ 1. "eee •••• ~v to f4" o~ emotv the buff,~, t~, Mo"4to~ mu.t "OW deter~4". whiCh 'ctu" device bloek •• to b, u.ed .cco,d4~a to the tVD8 of f41e ooe"ed. T~e ou~co.e of thi. 'ect40" 4s to ,x'~1"' the orocedu~e by wh.c~ th4. 4s do",. .,m. ".0 As "ot,~ 4" .,ction 3~2.2.2. the o~."c.D" rout."e co"ee~",d ., emb@d~e9 wit"1" the .~EAO/.WRITE Droce •• or 8"d thi. 4. di.culsed f1~.t i~ .,etio" 4.~.2.t. It i. '~Ow" t~.t dur4~g the C~elt1o" a"d Ewt~"14o" of • ,4"k.d file, this rout4". can make Ute of t~e b4t.m.~ .'Q~ent b~oua~t ."to me~o~v ~u~4"O the .nPFN e~eeet., u"ti, th4. 4"d4e,te. that "0 furthe~ b10ekl r8~.4" u"a •• 4o"ed. I" DOSA,~NO this ea.a, 4.5.2.2 f~om the t~e co~e leo~e~t ~esc~ibe. t~e sy.te~-device, ~Ult be eh~"~ed .ubl.dia~y to effect ~out4ne the I~ttc~, a"d 'act40" ca"ed, u.ua"y Thil .ectto" 4n fact cova~1 two .eQue~ce. 4~ the ,READ/.WRITE ~roces.~r whfc~ .~e executed w~en eXam4"8t40" of the 'acilitfes Ind.c8to~ f" the d~fve~ I~terface Table .how. that the devfce le~vict"g a datalet is ffle.lt~uetu~ed (.ee !eetion 3,3.1)~ T~e f.~st leoue"ce i. ~ •• eon.4b'e fo~ en.u~4ne t~at the DDS Device ~lock i. set u~ co~~ect'y fo~ a" enluino t~an.fer, It ~ust a110 ft"d out t~ adva"ce the "ext bloc~ to be uled i" the out~ut of a 'f~ked ff'e f" o~d e~ to c~a4n it to t~e o~e now befng w~ttten, T~e .eco~d IeQue"ce fermI ~a~t of the ~et"itf.'.z.tio~ fo"ewfn~ the t~a".fer, i" ee~t4culer checkinQ for the en~ e ft'e e"d .t the se~e ti~e beai"nf"Q the set-ue for t~e "ext tranlfer, ef AI an integ~.l cart at the .READ/.WRITE ~roeelIO~, the~e 41 "0 Ineeffie ca" or extt e"d the Reafste~ .tete fe"o~. 0" natu~elly withfn the Oe"e~Al oee~atfo", Howeve~ the cre-t~.".fe~ .eQue"ce eSlumel thet for a lt~ked ftle the device block needed ts held tn "Next ~loek *" fn the ~I8 where.1 it 41 eXDeeted to be elreedy cor~ect'v Itered f" the DDB when the file 41 centf~ueul. The a~Dro~rfate f.'e-~anaQe~e"t ~outfne fo~ .O~EN letl ue the neeel'.~y .tate i" ~eAd.nels for the f1~lt t~anlfe~ C.ee .ect4o" 4.5.1), the cleen-ue seQuence meintafnl 4t Clee below). A ~rocerlY eltabl41hed FIB i, e'lo elsentia', t~ough euto~atfc 14"ce ~READ or .wRITE mUlt be D~eceded by .~P~N or the reQuest i. ~eJeeted (lee sectio" 3.2.2.2) * It fo"ows fro~ t~e crevfous ce~eo~ee~ that "0 fu~ther eet4o" •• reQuired befe~e a tr8"8fe~ ff "Tyee" 4" the FIB ,hOWl t~e f.'. to be eo"tiouous. Otherwise, the eo"te"t of "Newt Rleck *" is ~oved fnto t~e Dns. ~ewftver for DECtaoe, this coul~ be "eQative, lig"ifyi"Q thet the bloek fl to be tra"8fe~red wtth the tape ~ovi"Q bec~war~. (se. 'ectio" 4.3.2). ~e"ce the ~ece8serv chec~ 41 made and the Block a~d Tae~ Oi~eetion sw4teh i" the ~OR StatuI a~e adJulte~ acco~d;~g'y. Onee do~e, oreDa~et.O" for 4"cut it a'io eo~. "lete. * Fo~ outeut, 0" the .eg~e~t attaehed ot~e~ ~.~d, a se8~e~ to the FIB by .OPEN of the ~u.t b~ eo~e ~ede b4t in ~.o ord.~ to aaca~ta.~ thft "ext block to ba w~itte" a"d l4"k 4t to the ~l~ck. T~u. t~. ~eo .fto~."t 0~iQ4" 8"d ~e"Qe a,e comout.d f~om deta f" t~. ..cme"t p~.·e~b'. C.e. lectfo" The .ta,t block ior the lee~c~ fs ~ete~m~"ed 0" the b,.f. of the cu,re"t ~lock "u~ber f"c'e~ented by the IF fi.'d f" the FIR (dec, ••• "ted ff t~e cur,ent ~l~ck •• a OfCt.pe r.v.,.e WRITE). The r •• ult f. co"ve,ted to a v.lue ra'at~ve to the •• om."t or~o~" a"d ff ftf. lee" to ~e eft~er above 0' below the 'eome"t ra"08, it 4. reset to ~ to co,"'oo"d to the 0,1gi". At the .a~a tfme, • • wft.c~ •• let to , •• t,4et the ,.a,ch, .f"ce o"'y t~o p ••••• ove' the s.o~a"t .,. "aed.d, 0"' from t~. ootimal block to t~e e"d a"~ the oth., fro~ the oooo.it. e"d uo to the oot.~al b'ock~ cu~~e"t •• 1.3'._ Th. valu. of the optf~al block f. u •• d to fo,~u'at. the .dd,... ef ft. reo, ••• "t.t1v. bft i" the ~.o a • • how" f" •• eti0" 4.1.3. If thi. bft •• 0, 4t •• re •• t to 1 to clai~ the blo~k_ (1'. The block "u~ber, ab.olut.'y.reco"lt4tuted by additio" of the oriQf", ts 'tored a' the fil.·,tnk 4n the fir.t wo,d of the d.te buffer ("eoated fo, e ,eve,.ed curr."t bleck 0" nECtap.) end out out preoaratto" •• don •• Otherwt.. the mao is ,.a~fned fo~ the ft,.t evaflable block from the ooti~um, with the eur,e"t OECtape block df~ectfo" d't'r~t"t"o that fo, the .aarch, 0" the fol'owf"o ba.i,. 1. Th' ,dJacent b4t. i" a.ce"dtnQ (or de'ee"d.n~' o,der wfthfn the .a~a bvte are Checked wh4le tha block value ., fnc, •• e"t.d 0' decre~e"ted. Sucee •• fv. bvte. f" the aooroo,fat, d.rectto" e,. telted, wtth the block "u~be, adJu.ted by 8, u"tfl 0"' "ot co"tet"f"o 37' f. fou"d. The i"divtdu.' bits of this byte a,e aa •• " checked f" Iteo 1 with cor,e.oo"dfnQ ~o~tiic.tton of the block "u~ber. '1. The ••• ,c k i. te,~tn.ted •• ,00" .1 , 0 bit f • • ee" a"d the r •• ult is p •••• d 0" ,. Ihown f" the 'a.t 08,aoraoh. If however, t~e releva"t.e"d of the seQ~ent •• reached wtthout .uece." t~a o.ss .wttch. t. ,ever.ed ,"d the •• co"d oe •• of the •• erch fs let uo •• follow,. 1. ~"df,ks, th~ s'arch seOme"t o~fQt" • ....• ----- .......- . b'ock value i. r~let to the 1. Becaus. of the oote"ttal ~e·e"trancv of t~e .QEAO/.WRITE proees'9r, the ectual btt-checki"Q seeue"ce (,co~ox 30 ~~ec.) 4s ca~~fed out at lavel 1 o~iorftv to ~~~ve"t eo~~uo tic" t~rouQ~ ."te'~uDt. 'o~ DECtIDe, t~. d.~eet1e" eo"t~ol 1t .w1te~.d to ~eve~.e .11 the .el~e~ oce~.t1c"s a"~ the eu~re"t block beco~e. the 'ea~c~ bloCk (fo~ ~~.IO~' ofve" 4" "ctfo" 4.2.3.) The ••• ~e~ •• eo~o'et.'v ~esta~te~ wfth t~e t~a".latio" of the "eW eote"ti.' block i"to b4t-oo,ft40", Should t~e leco"d 01,1 11'0 flfl to p~oduce • vaca"t block, the cu~~a"t ~.p .ea~e"t ~Ult be ~e~lacld f" ~e~o~v bv ."ot~e~, Thf. it effected bv • cal' to the .oeefal rout4"e de.er.bed f" th@ ",xt .• ect4Q". 0" ~etu~", the .earch f. co~o1etelv ref"ttt.,tled - f" this cele .'wavs ~ef"~ ~elu~e~ at t~e o~fQf" I"d the D~oce •• is ~eceated u"tfl efthe~ a bleck f. fou"d o~ the dev4c, i. lee" to be ful,. (Th4. c~.e fl h8"dled bv the IDecfll ~outf"e,) '-J O"oe tha .oD~ooriate actfo" ~a. bea" .atflfaet"~41v Iceo~ Dl1.had, the ,.t-uo .eauence ~eJ~4"1 the ~Af~ ~out1"e fo~ III devfce., to e.~~v out the t~I"lfe~. 0" ~etu~", t~e ele· I"-UO seOue"ce il ente~ed Ifte~ th~ "eee"8~y ~o."te~1 heve bel" ~elet. Thfl li~Dlv f"cr~~~"tl "Devfce Bloek *" i" the DDa 4f the f41e •• cc"tfQueu., ~oweve~, the "ew value i. checked aQ.~"'t "E"d ~lcck" f" the FIBI"d if. o~eeta~,. tha [PD ~~~ke~ fl let.f~ th, DOe. Fo~ If"ked fflel, t~e ff~'t wo~d of t~e d.tl.buffer, f,a. the If"k-wo~d ,ust read f" o~ the C"' w~ftte" out Ifte~ th, 11.~ch, ., ~~ved f"to "Next alock' f" the FIB, a. reQuf~ed fo~ the lub,eQue"t t~I".f.~, Thl EOD ~I~ke~ ft aOlf" ,et 4f luch lf~k-wor~ 4. 0 .fO"ffVt"O the e"d of a" i"out file e~ o"e forced UeO" I" out~ut f41e wh," "0 ~o~e blocks Ire Iva11lbl" ~o~~~l ,READ/,WRITE p~ocellf"o thl" followl I' de.e~fbed f" •• et10" 3.2.2.2. Thl D~o.cel'. fo~ .'.loc.ltf"o t~e "elet outeut bloek de.e~fb.d Ibove of COU~I. De~forMI f~ ~uch t~e lame wav a. t~e ~odul. LBA d.l~ulled f" tectio" 4,4.4. The two ~out."el dfffe~ 0"lv, f" fact, ove~ t~ef~ ha"dlf~o of DECtaoe, LBA f. "ot CO"cer"ed with the D~oblem of block, w~ftte" f" ~~verse If"ce dfrectorv a.te"I.,O"1 C~ t~e f1~lt fne-bleclel a~e .'WIV. fO~WI~dl, The aoo~oo~fate code could be adde~ I"d t~e embedde~ I.oue"ce woul~ the" be u""eeellarv. Howeve~ t~f. t. "ot do"e o~ele"tlv for two re.IO"11 AlthoUQh the .READ/.WRITE o~ocello~ ~u.t b~ ~e Ifde"t fc~ the tf~e be4"o, thfl "eed "ot a'wavI be t~a ca.e. The ~WIO BUffe~ ~f~ht "ot t~e" be ayaflable fo~ LBA's ule. r.ye" ff the SWIO Buffe~ f, f~ee, the coe~atfo" to fetch LRA ~ust oote"t1a"v Oecu~ for each ffle-block w~ftte", f.e. two devfce t~'"lfe~, DOS~.~N~ fo~ o"e Calt~ough the ch.~eel .re that o"ce 10eded, LBA .~ ~.nv 1"st.nc •• cou'~ ~e u •• d .everal t4mes ov.~). Mo~eov.~ the,e •• "waYI the eossib1l.tv th.t LRA m40ht be "eeded .t.~ i~ ter~uDt level whfl. the Droo~.~ 1. bef"Q •• rviced D.~h'DS by a Utflttfe. ~out.ne. T~4. would be u~.ble to comDlete .~d ~el.ase the ~SB and LBA coul~ "ot b. b~ouoht in untf' ft dfd, thul ~.noinQ t~e .v.t.m. ."oc.tio" ~eut.~e of the .~EAD/.WPITE D~eael'O~ d'lc~.b.d 1~ the 'a.t •• ct40" •• , •• pon.fbl. for ,avi"Q the lat •• t .tat. of the f".eo~. ..~mant fn the ma.te~ bft map .to~.d en t~e dev4ce a~~ fo~ ~e~'acfno Th. modul' called bv the block fn acco~da"ce wft~ the .vewed ~o"fto~ fer_ keeoinQ lf~ked ff'.s far •• eo •• ible at the f,ont end of the ~edfum. (See .ectfon 4.1.3.) It mu.t al.o o~ovfde fo~ the e~ebab.'itv that nO fu~t~e; b'ocks ~ama1n ~~ee io~ a •• fQnment. Hewev.~, the Modul' do.. "ot ft.e'. Ittemot to •• aM4ne the .eQ~ent ft ~IY 10.d, thf. f. 'eft to the CAllinG ~outf"e. it by pol.c~ anothe~ .eg~ent ,S Call4"0 SeQuences Th. Moeu1e deoend. u~on the ~'Qf.t.~ .tat. of the .READ/.WRITE D~oce •• o~ at the c.'1, a • • av.d en the .taek by the EMT handl'~1 ~0 • Add~'11 of the ODe et "Ruffe~ Add~el'· CDOB+8) ql • 10 (let ready fo~ .ece.s to the d~fv.~ t~lnlfe~ reutfne - .ee S.etton 3.1.2.~, al.o uled IS block value f"ere~ent durfnG m.D •••• reh) ~2 • Add~elS of the FIB at the f4~lt temeo~I~Y wo~k '~Ice (FI8+32) q~ • Device switch ("on-0 fo~ nECtlo.) In Id~ftfen, it exoeetl ·~e.t Block." fn the ~IB to b. nen-0 when ffrst cel1e~ (1) Ind 0 ff ~ee.l1ed du~f~o the •• me s,Areh o~e~.tion (f.e. beeaule the new seoment is allo ful1)~ Allo two u"wented ftem. are on toe of t~e It.ek • .. -._--.-.-.-.-. 1. Thfa fo"ows from the fact that ft. norm., content cannot be 0. sfnee ~h4. aa a block il never av.ilabl. fo~ D~O. o~am eeees. (I.e f1aures 4-8 & 4-11). DOSA. 'hit') T~. p~o~l.~ "'.~t." . i~ Of co~f'iet ov.~ MSB u•• o. d4.eu ••• d u~d.~ ·Co~. th. , •• t .,ct40~ ".0 ,p~lie~ to tId ... out4~e • h.~e. ~oau'. GMA C., • • ect40~ •••• 3) 4. ~ot u.ed. ~ow.ye .. th4 •. p~o~1e~ ce""ot be .~'ved ~" the .e"'e w.y, wh." the op • • ,.tio" of e~."a4"q ",ac. i ... ,aui~e~ ~uc~ too 'eldo""YI the 4~e'u.ie" ef the ,outi". 4" ~WN i. t"'u, u~, •• l.lt.c. N.ve .. the'e •• th4. i"f ... aue"cy "',ke. 4t fe,.4b'. to ,4.k the .,"'e e~"il~ct fo~ the ~ub.~d4 ... y ~SB, .4"C, ~h~. c'~ o~lY occu .. if the ope ... to .. h.po.". to u.e the keybo.,d .t the ""'e t4",e o~ .o~e p .... ll.' dey4c. t,.".f.~ p,oduc ••• h... dw ... e f •• ,u .... H."ce GNM •• c.".d by E~T 34, .~ •• , u •• 4"q 8 coae fo .. ci"Q SA~ to 'o.a 4t 4"to K!B e.ee •• ct40~ 2.3.3). AI "ot.d f" th. 4"t .. oduetio", th4. "OUt.", ~u.t h."dle "Dev. 4ce Ful'it will be ,how" h.low th.t ft ",e~.'y .etl the EOD ", ... ke~ 4" t~. D~B ."d •• it. df,eetly to •• eeut. the d.vfc. t .. a".fe,. To e".b'e 4t t~us to o",4t • fu~th ........ eh, 4t exe.etl the i".t .. uet40" befo ... the c." to be • b","ch to the .DD~oo .. i.t. Doi"t. H."ee th. ful' e." 'eaUe"ee 4.1 ."d 8~ E~T RW.TFX ,CALL TFR I~ DEVIC! FULL ,CALL GNM ,RFTURN IF NF.W SEG~ENT LOAOED 34 Wh." e"te ... d, GNM u.e, the .ctua, R~of.t .... t.te •• t by EMT h."dl ... (.ee 'ectio" 2.2.1) .s fo"ow •• ~1 • St.ck ,dd .. e •• of the f4 ... t wo .. d .fter the c." tu," o .... lftete ... ~5 • • dd~e •• of the ol'oce •• op St.tu. Rea4.t ... th. .... Exit St.tel c. 0" eo"'c'etio", G~~ .. ee.", the .R~AO/.W~ITE Oce •• o .. wfth the 0 .. i04"8' e"tPy .t.te pe.to .. ed, exceot fop the fol1ow4"q .dJult",e"tl to e".ble ,e·.".t~"iz.tio" of the ..... ch •• ~oted i" the '.It .eet1c"i '. ~0 ~2 • • Add~e.s Add~el' the of the o~ OD~ FI~ .t ·Wol'd COU"t" CD~B+l~) at "Next 8loek" (FI8+0) "Next Sloek" itself 4. cleered to .. e~eMber the t,y C.ee opev;oul e.... ~ ... c"') e. e~. The u"w."ted 1t.~. 0" the st.ck , .. e ~~Mov.d ,"d .... ~ecl.eed bv • • 4"Qle ~"tpy of 1~0~0 (uled ,. ~ "0. tatio" COU"t@ .. 1" the eo",put~t40" of the seQ",e"t o .. 4,d",. PlGF -¥-A4 P"oe •••• Mell T~ ,..due •. t~. ~"obab4l.tv of keyho.,.d f~ter~uct.o", G~~ f.p',t ,. ••••• t~. o~to,.itv to 4 (cleared "V RTI .xtt) .~d t~." .xt"act • • "d .dJu.t. t~e •• ved Rep •• ter data .s Mot!d ,bov'. 4t t~ • • • ~. t.~e the 't"k.wor~ 4" t~. date buff.,. •• cl.a,.ed .0 th.t 4f "Device 'ull" t • • ee", t~e lalt out~u~ t,.e".fe,. co,.r.ctlv te,.~t".t •• t~e f.',.c~'~M~ '.V.' 0" If GNM i. c.'led a"d the devie. t. OECt.o., t~e 10.dt"0 of a M,W •• om.Mt f. tmoo •• ibl. wh.~ the"e •• 0~1v 0". C.e ••• C· ttO" 4.3.2). Howeve,. t~. c." •• ~ed., b.cause t~e two-o.'S ••• ,.c~ d •• e,,~b.d ." •• et.o" 4.S.2.1 could, ~M f.ct,mt •• ch.ek4"eI th, block • • k.ooed by the .'~D'.c.tf~" of the IF (uM".c •••• rfly D.r~.D' • but ft obvf.t ••• oect.' ~."d't"Q f" RWN fe,. a ·OMC. f~ a blue moo"" exe,.c4.el). We"ce fo,. • f4".t ."t,.y, GNM Ju.t •• tt •• ~medt.t.'y wfth "~ext Block" t" the FIB ,cl"red, thu. fo"ci~o • • eco"d comolete .e."c~ of the ~.e .eom."t .'"eedy f" co,.e ."d c.u.f"eI • " ••• ~t,.y to " •• ult •• "D.vic. Ful'· C•• e be'ow). Fo" d4.k oo.,.at40"., ,..th.,. t~." •• ve t~. exi.tf"g co"te"t of the D"OO"'~" DDB, GNM u ••• ~t. OW" f"t'''"8l v.,..tO", al· " •• dy •• t to t"a"'fe,. .'way. e. wo"d. (see •• ctio" '.t.3). Thf. i. o".a.r.d to .~ow the .a~. Orfve" Add" ••• , Oevfce U"· ft ,"d 9u.y Flaq co"te"t ( f~ c... of .,.,.or a. u"de,.,. "Suffe,. Add,. ••• • f. e"te~.d f,.om "Bit M.c St'''t" t" t~e FIB ."d "D.yie. alock" f. comout.d f,.o~ the d.ta 1" t~. m.o •• g~."t .o,..amble. "Co~ol.tio" ~.turM" t. .et to eaU,8 the d"fv.,. to call a .4~fla,. •• aue"c. to that u,e~ by SA~ fO,. d'Qu.ut"O the d"ive,., eheck4"0 fo" t"a"li.,. i •• 'u"e, c'ea,.4"0 t~. bu.y flag a~d tak4"Q the Sy.t.m Exit t.ee .ectto" 2.3.4'. If thi. t. the fir.t ca" to GNM fo,. th4. oa"tt~ul.,. ,.e"ch, the cu,.,.."t m.o .eome"t mu.t b. wrttt." out befo"e • "eW o"e 4' lo.d.d. He"c. 4f "Next Block" 4" the 'I~ •• "0".0, the d,.1v.,. t. c.,'.d fo,. out cut vta s.coe, w.t~ qeQt.te,. • • "d Bu.y ".0 co"te"ts .av.d C.e • • ectto" 2.4.2). .wAIT fo"ow, • w4t~ a It"k-block •• mulated 0" the stack. 0" .at4.facto"y comaletio", t~. ODa BUlY ,'ao fe ,. ••• t a"d the "'ock "u~be" fo" ~.e •• om."t *1, a • • to,.ed 1" the meo c~e.mble, is e"te,.ed • t~us alwaY. ,.e.um."~ the lea"ch f~om t~e fro"t of the co~o'ete ma~ •• "'elu1"ed. W~e" th11 ha. bee" ~rou~~t 4", "N.xt Block" 1" t~. FIB t. clea,.ed to .~ow the GN~ e"t"y ,Md RWN is recalled. F~" .ub.eoue"t c.1l. to G~M w~t~1" t~e .ame .earc~ oc.~at10", the w~fte.out.. u"~.ce"8ry a. 1t ca" b• • • • u•• d t~at t~ • • egme"t lo.d.d wa • • lreadv ful,. T~.~.fo", t~ •• o~ttt'd a"d ,.e.d.~a of luec ••• tve ~ae .eameMt. o~'v occu~ •• Th. fo"m of the exit dtffe,.1 f~o~ that ~~ev10u.'y de.cr1bed. Becau.e of the use ~f the KS8. GNM, 11k. t~e othe,. ,.OU· ti"el, Cou~t', t~il c~eck. it. ~e.ide"cy ~oweve~ it ca""ot ee" f~o~ t~e ~4~lt byte (Ulage t~e "o~mll 'Vlte~.E •• t, w~e~ dec~e~e"t the MS8 COU"t II delc~ibed fn leetio" Inlteld t~eref~~".w~en GNM f~ 1~ 'he ~S~ ~t usel I lim1'Ir for~ of e.it I~ecfficel'y 0~ov1ded fo~ the keybo.~d 'I"aulae ~~du'el' (lee S,etion 6.2.~.3.). It ~eou.rel t~et GNM Ito~e "RTt" i" the thf~d word below the KgB e"d e'lo thlt i~ ~elto~e itlelf ~he ,ayed ~eofste~. fO~ the ea"i~Q ~~oarlm, The .eme .ituation arilel, 1f a device t~an.fer fli'., f" thia ca.e, GNM freel the KSB wh4'e executi"o "InT" f" 'ieu 01 "RTI" (fata' error F~l.) (lee ehaote~ 7l. wf" 2,3,.~ Co"'me"tll - aeelu.e of the inter"ll 008, GNM eu~rent'y el""ot bl re.e"trl"t. AI show" for .INtT i" .eetio~ 3.2.'.1., t~f. fs "0 orOblem al 'O"~ a. SAM cln orovfde t~e orotectfo" affo~d· ed bv t~e re·e"trl"cY .witeh i~ the 'eeo"d byte of G~M (.ee ,eetfo".2.3.1). In the. u"'fkely eve"t that a use~ ~eQ~i~e. ftl ~e.ide"cy, there could be orob'eml (eve" thouOh t~t. is 4molied bv t~e ehec~ me"t40~ed 4" the lelt olraoraoh). AI Ihow" i" Seetio" 3.2.2.3, a" .CLOSE cells, 'ike those f~~ .OPEN, are i"itielly orecelaed by a Qeneral routf"e. T~41 e"IU~el that t~e lalt hlock of I"y file eoen fer out out .1 diloltched to the deviee. tt the" csl'l a f4'e.mlnl~ement routi"e to oerfopm directory o~e~ltfon. if the device 4n ule il lee" to be f4'e •• truetured. The ourOOle ef this section .1 te e.em."e the routt"e 10 cI"ed. It. o~.~e fu"et40"1 ere. 1. Uodate the m.ltlr bit mlO on the mediu~ ior. file under ereation or e.tensfon, usi"Q the 'at •• t state of the leQment f" eore lJodete a file Ph OECtaoe ~IO for e new or' e~tended 141e 0" Comolete the UFO entry for the file to skow fts 1.telt .tate Re'ea.e the FI~ ~nrl Deta Buffers to fr'~e Core, e'so ~he Bft Mao Buffe~ if "0 other f1'e • • re sti', us· fna ft. CI"i~Q A ca" SeQUe"eel to FCL reQuires reof.ters set a. fo"ow.i R~ • Pof"ter to DDB R2 • Pof"ter to FIB R3 • Drfv~r Addre •• Rd • ~o~ff'ed How Ooe" Code (Code -'-, T~I e~1'f"Q .eaue"ce fro~ the CO~~o" ODe" Poreelaor f. al fol'owi. MOV TSTB BEQ MOV OECB MCIV .hl~"'5, ,QS 'IU .+6 (PC)+,·CRt) 'R5 IU,PC A" EMT 45 il out f"to the.DDB. A test •• made to •• e if the Co~mo" Cl0.e Proee •• or t. f" the SWID Bufferl ff tt f' the ~o"tter SWID euffer mu.t be free Drior to ell,i", the 'fle Clole routf"e. Th1lt. do"e by Dutti"o e .eeo"~ .".truet~o" wh4ch freel the buffer f"to t~e OOB I"d t~e" outt4"~ f"to the PC " the'DOB addresl"where th~ "e~t f"ltruct4o" to be e~e. . cuted tl stored. . .' Delc ... 4otto"1 Whe" th~1 r~utt"e ts e"te~ed ~t f~rlt calli t~e M~"~tor routt"e whfeh tlke. the slved co~t'"tl of oe",r,1 reg4Ite~. fro~ ~he It.C~ e"d reltore' ~hem. modif4ed How ODe" Code for the Ffle to be eloled fl t~e" coded a"d eoorooriate cre"chel are tlke". of.te~ ~e.tore ~e the The de- A ,."~,d ff'e oDe"ed for outDut (OPEN"), oreeee~1 to clol' I' f~llowI~ t~e block "Umbel" of the 'aat bloek wrftte" .s DUt t~t~ the FIA at FIB + 16, LAST RLOC~ WOqO. A Dot"ter to t~e drtv,... loeatio" w~fch ee"tli"1 the de.frerl bft ~IO addre •• t. ea l culated a~d .,ved. The". telt.fs "'Ide. to. de. te ... mt~e 4f the device tl OFCtaDer ff ft tl OfCtlce, it t. ",eel'lry t~ uDdlte b~th the cel"~a"e"t bft ~IO a"d ftle b4t maD. For OECtloe the Del"ma"e"t b~t maD ts read t"to core. The core btt ~ID, which delcr4bea the old Del"~l"e"t btt ~ID Dlul the block bet"a uled by th~ "ew ftle, i. wrttte" out. The" th~ eore bit maD 4s btt clelred with t~e D~rml"e"t bft mID, so thlt the I"emaf"t"o set bits delcr4be the ffle btt mID. The f.'e bit ~ee ~s reed 4", 8"d btt set w4t~ the modified core c.t mao I"d the" it fs wrttte" out. For Otsk tt OOS4.RIIj'" 4. to .ea~c~ the b4t ~ao ehai" to Qet t~e eo~~eet b4t ~ap bloek. T~e ee~e bft ~ae i._t~e" w~.tte" out. If there a~e "0 FIBs laft on the FIe e~a4" the" t~e Co~e B4t Mao Auffe~ t. releal8d, by t~e Mo"ito~ Buffe~ ~e 'e.se Routi"e. ~ow t~e fi18's ~4~eeto~v F"t~v 4s ~earl 4" a"d t~e F.,e fnfo~~.t.O" i. uodated wit~ a le"oth and a 'a.t bloek of file. T~e bloek co"ta."1"~ the d4~ecto~v e"t~y i. the" w~itte" out. The FIe a"d Oata Buffe~. a~e t~e" ~e. le.sed 8n~ the co~mo" e.1t ~outi"a il take", fo~ ~etu~"4"Q to th8 u.e~ • "eees.e~v ~e~~a"e~t • contiouou. f41e ooe"ed fo~ update o~ out~ut, (OP!IIjU OPENC) o~eceed. to clo.e 4n a co~~on ma"ne~ •• follow •• o~ F~~.t t~e block co"tai"~"a t~e ftle. UF~ ent~v ~. ,ead f"to co~e. T~e file Lock b4t i. claa~ed a"d t~e u.aQe eeu"t i. dee~eMe"ted. T~e "eW fil, le"ot~ a"d t~e ftle'. lalt block "umbe~ a~e out into t~e d4~ecto~y e"t~y. T~e block eo"taf"i"O t~e f41.'. di~ecto~y e"t~v f. t~e" w~.tte" out, the "ece ••• ~v bu~fe~s .re rele~.ed a"d the ,outi"e ~etu,". to the u.e~ th~ouc~ the co~~on ex4t ~out1ne. A linked O~ co"tiQUOUS file o~e"ed fo~ i"put COPENI) t. elo.e~ 1" t~e followi"O ~el~t.velY .i~ple ~a""e~. T~. 'I~ •• ~ele".d bv t~e ~o"ito~ buff.~ ~elease routine. The" the O.ta Buffe~ ts rel@a.ed bv the sa~e ~out1~e. Co"t~ol 4. the" ~etu~"ed to t~e u.e~ t~rouah a ~etu~" v4a the eo~~o" eleit ~out."e. A linked File ooe"ed fo~ •• te"s40" COPENE) •• closed t" the followi"o ~a""e~. The last bloek numbe~ ef the o~i~f"al f1'e, w~1e~ is .tered 1" the FIB, t, tested to .e •• f ft f' neoative. • ne~at.ve ~'oek "u~be~ mea"' t~e lalt bloek wa. w~ftten backwards, w~4c~ ca" on'v happe" 0" D~Ct.oe. If ft t. neaat4v@ the ~eve~.e bft 1s set tn the DDA and the block numre~ •• "eoated. T~e" the c~fgt"el ,ast bl~ck ~ea~ fn, end the block "u~ber of the beQf"nt"Q of the e.te"sfo" •• put f"to t~e l4"k wo~d of the block. T~e" t~e blOck i. w~1tte" out, and the ~eve~.e bft 4" the Doe fs elea~ed. The elosing p~oc.du~e now p~oeeed. t~e .a~e as elel1nQ a" OP~NO file, e.ceot when the dt~eeto~v e"trv i. u~dated the lock bft ~u.t be clea~ed fer a" OPfNE. .1 OOS4 ... Nl.I 4.6 Hou,eke.c4"g_Oce~et10"s A p~oa~.m "eed, fact'4t~e~ ot~e~ t~e" t~e ma~e oDe"4"~, D~O· ee'li"o. e"d Clos4"O of ffle,. ~u4te eo~mo"'y, t~e.a ff'es mev be ~~'v te~DO~A~Y - e. _ Wly of ut~'fzfn~ t~e bulk •• te~loe mediu~ IS I" e.t@"sio" of avai'I~'e co~e. At leta~ .tl~ea, these ft'ea mu.t ~e d@leted o~ ~e made oe~~."· e~t u"de~ • new n.~e o~ dfff@~e"~ o~otecti~". Co"tf~uous ftlea, also, ee~ on'y be o~oceale~ 4f they e~e e'~eldy 1" e.ilte"ce, the ~ea". o~ e~eetf"g t~e~ f"4t4e"y ~Ult be ac. e.alible. Futhe~mo~e, ft hea bee" ahown t~et oee"f"o a ffl. 4a o",y ce~m4asfb'e i" Iceefffed e.ses, ~.~. O~E~U fl '.~a' o"'y fo~ co"tiououl fflea. e • • nPENO f~"'.es t~at theft'e d~el "~t e.ia~ el~eady. Th, D~OQ~e~ ~.y th~~efe~e ~ilh to e.emi"e the device di~ecto~y i" edvanee to orotect ftse,f eOli"lt er~o~. He"c. the e~D~oorfate DrOO~lm ~eQuests Ire D~ov1rlerl for these ope~.t4o"1 e"d t~e obJeet t~4s .ectto" .a to d.scribe t~e ~."ne~ i" w~ic~ they .~e D~oce.aad. I" Ge"e~.', thea. reQuesta a~e v.,4d O"'y whe" a ffle is "ot elreedy. ope"ed on the detalet ce"ce~"ed e"d .'thOUQ~ the p~oce.s'"~ ~odu'e f~ elweYI ce"e~, it to"o~es the cel' if the devfce i. "ot fil@·structu~ed. ef 4.e.l.l . '1 'ocete Set-uD The fu"ct4o" of t~e module is to e~eete a contiouous file by .eerc~i"o I deviee's Derml"e"t hit ~ID f~o~ the e"d, 'ookf"~ for the .• cD~oori.te number of U"occuDfe rl eo"t~gUOUS blocka. Whe" fou"d the co~r~.oo"dfno hit. e~e set f" the ce~~a"e"t b.t mao. I~d ." ."t~y ts ~ede f" the UFD io~ th@ ff'e. MOV .~uM,-(qe) MeV Mnv _LN~BlK.-CR~) F.MT 15 .FIlBLK.-CR~) • value of -1 retur"erl 0" too of th@ cltea a successful .llocation. steck f"df. A, v.,u. of X, not .cu., to -I, ..... tu,.n.d on the top of t~e Itac~ wh@n a"ocat40~ ~ •• un.uee ••• ful. Th. yalue ,.etu,.~.d, X, f~dfe.t •• th@ s1z. of the la,.Q •• t elloe.t.bl~ s.q~ent aY8il.~le, i~ e4-wo,.d unU •• O•• e,.4Dt1onl Th. mOdule ff,..t e~eek. to .ee 4f it i. f~ the SW'D ~uffe,.. If it 1. it "'Quelt • • buffe,. f"o~ f,.ee co'" th"ouQ~ the Honfto,.i. G.t Buffe,. ,.outin. (GET~UF) .~d th.~ ~ovel ft.elf fnto ft. If. f,..e eo,.. buffe,. •• not .v.f'~b' • • nd .~ e,.,.etu,.~ w•• not .,t u~, the Monfto,.·. ~iag~o.t.e P,.1nt ,.outin, is e.ll.d to e,.4nt .n .~~,.oe"i.t. e~ro,. code. If.n ,.etu,.n ~ •••• t up it •• tak'" by th~ eo~mon ,x1t rout.n • • ft.,. ,.., ••• t"o the ".e •••• ,.y buffe,. •• ,.0,. .,.,.0,. Th. ,.outi". t •• t. to •• e 4f t~1. i. a file .t,.uetu,..~ d.v· fe., .nd ~1 not, the ,.outine e.tt. th,.ouoh the eO~mon exit ,.outf" • • fta,. 1,. •• f"0 the O.telet .nd ~'e."fng u~.th • • t.ek. Th. ,.outi"e .1'0 ",'ee.el the 1"ee eo ... buff ... it occuD1 •• th,.ouah the Mon4to,.'. Buff.,. ~.1.... ,.outi". ~.RBUF whieh ,..tu,.". d1r.etly to ~he eom~on @xft ,.outi~e S.ExIT. The .uce ••• 1"dicato,. C-l) il ,..tur".d on the .t.ck. Th._EMT .SETUPFIB 1. i •• u.d at th4. ~ofnt t~ oet 8 O.t. Buff.,. .nd • ~IB. If no buffe,. i. eva.,.ble, us. the D"'VtOUI it fO,. no buff.,.. ~ow an EMT .LO~KUP fl fssued. T,lt. a,.e m.d.10,. .n 4ll.Q.' file name, no UIC, and ff the ffl • • ,,. •• dV e ••• t.. If anv of th •••• ,.,.c,.~ e det.eted, the e,.~o" ,.etu,.n tn the f.'e block i. taken, 4f th.,.. fs on., Oth.,.w4.e, the Monito,. "'Qu.st. E,.,.o,. ~fao"ost.e p,.tnt. ,,,,.0,. •• ... If the,.. 1. no UFO it get. thp. f1,..t UFO block by o.tt1~q • bft m'D into eo,.., al10e.tf"g '. link.d ~1oek and w,.ftinq the bft m'D o~t. T~e UFO i. then 14nk.d to t~e MFO. Then the HFO f. ~,.itt.n out. If th.,.p. ~ ••• UFO see f1 the E~T .LOOKUP fou"d a" emety .lot f~ .. the 111e ent,.v. If no e~Pty slot .dd • block to the U~D. A n.w UFO block 0,. the Hr,t IJFO block is gotten 1n the fol1owino ~."ne". A" EMT .GET~AP •• fl.ued to make .u,.e • bit m.c •• 1" eo,... A" EMT .BALlOe t. t •• ued to a'loc.t. • block fo" th, IJFO a"d the" ." FI'4T ·.W~IT"'AP 1s t.· .u.d to w"it. out the bit mac. The block to ~hfch thi. o"e w411 be link.d tl ,..ad 1~, .nd the ,.".i"O takes claee. 11 the. devjce w.s • ~ECtace and the,.e w.,.. no .e~~ty slots .n .,.,.0,. t. det.cted ."d h8nd1ed t" t~e ~,.@viou' m."".~. T~e new block is 'i,,~.d to the '.st a"d t~e lalt •• w,.4tte" out. Now move the file "a~e and e~t.nsio" whie~ ~e~e cut 0" t~e .taek bv tl'te EMT .LOOIC'UP, t"to the LJFr) 8nt,.v. Clea,. the u.· '0' COU"t, t"'. ftl • • t.~t, 'en9th, and end. Al,o eut D"O· t.ctio" code fro~ out the UFO block. t~e .t~ck i"to the UFO .nt~y. T~." w~it. T~. rout1"e "OW set. UP to c.,l the COntiauou. ~lock Alloca· tor eCAA'. The .ddr ••••• of the R.ad routi". and t~. Writ. routi". 1" the ALO ~odu~e ar. D••• ed to the Cont.au~us ~'ock Alloc.tor throuQh r.gi.t.rs R' .nd R~. Th. E~T .G!TCONT!Q (!MT ~1" 1. i •• ued, Thi. "'ocat •• the r.aue.t.d "u~b.~ of contiQuou. block. if .va.,.bl.. If the r.Que.t.d "u~b.r of blocks we~. a',ocat.d the aucc.s. f"d4c.t~r (-t) 4. ~oved 4"to t~e return .rau~ent P~ •• t.on. If the reQu •• ted nu~b.r of bl~cks i' not avai'abl. the '.ra •• t nu~b.r ~f .v.i'.bl. cont1euoUI blocks i. mov.d fnto the r.tur" .reu~.nt~ A" !MT .RLSFtB fs i.sued to rel •••• the FIB 'nd the Buff.~. Th.n the rout4ne return. to the c.,l.r throuoh the eO~mO" •• 4t rout1".~ B.fore ~eturn."o to the c.ller ~t i. n.ee •• arv to r., •••• the f~ •• cor. buff.r occuDf.d bv the A"oc.t. Rou· t~"' ~ALO). Thf. ~. do". by ,4~ulati"a a JSR to the Monftor'., Buff.r R.'ea.. rout1"., S.RBUF but •• ttin~ the .tack .~ S.RBUF r.tur"._d~r.ctlv to the c~m~o" ex4t rout.ne which f~.e. the SwaD Buffer a"d r.turn. t~ the u.er • •• 8.1.2 CO"~UOUs Block A"ocator T~i. ~odu'e i. call.d onlv by Al'ocat. (ALO) and it. func· 4~ to a',ocat. the r.aue.t.d nu~b.r of eont.~uou. 6. ~ord un~t.. The function 1. Derfo~m.d by ••• ~Ch1"O the dev· tion ic.. bit maD. from the h4g he.t number bit ~aol. lest word and worki"o t~ward. the beginning oi the devi~.~. bit m~D'. R0-'ODRESS OF ODS ~4-AonR~SS OF WRITE ROUTINE I~ 'LO ~5-AOORESS OF REAn ROUTINF IN ALO FIB+0-0RIGINAL Al, POINTER TO CALL FtB+2-0IRECTORy BLOCK FtB+ •• OtR~CTORY I~OEX E~T 51 Rl.~u~ber ~2.Largest reQue.ted "u~ber avaf,able ARGU~E~TS PAG!~51 . - . De.c~iptio". W~e" th~. ~outi"e_ il ~"it~lllv @"te~ed the ~o~ito~" te~ ~e.to~e ~outi"e 1, cAlled to Idd~es,e, t~I"lfe~~ed th~ouch ~e.et the ~egi,te~, Rea~.· ~e01.te~,. R4 e"d ~5 T~e" the I~e ,et UP fo~ u,e of the R£AD/~RrT£ ~outf"e, bele"o4"c to the CI',i"g mOdule C4LO). po4"te~. I~e let to the ~~.ve~ I"d to the FIB, I"d the dr~ve~s .tl"dl~d bUffe~ lize 4, cieked uo fo~ t~e "ext comoutltio". The" t~e "umbe~ of 64 wo~d u"4ta de.4~ed 4, co"ve~ted i"to hlockl. R~ will be the "u~be~ of block •• Reid 4" t~e M'D bloCk, The" dete~m."e if the~e is I bit ~ID 4" ce~e fo~ thil device I"d u"ft "umbe~. If the~e il A miD 4" co~e, look dow" the li.t of miC' to fi"d the cu~~e"t o"e, ,Ive it' co~e Idd~e" I"d block "umbe~ the" w~1te it out. Th1, •• do"e 10 it CI" be ~e'to~ed befo~e ~.tu~"i"g to Alloc.te (ALO). we "OW D~oce.d ., if the~e w•• "0 mlC 4" co~e. Reid ." the , •• t, high.'t "umbe~ed m.c. The" 'et u~ I. follow" fe~ bft m.D le.~ch. • Cle.~ed, h1ahe.t eou"t to dlte 2CR8) • Numbe~ of bloCk. "e.ded CR6) • (Add~e'l -2) Of l •• t ~'D wo~d. ~CRe) of f1~.t wo~d of miD of 11.t wo~d of ~Ie R3 • Mioh block "umbe~ f" mlC R4 • Clel~ed, fo~ eou"te~ R~ • M.,k Rt • R2 • Add~e., Add~e., Th11 seetio" of the eo"tiauous bloek Al l oeetie" module Ce~A) .e.rche. the bit ~eDS to f4"d the "umbe~ of eo"tigyou. f~.e bloeks ~eoue.ted. ~h1ft e me.k t~~oUQh elc~ wo~d of the ~eD 100k4"c fo~ the ~eoui~ed "umbe~ of .ucce'live ·off" bit •• If e" He"" bit is ~e.ehed befo~@ the ~eQuf~ed eou"t 4. • •• tf.f1ed, uDdete 4(~6) w4th the h1ohe't COU"t to d.te. T~e" eo"t1"ue ~llk ,ee~c". If the bottom of • maD •• ~eac~ed ~e.d 1" the "ext map ."d co"t1"ue. If"o ~o~e mepa to be ~eed, Qet the di~eeto~y e"t~v bloek, cle.r this e"t~v ."d w~1te the d1reeto~y e"try bloek out. Reltore 0~io4"1' ~'D i" eo~e if there WI. o"e I"d th~" e~4t blek to thft ,"oeate Rout4~e, through the commo" exit ~out4"e, S.E~IT. UDO" ex4t R0 will be ~esto~ed, ~1 w11' eo"ta1" t~e "u~be~ of u"it. "eede~ e"d R2 will co"tAi" the hiohelt "u.be~ fnu"d. If the reou1red "umber of b'ts hive bee" fOU"ri beei" .ett4"o suceels1velv 1" the bit map. If the e"~ of the maD 4s ~e.eh.d before .etti"o III the "eee"I~v bit., w~.t@ th41 miD out I"d ~e.d i" the "ext. T~e" eo"t4~ue •• tti"o t~e "e. ce ••• ~v b4t., U~O" eo~p'eti~" w~1te out t~i. bloc~. If t~e~e WI' cri~1"lllv I bit maD i" core, the" read it back the~ ~ PAGF-.y- 52 DOS~.RNO 4". R•• d t~e d4~ecto~v e~t~v, •• t ' •• t b'ock, '~"eth, and .t.~t. block, the~ w~fte the d1~.cto~y entry out and exit a. d •• cribea abov •• If Rl-R2 a"oc.tio" wa • • ucce •• fu'. Th. fu"et40n of t~e module i. to ~.'ete. 14'. on • fi'e .tructu~.d device. ~e'et. det~~m1n •• 4f t~. ca"er ~a. the ".c •••• ry ace ••• or1v41ege to d.lete the f418. De'ete •• dfvtd.d. functional'y 4"to d.'.tio" of th~ee tyoe. of ft'e de'et ••• t• OECta~e delete~· ~~t c'.art~g of the f41. b4t maD UOo~ the De~manent bit "'ao. ~t'k '1n~.d f41e delete • Ca'" t~e de'et. li"k.~ ff'e ",odu1e (OLN) to fo"ow the f11e'. cha." of 'i"ks to deter~f". whtch btt. 4" t~. oer"'a"."t bit mao to c'ea~. contiQuou, ft,. de' ate • the de'ete conti~uou. ft'e ~odu'. eDeN) to z.~o the words from .t.~t t~r~ueh the 'en~th of the fi'e. The" re.d. the b.t "'ao, and c'ea~. 'e"gth consecutive bfts beot""1no at .ta~t. ~t.k Ca'" '."K ST.RT LE~GT~ - FIqST ~LQCK O~ T~E FILE - ~U~8ER OF ~LOC~ TN T~E FILE ~ov .FIL8LK,-(R~) ~OV .LNK8LK,.CRe) EMT 21 . . O•• c~fot1o"1 'S Th.de,ete ~odu'e ffr,t determf"e~ if it i" the Swao Buffe~. If it 11!t gets ~ ~uff.r from f~ee core th~ouah the Monito~'. Get auffe~ routf"~ eGETBUF) a~d move. ttle,f 4~to ttl If a buffe~ 1. ~ot Ava1'ab,e the morlu'e re'e •••• the "eee'.a~y - buffe~., - f~ee. t~e ~ateset ~n~ leave. t~~ough t~e c~~~o~ ,x~t ~ou~1~e, ~.EXrT w~1ch take. t~e e~~~~ ~etu~~ add~e... If the~e is no er~o~ ~etu~" edd~e •• , 8 ~e •• e~e i. ~~1"ted by t~e ~o~~t~r D~a~noltie P~int ~out~"~ ~de~tiiyi"~ the e~~ol'. The ~out4~e te.ts to .ee if t~e dataset i. busy, a"" 1f it 4. the .a~e e~l'o~ o~oeedu~e a. above f. u.e~. The" t~e dey • • ce i. checked fo!' bei"g f1'e st~uctu~ed. If "on fOe .tl'uctu!'e~ a" i~~ed •• te exit 1, t.ke~ baC~ to t~e call th~ouoh t~e co~~on ex4t routine. De'ete ~ow i •• ue, a~ EMT .SETUPFI~, to oet ~ ~at. Buffe~ .~~ .et uq a FJ~. T~e"_en ~MY .L~OKUP i, is.ued to dete~~f"e 4f the f1'e ex4.t.. If t~e fi~e doe' "ot e.i,t ft .s 8" e~~o~ ."d 4. handled i" the o~eyiou. ~8n~.~. The el"e~'. aece.s p~iv4!eoe i, the" c~eck,d (v41 fMT .CKA~SP) to dete~mi"e 4f de'et40~ of the file i. oe"mitted. If eeee •• o~iv11e~e i. de"4eri the Dl'ev40u, e""ol' ha"dlino ol'oce~u~e i, fo"~wed. The 'out~"e the~ te.ts. if. t~e file ~. oDe~ I"d if ,0 the p~ev40u. erro~ D~ocedure 4. fo110wed. If "0 e~l'ors to t~is ooi"t t~e rout."e eall' t~e ~o"ito~'s Get 'uffer routine CGF.T~UF) to ."ocate e 2~6_word ~uffe~. The" ft. add~e.s i, .to"e" i" R2. The R2 Buffe~ w4" be used fer "ead4~q i~ the device's.MFD b10e~$ 8nd bit ~aDs. T~e De'ete ~out4". t~e" dete"mine. if t~e dev4ee 4. disk 01' D!Cta';e~ If OECtaoe, the I'outi"e detel'~i~es t~e block ~u~be~ a~d inde. 01 the di~eetory e~try, end t~e" c'e~~s the rli~eeto~y e"tl'y f~om t~e UFO and w~ite. the UFO b'ock out. Note t~e block eo~tai"i~q the di~eetory e"trY i •• ti', 1" cO!'e fl'o~ the EMT .LOOKUP call. Now calculate the ~loCk ~u~be~ of t~e ffle bit maD. Read t~e oe~~enent bit ~eo into t~e R2 b~fie~., t~ t~e f41 •.•• contiouous a" E~T .OELC"NTIG Cdelete co"tfouou. f4'e) 4, i •• ued wh4c~ uodate. the oe"ma"e"t bit ~aot YOO" r,tul'~ t~e De~mane"t bft mID f. wl'itt~" out. If the f."e 4, .linked, "eali i" the FAM a~d bit clear t~e Del'~enent bit mao wfth the f41e bit meo, a"d 11'0 clea~ the 111e bit ~Ie. T"en write t~e file hit~ao .n~ the eel'~~"ent bit m4e out. Fo~ both 'inked e~d co"t4quou. OECteoe files the .ame actiO" fl "OW tlken. T~e 256 wO~d R2 ~uffe~ is re'e •• ed ,nrl t~e ~outi"e e.fts .s described f" t~e lest ~a~a· G~IDh of th4s Section. If the device 11 disk an EMT .OF-LCO~TtG Cdelete contfouous er an E~T .OE~~~ (delete. linked f41~) is fssu.d. Re.to~e t~e use~ file dfl'ecto~v nuff.~ adrlre •• a~d ~'ock "umbel', clear t~e ffle entrv ann write the JFn out. f41.) Now 101' teke". b~th An disk and O~Ctao. 141., the fo11owinQ exit .QLSFIB f •• ,.ued to re'ea •• t~e Flq and E~T i. t~e DOS. , IitNf"I Oete ~uff~~. If t~i. ~edule •• ~ot pe~~e~e~tly co~e ~esi de~t it 4 •. "ecessery to ~elea.e the free cor~ ~uffe~ it occueie.. Thi. 11 ~o~e by .ett.~Q the ed~~e •• ~f the c~~~o~. exit reut.~e e. the ~etu~~ edd~es. fo~ the MO".to~'. 8uffe~ Relee.e rout1"e, the" .f~uletf~a e JSIit to t~e ~o"1to~" 8ufie~ ~e'ee.e rout.~e, S.ABUF, The Commo" e~it ~out."e ~e· tur~1 to the uler. (DeN' The fu~~t.o" ~f t~11 ~o~ule •• to e,.1It i" ~e'et.o~ of e co"t1~uoul f11e from dtl. or DECteee. Thi. mo~ule performs the F41~ Me"eQeme"t oeeretio". ~hic~ ."c'u~e upd.ti"O the devtce t • perme"e"t bit meDII e"d clee~i"g t~e F.'e'l hlock ,i"kl f~OM 'tart throuo~ 'e~Qth. T~t. module f. celled o"'y f~om the file It~ucture. module delete (DEL), R0 • Po'"te~ to 008 R2 - Pof"ter to 255 wo~d eUMtlfe~y buffe~ STAeK ~etu~" i"formetfo" .eerch (EMT .LnOKUP). .~o'd. E~T fro~ ~frectorY 5. w~e" the ~e1ete Co~tieuou, File. Mo~ule (DC~) •• f"it4al1Y e"tered e te.t f. mede to deter~f~e if the deviee 1, dis. o~ DECtaee. Oi,k Fi'.e deletel _"d DECtepe Ff'e delfte. ere he~d'ed i~ two .eoa~ete .ect10~. of tht. Mo~ule. F1~.t Of.k delete. will be d •• cu •• ed e~d the~ ~ECtepe delet ••• For a co~tiQuou. ffle delete fro~ df.~ t~e ~odul. ffr.t cle.r. th~ bit MaO 11"k worrl e"d set. t~e bft mac buffe~ addrels 1" ~DB+6 C8UFAD~,' ,eve. the ~,fOf"Al wer~ COU"t 8~d lets the ODB word COU"t so t~et o"'y o"e we~d, t~e 1t"k word, w411 he t~e".ferred. The Tre".fe~ ~loc~ ~uMber f" the DDB 4s the" set to the .tert bloCk of the i11e. The" the ~out4"e 'oops throuoh the fil. cle.r1"~ t~e 11"ks by tra".fe~r."o out o~e word, the cleared 11~k word u"t11 le"et~ (f.,e 'e~qt"' he. bee" letf,ffed. The", ft restores the orief"_' word COU"t. PAGE;t-55 Now t~e f1~~t ~FO oloek 1s ~eed 1~to eo~e. I~ 8 bit ~an is 4n eo~@, 4ts add~e,. a~d b10ck "u~b.~ a~e saved and it 1a w~itt~" out~ w~en t~~. is co~ol.te, o~ no bit ma~ was i" core, t~@ fo,low4"o oecu~ •• T~e bit ~a~ numbe~ co~~esoo"d· 4no to t~e start1"Q block of t~@ f11e is eo~outed. T~e bit mao 4. now reed i~. T~e atart4"Q bloc~ nu~be~ i. co"ve~ted to 8 oa~t1culer bit ooa4t40" 4" t~e mao. T~e bita co~~es· pondinQ to t~is ft! • • ~e t~e" cleered. If t~e e"d o~ the bit "'80 is ~eec~ed befo~e comoletto", t~i. mAO i. w~ttten out e"d t~e next ~a~ .s read ~n, end the btt el.e~i"g CO"tinues. Uoon co~ol.tio" 01 the bit cleart";, the cu~rent mep ., w~itt.n out. T~e ".cesse~y buff.~a a~e releese1 a"d the routi"e eMits t~rouoh t~e com~on e •• t ~outi"e. Co"t~ol 4. r.tu~"ed to the Delete Module (DEL), frem which Oelete co"ttnuous File. (OCN) wes called. For a conticuous f11. del.te f~om DFCteoe, a much si~ol.r file" starting block e",d lenqth T~e" t~e ste~ti"g block of the f41e i' cenve~ted to t~. ce~~esoo"d.no b4t 4~ the ~Eeteoe ~e~~ene"'t b4t meo which is in co~e when t~4' ~outine •• celle~. The bits i" t~. ~er~e"e~t bit "'eo cerresoen~t~Q to the f41e blocka are cleared begf""ino at start end ooi"O th~ouoh le"gth bits. The co~mon e.tt ~out4"e (S.EXIT) i. the" used to ~eturn to the Delete Module CDE~', f~om w~1ch Delete Co~ti9uous Files (~CN) w~1 cal'ed. ~~ocedu~e is ~eoui~ed. The er. ato~ed in two reQtat.~.. COLN) T~e function of this ~o~ule is to assist fn ~e'et1o" of a l~nked .f11e f~o~ disk. This ~01u'. acco mo11sh •• ita fU"C- tio'" th!,0'J9 h p@~fo~m~nce of Fne !o4a"aae~e"t ~f)eret.o"'s' which tnclvde uodatino the d@vice, oer",a"ent bit maos and clear t~e link word of the file" blOCks. T~t. module 4s eal'e~ O"'V from t~e 1t'e st~uctu~es module delete CDEL). Desertot4ol"ll For a lil"lked fi'e delete from disk the ~elete L1~ked ~4'e, CDLN) ~01u'e first ~eadl t" ~Fn tl. T~e f)rese~t we~d count i_ saved 81"1~ t~e wo~d eou~t 4s ~et for 6~ w~r~ tra~sfe~s. If a bit mao t. il"l eo~e it 4s w~itte" out e"d it. buffe~ ad- d~ ••• _.~d nu~be~ .~e •• ved. Set uo for o"~ word deterMine the bloc~ ~u~b.r of th. f4rst bit ~.~, ."d r •• d it in. The routi"e re.d. i" the 'i"k wo~~ of the fi~.t 6 block. of the file, th~n write. out • re~o 14nk into the fir.t .ix block., un'ess the file occu~ie. le •• t~.n e block. the , •• t link ts slve~. See 4f t~. b4t ~~~ in co~e cov.r. t~e ~od.fted ftl. b'ocks. If not write it ~ut .nd ~,.~ 4" t~e orooe~ b4t M.O, Now clea~ the eorre.oo"d4~o bftl 4n the b4t m.o. Th. ~outi". conti~ues t~ thts 1000 ttll the ffle en~. The .Ived link 4. now the "e.t block of the f.'e to b. re.d tn. The Module cont.nu.s throuQh the ftle tn the .bove M."n.~ .av.n~ 'tnk., cl.ar4"0 link word Ind clee~."o btts tn th. aoo~oort~te bit ~.o. ~h." .rere 1tnk i, d~tected, the .nd of the f41e ~.s been ~e.ehed, Then w~tte out the current btt MIO. If I bit ~eO w•• ortofnl"Y in core re.d it b.ek tn, re'.~sa th~ n.ees •• ry buffers end e.it blck to the delet. (DEL) Module, th~ouoh the CO~Mon e.ft ,"outine, t~.".f.r. block .~d CAPP) The functfon of thi. Module ts to aeoend two 'tnk~d file. tog.t~er, Apoendino involve. '.nki"Q FILEA t~ 'ILE~ and adJu.ti~o the file ~ntry fo~ FILE~. If ft haooen. that the d.v1c~ " OECtaoe Module AP2 is .'so celle~ to mod1fv the OECt.oe btt m.o ••.. FILEA e ••••• to e.t.t •• e 'eo.~.te file .nd 1. now c.rt of FILER. ~ov ~OV ~OV .FILEA,-(R6) E~T 22 *FILE~,-Cq6) *LN~8LK,.CR~) FILEA - Addresl of the UFe for File A FtLEB - A~dress of the UFR for Fi'e ~ - .' Oescrioti",,' Th;s ~odu~e first c"eeks to aea 4f it is ." t~e Sw.o Auffe~ .nd if tt ta it gets a buff~~ frOM free core throuq~ th~ Mo~4te~i. Get Buff.~ ~out4n • • nd t~e" ~ove. it •• lf 4"to it. It t~." teete to •••. if .n .s.io"m.~t ~al ba." ~ad. o~ if the d.te.at •• bu.v. If a.the~ co"ditio~ occu~s .~ e~~o~ •• detect." .e"d ~a"died a. follows. The st.c~ ••• dJu.t.~ fo~ e" exit. if ." e~~o~ ~etu~" was .et uo t~e "eees •• ~v buff.~. e~. ~,'ea.ed ."d the e~~~~ ~.tu~" ~. take" t~r~uQ~ t~e comm~~ •• 4t ~Out.~e. If e" .r~or ~.turn wa. "ot .~t uc a" 10o~oo~ •• t. .r~o~ cod. is c~."t.~ bv the MO".to~ D.a~no.t.e P~.~t ~~uti" •• If the above .~~or. we~e not detacted." E'n.S!'TlIPI'lq il ••• u.d to get a Data guffer a"d • FIB. T~. ~outi"e .'.0 ~ake. a cal' to the Mo"1to~'s, ~et Puffer rout."e (GETBUF) to .l,ocete i" free co~e a" .ux.,f.rv buffe~ of 256 wo~~., 4t • • ddr ••• i. k.ot 0" t~. stac~. A test i. ~arl. fo~ • file .tr~cture~ device, ."d if "ot fi'e .tructure~ t~e "eeeSSI~V buffe~ • • ~. ~.1e.le" a"d the co~mo" exit.. ta~." b.c~ to the ca",~, If fil •• t~yctu~.d a" EMT .LOOKlIP is 1.sued .t~ •• e 4f FILE!!! f1'. do •• "'t e.1.t or if it •• OOe", the 0~ev40u. er~o~ ha"dli"Q fo~ • bu.v d.t.set (S f~le b10c~) 4. o~~fo~m!d. • tes~ i. n~w mad. to .ee 4f t~. ftl. 4. co"tfguou., 4f it is thi. t. a" e~~or ."d t~e error o~ocedu~~ ts fol'ow.d. If no .~ro~. d.tected .n EMT .CK4C~P 4••• sued to ch.ck fo~ o~ot.ct.O" v101atio", 1 ••• do •• t~e cal'.~ ~av. w~.te .ee.... If a D~ot.ctio" v1oletto" occu~. the or.v4ous e~~or h,ndl."Q orocedu~e ., ~.ed. Th • • a~e oroe.du~. a • • bov. •• us.d fo~ FILEA. If FILE. i. t~e .ame •• FILEA ~. , •••• t~. ".c •••• ~v buffer, ."d .xit baek to t~e e."e~. If ~ot the •• m., the f4'e n.m • • nd e.ten,.on are el.ared from the directo~y .ntry f~r FILEA, a"~ thi. di~ecto~v bloe~ •• w~itte" out. The ~outi" • • ave. i" t~e FIB the fOllow4"0 i"fo~mat1en f~r FILFAI ~lock number, d1recto~v edd~es" the ,tart, 'e~ath ."~ end of the ffle. The d1~.eto~v e"trv fo~ FILES is "OW ~ead 1". The ".w file le"at~ is eomouted ."d ,et i" the di~.ctorv e"t~y with the n.w fi'e end. T~e uod.ted d.~ectorY e"t~y fo~ FTLFS is then w~4tte~ out. eMi.t~.. if t~. .'0"0 Now t~. device i, checked a. to w~ethe~ it i. di.k o~ O~C t.oe. If the device is OECtaoe 8"d the bloc~ "umbe~ of the .t.~t blOCk of FILEA .s ".gative, make it co,.t.ve a"" set the DECtane ~eve~sa b.t f" t~@ status word of o~e. T~e ~ea .o~ fo~ t~e anova ;s t~at t~e f.rst b'ock of ~ 'ECtaoe file 4• • 'way! wrftte" in t~e forwa~d di~eetfo". If t~e If"k to • bloek ;s "ea.tfve t~i~ indicates it W81 w~ftte" 4" t~a ~e ver •• d1~ectio". T~u. t~e link to a block writte" i~ the forw.~d d.~ectio~ mu.t ~. oos4tive. ."d OFCt.ce ~OV8 the sta~t ~l~ck of 'ILEA The" re.d the e"~ ~'OCk of FtLEB i"to core. Move th, ';~k to FILEA st.rt b'ock f"to FtL~B e"d bloek. The" w~4te t~;, block out. T~fs '.~ks FILE_ to FtLFB. Now f~to f~~ bot~ d;~~ t~e FI8. DOS •• A~n Now if the device i' ~ECteDe en EMT .AP~DP2 (lPaend Pa~t 2), •• ~.sued t~ set t~e ~ft. 4n the ~IlE8 bft ~a~ thet we~e .et 4n th8 FILEA bit ~ec, Ind elel~ t~e let bft. 1" t~e ~ILEA bit ~I~' the" w~it~ out the ~tLEB b~t meDS. UD~n ,~tu," f~o~ t~e ADDend PI~t ~ ~o~ule o~ 4f the deviee wa. d4.k the fo"owi"Q "~ocedu~e 1. followed. DOB+0 i. clel,ed to f,ee the D~te.et, In EMT .AL!FIB i. i •• ued to ,e'e~.e the ~I~ end the Oete Buff.~. The ~58 wo~d au •• 'ie~y buffe~ i. ~elel.ed th~cuah I CIll to the Mo"fto". Buffe~ ~e'.e.e ,outf~e. Finally the add,e •• of the eo~~on e.ft ,out.~e, !.!xtT t. put o~ the .teck. The" a J!R •••• ~ul.ted to the Mo"fto~'1 Buffe, ~el ••• e ,outfne to ,e1e •• e t~e f,ee co~e buffe' occuDien by the Aapend Module. UDon comDlet4on t~e Auffe, A.,e •• e ~outf"e ,etu,". d.~ect'Y to the co~mo" extt ~out4"e which ~etu~". to the u.e~. CAP2) The fu"ct4o" of t~1. ~odule f. to modifY the fi'e bH "'8D' when FILE' ~. ,cDended to fILFB. Thi. ,outi"e ~. eened On1y by ,t"'e module ApDend (APP), e"d ""'y whe" the devfce i. DECtsoe. Regflte,. a~e .et •• follows whe" th •• 'outine f. CAlled, a'lo FI~+0 en~ FIg+~ eont.fn the followino De,t4"ent 1"fo,~.t.O"~ R2-FILE B Block Nu~be' RJ_FIlE B O~~ecto~y Add~e'l A Plock ~u~be~ FIB+2-FtLE A D1,ecto,y 'dd~els FIB+0-FIL~ De'c~fDt1o"1 Thi. ,outfn, fi~.t ~eed~ i" the fi,e bit ~sa fo~ FILEA enrl then the f1,e bit ~IO fo~ FILER. The ~outf"~ then .ets the cor,esD~"~i"g bit. 4" FrL~B b4t ~8D thet e~e ,et ~"the ~I LEA bit mep and clee~. the .et bit in FtLEA bit ~eD. ~ow it w,fte, out FILEA I"d FIlE~ f1le b.t ~eD" ~ow e.~t blck to the leDe"d CAPP) ~odu'e t~rouah t"'e COm~on e.it ~outi~e. (B.fo~. ~e.d4~o i~ the fi'. b4t ~aD. a .ub~out.~e i. ca"ed to celeulat. t~e bloc~ co~ta4".~o the de.4red file b4t ~aD a"d t~. i"de. 4"to the ~.'e bit ~eD.) 2C~6)-04rectory Block 4(R6).I"de. f"te Of~.cto~y 8ubrout4..,e Out~ut'l 2CR6).File B4t·~a~ Block 4CRft)-I"de. 4"to Fi'e e.t.~.D CRfN) The f~"et401'1 of this ~odule 4s to cha"'g, the ~e~e e..,d D~O. tect401'1 code of a" e.f.t4..,; f41e. Thi. is do~e by ~ead4~o f.., t~e OLDNA~ UFO e"try, checki..,q the c."e~'8 Acce •• , the.., ~ov4"'Q t~e ~EWNA~ a"d Droteet40" f~to the OLONAM UFD e"t~y a"d wr4ti"Q out t~e UFO block. T~is ~out.~e •• cel'ed di· rectly ~y t~e user. Cal1i"Q SeQUe~cel ~"v *~EWNAM, 1140'1 *OL!)NAM, *LNf I r I I I , I I I I BEFORE MOVE I L ______ -1 I ~------, .., J I I I IL ___ SWAP BUFFER FREED FOR SUBROUTINE )~ 1 _____________ _ MODULE PROCESSES FROM E}Cl'RA BUFFER '----------_-4-- ---AFTER MOVE '"t I I ~ EXIT thru RLSBUF Fig. 4-14 a Use of , Swap Buffer in File-handling Operations (First-level Routine) ERROR RETURN ADDRESS ___ ._~OR FILBLKI ~~TATU~~=-r~ HOW OPEN CODE FILE-NAME (in Radix-S_> ~----- -.- . - - - - - - - - - - - - - - - ---------1 EXTENSION (in Radix-S_> ._-._-----_._------------_.. _------------USER IDENTIFICATION CODE (spare >T-PlU)'l'ECTIONCoDE -Fig.4-1SI User File Block -DDB + 24 26 OAT ENTRY ADDRESS POINTER 'f0 FIB ~----------------------------------~ -""1 I I I r-----------------~ FIB + - 2 4 6 1_ ..,, • NEXT BLOCK _ HOW OPEN CODIt - - - -----EXTENSION START BLOCK - .. ---- .. - - -- 1 - - - - - - ---~-·----I---_---------~~ ._- . _. - - ..-TYPE ]-- I-----------~~~. 12 • -------------~.--- (spar~) --------------~--. (spare> ----------START BLOCK # ------~- • t----~--~---------~-------- 14 16 2_ .. -... -.--- ~--.-- of BLOCKS _._-- ".-- .---- ---- -.-- ---..... .. .. • ~ LAST BLOCK ..----- -- IIIDBX II1TO DIRBCTOBY 8LOOK t--------- -_._.----------_._--_._--_ _----_. _..--_._---.DiRBOTORY ~LOCK # .•.. 22 24 26 3_ f- - - ..• - . - - - - - - - - • 32 34 36 ·-r----o-----.------- (spare> PROTECTION CODE ._--------INTERLEAVE FACTOR - - - - - - - - - - - - - - - - -BIT-MAP POINTER __"_' _ _ .-r---~ __ ~ -. - ----. -.. t-------- Fig.4-161 BIT-MAP Q LINK -------TEMP~Y WORK-SPACE File Information Block .74211 (Values shown are Addresses in Core) BI'l'-MAP SEGME!fl' 'CURRENrLYIN CORE DEVICE DRIVER. 3241. \...........- DRIVER INTERFACE' , TABLE ~------~-----~------~------; I I I 11136111 11111611. 73611. --.., 741 I I I j I I OTHER I UNIT _ I I Q LINKS - FIB FCR FILE - FIB FCR FILE -A- 't I I DRIVER ROUTINES - - - I I I- FIB FORFILE -C- - I- - -} -B- I I I - - - I ).. I I I __ .J I I ~-- Fig.4-17 1 __ .JI I ---' 742ft "FIB Linkage to Bit-maps W ..- CHAPTER o THE R 5 PROGRAM SERVICES ., well I. Ils~st.~o t~e u •• ~ ~~ ~1~dl.~Q 1/0 as dese~.bed 4~ t~._ , •• t two e~.ct.~,. t~e DOS Mo~.to~ off.~. I ~~~o. of ot~.~ c~o~~.m.e~vieel p~oo~.m it.elf 'ue~.. .~d .o~. ;.".~., 'eld~"'Q 8,..d u",'e8d.~~ t~e uti'.t~e •• As w4t" 1/0 .e~· v.c.,. 'Ie~ o~'~lt40" i~ ~."'dled bv • ~1~t~eu'l~ ~odu'" ., "'o~m."v b~ouo~t f~em t~e ,v'tem-d.v4ee w~e" ~. Qu1~.d e~.e.'" be ~.~4de"t_4~ ~.mo~v. The Du~~e •• of thi, e~IDt.~ ., to d.,o~4be e.e~ of th •• e medu'el. w~4e~ '.ctio" S.l 4"u.t~ltl' t~1 c~oe ••• bv wh4e~ I c~og~lm 4, b~ouo~t ~,..to eO~1 ~O"ow~"a I eo~.o', ~U~ ~~ G~T eem~.~d. ,.ct4e" 8.2 I"'d S.l d~.eu •• t~. utility c.e~.oes "'ow.~o t .... u •• r to, obt.4", ~VT .~fo~m.t10r"l 8,..d fa~ lo",e.eem",o'" ~ld4. co"v'e.40,..,. Th. Cem"'l"d St~4"'o I"t.~c~.t.~ wh4e~ o~ovid •• I fu~t~.~ mel"" fo~ d.v4c.· ••• 1~,..me,..t w~.'. t~. P~oO~'M i. l~tUI"y u,..d.~ e •• eut!o,.., 4. !~e .ubJ.~t of .•• ctior"l 5,4, ~4"ll'v th •. o~oe ••• of u"'0.d4"'Q the o~og~.'" uOOr"l eomo'et4o,.. 4' eov'~ld 4" "ctio" 5.5. 11"cl III the modul •• 1,.. the elt.~o~v .~e pote"ti., u"~' 01 t~. ~W'D euffe~, t~.y u •• the teeh"4ou,. "oted 4" seet4o" 2.3.5, U"".s th'" tle~"iou •• '~I cI~t4eu',~'v ~el.v.,..t, "0 fu~th.~ ~efe~.~e. to t~'M w4', be mlde. Dose."N" PAGE:)-~ A" p~o~ra~s w~.e~ g~I~1 t~e~ •• 1vel' ~u" U"1t~ OOS, 1"cludi"g t~e SYlt'~1 ~~o .~t Ito~ed, ~eQI~d1els of tke dev.ee, 1~ the 1~arl fo~m't .~to W~~c" t~ev a~e 11 do~e fo~ two ~eIIO"lt mi." T~il I. eo~ve~terl by LINK-t1. It fol10wl.t"t eo"etet of deY4~e-4"de~e"dt~ee disCUI.td 4" e~lete~ 3 i" t~at 'oad4"g f~o~ a~v lou~el 11 oO"~b'e. ~~1'e i" ~Olt ca.e. u.e~s !re ex~eet.d to ~old t~.4r ~~ee~a~. ~" lo~e fo~~ of bu'k-.to~le. ~.d1um, fo~ w~1e" a eO~I-1maQI would oroduet I faste~ 'oed, 1t is Itil' ooslible that oleer-tloe o~ elrd. m1Q~t be uled~ U~l~ke t~t ot~trl' ~e~t~er ~eade~ o~ t~tlt 'Itte~ med41 o~ov1de. a"v for~ of OUlre"tee 0" the Iccuraev of t~e data, a oa~t1eula~lv imeo~ta"t reou1reme~t w~e" t~.t data 11 8~ executeble p~oora~. t"steld, ehecw4"G must bt do"e bv loftwlre I"d tht fo~mltted b4"I~v mode uled fo~ t~t 'otd_ 4~aGe amoly a"ab'es thil. For 11~o~1e1tv the~tfo~t 11' dev4cftl are "a"dlea .4m418~'V. Eve" o~ t~e bulk-.toraat mtdia, the~e a~e advI"t,ge. 1~ bt1"o eble to mli"tl," t~t oroorlml al 11"ked f11es ~.t~e~ t~l" eo~t4guou. as 1m011.d bv eore-imlge format. T~ey el" bt sto~ed 0" I"V oe~t of ,th, medium ret~e~. t~." r101d]v at Q"I e"o (eloteill1v 11a"1f1ea~t if t~e medium is OfCtAoe)t t~ev ea" bt extt"dtd w1t~out t~e oroblbil1tv of wI.taQe of t~e mediu~ beelult the 01~ area is ~o lo"ger 'Irge t"OUO~ I"d a "e~ o"e, must be erov~aed, lelvi"Q t~e othe~ 00 •• 1blv locked ou~ of fu~t~er effeetive use, Allo of cour.e, I further steo 1" orogra m oreoaratio" 1s tvoided, Id~1tted'v et t~e exoenlt of I Il1ahtlv 10"ger lold-time. Loader itself 1. ~i.eussed. it is wort~whi'e to eXlm1~e t~e 'oad-format as it 1s eurre"tlv def!"ed~ The 1"u.trat~o" It figure e-1 S"OW! t~e It~ueture o~ a ~v~1el'.exeeyt~b'e O~OO~8m ~odu'e, eas1ea"v it eo"I~.t. of a 'er1el of fo~m8tted bi~arv block., eae~ Itart1"Q wit" t~e two words of header ~"formltio" - ~o~e a~d s4ze • and e~d4no w4t" the e~eeksum t~e fo~~at 4~~'1es.(see stet40n 3.2.2.1'. The first data wo~d of eae~ block •• a loed sddress for t~e wo~dl w~ie~ fo"ow, T~e first block of t~e ~odu'e ., I Com~u~1elt1o" O~~ecto~v CCO~O'. T~4. eonte1nl ge"era' 1~for~at10n i~elu~i"g t~e ~~ocra~ "ame, 1ts 'oad e~d start addrelse. e"d 11ze, t~1s infor~8tio~ ~av be fol'owed bv a 'ist of E~T code. take" fro~ t~e MO"~tor L1b~a~v 0" t~e Befor! t~e t~erefo~. PAG~ OOS!5.~NO 05- 3 .y.tem.d.~fe. by LINK11 beeeUle t~eY eo~, •• Do~d to Mo~4to' ~odule. fo, w~fe~ t~e D~o~'em h.. .pec4f4ed _co~.·~ •• 'deney by global ,efe,."c. ( ••••• ct40~ 2.1.'). (tf t~'1 "It •• too len~ fo~ t~. 128.hyt. me.4mum buffe' .fl. of LINK-tl e •• cond block may b. u •• d). Th. D,o~,eM it •• ,f u.e. the lub. "Qu.nt bloekl e"d finallY a .i~a' •• wo,d T~ensfer Bloek p~o· vfde. a DO"fble automatfe .ta,t Iddr'ls (ff .ncluded in the .END .tet.me~t 4" the p,oa,.m .ou,ce • or 1 by default) et) Loadina aetuallY beatn. f~ t~. t~anl •• nt M~"4to, •• et'on wh'eh. ee~ucf" me~o~y 4" the Ib •• ne. of Iny ule~ e'O~~lm C•• e •• et40r" 8.!5). Thfs ,.out4ne C~~c'lle. t.he . eo"sole RUN I"d GET command. ,..aue,tfno the load and oe .. form. the followfno 4"ft4el oD.,atfo",i V.,ffy t~e e!fstenee of the 'eee4fi.d p"oa~am mo· dule I"~ ff D,. ••• ~t, r.ad ft. ff,..t Da,.t .~to I ~u'fe, of .tende .. d .tre for the d.v4ce, ele~m.d fre~ f,..e eo,. •• Trl"lfe, eop,.oo,.iat. dltl from the cn~~ oe"'~ll in. fo~~at10" •• etfo" f"to t~. SVT C.e. ,eet40n 2.1.1) ~ov. onto the .tlekl e a. Proo,.am .tart add, ••• or GET b. The It.t of th, Mo"itor ~odul •• (4f a"y ofve" f" tha CnMD) e. Count of the .te~. t" to .4anffy to the If.t • o~ ~U~ be 0" 101d.d 0 . A. Set reof.ter ••• follow •• Q0 •• dd,. ••• of I DDB e.tabl.ah.ri i" f~e. to .e,.v4ee the 10ld ~odul. ~atllet ~1 • 0 io~ 1~"k.~ ffl •• 1 io~ conl'auou~ o~ 1."o"~f4le.,t~u~tured d~vfce, afo~ neaet've 4f dev'ce 41 DECtaoe q2 • Sta~t Iddr •• a of the a"oeated buffe,. ••••••••••••••• eo,. ff~e bft 4" fact ~s '.Ictly the aa~e a. that for the Abaelute LOld., 4" the Pece,.-tlce SYltem on PDP.l1 (Ie. DEC.tl-GGPC.D). ~ence, LINK.il OUtDUt ca" alao be uaed outafde t~e DOS environment 1 •• um4"a of cou~.e that ~e Mo"iter module. a,. aeecif4ed. In t~f~ cele, the COHO fi al.o ,,.,.'evant, howeve,., becau.e thi. fs o4ven the .ame load poi"t I' the the p,.ooram it •• 4mmedi~telY ov.,wl".tte" a"d i" 1" but very few 'nstances i! no p,.oblem. 1. T~, format d'la~fbe~ presc~4b.~ oose.RNO PAGE ~--. ~3 • E~d .dd~ ••• ~ •• Add,... ~f of t~e bUffe, ",.xt byte to ~e ~~oce'le~ ('ft.~ COMO blocks) R! • (Cu're"'tlv .""ev'~t - ••• S.ct4o" 6.6) c~oD~r to co"'t4"ue the 4t •• ,f ."to ~'~O'v ••• ~OW" be'ow 4" •• ct.o", e~l~l. T~f. ~'" it. tu,,,, cell. e iu~thep module wh4c~ teke. c.r. of the 10.df~Q of the • .,.c4ff.~ Mo~.to~ ~O. d~l •• ~~d e",v ~.".~e' ~l.e~.uo i", ~~ed.""'1 f~~ o~o~,.~ ••• eutte~. Tht. f. d •• crfb.d f~ •• etio'" e.t.2. Th. ,Out.",. th." e,'" tP.".f.~ of the .,~ooP'~ t~. Lo,d,r of Th. p~oar.m Lo.d.~ rout4",e t. r •• oo",.fbl. fo~ t~.".f."f",a the , .. oa~'111 bloc •• f~o", the. 10ed. mOdul. ,~~ .torf",o th.f~ d.t. i'" the coP~.~t III'IIIO~Y 'oe.tfo", u",tf' the t.r",f"", tre",.f.e block i. d.t.ct.d. To .votd ." .xtr. buff.rf~o .t.a •.• ~d th .... by •• v. t'~" the tre"lfep • • P. c.rrt.d out by us. of .TRA~ ~.th., the", .REAO. Th. Le.~.~ it.elf oe~ for"" it. ow", ch.ek. UDO" t~. fO~III.tt'd bi",.ry ,lIIode , . . , of . the d.t, b.to~e it t •• to,~.d. 0", celllol.tto~, t"'., Mo,dto,-",odule Lo.d ..... c",.d to COlllol.t. the loed oo.r.tto",. . ... J'" IIIO,t c •••• , ~h. ~o.d ... f • • xo.et.d to b. ~~", ... el~de~t .",d f'" thf. ,c ••• ,_HIe. ot~., Mo"'ttor "'odul.l, tt f. b'ouoht 4"to t~. '~'D ~uff.r wh.", r~Qutr.d. T~ • • • "' • • 1'0 .oolt •• ~~wev'r_ to th • • TAAN ~poc ••• o~ ~hfeh the Lo.d., cel1~ •• ",ot,d •• ", th, '.It .,.reor.oh •. T~. Loeder lolve. the DO.lib,. eo"f,fct .'" • III'~~'~ .t~f'.r to th.t uled bv the m.",.a,III."'t .odul •• f'" e lfke Ittu.tfe", tie. S.ct.o~ •• 3'.a',)i .. 11, b.for •. 4t_ b.et",. t~. Droc'lli",~, 4t d.t.ctl t~.t 4t.i' f'" U".Sw • ., Buff ... (~y ,x'lIIt",e~fo", of t~e IJ •• oe COU"t f'" ftl ff~lt byt.), ft "'OV.I it",f f",to ."oth.r ~uff.~ e,.tm.~ frolll f .... eo .... "d '., ••••• the sw.~ Ruffer fO" th. U" of .TRA~. f.' •. c.'1t"'0 S.ou."c •• Th. L~.d.~ •• o.ctl the AAoilt.~ .",d ,bov •• Oth.pwtl. ttl cell fl lIIerelv. Steclc-stete detefl.d Proc"14",oi .1 Th. o,oe •• I."'o I.au.",c. follow.d by th. Prog~.~ Lo.d.r .'lultr,tld .t ~tou~. S.2. Bel~ce"v t~. f~llowf",g 001'.tio"'l .,. Derfo~",edi DOSS.RNn "AGE .5- S R••• t R.a •• t.~. to the v.'u •• o•••• d bv t~e t~'"I. ."t MO"4to~~R.~ov. the ,.tu~" pe ~n~ St.tu. f'OM the .t •• k. ' Li"k the •• t.blt.h.d Dna, ••• ~o~n bv the add~ ••• 4" Re, to." ."t.~".l L.""-b'oek t~ e~de~ to P'oe ••• the D~oar.m l0.d ~odu" ., e data.et 4" the "o'm.' ~."".~ Ct~. Link-bloek u•• d by the t,a".t."t MO"tto' m.y of eeu, •• dt •• DP'" und.~n •• th the ~~oa"m .1 it t • • to~.d' ',om the d.t. in R2,~3 ."d R' bu.'~ an aDD~oD~1't. TR~N.bloek • t"elurl. a" EOO fllg 1f tht. 1. Il, •• dy •• t 4" the Doe ( ••••• ctto" 3.'.1.3) ".0 '. The cu~,."t .t.e_ ,e'd.d ~,oa"M,. t""'1."t Mo~ttor b.low the P,oO"~ mov.' .t"c' th.,. , ".w ., ••• Mt~ht M.V also b. ove'-w~ttt." by t~. ~o ~ov. the dlta ~ ••• ed by the onto • "eW o"e .,t. ~~M.dt.tel~ ~o.d A~d~.'" (Th, •. ~,aut~ •• two i • • ,w.y. t~e ~0114b4'4ty the old ev.".D 0"' ,"eth.~)~ e, •• , the whol. of memo,v b.tw •• " the P'oo~,~ Lo.d ,."d the .t.,t of the are. '8'e,v.rl fo, the ~ID.'-t'D' Sy.t,M Lo.d.'I. Ad~~'" 8. P,oc ••• the data t" the, buffer, • byte at I time. It"ee th.,. t. "0 eo".t~.4"t th.t bi"lrY block. mu.t b. com~,.t. wo,d. - •• follow.i •• Look for the f;,.t. ,,0"-11 byt~. If th1., •• not 1 I"d the ".xt not 0 the fo,~.t •• 4nco".et, '0 ,.J.et the 'o.d wtth I fat,l Fo,m.t .,~o, m•••• o. CFPJ22) ~,o~ the " •• t tw~ byt •• , bu1ld the Byte Cou"t fo, the "u~b.r of d.t, byt.1 to be , •• d '"~ t"ftt.'1 •• I ch.ck.u~ .eeu~u'lto,. e. Fo,m the LOlrl Pofnt fo~ the d.t. f~oM the " •• t two byt ••• "d •• t • m.mo~y Dot"te~ .ceo~d1"gly. Adjust t~e Bvt. Count for the .1x bytes Ju.t r,ld. If th1. ts "OW 0, the eloek Just D'O· e •••• d mu.t h. the te,M."I' T~.nlfe, Bloek, h.nc. 'e' •••• the d.t •• et l1nk.oe I"d c", the "0"ito,.modu1. Lo.d., C••• ".xt leet40"). Ot~l~wi ••• te~. •• t 4" .t.~ Ce) •• byt •• i" memorv v1e the Dof"t.' u"til t~e 8yt. Count go •• to I. Ou,1"a .t.c. Ce) ,"d Cd) .dd •• ch byte i"to the ch.ek.um .• eeymulltO,. Th." add the data ch.eklum byt.. If the ~'Iult •• e, retu," to It.e PAGE c.) ~o Oth.~wi.e, e,.,.o,. 7. s-e look for the ".xt date bloek. .too the 'oed w.t~ • iete' C~.ek.um eF~2t) If, efte" any byte h•• bee" ~,.oee •• ed f" t~e orev4out oDe,atfo~, the d.~, buffe,. t! 'e," to be e~Dty, c.ll the device to reftl' 4t •• fo"ow., e. Cheek for ." EOD 'ee" .t the , •• t devfee tr.",.fe, by ,111.",t".tio" Of t"'., TQA~-bleclc flao. Si"o • • t.rmt"el Tra".fer Bloek .hould eo",. fir.t, t~f. ~u.t be e" .rror, r.J.ct the lQe .d on the OrOu"d. of f"correet fe,.~.t •• 4" .teo eee) .bev •• .0 U.4"Q the fl10 .et 4"to Rl when el"ed, eheek ff the 10ld Modu1e 4e a li"ked f4'.r I' d•• eribed f~ .eet.~" 4.1.1.t. If ~ot, 4"cre"'."t the devtc. bloek "u~ber 4" the T~AN-bloek. Ot"'erw4 •• extrlct I"d .tore the ft~.t word 9f the dat.-buff.r ae the devtee bloek. If tht • •• ""oat f 'Ie ~"d the dev' ee , 4. _D!Ct aee, (.ee .eetto" 4.3.2), turn tt Do.tttve but •• t the TRA~-b'oek flaa to forc. rev.,..e tIDe ~ot4o". e. C.l1 .TRAN, fo1lowed by .wAIT. "" eo~o'etfon, .too the l~.d •• t" .teo eee, .beve, tf .",y d.vfee ~.rfty f.41ure ha' be.~ detectad •• • hown by t~. TRA~·bloek fll0. Otherwi.e .rlJu.t the buffer a~d Dot~ter for ." f"eo~Dlet. bleek tr.",.f.,. 4f th4. t. .fQ"a"ed f" the TRA~-b'oek. Re.et the byte-extr.etfe", ~ef"t.r, 'kioD4"O the ffr.t word tf a~ •• " the f"out 4•• 'f"ked f.'e, ."d co"t4"u •• EIilU St.t •• Wh." the ~odul. D.rfo~",f"Q the ft~al 1o~d ~h ••• i. c,"ed, the co~te"t. of Reof.t.,. • • ,.e of no eo",eaue"ce, the ,t.ck r.m.4" •.••. 0" e"try e~ceDt ~or the Proora~ Leld Addr ••• 1"try w~fch 48 ".~ov.d durt"o the oroee •• t"a • . Co",me"t., It w~'t b. noted, D~rh.p •• th.t the Lo.d.r ~odu'e d~'1 not, at .t'D ecc), .tt.~Dt to ,el ••• e the buffer ft ~.y ftself b. oCCUDv1"0~ At th1. tim. ,"'1 buff., .',oeetto" e ••••• to b. ",e."f~Qiu'. ,. w•• 'h~w~ 4"_.eet~0" 2.4~2, the ~.~ory .,.,e eo"tro11.d by t"'e Mo"ftor Buff.,. A,'oeatto" T.bl. fl 0,.4Of",d .'w.y., et the eurr."t end o~ th~ ,.e~4d.nt ~o"ito,.. Durf"e the "e.t lo.d oh ••• , th4. e"d f. lfk.,v to ",0'1. UO PAGE 5"-7 ~.mo~Y t~ .~c'ud. fu~~h.~ ~odu' •• ~.au.lted by the e~oq~.~ ."d. t ..... f~.e cor •• ~ •• i •.. t .... " di ffere"t •. ~.",e., the Buff.~ Allocatio" Tab'. i. cl •• ~.d by the ".xt ~o~u'. I~d t ...... U. tom.t.eal'y ,..c,.im. outlt'"d4"e buff'~" In fact, the e." to ~., •••• t .... i"out dlt ••• t •• m.d. DU~e'y •• I .4~D'. WlY of cl •• ~1"'0 the ~o"4tor DDS e~.4" C••••• et.o~ 3,1.2.3) I"d the DOL .~t~y fo~ t .... i"~ut dev~c. C•••• ectiO" 2.1~3'. T"'., me~u', C~""ot b. ~e •• "~~~"t, b.c.u" o~ the L~"~. I"d TRAN.block • • t. mu.t .,t UD ."t.~"."y. How,va, by .t, "'I~ tu~e, .• ~ch ~.Qu.~,m."t ••.• ~r.,.v.~~. ~.k.w ••• , the~. ~. "0 ~ •• t~.ct1o". 0" .t~ ~ •• ~d."~y, fo~ .t. curr."t Duroo •• , Ct ...·c,uel'l .t ••. ~.~ . . IO •. f",co"c.1v.b'e thlt ,hal'" •• ''''Y Do4nt 4" ita h.4"e i" 001". ot .... ~ th." w~a" ~.au.~.d', e.l.2 Mo".tor Modul. Le.~.r . CL02) Th. le.d Drec ••• D.~fo,.m. two m.1" fu"ctio",' a. It .xt."d. t .... ~ ••• d~"t.~''''.to~ to 4"c)ud. the .dd.t.o".' modul ••• o.c4ft.d by the D~OOI".m ."d cu~~."t'v ide"tif1.d by the.r EMT cod., i" the l1.t 0" the .t.ck D•••• d bv the t~I".t."t Mo"f· tor. ~t .~.u~ ••. t~.t the MO".~o~ •• c(,~fIl.ctly ofll11ft.d the orOgr.~ ,.acut.o" ru~ a"d if ~.au4r.d .utom.t4c."Y bee.". the run. fo~ J" ~h1._oa,.t.cu'.r c •• e, ."v ~p,"'.fe~. f"O~ the iy.te~.dev.e. 4n o~d.fIl to lOld • ~.ou1r.d Monttor ~out1"e i. CO"tpo"ed by t~. L~ld.r M~du'.' u.~"~ ~t. OW" ~"tep"" OD~, S~"C, the ,old.e rout.". would ov.r',y a"Y buff.r "'oeat.d ffllom the th.~ fre. eo~" the medul~ c.""ot ~.D.at t.... t.ch"1ou • • dODt,d by it. Dr,d,c, •• OI" to u" ,TR~N, a •• hoW" 1" the , •• t ,.ctfo". T~e whole OD,~.t~O" MU.t b• • ff.ct.d wit .... " cou", •• m•• ". th.t ~ ••• "~ra"cy i • t.... SW'~ Ruff.r. Th •• • o.i" oyt of ~h. Qu •• t4e". Th. p.~a~k. 0" t~. , •• t 0..... O~.Dh of •• ctio" 5.1.1 .t." IDoly. of Ca1'i"'Q S.cu."Cel .s "ot.ri 1" t .... or.vioul .ectfo", th4~ Mod~l~ .x~.et~ a .t.ck,.t.t. •• D.I.ed ~y the t~." ••• "t Mo"1ter •• ct.O", .t'rt,"O w.~h_th. C~u"t.of ~o"4to~ module. to be 'oeded. No .ddUio".' 1",fol"",etfo" •• "e.d,d. He"ce 4t. c," ••• EMT 62 PAGr:: 5-" . P,.oc •••• PI~1 Th. ~~oc ••• t"~ •• au.Plce tPl thfs ca •• 4. ,.eletfvelv 't~~l •• N~ .tllult,.atioPl t. th.,.efore i"cludad. Sal4csllv t~. 101· 10w4"~ .teo. a,.e ta~ePlI R.~ove the data Du.~ed bv t~e E~T cal' fl'"o~ the Itack, 4.e • • avad "eai,tel'" CO"t.Pltl end retu~PI PC a"d Statu •• Cleal'" t~e MOPltto~ Buffe~ Allocet40Pl Table co~~lete· lv C.ee .eettoPl 2.4.2) aPld , •• et t~e TOB .ntl'"V tPl the SVT a"d eorl'".IDOnd4P1Q .tack-.to~ (Lowe.t allowabl, add".s for. stec~ eXDan.tO"' to "~mova aPlV buffe,. • • tfll allocated C.ee .ect40Pl 2.1.1 and ·cem~ePlt.· fPl the Droev40u, .ectto",. Co"ect fl'"o~ the .tack t~e count ~f MOPltto, rou· tfne. to be 'oade~ a"e if le,o, ~~ocead to steo 9. Ot~el'"w4le . d.t.~~t"e ~he add~es. Of. t~e .v.tem-dev4ce dl'"tve, vta the DOL stal'"t stol'"ed t" the IVT aPld DUt it t"to a" t"terPlal oo~ (sea Sec~~o" 3.1.2.3). A'.o •• t the DDS Co~p'et4on Retul'"" to u.e the .ame .eauence a' SAM foro deaueut~g the d,.4ve,. vt, I~CDQ. ch.ck~PlQ the tl'"l"lf.,. val~d'tv a"d cl.ll'"tPlo the OD~ bu.v .tate C.ee Sect40" 2.3.4). 4. UliPlG the EMT code oa.,e~ 0" the I~a~k, ~.t,..et the cOl'"r,'Do"d1"o ~RT ,"tl'"V fol'" a I'"e~uf"ed ,.out4"e ('e. 'ectto" 2.1.2). If the value col,ected. t. eve", the ,.outt"e tl alre.dY I'"e •• dePlt, .0 1o"o,e t~e I'"e· aue.t aPld 00 fo,. the "axt. 5. Ot~el'"wtle COMDute the .tle of the rout!"e f,.o~ dltl IPld adJult the SVT e"tries fol'" EOM , ra"d tt. Itlck-.toD) Icco,.df"o1v. ~RT the TO~ ProepIl'"e t~e DD~ fol'" the troa"lfa,., settf"~ its BUIV ',ao a"d Ulf"Q the M~T data to ato,e Dev4ce Block a"d WOl'"d COUPlt aPld the old EOM for Buffe~ Addroe'l. Al.o mIke the MqT 'Pltrov .how the ,outt"el~ Ital'"t Idd,e •• PlOW thlt it wil' be 'eI4de"t~ (Secau" of the U.loe COUPlt , ReePltl'"IPlcY Switches t" the fi~.t wOl'"d of the ,out4P1e, this mu.t be old EOM+2. (se. ,eet40Pl 2.3.2» • '. . . SIVI CUI'"I'"e"t Regt.ter. a"d ea,' t~e system-device d,.4ve,. to effect the tl'"l".fel'", yia S.CDB C••••• ct4o" 3.1.2 •• '. ~eQu •• t .WAIT uPlttl rlO~'(I' iPldi· cat.d by t~e DOe becomi"o idle because of steo 3). PAGF S-9 DOS5.RNn 8. R•• tor. the s.vad Reoi.t.rs .~d if t~e eou~t shows th.t ~e~. Ma~fta~ ~aut.~e. ~em84~ to be 'oeded, ~e turn to .t.e 4. .dJu.tme"t to EOM, TOe ."~ .t.ek-.tae two word. fo~ Oevtee A8'.~~~P."t T.bl. '.~k.o. eet4o~s 3.2.1.2 .~d 8.4.11). Al.a ."'ur. th.t the SVT e~trv for ~RA ~o4"t' to the Sylt.m w.ft LOOD (lea ,.et4o~ 2.1.1)~ M.k • • 1f"" to r ••• ry. C•••• simu,.t • • ~orm.' Sy.tem Exft fa~. rout4". u.i~o the aw,D 8uff.~ ('a, seetio" 2.3 •• ) ."d ellawi"o fo~ the u •• ~i • • D.etffe.t4o" for RUN Or GET •• fol'ow.i ' •• A.tur" St.tu. - ~ova tha RUN/GET .witeh D•••• d by the tr.~.i."t Mo"4tar u~ the st.ek ."d 4"•• rt I te fore. "0 ~rfer4tv 'ey.'. R.tur" pe - ~f the RUN-GET .wfte~ ~. "0"-0, the y.1u. t. the .utom.tic Itart .dd~.s., he"ee the eo,.~aet ••• t ,~o."t (1). otherwi., ~.~l.ee t., • • witeh by the .ddr •• s of the Sv.ta~ W.ft LoaD to fore. th. ".e •••• ry GET .t.ta~ e. It. Say.d q,o',t.r. - cl,.~ the "ext 8 wor~. o~ the .taek to r.D,. ••• "t R8 throuGh RS~ S.t the Mo"fto,./U •• r .w4teh CMUS) f" the 'how eorr.ct .tat. ( ••• S,cttO" 2.1.1)i •• b. SVT to ProQr.m;" ."d Ru"~f"o (1,1) f~r_RUN ProQr.m i" but w.ftf", (-t,l) fo~ GET of A,.o fo,. G~T, forc • • ee.ot."e, ~e;bo.rd comm."d 4"Dut by .att4"o t.,. Lfst,".r 4"Dut u"d.rw.v Iwftch C.,a "etia" 8.3.1) ."d outDut '1' to f"form the eD.r.tor th.t lueh f"put tl •• D.et.d~ T••• the Sv.ta~ Ex4t to rel •••• the aweD Buff.r ."d co"tf"u. t f" .t.D 1m with qaofst.r, el •• ,..d ~"~ the st.ek .t.rtf"Q fm~.dfete'y b .. lew the loaded DroOr.m • I' •• . 1.----~----.~.-. If the .f~D .t.t,m'~t f" th~ eroar.m ,auree did not, i" f.et,. ,uD~1y • • t.rt-pof~t! this is set to 1, he"ee the .~ ~am.t1e ~t.,.t ~,.ult •• " A f.t., e,.,.ar ('342) ~ec.u.e th" 4• • " ",.,., .dd,. •••• The u •• r c." reeou~ ~v ~e."s of • k.ybo.,.d 8EGIN wfth the ear~eet .dd~esl lupo14ed. PAGE ~--1'" tGUT) •• not.d in .ectfon 2.1.1. the Mon4to~ ~.tI4n. .v.t.~ •• t.te t"fe~~.tfe" ." the SYT. In Idd4t40n, the T~A~ fn.t~uct40n ~ •• bee" ..... ~ved. fo,., the u,. ... , ft,. v.cto~ w4thin the ~ •• td."t Mo"tto~, I~ o~de .. to ",ow the u .... to .cc ••• thfl .,.,., • Ut4l~t~e. D.Ck.o ••• ~,.ev~d.d~ Whil. thf •.• 1 c ... h.c. unn.c ...... v u"de" the c,. •• ent DOS b.c.u •• the us.r c.nnot b. d.~ted,.uch .cc ••• ~~ h._ cheo ••• to 00 dt,..etlv, ,.t ... 'ylt,/II. d.v.1.D.d fo~ • PDP.ll with _ /II~'" ( ~o"fb'e h ... dw .... c"ot.etton mfoht c,.'v.nt thfl, MO,..ov.,. tt c.n~ot b •. ou.,..nt •• q ~h.t tho ••.• y.t. m• wi" nee •••• ,.t1v .t~uctue. th.t,. info"M.tfon t.b' •• tn the •• me way, Thu. tn the int.,. •• t of UDw.,.d eO~D.t4b4lity, th .. ouQh the Ut~'~t~ •• D.ck.o. f' .t,.ono'v .. ecom~.nd.d~ .,.e ts G." .... , .ee ••• C.',fnG S'Qu."c •• Th. D.ek.~. f. c.ll.d by • Itnol. EMT (41), to ident4fy I ~.,.tfcu1." fu"ct40" ." id.ntiffa .. cod. i. D•••• ~ • • • c.l' .,.ou~."~ •. B"fc."v ,h. iunetfon. c.n b. d~v~d.d ~nto two M.f~.g,.ouo • • nd the cod •• ,..fl.et tht., E.ch o,.OU~ .1.e ~ •• • d4ff.,.."t c."inQ "Qu.ne •• I, ~UT ~unctton, U!77) • ,4rt w~.eh the U'e,. 4. 'uocly- fo,. '~C~oD~t.t • • te,..a. by the MonFo .. th •••• the u •• ,. cu.h •• both the fnfo"~,· t~en .nd the cod ••• ,,"ou~.n~.~ th, Monf~o," ... tu~n. eont,.ol to the D"OQ,.a~ on ee~c,.tfon with the .t.ek cl .... , •• fn~ fnfo~m.tfon fto,.. e_" g.' MOV MOV Ep.1T *DATA,-CSP) *COOE,-CSP) 41 ,PASS INFO FOq ~TORAGE ••• , •• ~ & ID~NTIFI~R ,CALL GUT ~~T functfon. (1~I-l'7) • hy which the u•• ~ •• k. fo .. 4nfo .. m.t40~ .'~ •• dY .• to"~d, I~ th.i .. c"a, the u.e .. c,"ovfd •• only the fd.ntffie .. tn, the c~'" the Montto,. ... tu,.n. the ,.e~ut"ed tnform.tton on the It.ck wfth the u •• ,. then ,. •• Don.1b', tt. ..e~o v.l. fe .. MOV EMT *CODE,-(SP) '1 ,PASS IDfNTIFIER ,CALL GUT Th. eU"l"ently ••• tgn.d code. Ind thet .. c,"4no •• ouenc ...... • hown fn the ~ .. Og ... mm.,." Handbook. DOS!5.ItNn Proe.aai"o. .r••• Th. oroe ••• f"9 I.au~"ee f~r GUT ~I ~"Ult~.te~ !5-3. T~. besic at.CI fo"ews. .t ffau~. For cod. 1. (s.t tr.o v.ctor, • mOVe t~ • • ucc14.d PC ."d St.tu. 4nto t~. v.etor .n loeat40"a 34 & 36, cle.r thr.e e,.au~."ts fro. the It.ck ."d take • "orm.' Sy.t.~ Ex4t t~ ir •• the Sw.~ ~uif~" fj ".e •••• ry a"d r.ster. u.er R.oi.t.~ •• ~or cod. 2. (S.~ RESTART .ddr~'s) .• ~ov. the 'UDcl •• d .ddr ••• fnto t~. SVT for co.,fbl. lat.,. u •• hy the CO".o,. R~ST.RT co~m."d ( ••••• etto" e.4.5), e' •• r two .roum.nt. fro~ t~ •• t.ck ."~ t.k. a "orm.' ~y.t.m !wft. ~er ." !., GET ~od •• • a ~o~"t.r to the SYT st.rt from the CO"t."t of ft. v.ct~r f" ,oe.tfo" 4a a"d r.due. the t~."t~f4.r ~od. to ." f"d.x~ Cheek 4t. "."0' ."d if it r.cr ••• "t • • " un ••• fon.d v.'u., iat.' .rrOr ("12). e." • nth.rw ••• u.e the i"d.k to co".et f~om • t.b1. of the 0"' r.l.v."t to the SVT ."try r.aufr.d by the u•• r. R.el.ce the c.l, cod. 0" the .t.ek by the tnfor~.tie" to b. r.tur"ed .~d .a •• n t.k • • "or",., SYlt.~ !.tt. Off •• t. 5. p,. •• ~"t'y tw~ GET fu"ctio". r.au.r. aoecta, tr.at- r.-r.- a. Cod. 104 (TOO reauest) • twO word. must b. tur".d, he"c. move the •• ved R.~f~t,ra .n~ tur" o~r.met.ra uo t~e .t.ek to orovfde ".ce.s.ry .o.e •• ~. Cod. 1~6 (~y.t."'.dev4c. "1m.)· thf' 1"f~,.m •• tfo" •• f" the DOL, h'"ce u •• the SYT oo."te,. to eol'ect it from t~e firat DOL wor~ tae ••• ctto" 2.1.3). Com"'e"ts. Th. G."er.' utilftf •• oeek.ae 4s eo mc'ete1y m.y b. r •• ident w4thout r •• tr4ctfo". ~e·e"tr."t ."d PAGF:r-12 e.3 . Co"y.~sio" " uti'itie. Plckeae Com~o~'~-Uled .ub·~outi"e. fo~ fCVT' eo"ve~ti"o 8" 8~c~ec~i.te .t~i"e of ASCII c~e~lete~. o~ .fmf'IP "e"-bf"ary vllue. t"to • b4"apy Gu."t4tv • o~ vice ve~sa - a~. ~~ovi~ed ••• c.ck- w4th1" o"e Mo"fto~ ~odu'e. Cu~ra"t'v t~fa ~.ckAqe .,'OWl fo~ .f"0'e-DPec4.to" bf".rv co"v'rlio", T~i. IU. tomlt4cf"Y D~.-deta~~.".1 t~e '."Qt~ of •• e~ .tpt"G, .1 .~OW" by t~e fO"ow4"e li.t of the ~out."e. IVI411blei 10. e",v. '. Rldf •• e0 pick & u"olck - 3 byt •• b. Deef~I' ASClt dieit. to/from bf"ary • e. Oetl' ASCII d4Git. to/fpom b4"arv - 6 ~vt •• e byte. Hewey.~ 0" ."Dut t~;. 'e"at~ •• O"'V deem.d. ~.xf~um. the fopmlt .of the .t~."a e." c.u.e the co"y.r.te" to .tOD w.t~ the.pe,u't .t thlt cof"t ~ee"f"ofu' to t~e uI!r~ A" outou~ .tr4"a "eyerthe'e.. ,'w.v. croduc.. the ~fxed ~uMbep of bvte.~ .1" oe".rl', epp~p eo"d.t~ol'l' d.te~t.d ~UPf"o.a cq"ve~.io" .pe.report.d to t~. u~er. i~ t~e p~ocelsor co"dttio~ eode ••• t t. the u •• ~,. ~.~Do".t~.,ttv to eh.~k t~ea. Cu.f"G BCS,BVC .tc) whe" the CPoa~.m fa r.ca"ed, '.0. C bft,t"y., td byte ,."te~ed ••• "cut, o~ c.. c,ducad •• outout V bft.4"DUt too "~Q~ for .f"o1e-word ator.ae " with.the.;."e,.' U~flttf,a D.ck'ge dtacu.aad t" the Dr •• viou. a.etto", t~. co"y.r.tol'l .. out1"'a ere cA"ed ~v • a1"ole EMT code (42) wtth ." tde"tff4e" c.aaed la 0"' of the el" .rauml"t.. Stmfl ... 1v the .. e e~. two b •• te Q~OUD' .Ich w1th hi OW" cll,."a .eQu.~c' I"d DreQ~'''''. r~c." st.te. T~e ...... de.c,4bed 1" aeetto"a !.3.1 ."d 5.3.2. Th._who'e p.ck.a. ta re'"tPI"t u"de" a,' eel'ldlt~o". e"d be free'v u.ed ~e.fd."ce-wf •• ~ MIV C."1"Q S.aue"ce. Th. thp,e .. outf"e' ~~.ch eo"vert i .. eM A8CII stP4"e to b4"lrv wopd, .~ • . ," .slfo".d eye" cod •• ! T~ev pe~uf~e ~"'y t~lt the ul'r a~6>p'y t"" ste .. t .• ddre,s of th~ .trf"e .4"ce the ',,,at'" 1. f •• ed fop the.co"ve,.iol'l I. "oted i" t"'~ 4"troductto". ~."ce t~e.r e,"f"e •• eue"ce 1••• fol,ow.' PAGES-13 MOV MnV EMT Exft *ADD~,.(~P' *CODE,-(8P, '2 'PASS STRING START ••• , ••• & YDENTIFIER ,CALL CVT ~tlt.1 Whl'" ,th. PI-OOtl'" fl ,.eel',.d, the eO"'ve"'4e"" ~eo'_e.. the cod_ 0", tOD of the .t.ek a",d th • • dd~eas 4. uod.ted to Doi",t to the byte followi"'c t~1 'I.t 0", •• ",clYded f~ the COP'lve~ lio",. Thl ~.tu~",ed VI'U. 4s b.sed ueo", .,, t~e bytes aeeP'l UD to If'! f",v.'id o",e O~ u",t41 ove~flow, .ubJ.ct to t~. ~lx4~um fo~ the D.'t.cul'~ co",v.~.40f'!. It i • • 'w.y. eo,.,.ect UD to the Dof",t of .toDDlo.. 'o~ e.,~~'e, .f the .t,..",~ 'el,e~,~m,l!1 ( •••• 10~cCA» 4, COP'lve,ted f~om,dec4mAl ,'CII, the b4",.,.y , •• ult f, 0m~1'4 with t~ • • dd~.s. ~.~u~"'@d 0" the I~.ek b.4",a th.t ~o~ the CCR>.bvte. ,. ~."'~f9",ed •• ~1fe~, ~ow.v,~, the C bit 1. ".0 .et 4", t~4a c ••• to f"'~4c.t. the f"vI,4d i"'DUt. P.. oc •••• "'ai c.,t.i", oDe~.~io",. ,~, commo", to .'" th,.ee co",ve'a10f'!s, th .... fo~ • • CO-,.outt"f",a t.ch",iau. 4. u •• d. Th4. 4s s1",t'a,. to ~h~t, d •• e~fbed fo~ tha .REAO/.WRtT! D,oce.so~.", ~ect10f'! 3.2.2.2. The '.Que",ee fo"owed by the m.4",.t,.e •• t. de.c,.ib.d,b.'ow,.th. uP'l4aue •• ctjo"'. io,. e.ch cc",ve,..40", a~e .how" .'" •• ct4o"'. 5.3.1.1 th .. ouah 5.3.1.3. Th. who'e module •• fu;th.~ 4llu.t~.t.d at f4cu". ~.'. 1. d1Ie.teh.'.Qu.",ee commo", to .11 '10" .. out4",.' 4", o,.de .. tOI u,~. I. b. Cle., the co"'dftfc'" cOde. etltu. 4'" ."'ticfeatio", of "'0 f,.~m the the COP'lve,.~etu,'" e~'e"8 !.t,..at two e.ll a,.gume",t. _",d leave _ to th.f,. .tlck Do.4tio", ooi",te" Bufld the .dd~e.s of t~e f4,..t ,.~tu"~ Do.",t t~e "'.4"'st .... m 0'" tOD Of the ataek. to Ch.ek the vl14dtty of the fd.",tiff@, cOde "'ot a •• toned ca" fatal e,.,.o,. (FQl3.t, e. ~. U.4P'1o the code I. a", f"'aex t"to • J~P.tlble, GO to the u",4aue poutf",. to .et • byte counte" fo~ the eDo .. oo .. tete m•• f.u", .t~t"o-le"oth. ""'. ,.etu~"', clea,. ,the code wo"d 0" t"e steclt a. eto,.. fo~ t"e .ccumul.ted ~esult. the DOS!5."N" 3. Collect a byta f~o~ the .t~1"a, ~amoye pa~4ty (b.t 7) a"d ~ad~ce to ~u~e~tc d4o't ~.~ae. ~etu~" to the u"'Qua ~out1"e fo~ fu~t~e~ check'"~ a"d oa~hao. adlult"'a"t. 4. V""Q a Co~~~" '.Qu."ce w't~ va~4able ~etu~" 00~ult'oly the p~eSe"t ~e.ult bY • facto~ a~. D~ep~.at. to •• ch COPlya~s'on (f.e. ~0 (oct." fo~ ~.d' •• D.ck4"e, 1~ fo~ d.c'''',' aPld 4 fO~ octa' (1)). Add i" the "~w byt •• ,"t" t,f • c~.~k, 0" tha count.how. fu~t~.~ bvt.1 ~.",a'" to ~. D~oce ••• d, ~etu~" to .teD 3. nth.~w ••• uodate the .t~~"e DO~"t.~ 0" the .t.ck to ~how the ",Kt byte to b. D~ec •••• d. ".~ova the co-~out4~e ""Ie f~om the .tacle a"d t.le. a "e~~.' SY.t.~ E•• t t,o, f~e. tha SWAD Buffa~ 4f ".c •••• ~v 'flld ~ec.' 1 the ~. o"oa~."'. !5.3~1~1 ".d' •• !50 Pack (code ~) Th1. fo~~ of co"va""on allow. the ~a't~tct.d •• t of eh.~ .ct'~1 "o~~.,ly u•• d fo~ .vmbolfe ".~ •• to ba .to,.ed ." o"a wo~d, th,.a. at • tf~., u.4"Q the .'oo~'thllli !50(!5A •• B).e 1. oetally ba •• d ."d A, e ~ e .peth. thp,e cod.d 'n .ecopd."c. w'th the follow'"Q t.b'et wh.~._!5~ aete~. 1-32 33 34 3!5 • SP~C! • .·z •• t • fu"u •• d) 3e.~7 • ",.g I, chap. Th1. eo"ye~ •• o" i. Itepe.d the,.efop. afte~ thpe' byte' OP UPon peceo"ft.o" of a chapacte~ not includad ." this .et. IIIU" ba I" 'h •. latt.~ how.v.p, th., ~,.u't 'eft-'Ult1f'ad, •••• 'A", eQu'v.le"t to 'A '. ~."ce 'he e"" .- ....•.•...... 1. Th. oetal conv.~ •• o" U"~Qu, pout'". a'~.adv hal to DP"'n' ~,.u't C.e • • aet,On !5.3.1.3)~ doubl.d PIGF. $-1 ~ . . u"teU8 ~outt"e ealled by the ~a4".t~ea~ fO~~' t~e followtno oce~lt4o".1 1. n" e"t~y set t~e list~d COU"t fer three bytA' the f4r.t byte. t~e ~a4".t~elm fe~ De~- Ibeve I"d ~ecll1 '-I Co"vert' valid byte 1" 'ceo~d,nee w4tk t~e table and retur" to the ~14".t~ea~ fo~ ~u't.Dl1eat4on of the current re.ult by octal ~0 I"d Iddft40" of the new vIlue. ReDeat 4f ~ecll1ed wft~ Inothe~ byte. ]. ~o'd t~I .• t~~"O ~o~n~er .t In ~nvlltd ~yte I"d Sit C bit in the Drog~l~ Statu • • aved 0" the stIck to .4gn.' the e~ro~. ~eD'aee tke byte w4th 0 a"d eontjnye t~om steD 2 to fo~ee the reau.red left Just4fiesltion. t~e 5.3.1.2 ~ee4~ll ASCI! To Binary (cede 2) The e~nve~.4on of deeim~l ,dig4t. u.e. ,he .ta~dlrd elQortth~ tn whieh I D~ev40u.'y comouted re.ult •• ~ult4D'ted by deei. ma1, 1~ end 4. th,~ lu~mented by I "~w d.a~t, elwlY. le.vina a eor~eet valua tf stoDDed at I"y time, e.O.1 RI.u1t *1 • A ~e.ult *2 • 10A.8 qesult *3 • 1P(10A.9).C etc. The m•• imu~ d~cfmll value that ea" ~e stered 4n • .tnQ1e wo~d .s of cou~.e 65535. He"ce the u"fQue rout4"e must e".ure t~.t this •• not e.eeeded •• fol10w.i t. ~ - Set the counter tor ftve byte. a"d r8cI" .trel~ for the f4~st bvte. the ~14n· Ve~tfy thlt the byte t • • vlltd dect~ll dtott. If not, hold the 'trfne coi"ter It t~e t"eor~ect byte Ind stan,' tke error by settino the C bit tn the Droora m StltU' ."ved 0" the .taek~ Ex4t th~ouoh _teD 5 tn the ~14n't~elm. Check 1f the currently aecumu,ated v8lue i. e553. If 'e'" or ff, eoul' with I new dtc4t not, arelter than 5, return to the mI4".tre.m for multtDltclt4o" 01 the ,Dre.e"t re.ult .n~ addit4en of the new diett. QeDllt fro~ _teD 2 4f recalled w4th ,nother byte. %f the the overflo~ eond4t1o" .trtnG 1•• ee" in .tee 3, hold Dotnter It the eurrp.nt ~yte, .et the V b4t .~ t~e .ayed.p~oo~~~ Status step 5 4" t~e ~e4".t~ee~. 8"d @xit th~OUQh The Ce"Ve~ •• O" of oote' y,'~e. u.e. t~e .a~~ alQo~.t~m a. 4" the D~eY40u • • ect4o~ e.eegt thet the mu't4g'.e.t.o~ faeto~ •• ecta' 10 r.the~ the" ~eef~al. If t~e eo~out.tfo" 4• • tooped at e~y tf~e, the la.t ~e,u't f • • oaf~ vel4d. A" ~Ya~~lew Dr~bleM al.o e~t.t'l the u"10ue ~out."e 1" t~1s c •• e therefo~e e~eek. t~at t~e ~e.ult dees "ot beco~e Q~e ater the" oete' follow •• 1"'" •• Set the ~ou"ter for ••• ~.04t. e~d ~8eA" • t~eeM for the f4rst byte. the ~.f~ • Ve~f1y that the byte f. e va'td oetal dinit. If "ot, e.;t throuoh .tep 2 of t~e dee4m~' rout4~e i" the Drev.ou • • ectio" to .fo".' t~e e~rer. 3. Check if the eurre"t re.ult 4. ore.ter th.~ oct.' 1"'~. If .e, e.4t th~ou~h .teo 4 of the daciMal ~out1"e to f'ea the ove~flow. Oth~rwfse, double the ~esult a~d retu~" to the m.t"st~e.~ fo~ its further mu1t.plieat4o" by 4 e"d .d~4t4~~ of t~e "ew d4oit. If ~ee."ed w4th ."Othe~ byte, ~eoeat f~o~ .tep 2. C."4"0 Seoue"ce. The c~r~e,oO"d4"Q reutt~e, to e~~ve~t f~o~ bt~.~y to 'SCII .tr4"o u.e Odd tde"t4f4er cod.l. I" the4~ c •• e ~ot o"'y mu.t the u.e~ ,uDD1Y the .tart of a bUffer fo; t~e ItoraQe of t~e eo"Yerted byte. but the b4"8ry wo~d to ne eo"yerted. The e.,,4"o 'eOUe"ee the~efore p ••• e. three 8~au. me"t ••• fo"ow •• .'10 MDV MOV MDV EMT *WO~O,-(Sp) _'OOR,-eSP) -CODE,-eSp) 42 ,pASq nATA FOR C~NVE~sro~ ••• , ••• BUFFER START ••• '. '•• ' rO!NTI'IER ,CAI.L CVT DOS5.RNO . , 0" ~.tu~n te the e~o~~a~, the ~eQu.~ed .t~t~o 4~ .to~e~ a. '-bit. ASCII eha~acte~. 1~ th~ ~uffe~ .uPP, •• ~. It. If Ie f. the ffxed nu~be~ of bvt •• a •• ociated wtt~ eac~ eo"ve~sio" as "oted .n the int~0~uet40~, w.t~ 800roP~fate I'~O paddino. Henc. t~.~. ts "0 "e.d to uDdate the buffer pot"ter ~etur~ed to t~e u.e~ - ~. ~a" ~o~pute its new co~ition 1f reQu1~ed. I".t.ad. the .taok ta comeletely e'.ar.d on rec.", Pl"oc •••• nl!tl Th.,. conv.~.to". do "ot have t~e 'am. cO~P8tib.'itv a. th.tr count'I"pa~t. d1Icu ••• d 4" .ectien 5~3.1. T~ev are th.~.fo~ • • ff.cted 4n .epar.te lub~outi".s d4scu'le~ 1" .ect.on._ 5.3.2.1 throuoh 5.3.2.3. Howeve~ theY u.e t~e .ame COMmo" ei.patch .eQue"ce a. t~at n~ev4ouI'v de.cr4bed u"de~ ,t.e 1 4" ,.ctio" 5.3.\ ~"d .hare • co~me" e.ft to remove the t~~ •• c'" aroum."tl f,.om t~e Itack a"d ~8c81' the D~O g,.am th~oua~ the "orm81 sv.t.~ Exit. 5.3.2~1 Radtx-50 U"pack Ccode 1) To recroduce the o,.1oi"al cha~acta~s cacked into one wo~d i" .e.cord,~ce w.th the .'aorithm aive" 4" ,ectio" 5.J~1.1, two oe.r.tten • • ,.e ".ed.dl a. Succe •• iv. dfv.,40" of the b4"ary value by octal 51 t" order to e.tract t~8 th~ee coded byt ••• eo"y.~.ie" of the byt •• t"to their 4"0 co,,.eloo~d. ASCII eQuiv,'e"ts. Th •. a1ao,.;thm u •• d to .ffect the ffr.t of t~e8e "~ed. exo'a".tfo" .4nce it 1. not • ae"e,.al'y .ta"d8r~ one. It i, b,'ed UDO" the fact t~at 3/16 of , aua"tfty 1, almo.t eau.' to byt .. i' alwav •. 'e.1 tha".l/e of that aue"tftv, Tht. follow, frem t~. be,tc ,'oebra4c t~"etl (.~1) Cx+O ••• ;' Thi, i~act1e" the,.ei~~. prov4de~ ~ ~ ••• o"~b'e f~~lt aooro.4m.tfo" fo,. divtlion bv 5, ~e·iter.tto" of t~e ,a~e oroee •• witb ~he r.ma~nd.~ (1/18 of t~e o~ev~oul v.'u,l th." e"ab'" a fai,.,v .,..oid. accymu,.t40~ of the co,,'.ct re,ult. The "umb.r of ite,..tto"1 4, c.rtai"'y leIS the" the.e r~l!tut'.~ f~" th, mer. "orma' d1vi.10" t.c~"4aue d4v4,or o~ ~iv4de"d ~ot.t.e" w4th t,.4a' lubtract10" a"d, of course, t~4s "uMb.r r.due •• wtth the 0,1e1"a' auant4ty u"'fke in t~e oth- of PAGE 5"-18 , , t~e eo~. useae 4" both ~ethod. i, the lame. Sueh u,.ae i'.~bv4ou.'V ~~~at.~ th8" f" t~e V.~V be.fe 'uccessfve ,ubt~actfon tach"fQua but t~e t4me taken ,jo~ th~' method doe' n~t ,t."d co~~a~f.o". ~e"ce the ~.duetfon e'oo~fthm outlined f' .dected beeau.e tt 4, f.'te~ end eu~~e"t'v the ove~e" size of t~e CVT module 4. "0 o~ob 'em. e~ 'v,t.~. ~ouah'y_ Mo~eove~ The "o~~jthm .bove ca" b. a~~lied ~n ~.et ~o e"v nu",be~ whfeh.f. 0"' g~.ete~ the" • bf",~y.~owe~, e.Q., 3,9.17, ete. ."d "atu~e"Y become. ~o~e a~D~oc~1ete t~. '.~oe~ the "umbe~. The .ecend oce~.tio" me~e'v t"volv •• cOm~e~f.e" of eeeh byte w4th the co~~e,~o"df"g ~enae' of t~e teb', Qive" f" 'ectto" e.3.1~1. to.dete'~ine the A~CI1 eQutv"e"t~ Twe Dof"t' howev.~ ,hould b. "otedl e. The Me.f"'u~ 8c~ect~b'. velue f~~ • v.,4d ~"u't fa thlt ~o~~e'Do"dinQ to ;gg, f.e. 17~777 Coc~.,). I! I ~uantf~v a, •• te, t~'n thil f' c •••• d fo, conve~.fo", the ff~.t byte w4th e coded v,'ue of 50 become. (I) by the t,.n,letio" mat~od u.ed. Any of the byte. ce" ,e.ult t" t~. u"u,.d 3e whtch i' t~e""eted into C/) code II!' eft.h,~ ce., the 4"vI.l td cha~lcte .. f., ~etu,,,ed to the ea',ina c,oa~.! 4n o~d, .. to complete the eonve'.io". The e"o .. f. howeve' fl.oaed in the C bft. The bvt,. D'odueed by the d4vf,4o" .,e in the ~eve~,. o,de" to thet ~~eQuf~ed by the ff".l .t~."a, Thu. the .tack 1. u"d to.effect tn_ "eee •• ~,y .w;tch •• 4ndtc.te~ in the fol1owf"o 'eouenee fo, t~e co"ve~.fo"i 1. Set e steck ma,k., .t its ~~e.e"t ttve velue) 2. St~,e the v.~u. on the steck e"d compute 3/18 (.C.·.I,)/'). T" the la",e D~oce •• , ~educe the VI'u. 0" the .tack to 1/18. (.(x-(.~.,.).((.-w/')')' ~u'" the Quot4e"ta el this ,teo 4. ~epeete~ unti' the ~.mafnd ... 0" the 'teok fe". to .7 o~ be'ow. 3. 2 Dr-oduce. ~fvfaion by e._.e divide the Quotfent obteined by octel 10 e"d ff the seoo"d byte 'e"'li"1 to be D~~celled, ~.Deet steD 2 w.t~ t~e 'elu't. Othe,wf,. cheek the ~e.ult • "OW t~e ff~'t byte • ,"d .et the C bit i" t~. C,eg .. e", StatuI leved 0" t~. Itlck 4f a~eet.~ thl" '7, Ste~, DO'ftio" ("e~a PAGEf-19 Chec. 4f t~e . byte •• the u"u •• d '.. . ced8 35. If.o by the retUr" C bit. Co"vert the byte reoardle •• Of a"y e~re~ 4"to it. AS~II eaujYalent a"d .t~re ~n t~e user-.Dec4f.ed buffe~. Col'ect the ne.t byte f~o~ the .t.ck and re~e.t th4 • • teo unti' the ~.~k.r .et i" .teD 1 •• r •• ched. '4~ile~lY !. .4~"e' t~e e~~o~. Take the cO~~O" ••• t to el •• n-uD the .t.ek a"d c.l, the Droa~a",. ~e .1. T.he. con"e .. ,; 0" to dec.1 mIl ,ASe I I. u.e. a .t.nd ... d ,i~Dle which need. no exelanat40". ~o~e~ve~ no ineut v.lue Cln D.. orluce e .. ~oneou. ~e.ult.. T~u. the 'eaUe"ce fo~ the conver.40" •• ~e .. e'y e. fol'ow.i Gorit~m 1. ~et • Do.nte~ U 0001-1"') 2. $~.rtfng f~o~ oct., ~I •• the "ece •• ~~y ASCII b ••• , count t~e "u~bar of ttme. e.eh 10-eowe .. v.lue e.n be .ucce •• fu"Y subt,.eted fro~ the 4nDut au.ntftv .nd D'" the re.ult to the u.e," hu~fe~~ ReDa.t until 10 it.elf ~ •• been u •• d. .1 Th .... ~ •• nd.r to the u.er. st.ck and .. ec." to a t.ble of l~-eowe, v.lue. the dfGft. byte - .dd 6~ ,nd D'" Take t~e COmmo" •• it to el .... the the D.. o~,am. e•3 .-=2:...:.-=3:--..~~-:.4";,,;",,,,:::'~"...I..v--"'t-=0_('}....:::c..;;t-='c...;.'_A-=S..;.C-=I..;.J_--,,(...::::c..;.o....::::d;.;;;e_5-.) conve ... ion to oct.' ASCII i. effected by .4~D'e ~ot.tion of the inDut Y"ue to e.t,.ct • ,.oui.it. nu~b.r of bit. (t fo .. the f.~.t byte, 3 fo .. the ~e.t)' to these oct.l 60 fs then .dded •• the nece ••• ~v ASCII b •• e for e.ch of the .f. d4· o~t •• A081" ~o erro~. ~~. ~os.fble •. The •• 'ifcul ... ,'oorith," y.e. C-bit detect40n of ~.rker bit • • et 4nto the rot.ted ~es~'t-.to~e in orne' to cou~t t~e. "umber, of ~it. for e.ch ~io4t .nd a',o the "u~be~ of diG4t. a. fellow" Set e ,".~ke, b4t .nd ASClI-b •• e eQuiva'ent fo.. one rot.tion fn the Junior byte of • ~ •• u't-.tore. In th. ~4oh-bYte .et a ~a~ke, fOr e ~otat.on •• 2. -ot.te. b4t f~o~ the 4nDut wo~d into the Jun40r byte of the re.ult unt4l ~h. ~.'ke' bit movel to the C-bit. ~to~e the ,e.u'tino byte 4" the user'. bUff .... 3. R.~.t the JU"'o .. byte ••• " .t.c 1 fe.. tt~n..Rot.te f .. om .t.c 2 uftt" C.~4t. T~." t~e t~e fou.. ~ot •• w~ole .. e.ult wo~d .~d .. eoe.t ~'o~.byte ~ ... k..... e.c~es the t~k. t~e eo~~On ••• t to cl •• n·uo the .t.ck .ftd ... c.ll the D.. oa ... m. 5 •• _~j:J~~!,,_d c~.t_!"J "9..."..l~!!!_~_,.... t~ ~I". I" eh.~t .... 3 & 4, 4t w••• how" t~.t t~. u •• 1" h•• two "0 .. ~.1 m.t~od. o~ ~"dic.ttftQ the d.y~c ••• nd ~i ".e.' .... y the ~"e. ~, w•• ~ •• to 1 •• oc'lte w't~ the dat ••• ta DI"oY4dfftQ 1/0 fo .. I'd. lCI~oa"'ft!' I '. M. C," DI".· •• t the neces .... v iftfo .. m.t4o~ i"to L."k·b,ock • • "d block. w'th.n e.ch o .. ogl".m .ou .. e •.• b. H. c." ,uPDly thi. ,"fo .. mltion 01" C'" oV'''l''ide th.t .' .... dv 'n the DPOQ ... m It le.d tf~. by m.I"' of the con.ol. ASSIGN comm.n~. F., •. . . . .... um. thlt O"c. th, o .. Oal".m ~ •• b.au" ••• eutt,n, .tt. wt" ft •• d the •• ~. a.vice • • "a fil •• fo ..... e h I"U" whil •. it ... ~.1ft. 10.d,d ." memo .. v. N•• th ... m.thod i • .... "v '~~~Ibl., how.y.r, ~f t~,_pI"Oo"8m n•• d. t~. Ibility to u•• diff .... "t 1/0 m.d'i. fo ... d.ff'I"."t "Uft., p'l"t4cu~ ... 4f the ".w d.t ••• t 'D.effic.tto" . . . . . . t the d4.c~.t4o" of the 00 • • rlto" ,t the eo".o1. k.v~o~l"d. '0" t~e .4mc~e ~.,e, th~. m40ht b. m.n.o.a by the o"OQI".m settina ." ,0P"oDl"i.t. RESTART 'd~I"". C, •• ,.~t4o"_5.2)' D~'"t4"~ .O~. oe .... to.. ,4Q"., Ind th.n wltt'"O fol" the 4nDut of conlol. ASSIGN .nd RESTART cemml"d, to ,tll"t I n.w .. un. the Oe" .... , CI •• , how.y .... t~4' i. c l um.V .nd wI,t.fu'l elch sDeciffeetio" ft •• d • • • • c .... t. _SSIGN ."a u.es I" i"d.yiduI' te.wo .. ~ f .. ee eo ... buff ... C••• a.ct4o" 3.2.1.2) 89t~ ~.thod.D 'y Fo" Th. Mc"itc .. t~.I".fop. cCfttlin' • Comml"d ~t~1"o Ifttel"o~.t.1" (CSI) •• • me."' w~e ... by d.tl •• t sD'cff4cltio"" peou.sted Ind e"te ... d., • stl"'"O, CI" b. tp'nslet.d e"d Ictu.lly .tored w'th4" the D.. oa ... m Link-block • • "a Fi'e-block •• " "eIdt" ••• fol" •• ch I"un. FUl"th'l"mol"', mo.t System P1"0~1"8mS tyojcl"Y ~e.a ~hi •. i,c"itv to chlnoe dev~ce • • "d f"ea. T~.41"_u'._of CSI Dl"ov'd,. t~e Idd.d b.nef't th.t th.y ." nOW c~ ••• "t • • t.ndlpd int.l"f.c. to the ooe",.tol" 8t t~e kevbOI .. d. Th4. 4"t.~f.e • • ftd the m.thod bv which u'el" c .. OOI"8mS ~.y 11e," fCI" t~ ..... y.c~. cf CSt Il"e b~th fullV. d"~l"ibed ." the p .. oa ... m~.I"" MI"dbock. Th41 •• et4c" thu. CO"tl'n. onlv .0 DOS!."NrI P1GF.s-21 luff4ei."t _outline fo~ i~med4It. ~efere"ce. ~~oarlm D.rfo~m. the fo"ow4"a OD'~ltfon'l 1• B~i~f'v, t~. -eauelt commlnd .t~i~o 4nDut bv·crintinQ '*' It t~. conlo', tVDew~iter, el" .R!AD II'I~ .WAIT fo~ t~e ~Derltortl r.~'v. e." ,"C- I o'"lrll 8v"t.~ '".'vllr, ~ilc~'led i" ttO" !.4.t, to e~.ck t~. ov.r." Iccur'ev of 4"Dut .tri"; I"d •• t UD t~. d.eodi"o D~I". 3. t~. CI" .n i"dividuI' ~.tll.t •• o.c4f~c.t40" D.e~d.r, d.'crib.d i" S.cttO" 5 ••• 2, te ,.t UD t~. ~.~k-b'ock I"d b,ock for e.ch dlt •• et COI'le'~I'I.d. F., •. (CSX) -' T~e f~rT.t 'D,c~f~ed for • co~ml"d .trfl'lQ to he Droe •••• d by ell., 411u.tret.d .t fioure e.s. In o.rticu'.r, t~il Ihowl th.t the .oecff4c.tio" for .aeh deta •• t 41'1 t~. .trf"o can C9"'.lt "umbe~ of elem.nt., ~o~eve~ ~ot 1'1 need be oive", but thol' that are mUlt eo~c'y wft~ a ,et of ~u'e., tllu1ltld. at ftQU~', see. It fs the Dr.l'lc4~1' fu"ct4on of the Iv"tl. A"llvI.r to 'I'IIU~' thlt the.e ~ulll Ire not brakl" ,"d to f"for~ the croarlm of .nf~il'lam'"ts if detected. l~ .ddt~to"f thl A"I'vI.r C'II"I.ue the Itrf"~ _bY ~.mov4"a l-trln.oU' chlrlot.r.C.clce., TA8S, etc.) I"d f4 ••• the coIft.o~ of cot"te,., "e.dld t" the dlcodt"O ooeratton. which fO"ow. of • ell'4"a Seaue"ce. In ord.~ to COllect t~e eom~e"d str1l'1Q, t~e oroar.m ~.aue.t • • READ f~o~ the dlt •• et Drovfd4"a t~e 4"Dut - ululllv on __ I •• Ii 0"'9 to t ~e COI'I~o,. k.yboard., A., I ~t 1"I'je ~d ~eau ... em'l'It of th41 1/0 fu"ctto" Cae • • eetfo" 3.2.2.2), t~e c~oeram IUO~'t'l I li"e buffe~ for the d.ta, "o~~el'v D~eeeded fm~edi • • te'y by_. 3.wo~d '1".-bl~ek of CO"t~o' 4"fo~m.t4o". Fo~ the u.e of Cst, the 11". buffer w1t~ fts ~eadft~ fo~ t~e in~~t o~_. commll'ld .t~i"O .s fu~the~ ~~ea.~.d by I 1-word ~~r'k.lclce II, .how" 41'1 f1Qu~e 5-1 •. CCSI , •• u",el . t .... t t"'i. formlti. follow.d ex.ctlv, I"d 4" olrt4eul.r doe. 1'I0t e.~eet the Dumc mode d.se~4b.d 41'1 leetio" 3.2.2~2~) ~el'le. tt r.aut ... 1 ol'llv t~.t the eroor.m DI'I t~e .te .. t I~d,. ••• of the worklDle, CC~D8UF) I' CI~t of 1tl cI" 41'1 order to lece.1 both the worklDlee Il'Id t~e dlta 41'1 t~e li"8. ~oreoy.~ at th4. itla' t. l'Iot eo"e.rl'led w4th t~e c~oa~lm dltl.et ,f~klae •• ThUI t~e el"4n; .eaue"ee •• ,imo'vl .1 Dose.RN~ ,PASS W/SPACE ADDRESS ,CALL CSX Gen.,I' De.epfDt1on' ~8X f~f'fl!!Y D,.DIP •• the wo~k,ole. fe~ 'It.~ u•• I' d.ofet.d 4" f4our. S-S. Th •• to"4ffel"o. of the e"t~ ••••• e. fe11ow.i I~9ut/Ou~out. Code - en~b'.~ t~. o~oa~l. to fde"tifY wh4eh .1d. of t~e .t~f"Q 1. to b. u•• rl .t t~e "ext ~.au •• t ~op the ~.eod1"Q of • d.t ••• t .oeefffe.tto" - ••• ".xt •• etto". Cu~r."t Inout Addp ••• - .hew. t~e .taPt .dd~e.. cf the " •• t t"Dut d.t ••• t .D.effte.tfe" to b. o~c e •••• d .t ."y tf~ •• It 1. 1nttfa"y .et at the .dd~... of the byte fe' 'owf~o_ Ie'. f f ;et.et~d, e~ I. It 1. uod.t.d •••• ch .D.e1ffe.tfo" •• deccded. Cur~e"t Out out Add, ••• • oe,f",M. the •• ~. fu"ctfon •• 2 fop OUtDut. .tapt .ddp •••• It. f"ftf., .ettf"s •• the .tPi"o 4. Current InDut D.f.ult D.vfe. - orevtde. ~ device ~.~. wh.n "0". fl ent.~ed ,. Da,t ef •• oec4ffcI· tfo". Th •• tl,t 1"uMotfo" f. the ,Y.te~.devfee, ."v new devfee .nt~Y ov.,rfd •• t~. o~evteu. def.ult (O~ the 1nout .f1e c"'v - def.ult. do not epo •• the 'e' bounOI"'Y) ~. Cupr."t OutDut Def'u't D.vfee - i. t~e fo~ outout. 8. Curr."t Inou! D.f.ult U"ft • oive. t .. e unh "ulflbe, •f the dev4c. c." ecnt,01 .eve,.'. It • t"hf .1 fl'l 4. eont."t i. e I"d t. uDd.ted '. . •• ~e •• 4 -, •• ~uppe"t out. OutDut Def.ult u",tt - .aulte. to 6 fo, out- H.v4"c coll.~ •• d t~ •• t~4"g to .~ow o"'v ~.coe".I.bl. c~.~· .ct.~., cax e."fo~", •. tt. ".c_ ..... v eh.clu 0". t". ba.i. of a •• t of at.ta. co,~ •• ~o"df~Q to the .l.",."t. b.f"c .c."".d. Th •••• ~ ••• follow, tw4th th.i, 4".tf.tf~o c~.~.cte")1 I 2 4 6 I • So.c.f4catio" St.,t t,) • D.vfc. (,.tte,) ,.,.".~. (J.tte,) • E.t.".4o" (.) • • Ut~ C[) 11 • Swf.tch (I) 12 • I"Dut Sfd. at.~t (e) St~f"o E"d (LF"',VT) l' . • w~.~.~., ~u"etu.t.o" ch.,.ct., 1". the .~~."~ d."ot.1 ~~.~ • • 4t40" .b.,w.," .t.te., • t.b'. ~0~~"Do"d4"O to the 0,40' .t.t. f' ••• ",4".d. Thf. t.b" Gtv • • • '4.t of eu .. ,."t .t.t'~ ~hic~ c.""ot be ,cc'9ted 1" acco~d~"e. w4th ,~ •. ~u, •• ~~.vtou.'v tl'ult,.t.d 4" ffou~. s.e. UDO" d.t.ct40" of ." ~"v.'id •• t.t. ~f • eh.,.cte .. w~~ch fl ~lt.c.' ,'v 0 .. with4" •• t.t., eax ~.c.". the D"Oa~'''' wfth the .dd~e •• of the byte t.~",.".t1"c the IC." 0" tOD of the .t.ek. Othe .. ~.,. 0 •• ~.tu .. ".d. I~ •• th." the .... ~0".;b.~4tv of the o,oo~.", to ch.c~ the f"dfe.to~ (."d ,.",ove 4t f .. o", the .t.ek) _"d to t.k • • ctfo" .cce,d."Q'Y' 0" Q." .... D.t.4l.d ~ .. oc •• sf"QI Th. D.. oe •••• "c oo.~.t.O". of rax .~. 4,'u.t~.t'd .t ft,u~. The ,.cu'"C' of th ••• OD .... t.O" ••• b •• fe."v •• fo'. low'l 5.9. t. C~",et the .t.,~ of the wo,k.D.e. C~DAUF ."d f"~. tt.'.,. ft al "oted .bov. • usf"o t~. DD~ ."tIlY f" the SVT to det.,,,,f". the .v.t.", d.vte. e•• e •• et40" 2.1.t ."d 2.1.3)~ S.t ~ot"t'rl iwiteh •• ."d 2. Se." the It,f"a ."d ... ",ov •• C.C •• , !A~I. ."d bout. u"tf' • v.,td ,.". t ... "'4".to .. 41 ••• ". 3. la"o~. I,' ."d ~e~.f" .t .t.t. 0 u"ti, .o~. oth., eh .... ct... fl det.cted. A•• u"" .t.t • • • "d tf the eh .... et ... i •• '.tt ... , .c." the .• t~."Q fe.. the f .... t "O" •• '~h."u",.~ie ch .... ct ... , eou"tf"q the "u"'b.~ of , •• d4"o l.tte ... 8"d •• tt1"o • ileo 4f df· cit. oceu" betw •• " 1.tte.... If the ".w eh .... et ... •• "ot 'I' ce to .t.o e to ch.ek the 8cc.ot.b4lftv of 'f'.".",. .t thf. tim.. Othe,wf •••• t .t.t. 2, ~,ov4d.d th.t uo to three letter. o.,hftOI fo"owed O"'y b~ d~a4t. h.ve be." ••• ". AQ'~" oe to .t.o e fo~ .f",.'." check for Devte •• ru· Dose.RNt'l 4. F' AGF-S- 24 If the fi~.t chl~lete~ "ot ',I 4~ Ite~ 3 .1 '.', ~cc.~t it ~~_l~eu ~f F~le"ame, I' 'o~o .1 jt is ~ot followed by lette~1 o~ dicitl. qelet Ictt9" ICCC~d4"Q1V ~i ~". ~f t~e fol. 1ow4~o e~e~let"1 •• detected. Go to Iteo ! o~ completion fop the ,eleve"t chec~. D~eceded t~e Itlte e. o~ ."d '.' Cltlte 6' • move pe.t (O~ I 1."01e '.'). '~tte~1 I"rl diQitl ~[' Cltete 8) • Ica" beyo"d the ~n'v va,id IeQu,"~e 'rCd.~tt.),(d.o.t')l' Co~ '.' 4" lteu of (dtQit.) t~ e4the, el.e). 'I' Cltlte 1~) • io"ope lette~s ~r dio.t. followed by ~epet.t.ve 'eQue"ce, ef Ii (1ette'" dia1tl, ~.~ 0' ""'. 'c' C.tlte 12) • Iccept thfl che,eeter o"'v if "ot D,evtou.'v 'ee" I"d ~e •• t 'Cu,~e~t t"Dut Add, •• " i" CMDBU'~ e. C~ • tono,e e. le"o I' it i. followed by I t . , . "'f~lto' LF, FF, VT • leee~t Al' othe~1 (i~eludi"Q dfaftl) • ,.Ject I" the ,elevent .tet, tl~1e check thlt the stet. IUlt te,mi"lted CI" fo"ow the o~e D~eviou81Y see". Remembe, the new .tlte e"d if "ot 14, 'etu,~ to .tep 3. Otherwi.e te~e a ~o~me' Syltem Exit (see ,.cti0" 2.3.4) with 0 e~ tOD ~f the stack. Fo, 4"VI'td che'lcterl o~ state" ,ee18ce the A o~ the .tlck with the lete,t vIlue of the oot"te, u.ed to Icce,1 the .t~t"O before tekt"O t~e SY.te~ £xit. Co",me"tl' CSX 4. ful'Y 'ee"t'l"t It 11' timel e"d CI" be Uled f~.ely wheth". ".~de"t o~ "ott . It ~'v ,1so. be ~eea"ed to ,e-t"4t41'.'e the WO,klolce fo~ t~e .t~f"e 4f reQufred. CCSM) T~e ou'po'e Lt"k-bloCk ef t~. Oeceder rout."e t. to let UD the ."d F1le-hleck fo~ I detl'et e"d tr8".fe, d.~ec· t40~ .Dec4f.ed by the p~oe~e~, ~y e.t~lct4~Q the ~ewt IDec4iiclt40" f~om t~. ~.lev8~t .ide 'f I cem~l~d .t~.~o el~eedv ch.ck.d by the Sy~tl • • ~Ily •• ~ dt.cu •• ed f" t~e D~eyfous .,cttO" I"d by th." t~a""lt4"a its co"te~t 4"to tke fo~met ~.Qu4~.d. Th. D~OO~lm CI" the~ •• fte~ De~fo~m tta 1/0 oce~et4o", VDO" th.t d.tll.t t" t~e "O~~81 w~y dese~4bed f" Ch'Dt.~. 3 & ., I' Qua,4f4ed by the ~.ouf~eme"t. of 8"Y .w4tch.~ e"te~ed w4th the specff1c.tfo~. Th~ o~o9~a~ 4t~ •• 'f, how.v.~ t. ~.'Do".fble fo~ det.~mt"f~o th@ vllidity of tho ••• wftc h•• fo~ ft. Du~po.e. C,"f"Q S.aue"c., Th. Decede~ .xpeet. the wo~kaclce CMDBUF 8.socfet~d.w~t~ the _buff.~ co~t,f"f"g the .t~'"Q to be al~e.dv f"4tf"fsed co~~.etly I"d pe~fo~m. "0 'V"t.x check • • • eal1 to the SV"tl. A"I'YI.~ mUlt the~efo~e D~.cede tke e.l'l to the dee~d.~~ If the A".'vle~ t, ~ecll1ed, the wo~kaoac ••• ~e4"4tf'l.'.~ a"d, deco~f"o C~" thus be .t8~ted If~.lh 4f ~eeut~ed C.ff.ctf"e both .fd •• how.ve~' • 1.". •• "ot.d 4" the D~.vteul s.cttO", the ff~lt werd of CMoeuF •• r •• e~v.d fo~ the D~eo~.m to t"d4C8te whiek loecif;cetfo" 4, to be u.,d "ext. Th! D~oo~.m •• t. thf. ~ord to ~ to 140"tfv ,t~. f",ut Itde of the stP't"o' 2 the outout side. The ,pp~oDrt.t, Lf"k-block I"d 'f',-b'ock mUlt .1.0 be eo~~eet'Y e'~.b'f'h.d~ T~' fo~~.t of ~he '.tte~ fs exec~ly •• de •• c~fb.d f" lectto" 4.3.2. Th. Lt"~.bloc~, 0" the ot~e~ h8"d, ~u.t .~e'ud. 'D.e. iop' the dev4ce "eme ••• how" t~ lectfo" 3.1.2~1 ."d m.y b. furth'~ '.t,"ded to ."ow e buffe~ 4" which. the Oecoder e'" ~etu~" Switch t"fo~~atfe". The OP'oor. m U,,~,fc~. 11'o~. Iufftefe"t p'oem fe~ a" ,the t"fo~m. ttO" exp.cted a"d f"dtc.t.s th@ .tz, f" the Lf"k-bloek byte .howt"D_."~umbe~ of wo~dl to iol'ow·~ ,i"al1v, the, decode~ the th~ •• ~,'.va"t .ddrelse~, The.a .~e sUDol fed by the p~oe~.~ t" • t.ble a. Ihow" .t ftau~e 5-1~ 8"d the ed, ," d~ ••• _ of thts t.ble f' D•••• d a. the O"'V e~eu~e"t f" the 0.,1f"0 •• au."ce, ""d •. ~ '.0. Mnv *CSI8LK,-CSD) EMT 57 ,P.SS TA~L~ .CALL CSM AO~RES~ Exit Stet.i - Wh." the "umbe~ , D~Og~.'" il re~.l"d., t~e device .,.~e e"d u"H f~o~ the IDaefficatfo" o~ f~om the ~.f.ult ~t~~ad f" CMDBU' I~a .et i"to the L4"k-bloCk, u",a •• "o spac4fieetfo" .t W.I e"te~ad fer the dat.,et. th41 CA.e, t~e dey~~, "'me f" t~. Lf"k-bloCk f. .et to PI Dete fop' t~e Ffl.-bloek t. ao~~.etly 'to~ed o~ .s ~apl.e.~ by 0 i., the .1, I" PAGE5- 26 .1e~e~t. ~~t ,ucD'ied~ '*' e~t~i8' e~e 4~dic~t~d by octa' 52 4~ F4'e~e~. o~ E.te~,io~.o~ ~v.octa' 377 .~ ~1t~e~bvte of the lllC. Swhch deta 4. 1 f.ted i~ the Lhllc-.,'ock exte~ ,~o'" e •. de~~cted et i~au~e S-,l, I'" addit4on, 8 Itatul code 4. ~etu~~ed 0'" the .tlclc to ~otffy the ~~OQ~~m al fo"owl Cbh-n I No mope l~ecff.Cltfo",. to eo~e 0", thf • • 4de Too much Iw1tch dltl f~p the lelce e"owed It i. t~e ~~OO~I~'I re'Do~'.b.'4tv to cheek th41 CI~d eleap 4t f~o~ th, It,elc) I"d let Iccerdi"'G 1v. Int.rnll,v ~he rl,eVlnt e~t~fe. in t~e C~DAU' - cu~rent addrel. and, ff a~v entered, cu~pe"t dev4ce an~ unft - Ire u~dlt.d 1~ ~ead.ne •• fo~ the next ee" fo~ decodinG ~n the .Ime .ide. Proces.inftl The p~oeei.4~a oDe~~t40n. to ICCOmp'.,'" the Dec~de~ fUnction Ire i',u.trlted It f4ftupe S-12 Ind bl'fcll1v follow the outline e4ve'" belowl t. ~o"ect the ell'.p~rlmete~ ~nd u.e 4t to clel' devInd unft i~ the Link-block, the F41'-"'lme bl~ck Ind 41 Switch IPlee provided, I Iw1teh .top in itl ff~.t wcpd. .,~o ccl1e~t the pelevlnt 't~.nG DQ.nter~fro~ CMDBUF 10~ t~e Ifde ~eGuelted 41 I, e.ft I' for 'e' or CR below. ice 2. ~I~e .1 ehec~ the ~ext .tr4"8 byte Ind I. fo11ow •• a. b. Iccord1nQly ',' - ao to eM.t It 'tep , with ~ flaG to mope to eo"'e. 'e' OP .how no c. Ictien .how CR • ao to exit et .tep , with t flea to ~o'e. t., - Dlck.1n ~ed4.-~0 UD to the f1~st th'ee I1Dhlnumeric cherlcterl e",d .tor ••• rxte",.40n in the F41e-bloc k • D4.clrd III lu~ •• aue"t a'~h8",ume~4c •• Reeeet the check. (If '*', store oct.1 ~2 1~lteed). '[' - eo~ve~t octl' ASCII dicit. ue to t~e dfvidinQ ',' Ind then those fol,ow1"0 f",to two b1l"'1e~v byte' Ind .tor. 1~ thl IJIC ,lot .'" t~e Ff1e-b'ock~ ReD~et the check. e. Litter- .ce'" fo~ the fi~.t ",ol"'l·alDh.",ume~1e. It ~hf. •• 'I', ~Ick leadi",o 'ette,s i~to rldix-~I end co"vert the diaft., if e~y, f~om '--.... octal ,ASCYI 11'1to a b1l'1a"y bYta. 4tto"e both fl'l the Ltl'l~.~lock, as Oev1ce "a~,. a"d u~1t. Ot"'e"w1Ie o."for~ .fnOle-o"ec4Ifo~ ".d1.·S~ elck4"o of uo to t~e f.r.t Il~ha~u~.,,4c ch."acte"l Il'Id store I. Fi'e"a.e f" the F1l.-block. 101'l0re fu"ther .ubleOue"t alDh.~u mertci. Recelt the eheek. .t. f. Oia1t - trelt II Itart of Fi1.·"A~8 I' .how" i" Cel above. a. '.' - .tore oCtl' ~2 11'1 Fi'e"l.e Il'Id receat the cheek. If It th~ ehec~ 4" .teD 2, "0"8 of the lilted ch.". i. .ee", ,the "ext ,leMe"t el" O"'y be I Switeh, 10 Ito"e uo to the f4rlt ,wo chl'leterl f01lowi"Q II byt.1 0" toc the steck Il'Id di.ee"d 111 IUbleQu."t 11chl"UM.,fcl. le~.r. of If the ".xt '. 0". m.r1cI, IS' It.Ck the I~d'ell of the .1' .ubl.au.~t .lchll'luor '.'. Recelt th11 It.D for I"y further VI'uel fl'lcluded il'l the Switeh, coul'lti"~ the "u.ber of .ddre •••• It.cke~. byte il fol10wf~o 1~. 'Ii, ~flclrd Otherw11. check if luff1cfe!"lt room 8X41tl 41'1 the Lf"k-b10ek SW4teh a"el for the "ew datl~ If 10, mOVe th. it.ml It.eked duri!"lG Iteps 3 , • i"to the L4I'1k-b'oek ereeed.d by I eOul'lt of the wordl moved a!"ld fo'lowed by ~ Ctf Iti" rOOM) II I Iwtteh-Ito~. QeDelt from IteD 2. If th. Lf"k-bloek Irel el""ot tlke the whol1 of thl dltl for the Olrtfcullr Iwttch, remoye lueh dltl freM the Itlck I"d let. Iw4teh overflow 1l'1dieator. ReDe.t from Itep ~ to ~OYI to the 8oec4fieat101'1 e"d. Store the Mlrker relultl from st.D 2 C. & d) el'ld steD 6 0" ~he Itack 10r re,url'l to the uler. elY. the st,1"Q co1l'1ter, "OW .howf"e the It.rt of the ".xt IDee1f4cetiol'l, 11'1 the re'.vI"t ·Curre"t Addrell" ,lot 11'1 C~DAUF. If a"y e'e~el'lt. "'eve beel'l orocel.ed It e", .~ye a"y ".w, deflult d.vie. "I •• a"d unit i" eMD8U'r ot~.rwtle Move the cre'e"t ~e fault v~lue. fl'lto the li"k-block. T.ke. "or •• ' ~Ylt.'" Exit. 0055.RNr" PAGF'S-2A CO"''''.'''tl' L'k. ft. eOUl'lt'~08~t 41'1 the CS~, th4s ~o~u" il fu'1y ,. ••• "'t~.l'It . el'ld HI ~eI4d.",e. il w4t .. out "est,..et4~u~. It Ihould be l'Ioted of eours. t"et CS~ eo"t.1"1 its own routi"es fo,. ~ed4~.e0 ~eek4"'o I",d octAl A~CII to b4"e~y co"ve,..iol'l rout4", ••• 4t ee",,,,ot .~oect to be Ibl. to us. t~~ Co"v.,..iol'l ut4l~ti" de.er4b.d 41'1 s.et~o" ~.~ 8i"'ce th ••• M'V el10 ", •• d t~. 5"'10 Buff'''. T~. Me",it~,. off~r' two M.thodl ry whiCh • o~o~re~ CA" be u"loed.d fro", ",.",o~y whe", 4t hes •• ryed ttl ouroosel ". I. The cOl'l101e k'Yboe~d ~rLL co~",and b. Th. o,.oo,.e'" s.,.y4ee reau •• t .E~IT (E~T 6~' 4" feet eff.et4v.'v ~e.ult 4" I ce" to the la"'. MD"itor ",odul. d4IcuI •• d 41'1 t~1s •• ctfo". Tts ou~oose •• ",.r.'y to ect al • lo.d.~ fo,. • t"l",s1e"t ~o",ito,. sect4o" whieh occuD4 •• ~.~o~v wh,"'eve~ there ts "0 l~e~ed user ~"o ,,..'" • ,1,.,edY "'.~tio".d in .ectio" e.l I"d to~. ~ese"ib.d 4'" d.tei, 4'" l.ct40n 8.~. lot~ ~.t~od' C,"4"'Q Seau.",c •• Th. ca,l11'10 I.au.",ce for ~he WIT Modu'e reau1~es 1'10 t.,.., the EMT 6~ i"st~uction elo"e .uff4cp •• ol~a~e '."e,.I' D•• c~.pt40nl of U.4",g it. ow", 4"'t.r"'ll 008 a"e en .,.e. o",ce-o"'v cod. 4", 4t •• ,f e • • buffer, th! rout.",e reeds the fi".t two ent"ies frOlll the d1~eetorY of the Mo"4tor L1b"a~v 0" the IY.t.~-dey.ce. A. shOW'" i" •• ctio", 8.2, t~. fi"st P"t"y ~. ,et •• to t~e o'''~I"."tlY " ••• de"t ~o"itor 4tsel f e",~ •• used for ~ •• ,0Id11'10. T..... eeo"d ~l'It~v r.cOrds th~ Iystem-rlAv4ce ,oc.tio" of t~. tre"lie"t Monitor sectio". Th. for~ of t~e .ntrv WA, Ihow" 'Ir'.e~ 4", f1ou". 1*** Th. XIT ",edu,e ,. ••• t. itl 1",te,."e' 008 fro~ the data 4" th4s ."t~v f" e~~.~ to r.ad 4", the t"l",s.ent spcti~l'I. The MAmory .r.a t~41 us., i. r.lec.tabl. to the uooer '"d of evai'lb. eo", ,. Ihow" by CSA 4" the SYT (lee s~ct40", 2.1.1) o"ov4ded thlt 4t 41 correctly '4"ked t~ a to~ Of 174~e Clee sect4o", 8.1). ~IT II'U~" thi. e",d comout •• both t"e 10ld ooi",t 8"d oose.~Nn ~.auelt1"Q the ~eed, how@ve~, th~ ~0~t4"e weit. fo~ a"v cu~~e"t 110 to come1ete .1"ee t~e~@ 4s no ~est~4ct40" th.t the ule~ mUlt close And ~e'e4se all det •• ets b@fo~e the .XIT. The, weit 1~ ac~0~~~1Ihed by a ~ece.t8d I.e,.ch "0"0 the DDS chei" . f~om 1tl 0,101" at Den 1" t~e SVT (lee lection 3.1.2.3' until "0 ~UIV It.tes a~e lee n • . T~e ~,at"l 1, th." c,"ed. A"v f.11u~e in th11 o~ 1" the ee~14e~ '1b~a"V directo,v ~ •• d ~elults 4" t~e ultimate e~~e~ - the SYltem B.fo~8 . M.'t. E.h St.te. O~ l.t1,fact~~v comclet.o", XIT ~.ceI4t.O"I.t~e Itack immedi.t.'v be'ow the load.d t~a"s1ent ~onitor .e~t40" a"d t'."lfeel control to th41 .ectto" with ~he 'w.~ Ruffe,. "e' •••• d fo~ 4tl ule. The tr'"lte"t sect40n 1. t~.n ~e.cons4b1. fe~ cleenina-uo .ft.~ the D,.oo~am, in Da~t1eu"~ enlU,.4"0 th!t anv dat'letl Itill Ooe" ~re co,.reetlv ele.ed with .11 buffe~1 ~ele •• ed .nd th.t the norm.l ~o"1to,. states are relto~.~. To "Itlt t" thel. ece~.t.O"I, XIT tr.nsm1ts the fo,'owi n o vel.d ~.Q.lt.,. co"tentl' RB • • ddr.s. 01 cree"lo~ ~t.tUI Reot.ter (o~ -2) • 'dd~e'l of DCO 1n t~e SVT (lee Sect40n 2.1.1) ~5 Pfloc.i,ina. Th. f~~,oo."Q_dflcull.O" aive. luff1c1e"t out,ine of the ODe~.t.onl Derfo,.~ed bv XIT. F1au~e 5-13 .howl thea. 1n more d.tl.'. Comm.ntl. B~ itl, ~ature, thfl mOdula "~ed not be _r~.e"tr.nt. It is not. of COU"le, beceuse of.the use of 4"te,.na'.wo~ksoaee. In th,o~v, it ce" be m.d. "11de"t, though 11"C8 it t. uled rel.t1vr-1Y leldomlv, there seems 'ttt'e poi"t in .ts be1nQ ",.de 10. '-.- . lito.,..,.. x"'...... t.o"l> ZS S&S\oeHCl! 01' ~ at.HAC1 ....OCQ .... -ou.ews :- -----._._-.,. OJ T T, (6%rUUtV m~~ (Ii.) 8"fT'£ COUNT" St..Oc.,< L.O~ll- POJ:NT • . I ~ WO«t6To~a7r P~Am ' t...C>f\l> rOINT ----, 14 b I f; ItJ , 2'/ ----~ I S"Tf\R\ f\'bJ)R ~if.II4I~ q I AQSow.nE:. lQ.f!J..OCA~ -t .-0IJr-11~ I ') 'l. ----,• 1~ I I I I '\ PR~F\ri) NfltmE:. (eact;",~ - , ~6To~1 ~ lilt ~~ moj)O\..£~ .1'b SE R£s.1>&rr.' W,'TH p~~ ') 0 ,I ._ I \ (emT CA~ COl)E.~----- i Y ~ I I I CHEC"'50("f"\ I ~ -----i ..----- ~ ....\,)"E. as c-. on\~ I, a.dm,e&;lMa Q)CkrlAA.'t' I'I'I~) &"f'TE.. couNT" (NQ\&L.OC.K I-O~];)-PO:r:N\ -~--- --'.---~- c.ot.(seco"T'X.VE I •I ~ ko.d.po;~ I I s,ven ~ I I _____ .... JI ------I , -'-~.~. [ftWc~ Ci>~ wanS~ --.~-~"- .- ,.--" S·" ---~ DA~-~ ....-,, ~.,..,... -.-~ PC2o~ I - ~1'W'C'1 '5r2lii: (.n ~~ f'ROGRAnl STAR:i" PI»J)R. '-" 7 If:: y - -- - ./ as (~\( tl)oJ)E.1 " 8"ITE couNT PR~ACY) .. cb srRRT r ~~. CHE,CKSUI'I) MotUtNtn a...oA~ Xft)~£ oa.,..~ ~ ";bt (L%.M\(.,~ , "I Pa" P'to~ (.f..'-r r-31 Lo~J> ope~AT'ONS .I"'~IQ.' Act-.on ." T~ r.......Je&tJ) ~'D '-'.;..JI._~ Gott. ~CI( '~s."6iS p~ orCCf\~ "J>..,,:;;___ ~ COl'" Pl....£1E. Wof'l.l) r~ ... o~ "T". Po .. c.to\EC.IG~ J PItOClAAm &....aF6> O"~T~ SoC.T" &'I c.o< IlE:Gt$~ ~~a ""--___ j£ ( ..... ~ ..,o~ ~~ P~EX 16C'lo«.c:: 'l 1\J~r{ S~~ ~ jl£1\.l C!:7."nl Fo~ ~e 'Ni)£,)( uT.6-'V ~\~ ~G4T O(.FsE\ ,"'1"0 :s.<'. ~OUTINE. C.&Sty ~'i~ TO~~ 0"- IIZ>- PClV'(~ c.crfs,ilI~· c .S.zDC C.RPK SG..T COu~" FoR '3 S'f1€5 5~, ~I£T" c.oN~L... ~~ c.ov!'o,(7 l>1G-Ir SR~ C.RP.a=:. c.It.uP;q s~~~ y~1-J..lE. (S~ s.-ACl< ~\ 3/11. o!'" !fA t--r-. ~e;~ ~'(s1f4Ai-. "-0 III <0 CLEAR. ~I-.I I4R6v"l ~~ "'RocY) ~ ~~~--~) HOG> Po •..nER ....-+1 ~T Ir4V~l...i:> e.YlE • .,C>,;)~ PclfoCli!R ~-~ 0('( :5t'I'Ic..Kt----i.. ~ UitJI('o( \"C) ~R t~~~ w~ e,~er sre-,nS It";t (.\. Sepo.(Q.Y"~ b~ cofYlt1lo.s Item Wnich Last Appeared blank 1 , DEV: FILNAM • EXT UIC /SWITCH < 5etl~ '-'nd ofl o'le. of" rno('e,. daraSeY' ~pec~"'cn.r,c~ 0" t'he. ~~';CL' "C)("r{)'- Item Immediately Following , DEV: FILNAM • EXT UIC /SWITCH < Terminator * * * * * * * * * * E E E E E * * * E E E E E E E * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * E E E E E E * Legend: E indicates error. * indicates legal. Note: 1 The next item encountered is the first item in the command string. - F.j":""Q. S -«0' Locnrna.od Sn··'()3 S~"ro..)l R'-.j\e.co _ E E c.t;.l: wo~"'sPAcE. I I I I I I I='tcaure. 5"-7: , I I Uf(E. ~A!A I .______ _ I eommArQ> ~~ 'l:ftPUT S04=FER L.. _ _ _ _ _ _ , 'II , .l:HP\.f\ / O~dT" co.i>E CoAREC"lr ~pu, AJ>~e95 Cu~ OU"t11Jr" A»l>~ CU~~ENr cu~ Ir4PUT l>€FAO\...' 3>E.~ o.>1'PaJr ~T »£-a:cs:. cuRAeNT :rrtPUT l>EF'AU~ \JrQ:.' C \J ~e.rrr olJli) UT l>E.~ ....T lJrtt\ lYl~xl:mOC(\ STFrruS I "-XNe srze mol>€.. - . I I I I I I CotOroFltoJ:i> S1'RING- S"'N~X ~f1L..'fSI~5-3'" (,()A I"'~E.A«') : GLSIM , ..PuT" &wl'1eH. acr~ ~·9 e~ sw:r ot<. $W~" W"," ~'M ... 'It) ""'Ilk. cHAIt Po« ~~ SU6SIl>\A~'1 ROUT\NES: C6J) c.,"£I'l~ >-r---.----{V ~ 1»1&1'" eoU..cT --] c:.oU""" j)1&1~ -~-(:~\S~) ~t+e:c~ ~-~ y ,--:ser'.. 1 &C!eN ~Wln:.~ --~~ A»])e6ee. Ot: ~c:~~ Al>M£s:s ot= USeA A»*tb& or: ERR~ a..1,(lC·6~ * oF w0RJ:6 TO ~E:\URN A»:)Q.€SS ... ____ J t-06-ICAL r(AmE S=Ou...ow c)( 1>Evrc:e.. , 1 ))£-l.Lc.E: "NJ.' I NA 1Ut9S - ----, USM ~\.£~ ¢ »A~ I- J- 'at ./ C""'R~: "01.,.. - - M ~ T y 1 . C::'S.ar& 5-": SWXTC.M '»1\_ Xtf TtI£ \)s&a U"IC - &.,ocK J>E.CODING. CIn~~L-_ O~i> F'u~ L..~ /i>IGrI~ COcf'lP~ ~~eu£ ~CZI"~ v.qs c $~ I"'~~ 8u~ ~S I'" ~~e. St'\-ce '-...., S~, S'l' ~.r(~ CHECK I'" ,:).)6 5,",,11'0\ S€I S'tS~ ~IVt:R ~ IN~ SE,\O ><.G£i" x.~ ~I~ 4'Q,IC~I~ ~--!.. a. f;~ vP;:$~ 8~ - - - -......... 'To CHAPTER 6 KEY BOA. R D SERVICES •• its 8eeo~d ~eJo~ funetion, t~e DOS ~on1tor ewi.tl to e~. ab'e t~e ule~ to eont~o' t~e 0~erat40"a of t~e 'Ylt.~ t~~ouo~ t~e console K@yboard. T~u. C~e~ter J of t~p. P~o gra~~e~. Handbook deaeribel va~ioul eo~~anda w~1e~ can be ."ter8d.w~e~eve~ t~e Monitor is '.ate~1ng Itete, be. ceu •• _e4t~e~ ~o p~oora~ is un~e~ execut10n or aue~ atate ~el bee~ fo~eed bv • orior entry of CTRL/C, T~e eo~~~nd. per~it t~e 'oadine, .t.rti~g, Itop~4n9 and unloe~ing of oroQra~., t~e a"ocation 01 re.eu~caa and t~e e.c~enge of 4nio~m8t10" between t~e o~e~eto~ end t~e aYlte~. T~. object of t~ia c~apter 4. to i"ultrate t~e ~roeel'" by w~ie~ t~e.e com~and. b.eo~e effeetive, i". Section 6.1 reviews t~e general p~f'o.oc~v of t~e eo~mand ~aneuaae a~d Saetion ~,2 de8e~4be. t~e oraanization of t~. modu'e.w~1e~ go to fer~ it. It wi" be I~ewn t~at ~o,t com~and,p~11 initially t~r~ue~ a eOm~on In~e~~reter w~1e~ ia ~ade u~ of t~ree modulea di,culaed 1n Sect10~ e,3, t~e,. com~and. a~e t~en ind1vidua"y proee"ed bv ~outinea eonlidered in lome detai' fn Section e.4. Section 6,5 covers t~e remaining co~manda w~ic~ e~e ~andled by • speCie' transient Monitor lection w~ie~ oceu~1e. co~e w~enever no progra~ 11 actua"y 'oaded. T~e e~terna' operator i~t~rfece il a'r.ad~ fu"Y. exela4ned Handbook. I~ t~ia c~aPter t~.refore, t~ia informa· t~on apoeara again on1Y.to t~, extent t~at 4t ~a ~.ee.~arY for t~e und.r.tandin~ of t~e interna' work1n~l. In part1eu'e~ t~e convent40nl fer com~a~d f~r~ata are ,isted at t~e Itart of e~apter 3~ T~ey are used ~era wit~out furt~er reference. It il .1so al.ume~ t~.t t~e reed.~ 11 famil1ar w4t~ t~e I~ec~a' .1gnif1cance afforded certein keyboard c~ar.eters w1t~1n t~e laneuage. 1n t~e DOS6.~N" PAGE T~e ~u~eo.e of t~i. a~d UI8Q~ of t"e uoo~ t"~ u~de~'vi"Q I~ctio~ ~eybo~~d er 4s to .um~arize CO~~8~d La~gua~e 4"cioles i~vo'v~d, . b-2 t~e Itrueture a"d to eo~~e"t . A. ~oted iM t"e i~t~oductio", a co~~a"d ca" be .~~ut w"e"aver. t"e .~OM.to~ fl in a oOlitio" to aec~~t sue~ i"~ut. T~il 41 indicated to t"e o~e~eto~ by t"e out~ut of on~ of t~e fo"owinQ c"a~acterl at t~e conso'e tv~ew~4terl t, , - t"is siQnifiel t~at t~e ~o~ito~ _a'~eadv ~al ~vera" ~O"t~o~ of t~e .v.te~ a"d ~eou4~e. ooe~ato~ fnltruetio~1 for ftl Me.t action, T~is f~o'ie. o~e of t~e fo"owi~g .ituationsl c, • runnfno ~rog~a~ ~a. bee~ .u.oe~ded! e4the~ beeaule o~ .ome ooerator reouest o~ fo"ow4no t~e detection of lome er~o~ co"rl1t10~ w~ic~ needl o~erator i~tervent40n. Clee C~eote~ " ~ • t~41 ~otif4el t~e ooe~eto~ of t~e aeceot.~ce of ~11 e"t~v of CTRl/C .1 t~e mee~1 of fo~e4~o t~e Monitor to '4ste~, eve" thoUQ~ t~e .ys~em il u~der orog~am eo~t~o', COM~AND [Aroume"t Strino]CR w~ere."COM~A~O" is a sing'e word ide"t414er of w"4ek o~lv be e"tar~d and "AroUment St~i~c", 4f or ~ore .~Qu~e~tl seoa~ated by .~eces lor eomma.' deoe"di~~ u~o~ t"e nature of tke oart4eu'ar com~and, Ao.~t f~o~ t~e ohvioUI advantage t~at t"4s format i'lt.ndard, it was .1so d~emed ~ore .~v4Iab'e t~.n one Ulf"Q loee4.1 CTRL e~aracterl for lo~e eo~m.ndl, for t~e followi~Q relsonss t~e f4~lt two letta~s_~ee~ a~v, ~av consist of o"e III, b, T"e unioue 4rle~tifie8t10n of a co~~and on t"e b.s;s of two 'etters offers.a wider ran~e of variations I"d ~enee is ~ore likely to be mneI t ; . envisaoed t~at device. under dave'oome~t •• eonsole tarmina's fo~ P~P-lt m.v not a" kave t~e full CT~L e~a~aeter fac.'.tv. !,aGE b- 3 DOS6.RNn e. It i. ~eed.1Y co •• ib'e to f~cut 8 84"0" eha~· 8ct.r i~co~~.ct'v with c.~~.c, d •••• t~ous 'e· sU'tl (de.cite t~e "eed to decresl the CTRL keY, '4~ce th4. C.~ be do~e mi.t.ke~'y fo~ SHIFT). On the eth., h."d, of COU~le, tke com~.~d bei"Q ,o~a.~ t.kel Mo~e tim. to key i". rt i. u"r •• ,4.tfe that • ~un~f~p D'O· .~.~ Iheuld b. 'ulcen~ed 1u~f~g the who'e of thi' ce~fo~_ •• wel' ., th.t "eeded to eff.ct the deli~ed relult. The~efe~. no eomm.nd 4, •• a~1".d until the t.r~.".' c~~~ •• ~e ,.tu~" (~R) .i' det,eted • . P~.~r t~ thi., the ope~.tor c." ch'"Qe hi. mind ., often •••• n.ce ••• ~y o~ c.~ eer~eet h4. ~ ••• t.k... ."d f" the me."tfme, ,"y Droor.m e.~ eo~ti~u. it. norm.' e •• eut.o~. How.ver, o~ce the eo~m.nd ~ •• bee" ful'y ent.red. "0 fu~th.r f~put i. eec.cted u~t41 it ~ •• be.n eem. Dl.t.ly c,oe ••• ed. ,f"."y it 4. the 1~tent10n th.t a"v com~e~d, whfeh doe. "et .t •• ,~ im~1Y .om. r,.trjctfQn u~o" ft. u••• e t'uch •• KILL. ~~oar.m w~~" ~he,e f. non, in eo~. to be ki',.d" .hou1d •• f.r a. co •• ib'. be av.ilab'e to the u •• r at a" t4~ •• ~ •• •• rdle •• ef the Q.".r., .• t.tu. of th • • Y.te~ •. Thf. raf.e. two p'0~1,m., the ,olution to whiCh wi" b. d4'eu.,ed f" the ne.t ,.ctfo~1 Th. ~onftor ~u.t h.ve aee." to. d~iv" for the eon,ol. ter~i"., .ve~ thou~h the e~e.~.~ 4" eor. do" not •• D.et tlO from th4 • • , • d.yic., Th. c~oee •• f". of a eo~m.~d e.""ot be ca~r.ed out 4" the "or M,' Swap Buffe' wh.n this Mie~t be alrea· dy f~ u,~ by ,o~. otker Mo~.tOr rout4ne .erviefno a ru~~ine croQ~'~ ~.au •• t. Mo~.ove~, .u!"l.,s the eo",m.and h"'f_eh.~g'l tke .t'fu" ~~~~i~Q noth4~Q mUlt had heDo."ed. crogr.~ conti~ue afte~ 8~y it. exeeut40" ., 4f eefo~e t~, command e~oce •• o~. t~a~.elve' are •• ami~ad, ove~a" f~te~~al .t~uctura bv whfe~ they are cont~o11ed Qui~,. exola~lt.o". A. noted 4~ t~e last .ectio~, t~. the ra- MO"._ tor mu.t, .4" effact, be able to lece~t a command at a"y tfm. I~d the oeerat4o" ~eQue.t.d mu.t ba clrried out tra"~arent'y to ,t~1 oroQ~am currently occuey.n~ m,mory. Sectfo". 8,2.1 throueh 6,2 ••.• how how thi. f • • ceo~~1f.h.d u"d~~ the four ma.~ ~.ad.na.1 lact4o" 6.2~S t~a" d~.cu •• a. co"vantfon. u.ed t~pouahout the norma' ~~eca •• i"Q of the 'a"Quaaa. It .hould b. "oted, hewev'~, that t~. oroc ••••• de.crfbed 4" thil Seet40n do "ot a~Dlv to command. whfeh by thafr natura do "ot ~ave t~e oroblem of a runnfna ~roorlm to eO"lfd.r, baelu.. "o"a ca" be loadad whan thay ar. us.d, f.a., RUN, GET, a~d FINISH. Th •• a eomm.~d, are handl.d by the tr.",f.~t M9n4tor ,actf~" ."d •• m.~t.oned ." the f"troduetfo" are de'cr4bed f" Seet4o" 8.5. 6.2.1 Command ~ Ace'D~~.~ ee.4cllly, to t~a ~on.tor e.oectf"o e eomme"d • . t~e eo",01e tarm4"a' f. an i"out device wfth • ~urely .ublfdfery OUtDut flcfl.tv a. I melnl of ec~o4~a the eh'racte~. ,"tered. To I r~"n4no o~oorlm, how'v'~, t~, eon.ole .ter~f"e~ dev4ce wfth mutUllly fndeoe~de~t f~out ,nd out out flc414t4,., but w.t~ the echo reauireme~t a~ added comp,4catfo". Furthtr~o~e, if t~, oarticuler co".ole device 41 the currentlv standerd ASR-ll Teletyee, there •• el.o the ~ao.r~teoe eauiement wh~ch agei" ~." ft. u.a~e n@ed hive "0 re'at40~.hfo to t~e keyboard/tyoewrfter. A, a relu't, t~e norma' driver wh4eh cater. for the full rA"ae of the eO"lo', term.na" feci'ft.e •• , nece •• lr4ly .omewhat 'a~Qe a~d 4t ., e,pec4lllv 4moortant that no erooram 'hould pay t~e oe"a'ty for ft. o~e.e"ce in co~e un'", ft ., aetuI"v reau1red. I" othe~. we~~., th4, d~fver .hculd be ~o differe"t from tho., fo~ other d,vfca' wh4c~ a~e loaded f" re.~onse to .J~IT and un'oad,d by .RLSE I . d"crfbed 4" Sect4o~ l.2~1. ;'.1 '-~ PAGE' b-~ Neve~t~@1e •• , t~e Mc"itor ~u.t ~Ive Ieee •• to 8 dr.ve~ of It III t~~el' ~elc~te the Dr~O~'~1 "eedl, Sueh dr1ve~ ~I" be ~o~e 11~1ted 1" 1t. leODe ."d "eed be f"t.r~u~t-rlrive" O"'y. However, If"ee '"V kevb~'rd 4"Dut mUlt 4"1t1."y be eo",idered I oote"till e~~~I~d, thfl drfve~ ~u.t e"I"'f"e every ehe~leter ."te~ed f" else it Ih~uld hiDpe" to he t~e CT~L/C "eeded to "'Ike the Me".t~r 'flte", Moreoyer, I"y e~.rleter out~ut ~fo~t be t~. eeho of_I e~m. ",I"d 1"out. T~e f1~st Ol~t of t~f. d~fver fl th.refor. I mcdul. w.t~f" the oe~me"e"tly resfd."t ~o"fta~, II "oted f" t~e f~troduet~o" to Chlot.r 2. Th4. module ~"te~e.ptl 11' cO"lole_ t.r~i"e' i"terrupt. I"d the" co""ect. these locrop~1Ite'y either to the re~11"der of the Soeef,' Drfv.r or to t~e f~l' dr~ver if th~1 fl ~" e~~e It the ',~vfce of the ,~ Ided o~oQre"" T~lt t~f. IIIodule "eed be resfde"t r.e"v 00 •• wit~out 'Iv1"o 1" v •• w of t~e •• ce •• tve ov.rheld eth.~w4Ie ~"curred et eleh eo"~ole ~"t.rruDt, Ic~e I~rt 0" the ether he"o, the re.t of the Mo"4tor. dr4ver o"'V "eed. to be 1" eo~e for the tfllle tlke" bv the ~perltor t~ e"te~ I ee"'~I"d, U"fortu"ltely, thouOh, ft ee""ot b. lOlded bv the u.ull IIIethod fo~ drfverl for the fotlowf"o rel'O"I' I, The "O~~lt'y "o"-relide"t ,INIT 11 ~eeded I"d thf. 1. "ot "eee"lrilv Ivefll~'e .f"ee the Swao Buffer ",faht a'reldv b. oeeuc4ed by lome ot~er module lervfef"o I DrOarl~ recu'lt, II "oted It the e"d of Seet~o" e,l, The dr.ve~ itle,f would oceuov I buffer c'lf~ed f~om free core th~oua~ the ~o"fto~ .ub-rout4"e !,GTB whfch WI. Ihow" 4" Seetfo" 2,',3 to be "ot re-e"tre"t I"d whiCh 11.0 ~feht be f" u.e 0" the proerlm. ~e~llf, A" e'tlr"et~ve "'ethod hi. b.e" edopted t~e~.fore, the ~o"f. tor dr4ver •• 1" flet I module ell'ed by its OW" fMT (31), ~e"ce it •• lOlded by the "or~ll or~ee •• e. of Sl~ f"to the .ub.1d1erv Swep buffer re.erved for the keyboerd eO"''''I"d u.loe I. eut,4"ed f" Seet~o" 2,3,1. I" orde~ to I"ow I ru"~f"o Dro~ra", to D~oeee~ 8' .tioullted f" Seet40~ e,l, the eC"''''I"d it.elf ",u.t be buffered u"t1' ft f' eO lll o'etely f"cut I"d e~h~e~. The "ee •••• ry Ir.1 for t~;. CI""ot be provided withi" the KSB fo~, el wit' be Ihow" f" the fotlowi"a .eetfo"., this i. uled by the other eO~"'I"d moaute.~ ~oreover for the .eme ree.o" es that otve" Ibov., the us. oi ire~ eo~e ~. out oi the aue.ti~", ~e"ee the eo~ ml"d .tored by the d~ive~ with." the aree I"oelted to .tlpe~"'e"e"tlv ~elide"t 4"tereeotor oo~t40~ d4seuised ee~,4er, The reau't4no u.e ef ~emery dur4"o eO"''''I~d aeeecta"ee 4l1ultrlted at fioure 8-1(e). It .hould be "oted t~.t i" the 4"tere.t of ~eec4"a the resfde"t buffer arel to e ~f"i- .8 '-~ .1 PAGE b-& DOS6.RNr'I . MUM, 4t f. "ot Do •• ib" to .110w m~~e t~.~ o"e eO~M."d i"DUt .t • tim.. Me"c'.1 '00" ••• comD,.t •. com~.~d h•• bee" ."te~.d, the keyboa~d i~te~~UDt f.cility f. di.abled u"til the ••• cutio" of th.t com~."d h•• b.e" co mDlet.,v effeet.d. Me 2 CO"'M."itJ2.codJ~L O"e. ~h. SD'C~" O~~ye~ ,h, ••• ~v.d ~t. DU~Dole of coll.ct."~ ." 'DD~oD~ •• te ~outi~. mUlt b. ce".d to Ie,. Thi. routi"e ~u.t .1.0 u.. the .ub •• di.~y KSB. How.Y.~, i" MO.t c ••••• e.ch of the cu~~."t'v 4mDl.me"t.d com"""dl ~.ouf~ ••• M".U~' of o~oc •• ~f"Q fO~ .which the whol. of the 128-wo~d .D.C • • 110c.ted to the K8~ tl t.k." UD ••• ",4"f"'um. Thu ••• ch comm."d "eed. ttl ow~ f"dfyidu.l P~oc •••• MOdul., a"d which modul. t~t. t. Mult b. deter. Mt".d f~o'" the comma"d cod. .~t!r.d. Me~c., ~he drty., c." • • " l"t'~D~.t.~ whfc~ .att.ft •• thi. fu"ctto" a"d th." D~oYfde. fo~ the ".c •••• ~y c.,1 to t~. Module ~.out~ed. t~. ~o"'me"d, ytc •• t. "O ".0 Th. ff,.t of the •• ~De~.t.O"1 f. ,.,.ttv.'V 1.",01e to aeco",pltlh ."d ".tu~.11Y 4"clud ••• ch.ck 0" the y.,idity of the cod •• Mow.ve~, the .ubl.ou."t c'" ~.f ••• a p~ob'.",. The %"t.~D~.t.~ tt •• lf, fo~ .tmDltctty, c." b• • "d t • • ,10c.t.d ttl O~",E~T cod. and the d~fye~ u, •• this ... ,ft. m•• ", of t""lf.~~f"a co"t~01. How.v.r, ft t. "ot f •••• bl. th.t ev.ry 1."01. co",,,,."d ~out." • • hould .b.o~b fu~t~e~ U"tou. !MT cod •• , D.~ttcu1.~ly wh." .ddft~o".' cOm",."d. mey b.co",e " •• e •••• ~v •• the Mo"1to~ •• d.v.'oD.d fu,th.,. The .~lut.o" •• the u •• of t~ • • D.cf., ."t~y f"to SAM d'lc~fb.d t" S.c. t40" 2.3.2. Thi. w••• how" to ."ow the c.,lf"Q ef •• v.,al mOdule. bv • • f"Ql. cod. th~ouQh the fol'ewf"a •• ou."c., Set R0 to .how t~ • • v.t.m-d.vte. add~... a"d .fr. of the f"dfv4du.' modul. f" ~RT format c••• a.cttO" 2.1.2). e.l, EMT 30 (fer KSB u•• o.,. Thf. ~.e"., of cour •• , th.t the l"t.rD~.t.r "'ult b• • bl. to IUPDlv the "ece ••• ~v f"fo,,,,.tio" for Ra 0" t~. b •••• ot the com~."d code. Fo, th4. DU~DO.', • dfr.ctly Icc ••• tbl. t"d •• to the ,oeltio". of the modu' •• wttht" t~ • • y.t.~ lf~~.~v MUlt b• • v.fl.ble, for. co",pl.t •••• rc h of the whole lib~.· ~y .t •• ch co"'",.nd •• out of the ou •• ttO". Hewev.~, the •• t.blilh",,"t of .uch 1"de. i • • fu~th.' erobl."" w~." t" the "orm.] w.y, Monito~ ~odule. c." b• • to,.d ."vwh',e with4" the Lib~.'y I"d i" additto" t~. v.~Yf"a block Ifl.1 ~f the pot."ti., .y.te",-dav4c,. "ottd f" S.ctfo" mu.t b. t.k." t"to 'CCOU"t. Mo~eover, •• imD'fed .bOv., I'Y.~ll of the CO~MI~d erece •• o~. th.~ •• lv •• ~.v. the le~. D~ob'e~ beeeul. th.v " •• d te ~v,~,.v th.m,,'vel t" o~d.~ to .ece~~l •• h thet, 4.' PAGE ~-, D086.RNn fu"ct~o~.. Cu".~tlv,. t~.,.fo,., the ind.~ I"d the co~,e. ~o"di"a_module .to~'Ge on t~ • • v.t.~ d.vice is p'e~a~.~ ~.~t ot the •••• mblv ."d '."kinQ of the r~te~p~ete, I"rl IU~Do~t."O commlnd modul •••• fellow •• t• ,. the E.ch medul. t. co"dftie"llly •••• mbled wit~, .eco"d.,v D.~,m.t.~ 4"Dut whfc~ i. bl'ld UCO" the .nt.nded sv.t.m-d.vfc. ( •• e S.ct40" ~.t.t). .~e l4~k.d teQet~e~ 4nto 0"' , eed ~ ,"Que"c. f4~.d bv th.t ef the i"d,x. All the modu'" mo~ul. i" Thf. th." D~ov4de. the co".ct d.t •• , of t~. ~"I. tty. Do.itto" of •• ch comm.nd P'oc.s,o~ wit ... " the cOmpl.t. block ( •• e S.ctio" 8.t.~). Th. tnde. ft •• ,f c." Dot."tf.'1y b. too l~~oe f9~ f"clusfon the t"t.,D,.t., modul.. To ov.~come thi., the 4"de. b. ,.om.nt.ri .c~o •••• v.~., rlevtce block' immedtately followinG the Inte~D,ete~ in the L.b~.~y, The oene,.1 OD'~ • • t~o"i e.'~ d out bv the I~te,~~et" c.n b, 'u mm .,4z.d •• fo"ow. (, •• S.ctio" 6.3.3 fo, fu'th., det.i". wfth.~ c." •• Ch'ck wh.th.~ the ,.eu@.t.d commend ., o"e whtCh t, c~oce.'.d by .n emb.dded ~out4"e • becau, • • fl4~ly imm.dt.t. , •• oon,. 4. ".,ded (4 •• , CO~TINUE, WAIT, STOP), If ,0 eo te 4t. Oth.'wf,. u,' the .~ •• occu~i.d by the,e embedded ~o~tfn.' •• , buff.~ into whfch the 'PD~eD~4.t. block of the tnd •• c." be ~"d, then f~om the e"t~y eo~,e'De"d.ne to the ~eeu4'ed co~m.n~, .et ~~ .nd c'" the ~.'ev.nt ~outi"e by EMT 3~, Th • • ffect of th ••• oc.~.t4on. 0" KSB u.eee at ,tou" 6-1(b'. 1, il1u.t~.t.d 0.2.3 . CO"'l".~_d P ~ec.,. t.!"L It w•• ,hew" in t'" c,.viou. ,.etio" thlt, ,o.~t f,om the th~.. comm."d, ~.v4"O ~outfne • • "'bedded within t~. t"te~. ~,.t.~ tho.e "D.ctlllv hendled bv the t~e~ •• ent ~e"4. to" .1,_ othe, co~m,"~' hIve co~~e'Dondj"O u"~eu •. module •• It ., t~.i~ ~e.co",ibil.tv ft"tlv to ve~tfv Ind D,eeea~ t~e '~Gument at,4"; within the co"'ma"~ .nd then to ee"y out the oc.~.to'. ~eeui~.~.nt' e"rl D~ev4d. the .pc,eD~iat' ~etu~n to the 'Unni"o C~OQ~.m if ".,d be. ."ri I" e.".~.', the I,gume"t • • ~e ."te~ed in .o~e fo~",.t u"de,. Ita"dlbl. to the OD.,.tO~. Thi, me.". that co~ve, •• o" f"to m.ch4n, cede i. "ee •••• 'y i" ,,1 ca.e.. ~"e. Ige4", the D,oc.s.4ne rout in, mu.t e, •• ume th.t t~e nor"," Swac Buffe, PAGE b,-a fl r"ot avaneb'e fol" ecee •• f"to the MO"itOI" IJt4Htv 'ae1Htfes deler4bed 1" C~aote~ 5 u"'e,. th1 • • • • eeefffeel'v allowed bv t~e ,vst,m-.tete et whfeh the eo~ma"~ ear" be Qfve". ~e"ee. ~ost I"outf"e. co"taf" thef~ Ow" embedd~d ce"ve~ •• o" fu"ctio"s. T~e e~ount of ol"oe ••• 4no ".aded to .xecute the eomme"d obvfou.'v rletel"m1"e. the fe!"m of .eeh medule. I" .ome ea.e., the w~01e o~e~et1o" ean b. eomoleterl wft~f" e If"01. ~SB fre~e, .f" .otherl howeve,. th~' ., ~moo~'~bJe~ A'e ,.e,ult, oveI"1-v~no f' nece,.e"v e"d t~e.o~oe ••• f"o f. "etul"al1v dered te a"ow a sf~o1e ,e~ue"e1n~ of the ove~18v', •• Show" 4n F1ou~e 6-1(c), I"eth.~ then pAl"tfel ,ub.tftutfo". ~."ce each .ove~1av ce" be ca"ed ~Y the lame soeeiel ~A~ entl"Y techn1Que u.ed to fetch the medul. f"ftfel1v, T" eeeh ee.e, the .vate~-rlevfe. 10cet40" of the "ext eve,.'ev •• detel"~f"ed on the ~.sumpt1on thlt th~ ~omo1ete ,et oecuo~e. ~ume~feel1v cont1ououl .bloeks I. ~I"ovtded.bv the e •• e~b'vl'1nieoe o~o ce •• "oted 1n the ol"evfou ••• ctto". 0,.- hi." Co"'me~c1~ leaf'l'WP- The fol"~ of the e_tt tlke" by the com"'e"d o~oeel.el" dec.nd. UDOr" the, f!o"',"."~ U.e1 f, SOllIe ee",me"d., of, eOUI"", flll"'Y thet eny Drog"e'" co •• tblv I"un~fng when the ODel"e~O~ t"te,.vened 4. "ot to be I",ce"ed fn the nOI"",el Wly, e.o. B£GtN, RESTA~T, ~ILL, OOT. In th.tl" c ••• , the ol"oees'ol'" 'I"e I"e •• pon,1h1e fol" e,t.b, •• hfno the cOI"I".et ",.chf"e-.tete befOl"e they '.ave. In "'ll"ttcull", the DI"Cee •• el"-.tlek end Reof.tel'" "'uat be eOl"l"ectlv .et fol" the cp.retio", te follow. I" .11 ethel" c •••• , howevel", the 01"404"al .t.te mu.t be I"e.tor.~. MOl"eovel", fol" .nv co~mend e"tel"ed thel"e 4•• 1w.v' the DOlafbf'ftv that, due to .o"'e el"l"ol" 1" Sy"t •• , tf/lle of .ntl"v 01" el"~u/llent 4nvel1dtty, the eoel"etel"s I"eeueat IIIUst be l"eJ~ete~. To orovtde e comlllon r.tUl"n to "0I"m81, the Soec.al Dl"1ve" ",odule out14"ed ~n Sectfo" 6.2.1 fs ~eeelled to the kSe with aODroo,.fete Iwitehe. aet, e • • hown f" the "ext aect40n. Th1I •• th." I"eloon.fb'. fol" cl"fntf"o I"V '1"1"01" "'e •• • ege. I"~Qu4red and, ff "eee •• aI"V, the S neerled to .how thlt the IVlte'" eo"tf"ue, 4r" I Monitol" , •• te"f"Q .tlte. The d~fyel" ",odu1e oerforlll' the te~"'4nal Dl"f"t4no 0" f"tel"I"Upt. J" the IIIeant.",. 4t exftl t~I"OUQh ft. I"~.ide"t seetio" e~d 1~ t~e c~ocess the steek e~d Reof.ter. e~e ~e •• t to the.r Itate Dl"fo~ to 8ntl"Y 4"to t~e cOIII"'a~d pl"oees'."Q ODel"etior"'. Afte~ the Dr4"ti~g ha. bee" completed, the rea4de"t L1ste~e~ carl"f@. out t~e fi"81 clea"-uc ef it. own 4"t~!"na' .witehea. It the" reltol"e •. the kevboal"d fo~ eee.cte~c. of • "ew eo",~a"d a"d the tvcewr1ter to e"v Drog~8~ out~ut i"terruotert. -~------ "'--; T~11 c,.ocedur~ also leav •• the ~SB at .~ow~ i~ F1Qure ~.tC~). 4~med4ate'Y fu,.t"er _~5 avail.b" .v.te~.d.v1c. -~ !.,ac4al O,.4va,. IIIedu' •• ~ the it •• without I~ ~.~.,.a', t~.,.fo"., for t~e e"t,.y of a aece ••• ~.w eo~ma~d eo~m.r'I~~~~_~_tJ 0"1_ The ge"~,.al. ~,.oce •• 1"Q .c~.me outl~~.d ~" t~. o ... v40ul ,.ctio", obv1ou.'v ",ea"1 that e.,.ta1~ eo"v.~tte~, .~ • • bl1lhed_to ee,.",1t_t he .ta~d.,.~ .~t.~fa~a r'leed$d.The • • • ,. lum",.,.42ed foro ,..fa".~ce 1~ the follow1"G p~ ... a .. aDh" ,t.- 6.2.5~1 C."."~ p.,.."'at.,.. 1'." %~ o,.d.,. to d.t. betw •• " t~. va ... oul ",oaule', the ~a ot.t.,.s e,.a u,.d ."d it. 1. t~e " •• pO",4bnUY.Of th~ ea'''~o IIIodul. to .at t~.~ aeeo,.dt"Gly (th. ...e.tvi"o Modul. of cou,. •• co',ect. t~ai,. co~t.~t f,.o~ the stack ., ,.v.d by the "o,.",a' "~T ~rocel' de,e~tb.d ~" Seetfo~ 2.2.1). I" o,,.tteula,., t~e eo~mo" 1"te,f.c •• to a"d f,.o", the 1r'1d4vfdu.' eo",",a"d e,.eee.lO' • • ,.a •• 10l10w.' t. E"t,.y f,.om the I"t.,.crete,.. R1 • A~d"e •• of the la.t byte (1.e.C-) t~ the eO!lll"'a"d t"out R2 • Com",."d cod. C1 c~a,..et.,. 1"" bYt.) ~3 • Add,. ••• of the Ste,.t of the SVT ~4 • Add,. ••• of the tyc.w,.4t.,. h.rdware buff., R5 • Add,. ••• of the .ta,.t of the cOIII",.~d a"Gu",e~t .t,.1"Q (0,. 41 "o"e • R1) 2. Exit vi. t~e Sc.et., D,.tv.,., Rl • Er,.o,. fl.Q (a ".oat.ve eode t~e"t.ff'l .~ ar,.o,. deteet.d • co.4ttve C.r'lV v.'ua) 4f "0 e"~ 0,. ) R4 • Add,. ••• of tha ty.,.w,.4te,. he"1w_"~ buffe,. R~ • 0 to 1"dfceta ~,.oe'I.4"Q eo",.,lat.d Th. re",e1"i"0 t~te,.faee • • ,.e d.t.iled w4t~4" the apo,oo,.4.te IIIodul. rlelc,.4Dtio"1 4~ the fol10w."~ .eet4o".~ A't~ouQ~ ",uet t~e .tack 41 "ot ue.d to t,.a".",1t ~at., •• eh ",odu'. .~.ure that the co,.,..et .tate 11 cal.ad t~ ftl .uee •• • -OOS6,RNf"I PAGE b1'" lor. I~ ee"erl', t~is ~ean. that t~e eonte~ts ef ~e04ster. lived at each i"ter~.' EMT el" ~Ult be re~oved. I~ addttion, t~e ~"'Y rltur" takan 4" the ~or~.l wav fs thlt to reel" the reside"t List~"er 0" eO~D'etfon. He~ee t~e return PC .n~ statuI .eved bv the EMT ~ust al.o be e'eared in III other eale. ('ee Fieure 6-2) Sinee e.e~ ~odule eel'l the next steae bv ~el~' of 8" EMT, t~e ner~I' !A~ reouirement. d~.er4bed in !eet40n 2.3 ~ust be ~blerved. I" other w~rd., the cI"fne routi"e ~u.t e~lure thlt the SWlP Buffe~ it i. eurrentlv ~ccuov.n" is re'ee.ed for t~e followtng u.er by decre~e~tetion of ft. U.loe COU"t, Aal.n, t~ere ert.e. the or~b'e~ of doing t~iR fro~ w.t~1n the buffer wh.'e the rout.ne .1 .til' orese"t. Ot~.r ~on. tor ~odu'es, ft we. shown in Section 2.3.4, ~o've the erob'em bV eell;no e eo~~on SVlte~ Fxft in the re.4dent ~en.tor, However thi. seOuence 1s of no use to t~e CO~~lnd 'In~ulae modu'e., since t~ey d~ not restore Aeg •• ter. or return, Inlteed therefore I leeetal outlet 1. crovi~ed immediatelv fo"owinQ t~e ~S8 wh.c~ t~ev ean acee~1 hy "droopinQ throueh", The firlt i"ltruetton 4n th41 leQuence eerfor~s t~e neC.I'IPV PAduct40n in the UI.ge Count byte. T~e lecone is let by the poutine to clu.e the peeui.fte "ext Iction, Thul 4n the oenerl' eale follow4nc. OECS I 20~(.) PAGE b-21 Move t~. lAlt ch8~~cter fro~ the Co~~.~d Buffer 4" the Ec~o euffe~, if .~v r@m'in (1), .~d ~ec'.ce .t bv 200 .1 • fl.a thet a ~U~OUT leQue~ce 4. und .... w.v. Gete It@P 8 to ~ •• t. 4· • ".0 For .nv othe~ ~n~ut, pe~f~~~ the check o~ .the ~ext huffer byte ."d if "ea.tive •• set ~v .te~ 3 at the l~.t inout, mov~ • te~~.n.t4ne 0 into the Echo Buffer Chence producin~ r.Qui~ed DPint .e. euence' (d~leted cher.cter.)O) ° Check for C~. When detected, .t~r., 4~ the Co~~.nd ~uff.r •• a .to~ .nd the" .c." the ~uffe~ from the beoi"nino for the ~4r.t occurr."ce oi , a. the DOl. sibl. st.rt ~f co~ment. R'ol.ce this with the CR ent.red to ~~~ov. the co~~e"t. If"~ v.,id input re~.in. afte~ thi., b.c.u.e efther the Whole li"e w•• comm."t ~r th.re w•• "0 l4"e .t al', c, .... the Com~.nd Buffer p~int... and henc. the unde .. w.v state. ~oain di,.~le keybO.rd i~t ... ruDt. to ,void Echo Buffe .. ove .. flow (."d ~ .. event • new comm."d 4"cut 4f 0" • • • ~ow 1"). Go to .tep 7~ e. Io"o~e .nv other input if wfthi" the Comm.nd Buff .... "0 mo~e SD.ce e.i.t. Otherwi ••• tore t"'e n.w c"'.~.ct.r. # ~.- 7. Cl •• r t~. ne.t buffer byte .s the ·N~ ~UBCUT· 4nd •• c.to.. .~d m~ve the inout byte f"to the !cho Ruffe .. Cor itl reo'acement • •••• tec 2) ". 'hould "0 furt~er room .. em,f" 4" the Echo Buffe .. , step keyboard interruDts to .llew the Dr4nt oo.r,. t4~n to c.teh uc. If the" the ,,~i"te~ i. curre"tly busy , rec," the Li.tener to retu~~ to t"' •• nt .... ruot.d O~OQ~.m. (the new ec~o will ~e h,ndled .ub. 'eou."tly to the " •• t crfnter ."ter .. uPt) (2) ..Bec.use_the --.......- input Byt. Ste~e im~ed4'telv ereced.. t"'e see Fioure e-3, it fo"ow. from th. p ... viout notA th.t if .n 'ttemot t~ collect the '.st Ch .... ct ... e"t ... ed show • • neg.tive v.'ue, it ~ •. in ~,ct the new RUBOUT 4~ the store. H.nce no further d.'etfon. c." be ~.d. on t.,i. b ••••• 1. comm.~d ~uff.~. ....... --- ... -2~ Ii th~ command f. Just be4no .t ... t.d! the D~inter .s wo .. ki"Q ~n_ the croo ... ml behalf i~ th4s ca.e. Si"ce the underw.v .w4tch fs now set, the Li.tener wi" pa •• the 4". terruet ~.pected by the ful' drive .. 1"te th •• routin •• Mence the echo-o ... nt wi" the~ b. initi.ted and " .. oar.m output w." be .u.oe"ded u"t.' the comm.~d h•• bee~ executed. OOS6.~Nn PlGF.: .22 W~.~ t~. l.at e~a,.et.~ ~4.0.tehed i'e~ t~. Eeho ~uff" ia ~ot CR. e~~ck ~het~.~ fu~t~.~ ee~o D~f~t· ~eeded (~af~lv fo~ ~1p.et .~t'v f,o~ ateD If 10, a.~~ the ~ •• t ehapaet.~ te the e~f~tep w1t~ ttl t~t.rpu~t .~.~l'd. nthepwil. ~.a.t the feho Buffe, o04~t.~a A~d 4f ~.e"'a~Y r ••• ~.bl. k.Ybea~d but ~et D~i"t~~ f~te,~uDt. (I.. ItlO e). I" eith.r e •••• r.tur~ to t~ •• ~t'~'UDtld e~OO~.M vta the Lf.t~~er to aw.tt a f,.lh cal'. f~a 1). fa Follow. CR D,i"t w1th t"e a'leateh ef LF to the eo~.ol" I f . val4d eO~Ma~d lf~. ~ew •• flt., c." the !~t.~o~.t.~ to o~oe... it. (I) Fop a eO~Ma~d Juat .ta~t.d o~ ,e.t.~t~d ~y CTAl/U eeo~d CTRL/C .to~.. 1" t~. Echo Buffe~, ev.rwrft.~Q the ate~ed CR to e"~u~. fta b.4~O wfth4~ the .v.fl.b'. ao.ce. E.ft throuqh .t.o ~ wfth t~. o~f~ter f~t.r. puet e".bl.d, how.ye" w.4t fer n •• t tfMe to re.~ • • bl. the keyboard • o' .•.• ........... ---. 1. It ahould be noted that t~e LF orf"t •• 8t." f~ oro. O,e,a du~t~g the oDe'.t.o~a ea,~.ed out bv t~e l"t,~oP.t., ."d oerh.ea ey." .fte~ t~. cO~Ma"d h•• bee" fu"y oroe •••• d. He"c. fn .teo 11, S 4- ~ot tM~.dt.t.,v ~r4"ted eeMD'etfo~ rec." • it ta atored fop outout at the "ext f~t'P,uot. en 11. co~~."d mu.t "OW b. 4"itiatAa b.cause the o"e eithe~ Co",i,ted ef co~~e"t o"'v (bv ,t.p ~) O~ hI' be." o~oc •• sed (bv ste~ 12), cheek t~e p~O~~lm exit. If this t. to the Sv.te~ WI.t Loop t" tha SVT, ."d.catt"~ thAt the .v.te~ is t" f.ct "o~m."v u"d.~ the co"t~ol of the Me".to~ 4" • ' •• t."i"Q ,t.t., t"it481.z. the CO~ml"~ euffe~ DO."t.~ ."d exit a. 4" .t.o 10 w1t~ t ~eelac4"Q. t" the EchO Buffa~. Otha~wt'e clea~ the Co~~a"d suifar Doi"te~ to io~ce "eW CT~L/C ."d e~tt th~ouah .t.P 9 to ~.s.t the Echo Buffer o01"t.~s ."d ~e •• ".bl. 4"out k.vbo.~d ."ter~u~t. (1'. If • "ew D~e,."t At the COmmO" e.it recIl', ~amove the ~etu~" ~A~lm • • t.~ • • to~.d 0" the .tIC~ ."d check ~1. If this 4. Do.tt4v., "0 .~~or. wa~a detected ~u~."O the .~.cu· tiO" of the cO~ma"d Ju.t fi"1.hed, collect the .t.rt add~e •• for the Fcho BUffe~ fr9~ the KS9 Dr.· .mbl. (,.a oreviou, .ect40"' ."d •• it th~ou~" steD .e 11. 'or ".a.ttv. R1 .io"ifvi"O th.t erro~ ori"t i. ~e· ~u.r'd, •• t up ." EMT 30 c.,l to I" oV8rl.v Ilsu~ed to .t.~t .t the ".xt .dJlce"t Iv.t.~·~evice i" the .y.ta~ Lib~ary a"d e •• t te .t~ (2) block the ov.rlav 4. c.l'ed, ~e.to~. ~eQiste~. bv the d~4ve~ ."d cl.ar the retu~" D.r.~e· t.~. f~om the .tack. U.e the v.lue 4" At ~atu~"ad bv the aom~."d Drece.,or to .cce •• 8 t.ble of me,~.a •• , e.ch which.e"ds i" • ch.~eeter wft~ fts D.~itv btt .et (bit 7). Output ch.r.cte~s (t" "o".f"ter~uot ~ode), u"ti, tht. cha~.cter t. de. tected a"d fellow w.th CA/LF. qee'" the d~ive~ D~oper by EMT 31 to cO~D'ete the clea" UD.. .how" fre~ .teo 12. (~1 "OW oo.4ti v e) • ~h'" o •••• d of ................. .s 1. ,. Ihow" 4" the p~evtous lect40", the ."ter~uot i. ~ee"· ,bled to ~esume. nrog~.~ pri"tf"o p.~t o~ the ~f"., c1 •• "·uo by the Lf.te"e~. otherwi.. the p~f"ter ~.~.f". di,.bled u"til D~."ed 4"to ,o~e "ew 'erv4ce • ...... a. ---.~-- .. K8L mUtt "10 th.~efore be •• ,embled with a ra'ev."t p.r.meter t.o • • , "oted 4" Sectio" 6.2.2 fer the other com. ~."d modu' ••• How.ver, it mUlt be li"ked alo"e a. ft h •• tt. OW" EMT. DOS6.RN("I T~e I~t~roreter •• iat., •• d •• cu ••• d i" Sect40" 6~2.2, f" th.t t~. two-'.tter code entered .a • com~."d •• v~14d .nd the~ to ~ ••• eo~tro' to t~ • • ~oroort.t. routine to orec.a. t~e eomm."rl, tf ".e •••• ry .r~."g."~ for tt. '~.~.ng from t~8 avatem-devfce. If the corle, how~v.r, 41 curre~t'v u"alafon.d or eerr.l~o"da to • eo~m."d ha"d'e~ o",y by t~e tra"I~."t Mo"ftor C•• e S.etfo" e.8), the Int.r~ret.r ~uat 10 4"fo~m t~. oD.rato~. ordpr c., 1 to e"au~. !.~ue"eel Th. I"tp.ro~~t.r f~ Dr4"cfD.~'v c.l,ed bv the ~~ect.' Drtv.~ ."d thflr.fore •• D.ct. Reof.te .. eo"te"t • • s Htted, for t~.t ~~du' •• e.f~ .t.t. f" the ~~.vfoua •• ctio". It .'.e •• au~ •• that thp. d .. fver ~ay be ".c."ed for the e~~~o~ .~4t •• QU."C • • hence the at.e~-.t.te mu.t b. a.t .ce~rdf"g1v Cae. ,4our. 6-2). NQ ~ther arQu~e"tl .~e "e.ded, he"e. t~e .fmDl. c.,l •• que~ce fl. EMT 33 G."er~' Oelc .. f~tfe"t T~. I~t,roreter •• tr.cts the ffrat two bytes from the comm."d 'f"e. p •••• d ~v the e."f"o rout4"e .nd the" move. the pof"t.r bevo"d t~. ff ... t .~.ce (or com~a) to t~e at ... t of t~e .rou~."t .trf"o or to the te .. m4"., CR if "one. Fo .. the WAIT, C~~TINUE a"d eTOP comm."d. C•• e .eetio". 6.3.3.1 throuah 6.3.3.3), the eu ..... "t sv.tem .t.t. is eh.cked a"d wher.cor .. eet, t~e I"ter~ret ... mo~fff". the ~roo .. ,m •• tt on the .teck to .. efl.ct the chAna. of .t.te r.ouf ... d by the eomm.nd e"d tak ••• uc~ e.4t t~rOuQh • K8L r.eal,. Al' other c9~m."d cod~ • • re ~overed bv a" ind,. ,"owi~o the av.tem device locetfo". of the corr~l~ond~"o .. outi"e ••• df.cus.ed 4" Sectfo" ~.2.2. Sfnce t~e i"dex oro~er fS a',o .to ... ~ e" t~e .y.t.m-devfc. f" .eom."t., the t"ter~ .. ete .. e •• • mf" •• a" e~bedd.d 'eome"t table to deter~ine t~e block reQufre~. It the" u.ea ft. OW" Doe to .... d th.t block 0" tOD of t~e WAIT, eONTt~UE .~d STOP proee •• o.... If the eo~mand t. va14d, the aDorop ... at. entry i" t~e .~de. is uled to bu41d t~. sYste~ device det. fOl" the p"oeessi"o .. outf"e .nd this f. t~en ce"ed by EMT 30. For a comm."d code not {"eluded f" 4t. eXDected inde. .eome"t Cby .~o'feat40~ thfs a'.o e'fmf~.t.s 8 sf"o1 •• 'ett.I" commend), or for a" f~correct ~ac"f"e .tate fer the e~bedderl com~.nds, the S~ec •• l ~r.ve~ is ree.l,ed to ori"t t~e ~e'e· va~t e~rc~ ~e •• a~e - se@ below. PAGE b-25 E-it ~t"tel D,tl e,~.ed f" AeQi.te~. f~om the I"te~~~.t.~ to t~. 1"ofv •• du.' com~."d e~ece •• o~ o~ o~ ~~ive~ ,ece" •• I. '1.t.d 4" Section 6.2.5.1. I" t~e ~eeell eese, Rt f" ee~tfcu'.p M,Y hive the f0110w4"0 eo"tentl .1 • eo~me"d doe. "et e-f.t e"d •• thepefe,e T"eo,' t. I"v.'1d It th •• ti.e +X • An 1"~ut WAIT, STOP e~ CnNTINU~ been executeli -2 • Comm~nd I" 1" ~,. e"ee, the ,teck 1, 1eft e. at t~e ~o1"t of ce" fpo~ t~. Seecfe' O~.ve~ C.ee Figu~e 6-2). Detef1ed P~ece"f"91 The ~~oee •• i"Q oDe~et.o~. of the Inte~D,ete, ap. below e~d e~e fu~ther ."u.tpeted et Ffoupe 6.6. t. out'f"ed Re~to~e ~eof.ter conte~t. c •••• d bv the ~cecf., D~4v'~ and cl •• , ft. ~etu," CI~e~ete" f'o~ the stec~. Extrect the f1~.t two c~I~,cte~. irom the eommenn fnout and .eve them fo~ 'Ite~. If th.,e •• on1y one eveilable befo,e the t,'M4"a1 CR, .teD 9 to .et up ,"d ea" fop e~,o' e,i"t, ;0 to 2. SCI" the .t~.no fo, the ff~lt eccu~."e. of ,Dlee o~ comml e"d 1eeve t~e buffer ~o."t.~ at the ~ext eha~acte~. If t~e t.~m.n,' CR 1, •• en befe~e thf •• ho'd the ~oi"te, 0" it. 3. If t~e 4nDut c~de P.~, ••• "t. a com~."d o~oee ••• d wfthin the ."te~~~ete~, "I~.'Y W4IT, CONTINUF- end STOP, 00 to the eDD~OD~ •• te ~out.ne. •• de.cpfbed f" .ection, 6.3.3.1 th~ou;h 6.3.3.1. PAGEb- 26 A. Set oOi"te~8 3.1.2.3 8eo~e"tl 8" i"te~"8' OOB - aee ~eetio" to 8 ~8ble 4de"ti.yi", the ~iffe~e"t of t~e i"dew fo~ the ~~oce.'4~o ~outi"ea to -_8~d .tn~ed 0" t~~ 8v.te~ d~vic@.Cl) ~ete~~i"e th~ ."gex 'eo~e"t fo~ the ~8~ae the 4" wh4c~ f"~ut cod@ f.". a"~ eo~~ute the ee~~eloo~di"o syate~-dev4c@ ~'ock ~U~b4~ fo~ t~e leg •• "t 0" the b •• f, of itl ~e~etiv. Do.it.o~ f~om the .te~t of ~Br it •• lf, es i"d4c.ted by the ~RT ~et. Ito~.~ i" f~o"t of the K~B by SA~ Clee Sectio" 2.3.1'. ~. Pr~~a~e t~e 4"t.~"el O~B fo~ the ~e~d4"Q of thil block i"to the e~ •• 4" the KSB D~'le"t'Y occu04ed by thfl I.t-U~ ~outi"e, the i"d.x-s.em~"t tab'e a"d the embedd.d co~m."~ o~ocea.o~s (~2 wordl cu~~."t 'v'. Uae th~ ~O~ e"t~y i" the _SVT Cle. ~.etio" 2.J.l) to ~btei" t~e .dd~e', of the svstem-dev4ce ~~~y.~ e"d fo~e. the comDtetio" r.tu~" to e.tl the d~iv.r d.oueue, veti~itv Ch.c~ ~OB c'ea~ Ieoue"c. I.t u~ fo~ SA~ Clee Sectio" 2.3.~'. Set the nOB busy fleo. ."rl 7. $Ive the cu~~."t Reo.st.~ co"te"ta 0" the It.C~ UI4"0 the Mo"4to~ S.RSAV ~out."e tae. S@ctio" 2.4.1) I"d ~.ll the ,y.t.~-dev4ee d~4ve~ viI S.CDS (I.e S.ctio" 3.1,2.4'. Ca" .wAIT u"tfl the ~"d-t~e"lfe~ 41 cO~Dl@te. (Thia r.ou.r., • ule~ Lf"k-btock s4~u'etfo", •••• , the o~e edd~.ss is Itor.d 0" the Itack fol'owed by a ~o."te~ to it. steck oOIUfo"'. 8. Whe" ~eC8".d, ~elto~e the ReQ.lte~ eo"te"tl us4"Q S.RPES. Sea~ch the ."de. leO~e"t fo~ the cO.~8"d code I"d et t~e 'I~. t~me, bu4ld the svstem-device dete fo~ t~. eo~~e,oo~di"o ~~oc"14"o routf"e, Stl~t."O f~o~ the ~RT e"t~y fo~ the r"te~c~.te~ a"d aceu~u'at."g t~. 14zes of ~"t.~ve"i"~ ~out."el. If the cod •• a fou"rl, eell its ~outi"e bv EMT 3~. If the 1"Dut com~l"d code i, "ot 4" th~ 4~dex ,eo'oaded, ~ecel 1 the S"ecial O~4ve~ to c~i"t a" "I',ega, Com~l"d" meslftge 8"d ~etu~" t~ the i"te~- ~e"t •...•.... -.---. 1. Cu~~.~tlv o"e leg~e"t o"'v 11 "eeded to c~ve~ the whote rl"o, ef the eSI.o"ed eo~e~. ~oweve~, f~r eXP8"sie", th~ee legme"tl er. cOlsible e"d if ".eded the table 4~. '41t of the '.It cedes eove~ed ~y e leQ~e"t f" .Ie~ Cal. - asee"di~Q o~der •• Iumed - followed bv -, •• e Itoo v.tue. PAGF b 27 ~u~ted o~o~~e~, thus iQ"o~ino the ooe~eto~1 ~e nue.t. The WAIT co~mand eneb'el the ooe~8tor to susoen~ a o~o~~a~ temDo~e~ily w~ile .t4ll .'lowino any lIn OD.~8t40n. cu~~ent· 1y unde~wey to comolete. It •• obv 40u.ly valfd only if • ~~oa~em f. loaded And ~un"4"Q' hence 4t Can onlv be uled efte~ the inout of CTRL/C end it. fo~~.t 4. t~U~1 .~ When civen control by the.Inte,orete~, the W~IT orocessina ~out4~e check. th, ~u~ in the SVT Clee Sectio" 2.~.t). If tht. 1. n~t 1,1 i"dtcatinc e oroQ~am i" a"d ~un"4nQ, the eomme"d 4. rejected by a reea" of the !o@c.a' Dr4v~r to p~.nt an "Invalid Command" messaae and ex4t. Otherwise the UDoe~ byte of the MUS 4s complemented t~ aive a content o. -1,1 .4an4fv4nQ that the 'oaded p~oaram i. "OW ,u'De"ded. In o~der.to D~oduce the ~el.re~ wait .tete, the D~oo~a~ ~e· tu~n edd~e'l .aved on the .tack is switched wit~ th~ eontent of WFU in t~e SVT whicl'l is alwav. 4nUiaHzed t,., the add~e.s of the System Weit Loco. Thu. it is tc this 'OOD that the ~eturn •• made, when the Soecial O~4ve~ •• recelled to take the ~~o~~em exit, a"d the o~Oa~e~ ~esumDt4en add~e.s is .eved in ca.e the oDe~eto~ late~ enters a ~O~TINVE COmmand, By the "o~~al D~oeellel of tl'le ~~ive~ delc~4bed 4n ~ectio" 6.3.2, the fact that the ~on4to~ is now 4" a 'iste"in~ state ••• icna"ed to the ODe~ator by out out of S. DurinG the w.· tt, the Reo •• ter. are reltored to their D~oa~am content pr •• o~ to the inter~uot4o" cau.ed bv the eommend, §.3.3.2 The CONT~~~f__~om~end The CONTI~UE command.1 tl'le nature' complement of WAtT, ~oweve~ it mav 8110 follow. lusDension forced ~y the detec· tion ef .ome "OD.~a~o~ Act40n" e~~or to be ~ilculled fn ChaDte~ 1. Sfnee it can onlv ~e meeni"gful 41 • prOQ~am i. 'oade~ 8nd IUIPe"ded, the Monito~ mU.t be f" a '.lteninQ .tete. HenCe the nO~~8l u.aoe of the ccm~8"d fsl scorNTINue:] A'thoua'" a d4f1e~ent ma.k .s used to enlure t"'at the ~US f" the SVT 4Icu~~e"tly set to Ihow the co~~eet Ivste~ stete noted above, f.e, -1,1, the rnte~Dreter eal's the lame ~oU. tine to D~ocelS the CO~TINUE al wal de.c~ibe~ for WArT 4n PAGE: '=»-28 DOS6,RNrJ The ~U! co~pl.~.~t ~.~u1~ed ~u~"4"CI. ~ew v.lu~ ooe~atio" of 1,1 • aotlv p~oduc., p~oe~.m ,o.d.~ the ."d T"e .dd~e •• switch ~.1"1t4.'fl" W~~ to the .dd~e'l of the Sv.tem W.4t Loop .~d the .v."tual exft t~~ouClh the Soec •• l d~4ve~ rt.u~e. the O~OQ~.~ fpcm the p01~t .t wh4ch ~ 'Uloe"ded with ReCl1.te~. ao.1" .cDrepr4.tAly r •• tor.d. tt •• 6.3.3.3 The STOP C~II!III.",d aTOP 4. Drovid.d ••• " e~e~Q'"CY com~."d to h.lt tv.rythi"Q • 4"e'ud.~o curr.~t 1/0. It. u •• o • • • • 4mt'.r to the WAIT co",m.~d outl1".d f" .ectio" 6.3.3.1, f,e,,1 AC ,ST[OP]CC~> It 1• • 1.0 Droc •••• d bv thata •• rout.~e •• w~rT, exctct The ~US ~o~t,"t ~. fu~ther ce~o'.m."ted to o.ve -1,-1 to .40"tfv that the ~~oO,.~ •• "ot o"'v 'u.ce"d.d, it i •• ,.e .to~Ded, (He"ce tt c."~ot be fol10w.~ by • CONTI~U~ to ~ •• ~me the crogr.m. ocer.tto", - • ".c •••• ~y ' •• trfctto", r. AU' • 0~ ~ ~ ~ t': 0t e r ~. ~ ~ ,.~. ~. 0 III eI el " I l 0;' • I l • t~ ••• me ,. J, : • t"- ~wpr."t 1,0 • • • il' •• u • • ~. u•• oi • ~ESET .truct10~ (the r.al-time clock al.o if th4. i. o~e.e"t 4" t~e co"f1our.tte"" I" S.et40" 6,2 1t was .how" that ~ost ef the eo~ml"ds .v.i,ab18 te the ooe~ator.t the co".ol. keybo.rd c." be Q4ve~ tve" theuQh • us.~ oroor.~ i. le.~ed. They t~er.for. .re proee •• ed bv 4"dtvtdu.' routf"e. op.ret1"CI f~om the KSB. Th. pur~ole of this .ect10" t. to eo".fde~ each ef th •• e comllle"d. I"d the co~r.IP~"d4"0 o~oee •• ~"o ep.r.t~o". ~rom the p01~t at which co"t~01 1. ~ecetv.d throuo~ tht co.",e"d I"t.r~~~te~ dt.cu ••• ~~" aectio" 6~3,3. It should .Q.4" be "otpd however, th.t .ome cOlllma"d • • ~e "ot t"c1uded h.re be· cau.e th'y er. il'eo.' u"'e •• the .v.tem •• eceuD1.d bv the MO"4tor elo".. Th •• e ere d•• cr4bed u"der the tr." ••• "t Mo"- ~ 4to~ 4" S~etio" 6.5. T~e ~out4"ea a~~ dt.cu.se~ 4" t~e o~de~ 1" wh.c~ they aODe8~ w4t~4~ .t~e co~b4"ed keyboe~d 18"Qu.~e 108d module ~e"t40"ed 4" Seet4o" 6.2.3. It will be es.u~ed that the ~eede~ 4. "OW f.m4'.e~ w4t~ tne eo~~o" ca"i"Q 8"d e.ft ~e~ue"ce, e"rl tne co~~e.oo"df"g Itate of tne Rec48te~. 8"d .t8e~, al det84'ed f" leetto", 6.2.4 8"d 6.2.5. The ~em8~k' 0" 4"te~"al co~ve~ •• o"a 8'10 aoolv. I~ o~de~ thet th. cu~~e~t.dat~ ce" be evailable fo~ f"clu • • 40" w4t~i" th. 4de"tff4cltfc" of file. held 0" bulk ~ed.a (see en8Dte~ 4) I"d oe~hao. fo~ out~ut 0" ~~Oo~.m lflt4"OI, a wo~d fl ~"8~ved w4tk4" the 'VT Clee Sectfo" 2.1.1) fo~ 4ta Ito~l~e. The DATF co~~a"d 1s D~ovfded a. the mee"1 w~.~ebv the _oDerlto~ el" i"~t~el'v e"te~ 8"1 later e.8m."e the co"te"t of tnf. wo~d, w1t~ 8" e.te~"8' fo~m 4" 01a4" 'e"culae. !t ca" be uI~d at I"V t4me. DA[TE' ~D.MMM·VVCC~> "he~e D~ el" be uo to two decima' dioits fo~ "dIY"' ~~M p~e •• "t~ the f1~.~ lalt two dioitl of t"~ee ,.tte~~ "yee~", e.a. ~e· of ·~O"tk· I"d Vv ,hOWl the I.SEP.71. Bv omttti"o the I~gume"t, the oDe~eto~ ~eoue.tl D~4"tf"Q of the cu~~e"t'Y .to~ed dete 1" the 'I~e "OD.M~M.VV· fe~mat. . - The ba.ic ooe~at10" of th8 ~ATE e~oce.,o~ merelv reou1~e. the eeo~oo~fat. co"ye~,10" ~etwee" _the ~lai" la"Quege "DD-M~M-YY" e"d the .4"ole.wo~d Jul.a" fo~m8t f" whfch th. dat~ 4, sto~ed 4" the SVT. I.e.1 1~~0(Ve8r·'~)+Dev of the Yea~ DOS6.RNO Fer e~t~e~ ."out or outDut, t~e ce~~utet4e" of day of the yeer 4"volve. a .aa~ch t~rOUQ~ a tah1. of ~~"t~., 4~e~t4ff.d bv thA4~ t~ree 'etter code, 8"d t~e co~re'Do~df"Q day. f" eac~ • • Vea~ a"o actual dev are IfMD1e dec.m~1 A~CTr/b1"a~y c~"ver.fo". - by e~bedd.d routf"e. for rea.o". ofYe" ea,- "e . (1). Howeva .. both fo .. ~. of ooe,.ato~ ",oU.lt ca~"~t be ~a"dled wft~t~ a moou l e. Therefo~e 0" e"trv fro~ the I"te,Dreter, a~ 4~.edfate check •• med. for the Dras.~ce of a" argume"t a"~ if no". ~a. bee" e"ter.d, ."dfcatt~o out out re· Qu.~e9, a~ ove"'ay f. ce"ed to Droce" tt u.f"e F.MT 30 as de.c,.fbed 4" Seetto" 8.2. .4"0'. The cem.a"d f. rejected 0" the around. of -I"eoe' Sy"tax· .~ a date bet"o e"te,.ed h •• t"correct io,.at. '" a~D.re"t'y ."va14d date e' .. eedy Itered f. o,.4"ted e •• 3QJ.icx.-CVea,.) Exit State. 80th the in~ut a"d outDut .ectto", of t~e OAT! eroc •• sor race1' the Soecta' Drfver de.c,fbed f" Sectton 6.3.2 a. tha ... mean •. of ,.etu .. n to the ;nte,.,.uDted ~roG,aM. ~e~ce Reqt.te, a"d 'tack are a. detaf1ed f" sect to" e.2,s. '" Dartteu1a .. Rl, t •• et to .3 if error. 4" the .y"ta~ of the a,oume"t er. detected • ...... ...... ~.- 1. Dye a"owe"ce t. made for Februa~y '9t~ f" e"y four-vearly 'eaD y.ar. The ce~tu,v adJu.t.e~t 4. howeve .. tgnored (21~0 ts stt" a 'ittle way off)1 PAG~ ~.31 DOS6.QNCI '-~. Det.iled P~oce'li~QI The f~~~ of t~eO.T£ c~eC'llo~ •• tllu.t~lt.d It '4cu~e e-7. The m•• ~ steos f" the .eaue~c~ ef oce~etfo"s ~o"owi '. q •• to~. qe~fst@~ ce"te"ts Dls.ed bv the r"te~o~ete~ I"d ~emov@ ttl ~etu~" ol~lmete~s f~e~ t~e .tlck. Yf t~e~e ts ~o d,ta (" the COm~a"d Buffe~ fo~ o~o ee •• f"~ o~ the ff~.t eh'~lcte~ of .uc~ dltl i. "ot a dec.~.' dfctt, cemcute the dev4ce ad~~e'l of the Ita~t oi th8 "e~t m~dul. t" the Iv.tem Ltb~l~v (~" ~RT fo~mlt) ,"d el" ft bv E~T J~. Co"tt"ue f~om Ite" 6. ~. Slve the cu~~e"t c~"te~t of t~e SVT nlte I!o~e I"d c'el~ it I ' I buffe~ fo~ the eo"ve~st~" of the t~ Dut e~~ume"t. Co~ve~t va,4d decfmll dio4t. 4"to b.~I~Y bv the .t8"dl~d "multiolv bv 1e I~d add" .1co~fthm. tft~e co"ve~lfo" t •• toooed bv ~ecoQ"4t4~~ ~f ~ I"d the ~e,u't f. "at o~.ate~ thl" 31, ~to~e ft i" the SVT. Othe~wfle ~o te ste" ~ to ~e oo~t the e~~o~. Set I ooi"te~ to I , •• t of mo"thl I~d thei~ co~~el Dc~df"c dav •• Sel~ch the 'fst fe~ t~e th~ee-lette~ ccmbf"ltio~ eaufyele"t to th.~ f" the l~aU~e"t, It time butldf"O "deY Of the yel~· t" the SVT It~~.. .Qlf~ eo to Iteo e if th. ~eou.~ed eomb.~e. ttO" el""ot be toU"~ O~ the .ub.e~ue"t .~~ut cha~ Icte~ i. "ot -. the 'I~e ~etu~" to Ite" 2 to co"ve~t the de~iml' dfcft. fo~ bv the fact t~lt the SVT e"~~v !I "0 lo"ge~ 0 whA" the co"ve~.40" e"dl), 'ook fo~ a Leeo Yal~. tf fou"d a"d the day of the vel~ tl bevo"d Feb~uI~v ~8th, i"c~eme"t ft. Reduce the yea~ vllue to 70, a"cwf"~ that 0~ e"te~e~ "OW become. 30, a"d .et the ~elult i"to th .. hfah e~de~ '-bft. of the SVT .to~e. Howeve~ ~eJect the COmml"d th~oU~h Iteo 5 fo~ 8"V vel~ .ee~f"oly below 1971 o~ above 20e9. 0" comoletfc", ~eCI" t~e SoeCtl' D~ive~. "yel~". !5. ~o~ fo~ dete 8. 0" ~.tu~" (fo~ced I"Y A~~O~ ~oted f" the o~evfou. e~ecels, .et ~t "Il'eQll . SV"tIX" I~d ~elto~e the o~fof"al SVT befo~e O~4ve~ ~ecell. Whe" the outeut ove~llv hI' bee" loaded 4"to the ~elto~e Regi.te~1 .Ived 0" the .tlck bv the clll I"d ~em~ve the ~etu~~ D'~8met'~I. Set I 004"te~ to I lflt of mo"th tde"tfffA~' ."~ co~~el ~O"df"q dlv •• ~S8, 7. Cellect the SVT and '.trlct lucc'l,fu' lubtrlctien. ef 100~, .ta~ttno f~em 69. If the r,.u1t rae~e.e"tl a Leae Vaar IrlJUlt the ~av vI'ue fo~ ,,h~ulrv i" the It.t. t~~ vaa~ t~e bv cu~~ent Data f~e~ ceunt4"O.luc~e •• tva t~e r@mai"4"o dav ef the V'lr bv the dav eou"t • • tored 4n the If.t I' fIr I' ~oI14bl, ,nd ho'd the ooint@r It tha ~a'evlnt ~o~th fd,"ttff" (1). If the 'fit end 41 reach'd b,fer, the reduetion i. eemo1ete. re.et the Doi"ter fer I _onth XXX and the ~,~a.n.no dav to I. ~.duce Convert the dlv 4"to 2 dec4mal d4ott. by thl .fmD,e "Subtraot -to" alaor4thm Ind .,"d to the eon.el1 cof"tlr fo"owed bv -. 10. Print the Icoroor.at, month fdentfiter from thl 'fIt termfn.ted bv -. ~eturn t~ IteP , to eo"v,rt the veer value, eaafn orovfdtnG for the outeut of 100 ~. 00, etc. On completton, rl~t,re the erfnter ea~rfaoe bv CR/L' and r,el" the 101efl' Drfver. The SAV! eommand t. provfded to ena~" the Uler to e'~duce e.ter"a' mOdule. from a curr,"t corl fmlal upon Iny le~r~ prilte device a"d in I form Icceptab'e to the P~oora_ LOlder for ,.ter reentrv (.ee Sectton e.l). In orde~ thlt the SAV! OrOCeller mav have fu" ICCe •• to a" Mon4tor .Ief,ftf,., especiallv the File-management routt",., the "erml' IWIP B~f~er ~u,t be re,dflv avaflable. HenCI to Ivefd D~ob'lm. ef conflfct eVlr ~S~ Ulaae, a. Qenera"v ~flcu'led f" Sect~e" 8.2, the SAVE ce~mand may onlV be Given ~t . ti.e. when the. loaded Droo~a~ .1 unlble to oerfer~, e4thlr bef~r' it t • • tarted after a GET com~and or after it 41 oerml"a"t'v .ulo."ded bv a STOP command or le~e fata' e~rer • f.,. ............. -. 1. Aftar IteD 7, the remai"d,r fl neQatiye, The ,edu~~.~" f' t" fact therefora accomolflhed bv addition until I eOlftive value •• detacted startfnG with 'n fncrement to make December 31st • dey J8e ,nd t~en werkfno blckwardl throUQh the V'lr. t~e B•• 4ca"v, follow.i eo~ma"d SAVE - W~e~e n~at.set loecif4e~" mu.t t~e Com~.~d St~i"~ T"te~o~ete~ ~av ~.v. o"~ .~;ume"t eomo'v w.t~ t~e fo~m.t C.ae Sact4e" e~~,,4,e. •• fo, ro@v4cell [FPa"e",e[.Fxte".40"]l [Ule] r/DAiLOWIHtGH] (RA b~i"g a .witc~ ide"tifvi"c the ~a"ae ef t~e bet wee" t~e octal Idd~e'.al LOW ."d HIGH) i~laa SAVE A, 4"dielterl, ele~e"tl of t~e .cec4f4e, mev be em.ttee 4" which eale t~e follow4"c eefeult a,'u~otie"s e~e D~ev4dedl ~/ a. ~evice b. Fila".~e C. UIC • the ~d."tific.t4e" cede fe~ t~. 'e~oed·4" ule~ I I stored fn the SVT (lee Sect4e" 2.1.1) ~. LOW • the P~o;rem Load Add~ell 4" the SVT (PLA) e. HIGH • the hi;helt .dd~ell i" evai,.b', f~o~ t~. SVT (GSA) fi~lt • the IVltem-device e. ,te~ad 4" e"trv of the DOL (lee Sectio" 2,t,3) t~e .nd Exte"lio" • SAVE.LOA (.'10 ceUI.I luto-dal@tfo" 41 IUC~ fi'e .'~e.~v e.4sts) meme,y Ge"ere' Delcr4otio"1 aeCluse t~e _ctuel SAVE o~er.tio" ce" be e le"ot~v o~ocell ."-d i' 'i~e'v to oroduce "o~mAl .~rorl for wh4ch the KSA ~.y b. "eed@d bv the Oieg"0lt4c Pri"t reut4"e C.ee Cheoter 7) the SAVF. orecel.or •• d4v4ded i"to two ~.f"- I~Ct.O"I' t. ~"i"iti.'izetfn" rout4"e, ~reter cel'ed ~v the I"teri"to th~ KSB to check e"d decode the co"'me"d er"'u~e"t. '-I T~~ SAVE routi"e.o~o~@r, brought 4"to e 2~6·word buff,r clAi~erl fro~ free core bv the 4"-4te'izet40" ~outi"e to orodu~e the reauired 'oad i~eQe bv "o~· m.l 1/0 ooeretiO"I, with the ~SB the" free~ for "'ther usage. . . The i"itializat4o" croce •• i" fect ule. the ee~me"d Stri"o I"te~"~~ter Clee Seetio" 5 •• ) for it' ooer8tfe~l. T~4s me- P4GEb-34 I"' t~lt ~~oy.d.~. the ~.c ••• a~v buffe~s 8~d co~t~o' Owi~g to t~. 14m4ted c.oacitv b'ocks ~u.t b. of t~e ~SA I~d to .void t~e u'. of co~. out.ide it u"t4' the 4"eut .eeetf.ea~ tio" 4. comolet.lv ve~.f4.d, the ~out."e 4. o'oa"4Ied IS .t~11oht-'i". code Wh.C~ suece.eive'v ove,ley. tt.elf wtth the eM~BUF I"d Lt"e buffe~ eo~ta4~t~o t~. t~~ut I~oume~t "eeded by mOdule CSX 8"d t~e" the Co~ml~~~, L4~k- 8~d ~41.-bleck. e.De~ted by CSM. F4"llly I" f"t'~"81 D08 ee •• aectio" 3.1.2 •• ' ••• ~m411"Y o~eol~ed for the t'I" •• e~ oi the SAVE D~oee •• o~ i"to it. f~ee.eo~e buffe~ f~om the .y.t.m-devie •• ~ow.ve~ if I"V .r~or i. det.eted, the comml"d .fS ~.J.eted.bv 8 r.ell1 to the So.c41' Or4v.r wit~ 10prODr41te dflo"o.t. ( •• e be' ow) The SlVE oroee •• or ft •• 'f mu.t of eour.e move t~. dltl .,tl· b] i.hed, by ~SI out of the KS! i"to U. ew" L4"1e- I"d ~fl.-block. with deflult v"ue, ,uoolied •• ~"evI"t. O~e. do"., hOw.v", the ~SP •• rele.l.d I"d the Ltlt,"e,. ~o."t.~ atore 4. ~.t"it4.l1zed t.e. S.etto" 6.J.l). ~4th kevbolrd ."ter~uDt. the" ~.e"lb'ed a"d ~~ece,.o, o'to~ftv ,educed to I, th, ~ctull SA~E routi". b.co~ •• Ju,t I"oth.r ,u""4"O u.er proarlm~ It u.e. the .tl"d.,d _ ~1~IT, .~P!~, .WRITf,.CLOSE,.RLSE •• qu."ce to out out the ~o~matted b4".rv dltl I' 411u.trlted u~der Sectto" 5.1 •. Durt"~ the ,~~IT!, I doub1 •• huff'rt"Q scheme i. edoptedl thi' lo.i" ut4'ile • • o"ce-o"'y cod! .r.I.~;thi" ~h. SAVE proe ••• or.te obv41te the po •• 4b4lity of 4".ufftc."t fr.e eore out,fd. tt. The SlV! D,oc.,.or .49"11. 4t. eomp,.t4o" bV rl,torlttO" of the 4mp't.d Mo"tto~ 1t'te~t"g .tlte f~om wh4e~ 4t WII or4Q4"Illv ."t.r.d (S out out ."d fore.d 4"~ut leeectl"e.). It mu.t t~e" '., •••• the buff.~ it oeeupfe •• To leeomD1i.h thi., tt u •• , the ,Ime t.eh"4ou. a. the F41e-ml"lo.m."t modul ••. '". the laml Dred4clme"t ( •• e Sectio" '-.3),. f" which the Ho"itor S.AlB routt"e t. cll1.d I"d ,etur"' th,oUQh the "orml' Sy.tem E~1t deleribed i" Seeti~" 2~J... T~fs reItore. the R.otst.r. whtCh were o~to."I"Y 'Iv.d 0" the .tlele by the It.tl"e, blfo~. the eOMma"d WI, croe •••• ~ a"d wh4ch Ir • • ~4'1 there. Th. ff"ll •• it r.tur~. to the Sy.· tem IUU Loop. A"v errers 1~4.i"Q durf"o t~. eet~e' SAVE e."~ot of cour.e be ~."d'.d th~ouo~ the Speefe' O~ive~ o"ee thf' •• "0 lo"o.~ et the D~oee •• or. d •• ~o.el. ~e"ee the .oo~~o~ •• t. ~ •• s.~e. ere ~~i"t.d by the crec ••• or ft •• lf before it ~etu~". to the aY.t.~ w.4t loo~ e. de.e~4bed i" the p~ev.ous Deraoreoh. I.e. e. File e~~or XXX • w~.r. XXX i. ~etu~"ed 4" the File-b'ock Q~lm~er. He"dbook) the e~~o~ eode Stitul t.ee Pro· ~. b. [Jlh "eviee Ful' ~tlte. Du~f"o t~e i"4t41'izltion p~oees., t~e Spec41' ~~4ve~ ~.y be ~Iell'ed to he"dle e~~o~ ~elSloes, ~ence t~. Reo4lte~ end ,taek Irate ~ult be a~ o~ele~ibed in S.et~on ~.2.~ wft~ ~t 4n Da~t4eu',~ let •• fo1lowl • •2 • A ule~ D~OO~'~ is not loeded the o~ 1. not It~p~ed ~e~ee eo~ma"d il I"valid .3 • F.ulty SYntax .6 • Ille~I' 'iMit edd~el.e., 1.e. LOW >HIG~, o~ outlide co~e .1 • ~o buffe~ SP8ce evaflable fo~ t~e ectu.' proeeslor. AI aboye, t~e aetua' SAVE routine ~081 "ot ~eturn t~e eOMmO" keyboerd 'anQueoe .xtt. Thu. 1t e"su~ •• it.elf th.t t~e ~egi.te~1 .~d It.ek .~e ~.tu~ned to the1~ .tate D~1er to t~e eo~~an1 1nter~upt. ~oted th~ouo~ '-~ Oet.f'ed P~ocel.1"ql A. f"~~~.ted 4nd.~ "Gen,~al Deler1etio"w Ibev" the SAV£ ope two P~~~I, The ••• re de.e~ib.d in The i"iti"1zlt10" D~oeell' beinG ~,f~lY ~t~ajght·'~n. code "e.dl nO 4l'ult~atfen. It 1. out~ ,4"ed below. e~lt4~" f. D.~forme~ f" the f~"owf~g D.r'Q~.eh •• t. Relto~e qeG1.te~ and ~emove COMpute the co"te~t. o •••• d by the I~tererete~ ~.tu~n Da~'mete~s f~o~ the .t.ek. Iy.te~.deviee blOck fo~ the SAY! D~O· ee'lo~ D~oee~ en t~. ba.f. th.t .t fe' lows the tn •• ftl tf,'.z1"0 ~out~"e .". the .y.te~ L~b~.~y . • "d .ave for llte~. Set I D01"ter to the start of the ~outine e. the beoi"ninc of a CSI CMO~U' with 8 L.". buffer fo"owt";. C.ee Secti o" e.4) 2. Check the ~U~ in the SVT Csee Seetio" 2.1.1). If "ot let to e1the~ I,~ COroore~ 'oaded but "ot started) o~ -1,-1 CD~ooram .u.~.~ded a"d .toeeed), ~eel" the SDeef,1 Driver to D~i~t I" "I"v.'fd Co~. ~a~d" me.sage & fonore the eom~a~d. E~lu~e the ~SB •• f~ee bv elea~.no a"y eu~re"t UII~e COU"t C.ee Seetfon 2.3.1) ~ove eO~Ma~d arQume"t .t~.na unto the wLi"e .eet40" re'at1ve te the ~of~te~ set f~ Itec 1 and e"sure thlt a eor~ect 'ine te~~inltor fo'. the ~uffe~n low.. C", C8X (S.ctfo~ ~ ••• t) to ch.ck the ov.,. all sy"tax. R,ca" the SD!ct" O,4v., to D,f"t '" "1".g,' 3v"t,x· ~ ••• ,o. ff f" "'0' ,"d '.J.ct the co",,,,."d. 4. Pr.p". du~"'v Lf"k-, F41 •• '"d CSI Co~",."d.b'oek •• CE'ror r.tur" & Statu, word. for t~1 iir.t two a,e U"".c •••• 'v .t th48 st,o. • how.vl' the L4"k-bloCk ~u.t "low ,00'" for, four.word ,w;tCh.- •• e Sect40" e ••• 2). '"dicit. oUtDut .eecfffe,tfo" r.aui,.d f" the Cal cMoayf ,"d .1" eaM to,d.cod. the a,oume"t, wfth 'cttO" ,. de •• c,fb.d 1" .t'D 2. .ddr..... ."e, e. If the RA Iwitch i. or ••• "t f" the CoM",,"d .tr."g, elll the Co"verlfo" Utilitie. ,oU~f"' ( ••• S.ct.O" e.3) to co"vert the 'f",tt. gfv." to bf",ry v,'u., a"d .to'. the~ i" the Lf"k-block i".t"d of th,.r st.rt DO."tl'. 'I rltu'"ld by es~. If LOW t. "ot 11 •• the" HIGH or HIGH f. above ,v,."b', CO'I, ,,c,ll the 3D,cf,' Drfv,r to t", the oDlr,tor ,"d aoat" r,Ject the com",,"d. e. Vta the Mo"fto' I,GTe ,out.", (.e, S.ctfo" cl't'" a 2se.word buff.r fro", cor,. .v.il,bl., i"fOr", the u.'r throuoh Speet" r.e,ll i,., 2,.,2), If "0"' Drfvlr 7. P,ep.r, '" f"te,",' DOB C•• , S,ct~O" 3,1~2,3) to re,d thl 2ee.word SAVE Droc,.,or 4"to the "IW buffer fro", the ,t,rt block COMoutld",'.,r, £.tr'ct the .y.tlm-devic, drtvI' ,dd"., fro'" thl OOL C.el S'etto" 2.1.3) v., ft. DOt"t" f" the SVT ,"d fo,el thl comollt40" rltu'" to u•• thl SA~ '1aue"CI de,c'~bed f" S,ct~O" 2,3,~, U" ID". DO! loe,tio"1 to .av. rel,v,"t R.ot.t.,. (,"d I.t the "OP bUlY fl,~) 8. C.,1 the .y.te"'-dev~ce dr~v'r t~ .if.ct the t'."lf., vf. the Mo"ftor S.CDa ,outf", C.ee S,cttO" 3.1.2.4) ,"d e," ,WAIT ttll do", (lik, .tIP.' f" the I~t"or,te, '" Sectfo" e.3.3, tht. "aut, •• , Lf"k-b1oek .4mulatfo"). Wh." "c,,1.d, '1Ito,. " . Qi.ters saved f" the 0"v40u •• t,D a"d JU"'D to the 'oaded routf",. The SAVE rout.", orODer f. fllu.trat,d ,t ffOu'l bl.4e .tID. are a. follOWS' t. e.e. It. ~fv, thl.SAVE routf"e "OW thl ,pola'a"~e of ,"'oaded ,u""f"o proaram bv , •• ettf"o ~us t" the IVT to 1,1 to allow "or~.' u.aoe of the k.v~o.'d '."~u.ge duri"Q the out~ut oh •• , (.ft.~ •• vt"O the o't~f".1 PAGE c,.-37 OOS6.RNt"! ~U5 ce",te",t) '. ~eve ;"'to an i"'tar"'al ful1 Li"k-bleck t~e device a",d u"'it .t~red i'" t~e KS8 ~u~~v by e8M e~, ff "'e"e. the "a~e of the svste~·devfce f~em the DOL wft~ u"'ft let to eel) ~. F41e-b'ec~ cOl'lta.I'I' a move the ~e'eva"t data .I'Ite al'l te overwr4t. the default a.sum~tfel'l SAVF.LOA alreadv fl'lcluded a",d •• t a swftch te preve"t automatic de'etfel'l 4f t~. f41e f. .eel'l to exist later e.e. It.~ 6). Al.o .tere a",v UIe "'a~e !f theKSB dum~y f.'e-.~ecfffcatfel'l, i",ternal full ~'eck s~ec.f.catfel'l. 4. Set ~O;I'It.r. to u.e ~h. ar,a oecu~4.d ~y tha er~ c ••• or u~ to ~I'Id 41'1cludfno the cel' fer .OPEN .1'1 .tep 7 al a doubla-buffer. I", the fir.t of the •• buffers, oraeare a .tal'ld.r~ eOHO block for tha load 1maOe as da.cr1bed .'" ~.ctfo", 5.1, u.f",O the ~.",oa limft •• ff a"'y ~av. b.e", .ueDl •• ~, or the Prooram Load Pef"t a"d the to~ of avaflable ~emory 4f "'ot. F1'l i", the rem.f"t"'Q ftem., e.a. 'rooram a",d OOT start addr •••• s .",d ~roQ~em "'ame, from the a.fst4",o .",tri •• i", the SVT. !5. ~.mov. the k.yboard Lf.te",er recall .ddr ••••• from the .tack .",d us. it ••• v.d poi"t.r to r ••• t it. 'o4",ter Store c••• a.ctfo", 6.3.1). Sf~u'at • • ", 4,,terrupt r.turl'l 0'" the stack wfth I prfor1ty '.v.l a"d u.e the ~SB r.l.a.e •• au.",c. stOr.d below tt C.ee S.ct1o" 8.5.3) w4t~ RTI a. the ff",al t"structie",. 0" reca". r.enable keyboar~ f",t.rrupt •• Reau •• t .INI! uP~'" the out~ut datal.~ a",d if t~e sp.cified f41e i. the default S.VE.LOA, try to d.l.t. ft. (Th. F~le-bloc~ error retur'" j. s.t to ceme bac~ at the .am. eoi",t ff it do •• I'Iot .xfst). Re.et the Fi'.-block .rror r.turl'l te ea" a s.ouel'lC. whfch ~rint. a "F1'. Error" ~.s.aoe a",d .M4ts throuQh steD 11. ea" .OPEN. Am."d the buff.r .---......-.-. 1. Th. err~r ret~rn 4"th. Link-block f. set to ~, thus ff the r.aui.ite buffer .oac. for "orma' tlO operat10". 1. "ot ava.,ab'.' a SAVE comma"'d ean result 1", a .tal'ldard fata' error (Fe~7) - s.e S.ct101'1 3.2.1.1. DOS8."Nn eo4"te~. fo~ 1."t"Q the lece"d buffe~ a"d 4"ftfate a foemattad bi"a~v .WRtT! fe~ the CO~D b'oek "OW t" the ff~.t. Dot"t ~'D~e •• "ted bv the Ita~t of the dat~ a~ea "OW b'f"o outeut followed bv t~e actual deta wo~dl U"tt' the buffe~ f. ftlled e~ u"til the hfoh 'f~tt •• ~each.d~ CO~DUt. the "u~b.~ of bvt •• ~overl a"d ItO~' in the 'PD,oD~.ate thf~d wo~d the L4"@ h•• de~ C.ee "etto" 3.2.2). ~a" .WRITE to out out the buffer new ffl,.d Cfn fo~matt.d bf".,v) Sto~e t~. cu~~e"t load ef When ~ecal'.d, check whethe~ EOD occu,~ed at the 'alt .WRITE. If 10, ~'f"t a wDev4c, 'ull~ ~allaaa a"d 00 to .teD 11 to •• tt. Othe,wf,e Iwttch the buffe~ Dof"te,. - the ot~.~ buffer mUlt "OW be '~D. ~v. Go back to .teD 8 ff ~o~e deta ~ •• af"1 to be oUtDUt. When the hfoh lt~tt tl ~eaeh'd, D'.Da'e a"d OUtDUt a te~.f"a' T,a",fe, B'ock Ul4no t~e .dd~'11 Ito,ed at PSA t" the SVT Clee Sectto" 2~1.1'. T~e" cal' ~CLOSE a"d .RLSE on the data.et. 11. . . . R•• to,. tha o~'otnal IVltem-'tate .aved at IteD g to the ~US fn the SVT a"d e"lu,. that the Sv.te~ watt LooD •• ,eca"ed on e.tt. Outeut S a"d force comma"d f"Dut acceeta"ce bv ,e •• ttt"g t~. keyboard ~e·~.-d ~uf'~~ .• a'M.e, ,-_- - ••••• n e.~.l;. S.o,e .~~ ·v~te~ •••• .~d~- •• ~~ the .tack ."d JU~D to the ~o"f~o~ S.RLe routt"e Ca' "oted un~.' wG.ne~al D•• c~fDtfonw abov •• ) Tht. S.etfo" eov.~. th~e. com~a"d. whtch a,e e~t~'~flv fnt.nded to .nable the u.e~ to co"t~o1 the co~.ol' te~~tnal. OD.~atten. en behalf of a ~unnf"Q D,OQ~am. aecau •• thet, D~oee •• 4nQ ••• imi'a" they a,e f"cludad within the .a~e ~o dule, t" D.'t4cula, thev a~e al' fnvalid un'e •• a u.e' erogram ~. leaded and the full d'tve~ f. f" co~e~ The cOmma"dl a,e. a. ECHO • whfch a"owl i,te-floD ce"t~o' of the echo D~f"t."Q ••• octated with k.yboe~d but doel "ot affect no~ma' oUtDUt. b. PRI~T. which D~ov.de. the .a~e "o,~al outDUt but "ot echO-D~f"t~ iacf'ttv for PAGE ~39 Dose.IINt" C. EN~ - wh4ch ~"ebles the u.e~ to ,'0"11 the of I .et of i"out dati. e~d Co",,,,."'d For"'ltl The b •• ic •• ",el fo~~.t th~ee Iccactable for all cOM"'a"d. 'a the EC[HOl [DeviceJee~> "R [INT) [Dev. eel eCR> E~[D [Oev,celeC~> ~he .. e "eev'~e" i. the ce"ve"t.o~ll two/thr •• cha~lcte" code for the devfce co"ce~"ed Cwithout .) In~ •• by daflult KB However the device i" the CI.a of EeHO I"d PRtNT MU.t b. I te'",."'e". the o"'y o"e ~u,.re"tlY ,~p'e~.~t.d bef"'Q K~ he"ee it f. olll.tt.d f~ th8 e,..'p"t de'e~fotio~ f" the P~o .,.",,,,er. HI"dbook. Neverthele.8 ft ce" b~ ,o.efffed fo,. other ter",t"ll devieea, provfded thlt the I"ectated d~ive~ f • • et UP te u•• the re.ult. of the Droce •• i"o ~e.c~fbe~ be· "~We O~ the other he"d, END doe. "et heve th, el"'e ,.e.t,.fctio" but 10.t", the O"'y d,.tv.~ which "acoQ"tree ft. oeerettO"' te thlt fo,. the .tl"dlrd ASIt.33 Tal.tyoe. ~e"ee K8 ."d '" Ire the O"'y "'.I"'t"Ofu' .pec4ftc.t.o~.~ ;e"e ... ' De.c,4pttO"1 'rovfded thlt ell t~e_,eQutre"'e"t~ "oted f" t~e pravtou. D.' •• "lehe Ire Iltt.f'.d. the proce"f"o fer the th~.e ee",~."~ •. reQufrle ee~e •• te the byte in th~ device drtvar t",te,flel 'eb'e whteh co"taf". the Drfortty leve' u.ed te aet th •.• "t,rr~Pt v.cto~ C.ee Sectfo" 3,3.1). Sf",c. th4. f~fo,. ",.ttO" t. only reQuired when the drfy.r fl fi,..t 10lded, the byte ce'" "'ow be u.ed a. e •• t of Iw4tche ••• follow. CIS.U"'· 4"0 I" 4"ft41' velue of 2~0, 4••• PRL.). .-, B~t 7-0 • EOe e,t • SUDO~P'" Bit 3-' • SUDo~e •• Bit I-I • SUDe~.'8 Bft 0-1 • Supore., echo (ope~.tcr.co"t"ol) echo (O,.oq,.aM·co~t,.o') orfnt (ooe~ato"-co"tro') o,.i"t (proor.",·co"t,.ol) T~e EeH~ and P~INT eO"''''I"~' ",.,.ely cO"'D'aMe~t the ~.'ev."t (' e"d I) r •• pectively. FND clee~. b4t 7. It fs then t~e r •• co"'.~bilfty Of. the d"ive~ to check t~e aDoreprilte bft I' reQuired and to ICt .ccordf"Qly. bft. It .hould be "'oted thet becluse no att.",pt •• "'ade to call the d,4v.,., the cOM"'I"d can on'y be effect4ve whe'" the d~fvI' 101'" hi. contro'. If in flct, thp. DroO"I'" hi' alr •• edy ~eQuested .~E4D e~d the d~ive~ hal then ~etu~~ed to aw.~ it 8n 4~te~~uct, ~" END.~~Quelt D.~tieul.~1y ~u.t be fol10w,d bv • new D~og~aM incut to fo~ee .ue~ inte~~uDt. ~e"ee it i. ~~eommended thet a doub'e cq be usee to terMi~ete the comMend~ !he use~ i. el.o we~ned thet ence the fOO .w4tch 41 let, it 4. clea~ed onlv bv en OPEN ca" to t~e d~ive~ .o~ by a ~eload on .1~IT efte~ .RLSF. Thue 4f ~o~e the" one de. taset is she~.nQ the ~~4ve~, the fOD eDDlfe. to ell ~ e DO. tent4Al D~oblem if sav both comMend .tr4~a. end data a~e be. 1ng entered f~oM the seMe keyboard. Eldt Statel " , t~ree co~mends ~IIU't in Specie' D~.ve~ ~ecal' o~ completion O~ error. Hence ReD1.te~1 e~d .taek e~e .et el .hown 4" Seetio~ 8.2,e. ~l 4~ Dert.cule~ may 4nd4ceta the followi"g e~ro~ cond1tionsl 10eded, Ie the eo~me~~ f. Inyelid .3 • Feulty Svntex (i.e. no"-alehabetic cherecter. 4n rlev4ee neme) .4 • Il'eael Oev1ce (wh4ch doel "~t e.4It, •• net fn MemOry, or i. not e termi"e' for !CHO or PRINT) .2 • ~o proQ~,m Detaf'ed Processingl The leQuenee of oce~lt4e". needed to D~oees. the th~el COmmands eutlined below, It i •• t~a4~htforwe~d a~d thus need. no SUDDe~ting fl1ult~etfonl .1 t• 2. ~esto~e qeQf.te~. De •• ed bv the InterDreter & ele.~ Daremeterl from the .tack. If the 'ow~o~der byte of ~us fn the SVT 1. ~ot .et to 1 to show a D~Og~eM •• i" eore (lee Section 2,t.t), re. Ject t~e com~e~d bv ~eeelli"Q the SDecia' ~~.ve~ to Dr4~t an "Inveltd Command" melsa~e. fts ~etu~" Conve~t UD to the fir.t three letters of any ar~u. Me"t Itri"o ."te~ed into left~Ju.tff4ed radf.-ea for~at (.ee Seetto" .5.3). (Anv non~elDhabat4e ehe~ectlr Sy"ta."). other than .Dece, eom~a o~ cq i. "Illeall If ~o ergument •• o4ven, luk.titute KB. Ul4no ft. SVT ~o.nter, aeee •• the OOL Clee Section and look for the dev4ce tK~ acting al.o for PT .inee bot~ devicel share the .ame driver • .ee ADDendi. A). Reject the eommend on t~e ground. of "I1110a, oevtee" t~rouQh the Seeef.' O~4ver ff Iithe~ the deviee il unknown or fta d~fver il not f" 2.1.~) DOS6.RNCI PAGE fD41 cO"e. 4. Fo,. ECHO .~d PRI~T, ch~ck the ~.tu,.e of the deyice ey. exa~4".t!0" of the F.ci14t4e. I~d4~ate, 4" the d,4v., I"te,f.ce T.bl. C.ee Sect.o~ 3,3,1). the d.v4ce 4. 4".a.' u~'e •• 4t •• a te'~4~.1. '0.4" ~. ~et .~ '~DP'oer4.t. M•• k foP' the co.~.~d ,.aufr.d 8"d pe,fop'~ the ,.e'ev."t bft OD.,..t.e~ •• ~et.d u"d.,. "Ge"erel ne.c,.iDtio~" .beve (coM~'eM."t ECHO/PRINTr e'eap' - EN~). Retu,.~ to the t"t.,,.uoted p,.oOP'.~ th,eu~h the Soec." O'4v.~, LINK-il 04v ••• u'e' the CPDo'tu~fty te td."tffy OOT-tl~ •• • ~orlu'. w4th.~ a pptoa'a~ lo.d-t~aa. by ft. 100 .~.teh. ( •• e OEC-l1-ZLDC-O). The .t.,.t .dd,. ••• of the .edul. •• the" .to,..d ~.tht" the COMO block t~ f,e"t of the load ~o dule (se. Sect.o~ 5.1) .~d du,.t"Q the 10ed 4t •• t,.".i.,.,ed to the SVT ( ••• Sect to" 2.1.1). Th. OOT ee~Ma~d th." ~4v,s the u •• ,. the m•• ~._wh.,..ey the d.buOai~o ,.out4~e c." be c.l'.d or recel'ed ,.ea.,d'." of wheth.r a 'U"~.~O ~,o~rem_t, 4" co"t,ol opt h•• lost tt " • ,e.ult ef 4"h.,e~t ".4lu,e. D,oe... .e •• , • • how~ i" the ,eleya"t ~."ual (~EC-l1.0~Ol-~), th,.e. e"try 4"to OOT-llR .,.. pe •• ible. He~ce the ce •• a"d h •• the ~oi"t. fO'~1 00 [T] Whe,.. "eode 'ette'" a. Ge~e,.' ~av [Code lett.,.]CCR> be •• follow.' ("u",. cOMoletelY 4"itfeltze O~T.l1R (OOTta) Oe.e,4pt40", By iMol.cat;o~, • p"oa,.~ mu.t be loe ded (.ye~ if it 4. • ,4"k.rl y.pt.io~ of O~T·ltR "o"e) ."d ODT-flR ~u,t be i~e,,,,d • • d wtth4" ttl T~e eOMma~d i. ,eJect.d •• i~v.l.d by !oee4al O,.4v.,. ,..ee" oth.,.wi.e. PAGE b-~2 .1 uSld to det@~m.ne t~e O~T-l~q e"t~v, I recoQnizerl vIlue. ~oweve~ befo~e Co"t~@ nOT co~~~"d Orocel.or must Issu~e t~lt t~e ocerltor wfl, expect eo"ditfo"1 IOD~oor4lte to ~il ~~ocram I"d ~IV later relume t~@ oroarlm directlv f~om the debugoi"o routi"e. T~erefore, t~e syltem is fi~lt ~18ced f" e proaram-ru" mode, al' evide"ce of a com~."d bei"O u"der~lv .1 remeved I"d t~e e.4t 41 tlke" w4t~ t~~ ~e~ilter. I"d Itlck reltored to t~e.r Itet. prior to t~e co~ml"d fnterrupt. T~e eom~l"d I~Qu~e"t ~~ov.ded t~lt.t is trol •• t~enlflrred, t• T~e Mo"itor do,1 not Itte~ot to 4nftil111e ~OT-ll~ eit~er 0" 10ldino o~ eft@r en nOT eomm~"d. Thfl 4. left to OOT-l1~ itl.,f, if 10 cll'ed by t~. uler. In. plrticullr, t~e debuaei"~ trle 10elt40" It 10cetiO" l ' mUlt be correctly li"ked. T~u, t~e ffrlt OOT co~~e"d .hould ~ave "0 I~gument 4nd Ihould be ent.red II 100" II pOlsibl@ after 10ad4"Q. ODT-l1A IlwlYI ~eltore. break~oi"t locations temoorarily w~ile it .1 in co"trol, to allow t~e user to e.emfne I"d ~Odify the.e lik@ any ot~er' it onlv reollces th@m w~en the ule~ cll11 for p~oarlm conti"ultion bv ita own comml"dl for th~ eurpole. If t~e USe~ i"lteed enterl CTqL/C to reCI" thl ~on4tor, Itl~tl t~e ~roa~l~ bv I ~o".tor com~l"d a"d t~en llte~ Ules the OOT command ~.t~ I" erQume"t, ~OT-lIA attemptl itl relto~et40" w4t~ 4ts f"it411izino vllue P00003 thul destroYi"~ t~e o~fQinal content. The uler fl t~e~efore adv.se~ to e.ereile some clutio" (see wGetti"a O~S 0" t~e Air"DEC-l1-SYOD-") EICU StAtel If the Soeciel ~river i. recal1@d t~~ouoh er~or, Peafsterl I"d stack Ire .It I • • ~own i~ Slctio" 5.2.~. Tn ~1~ticu'lr Rl co"tli"1 o"e of the followf"c vlluelt -2 • OOT-l1R fl n~t f" corl, -3 • Code letter i. u"k"ow", AI noted ~boye, co~mlnds acceota"ce ell1 wfth p~OQram .tlte rl.tored. 10 t~e com~l"d ~e"ce fs Tnvllfd Flultv Iyntlx ~e.ult. i" an ~DT·l1R PAGE b-43 ~,-- Detef'ed '~ece'li"gl T~e ,4mele 'eaue"ee is II fellowl I"d ~eoui~el ~o tio", t• ~elto~e move Reoiste~8 ~etu~" ttl ~h, co~ml"d bv ell led by cI~I~te~s .'lult~l I"d ~e R8Ject Dr.ve~ to t~e I"te~c~etar f~o~ t~e Itlck. ~ecal1i"~ the Spac~a, "Y"vllid COm~l"d" ~eslaoe 4f eit~e~ t~a ~US ." t~e SVT doe. "ot co"tI4" a low.o~de~ byte of 1, .io"ifyi"g t~.t a P~OQ~'~ hll bee~ 'olded (see Sectio" 2.1.1), e~ DSA i" t~e SVT i~ let to 0 (ODT-llR "ot c~ele"t). c~."t I" ~edifv t~e ee"te"t of OSA bv 2 fop ." 8~QUme"t R O~ S4m4,.~ly ~eJ.ct t~e eomml"d fo, I"V ot~ 4 fo~ K. e~ i"put 0" t~e o~ou"dl of "ll1eOll ~V"tIX·. ~to~e ,e,ult4"Q Idd~ell 0" t~. stick 4" pllce of the ~etu~" to the 4"te~~upted C~OO"~. the Clea, t~e 'etu~" to the Seecial O~.ve' i,om tha Itlck. UI4"O itl .Ived add~ell' ~ai"itillize the Lilte"e,. Poi"ta, Ste~a (lee Seetie" 6.3.1). Wlit u"t41 t~e cO"lola e~."ta' ~al co~pleted the comml"d LF te~m."lto' Claa Sect40" 6.3.2). ~et the ~US ;" t~a SVT to t,l to si~"ffy .·c~o9'am i" a"d ,u",,4no" I"d a"lu~e thet WRA i, 4"itflliled to t~a Idd~e.' of tha System wait Loep (f" cale t~e commlnd fol1ewed I fltll e"O~ - ,aa C~'Dte~ 7) t~e RaQ4.te~ • • Ived It t~e eomma"d - I"d thul elel"-uD the st.c~ I"d ODT-llR at the ,aquf,en e"t~y o04nt. ~e~to~e ~uot 6.4.5 The ~EGIN 4"te~ e~.t to and RESTART COmma"dl --~~--- ------~ The BfGJN cemml"d il c~ov.dad IS the ~ea". whe'ebv the use' Cl" 4"iti.'lv ,tl,t the eiecutfo" of a D~eg,am el~eldv 101ded bv I GfT eomml"d 0' CI" lata, sta,t ove~ wit~ a elel" Illte. ee'hlPI afta~ I fltll e~,o,. RfST~RT all0wI t~e usa~ to t~I"lfe, eo"t~ol te I ~fffe~e"t eofnt in I ~U""."Q 0'0O'I~,. ~o'l.blv I' D,eyioullV establfl~ad by the D~Og,am it,alf ul4nQ ~h~ "Sat Reltl~t Add,als" flcilitv withi" the Ge"a~a' Ut4'it4el Dack.oe (lea Sectio" 5.2). I" thil el.e. cu~,e"t 1/0 i. stoDDad but all 1i"klgel ~em.f".Beth eomme"dl I~a~e I co"sida'lble Imou"t of co~men cede, t~ey e,e the~e~o;e f"itiallv p~oeeSled by the 'Ime module. e•• ic."v~ the the •• "'~ i.e.' co~me"d fo~m.t fo~ bot~ BE~I~ .~d ~ESTART f. BE[GI~'] ["ct.l .dd._e •• ]~C~> (1) RE [START] [Oct.' .dd .. e •• ] ~CR> . . A" .dd._e.~ ... ~u"'.~t .uoo14.d f" eithe .. c ••• b.Com •• the .t.~t oof"t fo .. 0 .. 00"."' executfo". If omftted, the followf"Q default v.lu ..... e u •• dl •• BEGIN - the .uto",.tfc at ... t add"e •• 4"e1uded f" the o .. oo .. am .ou .. ce .fND at.t.me"t .~d . . . . . . . ault of ••• emblv, 'f"kt"Q a"d 10ad4"o, ~ow .to~ed f" PSA f" the SVT C••• Saetfe"1 2,1,1 ."d 5.1). (~.vbe 1 - .n fl'eg.' .dd ..... • 4f .-----._----.-. 1. A • .- h•• the , •• tfno of the WBI,BE modu" noticed th.t • v..... tio" ." the BEGIN fo .. ~at .a ._~a~ w~o have bla, 4.e.i BE[GIN] [Oct.l .dd ..... ] May .0..•. [S]~C"> wh .... t~. oDt~on.l ... ou"'."t S, m.an4"Q SAVE, ~,.v."t. the 1v .utom.t.c de,.t.o" of ffl •• cu .... entlv 00." fo .. output. ' Thfa w•• o .. ovided 0,fafn.'1v fo .. the b.n.fft 8f • u .... who h.d ., .... dv .m •••• d • '.nothv ffl., De .. h.o. of ...... eov • .... ble d.tal by the t.me • 0 .. 00"."' i.flu... oceu .... ed a"d would th .... fo ... not went to 10.e ft. How.v ... , th ........ two m.lo .. o.-oblem. fnh .... "t in the u.e of thi .... ou",.nti "0 .. m. a. ."0. Th. SAVE ooe .. atfon U"S "o,,",a, Fil.-",.n.O.M."t eedu.-el to el0.e the f11el fn D... ticul ... thfa ", •• ". ~r.tinQ out d.ta eu .... ently.4n ~."'o .. y to the device, ~tnce, in oener.l, ~EGIN 4" t~i. e . . . . . . . . eue.t.d only bec.u.e of oo ... ", f.41u ... , the ... i • • htoh orob.b1'.tv th.t tht. f. eO"l"uot.d d.t., thu. sO",8dfnQ the eff.ct of the f •• 'u .. ~ to the devie •• ~1th the o .. oo .. em th." b.Qun .o.fn, the eventua' .... lu1t miQht be • df •• ate ... c.. (e .. ~fnee the f1', would "OW exflt ff'e., .inee the o .. oc •• s 1. no~ •• el.ctfv.), the oroo ... ~ ",u.t be •• t uo to u.e • diff ... e"t Fil.-n."", fo .. t~ ...... un 0 . . . seeond faflu ... occu .... Th .... fo ... this ootio" h•• not be." adv ... t4zed, in.t •• d .ueh iA edvi •• d to KILL the oroo,.", fo", .'t~ough thf • • p ... fo._m • • "o .. m.' .CL~SE, he il t"." i". DOlftio" to u •• PIP-It _to ~fek uc the cfecel befo,. it i. too '.te. R.f.~."e.s to thi. f.atu .... ~e omttt.d i" 1at ... d4.eu •• fo"l. U.... '.0 DOS6. 'Hm ~o .eu~ce edd~e •• i •• uDD,4ed) RESTART - thA 'atest add~e •• sto~ed at RSA the SVT by a c~oe~am ~eaUe.t t~~ouoh GUT. b. 4" Both co!ma"ds ~eQui~e 0~1y that a o~oQ~am be loaded, it. 'U" Itete .1 immate~.el. ~oweve~ becau.e REST.RT ~Ult be Q4ve" e~ edd~ess and De~fo~m. le •• fnit4elilaticn, its ule befo~e the c~o"~em hel bee" .te~ted leem. c04ntlels. o 0 _ A. "oted Above, the D~oces.4na fo~ both ~EGI~ e"d ~ESTART comme~cel at the .Ime modu'e, fi~.t'Y to ve~ify the c'elence of e 'oaded C'OQ,am a~d lecondlY to check the veliditv of the Itl~t edd~ess whethe~ this be I COnve'I.O~ 1'011'1 an a,oume~t sUDcl1ed o~ the ~e'evant defeult. Fe.'u~e 1" e4the' ca.e ~e,ult. in ~eJect1on of the co~mand by Scec4a' D~4ver ~ece". ocom~a~ds ello .• h a,e cle.n~u~ such a. k41'4~O The two a com~on eu,~en~ leQue~ce fo, Qe~e~I' 1/0 by ha~dwa'e RESET, ,e-4n1t'e'411no the .tlck, the keyboe~d L1,te"e'l D04"te'l and ve~.ous SVT ent~.es a"d e"lu,4nQ theveee"cy of the MSB, ADa,t from re~ov4"Q e~y 1/0 Busy "eOI, RE3TART p,oee.14"Q 4. the~ comclete. A d4,ect exit is therefore teke" to the u.e, D'OQ~lm at the .tert poi"t scec4ffed, with ReQiste'l re.to'ed to the.r cOnte"t pric, to the eo~mend 4nte"uDt, BEGIN heweve~ ~eQu1res fu'the~ act40n and this i. effected i" two ove~1lYs called consecutively intc the ~se by E~T 3A '.ee Seet4o". 6.2.J a"d 6.2 •• '. In the f~,st over'aY, a" the tIn 14nk.ge cu~~ent'y estab141hed il e.a~4"ed 4" dete1' vja the Mcn4t~' OOB c~aj"~ Aae1" a"y ~USy ~lag. are ~e moved, but in eddit40" eac~ dataset 48 cheeked fe~ a f4le ~ e me 1" 4"g f u 1 1 y 0 oe ~ e d (. e e Ch a e t e ~ .). I .; • u e '" f4 1e f • CO"t."UOU~ or 1• . '.nke~ a"d 1" ule o"'y fo, 1"put, it i. merelYeloled • • linked file beinG c~elted 0" the other hend mu.t be deleted to allow the DrOQ,a~ to 'eODe~ tt by the .,lI'Ie "eme without eo "~ne E~1sts" er~o,. 0" a DECtaee, t~41 41 effected by ,emov4"o the "ame f,om its ~4~actorY' 0" dilk. it a,so mea", that the ~1oc~1 already .lloceted mu.t be u~1."ked • a" operetto" ca~~1ed out 4"t~,"ellY u •• "~ .TRAN~ Thi, evo1d. the "ece.s1ty 10' closi"O the fi'e f4~lt, a cotenti.' cau.e 01 df.k co,~uot4e" Csee 'oet"ote to "Commend Fo~met"). A" F.xtenlio" to e" e.i.tino disk f11e is .1m.'arly removed. ~/ The .ecen~ overlay •• called when the 1/0 c~eck4"o is como1ete. Th;. then u",i"k' any buffe,. stil' a"ocated from f,ee core, i.e. nevice A•• 1on~e~t Table e~te".4e"s mede afte, tke ~~OQram Itert Csee Seetio" 3.1.2.2), t~e ~DB che." Dose.RNO Ind dev4ce d~fve~s "o~~8"Y "o"-~.sidl~t, 8"d effectively ~etu~"' •. t~o,e buffe~. to f~ee co~e by c'ee~i"Q t~e Buffe~ Al1ecet~o'" Table Clee Sectio" 2.4.2). tt ~llo ~e.et. t~e 4nte~~uot vecto~ tied to t~e d~ive~. thus ~e~oved e",d a",.u~e. th.t the ~aside"t d~ive~1 I~e unlf"k.~ f~o~ I"'Y FI~ C~I~n Clee Sactio", 4~1.J). Fi~ll'Y it ce". t~e ~~o~~a~ II .~ecified w1t~ III Reoilta~. clel~ed. ElCit Stetel Ii the S~ec~.' n~~ve~ i, reca,'ed 0'" I~~er, the Re~i8te~. Ind Itlck .tate a~e I. shown f" Saction 6.2.5 w4th P1 .et a. fel'ow.i .2 • P~eorl~ ~ot 1" co~a, ~e"ce the co~~a",d 4. I~ve'id • • 3 • Add~elS a~cu~ent.co"tain, ot~e~ the", octal dioit. o~ i. too bfo, thul Faulty Sy",tax • • e • Add~a •• to be u.ed Cinclud4",c a default) f. Il'eoel beeaule it doe. not fall 0'" e wo~d~bou"da~y e~ i. oU~lida the oote"tial ~~o~ra~ area. f.e. ahove t~e ~el.rllnt Mo"ito~ I",d be1ew t~e too of Iva.'lb'e co~e. AI ",oted unde~ wGene~al P~ocell."c", an acce~te~ co~~.n~ ~e Ito~e. the .yste~ to ",o~m.l D~ocram ~u"'-Itate w.t~ the steck clel~ed to p~oo~a~ Load Poi"'t a~d ReQi.te~. ~e.at to thei~ conte",t ~~io~ to a RESTART o~ 0 fo~ BEGIN. Detailed P~oce •• ingl The commo" orocessino fo~ B~GTN I~d RESTART i, .t~a.~htfor wlrd end neadS "0 41lultration. Its ba.ic staD' I,e a. fol'OW.I 1. Reltore by the I~t.rorete~ e",d the .tac~. ReJect the comthe Soecia' ~~ive~ if the MUS i" SVT co"'taf~. a low-byte of 0 CDreO~am "'ot 'oaded - ,ee Section 2.1.1) Re~f.te~. ol •• ed clea~ i~' ~etur" from ~a"'d as invalid throuQh If any aroument i •• uo",ie~, convert va14d octal d;oU. into t~e;r b.n.~y eQu.~lle"'t. u",til .hhe~ a ~ecoo"fzed delimite~ (.Dace, comma, o~ CR) o~ .fnQle-word overflow. (AQlin reject tha co~mln~ fo~ ~a~lty Sy"ta~ +o~ i"eoel eha~.ete~1 o~ such overflow). 'ubatitute the loo~oDriate defAult fro~ the SVT fo~ "'0 arQument. Ve~ifv the ,.ga'ftv of the .t.~t .~d~e •• , wfth •• ~ i'.r. ~eJ.etfo" ff it f. "ot e" • wor~-hou"d.~v 0' wft~f" the c~ooram a~eA a. deff"ed bv the too of t~. r •• id."t Mo"itor a~d thlt of avai'ab'e cor •• li. W~." the eo".o'e ~,f"ter ha. eomo'.ted the eo~ml"d LF outout CI.e •• ctiorl 6.!5.2), 1,.11 I" 1/0 bv RESET, but r •• tlrt the 14"e-eloek ff c~ele~t C,. 'how" bv it. v.etor o01"ti"g .1.8wher. thl~ t~. Trac .~~or routi~. C.a@ chActe~ 7) Pr'c.re a ~.w .tac~ fmMedfate,y ~eJow ~rOGra~ Lo,d poi"t ,. .aved f~ the 8VT, wtt~ ft. ffr.t e~triel b.i"G 0 for crogrl~-e.@eut.o~ crfer4tv 'ev.' a"d t~e I~.e.fied .tlrt DO."t Cl) ~e~ov. from the Dre.e"t Itack the ,.ea" ~Iramet.rl for the Se.ei,l Driv.~ a"d u.e the ed~re'l for the Lflt."erl P04"t.r Store saved below t~em to r.store "orma' ru"-t4me key~oArd co"t~ol t.e. 8.etio" 6.3.1). 7. R.l •••• the MSe bV clearf"o I"V outst8"dfrlCi IJ.eQ. COU"t ,"d ftl OCCUcI"t-tde"tffier t.e. 'eetto" 2.3.1). e"lure thlt WRA the 'VT CO"tl."1 t~e Idd,e'l of the System weit Looc Clee ~.et.o~ .'.0 4" 2.1.1). Clll the ffrlt ov.rllv frOM the "e.t iVltem-devfe. block ff the eO~ma"d t. BEGI~. Fer R~STA.T, trle. the Mo"ftor DD8 ehlf" f~om ft. Itert f" the ~VT C.ee S.ctfo~ 3,1.2~J) .I"d r.mev, Au,v "IQI from the DD~I e"d th.fr I,.ocflted devfee d~fve', tooeth.r with e"v ~ 'f"kage Clee Sectfo" J.l~2.4) Set t~e ~US t" the SVT to Ihow ·DrOQ~a~ leeded I"d ru"ni"Q" 1,t. ~ •• tore t~e o~fg."al C~OQrlm regtl. t.~., relet SP to the ".w stac~ ereCAred It .teD ~ a"tI ex it bv RTI. The ov"'lv croe.'lt"o "OW oerfnrMerl for ~EGI~ 4. fllultrat.d at Ffoure 6-9. AOI4" the fe110wf"O are the bl.4c ODerat40".i R•• tore the Reoilter. to th.tr Itat. ove~'lv ea" Ind c'ea" uD the Itlck. ..... -....... -. ~rio~ ~et to the the start 1. If ~~~ _tack w., .~ctv. before t~e eom.l~d fnter,uDt the.. 4t8ml overwrite the f"t.~ruct r.turn a"d ~e"ee ee"~ot eerruet I"V other veluable dltl Clee F40ure 6-2,. the ~o"ito~ DOe cha." f~o~ the SVT .~d 41 there fl. "0 'f"k~oe cu~~e"t'Y 00 to ,tee' te c'" the "ext ove~lay. ~f Re~ove the SVT DOe-,fnk. Fo~ e.ch ODS f~ the ehef~ (aaain lee Sectfon 3.1.2,3), c,ear ftl SUIY '''0' that of ftl a •• oefated devfce drtver ,"d 'e~ove '"Y ~ ,f"kaQe. Go to t~e "ext DOe i" the Chlf" tf a •• th.~ the D~tver I"te~face T.ble). (leI Sect ton 3.3.1) IhoWI the devfce to be "on-f4'e •• ,te"ted or t~OUQh the device i. f4'e •• tructured, there t. our. ~ent'v no f4" open, (f.e. 9~,".fl~0 •• ele.r ,nd "0 FIB f. attached • .ee Seetton '.3.2) ~the~wf.e 'nlure buffe~ avet'tbf,tty hv .reDer.~o 0"' 0" the Iteck of a •• ,e .et " the It'"d,re fer the device (a. .how" t" the Dr4ve, ,"te,fl.e Tab'e). ~.nk thf. buffe~ to the OD8~ '. ~.i"o • du~mY !. Fo~ a 'inked f4'e aDen for ereetto" ~i"k.block overl'vf"a the ~".t~" code.of thfl routt~e~ eall .eLOI~ tf data in the FIB indtcate. that the ft'e fl eontt.uou. or i,_ ope~ on'y for tnput .~~ '."k.d~ L~.e the 'tIck buffer and retur" to .teD 2 whe~ do"e. ~"ce·o"'y or !~t.",fo", a. dum~y TRAN-block (lee .ec~f~" 3,2.1.1' • ,oat" 0" too of the .t,rt of the rout tn, • a~d u,' it to read fn the a~proDrfate d4rectery bloek froM the device. (The FtA contatnl ftl .~e"t~fic,t~o" if no"' the ~OPEN ea"not be complete • • 0 .etu'~ t~ .te~ 2'. C'ea~ the File-name frem the re'ey,"t entry for a new ft'e o~ un'oek ,n o'd ene het"o e •• tended a"d wrfte the block b,ok. (The eld .4le 'ttll ret,t", ft. former 4dent4tv." the ',tter ea'e • ,ee FIB d'ieriotton', ~r.oare NO fu~t~e~ e~.ek let40~ 41 ~eQu4~ed ~etu~n t~ .t'~ fo~ ~EetIDe, ~e~ce 2 if the d~~v.'.'.e4'~ty t~d.c.to' '~OWI th4. .1 t~. dev.ce 4n UI •• ~t~e~w ••• ' .g •• ~ by .TRAN, t~.ce the block. of the fi1., .t~~tf~g f~o~ the FIB .nt~v io~ "Ff~.t aloek" .nd ff~4.~f"g w~en • ~ link •• eneou"t.~ed, el ••,. i"o III '."k~wo~dl 4" t~. ~,oce ••• ~n eO~Dlet4en, ~etu~n to steD 2, aoei~ w.th the .tlek.buff.~ ,e· "'ov.d C1) • Ind C.~l the .econd eve~l.v ~loek ."d when 1n, , D.I.ed. from the "Ixt .y.t.m.devfee •• tor. A.gf.te~ eo"t.nt ••• 8. Collect t~e .te~t Idd~ ••• fo~ .nv Devte. "'.onme"t f~o'" BAT in the SVT. If nOn.l, t,.e. the t.bl. lfnkage C••• S.etion 3.1.2.2) A"d un'tnk .,, .eo~ent. Ibove t~. to~ of the ~e.t~e"t Monitor •• '~Ow" .t EDM in the !VT • .4nee the.. mu.t OCeUDY i~ee co~e buife~. C.ee Seetton 6.4.9 I"O)~ Q. ele.~ all wo~dl in the Buffe~ Al'oe.t4o" T.bl. betw •• " the lfmftl Ito~ed .t BFS I"d !FE tn the SVT. Re.et TO~ .nd _it. .tlek·.toD C.e. ,.et40n '-.'.~) f~o", fOM w.th the .tlndl~d 4~.byt ••• f.tv T.b,. ,".~gfn. 10. Se.~eh the ODL (.e. S.ct,O" ~"fd."t d~4ve~1 (Itan.ffed 2.1.3). io~ De,,,,anently by no .yste",·deviee da. t., w~.c~ are ft, ••• t~uctu~.d, c1e.r btt m'D DO • • nter., fo~ non.r •• 4dent d,fver., e'e.r th.tr core .ddr ••••• in the DOL a~d re.et the dev4c. i"t.~ruDt veeto~. to t~ • ., to the e~ror routtne~ ••••••••••••••• 1, It .~ould be "oted that no atte~~t •• ",.de to mOdtfv the bft.m~D .ea~e"ts .to~ed on the d.vte., agafn to av04d DO ••• • bl. ce~~uDtfon. AI .~own f" S.ct.O" 4.1.3, the block al'o- c.t40~ .ehe~e u.e. I" .n.eo~e •• g~ent du~tnQ f~'e·c~elt10n. ~enc. tt follOW' that 4f th1. i. not wr4t~en to the d.vte., .t.,1 the bloek. ofven to t~e d.l.ted ff'. wfthfn ft. r."oe ~e"'.fn f~ee fo~ fu~t~e~ U••• How.ve~, there ",ay be .ome b'oek.- whie~ were Illoe.ted f~om I ma~ .eg",e"t wh.eh beeeme ful' ,nd w•• t~er,fo~e ~e~l.ced t" ~e"'o~y. Thele ar. ~ot recl.4med. It f. Do •• 4ble, •• • re.ult, t~.t I "Oevtce Fu"" .~~o~ C," oecu~ 'ater eve" thOUQh othe~ evtde"c. eo"tr.dtctl thfl. Thu. th._u.e~ 4• • dv1.,d to .vetd e.e •••• v. u'. of BEGIN •• a ""1"1 of ~e.u"'~t40" Ifte~ Droer.m f.tlu~., ~a~tfeul.~,v 4f 10"o •• h file • • ~e involved. Clee "Gett4ng DOS 0" t~e A.~" • OEC·l1·~YOO·O,. 1t. ele.~ all Qeoiste~. at'ld exit te the o~oora~ with MlJS f" t~e SVT, .a.f",.et to t,t at'ld the stlCIe ~e~ov.d to Droa~4~ 10.d oo."t. the e"able. the oDe~8te~ to reeu •• t the U"'o.dDroor.m ~re.e"tlv f" core, If ".e •••• ry ft .toc, the ~~oor'm' oce~'tfo"'. f"eJudi"o eurr.",t I/O~ ~ow.v.~ ft •• t.bli.he. eOt'ldftio". whfc~ Der~ft the trl",4."t ~o"'fto~ "OW brought '"to core to ~10" a"y ffle. left Ooe'" ."'d 'e, ••••• 11 data.ets .tf" ."ftf.'ized. The KILL 4"'0 ef CO,"",I"d No eo~m."rl • Fo~",.tl .~eume"t • • ~e "eeded, .0 the eo",m."d i, .i~e'vi KI[LL1 G."er.' De.e~iDt'o"1 If • a~eo'.m i. lee" to be loaded, h.~dw.~e RESET ."d, hy • • • • rch .1' .,1 the t/~', ki"ed ~e".ter DDB At the •• ~. t.",e, ef ~y • ch.t", .f 110 bu.y .t.t ••• re re",oyed. ."y ""lced ff'e f • • ttll oee" for outnut, • ff"ll block with. e ,ink •• D~eD.red fo~ ,.t.~ df.e.teh wh.", the era"I""' ~O"' to, e.", CLOSE. e.ee Seet40" •• 1) The .etu.l KII.L ,. effeetea by •.• ~)CIT. eal'. t ••• S.etio" ."d,. of eou~.e, the Seeef., D,fve" i. "ot r.c.n.d, H."e. the eom~."'d D'oee •• o, .".u~e. th.t the ~S~ "ead.d by XIT •• free a"d ~ef"'ft'a'iz~. the Iceybolrd Lf.ta"I'. DO."te~s. F,".lly to a"9w XIT ."'e" ,oe'" ."d o"v."t eo •••• ble f.ilure, the .t.e k f • • et .t the too of Iv.fl.ble ",e",ory b.fOre the ~MT ea e." •• ",ade. e.lS) Exh State. If the KILL com"'a",d f. aeceDted, cur,e"t ~eQt.t., I"d .t.cle .t.te. e.a •• to be ~"ey."t. Howeve, tf "0 proer.m f. 'oaded, the Soeetal Driver f. reca".d to ~.J.ct the co",,,,."d. I" this ea.e, the 'eeufre"'e"t. "oted f" e.et4ol'\ e.2.! 'D~'y ."a f" ~a't.eula, Rt ••• et to -2 to ~.oue.t ." -r"v.'td Co",m."d" ~e •• age. '-~ Detailed P~ocelli~gl KJLL 9~ocelli~g te~el t~e f01lowi~g leQue"ce, tio" tl "eeded. 1. "a ."ust~a qelto~e Reoi.ter. Da'l@d bv tke 4"te~pete~ e"d ~e MOVe its retu~" peremetl~' f~om t~1 Itaek. Reject tk. eom~and as t"valid t~rouQ~ tke !pecial Dr.ve~ 4f the MUS in t~e SVT C•• e Seet.o" 2.1.1) eo"tat"a a ,~w byte oi 0 - ~r~q~eM "at 1oedld~ Wa4t fo~ the co",o1e o~f~te~ to eo~o'ete ita outeut of t~e eomMa"d LF C.ee Seetfo,., e.J.~). Ki', all 1/0 bv RESET, hu~ ~e.tl~t t~1 It"e-cloek 4f D~'le"t Cal I~OW" ~v ita f"te~~uDt vecto~ oo~"ti"o el.ew~l~e the" t~. t~a~ ~r~o~ ~outf"e ea.1 CkaDtl~ ,,). Set t~e .tl~t of the Me".to~ DOB c~a.,., from thl SVT e.ee sectto" 3.1,2.3). Go to atep e 4f "0 0081 a~e eu~~e"tlv .ltablf.heQ, othe~wfle fo~ eech OD~ f" t~. c~ai", clea~ ft. SUIV Flag a~d that fo~ a"v d~4ve~ astoned to 4t e"d ~emovl e"v Q It"kage (lee Seetto'" 3.1.2.') A. of ftl Faef1ftv r"dtcato~ elee Sectfo" 3.3.1), e"v 9~tve~ ts .~e" to.be ftle-It~uctu~ed, check fo~ a ftle Ittl' OPI" fo~ outout. If luch file f. '4"ked e"d .oea~e"tlv co~ ~ect'v u~dl~wav, c1ee~ t~e li"k·wo~d ." the deta buffe~ attac~ed to t~e ~A'eVe"t OD~ a"d aet a va~f. ab'e pof"te~ t" th, ~D8 O~fve~_wo~rl COU"t to fl'ldtca~e that dete sti" re~af"l fo~ outout w~e" 1ate~ c,o.ed. If, efte~ e.amf"atfo" Afte~ e" the OD~I have bel" D~oce"ld, ~emove the UleOe.Count a"d Occuoant-tde,.,tffia~ f~o~ the Ita~t ef. the "" S8 t 0 ~e , e a I e it f 0 ~ f u "t kI ~ use C. e e Sec • tfO" 2.,l.U qemove t~e BCleta' O~ive~ ~Ac.'1 pe~emete~. f"om the Itaek a"d use tke leved L.lte"e~ ~o.,.,te~ StO~1 edd~'11 "OW en t~p (SI. leetto" 6.3.1' to ~.t"t tia,ize the Lilte"I". 7. Move the Itack pot"t@" to the to~ of CO". (balow t~e possible Pepe,,-tepe Sv.te~ ~o.de".) a"d ee" .EXIT to feteh the t~.nsi."t ~onttor to oerfo~m DOlt·p~OQram c'ean-u~. Dose.RNI"I I~ Se~t.o~ 2.1. A , it w.a ahow~ th.t if • 1t~e.e'ock ta D~e· .,"t .~ • DOS co"iiQu~.ttO", the ~~~ito~ ~"~t~11flltt." rou. .eta it into oDe~.ttO" by e".b1t"O tta Sectfo" 2,5 the" outlf"ed the ,eaida"t u.ea •• c~ tnte,~uDt to t"c,.~e"t I double·D~eef.f~" COU"t., ato,ed •• TOO i" the IVT. The TIM[ co~m'"d e.fatl 10 th.t the oDe,.to, ca" e"ter. d •• ,y 4"ftt., aettf"o fo~ Ton I"d c." ,.te, ."te'r~o.te ftt eo~te"t. tt"e .u~o~.!tc,"y 4nt,rru~t f.ci'fty, ~o"iter ~edule Which CO~"""d For",.ta Th. ge"e'I' for", for the co~ml"d fl .a fo"owi. TI[MEJ ."d rHHI~MiSS]CCR~ ~~ 59 .ach ,eDreae"t UD to two ~eef •• , f~r heu~a, ~fnutea aeconda • Where HH, ."d • a wfth the D.TE command, d.aeue.ed tn dfQtt. Sectto" 8.'.1, a.~e for.lt. the ~reaene' of the .rQume"~ identifte. the entry of I "eV tfme, itl .baence • reoueat for ~rtnt-out fn the '."e,.' Deaerf~tfo"1 Provided thlt the f.,at chl'lcte, of I"y ~,~ume"t f" the ia • vlltd deei"'I' dictt, the TIME DrOCetaor ItIU~e. TOO i"Dut ."d co"ve~tl e.eh decima' ASCII e1eme"t. t"t~ ft. bf"arY eautv.Je"t. If e.~h vllue ~I the" wit~t~ ft, e.oeeted 'f~tt, ft ia reduced to elock-tfck. afte~ effective MU'. tfelfc.tfo" by I" 'DD~oo,.te f.ctor. Th. IU. Of the three re.ultl ta atored fn the SVT Time alot f" the detf"ed dOubl'-9reciaio" for~.t, f... with e.ch.word eo"t •• tf"O I DOlftfve ee) aiQ" fol'owed by 15 "umerfc bftt. If ."y ele~e"t ia omftted, • def.ult v.lue ~f I t. aub.tftuted (I.a. "TI 12" fa .eceDt.ble f" '.eu of ·TI 12 •••• ·'. however ,"y other deDartu~e from the aDee4fied for.I' .IUI •• reJectf~n of the eomml"d 0" the orou"d. of "Il'eOI' Sy"t •••• CO~"'I~d ef TOO Drf~t·out fa aUDD!fed •• e ~ •• ult o~ the,. beinQ "0 comml"d .rgume"t or of one begin"f"Q wfth a ~o"-dtoft. The curre"t co"tent of the ~VT Tf~e counter ta lucce •• tv.'y dtvided hy e" IDDroDrflte vllue to D,oduc. the reaui,.d 'sell diaits ~h4ch I,e then diae.tched to the c~"lole Drt",., with leD.rAt."" eolo", a"d I ter~.~.t.~a CR/LF. PAGE b-S3 Regl~dlels tu~n. of t~. o~oeellin~ ~e~fo~M.d, eeta.'.d t~e inte~~u~t.~ o~Oq~IM t~e TtM~ ~out4ne ~e by Soec4al D~ive~ ~eeall. Mence t~e Regi.t.~ and stack .tate a~e a. data4led 4n Sect~on 6~2.5, if in i.~t t~e cOM~and ~I ~.Je~ted b.caus. of Faulty SyntAx, PI conta.n. -3. to ~~oce •• inQI Bot~ t~e 4n~ut and out out funct40n. u'e .4~t"~ 'uce •• ,tv. a~d't~on Ind lubt~lct.on alco~it~M' fO~ ~ulttel.clt.o" ,nd d4vi.ion. t~at.d It 1. T~e ~~oce,.tng F4gu~e 6-10 and qesto~e R.oi'te~8 tllu.- the Inte~D~ete~ Ind the ,tack.. If t~. fi~'t c~a~act.~ of a~y a~ou~ent ., "ot I decfMa' dicft, a'au~e outout i, ~.aut~.d and 00 to .teD ' •. clea~ 2. ,eQuence the~efo~e i. a. 4, ba.ically a. fol'o~.i ~.tu~n Da •• ed ~a~a~ete~s by f~OM on the atlek and .et a alt.~nlt. "'Ment l4Mtt' Ci.e. 24 ~ou~., 6~ ~fnute., 6' seconds) ,nd eo~· ~e.~ondfng multfolfcation facto~ •• Clea~ Idoubl.-wo~d o04nte~ to I sto~e tlbl. of u.inG the .ta"da~d "Multfoly o~.vfous ~e,u't by l~ Ind Iddnew diaft- techniQu" eonve~t con.eeutive decf~ll dfoft. to· bfnl~y C•• nole.D~ect.ion on'y needed), .tooDinG at the ff~.t non-dfo4t. If tha ~"ultfna vI'ue ,xceed. the eXDeeted l4~~t~ ~ecall t~e S~ecfal D~tve~ to ~eJ.et the eo~mlnd with "Faulty Syntax" o~1nt. U.e a non-0 4nDut value I. I count,~ whf'e I~dt~o t~. cu~~ent ~u)t~olt~ltfon flcto~ fnto the .to~e on t~e .tlck Ca"owinc fo~ the 0 stan tn the 'ow-o~de~ wo~d). ~. If the. "Second.- facto~ hI' JUlt bee" u.ed o~ the end of t~e a~aum.nt hal been ~eech.d, 00 to .teo 8 to .to~e the ~e.u't. Othe~wt.e chec~ the cha~acte~ which .tO~Ded the conve~ •• on fn steo 3. T~eat s~ace a. the. end of inDut and aQatn 00 to .tee 6. Fo~ colon ~oye to next tlble ent~y and ~eDeat f~om steD 3. In a" othe~ eases, ~.Ject the co~~anrl fo~ "Flulty Syntax". 6. ~ove the f4nal ~e,ult 1~0~ the .tack 4nto the SVT and ~ecll1 the Soectal D~tve~. Fo~ D~fnt.out, adJult it to TO~ fn collect the cu~~ent T~O content and Set a 00- ~'Move the low-o~de~ •• on. 4"t.~ to a tabl, of ~.duet40~ facto" e4~al d404t of t~, for each de- outcut. f~o~ the ASCII d4Qit b'I.(6~), eou~t t~e of suec.ssful su~t'aetio"s of the eu',e"t tabl. factor. Reltor. the ,e~a4~d.' w~e~ ~'Q~t.ve a"d ~ov, to "ext factor. ~tart4"Q "u~b.r S,"d the re.u1ti~G charaet'~ t~. the eo".ol, er4"ter. If the fi,st dio4t of • ea." reD.at fro~ Iteo 8. If the seeo"d but ~ot that fO~ the ·Seeo"d." ,le~.~t, o'f~t eo'o~ e~d t~,~ reD,at fre~ .teo 8. Otherwfs. 'estore the eri"t" earr.e~, a"d r,cal' the SD,c4a1 Dr4v". with e~/LF Th, MnDIFv eo~~e"d eermfts kevboard ,f~u1't.o~ of the ~.am4", CeDosit oa"e1. swftc~,. fo~ makt"G Mi"or cha~a.' to locatio", f" "or~al ~emory at a"y tim'. At 'ac h reaue't, the co"te"t of a sDeefffed addr, •••• outDut .t the eo~.ol' orf~ter~ The u.,r ~.v the" mer.1v elo" the 'oeatte~ bv '"try of CR alo"e or he e," tv~, f~ 10m, "ew CO"te"t firat, R'ol,cf~g the CR by ~F r'lult. 4" the Auto~.tfe outDUt of the co"te"t of the ",.t locatfo" for 14mt'er ectto" a"o thus Drovfd,s for s,aue"tfa' ,.amf"etfo" a"d modff4catfo~. ,"d ~ Thi. of cou~.. f. t~. aDT.ltR~ ~ow've~ ft •• b • • • u~.titut. fo~ th.t ..m. t.ch"fQua "~t f"t~"de~ thAt D~OO~'~ .1 t~.t u•• ~ 4" t~. M~OJFV CO~MI"d 4" "o~~.' d.~uea4"o, 4t f. Ju.t • M.,", fo~ M.kf"o k"ow" Ditch •• to a" .'~ •• dV ta.t.d ~~oe~'M ••• t'~DO~'~V M"'U~', u"ti, the o~i~f"., .ou~c. c." b. co~~.ct.d I"d ~'I.'.~b'.~. Th. CO~M~"~' D~ovi.4o"1 do "ot the~.fo~e a.t."d to oDe~lttO"' UDO" the CO"t."t. of R,o~.t.~. or the •• ~.~"., D.ge. Fo~ the 'Itt., c ••• elDecf."v, the COMM."d. Droee •• o~ h•• "0 wlV of ch.ek4"0 .d. dr •••• '.o.,~tv' it could O"'V t~v t~ lece~. " ~aou4,.d 'oc.tfo" ."d t~u.t th.t "0 ~.,dw.~. t~.e follow.d, A. ,how" i" Ch.Dt." l, .uch t~'D would re.ult 4" • e." fo~ E~ro, Of.o"o.tte e~f"tf"o which .1.0 ".edl the ~S~t .f"ce th4. 4. "ot f,.. .~d the MODI'Y D~OC"'."O c.""ot be Co"t."~ed to ",.ke tt '0' the 'v.t.", would ha"Q. M'"ce the cO~M."d ••. ~.Jeet.d U""" .th • • dd~"1 el" b. v.~fffed ., be4"e ~ftht" "o~M.l bou"d. (1'. CO"'M."d For",.tl Th. ~ODIFV cO"''''I"d MU.t 4"clud • • " .,ou",."t. thu. ft. 4"Uf."v t'l ~~[DI'Yl Oet.l .ddre •• CCQ~ wh.~. t~ • • ddr ••• It •• ~" • w~'d.bou"d.'v M'Morv (l •• dt"O ,.,0. "ot ,eaut~.d'. . fO'~lt wfth." avafl.bl. , ;.".,., O,.crfpt4o"1 P,ov4d.d th.t the .dd~'I' f. v.ltd •• "oted .bov., the ~ODI. 'Y D,eea •• o, 4"t"",,lv CO"v.~t. ft. oct., ASCII dte.t •• "to • b4".~v v,'u. whfeh f. th." uI.d to .et • DOt"t.,. Th., •• ft.~ the oD.~.tfo"_f. , dialogu. CO"I.,t!"Q of 0"' o~ •• v.,., 14" •• , fo~ elch of wh4c~ the Droce'lo~ fi,.t D~4"t. the fellow4"Q, IQ.4" u.4"e ft. OW" oetll trl".l.tori .dd~'.I/Co"t."ti ....... ----_._. ~/ 1. Th. ha"o.up C'" "eve~thele.! occur if, ev the LF D~O. C"" the u.e~ ,tec, above the Iv.t,.ble ~emory l1m4t. Owf"O to the limited ~IDlcftv of the KSB, the 'eo,,4tv ch.ck f' M.d. O"'V 0" the f4~.t .dd~.!, oDa"ed. ~."c. 4" the p~o o~.mMe,. M."dbook, the u.e~ f. adv4 •• d to be c.reful. DOS6.~N~ I"d weft. f~~ t~e u•• ~ ~.o'v tl). ~h' chl~,ct.~ •. e"te~ed_by the oDe~,to~ ,~e .to~.~ 0" teo o~ the co~m~n1 fn the Lf.~ te"e~. buff,~, .~d du~fng tht! oe~fod, RUB OUT o~ CTAL/U .re I •• umed to fnd4e.t. e~ •• u~. of ~revfou. f~Dut I. f~ the o~f g4"al cem~l"d. The f"out .toD • • t the ft~.t CA o~ LF whe~ v.,4d ect.' fnDut, 4f ."y, •• u •• d to ~e •• t the eont."t of the .dd~e •• u"de~ the pof"t.~. A L' ent~y co"tfnue. the dt'looue,.C~ e.u.e • • " e.it to the ."t,~~uDt.~ ereO~'M by Soa· ctl1 ~~fvar ~.c.'1. An 4nv.,fd 'dd~ ••• t" the co.m.~d or 4"'0" Ch.~.ete~. fn the oet" co"te"t ."tered .tOD furth.r .ctton 0" the comma"d with .n .ep~oDrflt. m•••• ~. b.fnQ Dr4"t.d IQ.~n th~eu~h the SD.eta' D~tve~. E.it St.te. A•• hew" ,bove, the .v."tu.' r.turn to the ereO~'M f. IlwaYI th~ou~h the SD.cf" Drfv.r, hence A'af.t.~ Ind .tlck .tlt • • rl cove~.d bv S.ctfon 6.2.5. 0" .rror •• it, At m.v cont •• n one of the fo',ew4"QI ~3 • 111.011 ch.rlct.~. durfno 4nDut, .e '.ulty Svnt.ic .6 • 111.0.1 Iddr ••• - not 0" word-bound 4n ,vltlabl. cor. Det,f"" Proce •• fngl Th •• eoue"c, of oDe~.tfen. fn MODIFY Droee •• ino t. t~lted at Ffgur. S.11 I"d ft. out'.n ••• I. fol'ow.i t• tllu •• A,ltore R.ot.t.r. D•••• d by the I"te~D~eter e'e.~ ft. r.tu~" pa~lmet.~. f~em the .tlek. ,"d Conve~t 'nv v,'td oct.l ASCII fnDut f"to bf"lrv Ind .tore •• a m.mory •• cce •• Dof"t.~. ~.J.ct the com~I"d th~ouoh the Se.efll Drfv'r ~or -Faultv Sy"t •• - "0 .~gu~ent, for 0"' co"t.tnfno ehlrlct'~1 othth." oct., ASCII dtqft. or for If"o'.·werd ove ... flow. "'0 e.ft, tf the converte~ v"u. 4• • n "Il1eo.' Add~"'· , •• c.cfit'd Ibove~ fo~ ~r. .......-._.- ... 1. The f~t4~~uot facilftv c.n"ot of cOu ... e ~. u.ed .tnce thf. ~e~u4~e. the ~e,e.df"g of the So'c4., ~r4ve .. • I" fmOel.fble ooer.tton whi'e the MODIFY mOdul. t. Itt" ~.ouf~ed. The i""ut f. t"e~efor. cent~el'.d by f'.o te.t4"o '"1 the ch.~.eter-ha"d'."o croce ••••• re •• bedded. PlGE ~-61 DOS6. lh"O 3. to it. eo~~e.eo"d4"o to the cO~lo'e o~(P'!te~ L4kewf.e, o~oce •• the eOP'!te"t of the ooiP'!te~, te~~i"lted by I I eOP'!ve~t t~e eo4P'!te~ ~seII digiti 'P'!d fo'lowed by the 'dd~ell ,I. uP'!~e~ co~teP'!t ~.ID.tch U14"'o the oOlitio" of the eO~~'P'!d te~~."lto~ f" the L•• te".~. CO~m8"~ buffe~, •• t Do."te~1 for the u.er ~eD'v, (T~ere •• It." amo'e room .iP'!ee t~e buff.r c," 'eeeDt I fu" 'f"'l • • ee Seet.o" 6.3.1). Wlit fo~ the i"'Dut II ",oted u"de~ "G8"8rl' De.e~.D. t~O"" 8",d whe" .vI~'8b'e .tor. the e~a~aete" w~th. out Darity (bft 1), f" the byte at the .tlrt of thw "'eW .tr."~ (to uti'4ze the .e~e teeh"4aue' ,. 4" the o~.q.",' d~4ve, (.ee seetio" 6.3~2» If the e"'t~y i. CTRL/U, eeho ~U, ,,,,d i" thf. e,.el) .te~ • ("ote P'!O CA/LF '. ~elt.rt ~heck whether. RU80UT t. ~.rt oi e .e~u,"ee ("ext ("Dut hyt e •. 2~1 • .ee .t eO !5 .bove). If "'ot, eeho ,. 0 before Drf"tf"o the ehar.ete, de'.ted (ff I"V ~e~.i"."Q). Set the Iw4teh far thl "'e.t 4"_ut a"d reD,.t fro~ ,teD !5. ~to~e a~y ot~a~ cha~acte~ 41"1 the 1~put buffe~ (f01. 10wed hy ~ •• (I -"0 RUPOIIT" fl!tg). Tf the c~eviou. ~e. PU~OUT, ec~o o. if t~. ne~ o~. is not a t.~~.n.to~ (-ba.4ce,1y CR o~ LF) C,), ~e~.'y .cho it "10 end ~e~.at f~o~ .tec 5. cha~act.~ ~. ~o~ any t.~m.neto~, ~~int CR/L'. If I~y othe~ 41"1· out h•• occu~~ed (.nc'ud4~e 0), CO~Ye~t v"td oct., ASCII diettl into a bi~a~y va,ue (2) .~d .to~. t~i • • 1"1 the .~d~.'1 un~.~ t~e coi"t.~ i" o'ace of th. o~fQ.nal co~te"t. If LF w•• ente~.d, f"c~e~.nt the ~eme~y·acee.. DO • • "t.~ .nd ~.ce.t f~om Iteo 3. Othe~wfl • • wft th~ouO~ the SDect., D~.v.~. The m~thod u•• d to cont~ol the oetal co~ve~.fonl de.e~v •• m.nt40n ~.~.. Th. leeu.nc. fo~ ."y d.,'oeue c." be •• ~c'v cO"14~e~.d '1. 1. eonv.~t oct., incut to bi".~y • ."iti."y the "II.~d co~· .,.qu~.nt 2. Conv.~t bf".~v .dd" •• 1 to oct.' en~ Dr.nt 3. Conve"t btn.~v cont."t to oct.' and er4nt ••••••••••••••• 1, Th. ch.ck ~ethod uled in f.ct ,"ow' .ny CTqL eh.,.eete,. with .'" ASCII v.1u. '.sl.th." CR (01~) to ect a • • t.,.~f"a to~ with .,1 but ~F Itocp4ne the MOOI'Y .eeuenc.. Hence CTRL/C .~t.~ed.t th41 t.~e ~.s no other effectl to i.sue • "ew com~.~d with • o"oo".~ "u"nine, • lecond eTqL/C 41 thul n.c •••• ~y • . -.--_._._.-.-. 2. m.v A .ub"out4n. u.ed in ~t.c 2 f. "10 cel'.~ heve two co".eQuence., h.~e. Th4. e. The e~ror conditio". 'e.dina to com"'lnd ~eJ.ctton by Sc.cta, O"iv." "eca1, aeat" heve th41 effect. b. Sc.c. ts .ccect.ble .1"1 lfeu of CR at the .nd of the command .~gument to ."ow .•• ca~.t40" of co~~ent o~.ced.d by I . Since ~ecoanitio" of SDece the"e. fo~. Itops the con~e~.io" v.'idly, it .1 Do.sibl. to ente~ co~me"t .fte~ ~.ol.cemen~ co"te"t, 0" i".te.d of ft. Howeve~, a' 1~plfed .t stec 4, the UI.,. ~ust t.~e ca •• el t~. bUffe~ •• now le.s the" and "0 checkfnQ occu"s. ,.".·.4z. 4. R.tu~" to 1 to CO"v.~t "ew octal CO"t."t ."d 1000. •• y. 0" t~. ~.!t~iet.d c~oec~tY of th •. KSB, the t~o 'U. b~out4"e • • r. 4" f.ct .et uo e • • co-~outi"e of the ~ •• " IeQu."ce - ul4"a • sf~.'.~ t.eh"fau. to t~.t delc~ib.d fo~ the ,AEAD/.WRITE C~OC.I'O~ 4" Sectio" 3.2.2.2. T~ J~ eh'ot.~ 3, it w.~ .how" th.t t~e.M~"fte~ .llow. ~he use~ ' •• ve u"ti1 o~oo~.~ ~U"·t.~. hi. fi".l .eleet.o" cf the 1/0 d.vice • • "d ftle. to h• • • ,oc •• ted ~fth the data •• ts •• ~v.ei"o the o~OQ~.~. S.ctio" 3.1.2.2, i" oa~t.eul.~, de •• c~.b.d the t.ble ~h.ch e." b • • ~t UD Wfth." the M~"4to~ .~ •• to ee"t.i" t~. "ec •••• ~V •••• o"m."t t"fo~m.t40" uled by the ,JNIT o~oe"lo~ C.e, Sect4o" 3.2.1.1) a"d the '., •• ~.".a.~."t .Ub~outi"e LUK Cle. Sectio" •••• 1) ~he" o~. o.~4"9 fo~ 1/0 ooe~.t.o"l. The A~SIGN eomm."~ •• ~~ov4d.d o~t"eh)" 1y .•• t~. me.". wh.~.by thfl t.bl. f ••• teb14shed. I" th •• ~e.o.et, 4t c." b. e"t.~ed .t ."y tim., thouah w4th diff.~."t eff.ct d.oe"d4"o UOO" the IYltem .t.te, Mo~eov.~ a, "ot.d ~" S.ctio" 3.1.2.2, ~t 1. of v.lue o~lv 'f.the ~U"· "t"Q o~oc~.m h•• "ot vet comcleted .t. data-let 4"ft •• lfl.· t;O", The eomma"d ~.~ .'.0 b. u •• d to. el •• ~ out.t."df"a ••• • fo"m.ntl, but o"'y .f "0 o~oo~am f. loaded. to Cemm."d Fe~",.tl Th. o."e~.' fo~~ of the com",."d •••• fol1o~.i AS[SIGNl [Oet •• et So.eff.e~, Loate.' ~.~e]ceR> wh.~. "Loafe.' N.~." •• the th~e •• ch.~.et.~ 4de"t.ffe~ fo~ the ~~lev."t d.t.l.t ••• how" ." the o~oo~.~ Lf"k-b10ck (Ie. 8.ct.o" 3.1.2.1) ."d "O.t •• et Sc.eff.e~" ~ev eO"'.lt of C.v· fc. ".m • • "d u"ft *, Ffle".",e ."d exte"140" a"~ UIe (but "0 .witch •• ), 'x.etlv a. defi"ed fo~ C~I C.ee S.ct40" e.4) a"d ob,v1"Q the •• me ~ul •• fo~ el.",e"t-omf.s40". Ct) Th. the P~ ••• "ce of the .~gum."t .t~f"o f~o'1e. e "~w ."t~y 4"to A•• fQ"~."t T.b'e cnAT) ."d a •• "d4c.ted .~ch .t~f"Q mu.t ."clud • • t le •• t o"e .ccept.ble ele~."t fo~ d.t •••• t .cec~ff.~ e"d t~. 'oofeal "a~e. No defeult al'u~o t.O"'_.~' ~Id., th •••• ~I .xc.ct.d to come f~om the o~oO~'''' ttl.,f • ~.vfc. .....-.•....... 1. B.clu,. of ft. d.'.~1t."o fu"et40" f" the eo",,,,a"d '."QUIoe, "'olce" ts of cou~.e "ot •• ~fl.~lv 40"0~ed. is Q4v~", the eomma"d .f~"ffi., t~.t ."y ex. tabl. 1. b@ ~e~ov.d. T~f. fo~~ i. me.~1"gful a"d 4. t~e~'f~~e .cc.~t.b'. o"'v w~." "0 p~OQ~lm 41 'oaded. ( •• e S.etio" 3.1.2.2) If "0 .~oume"t 1.t~"O Ge"e~ll '0 De.e~1pt1o" • •• "ot.d abeve, t~. ASStG~ eomm."d ".~m.t. d.t.s.t .o.c1ff. e.tio" t" eSI fo~mat. H9weve~ 4t. p~oce,.o~ Ca""ot u.e est .1"c._t~.~e.m.y b. a ~u""1"a c~~o~.m .'~ •• dy 4'~"Q the ~se. Th'~'fo~. ft ~u.t, •• me"t1o"ed '.~'1e~, ~~ov~d, fts OW" ch.ck~"a ."d d.codf"O .s w.l' •• ~.kf"o the .oc~o~rt.t. OAT ."t~y. T~1' ope~.tfo" ".eds th~.e ov.~'.y •• t. Sy"t •• A~.'y,e~ • .ce", the .~Qu •• "t .t~~"O .o~ accur.cy f" .ecord."ee with CSI ~u' ••• "d p~.o.~e • • t.ble 0" tOe of the .tack wh4c h ' •• t. the .tri"o .t.~t .dd~e.se. for .ech of the cote"ti.' el.me"t •• At the •• me tim., v.l1d ch.~.ct.r. fer .'.m."t. to b. o.ck.d 1" ~.df •• sa form.t .~. ~.ol.C.d f" the .tr1"O by t~e1~ corre,oo"dt"Q co"ve~ •• o" code. (.ee S.ct.O" !5.3). ~. Decod.r • tr.",'.t ••• ach .trf"o .,.~."t 4"to the OAT fo~m.t u.f"O tt. OW" rad1x.!50 a"d oct., ASCII eO"Y'~'1o" routt" •• , The ~.~u't • • ~. stored t" the t.bl. 0" the .t.ek f".t •• d of the stert .ddr •••••• OAT •• "trv Routt"e - r.due •• the t.b'. 0" the et.ck to ft. OAT ."t~y fo~m ••• 'lu.t~.t.d f" Ffou~e 3.3 ."d .dds_it to ."y .~i't4"Q OAT (~emQv;"o ."y othe~ e"t~y of the s.m. 100fc.' "1m') o~ f"fti.t ••• ".w t.bl. if "0"' ~r •• e"tly. e..... If "0 I~oume"t t. e"tered, the f.~.t oy.~l.y CO"t~o' 4mmed4.t.'Y to the th1~d ."d provid.d th.t "0 D~OO~'~ ex· •• t!, ."y. cur~."t OAT fs ~.moved by the ~etu~" of ~t. .~e. to free core, I" .11 ~'Ie.,.co"trol t. ~.tu~"ed to the t"ter~u~ted .tate by Spect.l Drtye~ ~.e.l1, thus eoaf" Re~t.ter. a"d .tae~ a~e •• d.scribed i" Sect to" 6.2.!5. E~ro~. f" the i"Dut a~~ume"t •• u.u.l c.u •• r.J.etto" of the comm."d wfth the ,pcrocr.ate m•••• o., fo~ which ~1 1••• t •• follow •• -2 • Proo~.m 4. lo.d.d .0 "Y"-.roum."t comma"d trw. ltd, .3 • F.ulty SV"t •• (il1.0.1 ch.~.cte,. or e'em."t., PAGEb61 OOS~,ItN~ .7 • NO buffe~ IC'C' fo~ • ~e~ a •• fon~e"t ~h41e • ~~oO~'~ t. U"d.~~.y, Oet.i'ed ~~oce •• i~91 The oye~.ll .eQue~ee of ooe~.ttonl ~e~fo~.ed ev the ASSIGN eo~~."d i. ."u,t~.ted.t Ftou~e 8-12. As indtc.ted unde~ "Gene~.' ~e.e~tot~o~", this i. eove~ed bv th~ee ove~l.v. e~e tndividu.llv ~ileu'le~ bel~~, In e.eh e •• e, the the ~e.to~.tton of Re~i.te~ eontent ••• ved bv the e.t1 ."d the ~e~ov.' of the e." ~etu~" c.~.~ete~1 f~OM the .t.ck. whieh f.~.t t •• k t. The SYnt •• An,'y.e~ Ove~l.v i. lo.ded e.l', rt t.ke. the follo~tno .teo.i t, bv the Inte~D~ete~ ~le.~ I t.ble on toc of the .t.c~ fo~ u.e •• deo· in Ffau~e 6-13, If the com~a"d h•• no .~ou ~e"t, e.4t to e.,l ove~l.v *3, ieted 2, Sc.n the .~ouMent fo~ i wh4ch e." ~n'v ~e.n dev4ce Iceeif4e.t40n in tht. c •• e (~o .~ttche" hence no ve l ue,', If none 4, found, 90 to .tec ~ to look fo~ Filen.~e o~ UIC. Othe~w •• e the ff~'t ch'~8ete, Of the .~OuMent ~u.t be • lette~, 84"c. dev4ee ".~e, by definitfon, i •• lch.betfc e",V. P~ovfded th.t .ue h i. the c •• e, 'to~e the 't.~t add~e.s of the .~ou~.nt in the ,t.ck-teble .'et fo~ "Oevfce" and t~a~,'ete uc to th~e. lette~. into thef~ ~edtx-Sa eode wfth." the co~m.nd buffe~~ AI,ume th.t the next ch.~.cte~ not beino the I 'i~n.ft •• the 't.~t of e unft nu~be~ end 'to~e ft. edd~es, in the It.ck-tebl. "Unft," if the che~.et.~ efte~ the I i, ,o.ee o~ COM~e co to atec 5 to eheek fo~ 1004e.l n.~e, 'o~ • no"-,'eh8bltfe next eh.~.ete~ • e~ ft~.t ff deviee - 00 to .tac 4. Sto~e the edd~el' of I lette~ •• the .te~t of 'Ft'e~nA~e" i" the st.ck-t.ele .nd 80ai" t~en".te tt and uc to ftve sub.eauI"t lette~1 o~ dfott, f"to ~.dt.-~e eode fn the buffe~, If the next che~eete~ t. then ,I ~eoe at the c~oce8' fe~ uc to th~ee 'ette~, o~ dioit. ~o~e, .to~.ng thef~ .t.~t •• "Exten,.on", 0" ~e· eocnft4on of .D.ee o~ eo~m. at 8ny cetnt, 00 to stee 5 to h.nd'e 1004c81 n8me, "0 ., S.ve the .dd~el' of • r •• the .t.~t of 8 UIC and sc." fo~ ] when found 00 to .tec 5, ~~oy.ded that the next che~.etl~ t • • cace o~ com~.~ !. Sto~e t~e Idd~e •• of t~e ff~.t ch8~lcte~ ao~c' o~ com~. 1" the Itlck_t.~l~ ~Logicil Nlm@" .~d t~I""ate the uo 8' efte~ e t~e Ita~t of 3 Chl~lcte~. to 1"to th@.~ ~ldfM-5e fO~~lt I. p~evteu,'y, p~ov1ded thlt they Ir@ 'ettera or dio1ts. CI" overllv .2 ~rom the ~ewt block 0" the 'vatem-devfce whe" com.,'ete. e. If o"e oi the ~o"ow~"ft co"d~t~o". ~. e"cou"tered the oroce.11"Q 10 far de8c~th.~, reJeet the comm,"d for "Flultv !y"tl." t~~euQh I" 4mmedtlte Soect., Drtver ~eClll (with the pet"te~ t.b'e acr.CpecH. du~f"g I. '" .rgument b.at"nt"" wtth a c~.~.eter othe~ thl" I lette~ o~ [ (t"clud1"o • .,.ee or eomml 11"ee there mUlt be .t le.at o"e e.t.aet e'e",'"t). ~" .~gum@nt te~m."att"Q b.fore a ae.~e o~ comma followed by at 10!:lte.' "a"'e. d. r le.at one lette~ o~ dfQ.t of not followed bv '. At the exft to ove~lav .2, the table On t~e .taek "OW Co"tat". the .ddr"ae. t" the buffer .tori"g the el."'e"t. ,pee4ffed .~ the i"put. ~mittad elem.nta a~e td,nttfted by a .'ot It1ll .,t at the ortQfnal P from .te~ 1 t" the p~evfou. parag~a~h. The overlev 1. "OW reIPo" •• ble fer eodf"o t~e elema"t ••• follow •• 1• s.t Do4"ter. to the .tart of the tab,e 0" the .tack Ind to a corre.po"dt"g tlb'. of ee"verlfo" lub-routt"e d.loltch .ddr ••••• (actual'v r.'.tive off-a.t. to .'low for PIC), At the •• ~e tim., .IV. the end .ddreae of the vlltd t"out .trfne to .t 10g1cll ".me - .ee b.low, ".xt IteP. d.'.m- Coll.ct the element .tart .ddr •••• If I, bu"'o the t.ble o01"ter. a"d try .g.i". Ot~e~wt.e 'e." UD the at.ck table for the ~e.t "on-e e"t~y to ftx a" e"d pof"t for the curre"t co"ver.40" Clllowf"Q fo~ ." .Mpect.d t.rminltf"o chlrlct.r, •• e. • .fte~ ~.vic., ., Ifter f4'e"lme ete.' -, p' cO''lVe~· ~.t e .tend.~d count fo~ • t"~ee-c~a~act8~ 8ion .nd co.to t~e epo~oc~iete .ub·~outine •• fo'low., ~etu~n.no w.. en e.t~.~ t .. e en~ point i. ~e· .c ... d O~ the count ~un! out (1" Oev.c. na~e • edJUlt t"e en~ co4"t ~eoend.nQ upon t~P. next inc'u~ed e'e~P.nt C.(ne. no "unc~ tuetion ~.~k oceur. between ~.v4ee ne~e .n~ un· ~t w~.~.e. t ... re a~e two between dp.v~ce an~ UIC Clr) o~ 1004c.l ne~e CI,). Pec~ th~ee e ... ~· .ct.~. Cor .etual nu~ba~ w4t~ t~a4'ina .o.e •• to fo~ee left Justif.cat.on 4f need be' into • R.di.·~0 wo~d and I.t 4nto t"e .t.ck tebl •• D.vic. unit • el.o a"ow doub'e cunctuation 4f no f.'e-ent~v. eonve~t UP to t~~.p. v.'i~ octal dioite 4nto a .ingl. byte And .to~e. If any oth.~ c~.~acte~ occu~s befo~. t~. end-point 4. ~.ach.d o~ 4f the byte oy.~flow" clea~ the ,uh-~out.ne addres. table pointe~ a • • n A~~O' flag. e. File na~P. CWQrrl 1, -_redix·~0 ~e~k th~ee c ... ~. acte~. Ceo.in w4t~ forced t~ai'ino IP8ce.' 8nd .tor. in the .teck tab'e. Save the .t.~t .d- d~el' of the next th~ee cha~acta~1 in the .ec. ond '11.na~ • • 'ot 4n t"e t.b'e. 4. d. '41e na~e Cwe~d 2) - .i~fla~'y parfo~~ ~edi.-ea ".cle a"d ItO~ •• 8. Ext.n,40n. l1lcewi.e. f. UIe· edJult the end point for dOUble "unctue· tion (l,) and conve~t u" to three v.,td oct., d.04t. 4nto • sino1e byte al ~~oue Identif •• ~ C.ee Sect40n 4~1.4). P~ovi~ed t~at t~e ne.t cha~act.~ ••• comm •• ~ePeat fo~ User Identif. 4.r. In_addition to e~~O~' note1 unde~ "U,,4t," •• t the fl.g fo~ a non.COm~' leo.~ator or if eithe~ conv.r.ion c~Oduce. 0 or 177 (the 'atte' bei"Q re.e~ved fo~ * unde~ CSI). If the .Ub~out.n. add~e.s t.b,. po4"tp.~ .et upon ~etu~n f~o~ a conve~.40", ~P.P8at i • • tf" f~om .tep .... -....... ---. 1, E.c~ 'uh~out1n. in fact cel's one of two co~mon eonve~· .4on~eutin •• , one to o.clc ch.~aete~. in ~adi •• e~ fo,~.t, the oth'~ to to~~ a b.ne~v wo~d f~om octa' .A,CII dioit •• Th... in th.4~ turn a~e co·routi"e. wit~ a s4nole byte "~O. e ••• or 4n ~uch t .. e .e~e way al th.t de,c~.~ed for the Conv.,.40n Ut~lftie. Paeleage • see ~eet~on ~.,. PlGE ~ 64 ~the~w41. sc~ub !~.C.I' O~fve~ to 2. ~vl'ltax". ~. the ,tlck-tlble a"d ~eJ.ct the CO~m8"rl ~eca" the fo~ "Faultv 0", cem~let.o'" of all the ~out1l'1es 11'1 ,teo 3, ~ad1x.50 DICk the logic.l ",ame CI'.e left Ju.ttff.d) al'ld cel, ove~lev *3. Thul 0", e~it to ove~lev *3, the Itlck table "OW cO"'t.t"'l the ectual el'lt~fe. fo~ the DlT ~~o~e~. Heweve~ there mev stfll be lome 0~10fl'll' ~·"ot. fo~ items u"l~ecif.erl. A• • how" i" the OAT fl'ult~lt4ol'1 It Ffau~e 3-3, the ff"a' fe~m may b. CO"t~.cte~._ This .s do",e 0" the stIck befo~e the meve t"to the OAT I. follow •• t. Set uo ~eleval'lt Do."te~.. If the stack-toD (Loaf. e.l ~Ime .lot) f. 0 • 4m~0'lfble u"'." the~e •• "0 .~aumel'lt It a" • 00 to .te~ 10 to remeve the DAT. 2. Set e full ceul'lt (4) 41'1 the ". of wo~dl to follow. byte of th, "UI'I1t" wo~d. Dee~eme"t the COU"t I"d move the Logfca' Name e"t~v dowl'I the .tlck u"t1l the ff~.t "0"-0 table el'lt~v t • • ee", .tOODt"'O .t "Ul'lft". 3. eol'ect the co"te"t of elT 1" the SVT (t~e OAT 00 • • l'Ite~ - lee S,cttO" 2.1.1) •. tf it f. "o"'-I~ a tlble al~e'dv ext.t., he"ce ao to .te~ 5 to ffl'ld it. e",d. Oth.~w •• a chack the MU! i" the SVT. If 4t. htch byte •• 1 (Drog~lm 'Olded Il'Id ru""fl'lg) o~ -I (p~oo~.m ,el~ed a"d .ta~ted but "OW .u.~e"ded), 00 to .tec 8 I. a buffe~ mu.t be claimed f~om f~ee co~e ('ee cI.e 3 t" Seetfo" 3.1.2.2)~ 4. Wtth "0 D~OQ~lm U"derWAV, co"ect EOM from the SVT 8"d IdJ~lt fer the two ~e •• ~ved OAT If"k wo~d. see Seetiol'l, 2.1.4 a",d 5.1. L.ave ol'le I. a .wttch howev.r if a p~OQram t. loaded without Iddftfo"'I' ~o"'ftor ~out."el (.ee cese 2 41'1 Sectfo" 3.1.".2). ~tere the ~e.ult~" BAT Il'Id GO to .te~ g to .et UD the e"'t~v. S. Search fo~ t~e el'ld of al'l ex1'tf"o elee "so F.au~e 3-2). A, OAT a. fol'ows .1 If the ff~st wo~d of I" '"trv -t, 4del'ltffy. i"Q the el'ld of a OAT 'eamel'lt, ce11ect the ",e.t word as the start of I "ew I.g~el'lt. T~v loaf", U",... hi. "ext wo~d t. 0 meal'ltl'lQ the el'ld •• 1'I0W ,.eached, Check wh.the~ the dlt ••• t I'IA~e~ ~I'I the eomma",d t. the .ame •• that fo~ the el'ltPlv. If 10, ~e- P4GE' ee olae. t~. ~~tpy by a 14~~ to t~e ~ext (I-I, add,e •• " secu.~c.' - t~u' e,a.4~~ the e~tpy, f~ e.'.,the ~ew .~.eifieet4o~ 4. la~ger tha" the 0,4Q4"a1. e. Reo.at f~o~ ~a) fo~ the "ext e~t~v if thf. does "ot .t.rt wfth P, whfe~ .1ao ste"4f4 •• the DAT enti. ~. If the OAT e"'d i. a -l,e .ecue"ce (caused ~v e 8EGIN u",,4"w4"g a ••• a"~."t • • '" free cor. ~uffep. see Seet40" 8.~.e) re~ove the -I. 1. eheek t~e ~U~ fo~ a erog'a~ u"depway a. ~~ .teo 3. If "o~., QO to .tep 9 to tre",f.r t~e ~ew ."try, Drevid."Q 8 't",k to the eurr.~t EO~ ff this do •• ~ot eOi"cidP. with t~. DAT .~d (ow1~~ to the feet t~at t~e orevtou. e~t~i.s were ~ade befop. e DPOapam wa. 'oe~ed a"~ "'ow adtiitio"al MO"4top pouti"e' hev. be." ~ade pe.ide"t). Wh~" e orogra~ i. underwev, peQue.t e Ie-word buff.r unit from free cor. thpough the ~o"ftop 8.GT8 ~outi~. C••• Seetfo" 2.~.2). 'or e if,.t e.sfc"m.~t, .tor. the buff., start addr ••• et BAT. foP e"v other, ,."~ th, buff., to the eurr."t DAT e",d. (ff no buffer f. eveflebl., how.v." reee" the SDecie' Dr4v.r to t." the oeerato,.) Tre"'fer the Logfee' Name fro~ t~e "ew .Deeffie.tfc~ tnto the ~AT fol'owed by the ot~.r fte~. e~d twe r •• e,ved L.~k.word. of e. AdJu.t the !O~, TOe .~d it • • teek-.too C.e. S.etio~ 2.4~1), ff "0 Dro. cra. f. u"d.rway. Extt t~rouah the SDeefal Dr4ve,. Aec.Dt • com~e~d w.t~out a,gu.e"t on,y wh." no D'Ois loaded. In thi. ee.e, •• ve the DAT start a. t~. "eW EOM, eleer RAT a"d exit t~'oUQh steD , to ' ••• ~ve the ~ If,,,k. a"d edJust the end of MO~. tor Dof"ter •• ,ReJee~ t~e eomma"rl e. inve'fd t~~oug~ t~e ~oeeie' O,ivep otherwi ••• c,e~ (I(SI.OU) . . . Th. DUMP ~oMma"d wa. orig4nelly intended to D~ovfd. a ~ea"s for t~e""fe'ri~a eore iMeaa. to o~ from anv eeDPoor4ete DepfDhe,el dev4ce at a"v time, regardle •• of t~e D~e.e"t .v.teM .tat. - a. oDDo.ed to the load fMac •• obteined threuoh SAY! wfth the ~v.tem "ece.~e'ily idle. Howeve, for the fo',ow."Q ,.e,o~., its eu~r."t 4~ole~e"tatio", f. liMite~1 PAGE t• '6e Pac.~.tloe ~@Qui~ ••• o~. fo~~ of for~ltt.~a to ."IU~'. dlta·aceU~ACY. T~u~ a.nUMP i" t~~. case ef~.ctfv@lY ~UN or GET wo~t~w~i'. o~eg~a~ i. eoote. t~. SAV~ facility .upol.~ent.rl by and i. ~ot th.~efo~e eo~ •• de~.d ."ti~.,y m@rely to allow ocea.io~al u.age whi'e a ~unni"g. ~o~~al u'aQ@ of bulk-.torao@ deviee. ~.Qui~ •• the h.lp of the Fil •• ~a~aQeme~t ~out."e. Which ean o~lY be ouarlnte.d if no oroo~am i. underway to "ee~ the ~S8 • ~.nc. t~. r •• t~iction 0" SAVE C.e. S.ct.o~ ~ ••• 2). T~. o~ly .afe alter"atiy. i. to. hav. a ar.a ~ ••• ~y.d 0" each d.vie. whteh be eeee •• ed by si~ulatfe~.Of .TRAN. Thi •• thouoh, raf •• , two orobl.m. ~hie~ are ore.e~t'y deemed to b. too re.trietiY' for the m.Jority of u.e,.,. or.-d.t.~mined ca~ th.~ a. The area ,.e •• ,.ved 4. lost to the thoUQh h. ~.v.r reaue.t. a OllMP, b. Any dump d •• troy. the c~'vfou. conte"t_ of the r ••• ~ved area a"d t~e u •• ~ ~u,t t~.r.fore .ave th4 • • aeh time i1 it ••• ttll of value. us.r .v." ~."c. fer the •• d.viee •• SAVE remat~. the.o"'~ ~e"e"a~ Dro· O~ the oth.r hInd, SAVE to a L4ne-ori"ter f' both m.a~i"ol.'. a~d 1"'oal .4"e. binary operatio~. a~. "ot D.rmitt.d. Dump i, therefore orcvfd.d i~ ft. ease O"'Y, v4.40". Th. full format a"owed by the ~U~P eOmma"d il a. fellow.' OU [~P] rOey. ee] r, rr o~ 1')1 r, [L"W1 [, HrGIof]1 J Wh.r •• deviee • ~ame eod. a"d unit u"neee.,aryl I or n • OumD direetion ( •• su~.d 0) LO~ • OU~D a,..a .tart ad~r@.s (as.umed 0) HIGH • End eddre.s (toD of cor. a.,umed) Stan~.rd (I (LOW and IofICH being oet., a~d on word bou"d. able "'emory). w.thi~ .va.'- It follow. i,.om the 4"troduetio~. oi eour ••• ~hat dayice ca" o"'y b. LP a"d dir.ctton 0, Howey.~ i" ea •• ft 1, lat.r i"eluded, t~e default dev4ee f. that for the sy~tem. Ge"e~el Delc~ictio"' Delette t~e cu~~e"t ~elt~.ctio", t~e nu~p com~e"d o~ocel'O~ 4. de.4a"ea for Qe"e~e14tv of devicft. T" o~de~ to ellow u..Qe et e"v ti~e, it cennot I •• u~e thlt s necet.e~y ~~ivep 4, 4" CD~A to .epvfce the ~eviee. Eve" if 4t •• , ft "ee~ ~ot b' ~,ad.'v ava4lable foP the OU~P 0~epet40". He"ce the ~eu ti", m~.t ~eve it. own d~ivep. fo~ t~e cu~eole, In the t"te~,.t of ce •• ible exea",io", the CUMP ~odule 4. ~he~'fope OPoe"ized a. a commo" a~au~'nt decede~ w~.eh cep~o'm. any ~heck4"a ~eau.ped e"d conv,r.fon of the va~ioultt'~. i" the 4"cut and then c.l,. An .ccroor.ate overllY co"ta4"f"c the p'Qu4.tte drtv,p. Cu~pe"tly two oveplay. !re DPov.d~d. The ff~tt 4. e"tt~e'v by e dPfvep ~o~ the Lf"e-cp4"ter e"d co"tat"~ the ~'oc".i"a "eeded to cpoduce e crint-out a • • ~OW" et ~tauP' e-l., T~4' Qtve. both t~e ce"tent of elch word 4" the DUMP .P.e in oetel ASCII Ind t~at of eec~ byte •• 8" ASCII chep.et,r, W~'" modified ,. nece •• apy to cp~duce , ep4"tl~le chl~.et'p tn the e-bit rl"g,. It 11'0 eccect. 8 CTRL/C 4"cut at t~e keyboepd a. I .ion,' thet e DUMP undepw,y .~ould be tepm4"etea at the end of , curp'"t CIQ'~ The .eeond ov'~l.y Drovidel t~e hOOkl fo~ t~e late~ 4nClusion of ot~,~ dpfve'l.but p,e.e"tly ,ecell1 t~e S~,e411 Dpfv'p .~~edfet"y to pel,ct the eom~lnd fo~ wIll'Qel Cevtce." tek," yc Exit Stete. Th,. DUMP ~~~ce.,or alweya ,etu,", to th, 4"t,ppuoted o,og,em th~ou~h the Scecte' D,tve" '0 t~e R,otltep end 'teck atete e~' e •. ~,.cP4b,d und,p ~'~tion e,'-.~. Co~mend pe}ectto" e. uluel followl '~'OPI, f"dicated f" ~1 ,. follow, • • 3 • Feulty SYntax .4 • nevice C,""ot be u.ed fop ~U~P, '0 ., Il1eoel .e • ~n Il'eOI' arld~e'l Seecfiied t. ~ot on a wopd-hounda'd wtt~i~ evetlabl. cope op lo~ ., not 'esl t.~.n h 4oh, Deteiled P~ocealf~QI F40ure ~.t5 tl1ult,ate, t~, ,eQuence Of oce~.tfo", tn the DUMP Opoe'I'o~. •• "ot,d un~e~ "Gftner.' P~oee •• f"aw, ove,· llYfn~ occu p,. T~e ,egm,"t. co~ee~"ed .~e out14ned 4" the followi~o cePIOPloh •• The leg~e"t celled by the I"te~o~etep decede, the ergument I"d t~e~ cell' the .per~p~fete rl,iver overlsy el unde~1 PAGE b-68 DOS6."NO qestore ReQister co"te~ts oassed bv the Inte,o .. ete, P,eoa~e a and clea~ it. retu~" oaramete, •• four-word table 0" the stack for use a. elf!",ent sterage after co"versfe"1 aSPa lDORESS ADnRESS I')EVICE NAME DEVICE UNIT/TRAN~FER DIRECTInN (0-0,'-1) E~~ STA~T qadfx-50 ~ack leadinG letter, fro", the a"gu",e"t st~i"g u"tfl ~topoed efthe, bv a defi~ed deli~tte' C,eeee, eo"'",a 0' CR) or by a no"-alp~abet4c value. 'tere t~e result t" t~e ,teck.table "Dev4ee" "ot. :5. If the ... d •• eenvers40" ends wit~ a "en-alohabettc ellow for a ,t"Ole octal A~CII dfaft e, un4t (OU~Pi"~ i, never e.pect,d to b, 8 facility 0" ~evfces havino more tha" eiGht u"fts to a ,4"01e eo~troller). Stere en t~e 'tack if fOu"d. Iq"ore i but "eject the comma"d fer ·Faulty Svnta." bv Soecial Oriver recall fo,. e"v oth.~ c~aracte~C,) before the first de14m.te~. eha~acte .. , 'cee~t o~e che ... eter before the ,ecend del4mite,. If ft f, 1, i~cre~ent the 0 "T"a"sfer D1rect40"" byte i" the stack-table. (Ne ~"creme"t ~ccu'" fe .. a"v other input, thus fercino 0). AOaf" ,.J.ct a, "Faultv Sy"tex" for ~or. tha" en. cheract.r. Convert valid octa' JSCII dioit, UP to the "e.t delimiter a"d 'tor. a, LOW limft, provided that no overflow of • si"ole bf"erY werd occurs. The" reeeet fo .. HrG~ li"'tt. (I" thi, case "Faultv 'y"tax· mea", 4"valfd 4"~ut er ov.rflow). t\. Check t~at beth limfts are on word-boundari., within eveil.ble memo .. y a~d that the LOW valUe t, le" then HIGH (r~placed by too of core if_ "one e"tered). Thf, time reject the com"'e"d for addre" 4l1eaality. '. qe~lace the ~IGH lfmit bv the a~o"oDriate "umbe .. of wo"ds to b~ DUMPed (Dosit.ve. velue) ~"d Check whether e device ha. bee" sDecified. If "one, re. ~lece wft~ t~e "e",e of the .v'te~-devfce •• show" i" the DO~ (Sectio" ~.t.J). 8. Sea~ch. ~"d call tab'e of Dotentiel devices f~r the DUMP .overley. *2 ff.~~ fe.reo~f"ed e~ *3 for other Dossibly velid soecfffeetio",. qeJect the commend for "Illegal Device· otherwf,e. ~ If e1th~~ of th~ ove~l.Y. is c.l'ed the DecodAP e.its with the .t,c~.t.bl' cle.~ed en~ 4ts content ,et 4" Reo4'te~, ., follow •• ~t ~2 ~3 ~5 of t~e DUMP ere •• wopd. to ee du~eed, • Positive code for e v"i~ ~ev1ce. ~.,.d on t.bl.~po.it.o" ~LP.~) • "n4t ."d T~.",fe .. O.peet40". • • ~ta~t * of Thu" the .DP~ocl"1.te pe~.m.te .. s fo .. a ~UMP .~e .. ecefv.d by the overl.Y 0" the ,t.ck •• ,.ved by t~e E~T ~."dl ... (.ee Section 2.2,0, The Line.D~."te .. du~e he, • b •• fc fer~.t 4" w~ich •• ch D.O' eev.r, lA0~(octal) locat.on, d~v~d'd inte ~ _blocks of 110(oet.,) 'oc.t.on., E.ch b'ock ., DP.nt.~ •• four 1i"e' of 8 wo~d' in oct.' ASCII follow.d by 1e ASCIY byt ••• The overley 1. 'et uo to eo"t~ol thi. fOI"~at a. fel'ow.i 1, R.stere Reai.tep co"t.nte D•••• d by the d.cod'l" Ind ~.~ov. 4t. retUI"" P.~.~.t'r' from the .t.ck. If Output •• "ot the di~.etto" 'eec'fi.d, r.el" the Seec.,' Dr.v... .~m.d •• t.'y to reJect the co~m.nd for "Il,eoa' oevtc •• " S.v. the cu ..... "t va'u, of the .t.c~ cOi"t ... in the 'VT word .. eserv.d fOI" the DUreel. CSVT+S2 • I •• S.etfo" 2.1.1) 10 th.t it m.y .PD.... e" the ~UMP .f "'Qu.~ed. (1) "'0 3. S.v. the DUMP ...... t.~t ID.c.ii,d !"d '~JUlt In ecc ••• Doi"t ... to co~m.nee p"i"t4nQ from the tOD of • ful' DeQe, •••• fpo. the ppevtou. lec.t40" ,"dina in ••• A00. Pr4nt FF to .t.pt • "eW D.a •• 4. P .. ~. ~tert • d.t •• , 14n. with t~e '.It twe ~ie4ts of the fi ... t .dd"ee. 0" the 14"e (e.o. ~0, 20. 41. 80) 4"t the .ddrel. of the loc.tfo" st ... t4no. (.lwaye end ••••• 10) followed by LF. block Dreceded by .pece ."d fo',owed by I. ~ ....-...-..... 1. S.n~e the proaram Regi.te, • • re .• eV.d 0" t~e .teck .t thi. Doi"t. t~e'. ee" e',o he e •• m4"ed on ." .pe .. oD .... t. DUMP. The •• v.d SP po.nts .t t~e .ddresl of the eo",ol. ty. pew ... t.~ buff... ( •• ved R4 fe .. t~e Sceci., O~.ve~ Recel') which is the" followed by the retu~n o .... ~ete~. fer the rec.,l - ,.e F1Qu", 6-2 fer furthe .. dete.'. PAGJ: b10 DOS6.~Nr:'I If t~e aeee.~ c04nte~ ~as ~ot Yet ~e8e~ed the saved ,etual sta~t, D~4nt seve~ scaee.. Oth~~~.~e OutDut i~ oetal "CTI the eonte~t of the 'oeetfon unde~ the Dointe~. t6 ~ioit.) D~eeeded by one leeee. ~eDeet f~~ eight 10eetio~1 i" .,1 ~n,ess the Wo~d Count .ce~ified ~unlout. In this c~le eqai" o.d the ~est of the line wit~ ~paeel. '. te~minAl • • ~d se.ee. Relet the .eee.s DOto the be~fnnfn~ of t~e 14ne ~n~ .et anot~e~ to t~e le.t va'id byte to be c~.nt'rl. ,. w4t~ wo~d' in .tep 6, D~.nt .oeee. fo~ e8e~ byte in the 'tne D~io~ to the ICtUA' DUMP e~ee. Othepwt.e eonv.~t eee~ byte It~4ece~ of bit' into. a-bit ASCII velue Dn t~e followtno b •• i •• nd oP4nt u"ti' the ,tne-end. P~int fnte~ a 1 6 8. ait v.lue. 0~~-e3' 040-13' lAe-l" eit v.lue. lP0-13' 040-13' e40.e" If the end of t~e LF. to DUMp i. not yet ~e.e~ed, D~4nt .tee ~ unl •• 1 t~e leeel. cointe~ e"91 i" •••• ~0.fndie.t.nQ the end ~f. block. In th~. e •• e, o~fnt • seeond LF to oive e Q'O between blockl and ~etupn to Itee 4 if the block doe. not e~d a DaOe (poi"te~ ••••• e~). Fop the lattep .ituatfon, pep' ace the .eeond LF bv FF .nd petupn to .teo 4 o~ov.ded that no CTRL/C ha. been .t~uek at the ~eyboepd. Retu~n ."0 Tep~1nate the DU~P 1i.tina with FF end ~etupn to the inteppucted oPoo~am th~ouo~ the ~ceei., O~.vep. It Ihou'd be noted t~.t .ny h.~dw.~e f.ilu~e at the ep4ntep which e.u.e • • n ep~o~ peeopt w41' .toe t~e DUMP wit~ .n "Il'eo.' ~eviee" ~e.lege. If the cpintep i. "ot a ve'id dev.ee 0" the sy.tem, by "o~ma' hepdwape t~eDo;no • f.te' eppo~ me.seQe w1ll be demanded enrl wi" ~esult 1n' ~an~4nQ the system owino to the eonflict in KSq uSAge, noted .n Ch.cte~ 7. (Montto~ ~eboot 1s "eees.epy if t~is heecens.' •• Ihow~ unde~ c~e.e"t ~4~e'y "Gene~el Dele~ictt~~", t~e .eco~d ovepley .t eleans u~ the stee~ end ~eDoPts the deviee as tll,g,,~ Howeve~, should e~t~e devices be .d~erl to the DUMP fecility, tt is e"vise~ed th8t t~e fo"o~ing c~ovts4o"s ~.v be usefull 8. T~e d~.ve~ ~equ4~ed ca" be 4dentified eode in ~3 on e~t~y cefte~ qeoi~te~ tion' and the validity of d4PAction c"'eeked t" R5. by the ean be ~e.topa PAGF.: ~ C. 11 .t b. BV •• vi"Q ~p 4~ t~e ~VT e" outDut, ."d, ~ •• te~· 4"Q 0" 4"aut • c~oo~.~ ~io~t ~e .ute~8ticel 'V ~e.umed f~e~ e ~oi~t of dumei"o by the "e~ m.' ~.y"oe~d Comme"rl ~.4t D~OC'.' (e~ov4ded of cou,. •• th.t e"ouoh co~e i. OIJM".d.l c. The d,.4ve~ it.elf must e,.ovfd. fo~m.tti"g of t~e OU~p. '"V ".c •••• ~y Th. D~.v4eu ••• ctiO~' of th4. Chect.~ ~.v. d •• cr4bed the m.thod._ u.ed to ••• cut. K.yboe~1 Co~m."d. Wh4ch m.y be e"t.~.d bv the ope~.to~ .t t4m •• w~e". u.e~ a~egr.m .4the~ c." O~ mu.t b. ,o.ded. It h•• b.e" .how" th.t 4" o~de~ to ~"D'Ct th.t D~o~~am. pete"t4al usaae of the Iy.t.m, the comma"d D~~ce •• e~. a~. oblioed te ~"t~iet t~e.r oDe"atfe"1 to th, co~ff" •• of tha KSB, .y." e~evfd4"~ thef~ ew" utf14ty fu"ct40". ~ath.~ tha" u.~ tho •• al,..edv co"tef".d ell.whe,. f" the ~o~fto". How.v.~ it ••• ml u"~e.so"ab'e thet the .am. ,tm4tat40"1 .heu'd al.o b. e.t.~ded to the h."~14"o ef comma"d. w~fch by thaf~ "atu,.. fmply that th.~a ca" be"e D'O. o,.am _4" m,me~y w",." they a~e g4ve" a~d he"e' the whole of the .v.t.m 4• • elelv at the Mo"4te~1 diIPe.al~ Fo,. thf • • ftUltie" th.~efo~. a IPac4a' t~a".4."t Mo~fto, .eetfe" b.com •• the "u •• ,. o~oq,.am" - abl. to u.e a" the "o~ma' faef'4t4 •• ava.'abl. but 1'.0 a,.4v41eged 4" it • • cc •••• Th4. t,.e"I •• "t Mo"4to~ ;. the .ubJect of thf. ~.ct40~. I" th. f4~.t plac., S.ct40" 6.e.l rlfscu •••• it. , •• ce".fbf'4tte. to the .y.t.m e"d de.c,.ibel ft. ae"e~.' It~uctu,.e to .Itf.fy_ the.e. S.ct10" 6.~.~ the" e.lmf"e. the cOmm8"dl wh4ch e~. oroc •••• d u"der 4tl eeqfl. (T~O~) •• "oted ." 8ectio~. '.t.4 e"d 5.~, the t"a~.4e"t_ ~o~fto' •• ct40" is b~ouoht i"to co~ mm.~.ete,y efte,. the i"4tie1iIitio" c~ec,.' follew4"o a ~o"ito~ boot o~.s e ~e.ult of th., u"'oedi"Q of a D"o~~am th~ou~h a .~XIT O~ CO"lole ~ILL. It i. the" ,. •• po~.ible fo,. .atisfvi"q the fel'owi"O fu"ctior-.i •• 2. , "~ep.~etio" - fo" the 10adf"o of the "ext O~OQ~.m PAGE 3. 4cceota"ce of 8~V ooe~8to~ i~.t~uctio~. f~om ~12 the co~sole 4. Actuel Droce ••• ~~ of 'oaded-~e~orv co~~a~d. .4tuat.o~ a~d eovered bv t~e ~or~e' QUN/GET, FtNIS~) 'a~guaQe ~e.tr.eted to ~ot th~refore Ccur~e~tlvi th~ u~. already L~GIN, .EXIT AC KIl.L 8ect4e~ 5.5 .~owerl t~at T~ON 4. read ."to t~e teD of ave.'able ~.mory by the .EXIT DreCe •• or, d4rectlv .cc •••• ~~ the Mo"ftor L.~rarv o~ the IVltem-deyice, .~d i, .tarted aut~ mat1cal1y 0'" succe •• ful load.",o. At tht. time, the .tack t. clearad to ~t. load D01~t a~d the O~'y ~eleYa"'t raot.ter CO"t'l"It .sl ~~ Ge~er8' • Addre.s of the .ta~t of the Mo",tter 009 ~hatl"l COCO 4", the SYT - .ee Sectto", 2.1.t) De.cr.Dt10~1 •• i~d~~at.d i~ the P~oarammer. ~al"l~book,. ~a.the~ .EXIT ",or a co"'sole KILL reQu4re that a ru",~4~Q o~oora~ should be de. tached from a~v ext.t4",~ tlO commitme"'t. tt •• therefore the ~O"'.tor. ta.~ to e"'.ure that, i", ae~e~al, e"'v out.ta",d4"0 out cut .ttll remaf",.~~ 4" it. tl"lte~",.' huffer. 4s d.spatched to ~he 'DDro~r~ate device e"d, t~ Dart~cula~, a"v f"es .ttll oDe" are ~lo.ed. Th.s ca~"ot be do",e_ by XIT '.l"Ice thel"l the ~S8 •• ~ot avat'ab'e for t~e u.e of the tlO D~oeel.e~s, hel"lce t~.s i. the fi~.t oOeratto" c.~~.ed out by TMON, u.il"lQ. its ow~ Li"k-block associated .ucce ••• yelv with a"'V DnA. ~t4" e.ta"t 11"1 the ~Ol"l.to~ chI4",. T~e u~loaded Dro~rl~' of course, dt.eDDe.~s ul"lder T~ON. However it may lelve te~oore~.'v re •• del"lt ~o~.to~ ~odule. behi",d or Der~aD. dev.ce 1 • • 4a"me~tl made .trictlv 0" tts beha,i C.ee CI.e. 2 I",d 3 1" Sect401"1 3.1.~.2). Al.o the eve 1del"lce of tt. Dre.e~ce ee~t.i"'y still •••• t. w.th.", the SYT. TMO~ the~efore ~emoves the.e ~el.c. e.cecially. a. The OAT •• cleared of .,1 but tr4e., tf a"v th~ ~re-load e"- '-~ PAGE b-73 DOS6."NO \ .........- The MRT •• ~e.to~ed to it. Der~a~e~t .tate bv a .T"A~ of t~e CODY .te~ed 0" the sYstem-deyiee. Re'eve~t e~t~4e. i" the SVT e"~ Itered tc thei~ D~8.'oed .tete e. th~ OOL are re- fOM ."~ TOe i" t~e SVT (."d t~e ,teek-'teo • sea SaetiO" 2.4.1) a~e let to ~ef'ect t"e ~ew situat4o". ODerat~O" _DO',. a o~obleM. It w~" he ,how" that T~O~ oe~for~. 4tl 1/0 Ju.t '4~e a"y other u.e~ Droara~ •• ~D'y4"a the u.e of free eore .1 buffera. Av the "er~e' o~oe ••• , the.e a~e a"oeeted .oaee 4M~erl4.te'y above EOM, H"wev,r the oOI,e,o, ~aY at th41 eo4"t e"ter lo~e "ew dev4ee eSlio"~e"t. which e.~ cha"Qe EnM (a"ri overwrfte the f4rlt buffe~l) • 'e, Seetio" 6,4,9. TMnN, 41 a ~e.u't, ma"iDulat.1 EO~, Wh4'e it. datalet. ara "OW I.t-UD or 'Ite~ c'ee~ed, 4" 1~la ef f'e. eo'e i. added to t"e true Mo"4to~ tOD .1 e Dcte"t4al OAT EMte"140". EOM the" be1"o .et .boye th41 e~.e, the buffe~. ere allocated or rele •• ed out of he~~. wey. Fo~ "or~a' ru""1"a, EnM r'v.~t. te the t~ue tOD, thul fo~e."~ I"y ala4a"~'~t ,"tr4a. i"to the eo~r,et o1eee. CI,e F4~u'e 6-15) Th11 'alt .ho~tly The 1/0 Q~"e~al'Y De~fo~~ed by T~ON 41 of eourse eo~ee~"ed aoai" with the aeceota"ce of ~~y~oa~d eO~~~"~1 a"d oossible p~i"ter resoo"ses (i" o8rticu'a~ , si"ce ~o~ the MO".to~ 11 always i" a '.ste"i~g state). 's a U!e~ O~~g~aM, T~O~ ea" take adva~t8ge of the fac4lit4es of the full eo~.ole d~1yer a"d ule .READ o~ .wQITE • a oart.eu'a~ly si~".f.ea"t orac· t4ce li~ce 4t the" a',owl "or Mal devfee-i"deoe~de"ce a"d ~e"ee Qivel DOS i"it4al Batch-prOcess4"Q c.oa~1'4t1el (1) • ... ..-...-.... ~ 1. fo~ T~ON 8'~e.dY eo"t81"1 Odd. refere"ces to ~o~~s D~ovided ~hP o~fgi"al'Y f"te"ded fmD'e~e"tatfo" of a" OTHER co~. ma"d for a abeya~ce 14~D'e fO~M of Batch • but cu~re~t'y he'~ 4" oe"~i"Q the possible o~ovfs.o" of a ful~e~ Iystem. N.ve~t".'e.1 TMO~ ca" st1" be uled 1" a ve~y basic way (0" a "o"-fi'e It~uctur.d device at 'east1 merelV bv e cO"lole ASSIGN of C~D. ~owever two oof"ts should the~ ~e "otedl ~y t~e sta~da~d bufferi"Q .che~e, afte~ e RUN o~ GET from_t~e "ew dev.ce, valid.data could re~ai" f" T~ONs huffe~ a"d be 'ost with it u"'e~1 aoo~oorf ~telY soaced. CTRL/C ~ust O"'V be uled whe" T~~N f~ "ot trol (fo~ the realO"S oive" above). e. Qe-alsi~"me"t ef K~ to C~D mUlt o~eeede the load4"Q of the lalt ~atched D~OQ~aM to forca T~ON to retur" eorr~ctlY let-up - it 41 too 'ate whe" already 1" a"d i"itfalized. PAGF. C,7!5 DOS8."N" Aaat" t~ouQ~ th~ou~h. t~acped. TM~N t~e~e T~4. 10 i. a that ~~oblam. ~ts auto~atieallv "1 OW" oceu~. eo~~a~d must ~o~ eo~e ca~tteula~ ~~t~tes C~" be as 10"0 a~ the ooe~.to~ me~e1v tyoes ." the command its .. lf 4" ~@.co~s~ to the S out~ut. Hew.ve~ fo~ co~eat1~"1ty with the ~.~ai"i"~ co~~."d., he .hou1d bea~le to enter CTqL/r., e.the~ 4"iti.,lv o~ to c."eel eu~re"t 4"cut, a. show" 4" Sect40" 6.3.', th4' ~ould 4" t~e "orma1 w.v be i"tercected bv the L~ste"e~ 8"~ t~e who'e cnm~a"d would be ~a"d1ed by the I"te~c~ete~, c.uI4"Q ~eJect.e" of t~e TMON eom~a"ds s1"ce they a~e u"k"ow" exceot .~ t"~. time. To oreve"t th", the~efo~.r TM~N ~.~.t 4"4t4a11~e, the .~c~oc~4ate dataset. to ~r4"~ the full d~fv.r 4"to core. It the" u~l."k. the Lf,te"e~ from t~e keybo.rd ."ter~uot vector, ,ubstitutf"~ 4ts OW" ver.fo" erov.d'"1 ~. ~eet ~cee~, to t~e full d~fve~s 4"ter~uot servici"g ~out'"e a"d .oee4f.eallY ha"dl'"O CTRL/C ," 4t, OW" waY Cl), Thu, all eo~ma"ds '"ttt.llv COma to TMO~. Bv a table 10ok-uo. t~ose whteh are e,cectally ae~~oori.te .~e c •• sed to e" embedded DrOce.so~ fo~ executfo"., ~eta4led i" the "e.t .eetto", The ~e~a4"der are ca.sed t~~ou~h the "o~~a' oDe~.t~e"s described ." Sect40n 6.4. F~r t~4. eur~~.e, T~ON atmulat.. an 4nterface to the I"terDreter .s show" i" Sect4o~ e.~.2, hav'"Q 'ave~ its ~W" Qea4'ters a"d raised the p~io~4tv level to 4 •• 4" t~e oe"e~al ca.e. Thi. mea". thet t~e C~mTa"d is acce,.ed from the TMON buffe~ ~"d that 0" eomo1etion, co"trol is retu~"ed throUQh the Soec4e1 D~4ve, with the pr4nter .tfU"ruDt enabled. Caoa4". lee Sectton 8.3.2). To allow the Lilte"e~ to ~e~fo~m 4t. nor~a' oofnte~ ,~-i".t~a14Iat40", TMON .imulates the Lflte"e,. ~~4"te~ .ave oDe~at4o" Cle. Seet~on 6.3,t) e"d let' the f"te~~u~t th~oUQ~ (Ii"ce the D~4nte~ f, .t.,l ""ke~). When cle.~ed, T~ON reaue.tl a"1 awaft. tt. "ext eomma"d. The ha"dlt"o ~f e~~~r. detected by the s~ecf.' o~oc •• sor. 4• • tmi1a~1y aceom~"'hed bv • 14~u1ated ~eeall to the S~ecfal D~fve~ .1 deseribed i" Sect ton ~.'-.4 wtth the i"te~face set UD .1 .~OW"." Sect40" 8.2.5. Thi, De~mft' utilizat.o" of the drfve~. erro~ me ••• oes. F01low-uD act'o" 4. e •• ctly the a.m, •• ." the la.t ~a~8;~ach - ~e"c. t~e 0~.e4".' co~~."d 4. fa"o~.d •• usual. T~O~ eve"tuallv leeve. after .cceDt."ee of a yalid RUN a"d GET C.ee "ext section) or is ~elo aded afresh afte~ FINrS~ • • • • • a __ • • _ • • • • • 1. CTRL/C •• 1" ~.et Co"v.~ted to VT, .i"ce th1 • • , • • ta",d"imiter forcel 1"cut ter~i"at1o" but .tavs o~ the •• me o~1"te~ ""e. T~ON e." th@" ,imulate th~ norma' echo a •• d.~d AC • PAGJ: '-76 Ex4t ~tate: ~~e~ TM~~ the calses CO"t~o' to o"e of itl embe1d~d ~.aiste~ conte"ts a~8 a, fol'o~11 D~oc.sso~a, ~ __ '~va"t ~~ • eo~manrl outcut Lin~-bl~c~ edrl~e'l Rl • Fnd add~e.s of t~e com~a"d incut ~~ • ~ta~t edd~ess of the P~Oee5'o~ ee"ed ~3 • eo~mend incut link-block add~ ••• qA • Add~ __ I' of OSw in the SVT taee Section 2.1.1) R~ • ~ta~t add~e,s of t~e com~a"d a~oumant In ed~it.o~ t~e .SPI stack-.tate iSI CSc~atc~ oad) Sta~t edd~els of the commend 4neut Li.tene~ keYboa~d yecto~ 'i"k o C1) Cu~~e"t buffe~ hate • dum~y eom • • , note" u"de~ "Gene~al De.c~'ctinn", t~e Reoi.te~ and Itack .tete when. the tnte~c~ete~ il ca".d co mclie. with the ~e Qui~eme"tl of t~at ~out.ne al dete.'ed in Section 6~3.2. Detai'.d p~oce.si"or Figu~e ~-t6 i"ust~ate. t~e gene~el TMON. p~ocelli"e ee~fo~med by It. outline 4. al follow •• t. uli",o tne MOl'dto,. DDB ehain, lucce •• ively 'f.,k .ac~ extent ODa to an i"te~a' L4nk-block end exemfne ftl content. C.e~ Section 3.1.'-.3). If th~ eSlocteted d~.ve~ il file •• t~uctu~ed O~ i. magnetic teoe •• thown by itl Facilities Ind4catop' C,.e Sectton 3.3.1), e~d an eoca~entlY v.lid fi,e ,ametn. oeen fo" outout, ea" .CLnSF a"d .RLSE. In ." ot~e, ee •• s, ea" .RLSE only. CAs ~how" tn Section 3.2.1.3, thi. fo~eel 'est buffer eutput on e non-fi'. (but no deyiee clole actton, f.e. Dunch trail.r. ~owev.~ to fo~ce acc.~t8"Ce on a ff1e-dev4ce without the .CLOSE, the DD~ "Buffe~ Add~els" ~ust he c'ea~ed fi~st). 2. When a" DOBs ~eve been actio"ed, fo~ .afety, c'ea~ anv inte~ruet fleQs .til' en.bled - t~ough ~.sta~t the clock if cre.ent Cveeto~ "ot DOi"tfnQ to e~~o~ ... _-- .. ------1. T~f. could .READ/.wRITE be MRT info~metion S•• "Comments". e~oce •• o~ fo~ a Dose, "Nt" t~ap - ••• C~a~t.~ 7) T~ae. the nAT, if ."v, a"d u",4"k a"v ~"t~ies ~ade .fte~ t". 'ast D~OQr.~ wa, 'Oad.~ C~e.et '4"~ wo~d. ,," etu",,'.tio,,)i 4. a. table 4f 4t doe. "ot Ita~t 4m~.~ •• t.'v t~. 8uffe~ Allocatio" T8b'. ( •• e S.et10" 3,1.2.2) - c'.a~ SVT "oi"te~ 1" th4. ca •• b. '~e~ w~ole aft.~ 4dJu.t t~e th • • "d of the EO~ & T~8 .taek-.to~, "G."e~.' ~. elea~ ~, P~~Da~. f1~.t ,.ome"t oth.~w1'A, 1" the SVT (.e. S.et1o" 2,1,1) a"d '.avi"o OAT ,~ac. a~ "ot.d U"~.~ 0 •• e~iDt10"", the Ruff.~ A"oeatio" Table eomclet.lv ( ••• S.etiof'" 2.4.~). R.move ~U!, PLA, PSA, OSA a"d P~o Q~am Name f~em t~e SVT a"d a" CO~. co"".etio,,. to "o"·r.'i~."t driver. fro~ th. ~OL C••• S.etfo". 2.1,1 a"d 2.1,3). I TRAN-block to ~ead t~. ~RT CODY from *5 0" t~ • • v.t,M-d.vte. 1"to the MRT Ir.a 1" eo~., u.t"Q t"e SVT ad~r ••• el for the ~RT a"d OOL to d.t'~~i". 1ts .tlrt addr.",a"d .iz., ell' .t~. tT a"d ,T~A~ 0" a dltl •• t Drovided to eff.et the bloek t~a".fftr. y"it11'1z. a data •• t to t~e eo"'ole pri"te~ I"d C~/LF to ,".ure elrria~.·re.to~at1o". Say, t~e cu~r."t eo"tl"t of t~. CO"'o" k,y~olrd vector ,"d '4"k to a. i"t'~f"'I' m4"1ml' Li.te".~, a. f"'ot,d u"d.r "G."er.' OI.er4Dt1of"'." ~utcut ". ea" ,I~tT I"d .nPEN 0" datl •• t CMD, ~o~ml"v I'.io".d to t~. klybolrd. Re.to~e £Ow i" the SVT to true Me,,4tor top 1" ea •• a" AS~I~N ee~~I"d il .,,t .... d. C•• e .teo 4) -ri"t S I"d recue.t .READ for t~e eOmml"d i"cut. Thi. ca" ~etu~" with a VT t ... m4f"'ater rec ..... "ti"Q CTRl/C (lee "Ge"eral O•• er4ctiof"'"). ReD .. oduee "orml' eeho if 10 I"d try a~a1". •• remove I"V Com~ef"'t Dreee~ed by , from the i""ut, I"d move CR uo 8ceo .. d1"olv. Re~ •• t f~om .tep 9 w"e" "0 1"Dut ~em.1"1, ~therw1 11, Complre th~ f1 ... t two eh.~Aete .. ' of t~~ aetuI' com~a~d 1"eut w.t~. table of thOle f~r t". e~b~dd.d ~rocI180r. a"d d4.Date" to t"e IDP .. oeriate ~out1". 1f fou"d. (see ~.ct40" 6.~.2) 12. Fo~ eo~~a"d. "o~~a"y ~a"dled si~u'ete~ e~t~y "ote~ u"de~ •• followSI ~. (Bt ~Ge"~~~l De~fo~~ the Oe.e~iDtio"" seved keyboe~d veeto~ eo"te"t, ~et of t~e ~i.te"e~I P~i"te~ Sto~e (lee Seet1o" ~.J.t) a"d 1"d.eate "Com~e"d U"rla~wey" .tete 1" t~ • • ta~t byte of t~e Ee~o euffe~, fo~ eve"tual ~f.ta"e~ exit. T~~ouq~ t~e 13. by t~e ad~~@Is b. Seve sfo"fffce"t a"d ~eset a. 0" the stee. the ~D~e4al O~fve~/I"t.~o~et~~ i"te~faee (sae ~ectfo" 6.3.2). ~f~ulete t~e "eee.le~v steek.stete by eush4"o 8 level A o~fo~ftv Statu~ fel'owe~ by the TMO~ ~eeal' ad~~e'l (do"e bV JSA i" feet' to eouete to t~e "o~me' ~f.te"e~ ~ece" (see Ff~u~e 6-2). e. Set the o~.o~ity level "ow to 4 I"ta~D~ete~ (Sectio" 6.3.3' Reg1.te~ eo"t~"t. ~~ouf~ed bv a"d eel' t~e ~etu~" th~ough the ~Dec1e' n~ive~, seve ~~e ~e 'eva"t eof"te~s f" the ~f.te"e~. Pof"te~ Sto~e, d~o~ the D~fo~fty to level a a"d WAft u"tfl the eo"so'e o~f"te~1 f"te~~uDt fl rifsebled • f"dfe.tf"~ t~.t all com~a"d ela~"-UD f. "OW como'ete. ~etu~" to IteD Q fo~ a "ew 1"Dut. 0" Doubt'e,s the ~eade~ wf"."ote that two featu~es a~a f"e'uded i" TMn~, el S~Ow" by fts sou~ee If.tf"Q, ~ut e~e "ot eovered ~,~!. The if~st of these. the OTHE~ ~o~ks, we. me"t •• o"ed ~~i.flY f" a "Ge"e~e' Oe,c~1ot1o"" foot"~t~ e"d, es 1"d4ceted, is D~e8a"t'y t~~elev."t. The seeo"d tl e" a~bedded .READ/.WRTTF D~oeeISO~. _ Thf. also .e~ve. "0 Du~oose eu~· re"tly heeeuse, al show" i" Sectfo" 3.2.2.2, thf. ~outi"e ~u.t be rel1de"t at a" times. However, thil ~av "ot a'weys be t~e sttuetfo". Si"ce TMON fs "ot loaded a~ 8 u.e~ D~O· gre~, .'thouoh ft o~erates ' •• 8 o"e, ft ~oes "ot heve the .eme ODoo~tu"ity to heve a relfde"t RWN SO ft erov4del fts DW" e"d ff ~eceS.ery ~orlffte. t~e M~T to us .. 4t. Mo~eove~ the Loe~e~., ~esc~ibe~ f" Sectfo" 5.1 0~faf"al1y el.o used .READ ~.t~er that .TRAN - he"ce T~ON, f" the ~U~/GET D~oee. .or, ~ove. fts CODy i"to e buffer for thefr aeC •• 1 whe" ~a aut~e~ 8"d f" feet DaIse. 0" dete f" R5 (t~. ~RT 4"fO~~~tfo" 0" R~N ~Y'te~-device loeat40" - o~ ~) to .f~"al t~... T~4s dete t~ouoh fs "OW fa"o~ed bv the 'atest L~ade~ v.~ •• o~s. The D~oc •• ses re~ai~ ~" ee •• they .hould be "e.~ed io~ '.te~ devel~o"'e"ts. DOS6.RNt"I .~.5.2_ T~~_TM~~_C:~.",~a_"'~s Thi. seetio'" discusses co~~a",rls ~a"~led o"'v ~y t~e t~a~ ••• e"t ~0~1to~ 1~ o~de~_to allo~ t~e", to ~ave full ecce.1 to al' t~a."o~~al ~o~ito~ facilitie. because ~o yle~ o~oo~a", can exi.t .'" co~e w~e'" they a~e e"'te~ed. T~ev a~e 1~ fact ;"eaa' at anv ot~e~ time. T~e co~mands eove~ed ~e~e a~el LOGIN ~UN/G£T FINIS~ .1 s~own i" t~e o~evious sectto"" t~ev a11 ~eeeive eo"'t~01 f~om .t~e T~ON ge",era'. routi"'e w1t~ qe~i8ters A~d .tAC~ ao~rooriatelv let fo~ t~ei~ aeecess to t~e eo",~e",d bv wh1e~ they ere ~al1ed. Li~e the ot~er eo~ma"d oroeelso~s dese~4bed ee~11e~, t~ev a~e t~e" resoo"'11ble for ~ecodi"O anv araume"t ente~ed e"~ for e~ecki"'G ftl va,id.tv before Der~or~inG t~e funct~o'" ~eouired bv t~e ODerator~ 0" eom~le tio", they PIIust e"IUre ,~at t~e co~re~t mae~f~e·stete is ~alled to t~e "ext rout.~e i", eo"trol. If i" fact t~ts tl aoa4" the T~ON gene~e' proeessor, t~e eo",te"tl of qa, q], a"d R~ ~eme." as on e~t~v' the stack il clea~ed of the ff~st two wo~ds, but t"e ot~ers It and. The ,.f,,,,t f ~e, mUlt a110 take eare of anv e~ro~s ~eteeted efther in oroeessi~g.the a~gument o~ i" exeeutio", of t~e eo",mand. 'o~ eOPllpetibilty w4t~ the ot~e~ oroeeISO~S, t~ev use the ~pec.al Or4ve~s faeilitv for printinG e~~o~ ~eslaoel al deleribed. t", Seetio", ~.3.2. Thev do thia bv sfPllulati"Q t~e ,.eea" diseusled i" Seetton 6.2.~ wit~ • svste~-Itate eonfo~mi"'Q to the deteil, Qive" 4", Sactio" 8.2.5~ 0" retu~n, they oas, eo"t~ol ~aek to the aenerel o~oeeSso~ to f~"ore the eo~~ands. .Qai~ qeoiste,.. e~d 'tec~ a~e .1 Iho~" ehove • .~S·.l The LOGI~~Oll'lman~ In Ch8pte~ 4, it wa' 'how~ thet eec~ DOS ule~ ca" effectivelv ~el~~ve ere •• 0'" bu1~-~ed1. within t~e 'Vlte", fo~ the Itoreoe of ~is ow'" ffles of o~oaraPIII o~ ~eta, w.t~ some mealu~e of Droteetfon a~af".t ot~e~ userl. T~e LnGTN eo",mand fl p~ovtded to enabl. ~ill'l to ide"'tifv hi"'self to t~e IVlte'" i'" o~de~ to aceels t~ose files. Cu~re"t'v this ;s it. onlv ~ur~osel it ~. i", ~act u"eeeesserv ii "0 u"'4~ue fi'e-struetured ooeratio",. are to be ~erfo~m~d Cs."'ce a"v ule~ ca" call ~rOQrams stored in th~ .vste'" Librerv (user 1.1) or 1! t~euse~. i~e"'t~f~eatio" i. e~tered a. oa~t of the aetuel f1'e-soecification for e8e~ tas~. However its u.e t. reeom~ended as a st.",da~~ or~ctfee fo~ eele of ooe~e. tio" now 8"" i" case i" later O~S "eYe'oo~ents it beeoPlles neCe.sary to 1P11oose ~ore restrictions upon u",aut~0~1zerl 8C- PlGE b· 80 DOS6,~N("t cell to t~e 'Ylte~ ae~e~a"y, The o~'v 8~aUme"t cu~~antlv ~eaui~erl fl t~e irlent4fication code f9~ the uSa~ ente~ino t~e IVltem. ~ence the eom~and fo~mat ist W~e~e "7~~uc".and "U.e~" each consist of UP to ASCII dfoftl in t~e ~Inee 1-376. t~ree ~cte' Not onlY fs tha LOGI~ .command f,'eoa' ff a croaram f. 1oaderl, it i. invalid ff any othe~ u.ar i • • ~a~ to be stil' occucvf~O t~e Ivstem. P~ovirlarl that t~e IVltem i. f~ee to acceDt a new Ule~, the LOGIN ~~oce.so~ cellI ~~e Conver.fon Utiliti •• cackaQe d ••• cribari i" Section 5.3 to conve~t the two arauma"t_ 4nto the1~ -,ou1valent bina~v byte., The ~esu'ts Ire .tored at UIC 1~ the !VT Cse. S@ct4on 2.1.1l. In .orde~ to ~e~n tha naw uler that Date and TOO ~av need uodatine, o~ fo~ 'ate~ ~efe~enc •• it then outcuts the cur~ent co~tent of the aacro. criate SVT .to~e. at tha consola c~fnter, T~f ••• aeco~. p'ilhed bv a norma' ,WRITE to t~e full d~fver to p~fnt the acc~oe'Ate headino "OAT~I" or "TIMEi W, this fs followed bv a limulated.ca" to the kevboa~d rnterc~eter ~4th a .uPDoled command f"cut without aroume"ts, the~ebv ut4,izino tha cor~e.cond.no e~ocelso~, conve~.fon faci1ttfes to obtain the reQuf~ed format, In each ca.e, t~e .econd cell f. ~ade th~oU~h the TMON Qene~al orocessor • • Ub~outine fo~ the pu~. co.e, IS discussed f~ the 'est section, 0" completion, the oener., Droe.s.o~ is recalled for e new f"DUt. Exh Stltel As noterl in the int~oduet'on to Seetfo" 6.5~2, the LOGIN commend cellS the Speeta' O~4ver to hl"d1e ft. e~~or me..aoe., Reo4ste~s a"d Iteck .tate fo~ thi. comply with the ~eQufreme"ts of Sectien 6.2.5. In ne~t4cu'A~. Ql mav conta1~1 -2 • A"othe~ ~.er on the system, "'e"ce the command 4. Invaltd • • 3 • No ergument o~ one eontaf"4n~ il,ea.' cha~.cter. o~ cod •• outsfde th~ IPee4fierl ~e"qe 1-376, henea Feu'tv !vnte., T~e •• ~y .4mulated cell to t~e .tate a. det.i'ed gene~Al .p~oeeslo~ ~ee8l' I~te~c~ete~ e8t.blis~e. t~e t~oduct40~ to Section 6.2.5 a"plv. The seQuence followed bv t~e LOGIN It is ~utl.ned b~'owl .4~~le i"u.t~atio". 1. neeel- T~e ~em.~~. o~ on e~m~letio~ eo~tai~ed ~n t~e 4n- 4n Seetion 6.3.2. p~oees.o~ nee~1 no If the cu~~e"t. e~nte"t of Ule ~n t~e SVT.s non-0, 8nothe~ use~ on t~e 'vlte m, ca" the ,pecial O~1ye~ to D~.nt a" "Inva'1~ Co~ma"d" me.saQe' o~ ~etu~", e'ean-u~ the .tae~ and ~etu~~ to 4"dicat4~g t~e T~O~ Qene~al ~out1~e. '-. ea" the Octe' ASCII eonve~te~ i" the utilitie. package to eo"ve~t "G~OUD CodeR and sto~e i" the SVT. Rep,et fo~ wUle~ Code", io~0~1~O the com~e .epe~etion. If the a~oume"t end i. ~eae"ed bef~re the two co"verl1~ns have bee" eompleted o~ if either byte 4. 0 o~ ~11 (o~ above), elea~ a"Y va'ue stored 1" the SVT an~ ea" t~e Soe. ei., O~4ve~ to output "Faultv Svnta.". Exit a. i" Ite" 1. 3. e'ea"-U" the .tack a"d c." .WqITE t~ the co~ma"d output dataset to p~i"t -DATE,-. On eompletion, move t~e f4~st two 'ette~. of the ~as •• oe followed bv CR into the commann fnout buffe~ a"d eal' the DATE co~me"d proeel.~r (lee Seet40n ~.~.1) through the Inte~,,~eter. 4. Othe~w1se ~o"ito~ ~1~i'a~lY or4nt "TIMEI" an~ e." o~oee'lo~ Qe"e~a' 6.~.2.2 The .. C,ee Seet40~ ~.A.7). routine when done. the TI~E Retu~" command to the T~ON FINtS!4._~o,,!~~nd The FINtS~ eommA"d "atu~a"Y eomp'e~entl LOGI~ 1n that it removes t~e use~ .dent1fieat1~" f~om t~e system, thereby allow1n~ a "eW u.e~ acce.s. It also enlu~el that the memo~v .ide of t~e system il c, •• " •• possib,e fo~ th~ new use~ bv reboot1~~. the ~o"ito~ af~elh f~om the .v.tem-~eviee. How,ver. it d~es not o~ese"t'Y attempt to pe~form anv re.t4tut1o~ of periphera' deviee., eve~ thouQh t~1s •• implied bv the orovi.ion of the .KEEP Yin ~eQuelt fo~ f11.-.truetu~ed dev4cel,(see Section A.6) .• nd the ~eleva"t b4t 4n the File P~otect40~ Code (see ~eet.on 4.1.A). PAGF.bS2 T~e FtNIS~ ~o~mand needs ~o arQume~t. tts 1s fO~~8t the~. fOl"e Si""C'yl FI [III I SI-O cC!b Aoal"t 1rom t~e "vel"al' l"est~ict40~ that no oro~l"a~ 10aderl, t~t, co""mand can" be given .t anY ti~e. T~e FtNtS~ DI"OceSSO~ ule. a .i~41al" tac~ntaue t~ ean that be da •• cribe~ f~1" LOG1~ 'n t~e ,.,t .ection in o~d~1" to c~fnt the time "# ftnal loa-off fol" user referenee. It then determinel the IYlte",,·device f~om t~e fi~st entrY .n the ODL Csee Sectten 2.1.3) t~l"oua~ 4ts SVT ~ointel'" by table look-uo, thfl i, eo~vel"tej to the addl"e •• of the aCPl"oo",iate hardwal"e ",egilte'" a. ,uccl.ed to t~e RO~ boot.tl"ac (I~e "Sta~t.n~ Procedure" in the Pl"eal"a~~el"s HandbOOk). The ~oot is actu- ally .cco~olfshed Quence. t~l"ouah an embedded val"110n of the qO~ se- A. noted above, thi' cO""ele~ely l"~fl"eShe. the ""emory load· inG, i" o'l"tfculal" l"emQvtnc any eUI"I"~ntly 10~gad·in ule",' ident~f~catton. Howeve'" it a~.o clear. OAT! and TOO. So that every Uler is not obliged to "'eset th~le, the FJ~tSH ol"oce •• ol" doe, not call fel" t~e boot u~til it has .eved the e!"elent entl"fel out of hal"~' way.above t~e t~c of TM~N Ca •• lumed X~'40A if cOl"l"eetly lfnkerl for XIT lo.dtna - .ae Section, 5,5 a~d 8.1.2). They al"e the" I"eltol"ed bv the ~onitol" initialization routine discu •• en in Seetio~ 2.1.4. Oetailerl Pl"ocessinQ' The croce,s.n~ of a FJNJS~ co~m8n~ t. a~a.n Quite fo!"wal"d a, shown balow • hence no i"ustl"ation' stl"atght- t. Call .WRITE to cl"int "T1~f'" uoon th~ eo""""and outcut dataset. Move "T1 cCR>" into the eo""~end incut huffel" a~d t~l"ouoh tke tntel"ol"ete", call the TI~~ cO""m8nd OI"OC.I.OI" Clee SectiOn 6.4." to out aut the TO~ stored in the SVT. 2. Sava the eUl"l"ent SVT entl"iel fol" DATE end TOO stal"tinQ at locatio" XX'40~, usina t~e content of CSA (toD of ~e~o~v) 4n Ceee S@ction 2.1. '. t~e SVT to c~~~ute t~.a. Get t~e ~a~e of t~e svste~~dev.ce fr~~ t~e O~L a~d by table leok·u~ det.~~ine t~e ~d~~ees of its ~ardware wo~d count reoister. qESET to clear a" t~.· ~ardwar. re~4ste~. d.vic., s.t its word·cou~t to ·6~ and ita Statu. to 5 CRead ~ Go fo~ a" d.I~.'. t~i. t~en read. 64 wo~d. fro~ block ~ to ~e~orv ~. ~eoue.t fo~ t~. Wa4t on t~e ".vica done f'a~ and re~eat frc~ stee 4 4f ~ardware errors a~e reDo~ted. If .at.sfacto~v, 00 to 'ocaticn 0 to execute t~e routi~e loaded a.sumed the ~onitor Loader (see Sectio~ 8.2.2,4' ~e.J _~! __ ~_lJ_~~ET _~om",a"rJs T~e RUN a~d GET co"'~and. ~e~fo~~ t~ • • ame basic function • t~at oi tnitiatfna the 'oadi~a of user ~~Cgram.~ It wae .~own in S.ction 5.1 that the 'oarJ orO~8r i~ ef1ect.d bv two non-re.ident modul.. LOq an" L02 ooe~at."~ fr~~ w.thi~ t~. re.t~.ct.~ environment of t~. ~SB. To sim~l.fv t~e4~ task, all t~. orelimt~arv wo~k is carried out bv the TMO~ routine w~4ch oroce •••• the two co~mand. 1n4t4a"y a~d whic~ thus ha. ",o~e facilitv. Thie qU~/GET orece •• o~ i. t~e~efo~e ~ ••• oonlibl. fo~ decodf"O t~. in~ut I~ecif.cation a~d for .~Iur. ino that th. ~~oara,:" ii, availab~e as eo.cifi.~. Furt"'er, it undertake. the readina of the f4~st oa~t of t~e ~roor8m ~o· dul. and the .xtraction and .tor.a. of the oe~e~a' contro' information at its front. Hence the actual Load.r need t~en b. coneerned_mer.'v with the ~rocelsin~ of the data for the o~Ooram U.elf, ~tJ ['4] GE [T] Dataset Snecifier Oata.et Soeefffer Where "Oata •• t So.cif4e~" co~ol.es with the reau.re~e~ts and rule. fo~ Comma~d ~tri~g Interorete~ fn~ut • but wtthout .wftch.~ ~nd wft~ soace, bei~c 8 va'id k@vbo~r~ de'imiter, not 4onored (see Section 5.4), na~e'vl [Oev f een rFi 1 ename [.Exten. 4on' rUIC]] OOS6.QN" PAGE "-- 84 "F;'e~a~e" ~ust, of cou~.e, be o~e.e"t 4f t~e d~vfce •• a"y ~e~iu~ Ci"C1Ud4"g ~ae"et4c taoe). Ot~erw4se t~e followi~o default co"rlitfo"1 .oolv, al fu~t~er ex~'a."ed i" t~~ "e.t para;rao~i for~ of bulk a. .to~aoe Device. t~e 'Ylte~-devfce AI "oted .bove, o~e oroce'IO~ ha"~1e. both ~U~ I"d GET. ttl two @"t~v p04"tl ~e~ely let e Iwftc~ apo~ooriAtely to I~OW t~e Load.~ late~ whet~e~ or "ot to start t~e proora~ automat~c~lly •. Cst ~I f~rlt called t~ perjor~ t~e f~put decod4"0 ooeratio". (The i"out buffer uled by TM~~ fl alreldy let uo t~ ~"clude t~e re~u~red workloece, CM~BUF • .ee Sectfo~ 5.'). Provfded t~.t lome Ir~ume"t ~'I bee" e"ter.d, t~e RIJN/GFT.procellor firlt c~eclc. thet the loecfffed devfee e-flts w4t~i" the IYlte~ el I~OW" by the ODL. tt the" ule' the T/~ call .LOOK to verffy the .-flte"ce of the ffle 0" tru~ fi'e-Itructured devfcel e~ the eb14ftv ~f • "0"-1ile device to provfde f"out. For t~e for~er Clse, the fOllowi"Q .e.rch elQer4thm fsu,ed (1) I 1. If "0 "utC" ., ;4ve", f;~d the file .1 fou~ ettemot. ~ev be mlde to fol1ow,i I. "F41e"lme.Fxte",4o"" for the logoed-." u.er b. "File"ame. F xte",4o"" u"der the SVlte~ rl,11 c. "File"ame" reellced by Ca) I"d Cb) "F41e"lme.LOA" II for ~o lubstitut4o" of "~Ylte~" OCCU~I ff "Ule" i, e.0'4c4tlY aticulated - ~e"ce o"'y two tril" oeeur, .-._.-.-._.-.-.-. 1. T~i. ~oolie. O"'V f~r full ff'e-.tructu~e~ deviee •• ft doel "et curre"tlv i"c1ude meo"etfc teee. I" ft. ca'e, the correct comelete apecfffc.tto" ~u.t be e"tered .1 "0 orel4mf"arv ae'rc~ fs carr4ed out - li"ce thf. mlY f"vo1ve a" e"t4r. oaal ae~ol' the taoe Cse. Seetfo" 4.7). PAGE ~. 8~ ~. "F41~n~me.lOA" sDecifierl ~e~lac4"~ "F.le~a~e" fo~ the use~. f4le cannot be found or the device C8n~ot IUDDo~t ineom~end •• ~eJected bv en eoo~oo~.ete ~es.age throu~h t~e 50ecie' O~.ve~, es ~oted 4" t~e int~oduction to Se:tion 6.5.2, a"~ t~e T~~N Qe"e~al routi"e is ~ecel'ed. If t~- out, t~e otherwile the RU~/GET Drocesse~ cl0.e. and ~elea.el el' the TMON ~ete.et. currently lfnked (E~M being let to ensu~e eo~. ~ect ~uffer-rele.se - see .ee Section 6.~.1'. With the svste~ then restored to no~~.' .tete, f.e. t~u .. ~O~ t.ince nO more ore-loed OAT e~trtel cen be medel, keybo.~d L •• tene~ re·'t~ked to the kevboard .nterruot vector (also see gection 6.~.1) .n~ the Mo"itor/Use~ .witc h te~Dora~i'v set to o~o· g~a~ ru~·.t~te (to .llow stand.~d keyboa~d ~e.Dense. to lead failure - new ~eDo~ted th~oUQh EOP- see Cha~ter 7), QUN/GET re·fn~t~al~~es one d~ta'8t for the DrOo~e~ modV'e. It el.im. an aooroD~i.te buffer fo~ the device by • d4~ect eel' to the Mon4tor S.GTB lubrout4n~, if the device ta file-structured o~ vi •• OPEN ot~e~w.se .t UlinQ .TPAN, it then reads data f~om the ~~1Q~e~.~odule into this buffe~, until has heen ab'e to ext~ect the co~n block (see Sectfon ~.1) and store ~elev.nt data f~om i~ fn the SVT or on the stack. (f" the case of code, fdentffvfno edd.tio"al Monitor module, e'so to be loaded) Fina"y it es. tabli.hel the interface reou4~ed bv the Lo.de~ end cell. it bv EMT ~1. .s noted in the orevious Derao~aoh, er~ors detected du~i~g this oroceas e~e ~eoo~ted •• fetel (F~22 • mo. dule format incorrect - ~O CO~D' F023. orogra~ too le~Qe fo~ th __ available core'. The ooerator mUlt then KILL t~e load to continue. Regiaterl and steck Itate ~eouired ~y the lo.der were iled in the intro~uet40~ to Sectio" 5.1. com~and!s reJeeted through the .a~d TM~~ Drooer ia rec~lled, condfti~ns e~e f" th~ Qeneral 1nt~oduction to Section 6.~.2~ Similarly .f the Drfve~ crihe~ The RIJN/GET processor baste out1f"e follo~si 1. 1~ 11 lust~aterl at F4~u,.e ~ete· 'oee •• l es d ••• ~-t6. ttl Set 8 switch te ~ndic.te ~U~/GET (~.the l8tte,.,. qeset EO~ to t~e b~tto~ of buffe~s end relf~~ the to the ~evboe~d i~terruet vecto~ Clee Section 6.5.1). ~e-."a~le ~evboard 4"t~rruetl 8"~ ~e set ~U~ 1" t~e SVT t~ sh~w O~O~rAm 4~ a~d ru"".~~ rl,l1 i~ cAa~ A~rorl occur f~r E~P r~portf"~ (see ~ectfo~ 2.1.1 a"rl Ch~Dter 7). L4stene~ q.s~uffle the co~~a"rl str4"~ to 'e4ve on'y the er~ume"t, at the s.~e t4~e co"ve~t4"Q ,".ee to cO~ma to tree av~tax erro~l. Call CSX to 8~Alvle the ~u~e"t Iv"tax Clee S~etio" S.4.1). The" let UP a eSI-elock on the st.ek ."d c." es~ to oraeare e L4nk-b'oc~ and 'f'e-b'oek based UPo" the .rQu~e"t. If er~orl ara detected at ~ft~er ca" o~ ~e arQu· ~ent fs e~tered, go to stee 7 to ewft th~ouq~ the Soec •• ' nriver for "Faultv SV"t •• •• .r- Through ftl o04nter in the SVT, leareh the onL for t~e dev1ee soeefffed Cautomatfea"v ~eeome • If • vlte~-devfee throUQh cst 1f no"e 1s Q.v.~). "O"-e •• lte"t, s~~i'Arly e~1t for "I114ge' Device". ~therw1ae eell ,INIT o~ the oreoared dateset ct). .LO~K to v.lf~fty of ea" 4.6,6). test t~e exfltenee of the ffle or the the dev~ee for 4~out~ (aee 'eetfon Go to ste~ A if satfaf.etorv, cheek whet~er a UIe seee4f4eat40" w•• stored i" the 'f1e-bloek bv CS~ Cbec4us. leee4ffe.llventered). If so, te mporar4lv eh8nQe t~e eo"t.~t of the UI~ fn t~e SVT to t~e ~a~e seeeff4c.tion ."d call .Lno~ aQai" Cf" c.se t~e Uler fl attempt1"q to acce.1 10meone elael f.'~ ."d the reQuelt is ~aJeeted beeaula ~ead or4vfleQ.a are "ot "'owed - .ee Saction ~.1.4). If t~e s,cen~ ehec~ fl .uccessful, deter~f". t~. rel.t40"sh40 of the 'oaged-4", user to t~. Hles ow"er from the 'lIel. Prov.de~ that the f41e orot.etfo" retu~"ed bv .LOO~ i~dfe.tes releva"t _run ~r4vflpges, 00 to steo 8. ~t~erwfse Check the ffle •• te"140", 4f nul" reoaat both c~eek. from Itee 4 wfth LnA as 4 ~ef.u't. ~therwfle e. Whe" "0 UIe fs actuAlly soecif4e~, ree." .LOOK with the Svste~ UIe substituted. Go to steD 8 4f .... --.---_ .... 1. ,tNtT, of eourse, .'ao Derfor~1 the deviee check (lee SecttO" 3.2.1.1>. However t~ts mfcht the~ r~sult in a IVSte~ error (A003) - ao~ewh4tconfus4nq to th~ yler .sDecie1ly whe~ ~e ~ •• "0 ~~owledQe o~ t~e i"terna' ooe~.ttons 8t t~is ti~e. ~e"ce ~UN/GET forces its OW" df.o"ostie. PAGE b suecelsful. Reoeat bot~ e~eeks "ul, Extenlion reolaeed ~v LOA '. S~ould a11 f~om .teo 4 ~it~ 8' • let uo fO~ "NO Ff1e" the aetio"1 of .t~o 1 to I'"esto ... t~e .yste~-.tate as reeufred bv TMQN ."d ea" tl'le 90eef., O~1ve~ to aet10~ the meSI.ge. ~eve~t to t~e qener.' ~out.ne 0" eomolet40". er4nt. t~e c~ecks fail. ~eve~le 8. tf the f"out is thul now aceeeteble, ... le.se a" d.t ••• ts cu~rent'v set uo Ca,so .CL~S~ .. eeuired on eOm~.nd inout • .inee 0~1e1n.llv ooe"ed). ~ •• et EOM to ft. t .. u. oosition end .,.e TOe and ft • • tack-stoo. cay the ml"fculatfo" "ote~ 4n Sectfo" 8.e.l. the ff~lt two are helrl ebove the du~mv OAT Ind buffe~ .~ •• ).(1) 9. Re.n.tfalf~e a detal~t fo .. tl'le 'oad. C." .STAT C.ee Sectfo" 3,2.4.2) to_dete~mf"e t~e e~.ociaterl device cl'la .. acte .. f.tfe •• If the drive .. Factlftv Indicatol'" .~owl a ft"-It~uetu .. ed devfca, determine it • • tenda .. d buffe~ Itze Csee Sectfon 3.3.1) and cal' the Menfte .. S.GTB routf"e to ov4de t~e "ece •• arv buffe.. C.ee Seet~o" 2.4.2). P~eoa... a TRAN-bloCk loc .. tate'v CSee Sectfon 3.2.1.2). ~emember t~. ff'e tyoe as .. etu .. "ed bv .LOO~ end w~et~e~ the devfce f- DECtace f~om t~e dl"fver fndfc.to~. Set eo(nt .... to fo .. ce I buffer-ff" ~nd qo to .teo 11. o.. oo .. 10. W~e" th, d.vfee is "ot ff,.-.t~uctul"ed, ca" .0main'y to ut4'.ze anv ~ .. fve .. flef'ftv fo~ c~eekfnQ device-reedfne •• C.ee S.etton 3.3) and a'so to Qet 8uto~.tic buffe ... 1'ocat40" and I ffl"st buff ... fil' C.ee Seetton 3.2.2.1). From t~e Doe data fo .. t~e data.et, o ... oa .. e A TRAN-block a. above C.ee Section 3.1.2.3). ~~en t~e .QPEN tl comc'ete. set oof"te~. to the buffe ... c~eek fol" maonette taoe Ca',o fl"om t~e d~tve~ i"otcator). S4nce no buff ... if" auto~atfe.'lv occur. tn ft. ea,e (see Seetton 4.') ~e.et oofnte~. to fo .. ee t~f •• PEN, 11. ~~oeess data frOm the buffer, e wo .. d at a tf~e, a. follOW. - sep. ~eetfo" e.t for detai,. of ~o .. ~at fo .. t~e COMO exoecterll ......... -... -. 1. T~4. steo fs followed 0" tl'le ltstf"~ bv a ~ove - se. "Comment" 1n Sectfon 6.5.1. oos.4ble RWN ~. c~~c~ Qui~ed t~e ~v f4~st ca" "~.ad" C"'a"te,. 7' 3.~.2.2), CI~e e. ~o~~~ fo~matte~ Sto~e t~e Add~e •• If ~ot t, as ~. b4nary ~o~e Cs.e ~eet.on error (F~2t) th~oUQh EOP wo~d. If"e Byte Count an~ fg~o~e du~~v Load Chec~ t~e "ewt wor~. If ft .s "~t 34~t (COMO code t w4t~ 7 w"rdl fo"ow4"Ol, call "For~et e:r~or" CF022' Slve the Prooram LOld-"ofnt a"~ eh4c- ~4le. If t~e u't.mate e"d 1. aboye avaf'lble memory, call "Toe La~Qe Error" CF~2J'. ntherw4.e .tere t~e 10ad-,,01"~ It PL' 4" the SVT Clee Section 2.1.1) and Ifmf,arlv the Procr~m Stert I"d OOT Start I~d~es.el at PSA Ind DS4. If RUN 4. reouested, Itore PSA fn the qU~/GET switch Csee ste" 1>. If the ,.elocet~o" ~lag i. let Ccur r e"tly "ot Do.sible', cI" "Formlt E~ro~" II aboye. Othe~wf.e store "Pro~ram Nam@" f" the SVT. Pre"are to store I 'fit of the I~ditfo~al ~o"f tor rout.nel to be lelded on t"'e Itlck. If the "ewt word eo"ta4~1 I byte ef 2 with I ~on-0 hio"'-byte, store the 'Itter II I counter and moye the follow4ng wordl onto the stIck unti' the cou~ter ru"s out. 1'. h. If the newt word 4s ~, the end at the cnM~ 4. ~eached. So save the tota' ~umber of word. ~oved on the steck for 10lder use and go to ste" 13. i• At eac'" of the a~ove .te"s C~) th~OUQh (h" ace bvte chec~.um end dec~ement the byte COU"t for the li~e, slved at Cc). If thfs goes ~, verify the checklu~ and eell "~ •• d Errer" CF~21) 0" fe.'ure. ntherwfs. reoeet steol "a" throuQh "c" and resu~e from "g". cu~u'ate the data f" the buffer ~un out, ca" .TRAN .WAIT fo~ a refi" Cor ff11 if f~rced above', orovided that "0 EOD wal seen at t~e '~st tra"sfer (this should "ever haD"e" • if it ~oes call "F~r~at Error" (F022). 0" comolet40n, adlust the buffe,. end 4f "ot c~mD'etelY filled (EO~ "Ow ~et). PreDare t~e nevice Bloek # 4" the TRA~·b'ock for S~ou'd 8~d DOSS.ANO a. tnc~eme"t curre"t ~lock if t~e device .s fi'e-structured a"rl the file itsel4 is ce"t4ouout Csee Sectio" 4.1.1.2) t~@ device is "ot file-structured, th4s a"~ occu~. b~t is ir"e'eva"t. -.f If the i"put is a li"ked fi'e Cs •• Sectio~ 4.1.1.3), .xtreet the next '."k-we~d - I.t fOO for "e.t t4me if it i. 0. e. . . If the li"k is_"@Qative and the ~ev1ce i. DECtace, adjust fo~ "everse tace-met.o~ Csee Sectio., 4.2.3) that th~ finel COMO checksum .s correct CFA21 e~re~ if "ot). The" co~p'ete Aeo •• t.~."d .tack state creparatio" reQu4red bv the Loader. CMovinc a~y ~O, marker i"to t~e !')Da fo~ , ate~ refere~ce) a"d call ~MT ~1. E".u~e C""T__ ,....."....~ 1.c/w4.) c.o"-'O..& ,~~uPT ~ I'll,., ,- fI'~ ~~~ (;0) ~"o(J>a (:) ....,..... c.naV . ---------. .~ iol.Dn'3 .. &"!l TIM'" !:U'&,: 1t'I."'."",... )ctl~~ r -.,.. . ItGC1( ~l) U'l&CACj) =-etw.as. t..OC"·U P I , - - - -I- - - - ~ I~ 0-,.~~ .w( 5'1.'III!rO. DC\(,c:e: ""8IU+«'/ (1IOfY'I'" ftT1 ~).-------.J (I&tn' ~)- - , .s,) ( ....T ~) Cen\~ ,a-.cC...... , VI• I r------------------------~--------------------------~ I (rIftff' .1M) , . - - - - - - - - - -~ - - - - - - - 'tIII\T Jlo) r--- , ->---1 I ~v ""'l ~ , 1 ~I .. loo ",...,. tn4It ... - >4Ibl~1t It\t"',~ (~~) (,-"T X) ~N'EA A -u.~ M~e. .....rr y y , (,IItIn" at) - - - -> - - - - (cntr a.) - - - c.) c~,.~ "~&,,·olQ. ?- - - - - .. (~T .:a\)- (..-a) -9 Cet'f\MAJO uec o. 'T..c KCVaottG ,... c:cMf'ft_O ~p ~ - \)9' ~A. rAoce&&,"'. -> . ~ .. it£Gf5i~S --- ~vO "T' -----,.P'lOC1!SSo~ c:.Au... --- ~9~~ ~"'l) ~G "'T 1-'---- ,~seR - Pc~PS f---._- .-----.----- _c,_ c.~,",- PC. PS Poa ,"1CY-_~ - ~o-. k M.N""",- "0 (o~ "..... ~~ ~ PoIC'C1ER. TO Coc'rlJ) AII\!A S/It~ . ACII!A --- ~uPtO ~ 'COGeAM tteG1~~ A.EG-ts.~ ------- --. - 'C'-- Pc a ~ ~ ~\)CPI£~ I"~"~ Ptt~ -.~-- ...... ~~ Pc. Ie P& PO« ----- ~ "'oA "",,,,,.mAL- ---~.- ---- f---._- ..... C..CA~ 0't"'ER RecAL.\.. 'o,rnc~ -.--- .E.eAu.. - .AcHiUI!~ a£cA~ ---f----- - pc.e..,,'l6tAuPT" S~ -----'--- - ---- --------- ~e:- ~ ---~ -~---- (.-~: ~K --- -~--- -~--- F"~r'e.. -~-- ~ ;:~nAfe:s. 1)oQ"",. . co4W1\ftC"G) ()4ZoCESSo..... ----- 0'" 0'" ~.C.t)l A~ ~ .vrc kt'\O STO&C -~.-~----- OF fIGlII)4t~ ,""'~ .""1\E "&".T ~T ~ EcHO o\lTPuT ~~--- ..e.. 3:/0 oSw 'TC-.:\':I*~ &..;~ .5"I"'OIte. ~~& ,.,~ ~ ~ c:..ort)ff)A .....1) ----K.oeF: . ('70 .~r - ~ """::::::- - ./' ...,/ - .y - PAX"'11!.It ''''~R't~ ST'A"Ntt &,,~& 6 e.c ... O - &\lFFe.A. &\JfIFeA (-, ~",..y ~~ E~~~~ 6~~eFt ECMo KeiL. : ~ ..:r ,,~ ocx...a.... .n-· X1>S.... T.~'e!A tC&e. - t<.CV6cMIl A:D SWAP - - - - ,/ &JP,:e~ , (.2.~ c.JonI~ .- - -----~. -~----- -~Ec.6 --tCS&. -- - .. -- :!)WtTCt4 .'~ ~ "ClC!A '''PU'' &\)F'FE~ - - - -~---- 1~'1'ft~cr'()N -- -- PSI'" ,.,~ OPE:R~T10NS ~M~~ .5fWE. eH~ ')-.._ _~ C • &,T (SMOW5 :t orO) I(:TVGo c.\..~ I"'PuT SioctE:. qs OIJW&J1"' FLAG OPER.A'lONS -f~,a '-'+'. K6t,. •• a ~i'OQ.E ",8."'" USIfolQ. «.IJ u:&s IH~ ~-~~--~~~~~ ~........ ~ Xf: FtG' TetnE ''', ".:l'iE, troq ":5EiR K6.\.l> ftEPLIKIiI 'i1' ' I.IT' a..., kg ,HT. J>lli:Ml-~ 5f.~ 'Tbe£lrll... ~. ~~--->~~~ f~~--~~~ t<8.~ ~l~~ ~o.r. .swn:." > (~) ac&." ~uP U~~~~ It~ .. t..... b-5 ____- r__~~ Ke:"1BOAe:D IN-re:.RPReER OPE RAT IOC'lS 1C.6&:.tAY ri£'\"of" 5PE.c: .1W'R Iae.Au... ~~"'c FLA&(lt5 Ge;-&s • ..... >~8 "~ClEs3 I---~ o~svs. '>~."ca:l C~$VS l>Q,~ To ~",j) ""~~.SEG ~o"'oJW fWlE.*, A~~Q.ES'S Im&~ .NJ1D6 1(e,t.CO I"I'IO"~ s.rT ro,~ T"O MU& .,e:r up ........_ . 7 'IN\( CMi) EA.~oR K~~ ~«T ~1oA& ~e 'it> ......_ _ ~.., ':>.~' O"'I..A'I ic:.AI.)o..~ ~~RDP ~- DR.x:i>L §.~ &"fT'e; SI. IlEmo'iE. ~~~ ""6&:.1>)(. "U, LTI PI..'t QL~\b4lte. 6'R£VlOL}5 ~lEliG AC!.SUL' g. ~tO.N)~ , Grft<:I«.E. ~Q." "£W)lGi .... 5£. uP :5P1ioc.d''1''- J)'t.v~ RecALL.. ~£.~~ Tb~e.1.£. - ~.OG.y S£. VeAIt C:~ s;a~e. ~. G£;MlE. Pel!: eore ~C'I')S"'" ~~ [!AVe ~R.EIoCi'" ErA DM£ ~\J~ Y .... >III.OGf't} S~ --~ r;~ a'1l '1t) i1 ,~ PAy aett)A"" . 11I'WI..mi "M8I-1t ~ + Ate.. J)ft'l~ ... "1'f\&a..e: ;MJ.'1C 11111.0'1> &c.' 'lJA'I - 9SS' So l'IloNT\i TO XX)( Pa\,,,,,~LS $e.~ "eCa &fI\...s.s. ~R.:'l ~IGtTS .UIJ-t) 'lIT 'DU.-,T &'1 I~. XF' ~'¢.~ M..ae. ~ .oPrt) --1 bo I_I OoJ~'" ~.:t'" ~Tu'> Cou....e:-cr 'r~.sv..' 1V)o..."... ER~R. L.£\\'ER I=W\Gr -~ < Co TO «£cALL. -./ l='5U~ fo-7 c~~ SAvE. (e.)(Qc:.UtQd PortH"') C\. bL>~\leC" dQ,~ed P-t'OC\'\ p.~Q.. Core. du('",~ Pt\a.se. I) .Ji) PQ,. ,-,~ _----.~ a€~r{ c.~ Pn:i!. To t4ePrb ~A -.1! 6'11£ c...rr. ~~ewA PcliHT' ~!> Is!_~~'!1' "" STbl' K6v ,..r.-•• ,e.. p~ T'O$\{'!". Sq·$u\. ~,.. ~l!l> 'TO &.INti!. ~A£a9 IW\O'I" 'n) >A'M M6A IN L I ~'LE l~~CT" 'FcQ. S\I"AeI!SS ~'"~ 2.~& T"_ (""ltT u ... ..it t=AIL.. .M MCW~ a"'~vTO FI1.E·e...oc e~~ IIU'n)'>Eui,:Tlor( ,0 ,'" REScflc.s BEG\N /RES""A~\ PRoC€.SSING- fa,« "-'t. c.o("()cn~:i:> PROCE5S'NG 'I:.rGO _......i!!.. CL.e.AR ~"J't)«£ FoR se.r Asc.r;: .i>,a,..,r 8Ase:.. ''''c~. pa,... Mo"J>''::-'" c.ornmAN» PROc:£SSING- .....~--+ Mo.-.cr c ...~ »otIE %~o~ ~~ Or( SMel< '-/110 · f'a , c 6 -/ (J I "ROc.E.SS IN&- Ae~ It~S1ERS ~tOv cA"L.~ AE.'tUAt'( A4iL~r co"...,.. "oq, •. 6"lC~ ~~ ~'tbQ6 J c.oo >A. t"''''l> .. exr ftOrl-til l'IEtn TO t::1)1 .re» ~ .~AtCr '" eac f:.y. + EIT'Ot"'... ".IZ(") In~ Encl Seer'). A-e-s.'GN (o"aR.l.'4'1 CON1M~1> PROcE.S5""'G-~~ '-/0£ /13 a ~\JB"~CnJTlH£S, OV6RLJ'¥IIII;i) r- ~\flO\,)$ I---~,f'('ur &V 1---....1 ... " ft~]) ·tEn a-m; __------.~F_--~N :1~.lER1 AT' __AU 6'11£ t- c"'~ CC·QQtJt\Ne ~_~ l..of'CIo( ~,.., ~'tAc.\<. 0) (6I~•.....n~i none. .. .. .. .. ---~--- (R.ct:".SO) -~-- ----~------- f--~--------------------.--- , Fa C)oC't- ___t:"%~~_:. __. ___ ro(AMC!. !_ ~._ ..) <... ..) I-W-~--~-'o--c"lt>£";-;-c~-;J ... -;-'f".~ .". ~~~\~_~ft'\e: (QtUI ,;".502 ~OL.LDyo/ - ., ( - ~)I Pc. Sl. ---- ~ 110.. .., .... 'MA... -~ o~.~ 't~\.J.... ----- ~ec.~L1- "o'~ 't"O ~ ~\1!. AItEA ----- ---.-._-- ~~~--,~ -~-~ MoG«.~ ---- ~E&S.'tE!R."S ---.-- Pc. Jc f;)~ p~ -= - Pc. --- -.,,~ C'Q~ f!Cc.au.. ~ PSt FoQ J--~-~ ,f'(~~ r~M'\ i --+-----------~~-----------~1----- PQ.E.:v.~~ ~K ~----. Q&:Au- ME--~-- - f------ ST'fIIC.K. 5~~ O~. fCQ. • A~&.~' PQoCe~tNS- P~'fl '-loY r/HUII'" I .1. -..; t 21. 1111'2"'4 11112113 111014"'2 12111'21 tlJ~"'1!"51 61' 18,"'127 1"'lPJ1' "'111157.3 Bille'" 0101421 4e~ "'UIII 1111 "11I2l 1311115111' ~III14~4 1"1"'3~ 1!5211~ • ","'151"" 12.4211 oXCUeCWI.,.[B'JWI "'lIIll1l'l 1111511111. w'l8'K.YQe~U 'HK 11121111 111615 1122341 I'IQl6JII' '''21141 seD1TCHPMSIIDLDI 201 17"'474 1114I/J' "'lute 1/J16"'U 103432 112617 121'1427 ,11111161 clDSNQDLZGGUWI~' 41, 1117154 1IJ1I216 01"3.6 lelPlI' 115.",. ell 112 1111"'1111 105122. 4CNP&PD'DKBRAARK 611 112625 IA!51.1 01"'1"'1 1"62"" 11"""'7 1"340\ t11225~e 11411"'1 UUIK,POLG1AO'IHX 1II'1,1IJ"" II, IU241 21, 1111151 41~ 1111(11141 61' tIIlUlU 1111541 112"" lllJI1J1lJ2 115714 I.uee. '1, 182"1121 21, 110223 "" "'lC11.t23 ell ,,"81 1128115 112'IS 114'13 11111221 IIUI" II, ,.57el 21, 1115361 "I, fllI~'1!I1II 61111JllUI II I lUI 12 1I"'e6111 111"'16 01'7e, 1"1218 1180"'4111 ~1.!e7 10107' OJ Ii"" ""2 1111111)111111 l"'I1l!U Iln's 1113'" t77601 IB,III04 1'11131' 1774"111 lUlU 1'112281 1II""1IJ02 11162816 11111111182 fIIltU8 I3IS18. ~U11L1J'18"!Nt 121227 ''''1111113''' \I34eS 1212211 (CDU0CCUW")('[Ow" 1151715 11214~ 11111 .... • 216241 ,e'DUIGMUTIU. 11111138 11/11522' "'1'118 1'1116. JeLMe'LKA'TJN~NC 1I/J'!567 11111'81 IU7U 11111""2 11131' 11112413 en782 185'1' elP14'" U!5'I' "'llB28 '1184. DJUU8 .U311. Q MUGQLKYSIS&P,P ""'2fJ1I 1111231111 IU4U ... 2'13 t4e0"1 .e8Ull SP~U"ATKUK~A'SL 0115.38 IAUI2. 'KJ"ANP7r~BAJBA U211l 11131'77 "01018 1 1.8213 ".1113 13 11015' 13. SQKYK!77A8KJK'KK 1126.11 111"26 "'11401 111.151111" "'lU' 8"15 ""'51461 1tPB'UVPACHJE'&J ,/IJ 1ClIIII I III, ,"!5u, leU'3 1"'15836 1'7774 '1817111 "'131'8 21, 182'11122 '111, 1111'536 ell "/lJlllllel I III III!CIJ 1II1eU6 118157.2 I 164111! l1li, LoIN:Z 5iRRi"' I ° 1!l1U35~' 1111'0 1111631~ 1111111028 IIII!IU32. -BBXRSCW 'CtP'ZC 111124"1 1"1418 "'18""3 122411. DJD.~'D AUNACQ'I 11115128 1311143 "'11118 11IJ5"', CCALcFNAVK,IN88J 122411 111413 !182111 11337•• .,HJ1·ZA'ICCALc, "~ "lll'!5 IlAIII12 122922 113'1113 21, 'le0U 156314 "'1111111116 16.3111' ".~ 11114"'3 116211 113374 lel'le 81' IIIIlIIIIIlII2 .1/181/111 1111111181 le"l2 "1,11. IIIIU01 2111, 1112U 41, 114136 eel "28.84 1J "leBe,,"'(H 1lI01l7e IIII11I/JA00. ',H.I,eG"D •• e,. "'14142 02111118. conn"'B'· lCF III,"QHI" 181.51 I AAIJDPAU~'D YV)C IIIJII!lS21 '~'AD 1tN"P&W.' nl'11. AtAJEJ9ALUI5B'OC 111246. 4.c'D'WF&'BQ&R&~ el81U 16'" 1GI, lGJellll!5 erUJIP4 112'11 1111478' IIle'l 1CII3"'13 C11011111111 10111118 "'12614 1IJ1111111'8 00'136 10(111P16 111112"'1 (1)01111111116 18 16e0'" 1IIIIJ!5"'.e 162'01 111211126' 1"""'01 (1112836 IIJUIIl02 I &w('A!,JD'AHAU8X "'0 III III "'. 116216 ""'III.,e~ "'137'e 1!!!IIS81 RS&O"&JNOB'&W.' elll"'118 .1371113 1/1""1 1163184. A!·KAPAIN'CW 'DO 1/11"11102 1(1]141' I, (.El FU B'KC Oc.~ ..... NO~ 1116111' 111UIII 1113274. luel2 "1"'26 11113148 "'110B2 "'11 .. e co '" 'lE"r.("r ~~l\.J ~P.~,)IOL4-01'7'il) ~sc~ U iVt:l L..ENT -./ ]>UrI)P r.r.a --- '-~ -- -- - - -...-cANS,EN"ft"\OC"C ,ToR. -.J..~' - .-~-- :,- -----==::,..;- ~ ~ &&W~Cl5 .. c:u::.,rnQ ~ .... Ttno" J)thl'ltnY' .....wc~"Ca ~.,,:r. CftTRt£S !, " ae5\J>&rr N)O... 'Tb~ ..... ....,-------' -.. e .o.n'). F~ ~ "~"T'\Or( ---- TRuE: Er(PoF ~,~(€.().~ tOON'T'O~ - G€.NER~'- "'rlaAto.lS,E,NT C>RO~55'NG P~,e c~ :t ...... )C. w~ ~LAlQ \1se IS4ILT ~rt) A" ~ ~ 'Ift),ltw'l '-./ ies't1llta T4tUa. ~ B .-.oLJ> '-~ U!A~acot1 ~ ~ IiOt'O . ,. ...... ~ ~ct " •.,. Get~ LMUc·~ Roa. f'(f!."./ ~\~. H.o-"'~ EOI"/),ioe.~ ~SiDP ~. L MC'I1O.... ~- ~-j &u~ ~cATIOtl ~ ~~. ~~ ,,~ flee ofOol JI&'''~ ~:.> '-10' . ... ~~, E..nciZ1f!S ~:n SvT .sflll"e ~ !~'~A l'lWrl.CO I f'I\AAl~ ~~ "tt> ..t<:> aZ» COt...U!a :IIoJ~·c.rrc ~. 6l.Ocl<.~ .", CIU..PTER 7 (]I ERR 0 R It ~" HANDLING bee~ ~oteo et v'~4eu. eleee. i" t~4. M8~u.' t~8t of ~e. eog"4t4o~ .o~e e~~o~ co"rl4t40" e8" ~e.ult i" • call fo~ t~e ~;.~ti"e of • di,o"0.t1e mel •• oe at t~~ eO"lole tv· oew~1te;. T~e D~4"t4"g .e~v4ee 4. ~~ev4ded e~"t~81'v by a ID.e4" MO".te~ modu'e ,"d •• uled bv t~e ~0"1to~ a"d t~e SYltem P~oa~am,. ud. ie~v.ee. T~e ~u~~o.e 01 t~4. e~.~te~ 4. to d.,e~1be s.at.O" 1.1 ex~'a4"' t~e cod4"Q .e~eme Uled t~ ide"t4fy t~e ,~~o~" $.ct~O" .~ows ~ow t~e ~oeeia' ~odu'e_fl b~ou~~t i"to memo~y ,"d t~e module itself is outl."~d 4M 'eetio" '.2 7.3. • 7.1 I ,-.. Tyoe, of E~~or T~. P~oar.mm.~" ~,"dbook .~ow, t~.t a" e~~o~. ~.~d'ed by t~ •. o1.a"e't.e P~.~t ~out.~e aODe.~ I' 1"_ fd."t!fv1"Q "umb.~ o~.f •• ,~ bv I code •• a. fo~m.t401'''' '.tte~ fol'owed hy ." 4te~ of IUDoert 1"- 2311162 ~'I"f"Q t~.~ I" 1/0 r~au'!t wa, made from loeltio" 23~62 fo~ • 1.~v4e. fo~ w~1e" ~o buffe~ ~oo~ eould b, fou"d. T~' pV~~O" of t~e code "tt,~ 11 to i"fo~m t~e uae~ of t~e •• r~oy.", •• oi t"e ~~ro~ ,"d to ~"d1c~te t~e follow-uo actiO" take" by t~e Mo"4to~. I"te~"a"y 4t •• ~ee~'.e"t,d by • "u~b~r w~ie~ f9~~' t~, ~ia~-o~de~ byte of , wo~d of w~4e~ t~, ,~~o~ "umb,~ 4. t~e 'ow-orde~ byte. T~' cod, "umber •• eV'" fe~ .r~or. w~.c~ .r. ~o~e Idvisery t~l" dr •• tie o~ wl'de~ ,t"" O~OQ~'~ CI" ~ll"Idl! its,l f. For t~ese, t~e"e~ore, t~. o~OC".~ 4, ",~,"ed .fte,. t~e me,sloe ~I' bee" ori"ted I"d ~"oee.,i"Q eo"t1"uel. T~e od~ "umber eede. are ~e.erved for 'rror, w~ieh at beat ."eed .ome e~t.~~a' ,..~ed •• ' aetiol"1 ,1"10 . , wor.t m.," "or~.' orog~l~ eo"ti"ult40" 41 out of t~e aue.tio". T~. eod., cur~e"t'v •••• 0".0 I~'I ". !"formatiO"" (I' - t"41 dO., "ot sio"ify I" e~ror cOl"ld4t40" i" t", .t~4et"t Se",e. It a"ow. u •• ~e of t~. ori"t ~ou!1"e by a D~oo"em wish4"o to "ot1fv th, oD,r.to~ of it, eu~re"t state, e.g. • StOD "umb.~ 11 oril"1t.d il"l t~ie wav bv a rul"l"4"o FOQTQAN ~reor,m b.fo~. 4t ,.ite to t~e Mo"1to~. II PAGE 1-2 OOSi'.~Nn Aet4c~ CA) • t~.s i"die.tel t~8t t~e coe~.tc~ 1• ee~fc~~ ~Ult Ic~e ~eet4fYi~Q e~ceell befe~e t~e O~OO~I~ el~ o~oeeed, IUC~ la co~~.etly .ett4~g ue 8 nev4ce ~eeded by t~e ~~oe~I~. If t~e oce~8to~ ~eou.~el ~elum~t10", ~e CI" Iffect t~il by e"te~1~Q 8 eo~· 101. CO~TI~UE ec~ml"d. T~e o~ogram ia t~e~ eo~t4" uen ~m~.d48telY io"ow~"o t~e e~~~t reouelt. w.~"."O Cw' • t~ •• is m•• ~ly c~ov4de~ fo~ t~a use e~o~~I~' w~.e~ ".ed tc i~fO~~ t~. u.e~ t~.t ~41 ef ~elu'tl IUleeet but 4" t~. meA~t1me c~oeell· .~O ee"ti~ue., fer 4"ltl"Ce, WMe~ LTN~·11 I"te~. t~e leeo"d ~ell of • 11"k oce~.t40" witM ae~e Qloba' rafere"ce. atil, u~defiMed. . mlY ~e 'ata' C" - tM4a '~OWI t~.t t~e errc~ 41 tco aerioua to a"ow reaumet.o~. !t uau.l'y ~e.~a t~lt t~e Mc"itor ~aa deteete~ .o~e ~a~dw.r~ or loft wire e~eb'e~ w~ieM e.~"ct be cer~ecterl 4mm ed4ate1y, Fo"ow~~e luen .~ e~~or, t~e ~~ocre~ ~uat be atarted a1rel~ bv I cOMlole ~EGI~ e~ RESTA~T er it muat be ~e~cved fro~ ~emcry wit~ a ~ILL. SYlte~ Proor8~ Er~or (S) • t~4s ~I u,en by a SYltem p~eo~.~ w~4e~ C'M~ct croeeed w4t~ it. eu~~e~t t'lk 4. but ~av be .b1, to,leceet a MeW o"e After sc~e fo~~ of re-1M1tia'4zet10~, e.a, beeaUle ef .~ 1Mva11d eo~meMd st~1~g 1"cut. T~e cemQlete ra"oe ef t~e errorl w~t~.~ t~ese cateoo~.e. 'ilted 4~ w~e~ever ouelt t~e Prear8~me~'1 ~'Mdbock. Mo~4tor rcut4Me or.SY.te~ ~rogr.m d1.a~olt1e ~riMt4MQ se~vice, it I the e~de 8"~ Mu~ber i. Meedl to reluoolY the ~ust for t~e error e~d 8'10 the luo~Orti~for~e. i~ t~e measaea. T~eae ita~1 .~e c.lled OM t~e ~t.ek. T~e ee" itle'f is ~Ade by e~ YOT i~struet1o~ iM1t1al'Y, e.o. t~e fu" aeaue~ce mioMt ~e .s fo"owi. tio~ to be i~e'uded MOV .~.O5'" 'J~ U " \; S(i;. " _. 'f ~ClV ~ .~YTE lOT (PC)+,-(S'" 'OT' CPC)+,-(SP' 2d 'PASS OEVICE NAME 'SHOW 'Of VICE ~OT REAOY' ,I.E. ACTION *~ ,CALL !:R~O~ PRTNT . " OOS7.QNr'I Th. ~8'IO~ fo~ th4. u.e of lOT 4. that 4t o~ov4rle. 4m~ed1ate acce.. to a leecia' check1~g ~out4~e w~4ch 41 10,d,d with the De~~a"."t'y ~e.ident ~on1to~, a. o.~t of the 1"4t4.'izet40~ medul' d •• c~.b.d 4n •• etien 2.1.'. In e.~t.cu'8~, the ultimate .~~o~ m•••• g. - cod.d e,e • w~1ch .40".f1el hl~dwa~p fa.'u~. of the .vste~-~eviee, ~u.t be .nte~e'Dted •• nc.t~.~. f. t~en ne o04nt in t~y4"o to b~1~g the O.e~"o. tfc. P~i~t m~du'e i~~m th.t •• ~e sVlte~-dev~c •• Thue 4f th4s .~~o~ 1. det.cted, the mo"ito~i~a ~out.~e h.lt. the 'Vlte m• Th11 loec.a' ~outf" ••• a1.0 ente~ed d.~.ctlY .s a result of 1".gal t~IDDfnQ th~oueh u"u.ed vecto~s fn the meme~v 'ocatfo~. belew .~e. It wa. 8110 noted f~ l.etfOn 2.1.4 th.t th •. ~o~1t~~ 1n1t1~1~ZAt~0" ~eut~~ • • ter •• a va1u. 1" the ~od~tfo~ cod. DO.'t.O~'. 1" "ch v.cto~~t~tu. we~d And this l' of cou~.e eomb4"e~ with the t~'D DP40~4tv '.v.' .et at 7. T~' ~out1n. move. thf. It.tul to the .t.ck al ." ep~o~ "umb.~ ~1th .• h4Qh byte •• t It 3, thu. Droducina e v.l11'j fe· t., e~~e~ cOd.. Th. 'I.t ."t~y on the .t.ek at thf. tfme 1the ~C; c~""t • .,t •• v.~. bv th. ~~.o, thi •. auto':!'etic."y .e~ve. II u •• ful ,UDOOpt 1"formltfon. 'o~ cOmoet1bf1ity with the no~ml'e~pop ce" thpouah tOT, w~ich 4t •• lf e'u •• 1 • PC e"d .tltU, .IV., two wopd. ere then 'Dush'd' onto the Iteck i" the d4rect entpy c.... el •• 'iaup. 7-1' .. . The 011~no.!4c Print module 41 ~IJ'ed ~v the 'D~c41' ~out1"e by ~'I~' of !MT 32. Seceul. of fts code it f. bpoUQht i"to the ,ub •• dt.~y K.Vbo.~d sWID Puffe~. T~u", not.d 4" .ectton 2~3.1, tt 1. DOI.ib'. fe~ d1.ono.tic orint e."s to be ~Id. f~em ~th.r ~outfn •• t.mDo~.~i'y ~ •• fde"t .n the ~ein SWIC Buff.~, t~oUQh not by tk. groce •• Or. withfn the KeybOI~d LlnGulg. C••• hew" fn •• et40n 6.4, tkese the~efope hlndle th.fp own .p~or.)el) ... _- .........• 1. A Deobl'm ce" .~4s., howev.~, 4f an !~~oP .04eanoltic p~fnt i. c",.d f~o~ ~" int.~~uct,_(b.c.u.e' ~op inlt."ce, e d~4v.~ hI. d.t.ct.d .o~e ha~dwI~' f.4'u~. i~ ft. dev4ee), .t the II~' t4~. thlt I k.ybo.~d comm.nd •• being D~oce •• ed. The ~~su'ti"o eon~l~ct io~ the use of the ~S~ c.nnot cu~· ~.ntlv be ~ •• o'v.d. Henc. the u •• ~ i • • dvf.ed to te~e e.~e 4" h4s k.vbel~d u.aa. wh41. oth.~ 1/0 t~I~.f.~. .~e u~de~ w.y. D8~t4eu,.~lv on the mo~. cemDlex bulk-8toregp devices C.ee "Gett.~a DOS on the ~i~" OEC-l1-SyOO-0). I, b, fOP il .i~D1y To 'O"VI~t the "'0' cede I~e tt. ,uDDe~t .~ f~'~ltfo" ."to the ,DD'OD, •• t. ASCII •• ,t"O ,"d di •• lteh it to the cO",01. tYD.w~4t.,. To eo"t,ol, fel1ow-u. Ie'.," •• diet.tld by e"o, cod., the el".d bye Howev."tt '.D.et, •• t.ck .t.t. " out 'Ictio", D~'V. d •• eu ••• d t" the . . P,oce •• 4ruu Th. 'laUI"CI of ODI'lt40". t. ouf', .t,.tohtfo,wl'd ."d thl~.fo'l ,Iaut,., "0 .'Ju.t'lt40", Thl b.,te ,t.D. '~Ie t, SIV' the Co"t,ol .t.tu. 0', the CO".o.. tyeaw,Ue" to .".bl. ft •• '.,~o,.tte" .ft., the M•••• O. h•• b,l" D,f"t.d, w.ft fo, I"Y chl'.ete, eur'."t1y b.4"0 outDut to ~. fi"i."'.d Cl' OutDut C~/L' fol'owld by the .,ro, e~d. ,.tter der· 4vld ~y .tMD" tlbl1 100k.uD bl •• d 0" the cede "u"'blr. Co"v.rt both thl I"or "u",bl' I"d ,uoDert f"fer~.· t~~" ~"to ~Ctl~ ASCII, u'."O I" ."'bedd.d ,outi"e, C.i",a thl "0'''''' SW'D Buff., MIY "ot b. avafl,b'l fOr u•• by the CO"v.,.tO" Utt'tt ••• ,0uti"1 da,· erfbed t" •• etfo~ ~'~" • • ,t"t the .re,ult."~ VI· 'ue. with I d4vtdi"0 .elCI I"d fi~al1y I .ece"d CR/LF, " Ch.ck thl error eode~ II ft ~,avI" C.ea .aetto" 7.1), r.'tora thl ty •• writa, .tltU' I"d tha orog'l~ ......... -_ ..... 1. If th4 a,'o, i. cI"ed ~" the ",fdd'e Dut, the ~1"lgl wf" 1" flet f"t.'VI"I, of I 'f"e of out- PAG~ 1-fJ ~e~ove bot~ t~. DOS1.~Nn ~eaiate~a .aved bV t~e EMT ca" e"d a~d atatul a"d t~e ca" the Itac~. Fre. the KSB a"d reca" ~.tu~" 15. PC a~Qu~~"ts f~OM t~e Drog~a~. For odd eodes, ori"t '5' to Wa~" the oee~ator thet co~ma .. d 4nout ja .xpected CI.e aectio .. 6.1) and s.t th@ Keyboard Liate .. er i .. out underway Iwitch (lee section 6.3) to f~rce acceota"ce of that .~Dut without CT~L/C. A'ao tr8"lfer the lav~d typew~ite~ .tatUI to the Kevboard Ltste"er (u,,'e,1 the 'atter .'ready hal a slved va'u. - ' .. dicati~g that the er~o~ mellaQe has '"terruoted the orocel.f"Q of a co"'",a"d (1)) Save the p~oaram retur" addrels 4.. the SVT (WRA) and ~e~lace ft o~ the stack w4th the add~ ••• of the ~y't.m ~ait Looo i" the ~VT(lee .ect.o .. ~.t.t) th4 ••• actua"v a switch of the co .. te"ts of W~A IS 4.. the conso'e ~AJT eom"'l .. d (lee lect'e~ ~.3). '110 c,ear the orior.tv ,ayad on the steek to erovide fo~ low-'eve' waitt"o. 1. ,.. ~et the ~onitor/Uler Iw1tch i .. t~e SVT to ahow the ~roora~ to be 1" a weit Itate (4.e. -1,1). For fata' er~o~ (cod. 3) ahow 4t a'ao to be ItocDad to oreve .. t acceptance of a keyboard C~NTINU! (i.e. -1,-1) • Ie. Seetto .. 6.3.3. free tha ~eturn to Itep 4. to c'ean-uo the steck, KSe a"d •• it to the Svste", Wa4t LOOD w4th ~eett.ter. ... ~eset to th.ir co .. te .. t prtor to the er~or ca" ~.ad.ne.. for ~roQra~ resumption s~ou'd a co"so'e CONTINUE be acceotab'e ('A' errora) Com",_"tll The O.ao"ol~.e Prf~t ~out.ne i" 'tl Drele"t fO~'" 4. ..ot re-entra .. t 4.. any se"se. Because of thia, it "'uat alwavi be b~ought fro'" t~e Iystem-dev.ce so that it ca" be Droteeted bv SAM as show" in lectio" 2.3. ~oreove~ a"v device i"terrupt Mu.t~be ~ee~.d a pote"tial soure, of another e~ro~ "'ea· aage. If thil oeeur~.d whi'e a orevioua "'easaoe were bet"Q croc.'sed. the sYlte'" wou'd ha .. et whi,. SAM waited for the KSB ~e freed. a" .",~oll.b~e eve"t.whe~ th~ or1 .. t ~out ... e could .. ot regai .. co~tro' to comelete tts firat task. ~e"ce prese"t1y, the ert~t rout'"e a'so locks the sv.te", by ma'~· ta1"'"Q t~e pri9r1ty 'eve' of 1 se~ .by t~e origi .. a, ~OT ca11. Th4s obviously mav mea" 8ooro.i",ately a seeo"d durt .. Q to .-----------.-1. A"v eomMA"d.cur~e~tly be'"Q '"DUt at t~ia t.~e w4ll i~ feet be.'oat, •• ~ce t~e letti .. o of the 4.. cut U"~e~W8Y Iw4teh al noted w4" e f feettvelv de'ete t~e .t~.~O se f.~ e"te~ed. DOS'.~Nn PAGE' ,-fj ~~ic~ "e ."t"~UDt C." ~'w.eceDt.d •. T~~ u.e~ '~ou'~ t~e~e fO~' b. D.~tteul.~lY c.e.fu' to .votd fo~ele.,b" .~~o~ co"dit.o"l. ~f he e.""et .ffe~d to hIve d.vfce .eCe •• ~~eve"t.d th4. ee"fod. fo~ It .~eu'd "10 b. "ot.d t~.t the eu~~."t ~.thod i. 'f.b" to ch."oe. Th. eodt"Q IV.t.~ W.I o~.ai""'v d~'.O"'d to D~o. v4de • fo~~ of .ee ••• ft" of ~"~o~ ~"'IO.I .to~e~ a" th •. ,v.t'~.d.v4e., ~ith ~o .... t .. 4etfo" uao" the '~OU"t of .ddftto"., .UDDo,t ."fo .. ~.tto" ".eded f" e.ch It t. o"'v •• t .t 0"' tt.~ fo .. the tt~. bet"e fo, t~ ••• ke of .t~· Dltet~v .• " the •• ~1 •• , .t.o •• of no! d.v"eD~."t. IJ.e~. th.~.fo ... who wi.h to D~oduce D~OO"'~' which .110 e." the D4.a"c,.tte "~4f1t "out4"e ",.v ria 10 ~ut t"'.v. "'I)'~ the" be D~'D .... d to ,M."d the •• D~oa".~ •• hou1d the o~.Qi"., f"te"tfo" e•• ~D,.~."t.d ,.t.~. te • 1-\'\ a o \.. . e.... C.OI'1 '1 '1\ ~or IV'~ ~0'1 "-c. i-~.... u...'o t t\ t ~ v"f~ IY--' F~1iP1 er to, orefotof" .t~ U ~ t -toicl ~ftot~ t~)) r ' "'-'-~ 0 /' € • ~,~ OOtC'TI!HTS ~1We» 6"( IIfI1r THe. "'''rO~ rc. UT~ --p ~U!'TU.fC 5TAT"~ A~" PC. sm:rnJS Il£1'UCr( ..-.oR CO,£' ------- S~PPQcn' 1 EUOC ". ) ~ --, 'MFbftm*,TaON - - - --- 1a)('&T'~ ~ ~TAC:.tc ~ IE oN ~ 'l>, ....f(esn'\c ~,""'T '1"t) 1tt£ Eacoll AO~T""Et. CHAPTER 8 MONITOR G ENE RAT ION and MOD I F I CAT ION T~e '.~'1.~ C~'Ct8~' ~eve.l~o~" t~at t~e DOS ~0"4to~ ee"~ ~f I" 4"-eo~e eo"t~o~ leetfo" .uc~o~terl by i"dfvidua1 141tl ~odu'as Ito~ed wft~i" a L.b~e~v 0" t~e IVlte~ It il t~e ohJect of t~11 e~l~te~ to d8le~4be ~ow t~e IYlte~ 41 built o~1ai".11v 4"to t~41 ~o~~ I"d t~e~ to d.leusl t~e croeedu~el by w~.c~ it ~.v be e_te~ded o~ ~od4f4ed. ~~oee~14"~ d.vic.. Mo"4tor ~e"eratio~ beei"1 w1t~ t~e '1Ie~b'y ~f t~e ~edu'e 10U~C'1 I"d .t~ei~ lubl.eU8"t 11"k4"0. Seet40" e,1 fde"t1f1el t~, ~.~ufr.~."tl fo~ t~e.e two Itece.. Seet1o" ~.2 t~." .-0'14"1 t~. letul1 build1"o of the IYlt.~-devfee L4b~.~v. Sectfo" 8,3 .1 co"eer"ed w.t~ t~e e~ob'e~1 of e~e Olr~"e .e"d c~eek."= out ~ew or ~ee'.c.~e"t ~~du'el c~.o~ to t~e4~ f4"11 f"clulio" i" t~. IYlte~. 1, it WI' "ot.d t~lt I ~aJo~ feature of ~~. ~0"4t~. fact t~lt eac~ rout."e 11 I comclete'v Itl"d-elo"e module at t~e lou~ce-leve'. T~e tYee of disk be1"Q uI.d IS 8 IYltem-device a"d the exte~t o~ t~e c.~~a" ."tly ~elid."t Mo"ito~ Sect1o", ~oweve~, reauiee that the ~odu'e. ,re correctly el.e~bled I"d.'i"ked befo~e_t~ev a~e 4"c'uded 1" t~. IV.t.~. T~ ••• oO'~ltio"1 I~' t~e~.fo~. 41,ultreted 1" the fo"ow."c C'~IC~le~l. I" to~ e~.cte~ 4~ 8.1.1 ~odu" •••• mb'v T~e i~d4v.dUll ~o"itor morlu'es cu~re"t'v IVI.'.bl. t~rouo~ DEC P~ocram L1b~l~y I~' 11.te~ .t F4Qu~, A-I. CR.fe~ to "A'le~b'4"= t~e 008 sou~c. P~oa~I~'"' OEC-l1-SXOA.n.) T~ev .~e .,1 cr.c.re~ for D~oce •• 1"a by the DOS.A ••• ~bler, PAL-1tR, '1 delc~1b.d i~ t~e relevl"t ProQr.~~1no ManUI' (DEc-tl-ASDC-D) • . I" oe~e~.1, elc~ •• 14~c'y al.e~bled 110"el thul ellu~i"c e DECt.~e sou~ce, b1"a~v outout o~ t~e Iv.te~-d.vfce I"d '1sti"cl 0" a 1i"e-cr4"te~. the "ee'l.a~v eom~a~d st~1"o to t~e ASI.~ble~ m1e~t hel t~e T~ere ere "eve~t~elel! two tvees of e.cectio"; 1. Sv.te~-device D~.ve~ - t~fs I.~ue"ees w~1eh must e~eeute Icecfal do "ot Icclv ff t~e lame dev4ee 41 PAGE 8-2 Dose.~NO u.ed 8~ IS d.~fe~e~tlv-~ased o~di~a~v .vste~. oe~.~~e~~' As .~oted i~ i~ 8 Seet.o~ 3.3.4, t~e d~.ve~ .ou~ee •• eo~d4t~o~a'fled fo~ t"e two ve~sio~sl t~e eo~~eet o~e 48 ide~t.fied bv t"e e~e.e~ee o~ ab"nce of I def.~4tio~ 10~ t~e ol~a~. te~ SVSDV It 8s.e~blv. If t~ •• is n~~t~ed, a ~o~ ~.1 d~iv'~ •• obtli"ed. T~e sv.tem-deviee d~ive~ ~eeu4~es t~e followi~g o~oeedu~ei SVSDV·0cCQ> AC .END cCR> cCR> 2. ,ENTER ~EFI~ITI"N VIA IKe l ,SIr.NAL END OF INPUT ,CSFE SECTI~N 6.4.3) ~~vbe.~d Cemm.~d LI~auaQe - al ~e"t.o~ed in Seetfe~, 6.2.3 I~d 6.2.4, 1"dew4~g a~d ove~"vi~~ oc- "ecel.4tlte leeei.l •••• ~b'V to ~.fl.et tvo' of d1 •• 1" use I' a Iv.te~-deviee beeause of VI~ving bloek.lize. T~4. lal4n meln' tke ent~v of t~. IOD~OO~.lt. D.~amete~s, t~ev 8~e orovided on S.De~lt. lou~ce ~odulesl KBIPAR.PAL fo~ ~Fll a~d ~Cl1 disk" KBIPAR.4DK for RK11. Fo~ tke ~o~ules ~.rk.d '*' 4" Fiou~. 8-1, t"e ec~m.~d strf~g for~lt ~fQ~t t~er.fore be • e~lt.o~1 t~. • ~8L,LPi,/PAI2(DT3.KBIpA~.PAL/PAll,KBLcCR> 8.1.2 Modu'e Li~ki~g T"e b.,ic ~o~fto~ It~uetu~e fo~ .~ 4~st81lation is 4~ faet d.t.r~in.d w~." t~. a.,embled module. I~e cenve~ted into .d fc~mlt bv t~e nos Li~ker, LINK-1t (Ie. t"e ~el.va~t p~o grlmm.ne ~lnuIl, DEC-tl-ZLDC-D). At t~i. time 81so, t~e I<.vbo.~d ,CoPl'lPl'l,nd LI~guI~' 1. eo molet,1v, I.t-U". T~e s.Quence .for linking indic~ted in t~e followino ope~8t.o~1 is r,com~.nded Dart.~u'l~lv if t~e outout i. to ~aee~ taoe Cf.e. D.v1ee 'Ppl) - Ie. ~ext .eetio~1 '0- T"e.m~dulel w~fe~ toget~.~ for"" t~e oerm8nentlv ~el.de~t in,ta,lation are li~~.~ into one load 1mla. 1~ orde~ to comelete d1~eet ~efe~enees Ind in.t4allv D~ee.re, t~, ~o~.to~ tahlel (Ie~ Seetio~ 2.1)~ Bec8u •• t~.s fmaa. ee~tli"1 t~e eo~~eet settinos for t~e fixed veeto~ 10cltfo". 40-~7, 4t ~u.t be oricined It lOCltion~. ~e~ee t~e eomml"d st~inQ to LIN~-11 fo~ t~. e'le~t1.l1v re.1de~t ~eMonito~_.eet1o~ fo~ I~ Ii dule,. di'eu.led in C~actAr 2, ~io~t be a. fo"~wsl *R~ON,LPic~MO~lF,~~ON2,~~nN3,R~O~5,~F,~~~,r.l~CK/~I~CC~> .R~ON6/ECC~. t• RMONt, eont.4nino tha. Mo"ito~ tab'e! ~ult co~e f4r.t (.e. seet1~n 2.1.1). ~o~eever, t~.1 curre~t lv 11 IVltem-deviee d.ce~de"t, 1" or~e~ to o~ovide t~e croc.r f4rst entry 4n tke DoL Csee 'eet40" 2.1.3). (~.~ee] ver.io~1 ar8 .va.'ab1et R~ON1F for ~Ftl, ~MON1C fer RCtl, R~ON1~ fo~ ~Kl1) OF (or DC or OK) .s t~e svstem-deviee dr1~e~ must he .s.embled .s not.d 4n the Drev4ou8 !eetio~. RWN (th •• qEAO/.~RITE croeeseer) 1s ere'e"t1v a "ee •••• rv inc'usion fo~ re •• o"' Qive~ i~ Section 3.2.2.2. A. ~LOC~ e." be omitted 4f the co"f4ourAtfon doe! i"elude • l~"e-elock~ ~. -~ON6,.s stated 1" Seetio" 2.1. 4 , mUlt .come .1"e. it eo"tain' t~e not lest o"e@-o",y 1n1t4.l4zat40" se- ., iMD1j.d.by th.,. "ote., ~he order Of t~e i"termediete ~o~ dU'" 4, 1mm.t.r1.,. Mor.over, the l1.t ean b8 extended to 1"elud. other Module. which a Dart4eular user w.I~el to be I'wey, 1" eore. That user "ee~ merelv inlert the ~odu'es eO"elr"ed, for the accrocr1ate glebal link. ~.ve alreadv bee" estab11.hed 1" the MRT Cor OOL fer deviee dr4ve~l) , •• S.et1o", 2.1.2 e"d 2.1.3. However, he 1i referre~ te the ~o~m,"t. en re.4d."cv i" th, accrocr4,te deser10tiva ,.ctio", 1" ee •• there ara r •• tr1etie". e" ,ueh u.aoe (Keyboerd Co~~e"d Module. a"d Oiaono.tie Pri"t, e~~eeia"v). . . , It w••• how~ that t~e proor.m .xit ~odule e.ceet. the tran•• e"t ~o"4tor .ect4e" to be correetlv l4"ke~ with a toe .t 17.01 e~d reloeate. it to t~e ucce~ e"d of avai'able Memo~v 0" thi, b •••• ( •• e S.etio" 5.5). Seet1o" 6.5 a'so 4"d4eaterl thet I" .~bedded ver.40~ of the .qEAD/.WPIT~ ~roce.sor 48 a r'Qu1~.~."t! Th. relulti"Q eo~ma"d strinG 4nout 4" this ee •• 4. es follow •• PAGE 8.1.2.3 8-. I(eybo ... d ~_~"ft~~q~_ Th • • s.~mb'Y D~OC'" fo .. thl K.ybe ... d l,,,ouIOe moduli' "otld 4" SI~t40" ~.1.1 .... ye. to D~e~a .. e •• c~ ov''''Ay4"a ~odu" f" the .. 4Q~t fo .. m to .t~uctu ... the I"te .. e .. et.r I"de • • eD .. O~"i.tel;. HOwlv ..... pcf"tld out f" Slct40" e.~.3, thfs 1"de. f. dIDI"d."t UDO" thl f.et th.t the modul.. eo"c.~".d .",e. 1 • .,kld t~o.t~ .... " " ft.,d ,.ou.~ce. ~I~e,. the eo"'",eru':t .t .. f"o ••• , follow. C." o,fof" .t , f • • dvf.ed, mOdule KBL b.i"O, u,,40~.'v c.,l.d by ft. OW" EMT code f. exeludld - ••• S.ctio" 6.2.01 ."rl jKBI~LPICKBI,KBI.DA,KBt.SA,K~I.K8,KBr.oD/B~0cCR> *KAI.Bf,KBI.KI,K~I,Tt,KB!,~O,I(AI.AS,KBt.~U/EcCR> 8.1.2.4 Othl" Modul.' Th. l"e",.f"f"O modul •• which w4" "Ol"m.,lv .... fd~ e,,'v w.th4" t~. sv.tem-dev4ce Libl"'I"Y "'Ult be ."dfvfduI"v If"ked .4"ce t~el" •• ft... t~.~ .. o"lv fd."t~~'c.tf~" 4. thef.. Tft'e (tl".",mitted by LINI(~lt ., ·~~~Ol".m N.~." see Seetfo" ~.t ."d Ffau",e t.~). Ao.f"." o,.of" .t ~ 4. I"ecemme"ded a.1 - *INq,LP,cIN~/el~/EcCR~ *~LS,lP,c~LS/el~/!cCR~ .tc. O"e~ all t~~ "'odul •• h.v. b •• " If"ked •• de'e",ibed f" the 'lIt .,ctfe", t~. actu.' D"OC." of .ettt"e uD the .v.te'" The f4".1 objective 4• • Dro~el"1Y e.t.b'.sh.d the .y.tem·~ev.c. f" the fo~",.t illu.tl"ated et t" ~e".~.', the If"ked mOdule. C'" be stol"erl t~i. Lfb",.",y 4" '"Y ol"d@ .. , with thl followi"Q eXceD- e," beaf". Lfb ..... y FiQu",e wfthi" t4o".' 0" '-2. e. The ~o"4to", R"M ~oet.tl"eD ' •• um •• , th.t the ffl"'~ medull.' thl D~I""""I"tlv ~ •• 4de"t ~o"4tOI" 4",.oe. C.el 'ectto" 8.2.2) The Pl"ea .. a~ E.it module, XIT, e.elet. the tl"l".f."t Mc"~to~ Sectto" to co",e .~co"d Cs@e Sect4o" 5.5). · L4b~e~v.bu11d 11 - 8 IOee1.1 ~V8te~ L08de~, 8VSLOD, w~4c~ is desc~1berl 1~ Sect10~ 8.2.2. T~11 o~oo~e~ ee~ acceot oeoe~-taDe 1~out f~o~ dev1ee 'pq' e"d 0~ov1ded that the suogelterl aeaue"ce fo~ 11~k1"g "ot~d 1" Sect10" 8.1.2 •• followed, the ~elult."o outout 1, fm~erl1atelv ~eady for ~V~LOO. ~oweve~ OECteoe 11 ello ecceote~le. Seet1o" 8.2.1 d.leusaes methodl of or~oa~.nn th4s. T~e ~ffeeted_bv .1 It Ihow" 4" Seetfo" 8.2,2 t~at t~e SVlte~ LOAde~ ~eau1~el only e luecels1ve Itrf"Q of the modulel to be 1nco~oo~ated 4nto th~ IVltem-device L1brerv, ~"OECteoe, t~.1 strinn 11 a f4le, MONLIB.SY!, CO~14It4"a of a co~catenat4on of the indfv~dua' ~odu~el •. BasicallY th~1 ca" be o~eoared using t~e OOS Fi'e Utilitiel Paekaoe, PIP-It Clee P~o~rA~~1"g M.~ual OEC-11 .. PIOB-0'. If t~A '1nked mod~le. a~e the o"ly 0"1. w1t~ t~e exte"I1on .LOA currentlv 1~ tn~ u.er'a d1rectorv, the eo"catenation can be effected 1~ One commend 't~fna. Howeve~ it should be "eted t~et t~e OECtAoe ~U.t be ide"tff1ed with t~e Syste~ a. user. ~ence LOG-IN es r1,t, i. "aceSSa~y. T~e leauence com~a"ds to pIp-1t ~1oht t~e" bel of ,OTI/ZEecq> .Z~~~ THE OECTAPF FOD rt,t' own eodeleeR> *OTIM"NLI~.SVS/FBc*.LOA[U.e~'s The UI. of fo~matt.d bf"arv mode 1s reco~~ended 1" o~der to t,ke edve"teae of it' v~l.dity-c~eckf"O fac~l~tv C.e. S.ct1o" 3.2.2.2). ~or.over it .vo1dl exc ••• 1v. oaOI bet wee" mOdule. 4n t~e relult1"; ff'e, s1"c. u"formatted binarY ~erelY eoo4.1 eve~vth4"o lee", 4neludi"o EOF oadd1"o. method is to oreoare e leriel of lub.frl1e~y f1rlt, oerheos 81so 0" the IYltem-device, e.t~n.fo". T~f. ~ethod fl uleful whe~ ot~er f1'es wft~ .LO' exilt within t~e uler'l directory Ce"d ce""ot be de'ete~). An .lte~na~~ve eo"cete"e~io"1 "10, w~4'. it ~IY tlk •. le"o.~ te @"te~ t~. .~~4v4duel ~o dvle "8~" i"ttally, it does .11o~ ~et~fe. ~f .~."e~ sectiO"I, ~Ithe~ t~." ~eoe.t4"Q the w~ole e~oee.s ,~ou'rl trl"lfe~ fl4lu~ls o~cu~. T~u. 8 seoue"ee ef "IP-l1 eoe~a tie"1 I' h.lew •• loo •• 4bi'ityi '~MONA[1,1]/FP. 'RMON~[t,l]/Fe 'RMONC[l,l]/F~<.tC. 4~ Thtl IFINI~H', t~e" fe"ew.d 'LOt':IN U.11' by ."a cO"lele ce~m8"~1 ,olf" 'PUN PIP'. to '~TLL', 'OTI/7E 'RMONA,RMONB,RM~~e.~ ••• /OF The ~'lu't1"O OFCt,D, CI" ~ow be used by ~Y~LnOf c~ov4~.d thlt t~. l.tt.~ c." be leld.d f~em seme .1te~"Ative device. ,. , ~ule! of cou~.e, tt ~u.t be e.su~erl t~~t. t~e~e is "0 Me"4te~ 4~ ee~. te ~e'o. A oeDer-tece v.~sio" CI" ut4141' the PIDe~ TIDe SYltem Abl~lut~ Leld.r C.ee ~Er..~1.GGPC.n). Howev,~, It"ce a a."e~.' curoole bulk·.t~r.oe d~vfce ~O~ 10.d.r t'_1 ".c •••• ~y .l.~."t i" a OO~ co"fiouratto", fo~ boott~o the Mo~4te~ f'o~ the SY.t.~~d.vice, tt leems ~ea.on .bl. thet th4. I~ould 1'.0 ~. u •• d te 'o.d t~ •. SYS~OO DroOPa'!' f~e~ the DfCtloe, epefepably t~e e"e ee"t.t"t~o th. Mo"ite~ modul. ftl.. 'Mo"tte~ OECt.oe ~et.uD c~oqra~ (MOOS' •• th.~.fe~. o'evt~ed. I Th. ulao •. ef MODS tl delc~thed i" t~. doc~ment "Gettt"Q ~OS the Ai~· (O!C·l1.~YDD.D'. ~ •• ic.l1y 4t It~uetu~e. I new D!Ctae. to eo"tlt" th~ fe11ew4"o 1tems, u.i"O .4t~er I" eld DECt.e. ve~'4en e~ ~.c.~-tloe er beth 4ts i"outl 0" .s A. Ce~.·t~.o. ef the SYltem LO.de~ el • co"tieuou. ft', SYSLon.sys f" bleekl 1-37. Soec •• ' 'eeder fo~ thtl 4~80e in bleck 0 Cw"e~e it el" be ecc •• ,ed bv the ROM ~eotstra"). MONLIS.SVS •• a 't"ked-fi'e, wfth fo~eed steraoe at the front end of t~. teo~ fe~ 14~D'.r h."d'i"a. ~OOS elso ~@I 8~ uodat. f,ct14tv fer MONLIB.SYS fi1. CI.e Sectto" P..3). ~odifyi"o 8" ewtstino J PAGF: 8 DOS8.~N('I '1 •• ~oted ,a~'fe~, t~e SY.ta~ loeder, SV~L~D, i. ~es~oMa4bl@ for the bu4ldinQ of the ay.te~-devfce librA~v '.t~e~ f~o~ DECtae, o~ cece~ tace. wheM reouired, ft al.~ oe~fo~~. QeMe~al 1"t4a142at40M of the ayate~-devic. ea out'4Med fM S~c· t40" 4.t. nn co~o1et.o", the Uler mlY reQuest 4mme~4at. ~on4t~~. Itert.uc~ Thfl aectio" de.e~ib~. t~ese oce~atio"a 4~ dete4l a"d al.o .~ow. how !YSL~O it.elf i. built 4~4till. 1y. p ~e~~~!io~_ ef SVSLOr. 8.2.2.1 ce~form'.t. tlO by ~or~e'. ~oMitor however ~y imolfcetion tke "orm~' Mo"ito~ doel "~t effectively e~4lt u"t~l SVSLon ca~ be ~un. Tke c~ob'em •• lolved by 'oadine a" iM-core MOMitor ver~ion co"taiM1"~ 11' the mOdulel called ~y SVSLon. Th •• fo~~1 tke f.rst cart of the load module fo~ SYSLOD OM nECtece or cA~er·t8oe 8Md •• el'"d to 4~4tilli~e 4tlelf .~merliltelY .fte~ ."trY i"to Memcr~ d.ler4bed 1" ~eet.o" 2.t.4 •. At th4~ time, thouoh, the ,vlte~.dev4ee eln"ot be lecel •• rl for ~~T \ n~L set-uc. He"ce module RMON6 i. mod4fi.d at lource 'eve' to remove t~.1 fe~t~re wh4ch ~I co"t'i"ed i~ I lubreuti~e 8G.~DI - see the Iccroc'4lte l4ltiMa. It is reclaced by 1M auto~atie ~ll1 SVS~DO, 4f ~hfl hll alrpady cOme f~o~ .OECtece, or for 4t. 10ldiMQ if 4t follows the l~ec4ll reS4de"t ~o"ito~ on t~. 'I~e pape~tlce - ,., bplew. The IODro~r.ete code seaue"CI 41. 8YSLO~ aetua~lY D~oeellel' .1 '0 BG.MOJI MOV CSA,R0 BtC i111276,R0 JMP '~0 BG.MOII J~P .tPC). .WO~O 8(;.~DJ .END RG.8GN .SET ABS.LOR START .(ASSUMED AT TnP OF ~E~OQY) .Gt) TO AAS LIlR 'ENT~V POINT - A SWITC~ ••• ,OVERWRITTfN BY tSVSLO~' START •••• IF ON ~T T~RU ~ons The w~o'e 4~lae • reaide"t ~o"4to~ 8"d SYSLt)O - 4s Matura1'y It e"e time if I ~ECtlce 41 ~~eclred ~y '~o~st. e"te~ed ~odule fl '."ked IS dftleribed fM Sectio" .laumf"Q t~lt the ~od1ffedR~ON6 4s ~a~ed q~I'INII5X, the ~eleva"t LINK-tt co~~."d ~t~i~OI fe~ cID~r-te~e out out C~eeo~m."ded for MOOS use 1110) I~e The ~e~1t~~ '.1~2~1~ *PPI'LPICR~0~lF,RMCN2,RMON3,RM~N5,OF.RWN/8i~ *INR,RlS,TRA,OPN,ClS.DT,PR,FOP,LUK,C~X.FCL *A~O~eX/EcCq> .1 Ih~w~, the .~D~o~rjlte verlfe" a~e "ece.II~Y. -~ IY8t~m.dev~ce d~.ve~ aMd RMI'IN1 "AGE 8·8 8VSLOD ~t'.'f i. ,1.0 dev~ee-d.~e"de"t~ it • • ou~ee 4. t~e~e fo~. eo~dftfo"elfzed ~.oui~e. the .~t~v of a Da~a~ete~ .t •••• ~blv, f.e. DC-0 o~ OK-0 (OF i. a •• u~e~ bv rl.fault). Thu. t~. ".L-ll~ eemM."d .t~4"~ fo~ ~Y~LOD ."d .ub •• ~ue"t p.rem.te~ ."t~v ~iQ~t bel ."d OC.AcCR> ,OEFINE SYSTE~ OEVICE 'DC' AC .ENDcCR> . cC~> ,SIr.NAL END 0' TNPUT ,(SEE SECTION 6~ •• 3) Th. 14"~i"a oi SYSLOD f. It~.~o~tio~wl~dr ~owev.~ .0 t~at e~~or ."~ eOme,.tio" halt. M.V b. fde"tffied by thef~ Idd~ ••• e., ." o~fof" at 3~0~9 i. ~.eOMm."ded. Advis.dly, the ,4"k.d module .hould be outDut to the •• m. oao.~ tace a. the ~ •• jda"t ~o"fto~ Modu'. but't .bove (o~h.~wi.e ~he .uto~etfe Ab.olut. Load.r .tlrt ea""ot b • • ffeetiv •• the oD.~ato~ mu.t halt the eOMputer I"d ,e,tlrt It ~X150e). Thu. t~. LINK-It eomma"d .tr4"Q i.i e.2~2.2 SYSLOD_J!.lae_ Th. dYI,.~odul. thu. Droduc.d 0" PIP.r-tao. ee" b. used dfr.etlv o~ be o~oe •••• d.f"to. nECtac. e~~ •• f.aQ' by ~OOS. I" .ithe~ ea •• the ooeratt"o c~oeedur. t. ful'v detefl.~ f" "G.ttf"o DOS 0" the At~" (DEC-t1-SYDO-~). 0" eo~p'etio", the ~e"4te~ •• boot.d f"to ~emorv •• d •• eribed • .8. 2-,-.2 ~_~_l!LJlD~ft~'-.tr,-",- ••• how" i" 'eetio" 8.2.2.1, the 'oedi"Q of SVSLOO fs c~.· e.ded ~y that of the .Dee4., 4"-eore ~o~4to~ w~4e~ eal', IVSLOO al .00" a. it ~a •• ".t4.'ize~ its.'f. The fu"etfo"1 D.rfo~med bv SYSLOD I~e th." a. follow.: Buffer poi"t~r I"itia'4zat4o" - ~YSL"D oerfo~ms fts ~"eut oi the ~O"ttor ~odule f~1. or~o8red as show" '" t~e o~.viou, •• eti~" •. bY "or~al .DEAD whe~ea. ft. out out w~il. but'di"~ the .ysteM Libra~v uses .T~AN. The 'atte~ f" flet reauir.s two forMS, the Modul.. th •••• lv •• a"d t~e Librarv Y"dew e.e. Ffo· ure t-2), Mor!Ov.r.I" 1/0 i. ~ouble buff.red. ~."ee .f. buffer. f" a" a~~ r.cuf~ed a~d c04"ter. are set leeord4"alv, i" oartieular, t~e fir.t b'oe~ PAGf ee~~aea ~o"ito~ w~itt~" 41 ~lock 0 - let t~ Loader (see Sect40" 8.2.2.4). eo~t84~ I"eut Oete~~~n~t~on - t~8 fi~st SY~LnO ~a't t~e o~e~ator to ,et twe conlole .w.tch~sl ~it 0 - 0 to indicate oaoe~-t.ee, 1 for • first CMONLIR.~YS unde~ us.r [l,t] b. 8 9 t~e a"ows I" in~ut f~om inout fro~ OECtaoe on un4t 0'. eit JS -,0 t~ shew initi.' svste~-dev.ee tialization 41 to bl omitted. in4- T~e inout. ~at.set L.nk-bloe~ (lee Seet40" 3.1.2.1) il adlusted to ref'ect .witc~ 0. CI"S to .INtT a"d .OPENI fo~ fi'e "~O~L!R.SYS" fo"ow and an out cut dat.l~t • • Isociet.d w4t~ the svste~-dey4ce, .1 lim1'a~'v init'alized. If Iwitch IS i. P, t~e ne.t eee~8t40n i. L1b~a ~v-bui'd (aee 6 ~elow). 3. Q4~k Clear - if fhe uaer i. sta~t4"o come'ete'v lerltc h , •••• Switc~ 1~ - 1. SYSLOO mu.t f4~.t deter~."e the cleacitv of avai'able IVltem-davic~ .urfael. On ~K11, this i. ere-determl"ed (aee SeetiO" 4.2.2)~ However I. 'hew" i" Sectio" '.2.1. RF11 and RC11 are treated a. I continuous lu~f.ce, ~eQ.~~le.s of t~e "umblr ohv.ical olatterl '"volved. SVSLOO therefore u.e. the hardware faci,itv w~ich ca". a" ~rror for ~on-e.i.tent ~4.k bv Itte~oti"Q to eddr.ls the be~i~".no of e~ch eotent~al e'atte~. T~e relult'"c information .1 Ito red fo~ 'ater ule (lee next eara~ra~h) Ind ia alao let as a co"tr01 wh(le t~e who'e di.k surface i. cleared. Thi. i • • eeo~~li.h.d bv an .",tial t~anlfe~ at block 0 II ~ent.onerl in (1) io~lowed by that of an e~~tv buffer to eYerv third block CJ,6,11,etc) ue the surfece. T~il 's then re~eated over two ~ore oalse. to c'eer the intermed'ate bloclcl. from of 4. B4t-~ee In'tial'2ation - as ind,eeted in Seet'on the available Ivstem-deviee surface i. eontrol'ed by a" aoeroo~iate "u~ber ~f b't.~.e lea~e~tl end these ere .to~ed at t~e too end. SYSLOD wr.te. out the neceSlary oreamble to each seoment a"d lets bits to 1 a. followsl 4.~.3, e. 0" the f4rst ~ao. the bit. for a" t~e bloekl uo to Hardware Protect L4"e, 41'ust~ated at Fic- ure 4.Q. b. 0" the lalt ~.p, ~o"-exilte"t bloek. a" bits eo~reloo~di"e to ~.reeto~v ~t~uetu~e 8"d SVlt.~ lowi. I. MF~'l - MFDI2, - ~yqlnD p~eo.~e~ t~e ~.sie MFO UFO de.er.b~d 4" Seetfo~ ~.t., a. fol- f" ~lock rnte~leave bft-~ao blocks. II, co~t84~i~g 8 li"1c to Factor ."~ "04"ters to the MFD.2 - 4" t~e ~lock p~ecedi"g the b1t-~8Ds Clea Ffftu~a 4-0', c~"taf~."c UFn T"de. e"tr4es for the ~v.te~ CUler (t,l,' ~4t~ a d1rectorv Itart1"a .t block .2 8"d for. oe"erel u.er [200,208' ~1th "0 eu~r@"t UFD ~o~~ter. e. SVlta~ UFO.! - f~ ~loclc .2, wit~ • '4"k to block .3.1 UFO'2 a"d with onlV o"e file est.b141had - 8 co"tiouoUI o"e, 'MONLI~I, st.rt4"Q at block'4 a"d e"di"c at t~e HArdw.re Protect L1na - ~. library Bu41d - ~YSl~O ewop-ct. to .tart the SVlte~ Librarv I"dex 4" block .~ and t~e firlt ~odule 1" block '11 C."ter~adiate blockl bei"o r •• erved for t~e cer~a".~t ~RT CODY - .ee Sectio" 2.1.2'. The COMO for the ffr.t module i. re.d ."d itl 4~for~. t4o" .1 tr8".fer~ed as recuired 1"to t~e Libr.rv I"~ex buffer (.ee Se~t~o" 5.1 .nd Ffcu~e 1~2'. At t~11 t1~e I~MT Code! fl."ot k"ow" ."d i. filled 1" latar bv Monftor 4"ftfal1z.tfo" Csee Sect10" 2.1.4). The ralt of the ~odule •• co"verted 1"to itl cora i~aoe, due .1low.nce be4nc 04ve" to t~e Pr~ora~ Load Addra.1 ,t the .t.~t_of @,ch text block to a"lur@ the recu1sfte C'PI. After co"ver.10" t~a f~aoe fl wrftte" out to luccelsive .Vltem-davfce blockl u~t11 the ter~f"ll Tra".fer ~lock at t~e a"d of the If"ked .~8~e is sep.". At th41 pof"t, the lalt block fOr t~e ~odule •• out out and the Index buffer i. e~eclced to ver1fv further e"trv Icace. If ,"V, the next module 4. oroces.e~ 4" the 18me W8V, .t.rtf"o fro~ the "ext .v.te~-deyicp. block. Whp." the I~de. block fl full, t~e "ext block 1. li"ked to it (4n t~a first word as f" a "0~~8l lfnked fi'e' a"rl it is writte" out. The next medule fl the~ indexed i" the ~ew bloek a"d .tart. fro~ the follow4nq block, t~u. ~roduc."c the for~at fllu.trated .t FiQu~e 1-2~ '. End of I"cut • if At a"v time t~e ~r4gi"8l inout terminatel, ~YSLOD.h.'ts the eo~oute~ ~fte~ clos4no and re'aa.1"c the 1"~ut dataset. • • • kow" i" "Get- '-~ "O! 0" t J" eA. 1"", t '" e us. ,. t ~ e" e 81"1 f" d. cat e e.eer-t.e. il"lDVt - eVe" efte~ "ECtaDe, i" ol"d.r to ,l"Ite,. mo~ifieltiol"ls 0,. exte",fo", - by •• ~ti"~ 'witch 0 t9 ~ .• "d Dl"e,s4"g. the C~NTr~UE ,w1tch. SVSlon ,..i"1tfllfz.s the i""ut d.tlset fo,. ipR' a"d eroees,4"e ., ,.e.u~ed I' show" u"ne" (6). w~e" SVSlon ~ow.v.,. d.teet' • 1 4" ,witch ~, 4t I'su~.' "0 fUl"thel".i"Dut. The l~st L4b,..,.y T"dex block ., the" w,.ftt.1"I out el"ld the outDut d.te,et i' r.' •••• d. A clll to th. f"t.,."., eo"v of thA Mo"fto,. Loada,. fo110w, - see "~xt sectio", ! f 1"10 fu,.t~er It will be l"Iotad thlt SVSlOD ~oes l"Iot attemot t~ cheek t~e o~ the modul •• i" ~he 4"DUt f1'e. Hel"lc. the us.,. ~u.t ~4~'!Jf 'l"I'u,.. t~.t the fi~'t two ere ~MON ."d TM~N ., ,o.ciff.d f" the i"t,.oduct40" to Sectio" 8.2, Mo,.eove" th.,.. f. "0 ,. •• t,.4etiol"l 0" there b.fl"la O"'V o"e eo~y of e p.,.tfcu'a" mOdul.. T~e,..fore I' stated 4" Sect4o" 2.1 •• , ,.ep1ac.m."t mOdul •• CI" ma,.elv b. addad at the e"d of the 4"put, 'I"I~ th •••. wf" b~ u,ed rether t~," tJ,e 0,.ia11"1.'s du,.4"0 Mo"ftol" t"tt1ll1zltfol"l, The u.er of cou,. •• must t,.ka ca,.. "ot to ao b.Yo"d the IVltlabl. ar •• deff"ed by the Ha,.dw.,., Prot.et L1"e~ At the ."d of 4"put ~8lt, R~ show. t~. ".xt block tQ b. u •• ? - al"ld thu, thfs 4. the ve'ue d4sp1.ved •• "~.t." 1" • v8l1d hIlt. E,.,.or. 4" SVSlon ooe,..t40" .,.e e. d •• er4bed 1" "Gettf"Q DOS 0" the Af,." • .aau."~e .t.d __ 2 '.. ~o~UQ.e..tho. J~ th~ o,.~v.ou, .•• cttOI"l' ft_wI' sJ,OWI"I th.t 'V~L"D sto,..s e Mo"fto,. Lo.d.,. il"l 8loek 0 of the ,vstem-devfee, The ~o~ eo· ot.t"'D ,. •• d. th1. bleck c••• out'."' 4" '.et401"1 6.5.2,2) ."d ,ta,.t • • utomatic.llv .t locetio" p. Th~ fl"l.tta' ,eaue~c. ,Keeuted bY the LOlder t. o"e Wh4ch moves the lectto" pe"fo"m'l"I~ the Mo"fto,. loed 11"1to the memol"V .,.ee ~terti"Q .t 37001, J" orde,. to '.ave a" lowe" cO"e for the module to be e"te"ld. Th. l~.d s.aue"e. fl the" ."tered. Thi, first reeuelt. e di,.ect .hAl"dwI,.e read from. block •• CLib,.e,.y Il"Ide~ *1 - see , •• t ,.ct40"). p,.ovfded thi. t,.I",fe" is let4,fletO,.y, the .t.,.tfl"lo block fo,. the f11"'t module e.t,.lcted f,.om ~he J~d.x (.ee F4our. 1-2), ."d tht, combfl"led with the el"lt,.y fo" .41e ,ts .et fl"lto t~. hl,.dwe,.e Reai.t.,.. fo,. ~ tre"sf.,. of the ~~dule - ••• u~ed ~MnN •• "o~.~ earlie,. - i"to memo,.y .t.,.tfl"le .t locetio"~, If ael.", this is co~pleted without epror, th~ I"de~-.t~red .• ta,.ti"e add,.e., ~ • • et i"to the PC ."d Me"4tor i"itia1 4zltio" co~me"e ••• .1 •• 4l"1dfeated, the 10arle" ~ust d~1ve t~e deviee bee.use "0 MOl"l4tep theor.tieallyexi.t •• He"ce t~e ,.outi"e, lfke SYS- Dose.lhlf" LCD fs d.vfee-d.o.nd.~ti ft ~ust ee~fo~m ~ts ~w~ eo~ve~sions f~o~ ·Sy.te~·bloek" to aetua, device ~10e~ fse. Sections •• 2.1 a~d '.2.2), Ind it rio.s net us. f"te~~uets but deoend. o~ f1Io-t.stino .bot~ to determine eo~Dlet.o" And to ~ecog· "fze .~~o~·d.t.etion. In the 'Itte~ el." the eo~cut.~ .s ha't.~ And the u.e~ ~u.t t~Y the ~o~ito~ Poet af~e.h. By no ~eln. ha. the DOS Montto~.o fl~ dese~i~.d 4" t~f. ml"uI' ~eaehed fts f4n81 .taee. of deyelo~~."t, ~o~eoye~ it .~ •• D.~ted t~lt 'o~e u~e~. w411 wish t~ ~da~~ .it. faef'.,fe, to th.4~ own ,~ee.fic n.ed.. Mon.ter ~ed~f'eetio", •• fndic.ted el~'fe~, t. r.,.ttv.'y St~D" owfng to ft. ~o~ull~ .t~uetu~.. Th. a~~ of th~ ••• ct~~n th.~.io~e f. to ••••• t tho •• ~ •• oon.fb'e for D~odue.nQ the new o~ ~eD'.ee~.nt ~o dul.. ~.ou4red, by .u~~.~izfnQ the.~ ~e~e .ion4f1cent ehe~· .eter4.tie. and bY ."u.t~ltfno .e~e Of the D~.et4ee. found u •• ~u~ . dU~~"Q the D~.~er.t~o~ end check-out of the e~i.t.nQ Monfto~. B••• ce,'y the ~odule. fa" fnto on. of iou~ eat.Qo~te., wh1eh a~. fndfv4dua"y dt.cu •• ed in '.ctton. ~.~.1 to 8.l." b. P~oe~~~ •• ~vfce. c. Dev4ce d~4ve~. d. K~Y"08~d co~~and. Howev.~ it ."'ou'd ao.4" b. noted that beCluse 811 the "'0e.eect40n of the.e in categorY 1, ~ay be .y.~e~-dev.~e o~ co~e·~ •• 4den~, t~.Y ~u.t ob.e~ve the fo',owfno eo~mon ~ul'" du'.,. t. with the DO'ftfon-indeDendence •• e •• entfal. The ileflitfe. of the ~e.fd.nt Mon4tor ~ay be acee ••• d but on'V th~ouoh the fi •• d v.cto~ ,oeation. '0-~6 • ••• Sect40n 2.1. Reo1.t.~. or .taek ~ay be f~ee'y u •• d .nte~nal'y to 8 ~odu'a o~ betwean ~odu'" a. 10no a. they e~e ~e· .tered te the ortotnal Dreo~'~ .tate et eny tf~e e~ ~or whlt.v.~ rea.o~ control •• ~~tu~ned to that oroOra~. PAGE S"1 3 t~cu~e code, i~c'udi~g ffxed Ito~l~e I~eel, il oe~ mfll~b'e o~ly if lome form. ~f D~oteet~o~ eQAf~lt •• fs ectuellv provided, suc~ e. t~e .WAIT ~~ f~eemc'ete r/~ Clee S~ctio~ 2.2.1) or drfver-ou~uf~e Clee S.etfo~ 3.1.2~.) er f. im~lied bv t~e f~DO.it.o~ of lome relt~fet.o~, e.g. ~o~.relide~t ule o~lv. ~e-e~t~I~CV fo~eed It of uSer DrOQrem t.~el e.~e i~ oerticuler preve~ti~e eo~,uDtion of c~elcr.bed dete-bl~ckl, ~,sl~d to t~e Me~itor for eccesl o~ ~torege, u~til I~me reQuested service ~II been letilf1ed. !. m~y ft. be Alsumed ow~ t~et t~e re-entr.~ev - T~e ~8W mOdulel .~ould .11 be p~eo.red fo~ c~eck-eut II delc'i~ed i~ !ect.o~ A.t. AI fer es eos.fble, 4~.t.ll testino .~-eore fs edviled - the follow.nQ seet.o~ • • ~ow how. For the f4~el IteQ,1 wh4ch ~eou1re eceesl from the .vltem.dev4ee, t~. ~.w modulel s~~u'd be edded At t~e e~d of t~e ~4brerY throuah.SVSLOQ CR~ON ~ TMnN e~cePted), ~f ~eed be without de.t~uctio~ of the ot~er conte~t of t~e eVltem-device - lee Sect40~ 8,2. T~ey cen remefn 80 Itored for ~ermel ulege Cun'els MOOS fl uled to updete In eooroorfete IVltem ~ECtaoe) u~til e c~molete monftor re~ufld becomel necel.e~v. 8. J .1 (1) Res i dent MOn it 0 r M~dYL~. Modulel wh4c~ Ire k~own to be alweYI core-rel4dnet ere ~ot, of COU~le, so obl1oed to be cosit~o~-1nd~p~~de"t, since '.nki~a ISlurel correct Iddrell evelulticn, D~ovfded thet env ~eceSllrv alobll referencel are 4nd4cete~, Furthermore t~ev are ra~her ellfer to cheek out. T~.ir rea4dency, howev~r, doe' ~ake re-e~trl~cv a mltter of ~re.ter co~cer~ Ind ff •• ternel eccels to them fl reQuired, the ~ecesa.ry lf~kl~' mUlt be Drovided - oerh8os through the ~v.t~m Vector Teble - lee Section 2.1.3. . There .1 ello the oroblem . of loedi~Q the rel4de~t ~o~ftor, Ifter it hi' been relfnked to fnc'ude t~e ~.w module. For initial c~eck-out, t~41 cen be temporerilv Iccomplilhed ff the li~ked imege 48 on Decer-teoe t~rouQh t~e P,oe~-tece 8Yltem Absolute ~o.de~ Clee OfC-l1-GGPC-O). In t~fl ceae, re'eldf~Q ~y the s.~e mel~1 must follow .~y ce~lole FINtS~ commlnd • aee Section 6.~.2.2. Fer ~orml' oDeratton, .... -- ........ . 1. Bef~r. ~enerel relee!e, uDdet1~Q t~e verlfon ~umbe~ Drfnted .• ~ Mo~fto~ ident4ffca~.o~ after booti~g ••• uaaftlted II I ~eeesiarv orectice to reflect anv ~ev •• fon. 4~t~oduced C"'odu1e ~~ON6). Dose.qNO hOWlv.~~ the ~el.dl~t Mo"4to~ i~aoe 4" the L.b~ary 0" the reolaced by the ~ew ve~lio~ t~~ouo~ SYSLOO. AI "oted i" ~ect.o" 8.2, it ~ust be th@ f4~.t ~o. dule. T~u' US'~I who ~ake DECt8C' t~P. 9Y~L~O f"out ~ust ~~eoa~e a "ew f4'. t~~ouo~ ~ors i" ucdat. ~od~.1 show" i" -G.tt1"o nos 01'1 t~ •• 4~" (l'~ Pa~e~.tace ule~1 Ihould chYlfcelly e •• mf"p. t~~ ff~lt MnNLIA tace to f4~d t~. te~~i~al T~a".fe~ Block fo~ t~e o~f~il'l.' RMON modu'e (Ie. aactto" 5.1) a"d tea~ the taee fmmedi.talv aft ,~, it. . SYSI,..OO ; I the" e.ecu,t ed '" it h t ~e "eW .. el f dl"t Mo"fto~al 4tl fi~.t i"out, the leeo"d ~a'f of thl o~tof~al tacI I"te~ed l'Ie-t a~d the~.aftel" 81 1'I0~~a"v. whf'e t~e l'Iew ve~lfa" is be."o te.ted, OOT.ll~ Clee OEC·lt."O~A.O' cal'l be Uled 4" t~e ulua' ",ay • 'Ylte~.device. ~ust be P~oo~am gew~-,_! .e.3.• 2 AI Ihew~ by E~T' Seetto" 1~3.1. al' o~oo~am le!"vicel 8"~ c8"ed d.t. ~ay be c.lled 0" t~e Itack e"d t~ts ~u.t be_~lmayad blfol"~ the c .. oo~am tl !"ece"ed. The Itaek ~ay .'eo be uled fo~ deta !"etu!"l'I. Fo!" "ew o~ ~eviled mo· du'a~ c~ovtdi"O thele.le~vteell the fel'o"'f~O eof"tl a~e 4" ~e'eva"t ~a~tfeu'a~'y ~ellva"tl , "eW module mUlt be al'oc8ted a" EMT call code, fl'l acco~da"ee wfth the co~v.~t~e"1 ~fve" il'l Seettol'll ,.2 ,"d 2.3 Clca~e l'Otl befl'la al~eedy c~ovfrled', f.el Code 0.27. 110 ReQue.t Codel Ja-37 • ~me!"Qel'lev 'e!"vfee ~eoufl"f"O Cedel A~-77 • Gel'le~el le~v.ee UI."O MSq. ~. Th~1 "e",. module ~u,t al.o comelY eel'lvel'ltfol'l at Secttol'l 1.3.2.1. ",tth the Ca" Itate i • • 1 delc~.bed fo .. t~e~.fe~ of il"om the EMT He"dle .. • lee Seetto" 2~2.1 • ................ ~SA u.aoe "amf"Q co~t~ol 1. T~t~ facf'fty tl ~ot avaflable howeve~ fo~ u.e~. w~o heve DECtece but "0 cece .. ·tace ~eade~ othp.r t~a" thet 0" th~ ASR-33 Teletyee. T~e d~ive~ fo~ th41 alvfel doel "at Der~ft bt"e~v data. Thul e't~oUQh MOOS il elcecf8l'Y wl"ittel'l to oet ,~ou"d th411 LIN~·ll or PIP·l1 ca""ot bl uled to cl"oduce ftl "'~!Isa~v fl'lcut. HO"'lve~, thfl. "lltr4cti~".ee~1t'l ol'l1y to ~odtfieatfO"1 to RMON a"d TM~N' othe~ revflfol'll cal'l be effectee al foot~oted fl'l the "ext I.ctfel'l. DOS8."NCI '. AI Dot."ti., UI'~I Of ~w.o euffe~., th~ rul.1 ~et. i,ed i" S.etio~ 2.3.5 ~ust be obse~vAd. 5. 'o~ tIn '. D~fve~ I.~v.ee.i M'''''Qe~ Seetiof'l b. eell. MU.t be s.coe .",d ~.de th~ough I •• 3.1.2. 41 • If eo"'t~e' i. "'ot ~etu~"ed to th~ u.e~ the File-m."'ageme",t mo~u'ei C.e. "'W ~ulue o~OQ~.m du~i"'a the tre~.fe~, .wAIT .hould be ce'led, D.~heo. wit~ ,.",k-bleek 'imu'atio"" II ule~ if'l the .INtT Drocello~ C'e@ S.ct4of'l 3.2.1.1) o~ th~ouah 8. the o~.y it. eo~ve"tiof'l' - 4.6). ~eet.o"'l '.' Modulel whieh c.",,,,ot .etflfy the~r DUreOle withi'" • I."'al. SweD Buffer f~eme ~.y ~o.lib'y bef'lefit f~om o",e of the ove~l.yf",a t.eh",iou.1 d4.euSled i", .fther the Fi'.-m.",.aem.",t ooe~ltio"1 Csee !eetio'" '.3) or th. k.ybo.~d LI",oulae C,e. Sectio", e.2). How.ve~ the limft.tfo",. f'" both casel s~ould be fIIot.d. • ••• mb'ed a. .how'" i" ~.ct1e'" the ''''.t~., Itagel of cheek-out, it .hould b. If,,,k.d ,flld l0.ded with itl t •• t D~ocreM. B.fe~. t.ltf",c af"'l, ho~.yer, the releva",t ~~T Ilot C.ee S@ctio" 2.1.2' MUlt b. mOdffied to .how the ~odu"" i"'-co~, .tl~t Iddr ••• (AChl.', Stl~t+2 - I.e Sectfen 2.3.0. j.lu",i~g ODT-UR i. lold'd wfth the t.lt orocrlM, a limOle WaY of aecesli",a th._.,o~ ~eau.red •• by m'I"'1 of the !VT el.e Seetio", 2.1.1' I' fol1owl, Th., Me~u', Ihould, ~. .,1.1. _ 'o~ b.- ".0 ODT-UR V002A .ODT '0/11J00'00 SRUN PIPCCR) PIP.U VIii" *MONLIA.SYS/FBeDTIMONLIB.SVS'D'I~ODULE~LOArutc]eCR> *OTIMONLIB.8VS/PRleeC~) *OTIMONLIB.SVS/D!CCR> *DTI/FBeMO~LTB.SV8eCR> PAGF.S-17 Ch.ek4~e the modu'. now that 4tl p~e.e~ce 4~ me~O~V il ephe~.~al i_ of cou~.e 'omewhet mo~e di~ficUlt. The teeh~i QU. mOlt let4lfaeto~y i, to b~eekc04nt t~e telt D~O. JUlt c~40~ to t~e E~T ce" e~d the" t~e S'~ ~eut.~e .t the i~.~~uctio" w~ieh .et~e"~ ce'sel co~t~o' to t~p modu'e whe~ lel~ed 4" the SWle euffe~ Ceu~~ent'v Q~nN2+30~) e.a. the 0~T-11R seau.~ee miaht bei a~em fou~d 301000,lR .0/0001""'0CCR~ "~4/0P06"6CCR~ 6~2/0t'1076~CCR~ 766'2~ 1,XXX,B 2,300,B 1,0,& 80,1,X)(X ,p 81,2,t'l0(113"'0 ,ts ,p 88,2,001.'1462 2,460,3R ~pt2/0(111001ceR~ l,-2/D10t0'!lCCR~ ,S l,yyY,B •••• .~.RK pROGRAM ST.~T ,SVT START - IO~ ~0 ,DOL START - AO~ e ,~OL EN~ • EMT ~TAPT ,9ET RELOCATInN FACTOQ ,~RFA~POINT T~E TEST PRnG. , ..... SAM ,START TME TE~T ,TEST eREAK ,CONTINUE TO ~A~ ~RFA~ ,SINGLE STEP TO ••• , ••• MOCtJLF START ,M.PK MSB. START ,PERHApS CHEC~ ~P.T , ••• AG.INST MOOULE IN M~B , ••• CSEE SECTTO~ '.3.1) ,~REAKpOI~T T~E MOCULE ,... .. CONTI~U~ AOI4" t~e mOdu'e el" ~e tested u"de~ OOT-l1R co"tro,. One of wa~ni"q howeverl e" ~relkDo.ntl within t~. ~odu'e mUlt he removed b,fere 4t retu~nl co"tro' to the test D~O O~lm if the~. il Iny DOI,tbt'ttv thlt e different ~outtne may be brouaht 4nto t~. sWID Buffe~ to ~e~1,c4 4t. wo~d PAGE818 ~~_~~_L_ I!~v! ce_ p_l"_iy_~ I" ~ T~e f~l"~et ,nd ooeI"8tio". e.o~cted of I ~ev4ce-d"4vI" we"e d4Icu •• wd 4" Sect40" 3.3, end this l"ef.l" .. e~ to t~e ~ol"e detef'ed desc"iot40" o1ve" I' Aooen~fx G of th-. Pl"ool"am~el"'. H8"dboo~. O"ce D.. eOel"ed, the ~ew dl"4v~1" C~" b~ 8.!e~~led e"d 14"ked fo" "o"mal u.loe II Ihow" 4" Sect4~" 8.t. A. with D"OQl"lm .. eQuest Module. covel"ed 4~ th-. 11.t lectio", the dl"4vel" thou'd f4 .. 't b. '4"ked 8"d 1olde~ with it. t~lt .. ou~4~e fo .. , 4"-co"e checkout. I" t~41 cI,e the DOL ~u.t ~e ~odif4ed t~ I"eflect 4t. D"e'e"ce C.ee Sect4o" 2.1.3). Fo .. th4., the ule of I" ex414t"Q e"tl"v fol" I dev4ce "ot IctuI11y 4~ the CO"ffgu .. at40" •• I"ecom~e"~ed, e.o. t~~ nOT-1tR acttO" "'foht ~el .ClJ/",UJ."QJCCR> .5i1/i1~06.6ceR> 6661"6l32~ 'X P~ cCR> 616/06329 ~'x PP 10e/0~6e0~r~ LP OV clF> 11i10000~0CIJ X~XXXXceR> ,SVT START - ADD 50 ,DOL START - ADD 2~ ,AD" 10 ,AOn to ,REPLACE ,E~TER COPE ADDRESS The ule" "'u.t eDDl"ool"iltely .et the t"tel"l"uot veetol"s It tht • . t.~e, It"ee .INIT o"'v doel th41 fol" ~I".vel'" bl"ou~ht fl"o~ the L4~l"e,.y elee Sectio" 3.2.1.1). FO" 14"el cheekout when b~OUght fl"o'" the IYlt.",-device, t~e new ~ .. 4v,1" "'IV ,1 110 be edded to the e"d of t"'e L;b .. I"Y by I"te .. f"o ft fro'" OIDel"teDe thl"ough SYSLOO (sea Sect10" ~.2', At the II"'e tt~e, the onL i" RM~Nt ~Ult be uD~lted if ".eel~ II,.y, 4~ "'ueh the la",e WIY a. the MRT, al 4"diclted 4" tha 'lit _sect~~". No mOd~1ieat.o" Of R~ONe how-.Yel" i. ",.ded. OOT-l\R eontl"ol fo!" the check-out 41 a little si~D'el'" the drtve"'. eOl"e 10eltio" el" be I"eldi'y dete .. ",4"ed i~~edi.telY Ifte .. t~e datllet Uli"o it hi. bee" .I~tTEO bv ~.Imi"i"o the IDDI"ODl"ilte DOL .10t. ~ .. 4va .. b"l.k D04"tl ca" of cou" •• "e~Ii" u"ti' the dlta.et ••• RLSEd. ~~ 3 ,,--~ __ ~~Vb~I .._~_C_om~I~~~_ The.imo)e"'e"tetio" of e "ew Key~o ... d Co",,,,_"d. ~e~e"d. UOO" thet.. ~"tended ulaOe. AI Ihow" i" ChaDtel" ~, tf a eo"'ma"d ce" o"'v ~e g4ve" w~e" "0 DI"OGl"lm 11 'oaded, it 41 el"ocel.ed by a I"outi"e eM~edded 1~ the t .. a"s1ent Mo"ito~. 0" t~e other ha"d, if it CI" ee giva".at a"Y t4me, it. " .. ~celli"~ .. eu. tine mu.t ~e 4"col"ool"lted into the Keyboal"~ t"tel"Dl"etel" "'0· dule fo~ IwaDo."~ i" a. I"eauil"ed. I" "eithe .. ea.e .s the D.. oeedu~e 1."'Dl., a. t~e f01'ow4"O De"IQI"~D~1 show. Mon4tol" e.te"'40" i" th.1 Il"e. by the Qe"el"a1 ule" il "ot the .. efo~e Idvflad. w." The i"c l u.io" of "ew eo~ma"d. wh.c~ ee" o"'v be effected whe" TMON he. co"t~ol of the mac h 4"e a~e f~f~'Y If~Dle to D~eDI~e.f"ee they ce" assume al, "o~mal MO".t~~ fae4l4tel I"d ea" u.e the crovisio". of the T~C~ Qe"e~al ~~oc@ •• o~ dlle~4bed t" Sectio" 6.5. Mo~eove~ 4t 4s O"'Y TMON ftself t~lt "eed be .modified • . . H~weye~ eheck-out.s e o~ob'em, ~'"~e.the u.e.of 00T-l1- imo14el 8 loaded, oroor~~ a"d by deff"ttio", this do,s "ot exist~ Va~4ou. teeh"foues we~e the~efore trted durf"o the develoom@"t of t~e eu~~~"t ve~ lio" of TMON - oerha~. t~e simDlest i. to lf~k COT-11R to a TMON module which co"ta4"s HALT a. its fi~.t .",truetio" (1) I"d .to~e the relult4"o If".ed 1maae f" th~ svstem-devfee Ltb~lry I. delc~fbed 4" aectto"s 8.1 e"d 8.2 (2). The H4LT the" allewl the ule~ to r.sta~t the ~aeh1"e u"de~ OOT-llR e~"tr~l.thr~UQh the cO"101 • • wftches (start4"o at OnT-11. 10Id.D04"t + t1~). Cheek-out oeeratfo"s .ay the" c~oeeed as "orma1'~ e.eeat thet a 10 •• of debuQQi"Q co"t~o1 ea" O"'y be reotfi.ed ma"ue"v, f.e~. The cO"101e onT.com~a"d 4s "ot IYlf'able • • "ew SVSLOD w1thout 00T.l1- l4"ked mu.t of cour •• fol,ow .uccessful te'tf"c. lLl. "._~~O t ~,~~ o"'m ~!'~._ . •• "oted t" the f"t~oduct40" to Sectfo" 8.3.4, "ew co","'a"d. whieh CI" be e"tered by the o~erator at a"V time "'Ult be proce •• ed ~.th." the Kevboerd l"teroreter tsee Seetio" 8.2.3). Not o"'v therefore, must theV f" oe"erel obserye the cof"tl If.ted at the start of Sect~o" 8.3~2. sf"ee thev 1'10 effectfvelv ~elu1t i" a" EMT cal" they .hould also comoly wfth the eo"ve"tfo". d •• cussed 4" ~eet40" 6.2.5. Mo~eover, the followf"Q co".fderatio"' a~e 11,0 releYI"tl a. ~odul. K81 mu.t b. modiffed to f"c1ude a"v comDl.telv "ew eo",ma"d 4" tts 1"d@. II 1"dicated ." the com~e"t. 0" the a~o~oor.ete '.stf"o • ....-.-... .. 4. ~.- "ot e.oect.d that T~ON exoa".10" 4s a lfkely ~e· au1~."'."t of a u.e~ who has a~ ~K co"ffnu~atio". The c~o· cts. d.scribed i. almo.t ce~tai"'y 4",oo •• 4ble f" t~ •• amou"t of avai'ab,. me~o~v • 1. It ..... ...-. ~--.- 2. l~ ~~ae~.e., the use of M~DS to.uodate • sVst,,,, OECtace .1 advi.ed. Paper tace ule~. Cdevice 'PP' t~at i.) ea" u.e the eam. teeh"iaue e. that described for q~nN i" Seet4o" 8.3.1. - f~ thil ea •• , the .eeo"d ~odule of the ff~st MnNlIB tao ••• D~VS.C."Y ~eD'.ced. e. e. T~e modu~. it •• lf ~u.t h."d'~ tio"1 - 4t c.""ot ~.e."d ueo" e4'4t4e. (I •• Seet40" 8.2 •• ). 4tl OW" oe.~. ot~.~ Mo"4to~ f.- It follow. f~o~ Cb) t~.t ove~'.v4"o of t~ • • v..1.b1. lZI.wo~d ~S8 •••• cee4.'1y ~~eb8b~e. A.f.~."ce to S.ct40n 8.2.3 ."d t~. 'flt4"Q fo~ • Ifmfl., •• i.tf"o eom~l"d CASSTG~ De~~.c.) 4. It,ono1v ~.eo~m."dp.d, Cnot4no D.~t.cu'.~1y ftl It~UCtu,. for .n.u'inQ ee,~.et IYltem devteeIto,.O. wh.n •••• Mel.d wtt~ t~8 eO~~ect D.~.m. t., tie. • ••• S.ctfo" 8.1) Ch.ck~ut sf t~. n.w COMml"d ••• 110 COMel.x. AI "ete~ f" S.ctton e.z,s, t~. keybol,d Int.~D'.te, Ind 4t • • lloct.t.d Mqdu1.I.cln n.ve, e. co, •• ~ •• td."t' hence t~. comce.tte ,4nk.d-4M.O. MU.t b. built frOM the .tart C.ee Seet40" 8.1) and OOT-ltR co"tro' C," 0"1v b. M,f"taf"ed bl,1eallv throuoh the S4M ."t~v into t~e .odu1. II 111u.trated 4" Seet40n 8.2. Dose,lh,,., EY.~ PAGEB-21 t~41 "or~."v ~eau1~e! ~ .o~e .ffo~t, bec~ule ef t~~ ove~'ay."a .ifected ~o~ the '."Qu8~e. The, f~"owi"Q seoue"ce (.lsu~4"e ODT-l1R ~8S bee" lft8~erl al. ~u""4"~ proarAM 8"d .• b~e.koo."t ~ •• bee" let i" eAM 81 4" the •• ampl. 4~ ~.ct1o" 8,2)1 de~4ct. t~i. 81,2,(110"31'10 ,IJSER ENTERS CTL/C ,'IRST I(BL CALL ,p "~1,2,001!1300 ,I' C81'2,0~0300 , 'C' ECIo40 81 ,cCR>ECHO ,p ,2,0003:~0 ,I' 81,2,20"'0300 ,p ,81'2,0~030'" ,p " . ' ECHO ,USERS ~NTEqS ,~, 81,2,"'003010 ,I' .,P., ... 0131.2,01210300 , '0' ECHO 81,2,00"'3210 ,'O~LOWEO BY eO~~AND ".,(2 8RFA~S.p~R INPUT' ,TERMINAL ECHO ,p B1,2,"'0Q1330 ,IS ,CLF~fCHO ,SINGLE STEP TO ••• •••• GET KSB.START 88,2,150 2,746.3~ '~ARI< IT 446/~e6ccq> ,~RT START - ADO 2*31 550/1!101!1!535 ,CHECK I(Bl ENTRY 554/00112121 ,CHECK KBt ENTRY 3, -2/"'00535 .1' 1 0I 012(111 c C1b 3,)(X)(.B II' ,CONFIRM KBI IN KSB ,CONFIRM rMD PRnCESSOR ,SET 'tRST ~/". , ••• ~ eOt\TtNIJE PAGF 8-22 Now the Inc~oDrilte D~oeel.or i. i" the K~B, d~buoci~Q el" II b.for., Particull~ ear. i. obv1~u.lv ~eeded, "ot to '0 •• co"trol, the eo~~e"t. 0". bre'~Doi~t r.~ovll 4" 8ectio" 8.2 I'. 1~14" r~l.v."t. T,IOD4"Q t~e SAM .~t~v .~to I furth~r overllY el" be 'eft to oeeur "Itu'."v "ee."'. roy, e.Q. co"t4~u. .f ,fJ ,REMOVE ALL RIP AT SAM E~Tqy a,lCIII/J.B '~ESET 8C11,2,~I/JQJl"l ,OVERLAY ,p TN , •• CwEek ,SET NEW 'IRST AlP l, -2/"1/J 12~ecerb , ••• l,YYY.B ,p NOW THOU~H ,.,. , eONTINIJE fa" e 1-1 '7 PQ~'5E.NT NlOl)U,"-,='9 (£lO,.. Co." C:odQ~ , • SQ.SIC 11"\ mON IT'oR po.rQ"~SQ~ rooo;"'o~ ~ - Re.5IdQt)r RNlONlF l>O~-1\ IN (~f:"-,i) / ~moNIC (RC-I!)/RMONIK(~t(.ID RC'f)ON:"1 Qrt)oN3 ~n'lori5 Ca.-oC.K ~wN. (cJ~ ""SJF(t:l.r:-li) / Dc. (RC-'!)/Dt<. (R.t<,"1) RC'Y)o"~ ii!.. Pr,oc.,·po.' r}O ' XR (14\ f=la...o (Ie.) OPN CLS (1(0) ttl> 5",~~,cl'Qc-,'i F','e._ ('I')Qt')Cl3Q IY"le.t")\'" Ro\JhnQ.~:'bP (k.~) Gtf)A (59S) DCN (5,+-) FeR (~~) CS~ (51) A~ (550) FCL. (45) 1...01( (b.(,) t-Sf\ (I.n) C-':::X j)L.N (52,) <'5~) C'f)'IO ("3) ~tr) (3 ....) 4. O~e.r roo(")lro~ Ser"lC::.e..~:GrOt (1.4.1) CvT (u.;l3 c~x (Sb 5. Ke.~boot"c\ C"5N) X IT (;~7) (Iso¢) Serv,ce~ : - KQL... e1>P (~I~ C~'2. I '< e.:L. Be: ~6I· ":1: Kfn:.SR K&.'I.L K&l:.t1IO K8I:."5 t<.~.DU Ttno~ "D(·.."er&~ - ~ ~I""O""" J)FXF>c")( jr>KX K8 ,-p CR p~ ~, ~T pp ("£Lilt) craPTER 9 s YS TEM F I 1 E FORMATS A" ob'e~t Module 4, t~8 fu"d.~e~t., u"1t ef .~out to LINK-ti. Fu~t~.~mo~e, •• e~ ."~ut f41e 'Dee4fi.~ 4" t~e eo~· m."d .t~4~Q ""V CO"tI4" mult1ele obJ.et modul.,. ~.e~ obJect modul. eo"t.i", •• ve~.l ~u"et.o"" ~.~tl~ Two ~eouf~ed ~.,.tl .• ~. t~. al ob.l .v"'b~1 d~ ~eeto~v (GSO) • .,d t,xt b' oeln (TXT). At ' ••• t 0"' ,..'oe.tfo" d4~eeto~v (AlO' fl ".0 ~ •• au4~e~ •. No~m.' lv t~.~ .... e ml"V ~LO" O~'I."t. ~Ie~ ALO .1 ,'loc4,ted lo1.lv w.t~ the t.xt bloek w~4e~ f~med •• t.,v e~ •• ced •• 4t. T~. o~tfo".' fou~t~ el~t C~ot vet 1"'oleme"ted) 4. the ."te~".' Iv",bol d1~eeto~v CI~O'. T~. e"d of tk. obJeet ~odu' • . 1110ee4f1ed bv • b'oek eo~t.4"f~o o~lv t~e le~d.~i.m~dule" eom",."d. R.fe~ to F4QuI'e 9-1. ;.1.1 Mbfeet ;.1.1.1 ~odu'e" G'obe' Co~te~t. Sy~bo' 01~eeto~y T~e GSO ~o'd. el' .dd~lsle. lea~e~e8 to ." and to i~fo~~et10n n~eeISa~y to .,140n eblolute oloba' .ymbO'I, to eauSI t~e ~~oee~ '4b~.~y e~e8te t~~ l0.d modu'e" CO~O. The GSO c~nt.~n. t~~ee ty~el of Qlob.l .y~bo's (in to ot~e~ tyell of 4nfo~m.tion ICle1fied be'ow), section addition 1. ~~og~.m 2. Olfi~1t40n8 fo~ lymbO'1 w~ieh ~IVI been dle'.~ed to ~.me. bl I~t~y Iymbo'l (ent~y Dointl) - qlfl~e"cel , to Iy~bo'l w~1e~ ~.ye bl I;'te~nll (I;'t.~"., ~efe,.ene'l) bee" dee'.~e~ to T~I GSO. ~ust be construeted sue~ t~.t o~ee a e~OO~lm l,e~4~n'. ~.ml ~IS bl.n dle"~ld, .1, t~. l"trY Iymbo' definitions wit~1n that I.etion mUlt bl dle'.rl~. T~e dee'a~ .t10n .~f I rl~l~ene~ to I~ ex,e~"a' Iym~o' ~.y 'Dol.~ .• nyGSD, UDon comoletina I lect10~'. dle'a~at40"I' the next o~og~l~ 'lct4on" nlme mly bl dee'I~.d~ . T~I G~O w4" oenl~.1'y eO~lilt of leVI,.., format tid binl,.y l1n,l. ~IC~ '~ne wi", 8t.~t w~t~ a ~o~ma"~ ~"d1eat~"g t~at 4t il • DIrt of thl GSD. T~I f1,.lt l1n, of t~, GS~ w4', ~.v. t~e mOdul.I'. nam" oecked fn .RA05~ form, immed1.tely ~~l'ow~~o t~e GSO com~lnd. T~e following l1nl. w~" ~IVI t~1 GSO I continuat4on T~e GS~ . ..., eomm.nd .nd . , . . . .of t~e GSO data. . • 1 te~m4nlted by e 14", contl4n4no only t~e G~O tep'minfttion w~e~e i~ t~e . com~."d. Every o~Jeet module mUlt blei" w1t~ I G~O 'i"e wh4e~ eont.1nl .t 'e'lt t~e obJect moduli" naml. T~e rem.1"de~ of t~e GSO. ~owevlr, m.y b • • nyw~e~e i" t~e module. T~e 14nk.,. w4" iQ~o~1 11' no"-GSO ,4n.1 wki'e it ~. g.t~e~1"g t~e GSO. Refe~ to f10ure g-2. il PlG~ T~. G~D 4. t.~M.~eted bv t~. e"d r,SD obJ.et q 3 eO~M."d. T~ •• "t~4 •• t'" t~. GSO .d~.~. to t~. fo"ow4",e eo",va",tfo"l. 1. !v.,v ••• doubl. , o.ek.d .~A~~0 •• D.",.4o", of t~. 'YMbol' • • • _ •• e4f ehe~.et.~ •• The fi,.t wo~dhold. the D'eked ~eePe •• "'t.tfo" of the 'YMbol" ff~.t t~~ •• e~.~.ete~ •• .y~bO' (~.~. ) ~u.t b. D~ ••• "ted w~~d • . Th~. dou~'. wo~d ~'D,.,."t. !v.Py .",tpy ~u.t po •••••• wo~d eo"'t8f",f",o f'.Q 1",· iop~.t~o~. T~. b~t .••• ~o~m."'t. (~"'~fvf~u.' f'.a.' ~u.t eo"fo~~ to the fo"owt",a ID.e4ffeltfo" •• R••• t/S.t ••••• • •••••••• 3 y"'d.f4".~/d.f.".~ e !5 f"'t.~"ll/0lob.' .b.o'ut./~.'oe.t.b'. 0,1,2,4,7 "'ot u.ed 8.15 eod.d oct."v •• fel,ow.i ~.~bJ.et ~odul. "'.~. l'D,~a~'M •• et40", ""M' (.'SfCT o~ .CS!CT •••• mb'.p di~.cttv •• ' 2 •• "t.~"e' .y~bO' t.bl. "'Ime (~ot v.t .MD1.~."'t.d) 3.t~e",.f.~ edd~'I' .e.etfieetic", 41.y~bol d.cl.~.et.o" 5 1 10e.) •• ~t.o", ~.~. . S,v.,.fo", fd.",t4ffe.tfo", ~~t. th.t the hfah o~d., byte of the f'.a. i. u•• d •• • eOM~."'d to 4d."'tifv t~e ty~. o~ e"'t,y. The 'ow o,d., byte fl uI.d to ID.etfy D.~tfcu'e~ Que'ftt •• of the .nt,v • •• !v.,y D'OO'.~ •• ct4o", .• ",d 'oc.' .actio" ."'t,y ~u.t d.el.,. t~e tot., dfM.",.io", (4", byt •• ) of the 1"t.~. "otto",. ~ve~y ~.,ocet.bl. ~, ~"t~y ,y~bol d.f4"it4o" mu.t d.f4~4t.o", ~e'et4v. to t~~ bese of the .tat. its leetton. A" e"t~y .y~bo', of a .eetto" ~u.t fO"ow t~. d•• e'e~.tfo" of t~e lectfon'. "'me. ~ow.v.~, ewte~"el .y~bO' ~.f.~ene •• ~ey eecu~ e~yw~e~e .~ the Gsn. T~ • • tl. of e e.ct40" 4e deft"ed e. follow •• 8. .41. e, Th. eb.olut ••• etfo" ~e. e b, A eo"t~ol '.etfo"" .fl ••• ~". elu. t~e le~Q • •• t ~.'oeeteb'. PC v,'u •••• fO".rl du~f"Q •••• m. bly. of 0. The t~e".f.~ edd~ ••• f • • "acfff.d f" the GSO .0 thet the If"ke~ ee" f"eJude it 1" th, CO~D of the loed module. If"o t~e"'f.r add~... 4. .p.cffi.d 4" the GSO, t~e 'f"k.~ will a •• ume a" add~ ••• of A00001. T~. f4~.t t~e".fe~ .dd~a •• '''ecif4ed wf1l be . weott The •• D.. , •• 40" 0" U., .• E:~O .t.teme"t t • .... o'v.d dow" to a df.,,'acema"t f~om a p~Oa~.m .ect.O" Co~ loc.' 'actto"' "a~e • A, 81 C. • CSECT NAME: 13 o ~OV ~4UMALE, • ,• •.END C SP ,THE ~ELOCATA~L~ TRAN!FER ,'OOA~SS ,IS DEFINED T~ AE THE VALUE OF ,THE RASe 0' CO~T~OL ~ECTrON ,"NAME" PLUS A. The 'f"k~ .. ,,'eces the ff"e'fled ebeolute t~e".f.~ edd~e •• f" the COMO ."d f" the TPA block of the 10.d ~odule. Aefe~ to Ffou,.e 9-3 fo,. ." fl1u.t,.etfo" of the w4thout the 810Ckf"o St~uctu~ •• , GSO Uoo~ .~DUt ~o LINK-tt, t~. text block. ~0~~al1y co~t8i" byte. aftd/o~ wo~d. whtch haye vet to be d.ta~mi"ed. T~et f., oo.itio". ~e~af" with4" the text block wh~.e co"te"tl MU.t be dete~~4~ed bv the D~ec ••• e. Of ~elecat4o~ 8"d 14~k· f"o. The ce"te"t. of ~he.e De.4tio"._.~e total'y ,cec4fied by the ~e'ocatio" df~acto~y which follow. th~ te.t block. If a ta~t b'ock doe. "ot "eed Mod.ffcetfo", t~e~ a~ RLD ".ed ~~t i~tlew~ Thu., ~u't~ole text blOck. may Occu~ co"tf~u· o~,'y ~~ the ~oduJe. UDO~ ~"out to,the. ab.olute 'oede~, the load module" bt~a~v block. co"tef" .olelv ab.olute b4"a~y load data a"d ab.olute 'o~d add~e'I". • , - " . I Each taxt block mu.t beof" wfth t~e object co~ma"d which de. th •• block to be TXT. Thi. COmma"d 4. fo"owed by • we~d Which ,tate. the m.m~~y ~oc.t4o" whe~e t~e if~.t deta byte of thf. te.t block i. to be olaced. Th4a wo~d i. fol,owed b~ the body of the text block. Refe~ te 'iou~e 9-4. cla~e. .AGE qe Rel~cetjo~ df~let~~~I. eo~tlf~ thl ~lc ••• erY ~b'lct eemme~d • • ~d t~14~ ,u~Do~tfvl .,aU~I~t. ~IQu4rld fo~ med4fy4~o clt."Q.,"~/Or 'f~k4~a' thl Dr.cel~f~o tlxt ~loCk. the deff~ft.o~ of t~1 obJlct 11"QUICI, to F4sure 0-8 fo~ I RLD b1oek. Eleh ~LD ~'Y eo~tl;~ lOld I~d/o' text modff4eltfo" mlV "8t. bl followld by text .Iml b1eek (If"I). ~dd,e.. ecmml~d.. .Iet.o~ .odfffeetfo~ Qlfl~ 0.1.2. med.f4e.t4o~ LOld (rI1e- Qefl~ .to l~d'I •• eo.m.~d. eemm.~ds eemme~d. 4" the Eleh ebJeet mOdu'l mu.t hlVI It '11.t O~I ALD w~.eh erleelds t~e. ff,.! TXT bloek. The.1 RLD" ~U.t.ee~tl'~ 'eld Idd'~ •• modff~eltfo~ eom~l"d. w~4eh .tlrt thl ,4"ker It thl DrOOl' p1lel. '.1.1.4 t~te~~I' SYmbO' ~4'eeterY (Not Vlt 4mellml"tedl T~e object ll"Qulal i. t~e .et of 111 eom~l~d~ w~4eh .~df. t~. tYpe of I bloek I"d w~ieh lepel~ i" e" ~Ln to CO"t~ol the li"kf"o ."d ~eloe.tf"Q e~OCIs •• cIte Th. OA"P.~I' .t~uetu~e of III obJeet eOmml"d ••• i t. 2. 3. 1 eo~m."rl ~. I byte oU8"t4ty The .io" bit f"dielte. I byte ope~I"~ Cif .et) Pote"till1y 128 eomml"d. Th. o~Ject 'l"ouloe co"tli"s .eve~el Qe"e~_' tyee. of eom- ",_"d •• TYDe I, ~'oclc I. b. e. d. '.f. e. ~. ,. f• TyDe - Oecll~ltfve eod. COctl' ) comml"d. O.el.". the GSO Oeel.,.. _ TXT bloek O.el.". • RLI) bloek "eel.~e the ISO O.el.,.e the ,"odule." e"d Oeel.,.e GSO t .,.".. "at i 0'" Decl.",. a 1 fb,..,.y Oeel.,.e tt'le lfb,.~,.y df,.eeto"y O.cl.,.. a co ... "b,..",y Oeel.". • eo .. e lfb ..... v ."d 1 3 4 !5 e ~ e"~ 7 HI tt 12 Tv.,e II. T.xt Mooiffeltio", Co~m."~1 T~i. a .. OUD of eomm.."dl ~DDe.,. f~ t~e ~L~ ."0 De,.14"k."O fu",etio". T~.v ooe,..te ueo" speeifie bvte. 0" WOf'lOS f" t~. TXT bloek th.~.fo". ,.eauf .... method fo .. ".f.,.."ci"o Qua"tfti.. 4" the I •• oe •• te~ text bloek. T~u., the •• CO"O bvt. of eleh 01 the fo"ow."O eom"'I"Os ia I byte whfc~ sD.cff4es the dfsDl.ceme~t 1,.0'" the b •• e of the text block to the • "eed text dl~1 byte (0" wO~d)._ The ~Ise of the text bloek fs the loeatio" of the ff,.st byte f" the bloek' thet f., it f. I df.ol.eeme"t f~o," the TXT eOlft'"."d. fO"~ the .. eloe.ti"o ."d/o" ."0 ,..f.,.• PAGE q·R Add t~. cu~~.~t ~~eO~8~ .ectfo~·. b ••• to the .c.effied ee~lt.~t a~d c'aee t~e ~elu't whe~e f"'dieatad. eMf'! (Byte) ~.,.t.v. Ref.~."'e. ee",.t.~t (We,.d) (Bvte) Th •• eeM~."d ~,'ee.t'l a df,..ct ~ef~te~ to f~t.~~.1 ,..'eeat.b'. IV Mbol. a~ ! •• ",c,.i AI 2. MOV *A,II II,. J TM! PELATlvE D'FtNtTtON , 0, APP~A-I AS TH! J CONSTANT IN THE CO~M'N~ Globa' -.'oeatfe" (net.' eed. 2) Pllc. th •. valu. of t~e I~eefff.~ olobal .y~bo' wh .... f",dfeat.d. eMO (Byt.) R.'atfv. R.f.~."e. (Byt., G,eb., 'y~~o' (2 we,.dl, Packed .~'OS0) Thfl eOMMa~d oe".,.at.1 a df,.act •• t.,.~a' Iy",bel. .of~t.,. E.a~~'.i MOV , 'SIU~! , A "A· II GL(,BAL *',10. TME ~AME "1" J ,.,P(ARS iN J THE COMMANO to ~ a~ PAGF.: q-g J. I"te~"el Of.~leeed Re10eetio" (~ctel tode 3' Celeulete the d4Ielac@me"t f~om t~e ~e.it.o~ of the eu~~e"t locat 40" cou"te~ (~1u. 2) to the IDee4fted eblolute edd~el'. ~laee the ~elult whe~e f"dicated. tHO (Bvte) Relettve R@f.~e"ee (Ryte) tO~lte"t (Wo~d) !icamp'e. tLR 1115~0' A 1"~5~ r APPEARS A' r T~E cnN~TANT , IN T~tS CO~~'NO Note that th4. tyoe of ~e'oeatte" oeeu~. o"'y whe" the~e fs a ~efe~e"ee to a" absolute svmbol f~om e ~e'oeeteble 'eet4o". •• Globel Dfspleeed Reloeatfo" (Octe' Code ., Celeulete the d4'Dl.e.~e"t from the ~o •• t.O" of the eur~e"t leed locatio" eeu"te~ (elul 2) to the.",c4fied global. "eee the ~elu't whe"e 4"dfeeted. CHO (Byte) Relatfve Refe~e"ea (Byta) G,ebal Svmbol (2 we~d., "aeked .RA050) I I ~OV 6,10 ASSU~E .," ,THE T~AT fS A GLoa'L NA~E "A· r APPEARS TN r T~E eO~M'Nn 5. G'oba' Additive Reloceti o ", fOct~' Cod@ S) Add the val~e.of the IDecfffed o'oba' Iy~bo' to the IDecified CO"lt8"'t e"d Dlace the ~elult whe~e 1"dfc.ted. eM" C"vte) Re'attve Refe~e"ce (Byte) Gleba' Sy~bo' (2 Wo~d., Pscked .~A"!0) eO"'lt a",t (lIIo~d) MOV 6. Global Additive Code 8) • ASSUME T"'AT • A IS A GL08AL .A+8,10. THf 8 , 'PPE.R~ AS T"'E , eONSTA~T Dile'aced Relecetfo" (Octal Calculate t~e d4lclaeeme"t fpOM the DOl4tfo" of the cu~pe"t 'ecatfo", cou"te~ (plul 2) to the Idd~ell IDecffeid to be the IU~ of the .eeeffted eO"lta"'t e"d the .oectfied global • y~bol a"8 the" pllce the ~ •• ult whe~e 4"dfceted. eM" ("vte) Re'ettve Refe~."e. (Bvte) Glebel Sy~bo' (2 lIIo~d., PIcked ~R'D!I) CO"'lt e",t (!IIopd) E.a~D'ei CLR Exa~D'ei , ASSUME T~AT , A IS , , THE 8 GLO~AL , APPEARS AS , THE CONSTANT ('ORTRAN) COMM~N/LABfL/L,N,MI M., The •• Itet'Me"tl would CIUlPo th8 fo"ew4",~ 4",- .t~uct4e" te be ge".~.tedi LA8EL+~ , LA!EL TS A , GLOBAL ~• -7. Set T~i. Lim4ts (Oeta, Cede 11' P~oe~am eo~mand (gene~.ted by the .LIMIT .s.em- d.~eetive' cluaea two wo~~. i~ the TXT b'oe~ to b. mod4f.e~. T~e fi~at wo~d • • • et bler to low.st ~eloe.ted 8dd~e'~ of t~e D~O •• co~d worn ia set the ~i~he.t adrlr, •• +1. that. is, the f~r.t free 10e.tio~ follow1nc t~e reloc8ted eode. The com~a"d con.ists ef Ju.t one wo~d. t~e te gr.~. T~e ~eloc,ted_ CM'" (!\vte' R.,.tiv. Refe~8~ee (Byte' Not. ~hat beth wo~d. to be ~odif18d ce.r 4" the •• ~e TXT blOck. 8. ~ust aD- .CSECT Text Mod4f4eat1o" Comma"dl Fou~ .CSECT text med1f1e.t4o~ eom~e"d. ~.ve .dded to the a •• emb'er's ~bJeet 'I"CuIQe reDe~to1~e to .ccommOd.te .CSECT ~,'oe.tionl be." "CTAL CO"'1MAND ...••... --.-12 1. 2. 3. •• .CSECT reloc.tion .CSECT d1.c1eeed reloe.tio" 1. .CSECT .dditive ~e'oc.t40" 15 .CS~CT additive d4.D1aeed relecat40" 15 The ~INKER maD. th ••• eom~."d. i"to t •• t ~ed4ficat.~" eomm."d.. How.v.~, if .nd when the LIN~ER i. mod.f4.d to d4.t1nou1sh bet Wee" ,GLOBL .nd ,CSECT ~am •• 4t w.,l b. coa.ibl. (without modif1c.t.en ~o the •••• mbl@r) fO~ the u.e~ to h.ve .CSECT' • • "d .GLOBL" with the .ame ".m •• t~e cu~~e"tly eor~esoondi"c .~LOBL Ty~e tIT, Loeat4o~ Cou"te~ Mod4f4e.t4o" Co~~a"d~ ThA" eo~~~"d. aD~ea~ i" t~e RLO ."~ e~"t~ol t~e .atti"G of tha LINKERt. eu~re"t loeatio" eou"te~, that 11, thay eo"t~ol where the ebsolute loed deta, withf" the "ext text ~leek, ., to be oleced 4"to "'e"'o"Y. The obJaet ",odul8 ~Ult heve et lea.t o"e RLO, cO"tai"i"e t~a ~~ooar 'oeatio" eeu"tar •• tt4"G a"d/o,. "'o~1f4cat40" eo",~a"d., 0"eeed1"Q the f4r.t TXT ~,ocic. The.e eo",~a"d., whtch "'Ult be l.,t 4~ a'" RL~, the lo.d .ddrel. for the ",ext TXT bloCIe ~eed. 1. •• t Loe.tio" eou"ter deft",itio" (Oct.' Cod8 7) Set tha eurra",t loe.t4e", eou",ta" eeual to the 'u'" of the 'Deetf4ed o~oar.M .actto"". b •• e .ddre •• a"d the .oae4f4ed eo".ta"'t~ C~O (Bvte) followed by • "u" Sactto"'. N.",e (2 Wo~d., Packed .RAOel' CO".t a"t ("'o~d) ~yte P~oera~ Th •• eOM",."d 1. oe"e"ated wha"eve~ a .ASECT, .LOCAL, or .CSfCT directive •• uied to i"itfate or eo"t1"ue a D~oa~a'" leet4o". 2. Loeatto" Cou"te~ Mod4ficatfo" (Oetal Code 10) Oeft"e the Cu~~e"t Locetio" Cou"te .. to be the 'u~ of the cu~ra"t o"oo .. a'" .eette"'. b •• e add~e'l a"d the follow4"0 co".ta"t~ CHO (B~ta). fo11owed by a "~l' byte CO".t.",t (wo .. d) f.a",Dle. , t~~ .poe.'" a. t~e co".te"t , The value of t~+t0'0t , aDce.rl •• t~e eO"lte"t. The "~r~.' cutDut of the 'f"ker t • • 'oed ~odu'e w~te~ .ev b. 'e.ded I"d ru". The Ph •• e I 4mcleme"tet4e" wf" e~oduee 'old module. P~ •• e II w4" t"elude the oct.O" Droduei"o • 'o.d~ttme relocltlble module. O"'V , of A 10.d M01U'. co".f.t. of fe~M.tted b."e~y 'f~e, ~o'di"a .b,olut. lo.d .dd~e •• e • • "d object d.t ••• specified fo~ the ~e~er t,pe .y.te~ .b.~lute 10.9~~. Th. f.~.t few wo~dl of d.te w4" be t~. comMu"fCltfo". dfrecto~y (COMn) ."d wil' h.ve a" .e.e'ute 10.d .dd~e •• eeue' te the 'owelt r.'oelted .ddre •• sf the D~oa'IM. The .blolute 'eede~ wi', lo.d the COMO et t~e ,Deeiffed .dd~e •• but the" the D~ear.m wi1l overlay the COMO. The df.k mo"4tor w4" e.D.et the COMn ."d w~" 10~d ~t wh.~e ,h. Mo"ftor w."t. ~t. T~e_.~d oi the .d medu1e wi" be f"die.t.d by I TAA bloek. th.t f., • 1f"e eo"t.4"4", o"'y •. leld 'ddr.... The byte cou~t f" the for· m,tted b1".ry If"e wi" be e 0" t~ •• li" •• 0" .,, other li"e. tbe byte eou"t wfl, be '.~oe~ th." 8. The 'o.d medu'e ,4"e •• the li"ker outeut, h.ve the fO"owf"Q formeti '0- t.t Bytei Low orde .. byte Mod. Ulll ) ~fQh o~der byte .tltU. (IUjl) Actu.' byte COU"t (fro", 1.t thru JI.t byte, "ot f"eludi"a eheck.ulII) Stertf"o .b.elute ,oed .dd ..... of block (1i"e) .t h U,,'u "It byte. T~,~. i. ,1.0 '" Cod. or date to 10ed.d ~. e.t~. byte of eheek.u~. 9.2.1.1 eO~~_Co~t.~~ Th •. C~M~ hold. the follow4nQ .nfo~mlt10n to be ol •• ed to the mo,,4to,,1 1. A" f"d'elt40n of wh.the,. the ~eloeltlbl •• Th. O"OO"I~'. module •• load-t4m. t,.ln.fe,. .dd" •••• Th. low •• t .dd" ••• lc.ded by the p~Ool"lm tnot f~ clud4,,0 Ibsolut. code). U"de,. ~SX, this arld"e •• f. the lowe.t Idd" ••• to be u.ed 10" ST&C~ .pee •• Th, .fze (in byte.) of the DI"O~,..m~ U"de" RSX, ~h~. .fze tnc'ud •• the STACK .pece tJu.t h.low the ~,.~g".m) .nd the ,.e.'-tfme heede~ (Ju.t .bov. the o,.og".m). 5. OoTI. t,.ln.fe,. ~. A ~ •• t Of monito~ "out~"e. "eau.,..d to alo"a with the module (no",. u"d." ~SX) 7. The lOld modu'e e. The ve~s.o" ;dentfffclt1o" .~d" ••• tano"ed unde" RSX, (0 if DDT not t"'c 1ud.d). be lo.d.d ".m •• The co~n aDDel,. ••• b4"I"y d.t. to be 'o.ded It the lowe.t ,.e1oclted Idd,.e.. of the D"Og".~, The Mo"ftol" 'otde,. ••• l'IItn. t"e. COMD, o,.oce •• U I"d c.ll the p~oee" l"out4"e to ,o.d the ol"og"em. wi', T~. , eon.t.t. of po •• fbly •• v."., fo~matt.d bt"II"Y 14ne •• Each ltne hI. I lo.d edd~e •• CfQ"o"ed by the ~o"'ho .. '0.ge~) f~llowed by .~ctfo", ~f .~fo,.m.t.o". !ach .eet4o" begins with a" identifytng wOl"d t"dte.tfl'lg the ty"e ef .eetion Inrl the le"Qth of the •• ctton a. follow.i Low Byt./HfQh Byte CPMO ...•...•.. -....... .-.-.-. '" t ••• !"d of COMO N wo"d. of 0." .... ' ."fol"m.tfon follow •• N l'IIo"ftol" rout."e reau.lts follow (0 ul'lde" ~~X' 1 I ".I 2 I ".I Thu. the eOHD ha. 0"' o~ ~o~ ••• ,t4o". of Qe~.~a' 4~fo~~a. tfo" follow,d by o"e o~ ~o~e .eetio". of ~o"fto~ ~out4"e ~ •• Qu •• t. followed by ••• etio" t.,mf"atf"Q tha eO~D. T~e o~d· .~ of t~. a.".~a' f~fo~Matfo" f., WORD NUMI5ER ••••••••••• I 2 :5 • CONTENTS • ••••••• Low •• t add~ ••• 'eade~ ~V ~~ee~.m. ~~OQ~'M .4!. (4" byt •• , th4. f. the .um ~f t~. 14181 of th~ ~e'oe.t.b' • • ectfo"'l. P~oa~.m t~'"'fe~ .dd~ ••• ODT'. t~I".f.~ add~a.. (0 4f OOT "ot 10adacU 'hablO' u-te t8lold tim. ~.loeatab'e 'oad Module "a"", (2 ",0~d., .• ~4"!UJ) load MOdul. v.~.fo" td."tfffcatio" (2 ~o~d., .R4D~0)._ .Thf, data_fa aCQuf~.d f~OM the v.~.fo" fde"tfff· eatie" of the ff~.t object module 'f"lced. Th. me"4te~ ~outf". ~eQu •• tl a~a i" the fo~~ of wo~d. eO". taf".~a the ~outi"." "umb.~ a • • ~.eff •• d f" the Mo~fto~ ,fe b~a .. v. A~ ftbteet ~odule lib~ary that e ••• ts as a fo~~atterl b."a~y '4"ked f4le is a leQUe"ce object ~odu'e. ereceded by e dfrecto~y of the eo"te"tl. of A l.b~a~y •• e useful file for th~ee realo"l. t. It laYes hayf"a leoe~ate d4~acto~y e~t~1el 1~ a U'O fo~ 14"qle object modu'el. tt e.~ed.tel the l."ki~o D~oeell. It allowl for Ita"dard4Iat40" a"d eo~t~o'led uedat4"a of eom~o"'v used ~out1"e, e.o. Fe~tra" eo •• "e "out."e. The f4"lt data byte of the i.rlt If"e of I" Object mOdu1e "brl~y ~o~tli"1 the code 7 to i"dfeate the begi""4"Q of a Hbrl~y fne. Th41 'f"e •• followed by • '4"e. of d4recto~v term1"ated bv the e~d d4rectorv 1f"e Ccode tl,. t"formlt40" Now aDDel" the obJeet module. f" the .ame o~der as the." e"triel 4" the dfrectory. ~efe~ to fi~urel g·e a~d 9-7. 9.3.1 nt~eeto~y -. Co"te"t. -----~. The d.~ectory eo"t.i"~ o"e ,"trY De,obJeet Moeule f" the .eMe ~Alat4ye ~OltttO" •• it •••• oet.ted obJeet Modu'e. A" e"t~v ts eSle"t1,1ly th@ obleet.mQdule. ;SO (~efe~ to f.Qu~e. 9.2 ."d 9-3) w1t~ two .ddttio".' ~eaU1~eMe"t. to .llow fO~ oet4Mum .e.~c~f"o of the dt~eeto~vl t• The GSO a. D~odueed by t~e ••• emble, 1. ~e-o~de~ed 10 that .11 exte'"I' .;LORL'. IDDe.~ after al' the ~;LO!L e"try Dot"t., th.t f.. III the •• te,"el .GLOBL'. wh.c~ ,oDe., with the Ablolute ~~OO'IM 'ectio" N,M' .~e Moy.d to JUSt befo,e the e"d SSD deel.,.tfo" f" the ;90. Li"es maY eo"tlf" UD to 93 d'e.~.' date wo~d.. If ,".obJeot Module hI •. "0 "am.d .CSECTi. o~ .LOCAL' •• thf. buffe' wil' Il'ow fo, 20 d.efM.' ."try Dof"t. (8~ wo~d.) I"d 13 word. io~ GSD d.c'.rltfo" Object module "Ime Ablolute Prog~l~ Sectio" Nlme U"".med Relocatlb'e P~oOrlm Sec~fo" NaMe i" (1) (4) (4) (4) t~e fi,st '."e. A" ~biect mOdule i" I" obteet modulI l~brlry ~I 4de"tfcel to fts Ita"d .Ilo"e ye~lfo" (reie~ to .ect1o".9~1' e.ceot t~lt the ;SD is ~educed to ft. f4r.t ."d , •• t '1"e'. Refe, to f.ou~e 9-2. Th. f4rst If". eo"t.4". the ".m~ ef the object module. fo~.y.r1f1e.t.o" w4th its d4recto~v e"try a"d the , •• t "~"I f"dfc.t.1 the e"d of the GSD. , , .~~ L~"d~_o~ule ~J.b .. ~~~~o .. ",-.!_(I'I~~ Yet 4",01@"'e"ted) A. load ~odul. ltb~a~y, t~at e.tltl al a fO~"'8tted bi"a~y 'i",ked fil., i. a .eaue",ce of lead "'odulee D~eceded by 8 rli~ecto~y 01 t~e eo"te"t •• The f.r~t d,t. byte oi the ft~.t l~"e oi ,'oed ",odule library eo",te4",. the eode 13 (oeta" to t",dteate the beatl'll'lil'lO of • 'oed ",edule l1b~ary file. Thie 11"e 41 followed by • ,t"e. of di~eeto .. y te .. ",1".ted by the ,l'Id di~eeto .. y 11"e (eode t4,. .",fO""'8ttol'l Now aDDea .. the load ",edul •• t", the ""'e o .. de .. a, t~.1 . . . "t ..... i" the d1reeto .. v. ~efer to fiau~ •• v-a al'ld 9.9. The djr.etory.co"'ta~"'1 ~"'e e",t~Y oe .. load ",odu'e tl'l the •• me rel.tive Do.ft1o", •• tt •••• oei.t.d 'o.d IIIodu'e. A", .",t .. y 41 the f1 ... t '1"e of the 'oad module Crefe, to f1ou ... 5-1) wh4eh 4. the f .... t 14"e of ft. Com",ul'lieetfol'll Dfp.etopy CCOMD'. A 10.d ""odule fl'l • '1b ... pv •• fde"tfe,' to -UI verete", Crefer to f.au~. 5-1). .tal'ld alo"" G-SO RLD TXT RLD TXT RL1> • •• T~T MOl)ULE eN» Text SIoeY I ~ G-SJ) I~) Ot.l~t Mod" Ie.. f(at« (a wot'cls _. FolrClMlcd ~1 a -."., I. q w.w-" S .. -... ) oRADS_) - ~ FLA&S ,) r) DATA Olljcc.+ Co....""-a..cl """e,. t", 8~tc. (GSD=.) b1~e. 1sT 5"!'tIt"0 I i" 'bT.. ·TITLE ~a,I~t" cll«di,,~ ~cou,,;tc"e4 0 • • PitTA I "SI> M01'c, cleeht('at.ot1S sect,• ., .,iM1esJ ~ \o\,a' v.a.. e s ) ttc.. DATA bi.,c.s 3 t-. N-I o~ -sou•.., "'''e 10C',.,aT o-f 6f (7SJ) £;VlC, a.. .... "wrAD,." ,., ~ eJ:w rp Pa, c. 'i..22o~'t Modll/~ ~...,t. "'' c. 1.11" 11..... 01 i", tAr. last. ~c:a".,'t.1'tcl .,. +I,t. def.~ tt ~1"" 1.0. ·MAr"'· j ·'T%T&.. 8i"... .Jet....-t ;~t,'fic.t.·." ;,6= """-fiR .=MiJtc"o-U ~CflIO"'; ific.ri;o,,", • +1.«. 'sT 61"""" ;" -He. last '%DSNT em-ou ..1it.cI - '&,,17 ,', •...,itf~ :.f... -%DEAlT Aa".I,,'t.. P~, ..... Sec.+,." N,.,...t... ( ..... ASS.) s.d,..... " ; Objec.+ Co""rt)a .. Js &. ,47cl1P1et,ts 8o,1 ~ +~e.. J Objec.'t CO",",'a ... ds -- • • • EvtA. D;tecTo~ ~--~- fi~s+ Ob~t Mod\)le .... ~~--~"'~- S~cl Obje~ MoAul~ E.... tt'''' I , _________ an, • ••• --------------.. T>;t'~ctat"! &T~"~s ~ +J.ru Ii-I 1----------- ----.-. ObJtc1" f1od",J~s -f/'ru " , eac" ",t,)' Mat COftI;~t-o~ .?' .,,~ Mar c..."'nt11l1 cf(c,,,,.1 cli1a fAlot'~~ up • 10 ,;~C ~ '3 -- ge1;~, - LitJt'art E~ttl I, ' Ettt"1 ~ • •• • E~t~l W fred Dit'~e-to"l .fits"Load MecI"I .. SccOt\~ Load Mo~"I... ~ •, • N+~ load Mo~le. I 1/ (a,e L;ne. I I ,3 czsl ii'ltc 2 Erttry , Lif&t 3 E.,.t,.y li.,... N+, [ E"try i.t t#f.zl _I I{ 8ca;~ lOlA I'1oAule Li"ra7 il i'4c. 'st I.~t.. .f ;t.. 'Dad WItOJ,,1e. • O;rft-to.-,'" a., e..Try 2. ··· I -/ r;..%y (COMD) ] I¥I E."l Load /'1aJ.J I~ Dit"fttorI Line tlt3 +~t" 1'ISt Ii.... ~ht1" Load lncl Modules I l1.cUe. ""h. ~ " --/ HOW TO OBTAIN SOFTWARE INFORMATION Announcements for new and revised software, as well as programming notes, software problems, and documentation corrections are published by Software Information Service in the following newsletters. Digital Software News for the PDP-8 & PDP-12 Digital Software News for the PDP-II Digital Software News for the PDP-9/15 Family These newsletters contain information applicable to software available from Digital's Program library, Articles in Digital Software News update the cumulative Software Performance Summary which is contained in each basic kit of system software for new computers. To assure that the monthly Digital Software News is sent to the appropriate software contact at your installation, please check with the Software Specialist or Sales Engineer at your nearest Digital office. Questions or problems concerning Digital's Software should be reported to the Software Specialist. In cases where no Software Specialist is available, please send a Software Performance Report form with details of the problem to: Software Information Service Digital Equipment Corporation 146 Main Street, Bldg. 3-5 Maynard, Massachusetts 01754 These forms which are provided in the software kit should be fully filled out and accompanied by teletype output as well as listings or tapes of the user program to facilitate a complete investigation. An answer will be sent to the individual and appropriate topics of general interest will be printed in the newsletter. Orders for new and revised software and manuals, additional Software Performance Report forms, and software price lists should be directed to the nearest Digital Field office or representative. U.S.A. customers may order directly from the Prc:ornm library in Maynard. When ordering, include the code number and a brief description of the software requested. Digital Equipment Computer Users Society (DECUS) maintains a user library and publishes a catalog of programs as well as the DECUSCOPE magazine for its members and non-members who request it. For further information please write to: DECUS Digital Equipment Corporation 146 Ma in Street, Bldg. 3-5 Maynard, Massachusetts 01754 PDP-II Disk Operating System Munitor System Programmer's Manual DEC-Il-OSPf1A-A-D I"lay REAOER'S 1972 COMMENTS Digital Equipment Corporation maintains a cantinuous effort to improve the quality and usefulness of its publications. To do this effectively we need user feedback -- your critical evaluation of this manual. Please comment on this manual's completeness, accuracy. organization, usability and readability. Did you find errors in this manual? If so, specify by page. How can this manllal be improved? - ------------------------------------~--------------~ . . ~. Other comments? Please state your position. --------- Name: ------- Date: _ _---... Organization: ----------~------------------ Street: ----------------------~-------- --------Department: -------- City: ___________~__ State: _ _ _ _ _ _ _~___ Zip or Country__~.__ .__ ._ digital equipment corporation '. . . ' .' . " '. . . .j'
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c041 52.342996, 2008/05/07-21:37:19 Create Date : 2017:06:07 11:35:31-08:00 Modify Date : 2017:06:07 12:22:55-07:00 Metadata Date : 2017:06:07 12:22:55-07:00 Producer : Adobe Acrobat 9.0 Paper Capture Plug-in Format : application/pdf Document ID : uuid:beb8c4f6-15a9-2d47-8d7d-1d7672c52526 Instance ID : uuid:cae83167-89ae-d947-a754-1247d3faee19 Page Layout : SinglePage Page Mode : UseOutlines Page Count : 422EXIF Metadata provided by EXIF.tools