Manx – a catalogue of online computer manuals
PDP-11 Paper Tape Software Handbook
Company: | Digital Equipment Corporation |
Part: | DEC-11-XPTSA-B-D |
Date: | 1976-04 |
Keywords: | |
Supersedes: | |
Table of Contents
- Chapter 1 PAL-11S Assembly Language and Assembler
- 1.1 Character Set
- 1.2 Statements
- 1.2.1 Label
- 1.2.2 Operator
- 1.2.3 Operand
- 1.2.4 Comments
- 1.2.5 Format Control
- 1.3 Symbols
- 1.3.1 Permanent Symbols
- 1.3.2 User-Defined Symbols
- 1.3.3 Direct Assignment
- 1.3.4 Register Symbols
- 1.4 Expressions
- 1.4.1 Numbers
- 1.4.2 Arithmetic and Logical Operators
- 1.4.3 ASCII Conversion
- 1.4.4 Mode of Expressions
- 1.5 Assembly Location Counter
- 1.6 Relocation and Linking
- 1.7 Addressing
- 1.7.1 Register Mode
- 1.7.2 Deferred Register Mode
- 1.7.3 Autoincrement Mode
- 1.7.4 Deferred Autoincrement Mode
- 1.7.5 Autodecrement Mode
- 1.7.6 Deferred Autodecrement Mode
- 1.7.7 Index Mode
- 1.7.8 Deferred Index Mode
- 1.7.9 Immediate Mode and Deferred Immediate (Absolute) Mode
- 1.7.10 Relative and Deferred Relative Modes
- 1.7.11 Table of Mode Forms and Codes (6-bit (A) format only)
- 1.7.12 Instruction Forms
- 1.8 Assembler Directives
- 1.8.1 .TITLE
- 1.8.2 .GLOBL
- 1.8.3 Program Section Directives (.ASECT and .CSECT)
- 1.8.4 .EOT
- 1.8.5 .EVEN
- 1.8.6 .END
- 1.8.7 .WORD
- 1.8.8 .BYTE
- 1.8.9 .ASCII
- 1.8.10 .RAD50
- 1.8.11 .LIMIT
- 1.8.12 Conditional Assembly Directives
- 1.9 Operating Procedures
- 1.9.1 Introduction
- 1.9.2 Loading PAL-11S
- 1.9.3 Initial Dialogue
- 1.9.4 Assembly Dialogue
- 1.9.5 Assembly Listing
- 1.9.6 Object Module Output
- 1.9.6.1 Global Symbol Directory
- 1.9.6.2 Text Block
- 1.9.6.3 Relocation Directory
- 1.10 Error Codes
- 1.11 Software Error Halts
- Chapter 2 Writing PAL-11A Assembly Language Programs
- 2.1 Character Set
- 2.2 Statements
- 2.2.1 Label
- 2.2.2 Operator
- 2.2.3 Operand
- 2.2.4 Comments
- 2.2.5 Format Control
- 2.3 Symbols
- 2.3.1 Permanent Symbols
- 2.3.2 User-Defined Symbols
- 2.3.3 Direct Assignment
- 2.3.4 Register Symbols
- 2.4 Expressions
- 2.4.1 Numbers
- 2.4.2 Arithmetic and Logical Operators
- 2.4.3 ASCII Conversion
- 2.5 Assembly Location Counter
- 2.6 Addressing
- 2.6.1 Register Mode
- 2.6.2 Deferred Register Mode
- 2.6.3 Autoincrement Mode
- 2.6.4 Deferred Autoincrement Mode
- 2.6.5 Autodecrement Mode
- 2.6.6 Deferred Autodecrement Mode
- 2.6.7 Index Mode
- 2.6.8 Deferred Index Mode
- 2.6.9 Immediate Mode and Deferred Immediate (Absolute) Mode
- 2.6.10 Relative and Deferred Relative Modes
- 2.6.11 Table of Mode Forms and Codes (6-bit (A) format only)
- 2.7 Instruction Forms
- 2.8 Assembler Directives
- 2.8.1 .EOT
- 2.8.2 .EVEN
- 2.8.3 .END
- 2.8.4 .WORD
- 2.8.5 .BYTE
- 2.8.6 .ASCII
- 2.9 Operating Procedures
- 2.9.1 Introduction
- 2.9.2 Loading PAL-11A
- 2.9.3 Initial Dialogue
- 2.9.4 Assembly Dialogue
- 2.9.5 Assembly Listing
- 2.10 Error Codes
- 2.11 Software Error Halts
- Chapter 3 LINK-11S Linker
- 3.1 Introduction
- 3.1.1 General Description
- 3.1.2 Absolute and Relocatable Program Sections
- 3.1.3 Global Symbols
- 3.2 Input and Output
- 3.2.1 Object Module
- 3.2.2 Load Modules
- 3.2.3 Load Map
- 3.3 Operating Procedures
- 3.3.1 Loading and Command String
- 3.3.1.1 Operational Cautions
- 3.3.2 Error Procedures and Messages
- 3.3.2.1 Restarting
- 3.3.2.2 Non-Fatal Errors
- 3.3.2.3 Fatal Errors
- 3.3.2.4 Error HALTs
- Chapter 4 Editing the Source Program
- 4.1 Command Mode and Text Mode
- 4.2 Command Delimiters
- 4.2.1 Arguments
- 4.2.2 The Character Location Pointer (Dot)
- 4.2.3 Mark
- 4.2.4 Line-Oriented Command Properties
- 4.2.5 The Page Buffer
- 4.3 Commands
- 4.3.1 Input and Output Commands
- 4.3.1.1 Open
- 4.3.1.2 Read
- 4.3.1.3 List and Punch
- 4.3.1.4 Next
- 4.3.1.5 Form Feed and Trailer
- 4.3.1.6 Procedure with Low-Speed Punch
- 4.3.2 Commands to Move Dot and Mark
- 4.3.2.1 Beginning and End
- 4.3.2.2 Jump and Advance
- 4.3.2.3 Mark
- 4.3.3 Search Commands
- 4.3.3.1 Get
- 4.3.3.2 wHole
- 4.3.4 Commands to Modify the Text
- 4.3.4.1 Insert
- 4.3.4.2 Delete and Kill
- 4.3.4.3 Change and Exchange
- 4.4 Operating Procedures
- 4.4.1 Error Corrections
- 4.4.2 Starting
- 4.4.3 Restarting
- 4.4.4 Creating a Paper Tape
- 4.4.5 Editing Example
- 4.5 Software Error Halts
- Chapter 5 Debugging Object Programs On-Line
- 5.1 Introduction
- 5.1.1 ODT-11 and ODT-11X
- 5.1.2 ODT's Command Syntax
- 5.2 Commands and Functions
- 5.2.1 Opening, Changing, and Closing Locations
- 5.2.1.1 The Slash (/)
- 5.2.1.2 The LINE FEED Key
- 5.2.1.3 The Up-Arrow (↑)
- 5.2.1.4 The Back-Arrow (←)
- 5.2.1.5 Accessing General Registers 0--7
- 5.2.1.6 Accessing Internal Registers
- 5.2.2 Breakpoints
- 5.2.2.1 Setting the Breakpoints (n;B)
- 5.2.2.2 Locating the Breakpoints ($B)
- 5.2.3 Running the Program (n;G and n;P)
- 5.2.4 Searches
- 5.2.4.1 Word Search (n;W)
- 5.2.4.2 Effective Address Search (n;E)
- 5.2.5 Calculating Offsets (n;O)
- 5.2.6 ODT's Priority Level ($P)
- 5.3 ODT-11X
- 5.3.1 Opening, Changing and Closing Locations
- 5.3.1.1 Open the Addressed Location (@)
- 5.3.1.2 Relative Branch Offset (>)
- 5.3.1.3 Return to Previous Sequence (<)
- 5.3.2 Calculating Offsets (n;O)
- 5.3.3 Breakpoints
- 5.3.4 Single-Instruction Mode
- 5.4 Error Detection
- 5.5 Programming Considerations
- 5.5.1 Functional Organization
- 5.5.2 Breakpoints
- 5.5.3 Search
- 5.5.4 Teletype Interrupt
- 5.6 Operating Procedures
- 5.6.1 Linking Procedures (LSI-11 Systems Only)
- 5.6.2 Loading Procedures (non-LSI-11 Systems Only)
- 5.6.3 Starting and Restarting
- Chapter 6 Loading and Dumping Memory
- 6.1 Paper Tape Procedures
- 6.1.1 BM792-YA Paper Tape Bootstrap ROM
- 6.1.2 BM873-YA Bootstrap Loader ROM
- 6.1.3 LSI-11 Firmware Paper Tape Bootstrap
- 6.1.4 M9301-YB Bootstrap Loader
- 6.1.5 M9301-YA Bootstrap Loader
- 6.1.6 Other Bootstrap Loaders
- 6.1.6.1 Loading the Loader into Core
- 6.1.6.2 Loading Bootstrap Tapes
- 6.1.6.3 Bootstrap Loader Operation
- 6.2 The Absolute Loader
- 6.2.1 Loading the Loader into Core
- 6.2.2 Using the Absolute Loader
- 6.2.3 Absolute Loader Operation
- 6.3 Core Memory Dumps
- 6.3.1 Operating Procedures
- 6.3.1.1 Using DUMPAB on Systems without Switch Registers
- 6.3.1.2 Using DUMPAB and DUMPTT on Systems with Switch Registers
- 6.3.2 Output Formats
- 6.3.3 Storage Maps
- Chapter 7 Input/Output Programming
- 7.1 Introduction
- 7.1.1 Using IOX with the LSI-11 Processor
- 7.1.2 Using IOX with Unibus PDP-11 Processors
- 7.1.3 IOX Interrupt and Trap Vectors
- 7.2 The Device Assignment Table
- 7.2.1 Reset
- 7.2.2 Initialization
- 7.3 Buffer Arrangement in Data Transfer Commands
- 7.3.1 Buffer Size
- 7.3.2 Mode Byte
- 7.3.3 Status Byte
- 7.3.3.1 Non-Fatal Error Codes (Octal)
- 7.3.3.2 Done Bit
- 7.3.3.3 End-Of-Medium Bit
- 7.3.3.4 End-Of-File Bit
- 7.3.4 Byte Count
- 7.4 Modes
- 7.4.1 Formatted ASCII
- 7.4.2 Unformatted ASCII
- 7.4.3 Formatted Binary
- 7.4.4 Unformatted Binary
- 7.5 Data Transfers
- 7.5.1 Read
- 7.5.2 Write
- 7.5.3 Device Conflicts In Data Transfer Commands
- 7.5.4 Waitr (Wait, Return)
- 7.5.5 Waitr vs. Testing the Buffer Done Bit
- 7.5.6 Single Buffer Transfer on One Device
- 7.5.7 Double Buffering
- 7.5.8 Readr (Real-time Read)
- 7.5.9 Writr (Real-time Write)
- 7.6 Reenabling the Reader and Restarting
- 7.7 Fatal Errors
- 7.8 Example of Program Using IOX
- 7.9 IOX Internal Information
- 7.9.1 Conflict Byte/Word
- 7.9.2 Device Interrupt Table (DIT)
- 7.9.3 Device Status Table (DST)
- 7.9.4 Teletype Hardware Tab Facility
- 7.9.5 Adding Devices to IOX
- 7.9.5.1 Device Codes
- 7.9.5.2 Table Modification
- 7.9.5.3 Interrupt Routines
- Chapter 8 Floating Point Math Package Overview
- Chapter 9 Programming Techniques
- 9.1 Writing Position Independent Code
- 9.1.1 Position Independent Modes
- 9.1.2 Absolute Modes
- 9.1.3 Writing Automatic PIC
- 9.1.4 Writing Non-Automatic PIC
- 9.1.4.1 Setting Up the Stack Pointer
- 9.1.4.2 Setting Up a Trap or Interrupt Vector
- 9.1.4.3 Relocating Pointers
- 9.2 Loading Unused Trap Vectors
- 9.3 Coding Techniques
- 9.3.1 Altering Register Contents
- 9.3.2 Subroutines
- Appendix A ASCII Character Set
- Appendix B PAL-11S Assembly Language and Assembler
- B.1 Terminators
- B.2 Address Mode Syntax
- B.3 Instructions
- B.3.1 Double Operand Instructions
- B.3.2 Single Operand Instructions
- B.3.3 Rotate/Shift
- B.3.4 Operation Instructions
- B.3.5 Branch Instructions
- B.3.6 Subroutine Call
- B.3.7 Subroutine Return
- B.3.8 Extensions for the LSI-11 Version of PAL-11S
- B.4 Assembler Directives
- B.5 Error Codes
- B.6 Initial Operating Procedures
- Appendix C PAL-11A Assembly Language and Assembler
- C.1 Special Characters
- C.2 Address Mode Syntax
- C.3 Instructions
- C.3.1 Double-Operand Instructions
- C.3.2 Single-Operand Instructions
- C.3.3 Rotate/Shift Instructions
- C.3.4 Operate Instructions
- C.3.5 Trap Instructions
- C.3.6 Branch Instructions
- C.3.7 Subroutine Call
- C.3.8 Subroutine Return
- C.4 Assembler Directives
- C.5 Error Codes
- C.6 Initial Operating Procedures
- Appendix D Text Editor, ED-11
- D.1 Input/Output Commands
- D.2 Pointer-Positioning Commands
- D.3 Search Commands
- D.4 Commands to Modify the Text
- D.5 Symbols
- D.6 Grouping of Commands
- D.7 Operating Procedures
- D.7.1 Loading
- D.7.2 Storage Requirements
- D.7.3 Starting
- D.7.4 Initial Dialogue
- D.7.5 Restarting
- Appendix E Debugging Object Programs On-Line, ODT-11 and ODT-11X
- Appendix F Loading and Dumping Core Memory
- F.1 The Bootstrap Loader
- F.1.1 Loading the Bootstrap Loader
- F.2 The Absolute Loader
- F.3 Core Memory Dumps
- Appendix G Input/Output Programming, IOX
- G.1 Instruction Summary
- G.2 Program Flow Summary
- G.3 Fatal Errors
- Appendix H Summary of Floating Point Math Package, FPMP-11
- H.1 OTS Routines
- H.2 Non-OTS Routines
- H.3 Routines Accessed Via Trap Handler
- Appendix I Tape Duplication
- Appendix J Assembly and Linking Instructions
- J.1 Systems Without Switch Registers
- J.1.1 IOX/IOXLPT
- J.1.1.1 Assembling IOX
- J.1.1.2 Assembling IOXLPT
- J.1.1.3 Linking IOX and IOXLPT
- J.1.2 ODT11X
- J.1.2.1 Assembling ODT11X
- J.1.2.2 Linking ODT11X
- J.1.3 ED-11
- J.1.3.1 Assembling ED-11
- J.1.3.2 Linking ED-11
- J.1.4 PAL-11S
- J.1.4.1 Assembling PAL-11S
- J.1.4.2 Linking PAL-11S
- J.1.5 LINK-11S
- J.1.5.1 Assembling LINK-11S
- J.1.5.2 Linking LINK-11S
- J.2 Systems With Switch Registers
- J.2.1 Assembling PAL-11A
- J.2.2 Assembling ED-11
- J.2.3 ODT-11/ODT-11X
- J.2.4 Assembling IOX/IOXLPT
- J.2.5 Assembling and Linking PAL-11S
- J.2.6 Assembling and Linking LINK-11S
- Appendix K Standard PDP-11 Abbreviations
- Appendix L Conversion Tables
- L.1 Octal-Decimal Integer Conversions
- L.2 Powers of Two
- L.3 Scales of Notation
- L.3.1 2^x in Decimal
- L.3.2 10^±n in Octal
- L.3.3 n Log 2 and 10 In Decimal
- L.3.4 Addition and Multiplication, Binary and Octal
- L.3.5 Mathematical Constants In Octal
- Appendix M Note to Users of Serial LA30 and 600, 1200, and 2400 Baud VT05s
- Appendix N Using the Absolute Loader on PDP-11s Without Switch Registers
- N.1 LSI-11
- N.2 M9301-YB Bootstrap Loader
- N.3 M9301-YA Bootstrap Loader