The Programmer’s Pc Sourcebook: Reference Tables For Ibm PCs And Compatibles, Ps/2 Systems, Eisa Based Systems, Ms Dos Operating System Through Version 5, Microsoft Windows Through Version 3 [Second Edition] 155615321X, 9781556153211

A computer-side reference for MS-DOS and Windows programmers. This second edition is updated and expanded to cover recen

737 61 30MB

English Pages 0 [807] Year 1991

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

The Programmer’s Pc Sourcebook: Reference Tables For Ibm PCs And Compatibles, Ps/2 Systems, Eisa Based Systems, Ms Dos Operating System Through Version 5, Microsoft Windows Through Version 3 [Second Edition]
 155615321X, 9781556153211

Citation preview

- - THE

PROGRAMMER'S

IBM®PCs and Compatible~ PS/l®Systems EISA-based Systems MS-DOS®Operating System Through Version 3 Microsoft WindowsT• Through Version 3

Hundreds of New Charts and Tables! Thom Hogan

--THE--

PROGRAMMER'S

SOURCEBOOK

--THE

PROGRAMMER'S

SOURCEBOOK Reference Tables for IBM® PCs and Compatibles PSI.!® Systems EISA-based Systems MS-DOS® Operating System Through Version 5 Microsoft Windows"' Through Version 3

Hundreds of New Charts and Tables! Thom Hogan

SECOND EDITION

PUBLISHED BY Microsoft PrelS

A Division of Microsoft Co,poration One Microsoft Way, Redmond, Washinston 98052-6399

Copyright C,1991 by Thom Hogan All rights reserved. No part of the contents of this book may be reproduced or transmilted in any form or by any means without lhc wriucn permission of the publisher. Library of Congress Cataloging-in-Publication Data Hogan, Thom, 1952Thc programmer's PC sourccbook /Thom Hogan. -- 2nd ed.

p.

cm.

Includes bibliographical references and index.

ISBN 1-55615-321-X 1. IBM microcompulerS--Programming. 2. MS-DOS (Computer operating system) 3. mM Personal Systcm/2 (Computer system) I. Title. n. Title: Programmer's PC source book. QA76.8.ll015H64 1991 005.4'469--dc20 91-11237 CIP Printed and bound in the United States of America.

123456789MLML65432 Distributed to the book trade in Canada by Macmillan of Canada, a division of Canada Publishing Corporation.

Distributed to the book trade outside lhe United States and Canada by Penguin Books Ltd. Penguin Books Ltd., Hannondsworth, Middlesex, England Penguin Books Australia Ltd., Ringwood, Victoria. Australia Penguin Boots N.Z. Ltd., 182-190 Wairau Road, Auckland 10, New Zealand British Cataloging-in-Publication Data available. PageMakerl!D is a registered trademark of Aldus Corporation. Paradox® is a registered trademark of Ansa Software, a Borland company. Apple® is a registered b'ademark of Apple Computer, Inc. dBase® is a registered trademark of Ashton-Tate Corporation. ToolBook® is a registered tndemark of Asymetrix Corporation. SideKick®, SuperKey®, and Turbo BASIC® are registered trademarks of Borland Inlemational, Inc. Show Partner™ is a trademark of Brightbill-Roberts and Company, Ltd. Compaq® is a registered trademark of Compaq Computer Corporation. SuperCalc® is a registered trademark and SuperProjectTM is a trademark of Computer Associales Jntemational, Inc. CP/M® is a registered trademark of Digital Research, Inc. SQLWindows™ is a trademlllk of Gupta Technologies. Hayes® is a registered tradc:mark of Hayes Microcomputer Products, Inc. HP® and LaserJet® are registered trademarks of Hewlett-Packard Company. Intel® is a registered trademark and i486'DI is a trademark. of Intel Corporation. AT®, IBM®, and PS/2® are registered trademarks and ProprinterTM and X"J"'M are trademarks of International Business Machines Corporation. J-2-3® and Lotus® are registered trademarks and VisiCaJcTM is a trademark of Lotus Development Corporation. Animalor™ is a trademark of Micro Focus Limited. Word Findd is a registered trademark of Microlytics, Inc. Code Vie~, Microsoft®, MS®, MS-DOS®, and Multiplan® are regis1ercd trademarks and Microsoft QuickBasic111 , QBasic'DI, and Windows™ arc trademarks of Microsoft Corporation. Palantir® is a registered trademark of Palantir, Inc. Qwne Sprint U® is a registered tradc:mark of Qwne Corporation. ProKey™ is a trademark of RoseSoft, Inc. Epson® is a registered trademark of Seiko Epson Corporation. Harvard® is a registered trademark of Software Publishing Co,poration. Actol® is a regislered trademark of The Wrutewaler Group, Inc. Diablo® is a registered tradc:mark of Xerox Corporation. XyWrite™ is a trademark of XYQUEST, Inc. PC Paintbrush® is a registered trademark. of ZSoft Corporal ion.

Acquisitions Editor: Marjorie Schlaikjer Project Editor: Casey D. Doyle Technical Editor: Laurie Leber Production: Online Press Inc.

Contents Introduction

xxvii

PART I: Miscellaneous Information SECTION 1: General Information

1-1

Numerit Conversions Hexadecimal 1.01 1.02 1.03

1.04 1.05 Binary 1.06 1.07 Octal 1.08 1.09 I.JO Decimal

I.II 1.12 1.13

Hexadecimal to Decimal Number Conversion 1-2 Hexadecimal to Binary Number Conversion 1-3 Hexadecimal to Octal Number Conversion 1.3 Hexadecimal Addition Tables 1-4 Hexadecimal Multiplication Tables 1-6

Binary Number Conversions 1-7 Binary to Signed Decimal Number Conversion Octal to Decimal Number Conversion

Octal to Hexadecimal Number Conversion 1-9 Octal to Binary Number Conversion 1-10 Decimal to Binary Number Conversion 1-11 Decimal to Hexadecimal Number Conversion 1-12 Decimal to Octal Number Conversion 1-12

Common Data Formats 1.14 Two's Complements 1-13 1.15 Common 8086 Family Data Formats 1-14 1.16 Common Numeric Data Formats 1-14 1.17 Common String Formats 1-16 1.18 Common Memory Area Terminology 1-16 1.19 Binary Coded Decimal Number Format 1-17 ASCII 1.20 ASCII Control Codes 1-18 1.21 ASCII Character Set 1-19 IBM ASCII Character Set 1-20 1.22 IBM Keyboard Extended Function Codes 1-22 1.23 Line Drawing Character Set 1-24 1.24 EBCDIC EBCDIC Character Set 1-25 1.25 Other Elements 1.26 1.27 1.28 1.29

1-8

1-9

Digit Positions in Common Bases 1-27 Powers of Two 1-27 ASCII and International Sort Ordering 1-28 Truth Tables for Logical Operations 1-29

The Programmer's PC Sourcebook

vi

PART II: Software SECTION 2: DOS Commands, Utilities, and Summaries

2.1

DOS Commands 2.01 DOS Command Summary 2-3 2.02 Exit Codes Returned by DOS Commands DOS Extended Error Messages 2-10 2.03 DOS Parse Error Messages 2-11 2.04

2-9

DOS Command Utilities 2.05 Editing DOS Command Lines 2-11 2.06 Batch File Commands 2-12 2.07 CONFIG.SYS Commands and Default Settings 2-13 2.08 PROMPT Special Characters 2-14 2.09 PROMPT ANSI Control Strings 2-15 2.10 PROMPT ANSI Display Attribute Strings 2-16 2.11 Device Driver Parameters 2-17 DOS Utilities 2.12 2.13 2.14 2.15 2.16 2.17

DEBUG Command Summary 2-18 EDLIN Command Summary 2-20 LIB Operators Summary 2-21 LINK Parameters Summary 2-21 DOSSHELL Program Startup Options 2-22 DOSSHELL Program Special Key Assignments

DOS Disk Layouts 2.18 Directory Entries 2-24 2.19 File Attribute Byte 2-24 2.20

2.21 2.22 2.23 2.24 2.25 2.26

Date/fime Formats 2-25 FAT Layouts 2-26 Disk ID Bytes 2-26 Disk Boot Record Layout 2-27 Disk Partition Table Layout 2-27 Floppy Disk Fonnat Summary 2-29 IBM Hard Disk Fonnat Summary 2-29

DOS File Layouts 2.27 EXE File Header 2-30 2.28 COM Program Layout 2-30 2.29 COM versus EXE File Differences 2-31 2.30 Font File (Code Page) Layout 2-31 2.31 Operating System Files Summary 2-32 2.32 Included Command Files Summary 2-32 2.33 Common File Types (Extensions) 2-34 Other 2.34 2.35 2.36

Typical DOS Memory Usage 2-37 Allowable Characters in Filenames 2-38 Filename Separator Characters 2-38

2-23

Co11tc1't.t

SECTION 3: DOS Function Calls and Support Tables 3-1 INT 21H Function Summaries 3.001 INT 21H Funclions by DOS Version Summary 3-6 3.002 INT 21H Keyboard Functions Summary 3-8 3.003 INT 21H FCB-Oriented Functions Summary 3-9 3.004 INT 21H Handle-Oriented Functions Summary 3-10 3.005 INT 21 H IOCTL Device-Oriented Functions Summary 3-11 3.006 INT 21H Directory Management Functions Summary 3-12 3.007 INT 21H Drive Management Functions Summary 3-12 3.008 INT 21H File-Sharing Functions Summary 3-12 3.009 INT 21H Character l/0 Functions Summary 3-13 3.010 INT 21H Memory Management Functions Summary 3-13 3.01 I INT 21H Program Management Functions Summary 3-14 3.012 INT 21H National-Language Support Functions Summary 3-14 3.013 INT 21H System Management Functions Summary 3-15 3.014 INT 21H Network Functions Summary 3-15 INT 21H Functions 3.015 Typical DOS Register Use 3-16 3.016 INT 21H, AH=OOH-Terminate Program 3-16 3.017 INT 21H, AH=0IH-Read Keyboard with Echo 3-17 3.018 INT 21H, AH=02H - Display Character 3-18 3.019 INT 21H, AH=03H-Auxiliary Input 3-19 3.020 INT 21H, AH=04H-Auxiliary Ou1put 3-19 3.021 INT 21H, AH=05H -Print Character 3-20 3.022 INT 21H, AH=06H -Direct Console 1/0 3-20 3.023 INT 21H, AH=07H-Direct Console Input 3-21 3.024 INT 21H, AH=08H-Read Keyboard without Echo 3-22 3.025 INT 21H, AH=09H -Display String 3-22 3.026 INT 21H, AH=OAH-Buffered Keyboard Input 3-23 3.027 INT 21H, AH=OBH-Check Keyboard Status 3-23 3.028 INT 21H, AH=OCH-Flush Buffer, Read Keyboard 3-24 3.029 INT 21H, AH=0DH - Reset Drive 3-24 3.030 INT 21H, AH=OEH - Set Default Drive 3-25 3.031 INT21H,AH=OFH-OpenFilewithFCB 3-25 3.032 INT 21H, AH=IOH-Close File with FCB 3-26 3.033 INT 21H, AH=llH-Find First File with FCB 3-26 3.034 INT 21H, AH=l2H-Find Next File with FCB 3-27 3.035 INT 21H, AH=13H-Delete File wilh FCB 3-28 3.036 INT 21H, AH=14H -Sequenlial Read 3-28 3.037 INT 21H, AH=l5H -Sequential Write 3-29 3.038 INT 21H, AH=16H-Create File with FCB 3-30 3.039 INT 21H, AH=l7H-Rename File with FCB 3-31 3.040 INT 21H, AH=l9H-Get Current Drive 3-31 3.041 INT 21H, AH=IAH - Set Disk Transfer Address 3-32 3.042 INT 21H, AH=IBH-Get Default Drive Data 3-32 3.043 INT 21H, AH=ICH -Get Drive Data 3-33 3.044 INT 21H, AH=IFH -Get Default DPB 3-33 3.045 INT 21H, AH=21H-Random Read 3-34 3.046 INT 21H, AH=22H-Random Write 3-34 3.047 INT 21H, AH=23H -Gel File Size 3-35 3.048 INT 21 H, AH=24H - Set Random Record Number 3-36 3.049 INT 21H, AH=25H -Set Interrupt Vector 3-36 3.050 INT 21H, AH=26H - Create New Program Segmenl Prefix 3-37 3.051 INT 21H, AH=27H-Random Block Read 3-37

vii

The Programmer~ PC Sourceboolc ·

3.164 3.165 3.166 3.167 3.168 3. I69

INT 21H, AH=65H, AL=22H-Conven ASCIIZ String 3-109 INT 21H, AH=66H, AL=OIH-GetGlobal Code Page 3-110 INT 21H, AH=66H, AL=02H-SetGlobal Code Page 3-110 INT 21H, AH=67H-Set Maximum Handle Count 3-111 INT 21H, AH=68H-Commit File 3-111 INT 2 IH, AH=6CH - Extended Open/Create 3-112

File System Structures and Supporting Tables 3.170 BOOTSECTOR Structure 3-113 3.171 DEVICEPARAMS Structure 3-114 3.172 DIRENTRY Structure 3-115 3.173 DPB Structure 3-115 3.174 EXTENDEDFCB Structure and EXTHEADER Structure 3-116 3.175 FCB Structure (Opened) 3-116 3.176 FCB Structure (Unopened) 3-117 3. I 77 FILEINFO Structure 3-117 3.178 FVBLOCK Structure 3-118 3.179 MID Structure 3-118 3.180 PARTENTRY Structure 3-118 3.181 RENAMEFCB Structure 3-119 3.182 RWBLOCK Structure 3-119 3.183 TRACKLAYOUTStructure 3-119 3.184 Logical Drive Numbers 3-120 3.185 FCB Error Codes 3-120 3.186 Parse Control Byte 3-121 3.187 Handle Access Byte 3-121 3.188 Predefined Handles 3-122 3.189 Handle Pointer Movement Methods 3-122 Program Management Structures and Supporting Tables 3.190 ARENA Structure (DOS Memory Control Blocks) 3-122 3.191 ERROR Structure and Error Code Values 3-123 3.192 EXECSTATE Structure 3-125 3.193 LOAD Structure 3-125 3. I 94 LOADEXEC Structure 3-125 3.195 LOADOVERLAY Structure 3-126 3.196 PSP Structure 3-126 3.197 Memory Allocation Strategies 3-127 3.198 Environment Blocks 3-127 National-Language Support Structures and Supporting Tables 3.199 Country Codes 3-128 3.200 Code-Page Assignments 3-129 3.201 Select/Query Code-Page Parameter Blocks 3-129 3.202 CODEPAGE Structure 3-130 3.203 COUNTRYINFO Structure 3-130 3.204 CPENTRYHEADER Structure 3-131 3.205 CPLIST Structure 3-131 3.206 CPPREPARE Structure 3-131 3.207 FILECHARTABLE Structure 3-131 3.208 FONTDATAHEADER Structure 3-132 3.209 FONTFILEHEADER Structure 3-132 3.2!0 FONTINFOHEADER Structure 3-132 3.211 PRINTERFONTHEADER Structure 3-132 3.212 SCREENFONTHEADER Structure 3-132

Comems

Device Driver Functions, Structures, and Supporting Tables 3.213 BUILDBPBREQUEST Structure 3-133 3.214 DEVICEHEADER Structure 3-133 3.215 Device Attribute Codes 3-134 3.216 Device Data Word 3-135 3.217 FLUSHREQUEST Structure 3-136 3.218 INITREQUEST Structure 3-136 3.219 IOCTLREQUEST Structure 3-137 3.220 IOCTLRWREQUEST Structure 3-137 3.221 LOGDEVICEREQUEST Structure 3-138 3.222 MEDIAREQUEST Structure 3-138 3.223 NDREADREQUEST Structure 3-139 3.224 OPENCLOSEREQUEST Structure 3-139 3.225 OUTPUTREQUEST Structure 3-139 3.226 READWRITEREQUEST Structure 3-140 3.227 REMOVEMEDIAREQUEST Structure 3-140 3.228 REQUESTHEADER Structure 3-141 3.229 Device Request Header Status Field and Error Codes 3-142 3.230 STATUSREQUEST Structure 3-142 3.231 Reserved Device Names and Chain Order 3-143 3.232 Clock Device Table Layout 3-143

SECTION 4: BIOS and DOS Extension Calls and Support Tables 4-1

BIOS Summaries and General Data 4.001 BIOS Services Summary 4-5 4.002 BIOS Memory Usage Summary 4-8 4.003 Extended BIOS Data Area Layout 4-11 4.004 CMOS RAM Data Area Layout 4-11 4.005 BIOS Error Codes 4-12 4.006 Phoenix BIOS Beep Codes 4-13 4.007 Model Number Bytes 4-14 4.008 Adapter ROM Layout 4-14 4.009 INT SH -Print Screen Service 4-14 4.010 INT 9H -Keyboard 4-15 INT lOH - Video Services 4.011 INT IOH, AH=OOH - Set Mode 4-15 4.012 INT IOH, Display Modes 4-16 4.013 INT IOH,AH=0IH-SetCursorType 4-16 4.014 INT IOH, AH=02H - Set Cursor Position 4-17 4.0 I 5 INT IOH, AH=03H - Read Cursor Position 4-17 4.016 INT IOH, AH=04H - Read Light Pen Position 4-18 4.017 INT IOH, AH=0SH-Select Display Page 4-18 4.018 INT I0H, AH=06H - !nit Window, Scroll Window Up 4-19 4.019 INT IOH, AH=07H - !nit Window, Scroll Window Down 4-19 4.020 INT IOH, AH=08H - Read Character and Attribute 4-20 4.021 INT IOH, AH=09H - Write Character and A1tribute 4-20 4.022 INT IOH, AH=0AH - Write Character Only at Cursor 4-21 4.023 INT IOH, AH=0BH - Set Color Paleue 4-21 4.024 INT IOH, Palelle and Color Values 4-22 4.025 INT IOH, AH=OCH - Write Pixel 4-22 4.026 INT IOH, AH=0DH - Read Pixel 4-23 4.027 INT IOH, AH=0EH - Write Text in Teletype Mode 4-23

xi

The Programmer's PC Sourceboolc

xii

4.028 4.029 4.030 4.031 4.032 4.033 4.034 4.035 4.036 4.037 4.038 4.039 4.040 4.041 4.042 4.043 4.044 4.04S 4.046 4.04 7 4.048

INT I0H, AH=0FH -Get Current Display Mode 4-24 INT JOH, AH= JOH - Set Palette Registers 4.24 INT JOH, AH= 11 H - Character Generator 4.25 INT JOH, AH=l2H-Alternate Select 4-26 INT JOH, AH=l3H - Write String 4-27 INT JOH, AH=IAH, AL=OOH- Read Display Codes 4-27 INT I0H, AH=IAH, AL=0IH- Write Display Codes 4.23 INT I0H, Display Codes 4-28 INT JOH,AH=IBH-ReturnState 4-29 INT I0H, Video State Buffer Layout 4-29 INT JOH, AH=ICH, AL=OOH - Return Save/Restore 4-31 INT JOH, AH=ICH, AL=OIH - Save State 4-32 INT JOH, AH=ICH, AL=02H-Restore State 4-32 INT JOH, AH=FEH-Get Video Buffer (TopView) 4-33 INT JOH, AH=FFH - Update Video Buffer (TopView) 4-33 Alpha Mode AUX Char Gen Table 4-34 Graphics Mode AUX Char Gen Table 4.34 Save Pointer Data Area and Secondary Save Pointer Data Area 4-34 Save/Restore Video States 4-35 INT 11 H - Get Equipment List Service 4-35 INT 12H - Get Memory Size Service 4-36

INT 13H - Disk Services 4.049 INT 13H, AH=OOH - Reset Disk System 4-36 4.050 INT 13H, AH=Ol H - Get Disk System Status 4-37 4.051 INT 13H, Disk System Status Byte Layout 4-37 4.052 INT 13H, AH=02H - Read Disk 4-38 4.053 INT 13H, AH=03H - Write Disk 4-38 4.054 INT 13H, AH=04H - Verify Sectors 4-39 4.055 INT 13H, AH=05H - Format Cylinder 4-40 4.056 INT 13H, AH=06H - Format Cylinder Set Bad Sector Aags 4-41 4.057 INT 13H, AH=07H - Format Drive Starting al Cylinder 4-42 4.058 INT 13H, AH=08H-Read Drive Parameters 4-42 4.059 INT 13H, AH=09H - lnit Drive Pair Characteristics 4-43 4.060 INT 13H, AH=OAH - Read Long Sectors 4.44 4.061 INT 13H, AH=0BH- Write Long Sectors 4-44 4.062 INT 13H, AH=OCH-Seek 4-45 4.063 INT 13H, AH=0DH - Alternate Disk Reset 4.45 4.064 INT 13H, AH=0EH - Read Test Buffer 4-46 4.065 INT 13H, AH=0FH - Write Test Buffer 4-46 4.066 INT 13H, AH=I0H-Test Drive Ready 4.47 4.067 INT 13H, AH=IIH-Recalibrate Drive 4-47 4.068 lNT 13H, AH= 12H - Controller RAM Diagnostic 4-48 4.069 INT 13H, AH=13H -Controller Drive Diagnostic 4-48 4.070 INT 13H, AH=l4H - Controller Internal Diagnostic 4-49 4.071 lNT 13H, AH=l5H - Read DASO Type 4-49 4.072 INT 13H, AH= 16H - Diskette Change Line Status 4-50 4.073 INT 13H, AH=l7H-Set DASO Type for Format 4-50 4.074 INT 13H, AH=l8H-Set Media Type for Format 4-51 4.075 INT 13H, Media Descriptor Table 4-52 4.076 INT 13H,AH=l9H-ParkHeads 4-52 4.077 INT 13H, AH=IAH- Format Unit 4-53 4.078 INT 13H, Format Unit Modifier Bits 4.53

xiii

Co,uents

INT 14H -Serial Services

4.079 4.080 4.081 4.082 4.083 4.084 4.085 4.086 4.087

INT INT INT INT INT INT INT INT INT

14H, AH=OOH - lnil Communicalions Port 4-54 14H, Modem and Line Slalus Byle 4-54 14H, COM Port Parameler Byle 4-55 14H, AH=OIH - Wrile Characler 4-55 14H, AH=02H - Read Characler 4-56 14H, AH=03H - S1a1us Requesl 4-56 14H, AH=04H - Exlended lnit 4-57 14H, AH=OSH, AL--OOH- Read Modem Control Register 4-58 14H, AH=OSH, AL=OI H - Wrile Modem Con1rol RegiSler 4-58

INT !SH - Cassette Services/Miscellaneous Extended Services

4.088 4.089 4.090 4.091 4.092 4.093 4.094 4.095 4.096 4.097 4.098 4.099 4.100 4.l01 4.l02 4.l03 4.104 4.l05 4.106 4.l07 4.l08 4.109 4.1IO 4.111 4.112 4.113 4.114 4.115 4.116 4.117 4.118 4.119 4.120 4.121 4.122

INT ISH, AH=OOH-Cassette Mo1orON (obsolete) 4-59 INT ISH, AH=0IH - Cassette Motor OFF (obsolele) 4-60 INT ISH, AH=02H - Cassette Read Data Blocks (obsolete) 4-60 INT ISH, AH=03H-Cassette Wri1e Data Blocks (obsolele) 4-61 INT ISH, AH=0FH - Formal Periodic lnterrup1 4-61 INT ISH, AH=21H-Power-On Self-Tesi Error Log 4-62 INT I SH, AH=23H - Read/Wrile DOS 4.00 Flags for PS/I 4-62 INT I SH, AH=4FH - Keyboard Intercept 4-63 INT ISH, AH=80H - Open Device 4-63 INTISH,AH=8IH-CloseDevice 4-64 INT ISH, AH=82H - Program Terminate 4-64 INT 15H,AH=83H-EventWait 4-65 INT 15H, AH=84H -Joystick Support 4-65 INT ISH, AH=85H - Syslem Request Key Pressed 4-66 INT 15H, AH=86H - Wait 4-66 INT !SH, AH=87H - Move Block 4-67 INT ISH, AH=88H - Get Extended Memory Size 4-67 INT ISH, AH=89H - Swi1ch to Protec1ed Mode 4-68 INT ISH, Global Descrip1or Table 4-68 INT ISH, AH=90H - Device Busy 4-69 INT ISH, AH=91H-lnterrupl Complete 4-70 INT 15H, AH=C0H - Rel um Syslem Config Parameters 4-70 INT 15H, Sysiem Descriplor Table 4-71 INT 15H, AH=CIH-Relum Ex1 BIOS Segmenl Address 4-71 INT !SH, AH=C2H, AL=00H -Enable/Disable Poinling Device 4-72 INT 15H, AH=C2H, AL=OIH - Reset Poin1ing Device 4-72 INT ISH, AH=C2H, AL=02H-Set Sample Rate 4-73 INT ISH, AH=C2H, AL=03H - Set Resolution 4-73 INT ISH, AH=C2H, AL=04H -Read Device Type 4-74 INT !SH, AH=C2H, AL=05H - Initialize Poinling Device 4-74 INT 15H, AH=C2H, AL=06H - Extended Commands 4-75 INT ISH, AH=C2H, AL=07H-Device Driver lni1 Call 4-76 INT !SH, Mouse Port Status Byles 4-76 INT !SH, AH=C3H- Wa1chdog Timeoul 4.77 INT ISH, AH=C4H - Prog Option Selecl 4-77

INT 16H - Keyboard Services 4.123 INT 16H, AH=OOH -Read Characler 4-78 4.124 INT 16H, AH=OIH-Read Siatus 4-78 4.125 INT 16H,AH=02H-Readflags 4-79 4.126 INT 16H, AH=03H-Sel Typemalic Rate and Delay 4-80

The Programmer's PC Sourceboolc

xiv

4.127 4.128 4.129 4.130 4.131 4.132 4.133

INT 16H, Keyboard Flags Byle 4-80 INT 16H, AH=0SH-Keyboard Wrile 4-81 INT 16H, AH=09H -Keyboard Funclionalily Determinalion 4-81 INT 16H, AH=I0H- Exlended Keyboard Read 4-82 INT 16H, AH=l lH-Ex1ended Keystroke Status 4-82 INT 16H, AH=l2H-Extended Shift Slatus 4-83 INT 16H, Exlended Keyboard Flags Byle 4-83

INT 17H - Printer Services 4.134 INT 17H, AH=OOH - Wrile Characler 4-84 4.13S INT 17H, Printer Slalus Byte 4-84 4.136 INT 17H,AH=0IH-InitializePrinterPon 4-85 4.137 INT 17H, AH=02H-Slalus Requesl 4-85 4.138 INT 18H - BASIC Loader 4-86 4.139 INT 19H-BootslrapLoader 4-86 INT !AH-Time of Day Services 4.140 INT IAH, AH=OOH-Read Clock Count 4-87 4.141 INT IAH, AH=OIH -Sel Clock Counl 4-87 4.142 INT IAH, AH=02H - Read Real Time Clock Time 4-88 4.143 INT IAH, AH=03H-Set Real Time Clock Time 4-88 4.144 INT I AH, AH=04H - Read Real Time Clock Date 4-89 4.14S INT IAH, AH=OSH -Set Real Time Clock Date 4-89 4.146 INT !AH, AH=06H - Set Real Time Clock Alarm 4-90 4.147 INT IAH,AH=07H-Tum Off Real Time Clock Alarm 4-90 4.148 INT IAH, AH=09H-Read Real Time Clock Alarm 4-91 4.149 INT IAH, AH=OAH - Read System Timer Day Count 4-91 4.1S0 INT !AH, AH=0BH - Sel Syslem Timer Day Counl 4-92 4.15 I INT IAH. AH=80H - Set Sound Source 4-92 SECTION 5: Other Interrupts, CD-ROM, Mouse, and EMS Support

5-1

Other Interrupts S.001 DOS lnterrupl Usage by DOS Version 5-6 S.002 INT 24H, Error Codes 5-7 S.003 INT 25H, Absolule Disk Read 5-8 S.004 INT 26H, Absolule Disk Wrile 5-8 S.00S INT 25H and 26H, Error Codes 5-9 S.006 INT 2FH, Mulliplex for DOS 3.x and 4.x 5-10 S.007 INT 2FH, AX=0l OOH - Get PRINT.EXE Installed State 5-11 S.008 INT 2FH, AX=0IOIH-Add File 10 Queue 5-11 S.009 INT 2FH, AX=0102H -Remove File from Print Queue 5-12 S.010 INT 2FH, AX=0103H -Cancel All Files in Print Queue 5-12 5.01 I INT 2FH, AX=0104H- Hold Prinl Jobs and Get S1a1Us 5-13 S.012 INT 2FH, AX=0IOSH - Release Prinl Jobs 5-13 S.013 INT 2FH, AX=Ol06H -Get Printer Device 5-14 S.014 INT 2FH. AX=0600H-Gel ASSIGN.COM lns1alled Stale 5-14 S.01S INT 2FH, AX=IOOOH -Gel SHARE.EXE lnslalled Slale 5-15 S.016 INT 2FH, AX=l l00H-Get Network Installed State 5-15 S.017 INT 2FH, AX=1400H-Ge1 NLSFUNC.EXE Installed Slate S-16 S.018 INT 2FH, AX=l680H - MS-DOS Idle Call 5-16 S.019 INT 2FH, AX=IAOOH - Gel ANSI.SYS lns1alled State 5-17 S.020 INT 2FH, AX=4300H -Gel HIMEM.SYS lnslalled Slate 5-17 S.021 INT 2FH, AX=4301 H - Get HIMEM.SYS Enlry-Point Address S-18 S.022 INT 2FH, AX=4800H-Ge1 DOSKEY.COM lnslalled State 5-18 S.023 INT 2FH, AX=4810H - Read Command Line S-19

xv

Cmrte111J

5.024 5.025 5.026 5.027 5.028 5.029 5.030 5.031 5.032 5.033 5.034 5.035 5.036 5.037 5.038 5.039 5.040 5.041 5.042 5.043 5.044 5.045 5.046 5.047

INT 2FH, AX=4801 H - Build Notification Chain 5-19 INT 2FH, AX=4802H - Detect Switcher 5-20 INT 2FH, AX=4803H - Allocate Switcher ID 5-20 INT 2FH, AX=4804H - Free Switcher ID 5-21 INT 2FH, AX=4805H - Identify Instance Data 5-21 INT 2FH, AX=AD80H - Get KEYS.COM Version Number 5-22 INT 2FH, AX=AD8 I H - Set KEYS.COM Active Code Page 5-22 INT 2FH, AX=AD82H - Set KEYS.COM Country Flag 5-23 INT 2FH, AX=AD83H - Get KEYS.COM Country Flag 5-23 INT 2FH, AX=BOOOH - Get GRAFr A BL.COM Installed State 5-24 INT 2FH, AX=B700H - Get APPEND.EXE Installed State 5-24 INT 2FH, AX=B702H - Get APPEND.EXE Version 5-25 INT 2FH, AX=B704H - Get APPEND.EXE Directory List Address 5-25 INT 2FH, AX=B706H - Get APPEND.EXE Modes Flag 5-26 INT 2FH, AX=B707H - Set APPEND.EXE Modes Flag 5-26 INT 2FH, AX=B71 IH-Set True-Name Flag 5-27 INT 2FH, Error Codes 5-27 Service Functions S-28 Notification Functions S-28 SWAPIINFO Data Structure 5-29 SWCALLBACKINFO Data Structure 5-29 SWINSTANCEITEM Data Structure S-29 SWSTARTUPINFO Data Structure 5-29 SWVERSION Data Structure S-30

CD-ROM 5.048 5.049 5.050 5.051 5.052 5.053 5.054

5.065

INT 2FH, CD-ROM Extension Functions Summary S-30 INT 2FH, AL=OOH - Get Number of CD-ROM Drives 5-31 INT 2FH, AL=OIH -Get CD-ROM Drive List 5-31 INT 2FH, AL=02H - Get Copyright Filename S-32 INT 2FH, AL=03H - Get Abstract Filename 5-32 INT 2FH, AL=04H - Get Bibliographic Filename 5-33 INT 2FH, AL=05H - Read Volume Table of Contents S-33 INT 2FH, AL=08H -Absolute Disk Read 5-34 INT 2FH, AL=09H - Absolute Disk Write 5-34 INT 2FH, AL=OBH - CD-ROM Drive Check S-3S INT 2FH, AL=OCH -Get CD-ROM Extensions Version S-3S INT 2FH, AL=0DH - Get CD-ROM Units S-36 INT 2FH, AL=0EH - Get or Set Volume Descriptor Preference S-36 INT 2FH, AL=0FH - Get Directory Entry S-37 INT 2FH, AL=IOH - Send Device Request S-37 INT 2FH, CD-ROM Drive Error Codes 5-38 High Sierra CD-ROM Directory Format 5-38 ISO-9660 CD-ROM Directory Format S-39

5.066 5.067 5.068 5.069 5.070 5.071 5.072 5.073 5.074 5.075

INT 33H, Mouse Functions Summary S-40 INT 33H, AX=OOH - Mouse Reset and Status S-41 INT 33H, AX=0IH- Show Cursor S-41 INT 33H, AX=02H - Hide Cursor S-42 INT 33H, AX=03H - Get Button Status and Mouse Position S-42 INT 33H, AX=04H - Set Mouse Cursor Position 5-43 INT JJH, AX=05H - Get Button Press Information S-43 INT 33H, AX=06H - Get Button Release Information 5-44 INT 33H, AX=07H - Set Min/Max Horizontal Cursor Posi1ion S-44 INT 33H, AX=08H - Se! Min/Max Vertical Cursor Position 5-45

5.055 5.056 5.057 5.058 5.059 5.060 5.061

5.062 5.063 5.064

Mouse

The Programmer's PC Sourceboolc

xvi

5.076 5.077 5.078 5.079 5.080 5.081 5.082 5.083 5.084 5.085 5.086 5.087 5.088 5.089 5.090 5.091 5.092 5.093 5.094 5.095 5.096 5.097 5.098 5.099 5.100 5.101 5.102 5.103 5.104 5.105 5.106 5.107 5.108 5.109 5.110 5.111 5.112 5.113 5.114 5.115 5.116 5.117 5.118 5.119

INT 33H, AX=09H - Set Graphics Cursor Block 5-45 INT 33H, AX=OAH - Set Text Cursor 5-46 INT 33H, AX=0BH - Read Mouse Motion Counters 5-4' INT 33H, AX=0CH - Set Interrupt Subroutine Call Mask and Address 5.47 INT 33H, AX=0DH - Set Light Pen Emulation On 5-48 INT 33H, AX=0EH - Set Light Pen Emulation Off 5-48 INT 33H, AX=0FH - Set Mickey/Pixel Ratio 5-49 INT 33H, AX=lOH -Conditional Off S-49 INT 33H, AX=l3H-Set Double Speed Threshold 5-50 INT 33H, AX=14H - Swap Interrupt Subroutines 5-50 INT 33H, AX=l 5H - Get Mouse Driver State Storage Requirements 5-S1 INT 33H, AX=l6H-Save Mouse Driver State 5-S1 INT 33H, AX= 17H - Restore Mouse Driver State 5-52 INT 33H, AX=l8H - Set Alternate Subroutine Call Mask and Address 5-52 INT 33H, AX=l 9H - Get User Alternate Interrupt Address 5.53 INT 33H, AX= I AH - Set Mouse Sensitivity 5-54 INT 33H, AX=IBH - Get Mouse Sensitivily 5-54 INT 33H, AX=ICH - Set Mouse Interrupt Rate 5-55 INT 33H, AX= I DH - Set CRT Page Number 5.55 INT 33H, AX= IEH - Get CRT Page Number 5-56 INT 33H, AX=IFH-Disable Mouse Driver 5-56 INT 33H, AX=20H - Enable Mouse Driver 5-57 INT 33H, AX=21H - Software Reset S-57 INT 33H, AX=22H - Set Language for Messages 5-58 INT 33H, AX=23H - Get Language Number 5-59 INT 33H, AX=24H - Get Driver Version, Mouse Type, and IRQ Number 5-59 INT 33H, AX=25H - Get General Driver Information 5-60 INT 33H, AX=26H - Get Maximum Vinual Coordinates S-60 INT 33H, AX=27H - Get Screen/Cursor Masks and Mickey Counts 5-61 INT 33H, AX=28H - Set Video Mode 5-61 INT 33H, AX=29H - Enumerate Video Modes S-62 INT 33H, AX=30H - Get Cursor Hotspot 5-62 INT 33H, AX=31H - Load Acceleration Curves S-63 INT 33H, AX=32H - Read Acceleration Curves S-63 INT 33H, AX=33H - Set/Get Active Acceleration Curves 5-64 INT 33H, AX=35H - Mouse Hardware Reset S-64 INT 33H, AX=36H - Set/Get Ballpoint Information 5-65 INT 33H, AX=37H - Get Minimum/Maximum Vinual Coordinates 5-65 INT 33H, AX=38H - Get Active Advanced Functions 5-66 INT 33H, AX=39H - Get Switch Settings 5-66 INT 33H, AX=40H - Get MOUSE.JNI Location S-67 INT 33H, Screen and Cursor Masks 5-68 INT 33H, Mouse Driver Default Parameters 5-68 INT 33H, Acceleration Curves 5-69

LIM (Lotus/Jntel/Microsofi) EMS (Expanded Memory Specification) 5.120 INT 67H, Expanded Memory Manager Functions Summary 5.121 INT67H, AH=40H-Get Status S-71 5.122 INT67H, AH=4IH-Get Page Frame Address 5-71 5.123 INT 67H, AH=42H -Get Page Count 5-72 5.124 INT 67H, AH=43H-Allocate Pages 5-72 5.125 INT 67H, AH=44H-Map Memory 5.73 5.126 INT 67H, AH=45H-Deallocate pages 5-73 5.127 INT67H, AH=46H-Get EMM Version 5-74 5.128 INT 67H, AH=47H - Save Page Map S-74 5.129 INT 67H, AH=48H-Restore Page Map 5.75

5-70

xvii

Co,rte,rl.f

5.130 5.131 5.132 5.133 5.134 5.135 5.136 5.137 5.138 5.139 5.140 5.141 5.142 5.143 5.144 5.145 5.146 5.147 5.148 5.149 5.150 5.151 5.152 5.153 5.154 5.155 5.156 5.157 5.158 5.159 5.160 5.161 5.162 5.163 5.164 5.165 5.166 5.167 5.168 5.169 5.170 5.171 5.172 5.173 5.174 5.175 5.176 5.177 5.178 5.179 5.180 5.181 5.182 5.183 5.184 5.185

INT 67H, AH=4BH -Gel Handle Counl 5-75 INT 67H, AH=4CH - Get Page Counl for Handle 5-76 INT 67H, AH=4DH - Get Page Counts for All Handles 5-76 INT67H, AH=4EH, AL=OOH-Get Page Map 5-77 INT 67H, AH=4EH, AL=OIH -Sel Page Map 5-77 INT 67H, AH=4EH, AL=02H -Swap Page Map 5-78 INT 67H, AH=4EH, AL=03H - Gel Page Map Array Size 5-78 INT 67H, AH=4FH, AL=OOH - Save Partial Page Map 5-79 INT 67H, AH=4FH, AL=OIH -Restore Partial Page Map 5.79 INT 67H, AH=4FH, AL=02H - Gel Size of Partial Page Map lnforma1ion 5-80 INT 67H, AH=50H, AL=OOH - Map Multiple Pages by Number 5-80 INT 67H, AH=50H, AL=OIH - Map Multiple Pages by Address 5-81 INT 67H, AH=51 H - Reallocale Pages for Handle 5-81 INT 67H, AH=52H, AL=OOH - Get Handle A11ribu1e 5-82 INT 67H, AH=52H, AL=OIH-Set Handle Anribute 5-82 INT 67H, AH=52H, AL=02H - Get Anribute Capabilily 5-83 INT 67H, AH=53H, AL=OOH - Get Handle Name 5-83 INT 67H, AH=53H, AL=Ol H - Set Handle Name 5-84 INT 67H, AH=54H, AL=OOH - Gel All Handle Names 5-84 INT 67H, AH=54H, AL=Ol H - Search for Handle Name 5-85 INT 67H, AH=54H, AL=02H - Get Tola! Handles 5-85 INT 67H, AH=55H - Map Pages and Jump 5-86 INT 67H, AH=56H, AL=OO,O 1H - Map Pages and Call 5-87 INT 67H, AH=56H, AL=02H - Get Stack Space for Map Page and Call 5-87 INT 67H, AH=57H, AL=OOH - Move Memory Region 5-88 INT 67H, AH=57H, AL=Ol H - Exchange Memory Regions 5-89 INT 67H, AH=58H, AL=OOH - Get Addresses of Mappable Pages 5-90 INT 67H, AH=58H, AL=OIH- Get Number of Mappable Pages 5-90 INT 67H, AH=59H, AL=OOH - Get Hardware Configuration 5-91 INT 67H, AH=59H, AL=OIH - Get Number of Raw Pages 5-91 INT 67H, AH=5AH, AL=OOH - Allocate Handle and Standard Pages 5-92 INT 67H, AH=5AH, AL=OIH -Allocate Handle and Raw Pages 5-92 INT 67H, AH=5BH, AL=OOH - Get Alternate Map Registers 5-93 INT 67H, AH=5BH, AL=OIH- Set Alternate Map Registers 5-93 INT 67H, AH=5BH, AL=02H - Get Size of Alternate Map Register Save Area 5-94 INT 67H, AH=5BH, AL=03H - Allocate Alternate Map Register Set 5-94 INT 67H, AH=5BH, AL---04H - Deallocate Alternate Map Register Set 5-95 INT 67H, AH=5BH, AL=05H - Allocate DMA Register Set 5-95 INT 67H, AH=5BH, AL=06H - Enable DMA on Alternate Map Register Set 5-96 INT 67H, AH=5BH, AL=07H - Disable DMA on Alternate Map Register Set 5-96 INT 67H, AH=5BH, AL=08H - Deallocate OMA Register Set 5-97 INT 67H, AH=5CH - Prepare EMM for Warm Boot 5-97 INT 67H, AH=5DH, AL=OOH - Enable EMM Operating System Functions 5-98 INT 67H, AH=5DH, AL=OIH - Disable EMM Operating System Functions 5-98 INT 67H, AH=5DH, AL=02H - Release Access Key 5-99 INT 67H, AH=60H - Get Physical Window Array 5-99 INT 67H, AH=68H -Get System Physical Window Array 5-100 INT 67H, AH=69H - Map Page to Window 5-100 INT 67H, AH=6AH, AL=OOH -Get System Map 5-101 INT 67H, AH=6AH, AL=OlH -Set System Map 5-101 INT 67H, AH=6AH, AL=02H -Swap System Map 5-102 INT 67H, AH=6AH, AL=03H - Get Map Size 5-102 INT 67H, AH=6AH, AL=04H - Set Standard Mapping 5-103 INT 67H, AH=6AH, AL=05H - Set Alternate Mapping 5-103 INT 67H, AH=6AH, AL=06H - Deallocate lnilial System Pages 5-104 INT 67H, Expanded Memory Manager Error Codes 5-UM

The Programmer~ PC Sourcebook

xviii Extended Memory Functions 5.186 AH=00H-Get XMS Version 5-105 5.187 AH=0l H - Allocate HMA 5-105 5.188 AH=02H-FreeHMA 5-106 5.189 AH=03H-Global Enable A20 Line 5-106 5.190 AH=04H-Global Disable A20 Line 5-107 5.191 AH=05H-Local Enable A20 Line 5-107 5.192 AH=06H -Local Disable A20 Line 5-108 5.193 AH=07H-Query A20 Line State 5-108 5.194 AH=08H - Query Free Extended Memory 5-109 5.195 AH=09H-Allocate Extended Memory Block 5-109 5.196 AH=OAH - Free Extended Memory Block 5-110 5.197 AH=0BH-Move Extended Memory Block 5-110 5.198 AH=0CH-Lock Extended Memory Block 5-111 5.199 AH=ODH - Unlock Extended Memory Block 5-111 5.200 AH=0EH - Get Handle Information 5-112 5.201 AH=0FH - Resize Extended Memory Block 5-112 5.202 AH=IOH -Allocate Upper Memory Block 5-113 5.203 AH=l lH - Free Upper Memory Block 5-113 5.204 XMS Error Codes 5-114

VCPI (Virtual Control Program Interface) Functions 5.205 INT 67H, AH=DEH, AL=OOH - VCPI Presence Detection 5-114 5.206 INT 67H, AH=DEH, AL=0IH - VCPI Get Protected Mode Interface 5-115 5.207 INT 67H, AH=DEH, AL=02H - VCPI Get Maximum Physical Memory Address 5-115 5.208 INT 67H, AH=DEH, AL=03H - VCPI Get Number of Free 4K Pages 5-116 5.209 INT 67H, AH=DEH, AL--

?

Dec He• Octal 84 40 100 85 41 101 102 85 42 87 43 103 88 44 104 89 45 105 70 48 106 71 47 107 72 48 110 73 48 111 74 4A 112 75 4B 113 78 4C 114 77 4D 115 78 4E 118 11 79 4F 117 1111 80 50 120 "'"' 0000 81 51 121 0101 0001 62 52 122 0101 0010 83 63 123 0101 0011 84 54 124 010101(10 85 55 125 01010101 86 56 126 01010110 87 57 127 01010111 88 58 130 01011000 89 5S 131 01011001 90 6A 132 01011010 91 5B 133 01011011 92 5C 134 01011100 93 5D 135 01011101 94 5E 136 01011110 95 5F 137 01011111 140 0110 0000 86 80 97 61 141 01100001 98 62 142 01100010 99 63 143 01100011 100 84 144 01100100 101 85 145 01100101 102 68 148 01100110 103 67 147 01100111 104 68 150 01101000 105 89 151 01101001 106 6A 152 01101010 107 6B 153 01101011 108 6C 154 01101100 109 6D 155 01101101 110 6E 156 01101110 111 6F 157 01101111 160 0111 0000 112 70 161 01110001 113 71 114 72 162 01110010 115 73 163 01110011 184 0111 0100 116 74 117 75 165 01110101 185 01110110 116 78 167 01110111 119 77 120 79 170 01111000 171 01111001 121 79 122 7A 172 01111010 123 7B 173 01111011 124 7C 174 01111100 125 7D 175 01111101 126 7E 176 01111110 127 7F 177 01111111

atsian

.,

IA ~•naJB C D E F

A B C D E F

Q

G

H

H I J

Name

Charactsr

K

L M

N p

0

p

a R s

a R s

u

u

T

V

T

V

w

w

V

V

X

z

~ carol

undelscore

X

z

±

Ora'/8

lowercase A lowercases lowercase C lowercaseo lowercase E lowercase F loworcasoG lowercaseH lowercase I lowarcaseJ lowercase K lowercase L k>MrcasoM loworcasoN loworcasoO lowercaseP lowercaseO lowercaseR

loworcasoS loworcasoT lawercssoU

loworcasoV

-w lawercssoX lawercssoY

~

a b C

d

•I a h i k

I m n

. D D

r

• I

u V

.' w z I

-

Delete

•ASCII defines characters 0·31 to be control characters (or non-printing c.har&ctors). On many systems the characte~ wlll dlsplay as shown and you can use the control sequence shown to enter these values from the keyboard. Note:

IBM does not use the ASCII codes tor all characters, using, tor example, the lower 32 characters tor graphics.

SeeAl10:

1.20. ASCII Control Codes 1.22. IBM ASCII Character Set

Section 1: General l11formatio11

1-20

I

1.22. IBM ASCII CHARACTER SET Dec Hox Octal 000 00 0 001 1 01 002 2 02 003 3 03 4 04 004 005 05 5 008 05 6 007 07 7 010 06 8 011 9 09 012 10 0A OB 013 11 014 12 oc OD 015 13 018 14 OE 017 15 OF 10 020 16 021 17 11 022 18 12 19 023 13 14 024 20 21 15 025 16 22 028 17 027 23 24 18 030 031 25 19 IA 26 032 18 27 033 ,c 034 28 29 1D 035 IE 036 30 IF 037 31 32 20 040 21 041 33 34 22 042 35 23 043 36 24 044 37 25 045 38 26 046 39 27 047 40 28 050 41 051 29 42 2A 052 43 2B 053 44 2C 054 45 2D 055 46 2E 056 47 2F 057 48 30 060 49 31 061 50 32 062 51 33 063 52 34 064 53 35 065 54 36 066 55 37 067 58 38 070 57 39 071 58 3A 072 59 38 073 80 3C 074 61 30 075 62 3E 076 83 3F 077

Character

Name blank

0

face invtrHhal'llWface heart

0100~ 0101

0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010

00111

01000 01001 01010 01011 01100 01101 01110

1111

0000 0001 0010 0011 0100 0101 0110

inverse bullet circle iwersecircle malesi n

a

femalesian sinnlanole double note

V

0

• d

.



,un



unldownarrow doubleexclamalion hsion sectionsiM

reetanoularbullel un/down to ~ne

u•

••

. .. i

u arrow down arrow riahtarrow

~

let.arrow

~

lower left box · htarrow

~

uatrianale

downtrianole

ooace exclamationntiinl auO!ationmark

!

numbersit1n dollarsian DArcentSilln amaersand

#

~

"""'

• "~ +

n

,.,. 0118

two three lour five

••

10111

soven

11000 11001 11010 11011 11100 11101

einht nine

11110 111111



rinhlbiaMle lefttrianle

1011

1100 1101 1110 1111 0000 0001 0010 0011 0100 00101 00110

•• ••

II

0 1 2 3 4 5

8 7

8 9 :

. < >

1

Dec Hex

114 85 86 ff1

86 86

40

" 42 43 44 45

10 71 72 73

48

74 75 78 77 78 79 80 81

4A

82

83 84 85 86 87

88 88 90 91 92 93 94 85 96 97 98 98 100 101 102 103 104 105 108 107 106 108 110 111 112 113 114 115 118 117 118 119 120 121 122 123 124 125 128 127

" 48 48

48 4C

40 4E 4F

50 51 52 53 54 55 58 57 58

59 5A

5B 5C 50 SE 5F 80 81 82

83 114 85 86 ff1

88 89 8A 8B

8C 80 6E 8F 10 71 72

73

" 75 78

77

78 79

7A 7B

7C 7D 7E

7F

Octal 100 101 102 103 104 105 108 107 110 111 112 113 114 115 118 117 120 121 122 123 124 125 128 127 130 131 132 133 134 135 136 137 140 141 142 143 144 145 148 147 150 151 152 153 154 155

158 157 180 181 162 183 1114 165 166 187 110 171 172 173 174 175 178 177

I 01M1000 01001001

01001010 ft1M1011 01001100 01001101 01001110 01001111 0101 0000 0101 0001 0101 0010 0101 0011 0101 0100 01010101 01010110 01010111 01011000 01011001 01011010 01011011 01011100 01011101 01011110 01011111 01100000 01100001 01100010 01100011 01100100 01100101 01100110 01100111 01101000 01101001 01101010 01101011 01101100 01101101 01101110 01101111 01110000 0111 0001 0111 0010 01110011 01110100 01110101 01110110 01110111 01111000 01111001 01111010 01111011 01111100 01111101 01111110 01111111

Name

at11an

A 1B C D mnilalE

.

Charactor A

CIDilalF

B C D E F

CBDftalG ~oftalH CIDftal I r:at1llalJ

G H I J

. IK IL

MoftalM caoftalN ftalO

p

K L M N 0

R

p Q R

T

T

Q

s

u V

s

u V w X y

z i b11cket backwatd ,lash

-

clceioobraclcat underscore

•rave

lowercasaA lowercasa8 lowercasaC lowercaseO lowercaseE lowercasef lowen:aseG lowercasaH lowercase I lowercaseJ

lowercaseK lowercaseL lowercaseM lowercasaN lowercasaD

lowelcaseP lowercasaQ lowercasoR lowercasoS lowercasaT

lowercasau lowercasaV klwercaseW

lowarcuaX lowercaseY lowen:aseZ

a

b C

d

.• 1

h

i k I m

n

.•• r

•1 u

.. y

w

z

ODaninabrace

vertical line d01in11brace lildl tmall house

. 0

(ConNnuod)

1-21

Commo11 Data Formats 1.22. IBM ASCII Character Set (continued) Dec Hex Ocla/

128 129 130 131 132 133 134 135 135 137 138 139 140 141 142 1'3

80 81 82 83 84 85

88 87 88 89 BA BB BC SD BE BF

144

90

145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 16B 169 170 171 172 173 174 175 17B 177 178 179 !BO 1B1 182 1B3 1B4 1B5 1B6 1B7 188 1B9 190 191

91 92 93

94

200 201 202 203 204 205 205 207 210 211 212 213 214 215 216 217 220 221 222 223 224 225 226

95 96 97 98 99 9A 9B

230 231 232 233

9C

234

9D 9E 9F

235 236 237 240 241 242 243 244 245 246 247 250 251 252

AO

Al "2 A3 A4

AS A6 A7 AB A9 AA AB AC AD AE AF BO Bl B2

B3 B4

BS B6 B7 B8 B9 BA BB BC BD BE BF

227

Name Ccedl•a uumlaut

I .~

ooc:uto

1100 1101

1 1110 10001111 1001 0000 1001 0001

10010010 10010011

10010100 10010101 10010110 10010111 10011000 10011001 10011010 10011011 10011100 10011101 10011110

lumlau1 lclrcumflex

I I

, rave

10100110 10100111 10101000 10101001

10101010 10101011

10101100 10101101 10101110 10101111

1011 0000 10110001 10110010 10110011 1011 0100

10110101 10110110 10110111 10111000 10111001 10111010 10111011

10111100 10111101 10111110 10111111

6



l•rave

I A A

i

••rave

ucirC1Jmflex

uorave vumlaut Oumlaut Uumlaut cents10n MUndsitln vans111n

Pl

Uacule ntilde

10100101

C

Aumlaut

10100011

254 255 256 257 260 261 262 263 264 265 266 267 270 271 272 274 275 278 277



function

253

273

ccedilla eclrcumftex aumlaul

10011111 10100000 10100001 10100010 10100100



anrave

.

1010 1011

"0

A I A l

aclrcumflex aumlaut

1000 1001

Character

aacule lacute

oacule Ntitde a macron

••

IE 6 6

0 0 D

u LI

•£

••, A I

6 0 ft

.mwk

N

1/4

I

I

2101 urn,,rrinht doublerinhl unction double vertical doubleur11»rri hi doublelowerrihl 1 lo2Iowerrlnht 2 to 1 lower naht s1Ml8 rlnht

' '

-I

,• •

..,' ,.

Dec Hex Octal

192 193 194 195 196 197 188 199 200 201 202 203

204 205 205 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233

234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255

co Cl C2

C3 C4

cs CB C7

C8 C9 CA CB

cc CD CE CF DO DI

02 D3 D4 DS D6 D7 DB D9 DA DB DC DD DE DF EO El E2 E3 E4 ES E6 E7 EB E9 EA EB EC ED EE EF FD Fl F2

F3 F4 F5 F6 F7 F6 F9 FA FB FC FD FE FF

300 301

302 303 304 305 306 307 310 311 312 313 314 315 316 317

320 321 322 323 324 325 326 327 330 331 332

333 334 335 335 337 340 341 342 343

344 345 346 347 350 351 352 353

354 355 356 357 350 351 362

363 354 365 356 367 370 371 372 373 374 375 376 377

1111 1 11011010 11011011 11011100 11011101 11011110 11011111 11100000 11100001 11100010 11100011 11100100 11100101 11100110 11100111 11101000 11101001 11101010 11101011 11101100 11101101 11101110 11101111

. "

E

mu 1111 Phi lhela

1111 0000 1111 0001 11110010 11110011 1111 0100 11110101 11110110 11110111 11111000 11111001 11111010 11111011 11111100 11111101 11111110 11111111

(Con~nued)

Section 1: General Information

1-22 1.22. IBM ASCII Character Set (can1/nued)

Note:

The llne-clrawlng characters are given arbltraiy names In this tabSe In this manner: the laflmoal companent ls named first, followed by the word •10,• 1o11owec1 by the rightmost component. Thus, Hwe were naming the upper-left comer ol a slngle-Hne box, It would be •1 to 1 upper left .• If Iha left side ol the box were double lined, It would be "2 to 1 upper left:

Source:

IBM PCJXTTedlnlcal Reference, pages C-12, 13 IBM XT and Portable Technlcal Reference, pages 7•3 through 7-12.

SeeAlao:

1.21. ASCII Character

set

1.23. IBM Keyboard Extended Function Codes 7.012. PC 83-Key Keyboard Numbers and Scan Codes 7.013. AT 84-Key Keyboard Numbers and Scan Codes 7.014. AT 101/102-Key Keyboard Numbers and Scan Codes 7.015. PS/2 Keyboard Numbers and Scan Codes

1.23. IBM KEYBOARD EXTENDED FUNCTION CODES Dec Hex Octal 001 1 01 03 003 3 016 14 OE OF 017 15 16 10 020 021 17 11 18 12 022 13 19 023 14 024 20 21 15 025 22 16 026 23 17 027 24 18 030 19 031 25 26 1A 032 27 1B 033 IC 28 034 30 IE 036 31 IF 037 32 20 040 33 21 041 34 22 042 35 23 043 24 36 044 37 25 045 38 26 046 27 39 047 40 28 050 41 051 29 43 2B 053 44 2C 054 45 20 055 46 2E 056 47 2F 057 46 30 060 49 31 061 so 32 062 51 33 063 52 34 064 53 35 065 55 37 067 59 3B 073 60 3C 074 61 30 075 62 3E 076 3F 63 077 64 40 100 65 41 101 66 42 102 67 43 103 68 44 104

Actual Kevs Pressed Alt+Esc Null character none Alt + Backsnace Shift Tab Alt,O Alt,W Alt•E Alt,R Alt,T Alt,Y Alt,U Alt•I Alt+O Alt,P Alt• Alt•

Alt+Enter Alt,A Alt,S Alt+D Alt,F Alt+G Alt+H Alt•J Alt,K Alt•l 11 01000 01001 01011 01100 01101 01110 01111

1 0000 10001 1 0010 10011 10100

0101 0111 1011 1100 1101 1110 1111 0000 0001

All+·• Ah+·•

Alt+·· Alt•\ Alt•Z Alt•X All+C Alt,V Alt,B Alt+N Alt•M Alt• Alt•. Alt, Alt• F1 F2 F3 F4 FS F6 F7

0010 F8 0011 F9

0100 FIO

asterisk

Dec Hex octal 71 107 72 110 46 73 '8 111 113 75 48 76 4C 77 40 115 76 4E 118 4F 117 79 120 60 80 121 81 51 62 52 122 63 53 123 124 84 54 66 55 125 68 56 128 67 57 127 68 58 130 131 69 58 90 SA 132 91 133 SB 92 SC 134 135 93 50 94 SE 136 95 SF 137 140 96 60 97 141 81 98 62 142 143 99 63 100 64 144 101 145 66 102 68 146 103 67 147 104 68 150 105 69 151 106 6A 152 107 8B 153 108 8C 154 109 60 155 110 6E 186 111 6F 157 112 70 160 113 71 161 114 72 162 115 73 163 118 74 184 117 165 75 118 76 168 119 77 167 120 78 170 121 79 171 122 7A 172

"

,,.

8/narv Actual Kew: Pressed 0100 0111 Home

·--~ 01001000 IUOlffOW

01001011 01001100 01001101 01001110 01001111 01010000 01010001

01010010 01010011 01010100 01010101 01010110 01010111 01011000

us

Insert O~olt Shifl+F1 Shift+F2 Shift+F3 Shm+F4 Shift+FS Shift+F6 Shifl+F7 Shift+F8 Shift+F9 Shifl+F10 Control+F1 Control+F2 Control+F3 Control+~ Control+FS Control+F6 Control+F7 Control+F8 Control+F9 Control+F10 Alt+F1 All+F2 Alt+F3 Alt+F4 All+FS Alt+F6 Alt•F7 All+F8 Alt+F9

01011001 01011010 01011011 01011100 01011101 01011110 01011111 01100000 01100001 01100010 01100011 01100100 01100101 01100110 01100111 01101000 01101001 01101010 01101011 01101100 01101101 01101110 01101111 0111 0000 01110001 01110010 Control+ Alt•F1~~ 01110011 Conln>I• 0111 0100 Control+ 01110101 Control+ o,,1011oa• ..Dn 01110111 +Home 01111000 row 1 01111001 + UDDll'fOW 2 01111010 AN+ un11errow 3

(ConUnued}

Commn11 Dara Formats

1-23

r.23. IBM Keyboard Extended Function Codes (continued}

Dec 123 124 125 126 127 126 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143

He• Octal Bina 173 01111011 78 174 01111100 7C 175 01111101 7D 7E 176 01111110 7F m 01111111 60 200 1D000000 1000 0001 B1 201 202 10000010 62 63 203 10000011 64 204 10000100 65 205 10000101 10000110 B6 206 10000111 67 207 210 10001000 88 211 10001001 89 212 10001010 6A 10001011 6B 213 214 10001100 BC 8D 215 10001101 8E 216 10001110 BF 217 10001111

Dec He• Octal 144 90 220 145 91 221 146 92 222 147 93 223 14B 94 224 149 95 225 150 96 226 151 97 227 152 96 230 153 99 231 155 9B 233 157 9D 235 9F 159 237 160 AfJ 240 161 Al 241 162 A2 242 163 A3 243 164 A4 244 165 A5 245 166 AfJ 246

•An+ : Is fisted only In IBM Technical Reference Personal Computer XT and Portable Personal Computer. The technlcal reference llsts only one function for all three codes.

Note:

Extended codes are preceded by a byte of OOH. For example, OOH, 81 H means Alt and Zero were held down.

Source:

IBM PCIXT Technlcal Reference, page 2-14 IBM XT and Portable Technical Reference, pages 4-39 through 4-40.

See Also:

1.21. ASCII Character Set 1.22. IBM ASCII Character Set 7.012. PC 83-Key Keyboard Numbers and Scan Codes 7.013. AT 84-Key Keyboard Numbers and Scan Codes 7.014. AT 101/102-Key Keyboard Numbers and Scan Codes 7.015. PS/2 Keyboard Numbers and Scan Codes

1-24

Sectio11 1: General /11/ornration

1.24. LINE DRAWING CHARACTER SET 218

r

196

194

T

,

191

201

203

187

Ii

ff

;i

JL ,r

~1185

1791

+

195~

197

L

213

F

205

204

I~

206

J

193

217

200

:!.!: 202

188

209

184

214

210

183

1T

TI

.L

192

+so

= ;:

I!:

rr

=i

:!I

18611 198~

:f:

~181

1991•

216

I:

212

:!:

207

*

il1a2

215

:I

190

11 211

Notes:

Line characters can be drawn by holding down the Alt key and typing the associated three-digit number on the number pad

Source:

IBM PC/XT Technical Reference, page C-13

See Also: 1.22. IBM ASCII Character Set

JL

208

JI 189

1-25

Cmnmml Data Formats

1.25. EBCDIC CHARACTER SET Name Character Dec Hex Octsf NUL 000 00 0 SCH 01 001 1 STX 002 02 2 ETX 03 003 3 SEL 04 00< HT 005 5 05 RNL 06 006 6 DEL 07 007 7 010 GE 08 8 SPS 011 09 012 APT 10 0A VT OB 013 11 014 1100 FF 12 oc CR 015 1101 13 OD 018 1110 so 14 OE 1111 SI 017 15 OF DLE 16 10 020 00010000 11 021 00010001 DC1 17 12 022 00010010 DC2 18 19 13 023 0001 0011 OC3 02, 0001 0100 RES/ENP 14 20 00010101 NL 21 15 025 18 BS 22 026 00010110 17 027 00010111 POC 23 24 18 030 00011000 CAN 031 00011001 EM 25 19 1A UBS 26 032 00011010 cu, 27 1B 033 00011011 IC 034 00011100 IFS 28 1D IGS 29 035 00011101 IE IRS 30 036 00011110 31 IF 037 00011111 lUsnTB 32 20 040 00100000 DS 21 041 00100001 33 sos 3' 22 042 00100010 FS 23 35 043 00100011 wus 36 24 044 00100100 BYPnNP 37 25 045 00100101 LF 36 26 046 00100110 ETB 39 27 047 00100111 ESC 28 050 00101000 SA 41 29 051 00101001 SFE ,2 2A 052 00101010 SM/SW 43 28 CSP 053 00101011 44 2C 05' 00101100 MFA 45 20 055 00101101 ENC '6 2E 056 00101110 ACK 47 2F 057 00101111 BEL 48 30 060 0011 0000 49 31 061 0011 0001 50 32 062 00110010 SYN 51 33 063 00110011 IA pp 52 064 00110100 3' 53 35 065 00110101 TAN 36 066 0011 0110 NBS 55 37 EQT 067 00110111 56 36 070 00111000 SBS 57 39 071 00111001 IT 56 3A 072 00111010 RFF 59 38 073 00111011 CU3 60 3C 074 00111100 CC< 61 30 075 00111101 NAK 62 3E 078 00111110 63 3F 077 00111111 SUB



'



.

Dae Hax Octal 100 04 85 41 101 68 42 102 87 43 103 68 44 104 89 45 105 70 '6 106 71 47 107 72 110 48 73 49 111 4A 74 112 ,e 113 75 4C 78 114 77 40 115 4E 78 118 4F 117 79 80 50 120 81 51 121 62 52 122 123 83 53 12, 04 125 85 55 68 56 126 87 57 127 ea 58 130 131 89 59 132 90 5A 133 91 58 13' 92 SC 135 93 50 136 94 SE SF 137 95 96 80 97 61 141 96 62 142 99 83 143 144 100 04 101 85 145 102 68 1'6 103 87 147 104 ea 150 105 89 151 106 6A 152 107 8B 153 108 6C 155 109 8D 110 6E 156 111 8F 157 112 70 180 113 71 161 162 72 115 73 163 104 116 74 117 75 165 ,ea 118 78 167 119 77 170 120 78 171 121 79 172 122 7A 173 123 7B 124 7C 174 175 125 70 176 126 7E 177 127 7F



.

''°

'"

"'



Name SP ASP

Chsrscter

0101 0110 0111

1000 1001

1010 1011

1100 1101 1110 1111

0000 0001 0010 0011 0100 0101 0110 1010111 01011000 01011001 01011010 01011011 01011100 01011101 01011110 01011111 01100000

01100001 01100010



.
alhpilospoc!s] +r-setsread-onlyanrlbuteotlile •r -- removes read-only attribute ol file +a-setsarchlveattribuleolfila -a -· removes archive attribute or file +s--setssystemfilaattrlbutet -s - removes system file attributet +h - sets hidden file atlributet -h -- removes hidden file attribulef Js-nrocessallsubclrectoriesto=lh BACKUP d1 :~alh)lfilospoc] d2:(iparrns] d1 -source d2 - destlnaHon /s - backs up subdirectories Im - backs up only files that have changed since las! backup la - adds files to existing backup set n:size - formats target disk; size-160, 180,320,360,720, 1.2, 1.44 ld:date- backs up files mated/modified on or after dale specified 11:time - backs up files created/modified on al or after lime specified 11.J:rd:lrnathlfle-1 - laces backoo IM in file sMcified BREAK ONOF~ CHCP [number) number• a valid code n11ne defined bv COUNTRY in CONFIG.SYS CHOIR (d:]~lh) CHOIR)..] CD[d:)(J>alh) CD[..) •. -mrentdlrectoN CHKDSK (d:))lpalh(lilospoc)liparms) n•· fixes errors repolted on disk /v-dlenl,..,snamesolallfilesasdiskischecked CLS COMMAND lld:)palh)lctty-dev)liparms] ctty-dev .. allows you lo specify a differenl device tor input ancl output /a:number - spacifl8S environment size, in bytes (160 lo 32,768) Ip •· keeps secondary command processor in memory le string - execulaS commands specified by string, then returns to nrlmaN command nrocessor COMP lld:~lh)lfflospec1)lld:Jpalh)lfilespec2)11parms] Id - display differences In declmalt /a •· display differences in ASCII characterst II - display number ol line where difference occurst ln=numbar- compares number of lines specifiedt /c--nPrforrnscomDRrisonraaarcllessotcaset COPY (/parms)ld:)~lh)filespec(/parms] (d:]~lh)lfilespec)liparms] /v - verllles that sectors on target disk were written correctly la .. copies ASCII ftles..., to end-of-file mark lb-copiesbinaryfilesusingsiZaolfileindirectory NOTE: first filespec Is source, second is target; mulHple files may be MNed Into a sl le file .... ~ .......i"1iM multi le sources wilh + sinn

cmctevicename

dovlcename • AUX, COM!, COM2, COM3, COM,, or CON

~lesffile-MrmsH DEL [d:)~lh~lospec[/parm) m•• nro--i.. "'rlorlodelelion (Continued)

Section 2: DOS Commands, Utilities, and Summaries

2-4 2.01. DOS COMMAND SUMMARY (oantlnued) Command

r-

FunCl/on Net Yes Ustsdlrectoryenlrlas

DIR

Int

DISKCOMP

••

No Compares contents of IWo disks

DISKCOPY

••

No Copluadlsk

Svntsx

DIR (d:Jlpalt1(flle-U/plnnaJ /p-llhowldlrectolypagtlllaUma /l(J~lb1bulfl(-llhowl flies malch'1g ,,.,bul,st /G[(:)sortorder) - control& order In which names are sortedt /s- llsts 1111 occurencea In current and subdirectonest .lb- lists Illes ona per llnet n- displays unsorted names In lowercaset /w - dlsnliivs dlrectoN In wide formal DISKCOMP (di: (d2:l)/plnna(

N-C0111J11111011~11!11sldeoldsk

/8-com..----L·flrstBsectorsDeftrack DISKCOPY (di: (d2:ll(/pann( d1-sourca

d2-tv-vertllescapylseorrectt DOSKEYt

eK1

Yes Starts resident DOS command editor

DOSSHELL' EDIT!

••••

Yes Starts DOS file manAner shell In IBM DOS Yes Starts DOS file editor

EDLIN EMM3B6t ERASE EXE2BIN"

•• ••

•• ••

Yes S!arts line-oriented DOS file editor No Enables/disables EMS for 386-equipped machines Yes Deletesspeciliedfileorfiles Yes Converts .exe files lo binary format

EXIT

int

EXPAND!

••

Yes Exits COMMAND.COM and relUms to i...... .i...usrevel iloneexlsts Yes Expands compressed DOS 5.0 file

FASTOPEN

••

No Keeps location of opened files on disk orin memory

FC'

••

Yes Compares two files or sets of tiles and shows dillertnces

/1-conlesonfu·nrstsldeoldlsk DOSKEY (/panns]lmaaonama=(leK1ll lrelnstall-- Installs new copy of COSKEY lbufslzo-slze - spec1nas DOSKEY buffer size 1256-512 bytes) /macros - displays 11st of COSKEY macros lhistory-dlsplays Isl al commands stored in memory nnsa,t or loverstrtke - s-es tvnlM mode For svnlaJC see 2.16 DOSSHELL P""'ram Startun l'Wions EDIT lld:](palh~lespec] (/parms] lb - displays editor in black and white lg - uses last screen updating for CGA monitors 1h - displays maxlmoo, Unes possible for current monitor /nohl - enables 8-color monitors to be used EDLIN (d:](palh~lespoc (lb] Jb-lanoreelllkl-filemarker EMM386 (onlofllauto)lw-onlo~ ~-palh] w - enables or disables Weitek coprocessor support v - sDl!dlies location of EMM386.EXE file ERASE (d:](palh]llespecf/parm] ID-nmmotsDriorlodeletion" EXE2BIN (d:](palh]filespoc1 (d:]lpathJp;1espec2J filespec1 -lnputfile lilesMr.? - 01itn11t file EXIT

EXPAND (d:](palh]filespoc1 lld:](palh)files,oec2(.. ,D destination filespoc1 - first file to e,pand filespoc2 - second file to e,cpand destination•· drive or files,_ lor emended files or file FASTOPEN d:(•numbe~lesJ...(/panms] FASTOPEN d:(•(numbe~les,nu-.oenls))... (/parms] FASTOPEN d:(•Unurnberlies],numbereK1enls)] ... (/panns] Ix- al&AH file cache In e-A•ded memON FC (/parmsHd:]tpalh~lespoc1 (d:)lpath]t;iespec2 la- abbreviates ASCII outpul comparison Jb-forcesbinarycomparlson(precludesother/parms) case ol leHelS IL- compares In ASCH mode /Lb number - sets line butler to number of lines In - displays line number In ASCII comparisons II. - doesn1 expand tabs to spaces 1w - compresses white space In comparison /number- saecilles number of lines Iha! must match after difference FDISK FIND (/parms] 'siring' [d:](palh]!Hespecf...D /c .. displays number ol lines that contain a match 11 - specffles search Is not case senshivet tn - numbers lines Iv·· dl1t1la111 all lines no! contalnloo slrina

le-~-

FDISK FIND

••••

No Creates or chaMes disk l'llllrtitions Yes Searches lor a siring ol lext In a file orsetolfiles

(Continued)

2-5

DOS Commands 2.01. DOS COMMAND SUMMARY (conllnued)

Command FORMAT

r~ ext

Fi Not No Formall dlIk for use

FORMAT d:(/plrms) t1--formalldlakuIlnglellded /4 -formlll disk u s.2s•, 360K, double-sided In 1.2MB drive 18 - lorm118 8 sedo11 per track lb - lorrn118 disk leavlng space for optl'allng syslem Is - formals disk and copies operallng systems files lq FAT and ra01 dlreclory ol prev formatted diskt /u-uncondlllonalformlf(desl,oyallolddala)t i1:tracks-lormalsdsktonumberoftracksspecified tn:sectors- lormals disk to number of sectors specified IV:llbal-wrlltsvoklmelabelondlsk It.size- .......iflesdlsk slza f160 1B0.320 3607201.21.44l

-delete•

GRAFTABL

·~

Vos Loadsapec:lal-dlfelnto memoiy

GRAPHICS

ext

Vos Selasystemtopri,tgraphlc~B!'lays when using a color or ~aphlcs monllor edepler

HELPt JOIN KEYB

LABEL LOADFIXI LOADHIGHt ILH MEM'

ext ext

.~ ext

.~ Int

Yes Provides onllne Info about command No Logical~ connects ctlves

v..

Loads replacement keyboard driver lfspecifl8d,ordil9layscurrantsening

No cre-•or sva••-label Ensures that a program is loaded above the first 64K ol conventlonal memorv Yes Loadsnmnrarnln m Yes Dliplays amount of used & free memory

MIRROR!

ed

Vas Starts MIRROR, which records dsk inlo

MKDIR MD MODE

·~

YH Createsl\Aldl Yes Selaprlrrterr,poclficalioro

Int

Repor!adevk:e-• Selavldoodlsplaymode

GRAFTABL(,..mber) GRAFTABL ISTA(TUS) GRAFTABL[?J number • 437 850 860 863 or BAA GRAPHICS type (proli~) (lparms) type• COLOll1, COLOR4, COLORS, GRAPHICS, GRAPHICSWIDE, THERMA~ HPDEFAULTt, DESKJETt, LASERJETt, LASERJETllt, PAJNTJETt, CUIETJETt, CUIETJETPLUSt, RUGGEWRITERt, RUGGEDWRITERWIDEt, THINKJETt profile•filecontalninglnfoonsupportedp,inters(graphics.proJ lb - prints background In color /led - prints using LCD aspect ratio /prirtbox:ld-selectsprlnlboxsiZe;idmustmalchprofile h - nrlnlS black and white HELP commana1 JOIN (d1: )d2:p,lh) JOIN d: ,o· ttci disconnect a Drevlous JOIN\ KEY8{xxj,)yyyJ,)d:)lpalh~~-llllplrms) IX • keyboard code YYY•codepage le - specifies enhanoed keyboard is installedt 863 or865 L

parameters]

LOAOHIGH d:Unathllile ramelers MEM [/PROGRAM) (displays programs loaded in memory) MEM [/CLASSIFY] (displays slalus of programs in conv and upper mem) MEM fJOEBUGI ldisolavs Droorammino Information and Drooram} MIRROR )d:[..,ll/1) [/ldrive[•ontnas)[...D MIRROR)/u) MIRROR)lparln) /ldrive(-enlrles) •• loads TSR deletion-tracking program /1 - retains only latesl Info abCN.11 disk /u--unloadsdelelion-trackingprogram ,.,,,"" - saves nartllion Information MKOIR d:ll'lfl!h MODE LPT'l:Jc)).)l,rD MODE LPT#{cols-c(linN•Q[re1ry.r) c-11.1mber ol characters per line (BO or 132) I - vertical spacing (6 or BNnes per Inch) •- p,inter number r - retry action (E=error, EM>usy, R-ready, none-no retry) MODE )devico)IISTA[TUSD MODEdlsplay,n MODE)dl'f)loiJ,shilll,teSI) MODE con(:)[co~•mJlne,.n) MODE )n),m(,TJ (DOS 3.3 and oallor) n - number of lines on display (25, 43, or 50) m-characlers per Nne (40 0180) Shilt- L far shllt left or Rfar Shilt rlghl (CGA on~) dlsplaV - 40, 80, BW40, BWS0, CO40, 0080, MONO test-allonmantdllfflla

(Continued)

Section 2: DOS Commands, Utilities, and Summaries

2-6 2.01. DOS COMMAND SUMMARY (conUnusd/ Command

T1

Net

s

Function

MODE COMlf:)~.fpl,Jdl,J•LrJID MODE COMI baud-11(~-IPIIHY-PIN!ty•~ b-1111 two d~Hs of baud rate (IBM IOUIC8 lfflfllles el ~Hs required)

d-numberoldalablls(5,6, 7,or8) t-aayr,cronau1pa,t(1,2,3or4) p- pe1lly of N (none), O (odd), E '""''• M(mlllk), S (Spece)

s-numberolstopblts(1, 1.5,or2)

r-N11ylldm(E-enor,ll-bu&y,R...ady,....,_Nlfy) MODE LPTlf:J•COMI

t-portnumber(1,2.3,orC)

Prepares code pages Prepares coda pages

selects or activates coda pagn Olsplays acllve code page Refreshes acode page MORE

ext

Yes Pipes paged data from sklin to stdout

NLSFUNC PATH

ext Int

Yes Provides extended count su Yes Sets seard't palh for commands

PAINT

ext

Yes Putsselecledfileslnprinlqueue

PROMPT

int

Yes Sets new DOS prompt

OBASICt

ext

Yes StartsOBaslc

RECOVER RENAME (REN)

ext int

No Recovers files from delectlve disk Yes Renames a file

REPLACE

ext

Yes Replaces matching tiles on target

RESTORE

ext

Yes Restores tiles that were backed up using the DOS BACKUP command

AMDIA AO SELECT< SET

Int ext Int

Yes Deletes a subdl from disk Yes Installs DOS on new disk Yes se11 one string of characters In the environment ualtoanotherslrln

MOOE am[:) rate•r delay-cl d--repemdelay(H, ~qUotlersof ~ r-typemallclnvertaldrne(1-32) MOOE device CODEPAGE PAEP[AREJ•ll--------------
---------------< ,_____________, OTA !Drive# and OIRENTRY structure¥

61>0-diractory entry found; FFH:entry not found. tMust be unchanged FCB used previously with function 11 H or function 12H. See 3.174. EXTENOEOFCB Structure and EXTHEADER Structure and 3.175. FCB Structure (Opened). ¥SH 3.172. DIRENTRY Structure and 3.174. EXTENOEOFCB Structure and EXTHEADER Structure.

Note:

Superseded by function 4FH.

Source:

IBM DOS 3.3 Technical Reference, pages 6-72 through 6-73 IBM DOS 4.0 Technical Reference, pages B-32 through B-33 Microsoft MS-DOS 4.0 Programmer's Reference, pages 91 through 92 Microsoft MS-DOS 5.0 Programmer's Reference, pages 230 through 231

S.1Alao:

3.033. INT 21 H, AH:11 H •• Find First File with FCB 3.130. INT 21H, AH=4EH •• Find First File 3.131. INT 21H,AH:4FH -- Find Next File

3.172. DIAENTAY Structure 3.174. EXTENOEDFCB Structure and EXTHEAOER Structure 3.175. FCB Structure {Opened) 3.176. FCB Structure {Unopened)

Section 3: DOS Function Calls and Support Tables

3-28

3.035. INT 21H, AH=13H •• DELETE FILE WITH FCB Upon Retum from Function

Prior to C.lllng Funt:llon H' h

AX

Low

13H

AX

g t:;;::~:;::;::::::::t::::;;;;;;;;:::~ inter uno enad FCB¥

DX Offset of

to

I

High

Low

Status•

~ ~~====================t:'.::::::::'.'.:~:'.'.'.:'.'.::::::j:::::

!: 1~::::::::::::::::::::j !:1~:::::::::::::::::::::=1 :::::::::::::::::::::::::: ~-

~:.t:::::::::::::::::::::::::l cs .:;:::::::;;:::.:;::::::::::::::;:;;;;;;;;;:::i DS Se ment ol oinler to uno ened FCB¥ :~ t:::::::::::::::::::::::::l

IP,__ _ _ _ _ _ _ _ _ __,

~~~:::::::::::::::::::::~

~i 1~:::::::::::::::::::::j

ltQO:at least one matching file found and deleted; FFH=no matching files found. ¥See 3.175. FCB Structure (Opened). Note:

• Requires delete accns right& on networks. • Superseded by function 41H.

Source:

IBM DOS 3.3 Technical Reference, page 6-74 IBM DOS 4.0 Technical Reference, page 8-34 Microsoft MS-DOS 4.0 Programmer's Reference, pages 93 through 94 Microsoft MS-DOS 5.0 Programmer's Reference, page 232

See Aleo:

3.073. 3.080. 3.175. 3.176.

INT 21 H, AH.,3AH •• Remove Directory INT 21H, AH~1H •• Delete File FCB Slnlc1ure (Opened) FCB Structure (Unopened)

3.036. INT 21H, AH=14H - SEQUENTIAL READ Prior to Cal/Ing Function Hi h

AX

Upon Return from Function Low

14H

g1------+-----~

High

Low

~ l1------+--s_•·_·"_··---l

DX Offset of ointer to o ened FCB¥

1-J------------l

~1: 11------------1

IP ; : : : : : : : : : : : : : : : : : : : : : : ]

~1------------1

~~~=====================~

~ii,____________,

~1:

~ tas=m=o:::n1"o1=0;::in;:::te'"1o,,..,.o=ne~d~F~c=BY~~ ,

~: t:::::::::::::::::::::j

o~c:::::::::::::::::::::J

OTA !One record of data (size=record size)

~successful read; 1=end of file; 2=DTA too small; 3=partial record read. ¥See 3.175. FCB Structure (Opened).

3-29

INT 2/H Fur,cti-l---tF_H__+ - - - - - - - 1

Slatus•

BX Offset of ointer to DPB structure

~l-------+---------1

~i

11--------------1

~=1-------------1

~=1--------------1

il-1--------------1

:: 1--------------1

cs>c---------------
=--------------< inter to ro ram name

g:

ES Se ment of ointer to arametar block

:: >---acg~::~::o=:~~- + - - - - - - -
-~D-•s-tr_o_e_d_ ~ - - - - - -
10ft MS-DOS 5.0 Programmer's Reference, page 335

S11Al10:

3.061. INT 21H, AH=31H-- Keep Program 3.124. INT 21H, AH=4BH, AL=0OH •• Load and Execute ?rogram 3.125. INT21H, AH=4BH, AL=01H •• Load Program

3.126. INT 21H, AH=4BH, AL=03H •• Load Overlay 3.142. INT 21H, AH=56H •• Get Extended Error 3.191. ERROR Structure and Error Code Values

3.162. EXECSTATE Structure 3.195. LOADOVERLAY Structure

Section 3: DOS Function Calls and Support Tables

3-86

~~,, ~,

3.128. INT 21H, AH=4CH - END PROGRAM Upon Retum from FuncUon

Prior to C.lllng Fundlon

Low Ratumcode

High 4CH

Function retums no values. Functions performs the following: - Fluahea file buffers. - Restores termination handler address from PSP:OOOAH. • Restores Ctrl+C exit address from PSP:OO0EH. - Restores critical error handler address from PSP:0012H. • Frees memory owned by terminating process.

IP Rags

Veralon:

Applies to all versions of DOS beginning wfl:h 2.0.

Note:

• All open files are dosed by this function. • You must remove all file-sharing locks issued by process before calling this function.

Source:

IBM DOS 3.3 Technical Reference, page 6-200 IBM DOS 4.0 Technical Reference, page B-105 Microsoft MS-DOS 4.0 Programmer's Reference, pages 237 through 238 Microsoft MS-DOS 5.0 Programmer's Reference, page 336

See Aleo:

3.061. INT 21 H, AH=31 H -- Keep Program 3.129. INT 21 H, AH=4DH -- Get Child-Program Retum Value

3.129. INT 21 H, AH=4DH •• GET CHILD-PROGRAM RETURN VALUE Prior to Calling Function

Upon Retum from Function H" h

Low

High

AX Termination meth~

it-1--•-D_H__

Low Return value

+------
-1------------1

~:>-1------~c~~-rv-n~a~a•~~

~! ,-----------; .

3-93

INT 2/H Fu,rctimr.'i 6'C8"Y flag 1et If error occura. tAllocatlon 11ralegy valuea: OOsfirst fll low (default) 01 =best fit low 02=1asl fil low 40=first lit high only 41 =best lit high only 42slasl fd high only 80=fil"lt fit high 81 =best flt high 82=1ast fil high

Veralon:

Appliea to all verslo,- of DOS beginning with 3.0.

Source:

Microsoft MS-DOS 3.2 Programmer's Reference, page 1-214 Microsoft MS-DOS 4.0 Programmer's Reference, pages 252 through 253 Microsoft MS-DOS 5.0 Programmer's Reference, pages 348 through 349 Not documented in IBM DOS 3.3 or 4.0 Technical Reference

SH Also:

3.121. 3.123. 3.142. 3.191. 3.197.

INT 21H, AH=48H--Allocate Memory INT 21H, AH=4AH-- Set Memory Size Block INT21H, AH=59H •• Gel Extended Error ERROR Structure and Error Code Values Memory Allocation Strategies

3.140. INT 21H, AH=SBH, AL=02H-GET UPPER MEMORY LINK Prior to c,1un1 FuncUon High

Upon Return from Function Low

~,,__ _se_H_ _.....__ _ _ 02_H_ __.

SP,__ _ _ _ _ _ _ _ _ _ ____,

s:, ~-------------1

DI'-------------' IP 1-----------------1 llsgs ,.___ _ _ _ _ _ _ _ _ ___.

i~

------------l

~I

High

SP SP SI DI

1111::1 cs DS ss ES

*Carry flag set if error occurs. t01 =upper memory area linked and no error; otherwise OOH.

Version:

Low 00or01t

Applies to all versions of DOS beginning with 5.0.

Source:

Microsoft MS-DOS 5.0 Programmer's Reference, page 350

SH Al10:

3.141. INT21H, AH=58H, AL=03H •• Set Upper Memory Link

Carry flag*

3-94

Section 3: DOS Function Calls and Support Tables

3.141. INT 21H, AH=SBH, AL=03H •• SET UPPER MEMORY LINK Prior to Cal/Ing Function

BX1-____ ~

-i

Upon R•tum from Function

AXIr:::::'.~~f;fj~t::;:;:;::;;::;:::j~~ow;' ;H:::::i _.Liw"nko,n"'a"'gt,.____

H" AX Error code if car

~ ~::::::::::::::::::::::~

:~ ~::::::::::::::::::::::~-l

1

I

~: :~-==--==--==--==--==--==--==--==--==--==--==--I~ IP

1----------------1-------------1 ~1

lcarry flag set on error

"See 4.051. INT 13H, Disk System Status Byte Layout

tFor fixed drives: CHseyllndar number (low 8 bits of 10-blt cyllnder number) CL-cyllndar/sector number Bits 6, 7 • cylinder number (high 2 bits) Bits 0-5 - sector number §Bit 7-0 for floppy drive, 1 tor fixed drive ¥Not required tor AT BIOS after 11/15185, or for XT286, Convertlble, PS/1, or PS/2 Version:

Applies to all PC models beginning with XT.

Note:

Only value In DL Is checked for an appropriate value.

Source:

IBM PS/2 and PC BIOS Interface Technlcal Reference, pages 2-51 and 2-61 BIOS Interface Technical Reference for PS/1 Computer, pages 2·31 through 2-32 and 2-40 System BIOS for IBM PC/XT/AT Computers and Compatibles (Phoenix), page 290 and 333

See Also:

4.001. BIOS Services Summary 4.051. INT 13H, Disk System Status Byte Layout 4.052. INT 13H, AH-02H -- Read Disk

Section 4: BIOS and DOS Exte11sion Calls and Support Tables

4-40

4.055. INT 13H, AH:05H •• FORMAT CYLINDER Prior to l•sulng INT 13H

Hh OSH BX Offset of olnter to 4CX C llnder number DX Head numb r

Upon Rerum """'INT 1'H Low

AX

e

sl:1· ~ ~===::::::====t==========::::

AXI

~==========='.:==========:::

:~f-~=--==--==--==--==--==--==--==--==--==--==--=~-I SI

DI~----------~

g; !-------------< ss 1-e-------~~~-~=-< e address fleld¥

ES Se ment DI olnter to 4-

ns:: lcarrv flag sat an ,rra, ~1-------------1 ~~ t-------------1

'See 4.051. INT 13H, Disk System Status Byte Layout tFor fixed drives: CH-cyllnder number (low 8 bits of 1O-blt cyllnder number) CL-cyllnder/sector number Bits 6,7 • cylinder number (high 2 bits) Bits 0-5 • sector number §Bit 7•0 for floppy drive, 1 for fixed drive ¥Address lleld (applies to PC/XT 286, AT, PS/1, and PS/2 only):

8 e Meanl 1 C lindar number 2 Head number 3 4

Allowable Values

Sector number Number es/sector 0=128 1=,256 2=512 3=1024

11For floppy drives only; Interleave value for PCIXT; not used for other models Version:

Applies to all PC models beginning with XT.

Note:

Only value In DL Is checked for an appropriate value.

Source:

IBM P$/2 and PC BIOS Interface Technical Reference, pages 2·511hrough 2·52 and 2·62 BIOS Interface Technlcal Reference for PS/1 Computer, page 2·32 and 2•40 System BIOS ror IBM PC/XT/AT Computers and Compatlbles (Phoenix), page 291 through 292 and 334

See Also:

4.001. BIOS Services Summary 4.051. INT 13H, Disk System Status Byte Layout 4.056. INT 13H, AH•06H •· Format Cyllnder Set Bad Sector Flags 4.057. INT 13H, AH,,.07H •• Format Drive Starting at Cylinder

4-41

INT /3H-Disk Sel'\'ices

4.056. INT 13H, AH:06H -- FORMAT CYLINDER SET BAD SECTOR FLAGS Upon Relum from INT 13H

Prior to IHulng INT 13H

Low

,-_ _H'!!!!!/h'!------,---;:~L~ow:.'::::=---, AX f-----"06,oH.,__-+-~ln=rtea=ve~-----1 ~ f-~lln-d-er_n_u_m-be-,-+~s-e~cto-,-•-um~b~e~--t DX t:'.'.lHiieiied:;".niliuiiimiiiiier'.'.::!:jo~rlilvi'.etnu;;m~biie~:::J

AXI ~:~~:::::::::::::t:::::::::::~

;:::::::::::::::::::::::::::i

~ f-------------l

SP

s:, ~:::::::::::::::::::::::::::

~:f-------------l

DI~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::~

n! t:::::::::::::::::::::::::::! n! I

Ii

carry flag set on error

=======================:i

r:I

ss ~=--==--==--==--==--==--==--==--==--==--==--==--l~ g~IES

~-----------.J

"Seo 4.051. INT 13H, Disk System Status Byte Layout tFor fixed drives: CH-cylinder number (low 8 bits of 10-blt cylinder number) CL-cyllndertsector number Bits 6,7. cylinder number {high 2 bits) Bits 0·5 - sector number §Bit 7,1 for fixed drtve Version:

Applies to all PCs with fixed disk drives or ESDl-type devices.

Note:

Only value In DL Is checked for an appropriate value.

Source:

IBM PS/2 and PC BIOS Interface Technical Reference, page 2-63 BIOS Interface Technlcal Reference for PS/1 Computer, page 2-41 System BIOS for IBM Pcnrr/AT Computers and Compatibles (Phoenix), page 336

See Also:

4.001. 4.051. 4.055. 4.057.

BIOS Services Summary INT 13H, Disk System Status Byte Layout INT 13H, AH,05H •• Formal Cylinder INT 13H, AH=07H -- Format Drive Starting at Cylinder

4-42

Section 4: BIOS and DOS Extension Calls and Support Tables

4.057. INT 13H, AH:07H •• FORMAT DRIVE STARTING AT CYLINDER Prior to /au/ng INT 13H

Upon Rotum from INT 13H

g r.c=nn""d"'er"n""um"'b:-:ec-,-t----;;-se"ct"o"'rn=m""be=--t

I g~:::::::::::t::::::::::=1

SP~:::::::::::::::::::::::~

:i, ~,:::::::::::::::::::::::::j

Low

H h

AX DX

lnterteava

7H

Head numb r

Drive numbe

High Status•

AX

s:, ~'-=--==--==--==--==--==--==--==--==--==--==--=~~ fl.; f - - - - - - - - - - - - - - t na: lcanv

Lqw

DI

cs .:::::::::::::::::::::::~

~: 1--------------1

i ~,:::::::::::::::::::::::::j flag set on error

ES ~ - - - - - - - - - - - ~ •see 4.051. INT 13H, Disk System Status Byte Layout tFor fixed drives: CH-cyllnder number (low 8 bits of 10-bh cyllnder number) CL=cyllnder/sector number Bits 6,7 • cylinder number (high 2 bits) Bits 0-5 • sector number §Bit 1-1

tor fixed drive

Version:

Applies to all PC models with hard disks or ESDl-type devices.

Note:

Only value In DL Is checked for an appropriate value.

Source:

IBM PS/2 and PC BIOS Interface Technical Reference, pages 2-63 through 2-64 BIOS Interface Technlcal Reference tor PS/1 Computer, page 2-41 System BIOS tor IBM PC/XT/AT Computers and Compatibles (Phoenix), page 337 DOS Programmer's Reference 2nd Edition (Que), page 454

See Also:

4.001. BIOS Services Summary 4.051. INT 13H, Disk System Status Byte Layout 4.055. INT 13H, AH•0SH -- Format Cyllnder 4.056. INT 13H, AH.,06H -- Format Cylinder Set Bad Sector Flags

4.058. INT 13H, AH:08H •• READ DRIVE PARAMETERS Prior to IHulng INT 13H

Upon Relum from INT t3H

Low 7:g~ foe; 1~:::::'.'.'.'.'.:'.::::::t::::::::::=: .,., .

SP

Drive number"

Low

: ,-~===-~-~o~r1ve--.~---
le

4-52

Section 4: BIOS and DOS Extension Calls and Support Tables

4.075. INT 13H, MEDIA DESCRIPTOR TABLE Len B B B B

Offset

0 0 11

2 2 3 3

••

5 5 6 6

Allowable Va

th e e e

0"'128 1•256 2•512 3-1024

B e B

B e B e B e B e

7 7 8 8 9 A 10

Ver1lon:

Applies to all PC models beginning with XT dated 1/10/86.

Note:

Sometimes referred to as MPT (Media Parameter Table).

Source:

IBM PS/2 and PC BIOS Interface Technical Reference, page 3·26 BIOS Interface Technical Reference for PS/1 Computer, page 3-1 B

See Also:

4.074. INT 13H, AHa18H •• Set Media Type tor Format

4.076. INT 13H, AH=19H -- PARK HEADS Upon /lotum from INT 13H

Prior to Issuing INT 13H

Hiqh

Low

:DB~X ~ - - - 1 9 - H - - - + - - - - - - i .

Drivet

:~ t-------------1 g:t-------------1 n.:;1-------------1

g: t-------------1 :~ 1--------------1

High

AXI

Low

Status•

g~ ~:::::::::::t::::::::::=1 ~:::::::::::'.::::::::::::::

:l: 1-l------------1 ~ Icarry flag set on error g~ t-------------1

:~ t::::::::::::::::::::::j

•see 4.051. INT 13H, Disk System Status Byte Layout to-based; bit 7,.,1 for fixed drive (PS/1 and PS/2 only) Version:

Applies to AT, XT, XT286, PS/1, and PS/2.

Source:

IBM PS/2 and PC BIOS Interface Technlcal Reference, page 2-67 BIOS Interface Technical Reference for f>S/1 Computer, page 2-44

See Also:

4.001. BIOS Services Summary 4.051. INT 13H, Disk System Status Byte Layout

INT /3H-D;.r;k Srn·ice.r;

4-53

4.077. INT 13H, AH,,1AH - FORMAT UNIT Prior to I. .utng INT 13H

Upon Return from INT 13H

H h Low AX 1AH Detect table counr BX Offset of oln r 10 defect table

g:

t:::::::::::t::M'.'.'.o'.'.)t~l~~~~ilbr'.lls'.:'.:::::J

SP

;:::::::::::::::::::::::::::i

Interrupt returns no values.

s:,~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::1--1 DI ~ : : : : : : : : : : : : : : : : : : : : : : : ~

"·= t:::::::::::::::::::::::::l cs;::::::::::::::::::::::::~

~: t::::::;:::;::::::;::;::::;::;::::::~ Inter to defec table

ES Se ment of

•o=no defect table used; >0 means use defect table. tSee 4.078. INT 13H, Formal Unit Modifier Bits §0-based; bit 7-1 for fixed drives

Version:

Applies to all PC models beginning with XT.

Note:

Defect table consists of relallve block addresses of defective sectors.

Source:

IBM PS/2 and PC BIOS Interface Technlcal Reference, pages 2-67 through 2·68

See Also:

4.001. BIOS Services Summary 4.078. INT 13H, Format Unit Modifier Bits

4.078. INT 13H, FORMAT UNIT MODIFIER BITS Bit Number 5-7

Allowable Values Must be o 1:ON 0:OFF 1= erform 0=don't erform 1-u date 0a:don't u date 1=I nore It 0=use It 1=1 nore It 0=use 11

Source:

IBM PS/2 and PC BIOS Interface Technlcal Reference, page 2-68

See Also:

4.077. INT 13H, AH•1AH-- Format Unit

4-54

Secrio11 4: BIOS and DOS Extension Calls and Support Toh/es

4.079. INT 14H, AH:00H •• INIT COMMUNICATIONS PORT Upon Retum from INT 1fH

Prior to luulng INT 14H H h ~ ~_

Low

AXr-===i,Lln~:~=:~tuii:st[:::;::JMii,od.,~e'::~~ ..,iisi,t:::i

_,,oo!!!H'-----1--'C"'o"'m"'m""'are,m,..bw,:e•~

gft:::::::::::::t:::::::::::j

ex'------'-------' DX '----"C!!!om!!!m!LIO.,n'"n,.um..,,b"'e'-r- - - - '

~-=====================: :~t::::::::::::::::::::::j :~t::::::::::::::::::::::::::j L---------------1 g:t::::::::::::::::::::::::::j or ~::::::::::::::::::::::::::'. SI

IP

L---------------1

flags ~ : : : : : : : : : : : : : : : : : : : : : : : : : : :

CS1-_ _ _ _ _ _ _ _ _ _ __,

IP

;:::::::::::::::::::::::::::::i

flags ~ : : : : : : : : : : : : : : : : : : : : : : ~

f:~------------1 g:~:::::::::::::::::::::::::j ES ' - - - - - - - - - - - - - '

:~t::::::::::::::::::::::::::j

•see 4.081. INT 14H, COM Port Parameter Byte tSee 4.080. INT 14H, Modem and Une Status Byte Version:

• Applies to all PC models. • Early PCs and XTs support only 2 ports: later models support 4 ports.

Source:

IBM PS/2 and PC BIOS Interface Technlcal Reference, pages 2-69 through 2•70 BIOS Interface Technical Reference for PS/1 Computer, pages 2•45 through 2-46 Syslem BIOS for IBM PC/XTIAT Computers and Compatibles {Phoenix), pages 374 through 375

See Also:

4.001. BIOS Services Summary 4.080. INT 14H, Modem and Line Status Byte 4.081. INT 14H, COM Port Parameter Byte

4.080. INT 14H, MODEM AND LINE STATUS BYTE Modem Statu• Byte Bit Number

,,7 6 5 4 3 2 1 0 ,, ,, ,, ,, ,,

,,

Line Status Byte Bit Number

,, ,, ,, ,, ,, ,, ,, ,,

76543210

·unpredictable results In other bits when this bit Is set to 1 Veralon:

Applies to all PC models.

Source:

IBM P$/2 and PC BIOS Interface Technical Reference, pages 2-69 through 2-70 BIOS Interface Technical Reference for PS/1 Computer, pages 2-45 through 2-46 System BIOS for IBM PC/XT/AT Computers and Compatibles (Phoenix), pages 374 through 375

SeeAlao:

4.079. INT 14H, AH•00H -- lnlt Communications Port 4.082. INT 14H, AH-01 H •• Write Character 4.083. INT 14H, AH•02H •• Read Character 4.084. INT 14H, AH•03H -- Status Request

INT /4H-Strial Stn•ict.-.

4-55

4.081. INT 14H, COM PORT PARAMETER BYTE 7

6

..

BUNumber 4



" " "

2

,

0

Ian

De

Allowable Values

Baud rate

000-110baud 001 • 150 010 • 300 011 • 600 100. 1200 (de1ault) 101 • 2400 110-4800 111 •!HI00 00 • NO parity 01 •Odd parity 10•Noparlty 11 -Even Darltv 0-=1 stoo bit 1~ stoo bits 10•7blts 11-Bblls

Panty

" "

"" "

IODDlls

Wora,engtn

Veralon:

Applies lo all PC models.

Note:

On PS/2, baud rates higher than 9600 are set using functions 4 and 5.

Source;

IBM PS/2 and PC BIOS lnterlaoa Technical Reference, pages 2-69 lhrough 2•70 BIOS Interface Technical Reference for PS/1 computer, pages 2-45 through 2-46 System BIOS for IBM Pehrr/AT Computers and Compatibles (Phoenix), page 374

SeaAlao:

4.079. INT 14H, AH=00H -- lnh Communications Port 4.085. INT 14H, AH-04H •· Extended lnlt 4.087. INT 14H, AH-05, AL-01 H •· Write Modem Control Register

4.082. INT 14H, AH:01H •• WRITE CHARACTER Upon

Prior to 1nutn11 INT 14H

,,_,um /ram INT 14H

:

H h Low f------"0"'1Hc,__-+_ _,c,.,h,.ar,.act.,e.,_r_-l

g:

1---~c-om-m--rt~n_u_m~b-e~------1

g:1-------+----------1

~:::::::::::::::::::::::::::i

:~ 1 - - - - - - - - - - - - - - - - - 1

na::1---------------
---------------< g: >---------------
-----------------< g:>-----------------
---------------< :: >---------------
--------------t

Nags ~::::::::::::::::::::::::::::::::::::::::::::::',

g:>--------------1

i: >--------------! Version:

On XTs and ATs, INT 18H can be vectored to a -no boot device• rouane.

Note:

• Interrupt switches control to ROM BASIC. • Not documented tn IBM BIOS reference. • Invoked If no boot code found by INT 19H.

Source:

Programmer's Gulde to the IBM PC and PS/2 (Microsoft Press), page 247 System BIOS for IBM PCOCT/AT Computers and Compatibles (Phoenix), page 460

See Also:

4.001. BIOS SeNlces Summary

4.139. INT 19H- BOOTSTRAP LOADER Prior to Issuing INT 19H High

Upon Return from INT 11H Low

~f-1------+----------l

Interrupt does not return.

~£1-1----------------< IP.__ _ _ _ _ _ _ _ _ _ __,

Nag•~-----------~

il,..1----------------Note:

Interrupt reboots computer by reading cylinder O, sector 1 Into segment 0, offset 7COOH. Control ls transferred to that locatlon.

Source:

IBM PS/2 and PC BIOS Interface Technlcal Reference, page 2-113 BIOS Interlace Technlcal Reference for PS/1 Computer, page 2-73 System BIOS for IBM PCJXT/AT Computers and Compatibles (Phoenix), pages 459 through 462

See Also:

4.001. BIOS Services Summary

4-87

INT /AH-Time of Day Seniice.'i

4.140. INT 1AH, AH:00H-- READ CLOCK COUNT Prior to loOUlfl/1 INT 1AH

Upon Return from INT 1AH

AX'r:::::'.H';'.oW~~t:::::::::::::'.L'.:ow'.'.::::::::J ~I-------+--------
0•has been 24 hours or more tPhoenlx BIOS only Version:

Applies to all PC models.

Note:

Timer overflow flag Is resat to o.

Source:

IBM PS/2 and PC BIOS Interface Technical Reference, page 2-114 BIOS Interface Technical Reference for PS/1 Computer, page 2•74 System BIOS for IBM PC/XT/AT Computers and Compatibles (Phoenix), page 438

See Also:

4.001. BIOS Services Summary 4.002. BIOS Memory Usage Summary 4.141. INT 1AH. AH-01H •• Set Clock Count

4.141. INT 1AH, AH:01H -SET CLOCK COUNT Prior to laou/ng INT 1AH H h

Upon Retum from INT 1AH

I

Low

High

Low

fx t--~0~1H"-----+-------l AX OOH" g: 1-----~~,'lg~g'!!'~"'~"'~:'-------l g~l---------,1------------
----------------
m INT 61H

Prior to l•sulng INT 61H

Hi h

Low

Low

: : l-=p-.43 ~s,~~~al~lo-c-at~e~n-o-nz-e-ro~---1

:1--==~-~------t

g:1------t--------1 g: t-"'E"'M""M=""e'"h,..,an"'"d"'le,..,.W'"'A"H"=0::,-------1 :ll-1------------i IP ,__ _ _ _ _ _ _ _ _ ___,

:lt-1-----------~i

flags._ _ _ _ _ _ _ _ _ _ ___,

~ 1-------------t

-------------
- - - - - - - - - - - - - 1 ~1-------------;

•oo ..no error (otherwise see 5.185. INT 67H, Expanded Memory Manager Error Codes) tin bytes Version:

Added to EMM beginning with version 4.0.

Note:

This function Is Intended tor operating system use only.

Source:

Advanced MS-DOS Programming 2nd Ed. (Microsoft Press), page 641 MS-DOS Extensions (Microsoft Press), page 62 Expanded Memory Specification Version 4.0 (Intel), pages 3-120 through 3·121

see Also:

5.120. INT 67H, Expanded Memory Manager Functions Summary 5.185. INT 67H, Expanded Memory Manager Error Codes

5.165. INT 67H, AH:SBH, AL:03H--ALLOCATE ALTERNATE MAP REGISTER SET Upon Re/um from INT 1TH

Prior lo Issuing INT 1TH High

Low

Hi h

~ ,...,_ _ _se_H_ _-+-___93_H_ ____,

Low

~ 1--~S~ta~tu~s~•---1,A""1t='"'s-,-et"n"'u"'m""be"'r-,-or'"o,-1

g: I - - - - - - - + - - - - - - - ;

:i: 1-1-------------l

:~ 1 - - - - - - - - - - - - - - - - ;

~:1--------------;

n.:: t - - - - - - - - - - - - - - ;

~1--------------;

g~ 1-------------i

~ 1----------------;

:~ 1 - - - - - - - - - - - - - ;

:1---------------;

·oo-no error (otherwise see 5.185. INT 67H, Expanded Memory Manager Error Codes) Version:

Added to EMM beginning -

Noto:

Thi& function Is Intended for operating system use only.

Source:

Advanced MS-DOS Programming 2nd Ed. (Microsoft Press), page 641 MS-DOS Extensions (Microsoft Press), pages 62 through 63 Expanded Memory Specification Version 4.0 (Intel), pages 3-122 through 3-124

-Aleo:

5.120. INT 67H, Expanded Memory Manager Functions Summary 5.185. INT 67H, Expanded Memory Manager Error Codes

version 4.0.

LIM (lotusllntel!Microso/t) EMS (Expanded Memory Specification)

5-95

5.166. INT 67H, AH:SBH, AL:04H •• DEALLOCATE ALTERNATE MAP REGISTER SET l'rlor to ,.•ulng INT 61H H h AX BX

5BH

ex

Upon Rolvm

Low 04H Alt re set number or 0

from INT 17H

High Status•

Low

AXI ~~:::::::::::::t:::::::::::~

~i ~,::::::::::::::::::::::::::i

DX

~ii

~:::::::::::::::::::::::~

IP Nags

~1-------------l

i~,:::::::::::::::::::::::~

cs ss

DS ES

•oo-no error (otherwise see 5.185. INT 67H, Expanded Memory Manager Error Codes}

Version:

Added to EMM beginning with version 4.0.

Note:

This function Is Intended for operating system use only.

Source:

Advanced MS-DOS Programming 2nd Ed. (Microsoft Prass), page 642 MS-DOS Extensions (Microsoft Press), page 63 Expanded Memory Specification Version 4.0 (Intel), pages 3-125 through 3-126

S..Aloo:

5.120. INT 67H, Expanded Memory Manager Functions Summary 5.185. INT 67H, Expanded Memory Manager Error Codes

5.167. INT67H, AH:SBH, AL:0SH •• ALLOCATE OMA REGISTER SET Upon Return from /NT 17H

Prior IO /Hulng INT 17H High

Low

~ ,,___s_e_H_ _-+-___os_H_ __,

Hl h

:

Low

~:::::'.'.'.'.'.'.'.tu'.'.'.s•::::t;;:oM:;;A[iisetiI~nu~m~b~er~o~r:[o~

g:1------+-------1

~i 1~::::::::::::::::::::::::::: ~lt-------------t

,,a:,_____________,

ml-------------1

~1-------------1

mi::========================~

•oo-no error (otherwise see 5.185. INT 67H, Expanded Memory Manager Error Codes) tonly 11 AH•0 on ratum

Veralon:

Added to EMM beginning with version 4.0.

Note:

This function Is Intended for operating system use only.

Source:

Advanced MS-DOS Programming 2nd Ed. (Microsoft Press), page 642 MS-DOS Extensions (Microsoft Press), page 64 Expanded Memory Specification Version 4.0 (Intel), pages 3-127 through 3-128

SHAl ■o:

5.120. INT 67H, Expanded Memory Manager Functions Summary 5.185. INT 67H, Expanded Memory Manager Error Codes

Section 5: Other Interrupts, CD-ROM, Mouse, and EMS Support

5-96

5_168. INT67H, AH:SBH, AL:06H •• ENABLE DMAON ALTERNATE MAP REGISTER SET Prior to luulng INT 6TH H h 58H

AX BX

ex

Low 06H Ahm re lsterset

DX

OMA channel

Upon lllllum from INT 6TH

:::::;s[1i~:~eijs::•:::::;::::::'.L:o:w:::::::i 51-------t-----AX ~1

Bf, ~=======================:::i t-------------1

~£1

SP

DI~------------'

IP

ff.;1--------------1

flags

ii1-I------------

m

*OO=no error (otherwise see 5.185. INT 67H, Expanded Memory Manager Error Codes} Version:

Added to EMM beginning with version 4.0.

Nole:

This function Is Intended for operating system use only.

Source:

Advanced MS-DOS Programming 2nd Ed. (Microsoft Press). page 643 MS-DOS Extensions (Microsoft Press), pages 64 through 65 Expanded Memory Specification Version 4.0 (Intel), pages 3-129 through 3-131

5eeAlao:

5.120. INT 67H, Expanded Memory Manager Functions Summary 5.185. INT 67H, Expanded Memory Manager Error Codes

~,

5.169. INT 67H, AH:SBH, AL:07H •• DISABLE OMA ON ALTERNATE MAP REGISTER SET Prior to ,.suing INT 61H H h

58H

AX BX

ex

Low 07H Altm re lsterset

DX SP BP SI DI

Upon lllllum from INT 6TH

Low

High Status•

I

SP BP SI DI

11:. t - - - - - - - - - - - - - 1 ,.; t--------------1 g~

t-------------1 :~ > - - - - - - - - - - - - -
--------------< n.::

IP1------------------l

Nar,s.___ _ _ _ _ _ _ _ _ _ _ _~ ~r-==--==--==--==--==--==--==--==--==--==--==---I::'.

~ 1~::::::::::::::::::::::j

ss ...~=_-==--==--==--==--==--==--==--==--==--==--==--==----l:::: g~ ES'--------------~

•1n kllobytes

tOOOOH-error (see BL for error code); 0001 Ha-successful (handle In OX) Veralon:

XMS driver 2.0 and later

Source:

MS-DOS Extensions (Microsoft Press), pages 78 through 79 Extended Memory Specification Version 2.0 (Microsoft)

See Alao:

5.204. XMS Error Codes

Section 5: Other Interrupts, CD-ROM, Mouse, and EMS Support

5-110

5.196. AH=0AH •• FREE EXTENDED MEMORY BLOCK Upon Relum fn1m Drl.,.,

Prior to l••uln, DrlNr H h

Low

: 1-----"'0A,,_H,__-+--------l

g:

t----~EM~B,,.,.ha-n~d,.le-----
m INT 87H

I_____. ,______. .J ~D; L High DEH

AX

Low 03H

L._____. ,______. .J :iLI-----------...J A

/PL_------------1 flags L . . - - - - - - - - - - - - - '

Low AX

OOH

~ t:::::::::::::1::::::::::::j

(E)DX Number of free 4K

es

SI ti-=--==--==--==--==--==--==--==--==--==--==--==--==---lj :~ DIL.._ _ _ _ _ _ _ _ _ _ _ _....J

~

~ --==--==--==--==--==--==--==--==--==--==--==--==--=:j-

~i!'------------.. . ~i '-1--------------1 Version:

Applies to all versions of VCPI Driver beginning with 1.0.

Source:

•virtual Control Program Interface Version 1.0,• June 12, 1989, pages 7 through 8

Sae Also:

5.209. INT 67H, AH-DEH, AL-04H -- VCPI Allocate a 4K Page 5.21 O. INT 67H, AH=DEH, AL=05H -- VCPI Free a 4K Page 5.211. INT 67H, AH=DEH, AL=06H -- VCPI Get Physical Address of 4K Page In First Megabyte

5.209. INT 67H, AH:DEH, AL:04H •· VCPI ALLOCATE A 4K PAGE

i

Upon Relum fn>m INT 17H

Prior to /uu1n11 INT 17H H/qh

Low

oe_H__-+-___o_•H-----1

1 - ,_ _ _

~ l_---"!!!!!!"------1--------1

ex L . . - - - - - - - ' - - - - - - - '

(E)DX Ph slcal addr

:£1

SP . ._ -_ --_ --_ --_ -BP L ..__ _-_ _-_ _ _1 _,

L- - - - - - - - - - - - - '

IP L_ . ._ ----_ - -_ < flags L.._ _-_ _-_ _-_ .J

il-1--------------1

~: l _ - - - - - - - - - - - - - - 1 IP ..__ _ _ _ _ _ _ _ _ _ _ __, fl&gSL._ _ _ _ _ _ _ _ _ _ _ _ __,

g~ f - - - - - - - - - - - - - - - 1 :~ l _ - - - - - - - - - - - - - - 1

"Nonzero (usually 88H)-lallure to allocate, EDX modified Version:

Applies to all versions of VCPI Driver beginning with 1.0.

Source:

"Vlrtual Control Program Interface Version 1.0,• June 12, 1989, page 8

See

Alao:

5.208. INT 67H, AH=DEH, Al--03H •• VCPI Get Number of Free 4K Pages 5.210. INT 67H, AH=DEH, AIL=05H •• VCPI Free a 4K Page 5.211. INT 67H, AH•DEH, All--06H •• VCPI Get Physical Address of 4K Page In First Megabyte

\/CPI (\'irtua/ Control Program lme,face} Functions

5-117

5.210. INT 67H, AH:DEH, AL:05H -- VCPI FREE A 4K PAGE Prior 10 lnultl/1 INT 67H AX

Upon Refum from INT 67H

H h

Low

DEH

05H

BX L - - - - - - - l - - - - - - - l

cx1-------...,.l~-~--~ of 4K e free

(E}DX P slcal ddre

--....,f,H.,lq._.h _ _~ _ __,L.,o,,,wc..... _ _

AXII-~_ _s..,1a,.,tu,.s,:_"_ _- I - - - - - - - ~

:t::::::::::::t::::::::::::j ~-:::::::::::::'.:::::::::::::~

:~ ~:::::::::::::::::::::::j g: t:::::::::::::::::::::::j IP 1--------------1 flags .___ _ _ _ _ _ _ _ _ ____, •.:; t:::::::::::::::::::::::::j ::::::::::::::::::::::j :csr::::::::::::::::::::::::::J t:::::::::::::::::::::::::j ~,1-------------1

g tj

ES..__ _ _ _ _ _ _ _ _ _ _ __,

•Nonzero (usually BAH)•lallure to free Veralon:

Applles to all versions of VCPI Driver beginning with 1.0.

Source:

•virtual Control Program Interlace Version 1.0," June 12, 1989, page 8

See Aleo:

5.208. INT 67H, AH-DEH, AL=03H •· VCPI Get Number ol Free 4K Pages 5.209. INT 67H, AH=DEH, AL-04H -- VCPI Allocata a 4K Page

5.211. INT 67H, AH•DEH, Al.a06H •· VCPI Get Physical Address of 4K Page in First Megabyte

5.211. INT 67H, AH:DEH, AL:06H -- VCPI GET PHYSICAL ADDRESS OF 4K PAGE IN FIRST MEGABYTE Prior lo luutng INT B7H

AX

AX

BX

Hl h Status•

Low

BX,__ _ _ _ __,_ _ _ _ _ __,

ex µP""'"-"''""'"'-""""!!.,!!""""'-""""""'S,cH"'Ru1.-.24

DX

:iLI-----------...J IP

Upon Retum from INT B7H

1----------------1

Rags ~ : : : : : : : : : : : : : : : : : : : : : : ~

ii ::::::::::::::::::::::j ti

ex 1=------=-'-~=~---1 e If AH=0

(EJOX Ph lea! address of 4K

:~ 1---------------1 SI 1---------------1 o1.__ ______________, IP

1---------------1

llags~::::::::::::::::::::::::::'.

cs 1---------------1

~:t:::::::::::::::::::::::::j ES.___ _ _ _ _ _ _ _ _ _ _ ___,

"Nonzero (usually BBH)•fallure to find Veralon:

Applles to all versions of VCPI Driver beginning with 1.0.

Source:

•virtual Control Program Interlace Version 1.0," June 12, 1989, page 9

SeeAlao:

5.208. INT 67H, AH-DEH, AL-03H -- VCPI Gel Number of Free 4K Pages 5.209. INT 67H, AH-DEH, Alo04H •· VCPI Allocata a 4K Pogo 5.210. INT 67H, AH•DEH, Al•05H •• VCPI Free a 4K Pogo

5-118

~,~ii ~,

Section 5: Other Interrupts, CD-ROM, Mouse, and EMS Support

5.212. INT 67H, AH:DEH, AL:07H •• VCPI READ CRO Prior IO luulng INT 67H

Upon

Low 07H

H!Jl.h DEH

Rolum from INT 67H H h

Low

AX OOH (EJBX CAO value

ex DX SP BP SI DI

~,

IP

IP flags

nags

Version:

Applies to all versions of VCPI Driver beginning with 1.0.

Source:

"Virtual Control Program lntertace Version 1.0." June 12, 1989, page 9

5.213. INT 67H, AH:DEH, AL:OBH •• VCPI READ DEBUG REGISTERS Prior IO luulng INT 67H High

Upon Rolum from INT 67H Low

~ .., _ _D_e_H_ _-+-___o_eH_ _--+ ~~

g:

1-------------t

Hlqh

Lqw

~I1----o_o_H_ _--+--------t

~,,____________

_..

"Oll~se.,.t~o,~ol~nt.,.er~to-ar_ra_of~B~D~W~O~R~D~--+

1-------------
-------------t

(E}:i

'%!:. Iloaded from stack

g: i: t - - - - - - - - - - - - - - 1

1:s-.0-,m-.-n1-s-e1-.c1o~r~fro-m~AH~-~D~E""H-A"L-0-:c1,cHrl

SS l(Must ba In

tct

!Loaded from stack

from stack

manahute of llnear memorv\

GS~-----------~ tSS:ESP and all segment registers are loaded from values on stack.

•Top of stack must leek Ilka this: QWORO OWORO

Retum address from FAR call to USE32 5egment EIP value

DWORD

CS value

OWORO

reserved tor EFLAGS value

DWORD DWORD DWORD DWORD DWORD DWORD

ESP value SS value ES value DS value FS value GS value

Version:

Applles to all versions of VCPI Driver beginning with 1.0.

Note:

Interrupts must be disabled prior to calling Interrupt.

Source:

-Virtual Control Program Interface Version 1.0," June 12, 1989, page 15

SeeAlao:

5.217. INT67H, AH-DEH, AL•0CH-· VCPI Switch from V86 to Protected Mode

5-124

Section 5: Other Interrupts, CD-ROM, Mouse, and EMS Support

5.222. TASK SWITCHER API PATCH Every program that uses Bulld Notification Chain (INT 2FH, Function 4B01 HJ or Hook Notification Chain (Service Function 0004H) must check for and Install this patch each time the Task Switcher calls Query Suspend (Notification Function 0001 H). Without the patch, the Task Switcher behaves e"atlcally and may lose data. The problem occurs because the Task Switcher Inadvertently clears the CX register, which may affect subsequent DOS system functions. Programs can check tor and Install the patch by executing the Patch Swapper routine given below. On entry, the client program must make sure the ES:DI registers point to the Task Switcher's service-function address. This Is the same address provided by the Task Switcher when It calls Query Suspend. OldCode Newcode

db db

PatchSwapper push push push push

33h, OC9h, OFBh,OEBh, lOh,O, 088h, 1,0 Slh, 33h, OC9h, OFBh, OE8h, OFh, 0, 59h, 90h proc

near

ds ex si di

eld

push

c■

pop

ds

;Check whether the code is the same, eub mov lea push push

rep or pop pop jnz

di, 73h cx,9 si,OldCode

;offset to the patch area

ex

;old code ;save size, offset

di cmpsb cx,cx di

;recover

ex PSDone

;Now patch code with new code. lea rep PSDone: pop pop pop pop

si,Newcode movsb

;patch

di si ex da

ret PatchSwapper

endp

Source:

Microsoft MS-DOS 5.0 Programmer's Reference

See Also:

5.024. INT 2FH, AX=4B01 H -- Build Notification Chain 5.041. Service Functions 5.042. Notification Functions

Section 6

Microsoft Windows Input Devices 6.001 6.002 6.003 6.004 6.005

Reserved System Keys and Recommended Keyboard Actions Virtual Keys Windows Terminal - VT52 Key Emulations Windows Terminal - VT! 00 Key Emulations Recommended Mouse Usage

Files 6.006 6.007 6.008

Windows Operating Environment Files Windows C Programming Library and Include Files Windows Development Utilities

6.009 6.010 6.011 6.012 6.013 6.014 6.015 6.016 6.017 6.018 6.019

Extended ANSI Character Codes Windows EXE File Format Tag Image File Format (TIFF) Dynamic Data Exchange Protocol Windows Paint File Format Font File Format Clipboard Formals and Clipboard File Formal Metafile Formal Icon Resource File Formal Cursor Resource File Format SDKPAINT.DAT File Formal

Formats

Resource Script Files 6.020 Resource Script File Directives 6.021 Single-line Resource Statements (ICON, CURSOR, BITMAP, FONT) 6.022 RCDATA Resource Script Definitions 6.023 MENU Resource Script Definitions 6.024 DIALOG Resource Script Definitions 6.025 Dialog Box Control Definitions 6.026 ACCELERATORS Resource Script Definitions 6.027 Common Menu Accelerator Key Definitions 6.028 STRINGTABLE Resource Script Definitions

WIN.INI File 6.029 6.030 6.031 6.032 6.033

WIN.IN[ Extension Settings WIN.IN[ Windows Settings WIN.IN[ Devices Settings WIN.INT Colors Settings WIN.IN[ PIF Settings

6-1

Section 6: Microsoft Windows

6-2 6.034 6.035 6.036 6.037

Default PIF Settings WIN.INI Ports Settings WIN.INI International Settings WIN.JNI Fonts Settings

Windows Functions Data Types 6.038 6.039 6.040 6.041 6.042

Data Types Used in Windows Argument Names Data Types Available as C Keywords Windows Handle and Pointer Types Include File Constants Definitions by Name Include File Constants Definitions by Use

Structures

6.043 6.044 6.045 6.046 6.047 6.048 6.049 6.050 6.051 6.052 6.053 6.054 6.055 6.056 6.057 6.058 6.059 6.060 6.061 6.062 6.063 6.064 6.065 6.066 6.067 6.068 6.069 6.070 6.071 6.072 6.073 6.074 6.075 6.076 6.077 6.078 6.079 6.080 6.081 Messages 6.082 6.083 6.084

BITMAP Structure Format BITMAPCOREHEADER Structure Format BITMAPCOREINFO Structure Format BITMAPFILEHEADER Structure Format BITMAPINFO Structure Format BITMAPINFOHEADER Structure Format CLIENTCREATESTRUCT Structure Format COMPAREITEMSTRUCT Structure Format COMSTAT Structure Format CREATESTRUCT Structure Format DCB Structure Format DELETEITEMSTRUCT Structure Format DEVMODE Structure Format DLGTEMPLATE Structure Format DRAWITEMSTRUCT Structure Format EXTTEXTMETRIC Structure Format HANDLETABLE Structure Format KERNPAIR Structure Format KERNTRACK Structure Format LOGBRUSH Structure Format LOGFONT Structure Format LOGPALETTE Structure Format LOGPEN Structure Format MDICREATESTRUCT Structure Format MEASUREITEMSTRUCT Structure Format MENUITEMTEMPLATE Structure Format METAFILEPICT Structure Format MSG Structure Format MULTIKEYHELP Structure Format OFSTRUCT Structure Format PAINTSTRUCT Structure Format PALETTEENTRY Structure Format POINT Structure Format RECT Structure Format ROB and COLORREF Structure Format RGBQUAD Structure Format RGBTRIPLE Structure Format TEXTMETRIC Structure Format WNDCLASS Structure Format Format of a Windows Message Windows General Message Numbering Window Management Messages

Section 6: Microsoft Windows 6.085 Inilializalion Messages 6.086 Input Messages 6.087 System and System Information Messages 6.088 Clipboard Messages 6.089 Control Messages 6.090 Notification Messages 6.091 Nonclient Area Messages 6.092 Scroll-Bar Messages 6.093 Multiple Document Interface Messages 6.094 DDE Messages Funclions 6.095 Windows Function Summary by Version 6.096 Windows Function Summary by Name 6.097 Windows Escape Function Summary by Name 6.098 Windows Functions Summary by Type 6.099 Windows WINMEM32.DLL Library Functions Function Support Tables 6.100 Diagnostic and Fatal Error Codes 6.1 OI Windows Logical Coordinate Mapping 6.102 Window Styles 6.103 Windows File Types 6.104 Display Context Default Settings 6.105 Binary Raster Operation Codes (ROP2) 6.106 Ternary Raster Operation Codes 6.107 GD! Information Index Data

Windows Utilities 6. 108 Development Tools Command Syntax 6. 109 Common Windows C Compiler Options Summary 6.110 Symbolic Debugger (SYMDEB) Command Summary 6.111 LINK Module Definition Statements Command Summary 6.112 WDEB386 Debugger Command Summary

6-3

6-4

Section 6: Microsoft Windows

6.001- RESERVED SYSTEM KEYS AND RECOMMENDED KEYBOARD ACTIONS

tApplies to versions ol Windows beginning with 2.0 only. §First defined by IBM's SAA guidelines. •Any direction key ot this type should not be redefined.

Note:

On International keyboards, only the left Alt key should be used as an accelerator.

Source:

Microsoft Windows 2.0 SOK Appllcatlon Style Gulde, pages 44 through 45 IBM SAA Common User Access Advanced Interface Design Gulde, Appendix B

See Also:

t .23. IBM Keyboard Extended Function Codes 6.005. Recommended Mouse Usage 6.027. Common Menu Accelerator Key Definitions

6-5

lflpllt Dt1•ices

6.002. VIRTUAL KEYS Sorted b Ke Nam• ~ Name VK 0VK VK VK VK VK VK

2" 3• 4* 5*

&* 7"

1AH 1CH-1FH 2AH 3AH-40H 58H-5FH 80H-87H BBH-BFH 92H-89H C1H-DAH E0H-E1H E3H-E4H ESH E6H E7H-EBH E9H-F5H F6H-FEH

(Continued)

6-6

Section 6: Microsoft Windows

6.002. VIRTUAL KEYS (continusd)

VK VK VK VK VK VK

4* 5*

e•

e•

9•

VK A• VK B• VK c•

VK D* VK E* VK P

VK G* VK VK VK VK VK VK

H* I* J" K• L• M•

VK N* VK VK VK VK VK VK

VK NUMLOCK' VK OEM SCROLL•

7*

0*

Po Q*

R• S* T*

VK VK VK VK VK VK VK

OEM OEM OEM OEM OEM OEM OEM

VK VK VK VK VK

OEM OEM OEM OEM OEM

1* PLUS• COMMA• MINUS• PERIOD" 2• 3• 4*

s• 6* 7• 8*

VK OEM 102•

6-7

/,rpur Dtl'ices Source:

Microsoft Windows 2.0 SOK Programmer's Reference, pages 280 through 281 Microaoft Windows 3.0 SOK Programmer's Reference, Appendix A

SN Aleo:

8.001. Reserved System Keys and Recommended Keyboard Actions e.005. Recommended Mouae Usage

6.003. WINDOWS TERMINAL - VT52 KEY EMULATIONS lvalent

NumLock Status ON ON ON ON ON ON ON ON ON ON ON ON ON ON OFF OFF OFF OFF

NA NA NA NA

ASCII ESC? ESC? ESC?r ESC?s ESC?t ESC?u ESC?v ESC?w ESC?x ESC? ESC?m ESC?I ESC?n ESC?M ESCOB ESCOD ESCOC ESCO A ESCP ESCO ESCR ESCS

Hex 1B 3F 70 1B3F 71 1B 3F 72 1B 3F 73 1B 3F 74 1B 3F 75 1B 3F 76 1B 3F 77 1B 3F 78 1B 3F 79 1B3F6D 1B3F6C 1B3F6E 1B3F4D 1B4F42 1B4F 44 1B4F43 1B4F41 1B 50 1B 51 1B 52 1B 53

Note:

Keys listed are for IBM PC compatible keyboards only.

Source:

Microsoft Windows 2.0 Desktop Applications User's Gulde, pages 89 through 90 Microsoft Windows 3.0 User's Gulde, Appendix C

Seo Also:

6.001. Reserved System Keys and Recommended Keyboard Actions 6.004. Windows Termlnal VT100 Key Emulations H

6-8

Section 6: Microsoft Windows

6.004. WINDOWS TERMINAL·· VT100 KEY EMULATIONS

_rd

Ke ANS/VT!

lvalent

0 1 2 3 4 5 6 7 8 9

NumLock Status ON ON ON ON ON ON ON ON ON ON ON ON ON OFF OFF OFF OFF

ASCII ESCO ESCO ESCOr ESCOs ESCO ESCOu ESCOv ESCOw ESCOx ESCO ESCOm ESCOI ESCOn ESCOM ESCOB ESCOD ESCOC ESCO A

Hex 1B4F70 1B4F71 1B4F72 1B4F73 1B4F74 1B4F75 1B4F76 1B4F77 1B4F78 1B4F79 1B4F6D 1B4F6C 1B4F6E 1B4F4D 1B4F42 1B4F44 1B4F43 1B 4F41

NumLock Status OFF OFF OFF OFF NA NA NA NA

ASCII ESC B ESC D ESC C ESCIA ESCOP ESCOQ ESCOR ESCOS

Hex 1B 5B42 1B 5B 44 1B 5B 43 1B 5B 41 1B4F50 1B4F 51 1B4F52 1B 4F 53

0 Enter Cursor down Cursor left Cursorrl ht

Cursoru ForDECVTIOO

Windows Kev Eaulvalent

ANSI VT100 Kev

Cursor down Cursor left Cursorrlriht Cursor uo PF1 PF2 PF3 PF4

"'"w""'tarrow Uo arrow

F1 F2

F3 F4

Note:

Keys listed are tor IBM PC compatible keyboards only.

Source:

Microsoft Windows 2.0 Desktop Applicatlons User's Guide, pages 89 through 90 Microsoft Windows 3.0 User's Gulde, Appendix C

See Also:

6.001. Reserved System Keys and Recommended Keyboard Actions 6.003. Windows Terminal•· VT52 Key Emulations

6.005. RECOMMENDED MOUSE USAGE

Source:

Microsoft Windows 2.0 SOK AppllcaUon Style Gulde. pages 53 lhrough 55 IBM SAA Common User Access Advanced Interface Design Gulde, Appendix B

See Also:

1.23. IBM Keyboard Extended Function Codes 6.001. Reserved System Keys and Recommended Keyboard Actions

6-9

Fitts

6.006. WINDOWS OPERATING ENVIRONMENT FILES

.,., ., .,., .,., .,., ., .,., .,., ., .,., .,., .,., .,., .,., .,., .,.,

1.x

2.x

3.x

1.x

2.x

3.x

.,., .,.,., .,., .,., .,., ., .,

.,., .,., .,., .,., ., .,.,

., .,

., ., .,., .,., ., ., tAt leut one font must be Installed; addltlonal fonts are optional. Source:

Microsoft Windows 2.03 disks Microsoft Windows 3.0 disks

SeeAl10:

6.007. Windows C Programming Library and Include Flies 6.008. Windows Development Utllltles

.,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,.,., .,., .,., .,., .,.,

6-IO

Section 6: Microsoft Windows

6.007. WINDOWS C PROGRAMMING LIBRARY AND INCLUDE FILES 1.x

2.x

" " " "

" " " "

" "

" "

Source:

Microsoft Windows 2.0 SOK Tccls, page 17 Microsoft Windows 3.0 SOK Tools, page 2-12 Microsoft Windows 3.0 SOK distribution disks

SeeA110:

6.006. Windows Operating Environment Flies 6.008. Windows Development Utllltles

3.x

"" "" "" """ "" "" "" "" """ """ "" "" ""

"" "" " "" " "" "" "" "" " " "" " "" "" """ "" ""

" " "" ""

Files

6-11

6.008. WINDOWS DEVELOPMENT UTILITIES 1.x

2.x

X

3.x X

X X

or

X X X X X X X X X X X X X X

X X

X X

X X

X X X X X X

X X X X

X

•Not part of Windows 3.0 SDK

Note:

AddlUonal utllhles are available directly from Microsoft and the Microsoft-supported conference on Genie

Source:

Microsoft Windows 2.0 SDK disks Microsoft Windows 3.0 SDK distribution disks

SeeAlso:

6.006. Windows Operating Environment Flies 6.007. Windows C Programming Library and Include Flies

Section 6: Mic,-osoft Windows

6-12

6.009. EXTENDED ANSI CHARACTER CODES Narm, Blnaw Dec H•x Octal 32 20 040 00100000 S 21 041 on10 0001 Exclamation nnlnt 33 34 22 042 0010 0010 Quotation mark 35 23 043 0010 0011 Numbarslnn 24 36 044 0010 0100 Dollar sl n 37 25 045 0010 0101 Percent sr n 38 26 046 0010 0110 Amoersand 27 047 00100111 ADostroohe 39 40 28 050 0010 1000 Ooenlna oarenthesls 41 29 051 0010 1001 Closlna DS.renthesls 42 2A 052 0010 1010 Asterisk 43 2B 053 0010 1011 Plus slnn 44 2C 054 0010 1100 Comma 45 2D 055 00101101 Hvnhen 46 2E 056 00101110 Period 47 2F 057 0010 1111 Forward slash 48 30 060 0011 0000 Zero 49 31 061 0011 0001 One 50 32 062 0011 0010 Two 51 33 063 0011 0011 Three 34 52 064 0011 0100 Four 53 35 065 0011 0101 Five 54 36 066 0011 0110 Six 37 067 0011 0111 Seven 55 070 00111000 Elaht 56 38 57 39 071 00111001 Nine 58 3A 072 00111010 Colon 59 3B 073 00111011 Semicolon 60 3C 074 00111100 Less than sl n 61 3D 075 00111101 Enual sinn 076 00111110 Greater than sian 62 3E 63 3F 077 00111111 Question mark 64 40 100 0100 0000 Commercial at slan 41 65 101 0100 0001 CanltalA 42 102 0100 0010 C=initalB 66 67 43 103 0100 0011 CaaltalC 44 104 0100 0100 Caoital D 68 45 105 0100 0101 Ci:initalE 69 70 46 106 0100 0110 Conltal F 71 47 107 01000111 CanitalG 48 110 0100 1000 CaoitalH 72 49 111 0100 1001 Cacitall 73 74 112 0100 1010 Ca ital..i 4A 75 4B 113 01001011 Cacital K 76 4C 114 0100 1100 Car:iitall 77 4D 115 0100 1101 Ca Ital M 78 4E 116 01001110 Ca ital N 79 4F 117 0100 1111 CacltalO 120 0101 0000 Car:iitalP BO 50 81 51 121 0101 0001 CoeltalQ 122 0101 0010 CoaltalR 82 52 123 0101 0011 CacltalS 83 53 54 124 0101 0100 CacitalT 84 125 0101 0101 CaaltalU 85 55 126 0101 0110 Ca italV 86 56 87 57 127 0101 0111 CariitalW BB 58 130 0101 1000 Cacltal X 89 59 131 01011001 CaoltalY 90 SA 132 01011010 Ca Ital Z 91 SB 133 01011011 Qnenlnn bracket 92 SC 134 01011100 Backward slash 93 SD 135 01011101 Closlnn bracket 94 SE 136 01011110 Caret clrcumllex' SF 95 137 01011111 Underscore 96 60 140 01100000 Grave 97 61 141 01100001 Lowercase A 98 62 142 01100010 Lowercase B

Charac:1er

s I #



% &

l

. I 0 1 2 3 4 5 6 7 B 9

:
?

A B C D E F

G H I J

K L M N

0 p

a R

s T

u V

w X

y

z

. I

1

•b (ConNnued)

Formats

6-13

6.009. EXTENDED ANSI CHARACTER CODES (conf/nued) Dec 99 100 101 102 103 104 105 106 107 106 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 145 146 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196

Hex

63 64

65 66 67 68 69 6A 6B 6C 6D SE SF 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 91 92 AO A1 A2 A3 A4 AS A6 A7 AS A9 AA AB AC AD AE AF BO B1 B2 B3 B4 BS BS B7 BB B9 BA BB

BC BO BE

BF

co C1 C2 C3 r4

Oc•f 143 144 145 146 147 150 151 152 153 154 155 156 157 160 161 162 163 164 165 168 167 170 171 172 173 174 175 176 221 222 240 241 242 243 244 245 246 247 250 251 252 253 254 255 256 257 260 261 262 263 264 265 266 267 270 271 272 273 274 275 276 277 300 301 382 303 304

Bina·· Name 01100011 Lowercase C D 01100100 011on101 Lowercase E 01100110 Lowercase F 01100111 Lowe---e G 01101000 Lowercase H 0110 1001 Lowercase I 01101010 LowercaseJ 01101011 Lowercase K 01101100 Lowercase L 01101101 LowercaseM 01101110 LowercaseN 01101111 Lowercase 0 0111 ooon Lowercase P 0111 0001 Lowercase a 0111 0010 Lowercase R 01110011 Lowercase S 0111 0100 Lowercase T 01110101 Lowercase U 01110110 Lowercase V 01110111 Low..rcaseW 01111000 Lowercase X 01111001 Lowercase Y 01111010 Lowercase Z 01111011 O"'enln"" brace 01111100 Vertical line 01111101 Closlnn brace 01111110 TIide 1001 0001 Lett slnnle nuote 1001 0010 Alnht slnnle nuote 1010 0000 Blank 1010 0001 Inverted exclamation 1010 0010 Cent s1nn 1010 0011 Pound sterlln"" si n 1010 0100 General currencv sinn 10100101 Yen slnn 10100110 PINII svmbol 10100111 Section sumbol 1010 1000 Diaeresis sumbol 1010 1001 CO"'"rl"'ht S"mbol 1010 1010 Female ordinal 1010 1011 Left ......lntlnn nulllemets 1010 1100 Lonlcal not 1010 1101 Hunhen 10101110 Re lstered S""'bol 10101111 Macron s11mbol 1011 0000 o-ree s"mbol 1011 0001 Plus/minus svmbol 1011 0010 Sunerscrlnt 2 1011 0011 Suru,,rscrl 13 1011 0100 Acute accent 1011 0101 Mu micro 10110110 Pars:inranh sumbol 10110111 1 to 2 unner rlnht 10111000 Cedilla S"mbol 10111001 Su"'erscrl"' 1 10111010 Su ..erscrl"' o 10111011 Rl"'ht-lntln'" '"Ulllemets 10111100 One-nuarter 10111101 One-halt 10111110 Three-nuarters 10111111 Inverted 11uestlon mark 1100 0000 Grave A 11000001 Acute A 11"00010 ClrcumllexA 11000011 TIide A 11000100 Umlaut A

Chs""'1sr C

--.d f

"h I k

I m

n 0

n

"r s I u V

w X

"

z \

-

.

.

£ ¥

----.i C

.' ~

(!)

.

± 2 3

..

• ,

.. 1

'•,,

..,

•• •

A I

(ConUnued)

Section 6: Microsoft Windows

6-14 6.009. EXTENDED ANSI CHARACTER CODES (continued) Dec

Hex

197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255

cs

C6 C7

ce

C9 CA CB

cc CD CE CF DO D1 D2 D3 D4 DS D6 D7 D8 D9 DA DB DC DD DE DF EO E1 E2 E3 E4 ES E6 E7 E8 E9 EA EB EC ED EE EF FO F1 F2 F3 F4 FS F6 F7 F8 F9 FA FB FC FD FE FF

Octal

305 306 307 310 311 312 313 314 315 316 317 320 321 322 323 324 325 326 327 330 331 332 333 334 335 336 337 340 341 342 343 344 345 346 347 350 351 352 353 354 355 356 357 360 361 362 363 364 365 366 367 370 371 372 373 374 375 376 377

Blnarv 1100 0101 1100 0110 11000111 1100 1000 11001001 11001010 1100 1011 1100 1100 1100 1101 11001110 1100 1111 1101 0000 1101 0001 1101 0010 1101 0011 1101 0100 1101 0101

Name Anna Dlathona AE CedillaC Grave E Acute E Clrcumtlex E Umlaut E Gravel Acute I Clrcumtlex I Umlaut I Uccercase eth

0

TildeN

l',i

GraveO Acute O Circumflex O

0 0 0

TildeO 1101 0110 UmlautO 1101 0111 Multi 1 times svmbol

11011000 11011001 11011010 11011011 11011100 11011101 11011110 11011111 1110 0000 1110 0001 1110 0010 1110 0011 11100100 11100101 11100110 1110 0111 11101000 11101001 11101010 11101011 1110 1100 1110 1101 11101110 11101111 1111 0000 1111 0001 1111 0010 1111 0011 1111 0100 1111 0101 1111 0110 1111 0111 11111000 11111001 11111010 11111011 11111100 11111101 11111110 11111111

Characler A If!.

Ucoercase O obllaue Grave U

Acute U Clrcumtlex u Umlaut U Acute Y IJnnercase thorn LowerG:ase es-zet Ii ature Grave a Acute a Circumflex a Tilde a Umlaut a

0 0 X

0

u u □

0 'Y D

B

A

• '

I I

arina

A

Dicthono ae Cedilla c Gravee Acute a Circumflex e Umlaute

Ill

Grave I Acute I

1

0

• ' • 0

I

Circumflex I Umlaut I

I I

Lowercase eth Tilden Graveo Acute o

0

Circumflex o Tildeo

6 6

Umlaut a Divide bv Lowercase o oblioue Graveu Acute u Clrcumllexu Umlautu Acute v Lowercase thorn Umlautv

n b 6 0

+ ~

a

u a

a

•v

p 0

Source:

Microsoft Windows 2.0 SDK Programmer's Reference, page 121 Microsoft Windows 3.0 User's Guide, page 568

SH Also:

1.21. ASCII Character Set 1.22. IBM ASCII CharaciOr Set

6-15

Formats

6.010. WINDOWS EXE FILE FORMAT

Allowable Values

Relative to be innin of this section of header

table OOOOH = NOAUTODATA 0001H • SINGLEDATA (solo) 0002H • MULTIPLEDATA (instance) 2000H • errors detected at link time 8000H • Libra module

to be to be to be to be to be to be

Version:

innin innin lnnin innin innin innin

of this of this of this of this of this of file

section section section section section

of header of header of header ol header ol header

Applies to Windows 2.0.

Source:

Microsoft Windows 2.0 SOK Programmer's Reference, pages 645 through 648

S8eAfoo:

2.27. EXE FIie Header

2.28. COM Program Loyout

6-16

Section 6: Microsoft Windows

6.011. TAG IMAGE FILE FORMAT (TIFF) Header and Dlrea.__, Formal Ott1:et Size 0(0) Bbytes Header

lion

A(10)

Varies

Image flle directory

Varies

Varies

Values tans

Flek/SlzB Word Word Dbl word Word 12 bytes 12 bytes each Dbl word

F/eldOescrtn1/on

Byte order Version Pointer to first IFO Number of directory entries First directory entry Addltlonal directory entries Pointer to next IFD

100 256 101 257 102 258 103 (259)

Photometric lnterp.

107 (263) Short

Thresholding

108 264 Short 109 265 Short 10A (266) Short

Cell width

Must begin on word boundary See below for format See Taas table below

Word Len th Dbl word Pointer to value

106 (262) Short

Comments 4949H-least to most; 4D4DH=most to least 2AH (version 42)

Cell Ian th

Order of data values

For each strl

the

e offset of that strl

1=first row at top, first column at left (default) 2-tlrst row at top, first column at right 3-flrst row at bottom, first column at right 4-llrst row at bottom, first column at lett 5-flrst row at left, first column at top 6-flrst row at right, first column at top 7-flrst row at right, first column at bottom a-first row at left first column at bottom 1-monochrome (default) color

Formats Note:

6-17 • Taga wllh ■ value ol BOOOH (32768) or higher ■re raaarved for uaar-deflned Information. • The antrtea for Image flla dlrectort11 must be sorted In aacendlng order by value of the tag.

Sou""':

Tag Imago FIie Format Draft (22 October, 1986), pages 2 llln>ugh 13

SN Allo:

6.013. Windows Paint FIie Fonnat

6.012. DYNAMIC DATA EXCHANGE PROTOCOL Msssaas Tvos WM_DDE_INITIATE

Request start of conversation

WM_DDE_TERMINATE

End conversation

WM_DDE_ACK

Acceptance of prev. meaage

088

WM_DDE_REQUEST

Request for data itam

WM_DDE_DATA

Publication of data

WM_DDE_POKE

Place dala al destination

WM_DDE_ADVISE

Requestfordala

WM_DDE_UNADVISE

Cancel request for data

WM_DD_EXECUTE

Request 10 process commands

Parameters wParam z identifies sending window 11'811l11= aApplication aToDic wParam= idantifias sending window IParam= RESERVED wparam= identifies sending window ForWM_DDE_INmATE: lparam = aApp1ication (replying app name) aTopic(replyingtopic) For WM_DDE_EXECUTE: lparam= wStatus•(stalusofresponse) hCommands {handle of commend string) Forallothars: lparam= wStalus•(stalusotresponse) aHem fdala Ham resoonse is forl wPnm= identifies sanding window IParam= cfFormal {clipboard formal) altam ldala Hem renuesled\ wParam= identifies sending window 11'811l11= hDatai artem (data Hem reauesled) wParam = idantifiessandingwindow 11'811l11= hData§ altem wParam= identifies sending window IParam= hOptionst (how data is 10 be sent) altem (data Hem renuesledl wPararn= identifi&iS&ndingwindow IParam = allem cfFormat (clipboard format\ wParam= identifies sending window IParam= RESERVED hCommands

1=send WM ODE DATA with ACK-re uesled M 1=source data hes chan ed standard or re istered cli oard format number &Consists of OOEOATA dala structure: Word 1 BH 15 - IAckRen¥

Word 1, Bi 14 •• RESERVED Word 1, en 13- IRelease Word 1 Btt 12-1Ranuesled¥ WOid 1 Bits 0-11 - RESERVED Word 2 - cfformal WOtds3-n--Valuen

1=send WM ODE DATA with ACK-reauested bit O=don'I send WM ODE ACK 1=Client ann lrees hOata ob'ec:t eher orocessin O::don11ree 1::dalainresMnsetoWM DOE REQUEST O=in resnonse ta WM ODE ADVISE standard or r&l'listered clil'lboard lonnal number Iha data in cfFormat

¥Not used for WM_ODE_POKE Source:

Mlcro10ft Systems Journal (October 1986), pages 7 through 16 Microsoft Systems Journal (November 1987), page 16 Microsoft Windows 3.0 SOK Programmer's Reference, Chapter 1E

LO HO

LO HO LO HO LO HO LO HO LO HO LO HO LO HO LO HO LO HO

6-18

Section 6: Microsoft Windows

6.013. WINDOWS PAINT FILE FORMAT Olfs•t

0 0 2 2 • 4

6 6 8 8 A 10 C 12 E 14 10 16 12 18 14 20 16 22 18 24 1A 26 1C 28 1E 30 20 32

L th Word Word Word Word Word Word Word Word Word Word Word Word Word Word Word Word

Usual Contents 6144H 4D6EH

Varies

Version:

Paint files In versions of Windows beginning with 2.03 use a different format.

Note:

• A paint flle (version 1.01) consists of a 32-byte header, as described above, followed by a bitmap organized as scan lines. The total size of the bitmap will b9 -WldthOIBltmap x HelghtOIBltmap/8 • The third through tenth fields In the header are determined by calllng GetDeviceCaps().

Source:

Unpublished document from Microsoft University Windows Seminar

see Also:

6.015. Clipboard Fonnats and Clipboard FIie Fonnat 6.019. SDKPAINT.DAT FIie Fonnat 6.069. METAFILEPICT Structure Fonnat

6.014. FONT FILE FORMAT

LObit-1 (variable pitch) LObit-o (fixed pitch) H04bits-oooo (FF_DONTCARE) H04bits•0001 (FF_ROMAN) H04blts•0010 (FF_SWISS) H04bits-001 1 (FF_MODERN) HO4blts•0100 (FF_SCRIPT) HO4blts•0101 FF DECORATIVE Usuall 'X'

Raster fonts onl

o- enerlc device (Conttnued/

6-19

Formats 6.014. FONT FILE FORMAT (conlimHld) Allowable Values Set b GDI at load time For variable-spaced raster fonts For fixed-spaced raster fonts For fixed-spaced vector fonts For varlable-spaced vector fonts

start on word bounda Veralon:

Applies to all versions of Windows beginning wHh 2.0.

Source:

Microsoft Windows 2.0 SOK Programmer's Reference, pages 639 through 645 Microsoft Windows Device Driver Kit, Device Driver Adaption Gulde, pages 13·1 through 13-15

6.015. CLIPBOARD FORMATS AND CLIPBOARD FILE FORMAT

*Added beginning with Windows 3.0. Source:

Microaoft Windows 2.0 SOK Programmer's Reference, page 423 Microaoft Windows 3.0 SOK Programmer's Reference, pages 4-370 through 4-371, 9-5 through 9-6

S11 Aleo:

1.17. Common String Formats 8.01 1. Tag Imago Filo Format (TIFF) 6.01 e. Meta.Fila Format 8.047. BITMAPINFO Structun, Fonnat 8.069. METAFILEPICT Structun, Fonnat

6-20

Section 6: Microsoft Windows

6.016. METAFILE FORMAT

In words not current! used

Allowable Values Size In words 0817H Arc 0830H Chord 0418H Ellipse 0415H ExcludeClipRect 0419H FloodFIII 0416H lntersectCllpRect 0213H UnaTo 0214H MoveTo 0220H OffsetCllpRgn 0211 H OffsetviewportOrg 020FH OffsetWlndowOrg 0610H PatBII 081AH Pio 0O35H ReallzePalette (3.0 and later) 041 BH Rectangle O139H ResizePalette (3.0 and later) 0127H RestoreOC 061 CH Round Roel 001 EH SaveDC 0412H ScaleViewportExt 0400H ScaleWindowExt 0201 H SetBkColor 0102H SotBkModo 0103H SotMapModo 0231 H SotMapperFlags 041 FH SetPlxel 0106H SetPolyFIIIMode 0105H SetRelAbs 0104H SetROP2 0107H SetStrectchBIIMode 0108H SetTextCharExtra 012EH SetTextAlign 0209H SetTextColor 020AH SetTextJustification 020CH SetWindowExt 0208H SetwindowOrg 020EH SetViewportExt 0200H SetView ortO Variable number of words each contalnin a arameter Allowable Values

Sizelnb es 0120H

Allowable Values Size In words 0436H start

numentrles entries

First entry to be animated Number of entries to animate PALETTEENTRY blocks

(Continued)

6-21

Formats 6.016. METAFILE FORIIIA T (conffnued) Desc Size of this reco

B11B111D

Allowable Values Size In words 0922H for 1.O and 2.0 0940H tor 3.0 and later rasterop HO word of raster operation SY y-coordlnate of source origin SX x-coordlnate of source origin DYE Destination y-extent DXE Destination x-extent DY y-coordlnate of destination origin DX x-coordinate of destination origin bmWldth¥ Width of bitmap In pixels bmHelght¥ Height of bitmap In raster lines bmWldthBytes¥ Number of bytes In each raster line bmPlanes¥ Number of color planes In bitmap bmBltsPlxel¥ Number of adjacent color bits b Actual device-de endent bitma

¥Replaced In 3.0 whh BITMAPINFO structure.

Allowable Values Size In words 02FCH See 6.062. LOGBRUSH Structure Format Allowable Values

rds

Allowable Values 6.064. LOGPALETTE Structure Format

Allowable Values In words .065. LOGPEN Structure Format

Allowable Values In words . LOGPEN Structure Formal

Allowable Values 28 size In words 0231H See 6.063. LOGFONT Structure Format Allowable Values 7 size In words 0232H See 6.062. LOGBRUSH Structure Formal (Continued)

6-22

Section 6: Microsoft Windows

-

6.016. METAFILE FORMAT (continued) A w: ble Values Size In words 012FH far rtor to 3.0 0142H tor 3.0 For Windows 1.x & 2.x: bitmap header, 9 unused words,+ bmWldth Bitmap width bmHelght Bitmap height bmWldthBytes Bytes per raster line

bmPlanes

Number al color planes Number ot adjacent color bits per pixel Pointer to bit values bits Actual bits of pattern For Windows 3.0 and later: type Bitmap type bmBltsPlxel

bmBtlB

Usage

De

Date structure detlnlng bitmap

Actual device-de endent bltm Allowable Values

tton

Size In words 06FFH

record Ion ID

Descrl lion Size ot this record Index for Windows 3.0; does not apply to earlier versions. MetsF//e D,aw11 Field rdSize rdFunctlon rdParm

bmlColors format

BITMAPINFO

bits

Allowable Values 4 size In words 01F0H Handle-table Index of ob ect to be deleted

Allowable Values

Descrl tton

Size of this record DrawText ID DrawTextlnfo

Size In words 062FH OrawText Info consists of: format Method of formatting count Number of bytes In string rectangle Rectangle defining text area strl Text arra contalnin strin

MetaFl/e ExtTextOut Records

Field ction ,oe•rm

Size DWORD WORD Varies

Descnatlon Size of this record ExtTextOut ID ExtTextOut info

Allowable Values Size In words

0A32H ExtTextOut llifo consists of: y-value of string's starting point y x-value of string's starting point X Length of string count options Rectangle type rectangle RECT defining text rectangle Byte array containing string string Word arrav of lntercharacter distances dxarrau

Allowable Values

lion

Size In words 0521H TextOut Info consists of: count Length of string

lion

flst~ng

String

flylocatlon flxlocatlon

y-value of string's starting point x-value of strln 's startln olnt

Allowable Values Size In words 0324H Polygon Info consists of: count Number of points In polygon list List of the lndlvldual olnts (Continued)

6-23

Fo,-n,ats 6.016. METAFILE FORMAT /conllnusd)

DB

AletaFl/e Po Allowable Values Size In words 05 H PolyPolygon Info consists of: count Total number of points list of counts Ust of number of points for each polygon fist of lnts Ust of lndlvldual olnts

FIB/d rdSfze rdFunctlon rdParm

1lon

Aflowable Values Size In words 0626H Escape Info consists of: escape# Number of escape count Number of bytes of escape data esca edata

lion

Allowable Value Size In words 012AH Index to re ion in MetaFile table

Desert 1/on record ID

Affowable Values Size In words 0128H Index to r ion in MetaFile table

Allowable Values Size In words 0228H Index to r Ion In MetaFile table

De

record ID

1lon

Aflowable Values Size In words 0429H Index to re ton In MetaFile table

Allowable Values Size In words 012CH Index to re Ion In MetaFile table Allowable Values Size In words 012DH Index to re Ion In MetaFile table

non

Allowable Values Size In words 0234H Index to alette In MetaFlle table

(Connnued)

6-24

Section 6: Microsoft Windows

6.016. METAFILE FORMAT/continued)

rd Device ID oDevlce Info

Allowable Values Size In words 0033H SotDIBllsToDevlce Into consists of: wUsage Color usage flag numscana Number of scanllnes In bitmap startscan First scan llne In bitmap srcY y-coordlnata of origin of source In bitmap srcx x-coordlnate of origin of source In bitmap extY

Height of source In bitmap

extX destY

Width of source In bitmap

destX

BITMAPINFO blls

y-coord of ortgln of destination reC1angle x-coord ol origin of destination rectangle Data structure tor bitmap al bltma

tFlrst defined for Windows 3.0; does not apply to earlier versions. Allowable Values

s Info consists of: First entry to be set In palette Number of entries to set in palette PALETTEENTRY blocks

Desc

tion

Allowable Values words for rior to 3.0 0F43 for 3.0

Bit Info consists of: raster op LO word of raster operation raster op HO word of raster operation SYE Source r•extent $XE Source x-extent SY y-coordinate of source origin SX x-coordlnate of source origin DYE Destination y-extent DXE Destination x-extent DY y-coordinate of the dest origin DX x-coordlnate of the dest origin bmWldth¥ Width of the bitmap, In pixels bmHelght¥ Height of the bitmap, In raster llnes bmWldthBytes¥ Number of bytes per raster line bmPlanes\f Number of color planes per raster line bmBltsPlxel¥ Number of adjacent color bits/pixel blls

Actual bltma

¥Replaced In Windows 3.0 with BITMAPINFO structure.

MetaFl/e Stretch Field rdSlze rdFunctlon rdParm

Dose 1/on this record D1B1181D DIBlls Info

tflrst defined for Windows 3.0; does not apply lo earller versions.

Allowable Values Size In words 0F43H StretchDIBlts Info consists of: dwAop Raster operation to be performed wUsage Color usage flag srcYExt Height of source of bitmap srcXExt Width of source of bitmap srcY y-coordlnate of origin of source In bitmap srcX x-coordlnate of origin of source In bitmap dstYExt Height of destination rectangle dstxExt Width of destination rectangle dstY y-coord of origin of destination rectangle dstx x-coord of origin of destination rectangle BITMAPINFO Data structure defining bitmap blls Actual bltma

6-25

Formats Note:

The actual MetaFlle format la comprised of: -A MetaFlle header -A variable number of MetaFlle GDI or other function records -A table of any objects referenced by function record&

Source:

Microsoft Windows 2.0 SOK Programmer's Reference, pages 127 through 129 Microsoft Windows 2.0 Beta2 Documentation, pages 646 through 655 Microsoft Windows 3.0 SOK Programmer's Reference, Chapter 9

see Also:

6.062. 6.063. 6.064. 6.065.

LOGBRUSH Structure Format LOGFONT Structure Format LOGPALETTE Structure Format LOGPEN Structure Format

6.017. ICON RESOURCE FILE FORMAT be1

Note:

A 0IB tor a color Icon consists of 1) XOR mask bitmap: 2) AND mask (monochrome).

Source:

Microsoft Windows 3.0 SOK Programmer's Reference, pages 9-2 through 9·3

SN Also:

6.018. Cursor Resource FIie Format

6.018. CURSOR RESOURCE FILE FORMAT

Note:

Cursors consist of 1) XOR mask bitmap; 2) ANO mask (both monochrome).

Source:

Microsoft Windows 3.0 SOK Programmer's Reference, pages 9·3 through 9-5

SN Aleo:

6.017. Icon Resource FIie Format

6-26

Section 6: Microsoft Windows

6.019. SDKPAINT.DAT FILE FORMAT Len th U to to chars Varies Varies Varies Varies Varies

Name name num-colors curs-horz-slze curs-vert-slze lcon-horz-slz lcon-vert-slze

Note:

FIie Is In ASCII format (I.e., numbers are written out, as In 32, 16, 64); strings are terminated by CR (no null character), one string per display device.

Source:

Microsoft Windows 3.0 SDK Tools, pages 4-2 through 4-3

6.020. RESOURCE SCRIPT FILE DIRECTIVES

Example 1:

#lfdef Debug errbox BITMAP errbox.bmp #endit

Example 2:

#If Verslon12.5% time spent nerformina memorv comaaction Sent to top-laval windowl ftn device mode

WM_FONTCHANGE

Mltinasdlanao Serl 10 IDp,IM windows whon pool of font

M Name WM_COMPACTING*

wParsm

IParam

Ratio of CPU time compacting

Nol used

Not used

Lang pointer lo WIN.INI device name

Not used

Not used

resourceacMWM PALETTECHANGED' WM_SPOOLERSTAT\JS' WM_SYSCHAR WM_SYSCOLORCHANGE WM_SYSCOMMAND

WM_SYSDEADCHAR

~I WM_TIMECHANGE WM_WININICHANGE

lnforrna all windows lhat svstem Dllatle is chanoad Sant .tlal"IIVtl' Print Manager adds or removes aiobinauaue SentwhonWM_SYSKEYUP or WM SYSKEYDOWN lrlnslaled Sent to lop-level windows when system color settinn channAII Sent when user selects command from System menu or when user selects maximize or minimize box Sant when WM_SYSKEVUP or WM SYSKEYDOWN ~an~aled Sent when user holds down All kev and another kev Sent Yihen user releases Alt kev and another kev Sent to top.level windows \llhen out-ol-memo,y error occurs Sen! to top.level windows v.hen application chanaes svslam lime Sanl to top-level windows v.hen WIN.IN! is changed

Handle of window causina cha.nae Not used SP_JOBSTATUS lO=numbar of jobs remaining; HO=not used ASCII-coda of System-menu key

Keyinfot

Not used

Not used

Type of system command

If mouse used, LO:x-coordinata, HO=v-coordinata· olherwise not used

Dead-key character value

LO=repeat count, H~uto repeat count

Virtual-kevcode Virtual-kevcode B=oul of memory error code

Kevinfot Nol used

Nol used

Not used

Nol used

Long pointer to siring specifying section that chanced: o I IT'Klra lhan one chanaa

Ke,;n1o1

*Applies to all versions of Windows beginning with 3.0. tKey infonnation coded u follows:

*Nol in Windows 3.0

Source:

Microsoft Windows 2.0 SDK Programmer's Reference, pages 507 and 558 through 604 Microsoft Windows 3.0 SDK Programmer's Reference, pages 6-52 through 6-114

SnAlao:

6.082. Fonnat of a Windows Message 6.083. Windows General Message Numbering 6.084. Window Management Messages 6.085. Initialization Messages 6.086. Input Mes~ages 6.088. Cllpboand Me&&ages 6.089. Control Messages 8.080. NolHicalion Mnaagea 6.091. Nonclient Area Massages 6.082. Scroll-Bar Messages 6.093. Mutlipla Document Interface Messages 6.084. ODE Messages

Wi,rdows Fu11ctions: Messages

6-101

6,088. CLIPBOARD MESSAGES

N•""'

WM_ASKCBfORMATNAME Senl when cipboard , _ handle for CF OWNERDISPLAY formal S.nt to first window in viewer chain when WM_CIIANGECBCHAIN windowi1111rnovadlromc:haln WM_OESTROYCUP80ARO Sent lo clipboard owner when clipboard is emMM hu E-•.,"'li•.,••rd Sent ID fil'II window in viewer chain when WM_ORAwa.JPBOARO contents 119 channed WM_HSCROLLCUP80ARD Soni when clipboard ii CF_OWNERDISPLAY and horizontal scroll Mnl occurs

wParam

lntegernoo,barofbylestocopy

IParam

Nolusad

Long pointer to buffer 'Mlere copy of lormal name is to be stored LO=handla of window following one being ramovad•nextwin""""' Nolustd

NOluaed

Nol used

Handle of window being removed

Handle ti clipboard applicalion window LO contains one ol lhese scroll bar codes: SB_UNEUP (scroll one line up) S8_UNEOOWN (sc,oU one Nne down} S8_PAGEUP (scroll one page up} SB_PAGEOOWN (scroll one page down) SB_THUMBPOSITION (scroll to position) SB_TOP (scroll to upper left) S8_80TTOM (scroH ID lower righl} S8_ENOSCROLL (and of ,cn,IQ HO contains thumb position I LO,S8 THUMBPOSITION SOrt when cipboard ii CF_OWNERDISPIAY and Handle lo clipboard application window Long pointer to PAINTSTRUCT WM_PAINTCUPIIOARO c1=-1.--rd ___,_ client 1191 needs -inti"" WM_RENOERALLFORMATS Sant to 8"Jlication flat owna clipboard whan Not used Not used a....iication is bei..,, des.. _._ .. Sanl to requelt clipboard owner formal dala WM_RENOERFORMAT Oatalorrnattorander Nolustd in s-cified format Sent when clipboard is CF_OWNEROISPLAY and Handle to clipboard application window LO:poinler lo RECT WM_SIZECUPIIOARO clinboard am, window hes channad size WM_VSCROLLCUPBOARO Soni when clipboard is CF_OWNEROISPIAY and Handle to clipboard application window LO contains one ol lhese scroll bar codes: SB_UNEUP {scroll one lint up) vertical scroll event occurs SB_LJNEDOWN {scroll one line down) SB_PAGEUP (scroll one page up) SB_PAGEDOWN (scroll one page down) SB_THUMBPOSITION (scroll to position) SB_TOP (scn,llloupparlaft} SB_80TTOM (scn>ll 10 k>wer righl} SB_ENOSCROLL (and of scn,IQ HO contains lhumb position if LO•SB THUMBPOSITION

Source:

Microsoft Windows 2.0 SOK Programmer's Reference, pages 506 lhrough 507, 550 through 603 Microsoft Windows 3.0 SOK Programmel's Reference, pages 6-48 through 6-113

SHAl■o:

6.01 s. Clipboard Fonnals and Clipboard File Fonnal 6.082. Fonnat of a Windows Message 6.083. Windows General Message Numbering 6.084. Window Management Messages 6.085. Initialization Messages 8.086. Input Massages 6.087. System and System lnfonnalion Messages B.088. Control Messages 8.090. Notification Massages 8.091. Noncllent Area Muuges 8.092. Scroll-Bar Messages 8.093. Mutliple Document Interface Messages 8.094. ODE Messages

Section 6: Microsoft Windows

6-102

6.089. CONTROL MESSAGES Messan11Name BM_GETCliECK

BM_GETSTATE

BM_SETCHECK

Pumoss wParsm Sent lo determine 11Btu& of check box Nalused or radio button Sent to determine if pulhbutmn high- Nol used lightedormousebuttonpreaedor SPACEBAR pn,lllld when button has focus or uw p181181 mouse button when cursor over button Sent to radio button or check box O=remove check Nonzero,. lace check removed Sent lo bullon dleck Nonzero=hinhli hied Senttoallerbullonstylt One of following style values:

h;it,19'1

BM_SETSTATE BM_SETSTYI£'

CB_AOOSTRINGI CB OELETESTRINGI CB DIRt CB_FINDSTRINGI CB GETCOUNTt CB_GETCURSELt

um

DI

box 0=h;g1ii;it,1

Adds siring to list box of combo box

olbox ~iiiirbox siring in list box

-

None

O=notredrawn

None

BS AUTOCHECKBOX B(AIITORAOIOBUTTON BS_AI/T03STATE BS CHECKBOX BS)EFPUSHBUTTON BS_GROUPBOX BS_LEmEXT BS_OWNERDRAW BS PUSHBUTTON BS=RADIOBUTTON BS 3STATE Not used

Nonzero=redrawn

lndextostriM

Notusad File soecification strina Lp lo ASCIIZ prefuc siting

Lp 10 ASCIIZ string

Nol used Not used

Copas

Not used lndaxtoitem Index to string

Not used Not used Lptobuffer

Returns length of string in lilt box

Index of string

Not used

Index to strino oosition or -1 Max number of bvtes Not used Index of item before search start or-1 Index of &Irina or -1 Notusad

Lo to ASCIIZ slrina to insert Not used Not used Lp lo ASCIIZ pref• su;ng

CB SETCURSELt CB_SETEDITSELt

Selects strina and scrolls into view Selects chars in edit control

CB SETITEMOATAt CB_SHOWDROPOOWNt

Setsvaluatoritam Shows or hides drop-down list box

DM_GETDEFIO

Retrieves ID of default push-button control lot dalog

DM_SETOEFIO

Sets default push-button control

EM_GETHANOLE

None

Notusad

Nolusad

n stromlistbox lchingstring

EM EMPTYUNOOBUFFERt EM_FMTUNES

Nol used

Retums currently selected ~em

~m6m~ textusarmavanler

EM_CANUNOO

Nol used

PUSHBUTTON ,it()underlOffll

Retums count of ilems in list box

; l'IM;ffionofselectedtext

box

for dialoa box Sent to determine if edit control can undo last edil Diracts control to emorv undo buffer Sant to add or remove EOL char tram text lines Sant to determine handle of buffer holdin11 control window contents Sant to copy I lina from the edit conllOI

Index of item TRUE=display if not visible FALSE=hide if visible Notusod

Not used LO=startposition HO=end oosilion New value for item Not used Not used

ID of new default control

Nol used

Not used

Nol used

Nol used O=remove EOL Nonzero=add CR CR LF to lines Not used

Not used Nol used

Unenumbar

Nol used

EM_GETIJNECOUNT

Sent to delermine number of lines of

Notusad

Farpointertobuffertostore Mne ~irst word=rnax lenglh atr.Not used

EM GETMODIFY

textineditc:ontrol Returns cum1nt value of mnniN 11an

Nol used

Not used

EM_GETIJNE

Retum .0 I chocked, 0 for

DOS attribute value Index of item before search start or-1 Not used

At

CB_GET\.BTEXTLENt

IParam Not used

-

Index to siring or CB_ERRor CB ERRSPACE Slrina count remainina 11am count or error Index of match or error

Item count Index of ilem or CB ERR

~ CB ERR Langlh in bytes or CB ERR lndaxolstrinaorerror TRUE=success None 1-olmatchor CB ERR Mav be CS ERR TRUE=success or

.

,,

MovbeCS ERR

None LO=ID HO=DC_liASDEFIO or NULL None Nonzero Wconlrol accoots EM UNDO None Nonzero if any tormattina occurs Datahanclleol edit control buffer Number of bylas ccpied

Number at lines in control Moct;1v100 (Conlinued)

Windolt'S Fmrctio'1s: Messages

6-103

6.089. CONTROL MESSAGES (con~nued) N

EM_OETAECT EM_OETSEL EM_UMITTEJCT

EM_UNEFROMCHAR' EM_UNEINDEX EM_UNELENOTH EM_UNESCROLL

EM_REPIACESEL

EM_SCROLLI

Sent lo dlltrmine forrmtling ractannleofcentral Sent lo dalarmine 111rt and and nnmuonsal11laction SenllOlimllanglloftextlha 1111rmav1nter Sant lo determine which line conlains a"'-"charactar Sant lo determine number of char M:litionsbeforefirstcharonline Sent to delermine langlh of line in edit control'slextbuffer 8enl lo ocroll conl8ld of conllol by a number of lines Sent to replace selection wilh new lad Sent to dil'ICl edit conbol ID scroll

wnlowvert0lilamselacled

Nol used Lptobutler

1~§=

Lp al buffer ID receive siring

Le~~olSlri~

""'

Not used

May _ numbal'alilernl ir,hvt950,8ffl)I'

Leng~olSlri~ in ......... orerror Index al ilem

Not used Lp to ASCUZ Siring to insert

lndexal1nse,tionor

Nol used

Nono

""" (Conlinuod/

6-104

Section 6: Microsoft Windows

6.089. CONTROL MESSAGES (canHnuod) wPsram lndu of start point lor search, -1=saarchallstri s O=tdeselect, nonzero=select

Mssss Name LB_SELECTSTRING

LB_SEUTEMRANGEI

IPsram

LIi lo ASCIIZ pl9fix siring LO=indaxoffirst HO=indaxollast Not used

Refum 1-ollllocled ltemorLB ERR May ba LB_ERR

Nona May ba LB_ERR Nona Ma baLB ERR Ma baLB ERR TRUEeall labl Ill Ma baLB ERR Not used Value

Nona Nona

Font handle or NULL Nona Nona Nona ilseff

Nona Nona

*Applies to all versions of Windows beginning with version 2.0. tApplies to all versions of Windows beginning with version 3.0. INo longer documented beginning with Windows 3.0 ¥LO word=start position, HO word=end position

f-1 =item 1 sorts before item 2 O=item 1 and 2 sort the same 1=item 1 sorts after item 2

Source:

Microsoft Windows 2.0 SOK Programmer's Reference, pages 508-510, 519 through 586 Microsoft Windows 3.0 SOK Programmer's Reference, pages 5-2 through 6-114

SoeAloo:

6.082. Format of a Windows Message 6.083. Windows General Message Numbering 6.084. Window Management Messages 6.085. Initialization Messages

6.086. Input Messages 6.087. System and System Information Messages 6.088. Clipboard Messages 8.090. Notification Messages 6.091. Nonclient Area Messages 8.092. Scroll-Bar Messages 6.093. Multiple Document Interface Messages 6.094. ODE Messages

6.090. NOTIFICATION MESSAGES M BN_CUCKED

Meaninn

wPsrsm

Button has been clicked

Control ID Control ID

BN_DISABL.E!

Button should be drawn as disabled

BN_DOUBI.ECllCKED'

User has double c~cked a mouse button

ConlrollO

BN_HILITEI

Button requires highlighting

ConlrollO

BN_PAINTI

Button requires repainting

COIIIIOIID

BN_UNHILITEI

Buttonrequiresurtlighli(tiling

Control ID

IPsrsm LOoconlrol handle HO=BN CLICKED LO=control handle HO=BN DISABLED LO=control handle HO=BN DOUBL.ECUCKED LO=conlrol handle HO=BN HILITE LOoconlrol handla HO=BN PAINT LO=eontrol handle HO=BN UNHIUTE

/COntinued)

Windows Fu11ctio11s: Messages

6-105

B.090. NOT/FICA TION MESSAGES (con6nusd) M

Mean/n•

wParam

User has double clicked in a list box

Control ID

CBN_DROPDOWNI

List box of a combo box win be dropl)8d down

ConlrollD

CBN_EDITCHANGEt

Control ID

CBN_ERRSPACEt

User has taken action hi may have allered Ila text In an edit conlrol Combo box of an edit conl,ol will display alllredltxt Lisi box control cannot allocate enough memory

CBNJNO:I SMOONIM "S60"9 S,KOpUJA\ 1/oso.t.J/W :9 UO/J:J~S

011-9

Wi,,doM's F11,,ctions: Fu11ctio11s

6-111

6.095. WINDOWS FUNCTION SUMMARY BY VERSION (conllnued)

.,., ., .,.,

.,., .,., .,.,

.,.,., ., .,.,., .,., .,., .,., .,., .,., .,

.,., .,., ., .,., .,.,

.,., .,., ., .,., .,.,

,.x

2.x

.,., .,., .,., .,.,., ., ., .,., .,., ., .,., .,.,

.,., .,., .,

.,

.,., .,., .,

.,.,.,

3.x

., .,.,.,

., .,., .,., .,., .,., .,., .,., .,., .,.,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,., .,.,

l.x

.,., .,., .,., .,., .,.,

.,., .,.,

., .,., .,., .,., .,., .,

., .,.,., .,.,., .,.,., .,., ., .,., .,., .,.,

2.x

.,., .,

.,.,., .,., .,.,., .,., .,

.,., .,., .,.,., .,.,., .,., .,.,

3.x

.,., .,

.,.,., .,.,., ., .,.,., .,., .,.,., .,., ., .,.,.,

.,., .,., ., .,., .,., .,., .,., .,., .,., .,., .,., .,.,

.,., .,., .,., .,., ., .,.,., .,., ., .,., .,., .,.,., ., .,., .,.,., ., ., .,., .,., ., .,., .,., ., .,

.,., ., .,., .,., .,., .,

(Continued)

6-112

Section 6: Microsoft Windows

6.095. WINDOWS FUNCTION SUMMARY BY VERSION (oontinuod) Function Name

,.• ., 3.•., ., ., ., .,.,., .,., .,., .,.,., .,., .,., .,., .,.,., .,.,., .,., .,., .,., .,.,., .,.,., .,.,., .,., .,., .,., ., ., .,., .,., .,., ., ., ., .,., .,.,., .,., .,., .,., ., ., .,., ., .,., .,., .,.,., .,., .,., .,., 2 .•

.,., .,., .,., .,., .,., .,.,

.,., .,., .,., .,., .,., .,.,

.,., .,., .,

.,., .,., .,

.,., .,.,., ., .,

., .,., .,

., .,., .,

.,., .,., .,., .,., .,.,., .,., .,., .,., .,., .,., .,., .,

,.,.• ., ., ., .,., .,., 2 .•

3.x

.,., .,.,., .,.,., ., ., ., .,.,., .,.,., .,.,., ., ., .,., .,., .,.,., .,.,., ., ., .,., .,., .,.,., .,.,., ., .,., .,.,., ., .,.,., .,., .,., .,., .,., .,.,., .,.,., .,., .,., .,., .,., .,.,., ., .,., .,.,., .,., .,.,., .,.,., .,., .,., .,., ., ., ., .,.,., .,.,., .,.,., ., .,.,., .,.,., .,.,., .,., .,., .,., ., ., .,.,

.,

.,., .,., .,.,

.,.,., .,., .,.,

.,., .,., .,., .,

(Continued/

(penu~=)

,.,. ,.,. ,.,. ,.,. ,.,. ,.,. ,.,. ,.,. ,.,. ,. ,.,.,. ,.,. ,.,. ,.,. ,.

,.,. ,.,. ,.,. ,.,.,. ,.,. ,. ,.,.

,. ,.,.,. ,.,.

,.,. ,.,.,. ,.,. ,.,. ,.,.,. ,.,. ,.,.,.

•·e

,.,.,. ,.,. ,.,. ,.,. ,. ,.,. ,.,. ,.,. ,.,. ,.,. ,. ,.,. ,.,.

,.,. ,. ,.,. ,.,. ,.,. ,. ,.,.,. ,.,. ,. ,. ,.,. ,.,.

,. ,. ,.

UDHO!J:)P818S

.L~ I , .

MOIIU!MIIOJOS OOll°"S IU9!K)OJ.UaeJ3S

1'3MOIIU!M•l80S JX31,!01JMll!/l,ll83S ~Q8',S

l:>61:1PUl'IOl:I 89Y O(]OJOISOY 11181Bd8Z!Sll:I 8DVSS8Wfii081:1 aOJd8AOWII:!

nuer-,9/IOW&l::I ::,aene1el:! 9Jrlltle:)1Be8i81::1

AQJ1S8CMOPU!M,18iS!Oil:t

19uuo:1p.1eoqa11:)laiS!01l::I SSVi:)lliSJDEll:I ltQ!Sl,Al:)81::1 U0!D8J:IUI~

81DLJ8l31:1 81181Bd8Z!1161:1 WW~pi81:1

81Q!SIJ\ld UO!D81:1Ullcl i:)ll:IUIJd OOISiJd ~81S10Jd OllllSIOJd

,.,. ,.,. ,.

,. ,.,. ,.,. ,. ,.,. ,. ,.

K'Z

..,

ij5!U!::UOJd J88iOIOJd

eoeSSIWl!noiSOcl 8D8SS8rfl90d

80IISS8nuuw1SOc1

U01111i"""'l0d BU!IA!Ocl UODA!Ocl

PJ0:181:181!::lil&WAllcl Bi!::lll8WABld ~d BDltSIWlllld

H&IOd 89Y3ill1Vd X30Nl3ill1Vd UDHilJ!ld DU!JISDnqoouoao

~ ~

,.,. ,.,.,. ,.,. ,.,. ,.

,.,. ,.,.

,.,. ,. ,.,. ,. ,.,. ,.,.

,.,. ,.,. ,.,. ,.,. ,.,. ,.,. ,.,.

~

---4- ~ ---4---4,. ,.L,.

,.,. ,.,. ,. -•!1-0 ,.,. 111~0

WWU'.-Q

DJQMOput.M1881J()

!fl1"IJO

"""-

"811181jJ() UDHIJll:li"IIO

11'18!SUVo.1.W80 IIUVolWOO UWSA8)1W8()

IIO()SOl&ION

111a1nn

,.,. ,.,. ,.,. ,.,.

,.,. ,.,. ,.,. ,.,. ,.,. ,.,. ,.,.,.

f-,-

punosueao u~1ueao

BWflNuotWUn:J

,.,. ,.,. ,. ,.,.

,.,. ,.,. ,.

,.,. ,. ,.,.,.

)11.K)SUIIOJd ~snl,IIOJd

,.,. ,.,. ,.,.

,. ,.,. ,.,.,.

,.L

8D8SSIWMOPU!MJ81S!CUl:t

81111:1DW8$10Jd

,.,. ,.,. ,.,. ,. ,. ,.,.,. ,.,. ,.

,.,. ,.,. ,.,. ,.,.

~ ~ ~

8:3Jl'IOS81::1iU0,:!8MIWll:I

,.,. ,.,. ,. ,.

7 ~ 7,. 7,.

...L

,.,. ,.,. ,. ,.,.

,.,.It ,.,.,. ,.,.

..L ..L ..L

,.,. ,.,. ,. ,.,. ,.,. ,.,. ,. ,. ,.

•·e •·z •·1

IIWBNU0/1~

{psnlJl/uao) NO/StJ311 AS AtJ\fl'/WnS NOUONtl,I SMOONIM '960'9

(11·9

SIIOfl3Un.:J ."SIIOfPllll.:J S,HOpll,IM

6-114

Section 6: Microsoft Windows

6.095. WINDOWS FUNCTION SUMMARY BY VERSION {conllnued}

., .,., .,., .,., .,., .,., .,.,., .,., .,., .,

., .,., ., .,.,., .,., .,., .,., .,., .,., .,., .,.,., .,., .,.,

t.x

2.x

.,., .,., ., .,., ., ., ., .,.,., ., ., ., .,., .,., .,.,., .,., .,., .,., .,., .,., .,.,., .,., .,., .,.,., .,.,., .,., .,.,.,

.,., .,., ., Source:

.,., .,., .,.,

.,., .,

3.x

.,., .,

.,., .,., .,., .,.,., .,., .,., ., .,., .,., .,., .,., .,., .,.,., .,., .,., .,., .,., ., .,., .,., .,., .,.,.,

.,., .,., .,., .,., .,., .,

Microsoft Windows 3.0 SOK Programmer's Reference, pages 4• 1 through 4-489

.,.,., .,., .,.,., .,., .,., .,., .,

1.x

.,.,

.,., ., .,

.,.,., .,.,., .,., .,.,., .,., ., .,.,., .,., .,., .,., .,

2.x

., ., .,., .,., ., ., .,., .,., ., .,., .,., .,., .,., .,.,., ., .,

.,., .,., ., .,., ., .,

.,., .,

.,., ., .,., . ., .,

.,., ., .,.,., .,., .,.,., ., .,.,., .,., .,., .,.,., .,., ., .,.,., .,., .,., .,.,., .,., .,., .,., .,., .,., ., .,.,., .,., .,., .,

3.x

.,., ., .,., .,., ., ., .,.,

Wi,rdows F1mctio11s: Functions

6-115

6.096. WINDOWS FUNCTION SUMMARY BY NAME Function Name AccelSRIIOUfOI

Im

T"""

"'dAtom

ATOM

AddFonlResource

'"' vdd

~--""'

AdjultWl.....,.dExl

--

AllocOSloCSAlut

Parameters"' hlnstance hReslnlo n..fdn lpRlename

l>Aeol

vdd

~Root dwS\jle bMe111

WOAD

wSelector

LPRECT DWORD BDOL LPRECT DWORD BOOL DWORD WORD

HANDLE

hlnstance hReslnlo dwSlze wSelector

HANDLE HANDLE DWORD WORD

hPalette wSlalllndex wNumEntrles llnPaletteColors ~Siring

HPALETTE WORD WORD LPPALETTEENTRY LPSTR

~ng nLeiitllh rrentChar

LPSTR WORD LPSTR I,r>TR LPSTR LPSTR LPSTR LPSTR

dwSljle

_..... bMOIII

AllocSelectort

WORD

AnmalePalellel

vdd

Ansil.awer

LPSTR

An~LowerBuflt

WORD

AnslNexl

AnsiPrev

LPSTR LPSTR

AnslioOem

Im

~oOemBufll

void

~S18" 11!Curren1Char lpAnoSlr l•OemSlr

~•Sir

~OemStr

LPSTR

nle""" ~Siring

WORD LPSTR LPSTR WORD

AnsiUpper

LPSTR

AnslUpperBulft

WORD

~~'.! rone

Appenc1Me111t

BOOL BOOL

hMe111 wFlags ~~l:m

"'

BOOL

noc-

x, YI

X2 Y2

X3 Y3 X4 Arran"' lcoricWindowst BeglnDeferWlndowPost

WORD HANDLE

Be~nl'llm

HOC

BilBil

Parm 7.,,.9

HANDLE HANDLE LPSTR LPSTR

BOOL

Y4 hWnd nNumWindows

Im

ICalMagRller

BOOL

vdd

LPSTR HOC

Im Im Im Im Im Im Int Im HWND

Im

hDe~OC

HWND LPPAJNTSTRUCT HOC

X y nWldlh rile~

int Im Im Im

lhWnd 1I,.Palnt

hSrcDC

Btl--;;;;;WlndowTOTM BuldCcrninOCB

HMENU WORD WORD

HOC

XSn: YSn:

Im Im

dwR-

DWORD HWND LPSTR DCB FAR• LPMSG

hWnd

i>lliil

l~oce ~Msg nCode

Im

Parameter Definition IDs Instance ol module conlalnlng resource IDs desired resource Polntsloctlarstrlnntoaddtotable Points lo ctiar Siring containing font res file or contains hande lo loaded module Poln!s lo RECT structured client rectangle Speciles sty1e1 .,;._.._s whether wlndaw has meru Points to RECT of cllenl redangle Specltles window styles of window to convarl Specltles 'Ml8lha wlndy Polnltr!Obutler!Orecelvebhmapblls Pointer to BITMAPINFO specifying color and dim RGB or PAL colors tor bmiColors IIDalchildwlndow ID of dialog box containing COnlrol 10 ol hem to relrieve IOoldialogbox IDoldlalog,boxftemtolranslate l~:,~=r~~=~~::~e 10 of dialog box containing cor1rol 10 of dialog-box item to retrieve caption or teld for Pointertobutfertoreceiveteld Malllmumlenlllhofbutler

nMaxCoont

im LPSTR LPSTR WORD

Oriveto~for 1'-"-08=1andsoon Pointer to ASCIIZ string naming port Pointer1obutlerl0receiveenvirorvnert Maximum number of !Mes in butler

GelFoa,s

HWND

GelFfeeSf>acel

DWORD

wAags

WORD

Flag specifying where to scan heap

GelGValue

BYTE BOOL inl

fr,,bColor

DWORD

Colof~Mcification

hlnstance pData nCoum

HANDLE NPSTR

10 otpreviouscallofapplicaUon Pointertobuflerlncurrentinstance Numberofhukostocoriv

Ge!IM1Jt$tate

GellnstanceOala

~

-

inl void inl im im HWND

~-·

nSlze nVi"iti"w hwndOwner

'"

FAR•

LPSTR WORD

'"

HWND

Poinlerto256-hutebutlerot~rtua1-ke11codes fla T""IOl'SU 32-bftparameterofkeyboardmessage Buffer IO receive key name Maximum le......, of name int hutes Virtualke11 ID of owner window

hDC hWnd

HDC HWND

IDofdeviceconteld: ID ol window wilh menu lo examine

Oinenslonst Ge!MenuttemCount

WORD

hMeoo

HMENU

IOolmenuhandletoeKamine

IGelMeooltemlD

WORD

hMeoo hPos hMeoo wlD wAa"s

HMENU

10 ol handle to popup menu containing Hem Position of menu nem to relrefve ID tor 1D ofmeoo Menu Kem 10 Nalure of wlO carameler

IGe!MeooSta1e

WORD

183

L.Oax-coord

183

'"

HMENU WORD WORD

Task ID or NULL 1 :11nentllme nms None Displaycontextcr NULL I.Oax-coord HO,,-coo,d 1D otde Valueofttem

.,..,

164

164 164 18S 18S 18S 18S

DlalO"baseunfts Number of scan linescopiedorO

170 171

ID of child window or NULL ID of control or NULL Translated value

172

Adualoomberof charscopiedto bufferorO

-

copied to buffer 010 10 of window with 1ocu1.orNULL Amourtofavail mem~ln1nites Green value of color 1""' 11 Slateor0 Numberolbytes

113 174

174

175

,__

.....ill

...m 176 177 177

178 178 178

aclu~~co~ed

~

~

c!!1. ~ 182

stringcopied

Stateolk"" ID of most recent

183 183

OMUO

im HMENU DWORD

~ I

P••

adchuorselector HO-•coord

HANDLE DWORD

void

Return Value

ICurrent,.uts hDC

M11miin11mode IDotmenuorNULL

LO-HO=h~"" Number d tt«ns lnrneooor•I llemlDcr•I Doesn1eG■•I

ormasldvalues

184 164 164

185 18S 186

Sec-tion 6: Microsoft Windows

6-124 6.096. WINDOWS FUNCTION SUMMARY BY NAME (conlinued)

Function Name Ge1Menu:;v1ng

im

T•=

Parameters• hMel'IJ

wlOltem ~5'rlng nMaxCoum

wRao IGetMessaga

BOOL

~Msg hWnd

wMsgFllerMln wMsgFllterMu

Parm T'1ffl' HMtNU WORD LPSTR Im WORD

Parameter Definition IIDOl'ffllrll

Menulem ID Polnllrtobuffertorecelvelabel

Return Value

1~u::z·--

M....,mlenglhollabel NaturealwlOn111nimeter

LPM5G

PdntertoMSGlbu~

HWND WORD WORD

ID al window or NUU. lnlegar value of lowest menage value to retrieve lnltgar value or highest message value to retrieve

GetMe,sagePos

DWORD

Ge!Messaaelime GetMetafile GelMetaFileBHs

DWORD HANDLE HANDLE

I Filename hMF

LPSTR HANDLE

Pointer to ASCIIZ strinn ol DOS melafile name ID al m8laftle In memory

GelModuleFileName

im

hMocllle

HANDLE LPSTR Int LPSTR

IDolmocllle Maximum size of butler Pointer to ASCIIZ slrl~ specifying module

-0 Nmnsage other lhanWM_QUIT, oro

• LO-x~d

Polnttrtobutrartorec:elvefllenama

GetModuleHandle

HANDLE

nSlze lpModuleName

GetModuleUsage

inl

hModule

HANDLE

ID of module

GetNearestColor

DWORD WORD

GetNeXIDlgGroupltem

HWND

GelNeXIOlgTabhem

HWND

wRao

HOC COLORREF HPALETTE COLORREF HWND HWND BOOL HWND HWND BOOL HWND WORD

ID al device context Color lo be matched

GetNearestPalettelndext

hDC crColor hPalette crColor hDlg hCII bPrevious hDlg hCII bPrevlous hWnd

Color to be matched JD at dialog box to search 10ofcon1rolindialogboxtostartsearch How function Is to search claloa box IO of dalog box to search IOofcontrolindialogboxlostartsearch How function is to search claloa box ID of cooent window Handle of neXl or orevious window flaa

hObjecl nCount loObim hPalette wStartlndex wNumEntries lpPaletteEntries hWnd

HANDLE inl LPSTR HPALETTE WORD WORD LPPALETTEENTRY HWND

IDolo~m Number of bytes to copy to buffer Pointer to buffer to receive data ID of logical palette Flrstentrylnpaletletoretrieve Number of entries to retrieve Pointer to arr av of struels to receive enlrles 10 of window to retrieve parent window 10 for

hOC X y hOC ~PriorilyLia nCou~

HOC int Int HOC WORD FAR• int

IDofdeviceconteXl x-coord of part to examine -coord of Dolnl to examine IOaldeviceconteXl Pointer to array of dipboard ormats Number of clipboard formats in list

LPSTR LPSTR inl LPSTR LPSTR LPSTR LPSTR LPSTR inl LPSTR HANDLE LPSTR LPSTR LPSTR lnl

Pointer to name of application Pointer to key name DetauHvalueforgivenkeyifnol In file Pointer to strina naminll irilializatlon file Pointer to name of appMcation Pointer to key name DetauH value for key ii not in file Pointertobufferloreceivecharstring Maxiroom number of characters In buffer Pointer to strina narnlna lnldaNzation file JD of library module containing function Pointer lo function name or ordinal value of !unction Pointer lo application name Pointer 10 key name DetauHvalueforke llnotfoundlnfile

Ge!NeXIWindow

HWND

GetNumTasks GelOb~a

int inl

Ge1PaleneEn1riest

WORD

GetParent

HWND

Ge!Pi""1

DWORD

GelPotvFillMode GetPriorityuipboard

inl inl

Formal! GetPrivateProfilelntt

IGelt"livateProl~eStringt

GetProcAdchss GelProfilelnl

WORD

lpApplicationName lpKeyNeme nOetault I FileName lpApplicationName inl lpKeyName lpOelault lpReturnedStrlng nSiZe FileName FARPROC hMocll~ lDProcName WORD lpAppName ~KeyName nOelauH

ID of logical palette

188

188

'Iii 7E al

oortalnsmetallt

lpfllename

187

or NULL AOluallenglhol lllrlngcoped

'lea 190

IDofmOOJle or NULL Reference count of moclJle RGBvalua

191

Index to palette

192

Next or previous cortrdlnc,oup

193

Next or previous control having

193

191 192

labsMe NeXlorprevious window Number of tasks Aelual111mber01 bylosrelrlevedor

194 194 195

0 Number of entries retrieved, orO

195

luofparentwlndow or NULL

196

RGB-or-1

196

llnotlndlpreglon Pdvaon fillna mode Hg,eaclipt,o•d

197 197

formal,NUU.or -1 data not In list OHvaluenollnlor

198

negaUve,crnJmefiC value Num........ c:hars oo~edorNULL

199

200 Palnlertoenlry oonl or NULL 201 Ollvaluenollntor negatlvt,croomerlc value (Contklued}

Wi11dows F,mctio11s: F,mctio"s

6-125

6.096. WINDOWS FUNCTION SUMMARY BY NAME (contmued) Function Name 1"°''""""'""11

T11m

~KeyNamo lpOetauH lpReturnedStrlng

U11t1gnB011t

nSlze hWrd

Int HWND LPSTA

[;&!RQP2 ~IRVakle .--..ollPol

Int

hOC

BYTE Im

olor hWrd

oe,ScrolRange

vdd

hWrd

nBa:

nB•

lpMinPos I MaxPos

GolSlockObjecl

HANDLE

Ge!StrelchBl!Mode

im

GelSubMenu

HMENU

"

GolSyoModalWlndow GetSyslomllite

? Suppressed

'suooressedl 58 61

39

Alt sunnressed Snacebar

64

3A

Caps Lock

65 66 67

3C 3E

F2 F4 F6 F8 F10 F1 F3 F5 F7 F9 Esc Kevoad 7

38

Sunnressed Snacebar Suppressed

1sunnressed\

68 69

40 42 44

70 71 72 73 74 90 91

3B 30 3F 41 43 01 47

Esc

Homo

(Conttnued)

Keyboards

7-17

7.013. AT 8.f-KEY KEYBOARD NUMBERS AND SCAN CODES (continued) Ke Number 92 93 95

Hex Scan Code 4B 4F 45

96 97 98 99 100

48 4C

101 102 103 104 105¥ 106¥ 107¥ 108¥

49 40 51 53

11 ercsse Lert Arrow End Suppressed

so

52 46

54

Not documented 4A 4E

PrtSc

¥The base case and uppercase of keys 105 through 108 differ In the source. The base case and uppercase used In this table are shown on the U.S. English keyboard diagram (page 4-33). Note:

• Some key numbers and scan-code numbers are missing because they are reserved by IBM. • Suppressed Indicates the key combination Is not passed by the keyboard routine In BIOS.

Source:

IBM PC/AT Technical Reference, pages 1-44 through 1-46.4, 4·18 through 4-20, and 4.33

See Also:

1.21. 1.23. 7.012. 7.014.

ASCII Character Set IBM Keyboard Extended Function Codes PC 83-Key Keyboard Numbers and Scan Codes AT 101/102-Key Keyboard Numbers and Scan Codes

7-18

Sectio11 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

.

7.014. AT 101/102-KEY KEYBOARD NUMBERS AND SCAN CODES Kev Number 1 2 3

4 5 6 7

8 9 10 11 12 13 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Hex Scan Code 29 02 03 04 05 06 07 08 09 OA OB

oc

OD OE OF 10 11 12 13 14 15 16 17 18 19 1A 1B

2B

BsseCsse 1 2 3

4 5

6 7

8 9

. -I

,

,.#

~ ~

0

-

Backsnace

Tab

+ Backsnace

Back Tab

w

a w

t

E R T

•r u I 0

y

u I 0

p

I

3A

Caps Lock SUDDressedl

Suppressed

31 32 33 34 35 36 37 38 39 40 41 42+ 43

1E 1F 20 21 22 23 24 25 26 27 28 2B 1C

a

A

44

2A

45+ 46 47

s

s

d

D F

I

k

G H J K

I

L

'"h

# Enter Loft Shift

ltsucoressecn I z

-

Enter Suppressed

50 51 52 53 54 55 57

05 2C 2D 2E 2F 30 31 32 33 34 35 36

58

1D

Leff Ct~ ltsunnressed'

Suppressed

60

38

Left Alt

Suppressed

61

39 E0,38

48 49

X C V

b n

m

I Right Shift

z X C

V B N M
? Suppressed

ltsuMressedl

62

64

E0,10

75 78 79 80 81

E052 E053 E04B E047 E04F

tsunnressedl Snacebar Right Alt

Soacebar Suppressed

tsunnressedl Right Ct~

Suppressed

1sunnressecn

Insert Delete Left Arrow

Home End

(Con#nued)

Keyboards

7-19

7.014. AT 1011102-KEY KEYBOARD NUMBERS AND SCAN CODES (conffnued}

K•vNumnsr

H~x ...can Cods

83 84 85 86 R9 90

E048 E050

E0.49

p

E051 E040 45,C5

PnOn RlnhtArrow Num Lock

91 92 93 95 96 97 98 99 100 101 102 103 104 105 106 108 110 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126

47 4B 4F E035 48 4C 50 52 E037 49 40 51 53 4A 4E E01C 01 3B 3C 30 3E 3F 40 41 42 43 44 09 DA 2A37 46 1DE045EOC590

Bess Cs .... Un Arrow Down Arrow

suoaressedl ad7 K d4 1

u

Suppressed Home LeflAmm End

I

Kevnad /

8 5 2

U"'Arrow

~

Ins

9 6 3

P•ne U"'

.

Enter

Down Arrow

Kevnad •

adad+

ad Enter

..•• F3

F5 F6 F7 F8 F9 F1n F11 F12

Print Screen Scroll Lock Pause

tonly appllcable to non-U.S. keyboards. Actual characters vary depending on the country of the keyboard. Note:

• Some key numbers and scan-code numbers are missing because they are reserved by IBM. • Suppressed Indicates the key combination Is not passed by the keyboard routine In BIOS.

Source:

IBM PC/AT Technical Reference, pages 1-45 through 1-46.4, and 4-65 through 4-68

See Also:

1.21. 1.22. 7.012. 7.013. 7.015.

ASCIICharacterSet IBM ASCII Character Sol PC 83-Key Keyboard Numbers and Scan Codes AT 84-Key Keyboard Numbers and Scan Codes PS/2 Keyboard Numbers and Scan Codes

7-20

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

s,,,i

7.015. PS/2 KEYBOARD NUMBERS AND SCAN CODES Ke11Number 1 2 3 4 5 6 7

e

9 10 11 12 13 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29t 30 31 32 33 34 35 36 37 38 39 40 41 42¥ 43 44 45¥ 46 47 48 49 50 51 52 53 54 55 57 58 60 61 62 64 75 76 79 80 81 83 84 85 86 89 90 91

Sel2 1"-/FO 16

04/84 05/85 06/86 07187 08/88 09/89 OA/SA OB/8B

oc,ec 00/80 OE/SE OF/SF 10/90 11 /91 12/92 13/93 14/94 15/95 1"-/96

17 /97 18/98 19/99 1A/9A 1B/9B 2BIAB 3A/BA 1E/9E 1F/9F 20/AO 21/A1 22/A2 23/A3 24/A4 25/AS 26/A6 27/A7 28/ AS 2B/AB 1C/9C 2A/AA 56106 2C/AC 20/AD 2E/AE 2F/AF 30/BO 31 /B1 32/B2 33/B3 34/B4 35/B5 36/B6 1D/9D 38/B8 39/B9 E038/EOB8 E01D/E09D E052/EOD2 base E053/EOD3 base E04B/EOCB base E047/EOC7 base E04F/EOCF base E048/EOC8 base E050/EODO base E049/EOC9 base E051/EOD1 base EO 4D/EO CD base 45/C5 47/C7

1E/F01E 26/F026 25/F025 2E/F02E 36/F036 3D/F03D 3E/F03E 46/F046 45/F045 4E/F04E 55/F05• 66/F066 OD/FOOD 15/FO 15 10/F010 24/F024 2D/F02D 2C/F02C 35/F035 3C/F03C 43/F043 44/F044 4D/F04D 54/F054 5B/F05B 5D/F05D 58/F058 1C/FO 1C 1B/FO 1B 23/F023 2B/F02B 34/F034 33/F033 3B/F03B 42/F042 4B/F04B 4C/F04C 52/F052 5D/F05D 5A/F05A 12/F012 61 /F061 1A/F01A 22/F022 21 /F021 2A/F02A 32/ F032 31 /FO 31 3A/F03A 41 /FO 41 49/F049 4A/ FO 4A 59/F059 14/FO 14 11 /FO 11 29/F029 E011/EOFOi1 E014/EOF014 EO 70/ EO F070 base E071 / EO FO 71 base EO 6B/ EO F06B base E06C/EOF06C base E069/EOF069 base E075/EOF075 base E072/EOF072 base EO 7D/EO FO 7D base E07A/EOF07A base E074/EOF074 base 77/F077 6C/F06C

Set 3 MskelBreak

OE/FOOE 16/FO 16 1E/FO 1E 26/F026 25/F025 2E/F02E 36/F036 3D/F03D 3E/F03E 46/F046 45/F045 4E/F04E 55/F055 66/F066 OD/FOOD 15/FO 15 10/FO,O 24/ FO 24 2D/Fo2D 2C/F02C 35/F03• 3C/F03C 43/F043 44/F044 4D/F04D 54/F054 5B/F05B 5C/F05C 14/ FO 14 1C/F01C 1B/F01B 23/F023 2B/F02B 34/F034 33/F033 3B/F03B 42/F042 4B/F04B 4C/F04C 52/F052 53/F053 5A/F05A 12/FO 12 13/FO 13 1A/F01A 22/F022 21 /F021 2A/F02A 32/ F032 31 /F031 3A/F03A 41 /F041 49/F049 4A/F04A 59/F059 11 /FO 11 19/F019 29/F029 39/F039 58/F058 67/F067 64/F064 61 / F061 6E/FO•E 65/F065 63/F063 60/F060 6F/F06F 60/F06D 6A/F08A 76/F076 6C/F06C

Base Case

UnnArcsse

-I

,..,

1 2 3 4 5 6 7

,.#

. %

e

~

-

.

w

a w

t

E R T

9 0

Backscace Tab

•r

Backsoace Back Tab

y

u

u I

I 0 p

0 0

I CAns Lock

a

A

s

s d

D F

I

G H J K L

h k

I

Enter Left Shift

Enter

z

z

X

X C V B N

C

V

b n m

M < > ?

I

I

I

t Snacebar

nsert Delete

Left Arrow Home End Uc Arrow Down Arrow PnUn PnDn RlohtArrow

Numlock Kevnad 7

Home

(Conlinued)

Keyboards

7-21

7.015. PS/2 KEYBOARD NUMBERS ANO SCAN CODES (conNnuod)

K~vNumlvlr 92 !13

"' 96 97 98 99 100 101 102 103 104 105 106 108 110 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126

se 1M&ks/BrAllk. 4B/CB 4F/~"" EO 35 / en B5 base 46/C8 4C/CC 50/00 52/02 37/B7 49/C9 40/CD 51 /01 53/03

4A/CA 4E/CE EO 1C/E09C 01/81 3B/BB 3CtBC 30/BD 3E/BE 3F/BF 40/CO 41/C1 42/C2

43/C3 44/04

Sol.ok EO 4A

base

75 73/F073 72/F072 70/F070 7C/F07C 70/F070 74/F074 7A/F07A 71 /F071 7B/F07B 79/F079 EOSA/EOF05A 76/fn75 05/fon-. oeIFone 04/F004 or.tFOOC 03/F003 OB/FOOB 83/F083 OA/FOOA 01/ FO 01 oa/f009 78/F078

B

57/07 58/08 E02A E037 /EO B7 EOAA E012EO 46/CS E11045 E1 90 CS E11477

EOF012

14F077

····6B

77 75/F075 n.tF073 72/F072 70/F070 7E/F07E 70/F070 74/F074 7A/F07A 71 /F071 84/F084 7C/F07C 79/F079 08/F008 n7/f007 OF/FOOF 17/F017 1F/FO 1F 27/F027 2F/F02F ~7/F037 3F/F03F 47/F047 4FtF04F 56/F056 5E/F05E 57/F057 SF/FOSF 62/F062

Base Case ad4 ad 1 IW'9u"'ad/

IJrd Keu"'ad •

E~

Kevnad Ke""'ad + Enter

F5 F6 F7 FB F9 F10 F11 F12 Print Screen Scroll Lock Pause Break

t101-key keyboard only ¥102-koy keyboard only

Note:

• Some key numbers and scan-code numbers are missing because they are reserved by IBM. • In set 1, Shift case adds an EO AA preceding the make code and an EO 2A followlng the break coda (for applicable keys only). • In set 1, Num Lock case adds an EO 2A preceding the make code and an EO AA following the break code (for applicable keys only). • In set 2, Shift case adds an EO FO 12 preceding the make code and an EO 12 following the break code (for applicable keys only).

•Inset 2, Num Lock case adds an EO 12 preceding the make code and an EO FO 12 following the break code (for applicable keys only).

• Set 2 Is the default set.

Source:

IBM PS/2 Model 50 and 60 Technical Rofenmce, pages 6-30 through 6-46 IBM PS/2 Model 80 Technical Reference, pages 6-30 through 6~

SeeAloo:

1.21. ASCII Character Set 1.23. IBM Keyboard Extended Function Codes 7.012. PC 83-Key Keyboard Numbers and Scan Codes 7.013. AT 84-Key Keyboard Numbers end Scan Codes 7.014. AT 101/102-Key Keyboard Numbers and Scan Codes

u,.,.,e,case Lett Arrow End I U"'Arrow Down Arrow Ins

u--

Pa"'e Ai ht Arrow Pane Down Del + Keu"'ad Enler Esc

7-22

S,ction 7: Moth,,·boards, Keyboards, Video Adapters, Peripherals, and Chips

7.016. PC AND XTTYPE-AHEAD BUFFER LAYOUT Desc lion Points to next character In buffer Potnts to next blank ace In buff r Area used to store troke d Note:

• If Buffer_Head- Buffer_Tall, the buffer Is amply,

• Two bytes are necessary to store each keystroke, because the IBM extended keys (F1 •F1 O, for example) consist of 2-byte codes. If the first byte for a keystroke Is nonzero, then It represents the ASCII key, and Iha second byte Is zero. If the first byte la zero, than It represents an extended key, and the second byte Indicates the actual key pressed. • Two low-memory words store Iha location of the buffer start (at 0040:0080) and one byte past Its end (at 0040:0082). •Ona standard PC, the keyboard buffer Is usually localed at 0040:001A. Source:

IBM PCJXT Technical Reference, BIOS Ustlng, page A-3 (orlglnal manuals only)

IBM PS/2 and PC BIOS Interface Technical Reference, pages 3·5 and 3-10

See Aloo:

4.002. BIOS Memory Usage Summory

7.017. AT KEYBOARD STATUS REGISTER Bit Number

., .,6 5 4 3 2 ., ., ., ., ., ., 7

Note:

The status register Is at 1/0 address 64H.

Source:

IBM PC/AT Technical Reference, pages 1-49 through 1~so

See Also:

7.018. AT Keyboard 1/0 Command Summary 7.019. AT Keyboard Input Port Bit Definitions 7.020. AT Keyboard Output Port Bit Definitions

Keyboards

7-23

7.018. AT KEYBOARD 1/0 COMMAND SUMMARY Command Name ard controller Rea Write keyboard controller

ndVa 20H 60H

IBM PC mode Disable keyboard Inhibit override System flag RESERVED-•always 0 Enable ou ut-buffer-tull lnterru 55H laced In out ut buffer II successful Returns code In output buffer u follows: No error detected Keyboard clock Hne Is stuck low Keyboard clock llne Is stuck high Keyboard data llne Is stuck low

SeWtest Interface test

AAH

ABH

Comments Writes command byte--see bitmap at right AESERVED--always 0 IBM PC compatlbllity mode

data llne I stuck hi h

7

6

5

0 ti ti ti ti ti ti

0 0 0 0 0

0 0 0 0 0

es of controller's RAM

ACH ADH AEH OH DOH D1H EOH FO•FFH

Source:

IBM PC/ATTechnlcal Reference, pages 1-51 through 1-54

7.019. AT KEYBOARD INPUT PORT BIT DEFINITIONS Bit Number

765432 ti ti um er status

ti ti ti

ti

ti

Allowable Values O=inhiblted 1=-not Inhibited O•CGA 1-MDA 0= um er Installed 1-not Installed 0=512K 1•256K

ti

Source:

IBM PC/AT Technical Reference, page 1-55

BeaAIIO:

7.018. AT Keyboard 1/0 Command Summary

7.020. AT KEYBOARD OUTPUT PORT BIT DEFINITIONS Sit Number 765432 ti ti ti ti ti

ti

ti ti

Source:

IBM PC/ATTechnlcal Reference, page 1·55

SeeAl■o:

7.018. AT- Keyboard 1/0 Command Summary

Bit Number 4 3 2

0 0 0 0 0

0 0 0 0 0

0 0 1 1 0

7-24

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7.021. AT KEYBOARD TYPEMATIC RATE DEFINITIONS BIi Number 7

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

~

~

4 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0

n

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

3

2

t

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

0 0

0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

n

0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1

1

0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

n

1 0 1 0 1 0 1 0 1 0 1

R•M •n.n

28.7 24.0 21.8 20.0 18.5 17.1 18.0 15.0 13.3 12.0 10.9 10.0 9.2 8.8 8.0 7.5 8.7 8.0 5.5 5.0 4.8 4.3 4.0 3.7 3.3 3.0 2.7 2.5 2.3 2.1 2.n

•used to set delay (1 plus binary value • 250 mllllseconds)

Source:

IBM PC/AT Technical Reference, pages 4-10 and 4-45

SH Also:

7.018. AT Keyboard 1/0 Command Summary

Video Adapter Summaries

7.022. VIDEO ADAPTER MEMORY USAGE AND OUTPUT SPECIFICATIONS

System

FNtureB

•eoooo for 32 K, or B8000 for 32 K, or A0000 for 64 K, or A0000 for 128 K. Also for the EGA, a 16 K BIOS EGA extension module Is mapped ta processor address C0000. tWhen used with IBM Monochrome Dlsplay Source:

IBM Options and Adapters Technlcal Reference, Vol. 2, pages Monochrome Adapter 1 through 7 and Color Graphics Monitor Adapter 1 through 13 IBM PS/2 Model 50 and 60 Technical Reference, pages 4-19 through 4-29 IBM PS/2 XGA Adapter Interface Technical Reference, pages 1-1 through 1•4 IBM PS/2 Model 80 Technical Reference, pages 4-19 through 4-29 IBM PS/2 Olsplay Adapter 8514/A Technlcal Reference, page 1-4 •xGA Standard is Good, But Ifs Not For Everyone--Yet," PC/Computing, January 1991, page 39

See Aleo:

7.026. MDA Memory Map 7.029. MDA l/0 Port Usage 7.030. CGA Memory Map 7.033. CGA 1/0 Port Usage 7.034. EGA Memory Map 7.037. EGA 1/0 Port Usage 7.038. VGA Memory Map 7.041. VGA 1/0 Port Usage

7-25

Sectio11 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7-26

7.023. VIDEO MODES SUMMARY Adaoter Sut. aort

Rows 25 25 25 25 25 25 25 25 25 25 25 25 30 30

25

43, 50 or60

.,., .,.,

.,., .,

.,., ., .,.,., .,

.,., .,., .,., .,., .,.,., .,.,., ., ., .,.,., .,.,., ., .,.,., .,.,., ., ., .,

MDA CGA EGA MCGA VGA XGA!'

Cols

40 40 80 80 40

.,., ., .,

40

80 80 40 80 80 80 80 80 40 132

.,

.,.,.,

.,., ., .,.,

*720x400 on VGA tVirtual resolution is 1056 by 200, 350, or 400 scan lines. Each character is a pixels wide. Character height depends on font used. ¥XGA supports all VGA modes, but only works on 386 or 486 machines. Note:

• EGA figures assume it has a full 256K of RAM. • Modes 8-12 are used by PCjr only. • The default XGA mode is VGA. XGA also supports special non-BIOS modes via the HSMODE function, with the following new modes available:

Mode

Col/Size

12x20 8x14 8x14 7x15

Source:

Rows 38 34 54 51

Cols 85 80 128 148

IBM PS/2 Model 30 Technical Reference, page 1-39 IBM PS/2 Model 50 and 60 Technical Reference, page 4-27 IBM PS/2 XGA Adapter Interface Technical Reference, page 3-35 IBM PS/2 Model 80 Technical Reference, page 4-27 XGA Video Subsystem Hardware Users Guida, pages 1, 126, and 134 "XGA: A New Graphics Standard,• Byte, February 1991, pages 285 through 290

7.024. VIDEO CHARACTER FONT SIZES BIOS Mode Mode# 0 1 2 3 7

20 14 •

Character Box Size

Rows Cols Colors 40 16 25 25 40 18 25 80 16 25 BO 16 25 80 Mono 43 SO or60 132

MOA

9x14

CGA 8x8 8x8 8x8 8x8

EGA MCGA Bx14 8x16 8x14 8x16 8x16 Bx14 Bx14 8x16 9x14

VGA 9x16 9x16 9x16 9x16 9x16

•Mode 20 (14H) is a VGA extension. Veralon:

Applies to text modes 0-3 and 7 only.

Note:

XGA emulates VGA for text modes or uses 132-column text mode (a VGA extension) for higher resolution.

Source:

IBM PS/2 Model 50 and 60 Technical Reference, page 4-27 IBM PS/2 Model 80 Technical Reference, page 4-27 IBM PS/2 and PC BIOS Interface Technical Reference, page 2-13 IBM PS/2 XGA Adapter Interface Technical Reference, page 1-1 XGA Video Subsystem Hardware Users Gulde, pages 1,126, and 134 •xGA: A New Graphics Standard,• Byte, February 1991, pages 285 through 290

SeeAlao:

7.027. MDA Character Box 7.031. CGA Character Box 7.035. EGA Character Box 7.038. VGA Character Box 7.042. XGA Character Boxes

Video Adapter Summaries

7-27

7,025. VIDEO MONITOR USAGE SUMMARY EGA

NO NO YES NO NO OPTIMUM NO

Note:

M

NO NO NO NO NO NO OPTIMUM

VGA NO NO NO NO NO NO OPTIMUM

XGA

NO NO NO NO NO NO OPTIMUM

• Optimum lndicatu monitor for which display adapter was designed. • Marginal lndicatea monitor will work, but results will not be high-quality.

7.026. MDA MEMORY MAP For Alphanumeric Tert Display (Mode 7): Data stored as follows· Buffer Start: A000:0000

I

Even byte is character code. Odd b•lfe is attribute for character.

Upper-left comer

400! bytes Lower-right corner

B000:0FA0

MEMORY NOT USED Up to seven additional pages follow sequentially, using memory through B000:7FFF.

Source:

IBM Options and Adapters Technical Reference, Vol. 2, page Monochrome Adapter 6

See Also:

7.022. Video Adapter Memory Usage and Output Specifications 7.023. Video Modes Summary 7.028. MCA Character Attributes

7.027. MDA CHARACTER BOX Character ls a 7x9 plxel area In a 9x14 plxel box.

X X X X X

X X X X X X X X X X X X X X X

X • pixels set for a typical character "A" • • pixels set for defauII cursor X X X X X X

X X X X X

Source:

IBM Option■ and Adapters Tachnlcal Relarenc:e, Vol. 2, page Monochrome Adapter 2

SH AIIO:

7.024. Video Characlet' Font Slzea

4K

P,g

e, Butter End B000:0F9F B000:0FFF

7-28

Sectio,i 7: Motherboards, Keyboards, Video Adapters, Peripherals, a11d Chips

7.028. MDA CHARACTER ATTRIBUTES BIi Number 5 4 3 2

.,7 ., ., ., 6

Note:

,

., ., .,

0

Allowable V.-n,.s 0-no bllnk 1•bllnk 000•black backgrouna 111 •White ha,...;;round o-normal 1•hlnh lntensnv ooo-blllCK character 001-underllna 111-whlte character

Function BHnk Background

lntensltv ti' Foreground

lnvlslbla characters are created by placing a character on a background of the same

color (e.g., white on white). Source:

IBM Options and Adapters Technlcal Reference, Vol. 2, page Monochrome Adapter 6

See Also:

7.032. CGA Character Attributes 7.036. EGA Character Attributes 7.040. VGA Character Allrlbutes 7.043. XGA Character Allrlbutes

7.029. MDA 1/0 PORT USAGE

Comment

Port 3B0H 3B1H 3B2H 3B3H 3B4H 3B5H 3B6H 3B7H 3BBH

Bit 0 = +high resolution mode Bl11 = NOT USED Bit 2 • NOT USED Bit 3 ,. +video enable Bii 4 • NOT USED Bit 5 • +enable blink Bit 6 • NOT USED BIi 7 = NOT USED

3B9H RESERVED 3BAH CRT status Port

Bit 0 .. +horizontal drive Bil 1 • RESERVED Bil 2 = RESERVED Bit 3 = +black/white video

•see 7.086. Printer Adapter 1/0 Port Usage. Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Monochrome Adapter 7 and 8

See Alto:

7.033. CGA 1/0 Port Usage 7.037. EGA 1/0 Port Usage 7.086. Pnnter Adapter 1/0 Port Usage

\ 'ideo Adapter S11mmaries

7-29

7.030. CGA MEMORY MAP For Alphanumeric TeKI Display (modes 0-3):

Buffer Start: 9000:8000

Upper-left comer of first page

Lower-right comer of first oaae

Buffer End: B000:8F9F for modes 2&3 B000:87CF for modes 0& 1

Up to eight consecutive pages in modes 0 and 1, four consecutive pages in modes 2 and 3 For Medium Resolution Graphics Display (320x200 all points addressable, modes 4 and 5): Data stored as follows·

Buffer Start:

B000:8000

I

Upper-left comer of even scans (0, 2, 4 ... 198)

Each pixel is two bits tong. Highest numbe red pixel is LO two bits. t Color of oixel is determined by 2-bit value.

Lower-right comer of even scans

Buffer End:

B000:9F3F

B000:9F40

MEMORY NOT USED B000:9FFF B000:A000

Upper-left comer of odd scans (1,3,5 ... 199)

Lower-right corner of odd scans

Buffer End:

B000:BF3F

B000:BF40

MEMORY NOT USED B000:BFFF (Continued)

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7-30 7.030. CGA MEMORY MAP (continued)

For High Resolution Graphics Display (640x200 all points addressable, mode 6):

Data stored as follows·

8000:8000

Each pixel is one bit long. Highest numbered pixel is LO bit in byte.t

I

Buffer Start:

Pixel has no color (is monochromatic).

Upper-loft comer of even scans (0, 2, 4 ... 198)

Lower-right corner of even scans

B000:9F3F

B000:9F40 MEMORY NOT USED

B000:9FFF 8000:A000

Upper-left comer of odd scans (1,3,5... 199)

Lower-right corner of odd scans

Buffer End: B000:BF3F

B000:BF40 MEMORY NOT USED

8000:BFFF tin other words, the highest numbered pixel goes into the lowest bit (or bits), and the lowest numbered pixel goes into the highest bit (or bits). For example: -The first byte in medium resolution: Bit Number Pixel Number

I

7

I

7

1

I

6

I 2I ·1

3

I

3

21

1 4

I

-The first byte in high resolution: Bit Number Pixel Number

~I

:1

~I

~I

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Color/Graphics Monitor Adapter 1 through 11

See Also:

7.022. Video Adapter Memory Usage and Output Specifications 7.032. CGA Character Attributes

\ 'ideo Adaptt:I' Srm1maries

7-31

7.031. CGA CHARACTER BOX X X X X X X X X X X X X X X X X X X X X X X X X X

X X X X X

Character la a 7x7 pixel area In an axe plxel box.• X • plxals set for a typical character •A•

• • plxals set for default cursor

•0pt1onally, II Jumper P3 Inserted, character Is 5x7 plxel area In axe box. Source:

IBM Options and Adapters Technical Reference Vol. 2, pages Color/Graphics Monitor Adapter 5 through a

see Al10:

7.024. Video Character Font Sizes

7.032. CGA CHARACTER ATTRIBUTES Bit Number 5 4 3 2

., ., ., ., 7

6

I

., ., .,

0

Function Blink Background

lntensllV ti' Foreground

Allowable Values Q..no bllnk 1•bllnk 0OO•black 001..,blua 010=green 011-cyan 100-red 101.magenta 110-brown 111-whlte o..normal, 1"'hioh lntensllV 0OO•black gray with Intensity on llght blue with Intensity on 001-blue 010-green llght green with Intensity on 011.cyan llght cyan with Intensity on light rad with Intensity on 100-red llght magenta with Intensity on 101 •magenta 110-brown yellow with Intensity on brlaht white with intensitv on 111-whlte

Note:

lnvlslble characters are created by placing a charac1ar on a background of the same color (e.g., white on white).

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Color/Graphics Monitor Adapter 6 through 8

See Also:

7.028. 7.036. 7.040. 7.043.

MDA Character Attributes EGA Character Attributes VGA Character Attributes XGA Ch...- Attributes

7-32

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7.033. CGA 1/0 PORT USAGE Bit Number

Ir

7 6 5 4 3 2

DO

'

'

0

Allowabls Values

2

03

D4

5 06 7

reglster(DO)

309 Color select register (00)

., ., ., ., ., .,

., ., ., .,

., ., ., ., .,

30A StallJSregister(D1)

., ., ., ., ., .,

NOT USED 0-bllnkdlsabl&d, 1-bllnkenabled 1-64-0x200 graphk:s mode O•vldeo •~nal doabled, 1•vldeo s~nal enabled 0-worenablecl, 1-monoctirorne (blacksndwhHe) signal o-tei18) mode number drlvercodeleve! adapmr!ype clafilay !ype (RESERVED) alpha eel width In pols alpha c,11 height In pelo number of bH. planes screenwldthtnpela screenhelghllnpelo pels/lnch hor1zon!al pels/lnchvor11cal monochrome or color flag ln1ensttyleYals software area till plane required VGA mode long1h ol lollowlng dell (33) adapmr!ype modes

......

HSHS

HLDPAL

WORD BYTE WORD BYTE BYTE

BYTE BYTE DWORD DWORD DWORD WORD BYTE BYTE

BYTE BYTE

lenglhollollowlngdelal2) ltlaosettlMs lenglhollollowlng-(0,8,or13) tefllimllofrectangle rlghlllmttolrectangle bottom limit of rectangle topllmttolreolangle Pointer to Z buffer map fla settiMS longlh ol loMowing dell (:.1) palette ID RESERVED number of ftrst entry to be loaded number of entries to load address of Dalette entries in storaae lenglhollolklwlngdata buffer langlhollollowlngdata buffer langlh o11ollowlngdala(0or2) area In which line nattem count is saved langlh ol 1ollowlng dell 10 or 2) area in which line nattem count is saved langlh ol loUowlng dell (12 or 26) planes selected tor update bit mask (graphicsor1ex1) planes selected tor update bit mask (alphanumeric) planes enabled tor display bit mask flags RESERVED green bits mask redbi1sma&k bluebHsmask lenglhollollowlngdata(4) lormal ot each coordinate lormal of each relatlve coordinate number ol dimensions (2) relumfl1111e

Se1 Coordnata Types: no affec1 on ad....,

HESC

Stop Prac:esslng {Eoe): no affec1 on

HSAFP

Se1 Alea F~ Plane: speclllas address tobeusadunafllplane

ad....,

0 2

6

WORD DWORD BYTE

~nglh ol lolbwlng dala 15) acldressof areafiNbufflf ff••·

(Continued/

7-50

Sectio11 7: Motlrerboards, Keyboards, Video Adapters, Peripherals, and Chips

7,044. XGA FUNCTION SET (conNnued) Function HOOPS

Function ton CuOI)' Drawing Process Slate Size: returns size of elements In drawing

process

HSMARK

HSPATT

Set Marker Shape: dellnes shape of current marker symbol

Set Pattern Shape: clellnes shape of current area fUI pattern symbol

Bvr,, 0 2 4 6 8 12 0 2

3 4 5 6 8 12 0 2 3 4 5

6 HSPATTO HSLT

Sat Pattern Reference Point sets reference point or o~ln lor area fill affem=bols Set Line Type: sets current line type to lhevalutgpeclllecl

8 12 0

2 0 2

3 4 Set Line Widlh: sets current line width

0

HSBCOL

value Set Color: sets foreground color Index to the value soedfled Set Background Color: sets background

0 2 0

HSMX

color Index to the value s,_illed Set Mix: sets value of color comparison

HSLW HSCOL

register

HSCMP

Set Color Comparison Register: sets value

of color comparison reglslef

2

2 0 2 3 0 2

6 HSCS HCHST

HCCHST HXLATE ABLOCKMFI

Set Character Set: sets current character Sel Character Set at Given Point: draws a character string at a given position Character String at Current Position: draws character slrlna at current oosilion Ass~n Mull~lena Te~ Coor lndax Table: provides color Index translate table for use wilh muhlnlane !ext orders Write Cheracler Bloc:Ier 5 4 3

2

" " " " " " " "

•The Watchdog timer status Is read only. All others are read/write. Ver1lon:

Does not apply to Model 25 or 30.

Source:

IBM PS/2 Model 50 and 60 Technlcal Reference, pages 4-194 ttirough 4-195 IBM PS/2 Model BO Technical Reference, pages 4•195 through 4-198

SeeAlso:

7.071. PS/2 System Control Port B (61H)

7.071. PS/2 SYSTEM CONTROL PORT B (61H) 7

6

Bit Number 5 4 3

2

0

" " " " " " " "

Version:

Does not apply to Model 25 or 30.

Source:

IBM PS/2 Modal 50 and 60 Technical Reference, psgos 4-192 through 4•194 IBM PS/2 Model BO Technical Reference, pages 4-1931hrough 4-194

SeeAlao:

7.070. PS/2 System Control Port A (92H)

in

PS/2 Model 50/60/70/80

7-69

7.072. PS/2 RT/CMOS AND NMI MASK (70H) Bit Number

5432 .,7 6 .,

Allowable Values

NMI Used with

rt 71 H to write to that address

•The sources disagree on setting the NMI: PS/2 Model so and 60 Technical Reference: o-NMI masked, 1-NMI enabled PS/2 Model 80 Technlcal Reference: 1-NMI masked, 0•NMI enabled Veralon:

Does not apply to Model 25 or 30.

Source:

IBM PS/2 Model 50 and 60 Technical Reference, pages4-183 through 4-184 and 4-194 IBM PS/2 Model 80 Technlcal Reference, pages 4-183 through 4-184 and 4-194

7.073. PS/2 MODEL 70/80 MEMORY ENCODING REGISTERS Model 70 Memory Em:odltl(I Register 1 Bit Number

., .,

., .,

.,

Model 70 Memory Encoding Regl•tor !l

BttNumber 7654321

., ., .,

., .,

.,

Model 80 Memory Em:od/ng Register Typa 1 Bit Number

., ., .,

., H

Model 80 Sp/II Addren Regl•ter Typa 1 Bit Number

7 6 5 4 3 2 .,.,.,.,

., .,

Function VED

Allowable Values settoO address 23 ol s address 22 or s address 21 of s address 20 of s

lit memo Ht memo Ill memo Ill memo

block block block block

Model 80 Memory Encoding Reglalor 1 Type !l Bit Number

., ., .,

.,

o st MB· 1-s12K ma

ed to 1st MB

durln read· 1•ROM disabled durin write

checkln (Cont:n1.:ed)

7-70

Sectio11 7: Motherboards, Keyboards, Video Adapters, Peripherals. and Chips

7.073. PS/2 MODEL 70/80 MEMORY ENCODING REGISTERS (continued)

Model BO llomory Encoding Reglslllr /l Ty,» /l Sn Number 76543210

,; ,;

,; ,;

Allowable Value set to 1 oo-2MB card In address 23 of address 22 address 21 address 20

N2

,; ,;

•1st MB disabled· 10-2nd MB disabled; 11.,dlsabled

block block block block

Model• 90 and 95 Spill Addreu Reglslllr BltNumlMr

Allowable Values

,; ,; ,; ,; ,;

,;

Model• 90 •nd 95 Memory Encoding Register Bit Number

Allowable Values

,; ,; ,; ,; ,;

Source:

IBM PS/2 Hardware Interface Technical Reference, pages Model 70 System Board 3-14 through 3-16, Model 80 System Board 3-20 through 3-26 IBM PS/2 Hardware Interface Technical Reference, System SpecHlc Information, Model 90 pages 4-15 through 4-16 and Model 95 pages 4-15 through 4-16

7.074. PS/2 MICROCHANNEL ARBITRATION BUS PRIORITY ASSIGNMENTS ARB level -2 -1 0 1

2 3 4 5 6 7

8-E F Source:

I

Asslnnment refresh

channel 0 channel 1 OMA channel 2 OMA channel 3 OMA channel 4 OMA channel 5 OMA channel 6 OMA channel 7 Avaflable Svstem mlcronrocessor

IBM PS/2 Hardware lnte~ace Technical Reference, page Mlcrochannel Arbitration 31 and under Central Arbiter In the chapters on the Individual models

7.075. ASYNC ADAPTER 1/0 PORT USAGE VOPort

Prima •

Comments

3F8H 3F8H 3F8H 3F9H 3F9H 3FAH 3FBH 3FCH 3FDH 3FEH

If bll 7 of llne control re Isler Is O If bit 7 of llne control r Isler Is o If bit 7 of line control re Isler Is 1 If bit 7 ol llne control re Isler Is 1

Isle

•Primary uynchronous adapter Is mapped to COM1 by MS-DOS. tSecondary asynchronous adapter Is mapped to COM2 by MS.DOS. Source:

see AIIO:

IBM Opllons and Adapters Technical Reference, Vol. 2, page Async 3

7.076. Async Line Control Register

1.on. Async Divisor Latch Register 7.078. Async Line Status Register

7.079. 7.080. 7.081. 7.082.

Async Interrupt Identification Register Async Interrupt Enable Register Async Modem Control Register Async Modem Status Register

7.076. ASYNC LINE CONTROL REGISTER Allowable Values 1=access baud rate divisor latch o-dlsabled 1-enablecl

O=odd ar 1=even ari D=dlsabled 1=enabled 0-1 sto bit 111:1.5 ifblts0/1=,00 or2 00

Note:

00=5 bits 01•6blts 10•7blts 11=8blts

Bits 4 and 5 affect parity only nbit 3 Is enabled.

Source:

IBM Options and Adapters Technlcal Reference, Vol. 2, pages Async 5 through 7

see Aloo:

7.075. Async Adapter 1/0 Port Usage

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7-72

7.077. ASVNC DIVISOR LATCH REGISTER Bit Number HO b 6 5 4 3 2

7

"

F9Hl I 0

7

Bit Number LO b""' JFBHJ 5 4 3 2 I 0

6

" " " "" """" " " " " "" ""

Baud Rate Selected 9DD

.,

ti'

ti' ti'

ouu

ti'

" "

ti' ti'

359 300 180

co

ti' ti'

60 40

ti'

"

ti' ti' ti'

3A 30 20

18

"

10

""

C

50 75 110 134.5 150 300 600 1200 1800 2000

2400 3600 4800 7200 9600

Assumes baud-rate generator with a frequency ol 1.8432 Mhz.

Note:

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Async 7 through 9

See Also:

7.075. Async Adapter 110 Port Usage

7.078. ASVNC LINE STATUS REGISTER BIi Number

Stats on Reset

76543210 ti'

0

""

ti' ti' ti'

Note:

Bit 61s read only.

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Async 1Othrough 11

See Alao:

7.075. Async Adapter 1/0 Port Usage

7.079. ASYNC INTERRUPT IDENTIFICATION REGISTER Bit Number 7 6 5 4 3 2 ti' ti' ti' ti'

I

"""

0

Function

Allowsble Values

State on Reset

Alwavszero

00000

lnterrup1ID

00

t/ lnterrum oendlna

1

Noluncilon 11-recelver llne status Interrupt 1o-recalved data available Interrupt 01-transmltter holdlng register empty Interrupt oo,..modem status lnterruot O=lnterruot oendlna: 1-no lnterruot oendina

Source:

IBM Options and Adapters Technlcal Reference, Vol. 2, pages Async 12 through 13

See Also:

7.075. Async Adapler 1/0 Port Usage

Comments .026 nercent error .058 oercent error

.69 oercent error

Game Adapter

7-73

7.080. ASYNC INTERRUPT ENABLE REGISTER State on Res 0000 0

Sourc.:

IBM Options and Adapters Technical Reference, Vol. 2, pages Async 14 through 15

See AIIO:

7.075. Async Adapter l/0 Port Usage

7.081. ASYNC MODEM CONTROL REGISTER BltNumller

State on Reset

., .,

mode

000 O 0

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Async 15 through 16

See Also:

7.075. Async Adapter 1/0 Port Usage

7.082. ASYNC MODEM STATUS REGISTER

., .,

State on Reset

7 6

In In In In

dfcator

ut sl ut sl ut si ut si 0 O 0

Allowable Values

nal nal nar nal

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Async 16 through 18

See Also:

7.075. Alync Adapter 1/0 Port Usage

7.083. GAME ADAPTER 1/0 PORT USAGE

Note:

Resistive Inputs are read by first outputting to port 201 H, then noting the amount of time they remain high by Inputting contlnuously from port 201 H.

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Game Control Adapter 3 through 6

SelAlso:

7 .084. Game Adapter AB Joystick Data Byte 7.085. Game Adapter ABCD Paddle Data Byte

Sectio11 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7-74

7.084. GAME ADAPTER AB JOYSTICK DATA BYTE

•coordinates are determined by the length of time the bit Is held high. Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Game Control Adapter 5 through 6

See Also:

7.083. Game Adapter 1/0 Port Usage 7.085. Game Adapter ABCD Paddle Data Byte

7.085. GAME ADAPTER ABCD PADDLE DATA BYTE Bit Number 76543210

•coordinates are determined by the length ot time the bit Is held high. Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Game Control Adapter 5 through 6

See Also:

7.083. Game Adapter l/0 Port Usage 7.084. Game Adapter AB Joystick Data Byte

p,.;nrer Adapter

7-75

7.086. PRINTER ADAPTER 1/0 PORT USAGE BltNumbM Port76543210 378 ot

., .,

., .,

., .,

.,

., .,

.,

., ., ., ., .,

.,

37Aototot

., ., ., .,

., ., .,

., ., ., ., ., ., .,

.,

., .,

Note:

• Although the printer adapter and MDA printer ports work Identically, they appear at different port addresses. • The source contains Incomplete material.

Source:

IBM Options and Adapters Technical Reference, Vol. 2, pages Printer Adapter 3 through 7 and Monochrome Adapter 13 through 17

7-76

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, a11d Chips

7.087. IBM PRINTER CONTROL CODES SUMMARY Function

r-

Character Style

Function Sel8Clcharset1 Selectcharset2 10 choraclenl per Inch (Compressed OFF) ~ng 17.1 chalacters per Inch (Compre&S8d ON) ~ng Doubleslrike ON Dou~aslrlke OFF Dou~aw~ ON (lines) Dcublaw~lh OFF (lines) Dcub-lh by line ON Doubl~lh by line OFF Emphasized printing ON Emphasized prinllng OFF SubsalptON SuperscriplON Subsalpl/superscripl OFF Seldrallqualilyprlnl Sellextquatilyprint Sello11arqualilyprlnl Proportional spacing ON Proportional spacing OFF 12 characters per Inch spacing

Prinlallcharacterst

Page Settings

Line Settings

LineSetlings

Prlnlnextcharacter UnderilneON Underline OFF Ignore paper end ON

Code 7 cESC>ll cDC2>

cESC>G

H W cESC>WcNUL>

cDC4> cESC>E cESC>F cESC>S cESC>ScNUL> cESC>T cESC>l cESC>kSTX> cESC>lcETX> cESC>P cESC>PcNUL> : cESC>#I II cESC>-cSOH> cESC>·cNUL>

cESC:.8

Ignore paper end OFF Set length ol page In lines (1-127)

cESC>ll

Set ~nglh of page In Inches (1-22)

cESC>CcSOH,41 cESC>McSOH> cESC>M N# cESC>O cESC>4 X#I R cESC,D# ••• #cNUL> cESC,8# ••• #cNUL>

cESC>Afl cESC>J# 0 1 2 cESC>3#

Alltomatlc llne JustificaUon ON Automatic line Justification OFF Pertoration sk~ ON (1-127) Perforation skip OFF Set lop ol page (form) Set lelt end right -ins Clear labs (set labs lo power-on delaulls) Selhorizonlallabslops Set vertical lab sloos Carriage return Linefeed Se! variable line lead lo #/72 inch (1-85) Set variable line leed to #1216 inch (1-255) Sel1/8inchlineleed Set7n2inchlinelaed Slarl variable line lead (used after EscA) Set #1216 inch line feed (1-255) Vertical lab Reverse Nneleed Automatic line leed ON Aulomalic line leed OFF

cESC>CI

) S S

ASCII

55 54 11 15

71 72 87 87 14 20

69 70 83 83 84

73 73 73 90 80

58 92 94 45 45 56 56 67 67

77 77 78 79 52

88 82 69 66 13 10

65 74 49 49 50 51

,,

93 53 53

""•

1B37 1B38 12 OF 1B47 1B4B 1B5701 1B5700 OE 1B0E 14 1B45 1B46 1B5301 1B5300 1B54 1B4901 184902 184903 185001 185000 183A 185CH 185E 182D01 182D00 1838 1838 1843# 184300# 1B4D01 184D00 184E# 184F 1834 1858## 1852 1844#•.• #00 1842#••• #00 OD 0A 1841# 184A# 1830 1831 1832 1B33# OB 185D 183501 183500

Gr!flnh/cs

V V V V V V V V V V V V V V V

V V V V V V V V

V V V V V V V V V

PrlnferT....... Color Comoact V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V

V

V V V V V V V

#N44"

V 6/7:iV #/144" V V V V

V 617:iV V V V (Continued)

p,-;me,-s

7-77

7.087. IBM PRINTER CONTROi.. CODES SUMMARY (conNnued} Function TIIDII escape (command start) Printer Control

Graphics

Ion

N~I (command end) Ring bell Cancel (dear prlntar buffer) Selectprlntar Duelact-prlntlr Deselactprlnltr Automatic ribbon band shift Select ribbon band 4 ~ack) Select ribbon band 3 Space t/120 IOIWlfd to next character Space 11120 backwanl IO nm character 8electnbbonbancl2 Set uped rat~IO 1:1 Selupectratlol05:6 8elect-nbancl1 lnlllaHzefundlonON Initialize lundlon OfF UnldlrectlanalprlntlngON Unijlrectlonal priming OfF Home print head Form feed Horlzont111ab Select control-value data type Backsoece Sal to 480 bit Image graphics mode Set ID 960 bit Image graphics mode, heff speed Set IO 960 bit lmege graphics mode, normal speed Set lo 1920 bit Imme crachics mode

Code

Y cESC>Z cESC,&p#X [data) cESC>&k#H cESC>&kOG cESC>&k1G cESC>&k2G

cESC>&k3G cESC>&sOC cESC>&&1C cESC>&l#X cESC>&IOH cESC>&l1H cESC>&l2H cESC>&l3H

"p#X cESC,"p#Y cESC>•c#o cESC>•c#E cESC>)&#W [data) cESC>(&#W [data) cESC,(#X cESC,)#X

•coF •c1F •c2F cESC,"c3F cESC,"c4F

•csF •c6F (3@ cESC,)3@

&f#Y cESC,&tOX cESC,&t1X cESC,&t2X cESC,&f3X

&f4X cESC,&15X cESC,&tsX cESC,&f7X cESC>&fBX cESC>&f9X cESC>&f10X cESC,&tOS cESC>&f1S

.c#A .c#H •c#B •c#V •coP cESC,"c2P

•c3P cESC,"c2G

•c10G cESC,"c15G cESC,"c30G cESC,"c45G

•c70G cESC>"c90G

•c1000 •c1G cESC,"c2G cESC,"c3G cESC>"c4G

·cso ·ceo

CodeS

nee In Hex Avtes

1B2664#44 1B266440 1B59 tB5A tB 26 70 # 58 1B2666#46 1B266B3047 1B266B3147 1B266B3247 1B266B3347 1B 26 73 30 43 1B267331 43 1B266C#58 1B266C 304B tB266C 314B 1B 26 SC 32 4B 1B266C334B 1B2A70#5B 1B2A70#59 1B2A63#44 1B2A63#45 1B 29 73 # 57 1B2B73#57 1B28#5B 1B29#5B 1B 2A633046 1B2A633146 1B2A633246 1B2A633346 1B2A633446 1B2A633546 1B2A633646 1B2B3040 1B293040 1B2666#59 1B2666305B 1B2666315B 1B2666325B 1B2666335B 1B2666345B 1B2666355B 1B2666365B 1B2666375B 1B26663B5B 1B2666395B 1B2666313058 1B26663053 1B26663153 1B2A63#41 1B2A63#4B 1B2A63#42 1B2A63#56 1B2A633050 1B2A633250 1B2A633350 1B2A633247 1B2A633t 3047 1B2A63313547 1B2A63333047 1B2A63343547 1B2A63373047 1B2A63393047 1B2A6331303047 1B2A633147 1B2A633247 1B2A633347 1B2A633447 1B2A633547 1B2A633647

(Continued/

Modems

7-83

7.090. HP 1.ASERJET PRINTER CONTROi.. CODES SUMMARY (continued) Function Tvae

Laserjet 500+ Extensions

Function

Dafaun stacking position Toggle stacking position Eject page Paper tray auto feed Manual feed Envelope feed Feed from lower cassette

Code Senuence In ASCII Chars &I0T &l1T &I0H &l1H &l2H &13H &l4H

Note:

• # should be replaced by the relevant numeric value in this chart. • [data] Indicates a bltstream of appropriately formatted data.

Source:

HP LaserJet Printer Family Technical Reference, pages A1 through A6 HP LaserJet Ill Technical Reference, pages B-2 through B-9

See Aleo:

7.087. IBM Printer Control Codes Summary 7.088. Qume Sprint I1/Diablo 630 Printer Control Codes Summary 7.089. Epson Printer Control Codes Summary

Code Senuence In Hex Bvles 1B288C3054 1B 28 31 54 1828603048 18 26 60 31 48

ec

1B288C3248 1B288C3348 1828603446

7.091. HAYES MODEM COMMAND SET Command

AT ATI#

Function

Attention Request product code and ROM checksum

Al A B#

Reoeat lut ,.,,mmand Answer without waillnn for rim Bell 1200 bps protocol mode

C#

Carrier state

0# E#

Dlal telenhone number Echo modem commands

Allowable Values/Comments Starts all commands #-0 •· modem sends Its 3-dlglt product code #-1 •· request numeric checksum of firmware ROM #=2 •· rMuest OK or ERROR state of ROM checksum Not AT or Return commands 11=0 •• OOITT v.22/V.22bls

#=1 --Ball 212A

F#

Sat duplex

H#

Set hook status

L#

Sat speaker volume

M#

Set speaker mode

0#

Set on-line state

0#

Set culse dlalina mode Set quiet command state

#-0--oft #=1 --on #=lelenhone number mav Include/ or - chars #•0 •• no #=1 --ves #-0 -- sat hall duplex #=1 -- set lull duolex #•0 -- on hook (hang up) #=1 -- oft hook #-0or 1 •• low #•2 -- medium #•3 •• hloh #mO•· off #=1--on #=2 -- always on #•3 •· dlsable SNllaker when carrier received #=0 -- modem returns to on-line state #-1 -· modem returns on-line and retrains ...,.,ualizer• #=0 -- commands are sent #-1 •· commands are not sen• Use answer frenuencles when orlnlnatina call #=S-reaister number value-value to set renlster to #•S•rAnister number

w X#

#·0 -- use digits , .. 1 •· use words Walt tor second dlal or access tone Enable extended result code & mode setting

Y#

Long space disconnect

z

Fetch contlauratlon nrotlle from nonvolatile memon1 Wail tor nulet answer PBUSA Flash Return tn t"t'lmmand modA attAr dlallnn

.

#•0 -- basic (300 bps) #•1 •• extended (no dlahone or busy signal detect) #•2 -- extended (detects dlaltone but not busy signals) #•3 -- extended (no dlaHone detect but detects busy signal) #..4 •• extended tdetects both dlaltones and busv sianalsl ::~ :: :~:~ 'disconnects after racelvlna 1.6 sec break\ Dela" In dlallnn SAnuence On-hook for 1/2 s11cond (Continued)

Section 7: Motherboards, Keyboards, Video Adapters, Peripherals, and Chips

7-84

7.091. HA YES MODEM COMMAND SET (continued} Function Command set data carrier detect handling &C#

Allowable VslueSIComments #-0 •· modem keeps OCD on #•1 - DCD tracks data carrier detect #•O •· modem Ignores OTA #•1 •· modem assumaa command state when DTR triggered #•2 -- OTA off switches modem off hook #=3 •• OTA nff lnhlallzes modem

&0#

Set OTA handllng

&F &G#

Fetch lactorv conllauratlon Drollle from ROM Set guard tone selection

&J#

Set telephone Jack selectlon

&L#

Set leased llne or dlalup line selectlon

&M#

Set async/sync mode selection

&P#

Set pulse dlal and length

&A#

Set ATS and CTS handling

&S#

Set DSR handling

&T#

Set test mode

&W &X#

Write active conflauratlon to memoN Select sync transmit clock source (In sync mode)

&Z#

Store telechone number

#-0 -- no guard tones #-1 •· 550 Hz guard tone #-=2 -- 1800 nuard tonD #•O •• RJ11, RJ41 S, or AJ4SS #•1 •· RJ12 or AJ13 •-o •· dlalup operation #=1 -- leased line omiratlon

#•O •· asynchronous #-=1 •· synchronous mode 1 (uync dlallng, then sync comm) #a2 •- synchronous mode 2 (stored number dialing) #•3 •· svnchronous mode 3 (manual dlallnal #•O -- 39% make, 61% break (US, Canadian standard) #•1 -- 33% make 67% break #•O •• CTS tracks ATS #-1 -- modem lnnores RTS CTS turned on to recleve svnc data #=0 -- modem forces DSR when modem turned on #=1 -- DSR orv.rates accordlnn to EIA sceclflcatlons #-0 -- terminate any test in progress (when last command on line) #•1 -- lnlUate local analog loopback test 11-=3 •· lnlUate local digital loopback test #=-4 -- conditions modem to perform remote digital loopback #=5 •· prohibits remote digital loopback #.,6 •· Initiates remote dlgltal loopback with another modem #•7 or 8 •• lntlates remote di Ital loonback with self-test #=0 •- modem generates and sends through pin 15 #=1 •- host computer sends through pfn 24, modem routes to pin 15 #•2 •· modem derives timlnn tram lncomnn sl nal sends to In 15 # Is telechone number comestible with Dial command

"2400-baud mode only Source:

The Winn Rosch Hardware Bible (Brady), pages 455 through 457

See Also:

7.092. Hayes Modem $-Register Definitions 7.093. Hayes Modem Response Codes

7.092. HAVES MODEMS-REGISTER DEFINITIONS Default Value 0-255

0-255 0-127 0-127 0-127 0-32 127 2-255 t-255 0-255 1-255 1-255 20-255

43 13 10 8

2 30 2

so (Continued/

Modems

7-85

7.092. HA YES MODEMS-REGISTER DEFINITIONS (conNnuod/ R

ls/Br S14

Fune/Ion

Modamapllons

Allowabl6Ra Oneollollowlng:

eno

Blt1 Blt2 Blt3 Blt4 Blt5

Bit&

Defaun Vale RESERVED

Cmdecllo resullcodH

V9rbossmodt 111mbmode dalmelhod RESERVED

1-ecllo 1-clBlblad 1-verbose on 1-on 1-pulst

Blt7 Oneoflollowlng: Blt0 Btt1 Blt2 Blt3 Blt4 Blt5

Bit& 8Jt7 0-255

S22

S23

Moclemopllonreglster

Moclemapllonreglsler

Oneoflollowing: 8110 B111 Bil2 Blls3,4 Bil5 Bi16 Bil7 Oneof lollowing: Blls0, 1 Blls2,3 8JIS4,5,6 7 Oneoflollowing:

BilO Blls1,2 BH3 Blls4,5 Blls6 7 S24 S25

S26 527

local analog loop RESERVED

1-enebled

localdgttalloop

1•anablad 1•1oopbacklnprogress 1•anablad 1-enabled 1-enabled 1-ortlnate

statusblt rem01edlgllllloop rem01edlg w/tesl localenalag w/test RESERVED

seconds

teloojecl< RESERVED RTSICTS handling DTRhandlng DCDhandling DSRhandling edlsc, ~ s speaker vol ~rconlrol resuttcodaoptlon make/break remote dlgllll loop commrale RESERVED parttyopaon

uardtone

1•RJ121RJ13, O-RJ11/RJ41SIRJ45S 1=CTS always on, O..RTS follows CTS OO=ignorad, 01..cmd, 10-hang up, 11=init 1•DCD follows carrier 1..moc1am off-hook and in data mode 1"'enabled OO=low, 01=10W, 10=medium, 11=high OO=dlsablad, 01=to CO, 10=on, 11=0n lromdial to CO 000-300 baud codes, 100:no dial !One or busy, 101=dialtoneonly, 110=busyonly, 111-clialtone and busy o.39% make 61% break· 1-33 67 l=enabled 00-0-300 bps, 01-RESERVED, 10•1200 bps, 11=2400 bps OO=even,01=Space, 10•odd, 11:mark/none OOodlsabled 01-550 Hz 10.1eoo Hz 11-RESERVED

D

R de~ on register

0-255 0-255 Oneollollowlng: Blls0, 1 BJl2 Blt3 Bils4,5

Bit& Btt7

1/100 second 11100 second transmission mode llne~pa RESERVED sync clock source operadontypa RESERVED

Source:

The Winn Rosch Hardware Bible (Brady), pages 459 through 462

SeeAIIO:

7.091. Hayes Modem Command Sat 7.093. Hayes Modem Response Codas

OO=async, 01=1ync Mlh async call placement, 10=sync fl stored number, 11 :manual sync O=dlal up, 1..Ieased line OQ ..local modem, 01=host computer, 10-clefived, 11•RESERVED 0-CCITT, 1,Bell 212A

Section 7: Motherboards, Keyboards, Video Adapttrs, Peripherals, and Chips

7-86

7.093. HAYES MODEM RESPONSE CODES Numeric Cods

10 Source:

The Winn Rosch Hardware Blble (Brady), page 463

SeeAl10:

7.091. Hayes Modem Command Set 7.092. Hayes Modem $-Register Definitions

7.094. AT REAL TIME CLOCK RAM CONFIGURATION USAGE Address OH 1H 2H 3H 4H 5H SH 7H SH 9H 0AH 0BH OCH 0DH 0EH 0FH 10H 11H 12H 13H 14H 15H 16H

Function

Comments

e

200H•512K 400H•1024K 600·3C0DH=1536K 1hrou h 15360K See 7.061. AT Fixed Disk Drive T See 7.061. AT Fixed Disk Drive T

es es

Checksum based on 10-2DH addresses 200H•512K 400H•1024K 600·3C00H•1536K throu h 15360K BCD value for centu Bit 7 set = to 128K Installed bit 6 set - first user messa e Source:

IBM PC/ATTechnlcal Reference, pages 1-56 through 1-68

See Also:

7.061. AT Fixed Disk Drive Types 7.095. AT Real Time Clock Status Register A 7.096. AT Real Time Clock S1a1us Rogls1er B 7.097. AT Roal Time Clock S1a1us Rogls1er C 7.098, AT Roal Time Clock S1a1us Ragls1er D 7.099. AT CMOS RAM ConllguraUon DlagnosUc S1e1us By1e 7.100. AT CMOS RAM ConllguraUon Diskette Drive Type By1e 7.101. AT CMOS RAM ConllguraUon Fixed Drive Type By1e 7.102. AT CMOS RAM ConllguraUon Equipment By1e

RTC (Real Time Clock)

7-87

7.095. AT REAL TIME CLOCK STATUS REGISTER A B Number 4 3 2

., 6 7

Source:

S11

1 0

IBM PC/AT Technical Reference, pages 1-57 through 1-58

Al■o:

7.096. AT Real Time Clock Status Register B 7.097. AT Real Time Clock Status Register C 7.098. AT Real Time Clock Status Register O

7.096. AT REAL TIME CLOCK STATUS REGISTER B

Source:

IBM PC/AT Technical Reference, pages 1-58 through 1-59

See Also:

7.095. AT Real Time Clock Status Register A 7.097. AT Real Time Clock Status Register C

7.098. AT Real Time Clock Status Register D

7.097. AT REAL TIME CLOCK STATUS REGISTER C Bl Number 5 4

., ., ., ., .,.,.,., 7

6

2

Source:

IBM PC/ATTechnlcal Reference, page 1·59

See Also:

7.095. AT Real Time Clock Status Register A 7.096. AT Real Time Clock Status Register B 7.098. AT Real Time Clock Status Register D

7.098. AT REAL TIME CLOCK STATUS REGISTER D BU Number 76543210

.,

-'

-'

-'

-'

-'

-'

Name

Valid RAM bit -' RESERVED

Status

Function ower-sense In bat. level

Source:

IBM PC/ATTechnlcal Reference, page 1·59

Se1Al10:

7.095. AT Real Time Clock Status Register A 7.096. AT Real Time Clock Status Register B 7.097. AT Real Time Clock Status Register C

Allowable Values o-batte dead RAM Invalid 1-batte Should alwa s be o

ood

Sectio11 7: Motherboards, Keyboards, Video Adapters, Peripherals, a11d Chips

7-88

7.099. AT CMOS RAM CONFIGURATION DIAGNOSTIC STATUS BYTE Allowable Values o-chl hasn't lost er 1-chl has lost er 0-checksum Is ood 1-checksum bad O•valld confl uratlon 1-lnvalld confl uratlon oer-on check showed same memo size 1.. diff. size oer function 1•ada tar or drive talled lnltlallzation 0•tlme Is valld 1•time Invalid

um status atlon

Source:

IBM PC/AT Technlcal Reference, pages 1-59 through 1-60

See Also:

7.094. AT Real Time Clock RAM Configuration Usage

7.100. AT CMOS RAM CONFIGURATION DISKETTE DRIVE TYPE BYTE BIi Number 5 4 3

., ., ., ., ., ., ., 7

6

2

o T fl' T

Function of first diskette drive e ol second diskette drive

Allowable Values 0OO0•no drive 0001 •48TPI 0010=96TPI 0000-no drive 0001 •48TPI 001 o-96TPI

Source:

IBM PC/AT Technical Reference, page 1-61

See Also:

7.094. AT Real Time Clock RAM Configuration Usage

7.101. AT CMOS RAM CONFIGURATION FIXED DRIVE TYPE BYTE Bit Number

4

3

2

"'"'"'"'

7

ti'

ti'

6

5

0 ti'

ti' Teet T eofsecon

Ive drive

Allowable Values 0000-no drive otherwise see 7.061. AT Fixed Disk Drive T 0000=no drive otherwise see 7.061. AT Fixed Disk Drive T

Source:

IBM PC/AT Technical Reference, page 1-62

See Also:

7.061. AT Fixed Disk Drive Types 7.094. AT Real Time Clock RAM Configuration Usage

7.102. AT CMOS RAM CONFIGURATION EQUIPMENT BYTE Bit Number

.,7 .,6 .,5 .,4 3 2 ., ., ., ., Source:

IBM PC/AT Technical Reference, pages 1-63 through 1-64

See Also:

7.094. AT Real Time Clock RAM Configuration Usage

es es

CPU Chips

7-89

7.103. 8086 FAMILY MEMORY ADDRESSING MODES E nation Uses conten s ol re lsters tor ration Uses BX as a relatlve offset to point to memory

Direct lster dressln Indirect memory addressing Immediate addressln Based addressing lnde,.ed addressing Based Indexed addressing

Source:

Programmer's Gulde to the IBM PC and PS/2 (Microsoft Press), pages 34 through 35

7.104. 8086 FAMILY INSTRUCTION SET SUMMARY Instruction

lfi

Svr&S6

Flam: Affected Aux carrv

Sian,zero """'""' Aux,carrv

Undefined Flans Overflow, sl n zero, Overflow aux, Overflow aux cam, Overflow. mn zero, aritv

Overflow,slgn,zero, aux, parity,

None

canv Overflow,slgn,zero, aux, parity,

...

None

Overflow, sign, zero, aux, parity,

..

None

Overflow, sign, zero, aux, parity, CIIIIV Overflow, sign, zero, aux, parity, canv Overflow, sign, zero, aux, parity,

None

carry

1 2 1 1 1-4

Addwflhcarry

1-4

ADCreg,lmm

Addwflhcarry

1-4

ADC reg, mem

Addwflhcarry

1 •4

ADC reg, reg

Addwflhcarry

1 •4

ADDmem,lmm

Addln1egers

1 •4

AOOmem,reg

Addln1egers

1-4

ADDreg,imm

Add lnlegele)

Address/Data 0

Quaue Status 0 /Address Latch Enal>le)

Nonmaskable Interrupt Interrupt Request

OUeus Status t /•Interrupt Acknowledge) -Test

Clock Ground (ConNnued)

Chip Pi,routs

8-35

8.58. BOBB ANO BOBS PINOUTS (con//nued)

IOCBtlAL

,U..P/n PLCC ,,,,okllQ/nfl

Address11 I Address 12 I I Address 13 I I I Address 14 I I I I G"1Ul!d

I I I I I No CJIMcflon 111111.SVdc I I I I I I I Addloss 15 I I I I I I I I Address 16/Status 3 I I I I I I I I I Address 17/Status 4 I I I I I I I I I I Address18/Statuss 6

5

4

3

2

1 44 43 42 41 40 39 No Connection

Address 10 7 Ac/dross 9 8

38 Address 1915/a/us 6

Address 8 9

37 -Bus High Enatlle/Sta/us 7

Address 7 10

36 Mini-Max

AddressS 11

35 -Road

Ac/dross 5 12

34 -Request Of-Grant 0 (Hold)

Address 4 13

33 -Request 11-Grant 1 (Hold Acknowledge)

Address 3 14

32 -Lock (Wrlta)

Address2 15

31 -Status2(Momoryl-lO)

Address 1 16

30 -Status 1 (Data Trsnsmitl-Recelve)

Address o 17

29 -status O(Data Enable) 19 20 21 22 23 24 25 26 27 28

I I I I I I I I I I I I I I I I I I I Queue Status o (Address Latch Enable) I I I I I I I I Queue Status t (Interrupt Acknowledge) I I I I I I I -Test IIIIIIReady I I I I I Reset I I I I No Connection I I I Ground I I Ckx;lc I Interrupt Request Nonmaskab/e lntsrrupt

No Connection Veralon:

80C86AL Information Is Included only In the 1989 edition of Intel Microprocessors (page 2-60).

Note:

Items In parentheses refer to function when chip Is In Minimum mode (pin 33 held high).

Source:

Intel Microprocessors, Vol. 1, pages 2-1 through 2-5, 2-31, 2-60, and 2-90

See Also:

8.59. 80286 Plnoul& 8.60. 80386 Plnoul&

8-36

Section 8: Connectors, Buses, and Pinouts

8.59. 80286 PINOUTS ~LCCl'8dratllng Dllll15 Data7 Data 14

D11116

I Data 13 I I D11115 I Data 12 I I 0.114 I I I Dllll11 I I I I D11113 I III\Dafa10 I I I I I I D11112 I I I I I I I Data9 I I I I I I I I DIii 1 I I I I I I I I I DIIIIB I I I I I I I I I I Datao I I I I I I I I I I I SystamGround 47

45

"

43 42 41 40 39 38 37 36 3

-Error -Busy NoCollneclioll

118-Pln Ceramic Ludless Ch~ Canter Packaging (Viewed IR>m lop)

No Connection llonmaskalllelnl8mlp1

SystamG,ound Proc EJ!Operand Requsst

61

+5Vdc -Ready

Hold Hold Admowtedgt

Codsl-lntlrrupt Acknowledge Memory/.1OS-Bus Lock

6 6

1

4

5

6

7

8

9 10 11

34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18

Addresso Address r Addless 2

Cloclr +5Vdc

Reset Address3 Address4

Addresss Addross6 Addross7 AddrossB Addless 9

Address to Address 11 Ac/dross 12 Ac/dross 13

12 13 14 15 16 1

I I I I I I I I I I I I I I I I I I I I I I I I Ac/dross 14 I I I I I I I I I I I I Ac/dross 15 I I I I I I 1 I I I Addrtss 16 I I I I I I I I I Addless 17 I I I I I I I fAc/drosslB I I I I I I Addless 19 I I I I I I I Addless20 I I I I \Address21 I I I Systtm Ground I I I Address22 I f Acldross23 I _,,_ ExteMlon Operand Admowtedgt I -$tahJsO I -statust I NoConneclioll I I NoConneclioll -BusHl(lhEnable (Continued)

Cl,ip Pinouts

8-37

8.59. 80286 PINOUTS (conNnuod)

,,.,. 15 {-EmN) I Dlllal4(Dala7/ I I Dll,.13(Dala6/ I I I Dara 12/Dllfl5/ I I I I Dara 11/Dllf84/ I I I I I ,,.,. I0/Dllf83/ I I I I I I Dllla9(Dala2/ I I I I I I I Dll,.8/Dllfl 1/ I I I I I I I I SyslamGtound(Darao/ I

I

I

I

IE ml ml ml

I

I

[g]

[ill

I

I

I

Uil ml [ID [ID [ill U2l []i] [ID mi

Subslr&teFllfarCapac/lor{-Erra,j

cm

ml

-Busy (No ConnllCllon}

U!l

[Ml

[ru

IA)

No Connection (ln/emJpl Rtquesl)

[al

llil

[ill

UQ]

No Connection {/'IDnlnlllkabW 1111/

[al

[m

[ru

llil

Address 3 (Reset)

SysGtound(Ptoc.E,t.~llsq.}

UQ]

[ill

[ill

llil

Address 5 (Address 4)

+SVdc(-Reldy/

cm

u[)

Hold(HoldAclalowlotlge}

[Ml

[Ml

rn:J [ill Cm []g] [ill rn:J

Address 9 (Address 8)

CodMntAck. ("""'40Sal8cl} ,Loe/( (No Connec:llon}

l]ru

ml

[!§]

68-Pln Grid A•ay Packaging (viewed rrom top when mounted on board; names In parens are for Inner pins)

00 [ill [ID

m:J [ill [ill [ill OJ [I] [I] [I] [I] [IT] ml ill] [ill [I)

[I]

IT)

IT)

[ill

[ill

I I I I I

I

Addless o (Data OJ

.

Address2(Address I)

5Vdc(Clo (Math) 8-41-8-47 Counler Regisien (PS/2) 7-68 Counlry Codes 3-128 COUNTRYINFO SlrUclUre 3-130 CPENTRYHEADER SlrUclUre 3-131 CPLIST SlrUclUre 3-131 CPPREPARE SlrUclUre 3-131 CPU Chips 7-89-7-97 Creale Direclory (INT 21H, AH=39H) 3-49 Creale File willt FCB (INT 21H, AH=l6H) 3-30 Creale File will, Handle (INT 21H, AH=3CH) 3-51 CrealeNewFile (INT21H,AH=5BH) 3-96 Creale New Program Segment Prefix (INT 21H, AH=26H) 3-37 CREATESTRUCT Siruc1un: Fonnat 6-83 Creale Temporary File (INT 21H, AH=5AH) 3-95 CURSOR (Single-line Reso111 Summary 7-79 Error Codes CD-ROM Drive (INT 2FH) 5-38 JNT24H 5-7 INT 25H and 26H 5-9 INT2FH 5-27 ERROR SlrllCIUre and Error Code Values 3-123 ESDJ (Enhanced Small Device lnlerface) 20-Pin Connector 8-15 34-Pin Connector 8-14 Even1 Wail (INT 1SH, AH=83H) 4-65 Exchange Memory Regions (INT 67H, AX=570IH) 5-89 EXECSTATE Sb'Ucture 3-125 EXE File Header 2-30 Exit Codes Returned by DOS Commands 2-9 Expanded Memory Manager Enor Codes (INT 67H) 5-104 Functions Summary (INT 67H) 5-70 Expanded Memory Specification Functions {EMS) 5-70-5-104 Extended ANSI Character Codes 6-12 BIOS Dala Area Layoul 4-11 Enor Message (DOS) 2-10 Functions (INT 15H) 4-59-4-77 Graphics Array. See XGA MemOI)' Functions 5-105-5-114 Specification Functions. See XMS Extended Commands (INT 15H, AX=C206H) 4-75 EXTENDEDFCB S1r11crure 3-116 Extended lnil (INT 14H, AH=04H) 4-57 Extended Keyboard Flags Byle (INT 16H) 4-83 Extended Keyboard Read (INT 16H, AH=I0H) 4-82 Extended Keys1r0ke S1arus (INT 16H, AH=l lH) 4-82 Extended Open/Create (INT 21 H, AH=6CH) 3-112 Extended Shift S1a1us (INT 16H, AH=l2H) 4-83 EXTHEADER S1r11e1ure 3-116 EXTTEXTMETRIC S1r11e1ure Fonnai 6-87

B-4

F FARCALL AX=DEOCH - VCPI Swtich from Protected Mode to V86 Mode 5-123 FARCALL AX=DE03H - VCPI Protected Mode Get Number ofFree4K Pages 5-121 FARCALL AX=DE04H - VCPI Protected Mode Allocate a 4K Page 5-121 FARCALL AX=DE05H - VCPI Protected Mode Free a 4K Pg. 5-122 FAT Layouts 2-26 FCB Error Codes 3-120 FCB-Oriented Functions Summary (INT 21 H) 3-9 FCB Structure Opened 3-116 Unopened 3-117

FDC Disk Program Control Registers (PC and XT) 7-58 File

Attribute Byte 2-24 System Structures and Supporting Tables 3-113-3-122 Types (Extensions) 2-34 FILECHARTABLE StJUcture 3-131 FILEINFO StJUcture 3-117 Filename Separator Characters 2-38 File-Sharing Functions Summary (INT 21 H) 3-12 Find First File (INT 2 IH, AH=4EH) 3-87 Find First File with FCB (INT 21H, AH=IIH) 3-26 Find Next File (INT 21H, AH=4FH) 3-88 Find Next File with FCB (INT 21H, AH=12H) 3-27 Fixed Disk Drive Types (AT) 7-63 Format Summary (IBM) 2-29 Floppy Disk Controller (PC and XT) Command Sununary 7-54 External COMector 8-9 Internal Connector 8-8 Pinouts (PD765) 8-56 Status Register O 7-57 Sta1us Register 1 7-57 Stalus Register 2 7-58 Status Register 3 7-58 Format Summary 2-29 Flush Buffer, Read Keyboard (INT 21H, AH=OCH) 3-24 FLUSHREQUEST StJUcture 3-136 FONT (Single-line Resource Statements) 6-27 FONTDATAHEADER StJUcture 3-132 Font File (Code Page) Formal 6-18 Layout 2-31 FONTFILEHEADER StJUclure 3-132 FONTINFOHEADER SIJ'llclure 3-132 Force Duplicate File Handle (INT 2 IH, AH=46H) 3-80 Formal Cylinder (INT 13H, AH=OSH) 4-40 Format Cylinder Set Bad Sector Flags (INT 13H, AH=06H) 4-41 Format Drive Staning al Cylinder (INT 13H, AH=07H) 4-42 Format Periodic lntenupl (INT ISH, AH=OFH) 4-61 Format Track on Logical Drive (INT 21H, AX=440DH, Minor Code=42H) 3-72 Formal Unil (INT 13H, AH=IAH) 4-53 Format Unit Modifier Bits (INT 13H) 4-53 Free Allocated Memory (INT 21H, AH=49H) 3-82 Free Switcher ID (INT 2FH, AX=4B04H) 5-21 Functions by DOS Version Summary (INT 21H) 3-6 FVBLOCK Slnlclure 3-118

G GameAdapler AB Joystick Data Byte 7-74 ABCD Paddle Data Byte 7-74

Connector 8-23 l/0 Pon Usage 7-i3

The Programmer~ PC Sourceboolc GDI Information Index Data 6-162 Gel Abstract Filename (INT 2FH, AL=03H) 5-32 Gel Active Advanced Functions (INT 33H, AXz38H) 5-66 Gel Addresses of Mappable Pages (INT 67H, AX=5800H) 5-90 Gel All Handle Names (INT 67H, AX=5400H) 5-84 Get Allocation Strategy (INT 21H, AX=5800H) 3-92 Get Alternate Map Registers (INT 67H, AX•SBOOH) 5-93 Get ANSI.SYS Installed State (INT 2FH, AX=IAOOH) 5-17 Gel APPEND.EXE Directory List Address (INT 2FH, AX=B704H) 525 Get APPEND.EXE Installed Slate (INT 2FH, AX=B700H) 5-24 Get APPEND.EXE Modes Flag (INT 2FH, AX=B706H) 5-26 Gel APPEND.EXE Venion (INT 2FH, AX=B702H) 5-25 Get ASSIGN.COM In.stalled State (INT 2FH, AX=0600H) 5-14 Gel Assign-List Entry (INT 21H, AX=5F02H) 3-I01 Gel Attribute Capability (INT 67H, AX=5202H) 5-83 Gel Bibliographic Filename (INT 2FH, AL=04H) 5-33 Gel Button Press Information (INT 33H, AX=OSH) 5-43 Gel Button Release Information (INT 33H, AX=06H) 5-44 Gel Button Slalus and Mouse Position (INT 33H, AX=03H) 5-42 Gel CD-ROM Drive List (INT 2FH, AL=OIH) 5-31 Get CD-ROM Extensions Venion (INT 2FH, AL=OCH) 5-35 Gel CD-ROM Units (INT 2FH, AL=ODH) 5-36 Gel Child-Program Return Value (INT 21H, AH=4DH) 3-86 Get Collate Sequence Table (INT 21H, AX=6506H) 3-107 Get Copyright Filename (INT 2FH, AL=02H) 5-32 Get Country Data (INT 21H, AH=38H) 3-47 Get CRT Page Number (INT 33H, AX=IEH) 5-56 Gel Cb'l-+C Check Flag (INT 21 H, AX=3300H) 3-44 Get Cum:nt Directory (INT 21H, AH=47H) 3-80 Gel Current Display Mode (INT !OH, AH=OFH) 4-24 Ge1Curren1Drive (INT21H,AH=19H) 3-31 Get Cursor·Hotspol (INT 3m, AX=30H) 5-62 Get Date (INT21H,AH=2AH) 3-39 Get Default DPB (INT 21H, AH=IFH) 3-33 Gel Default Drive Data (INT 21 H, AH= I BH) 3-32 Gel Device Data (INT 21H, AX=4400H) 3-58 Get Device Parameters (INT 21 H, AX=440DH, Minor Code=60H) 3-74 Gel Directory Entry (INT 2FH, AL=OFH) 5-37 Get Disk Free Space (INT 21H, AH=36H) 3-47 Get Disk System Status (INT 13H, AH=OIH) 4-37 Gel Disk Transfer Address (INT 21H, AH=2FH) 3-42 Gel Display Mode (INT 21H, AX=440CH, Minor Code=7FH) 3-70 Gel COSKEY.COM Installed State (INT 2FH, AX=4800H) 5-18 Gel Double-By.te Character Sel (INT 21 H, AX=6507H) 3-108 Get DPB (INT 21H, AH=32H) 3-43 Get Drive Data (INT 21H, AH=ICH) 3-33 Get Driver Version, Mouse Type, and IRQ Number (INT 33H, AX=24H) S-59 Gel EMM Version (INT 67H, AH=46H) 5-74 Gel F.quipment List Service (INT IIH) 4-35 Get Extended Country Information (INT 21H, AX=6501H) 3-104 Gel Extended Error (INT 21H, AH=59H) 3-94 Get Extended Memory Size (INT !SH, AH=88H) 4-67 Get File Attributes (INT 21H, AX=4300H) 3-56 Get File Date and Time (INT 21H, AX=5700H) 3-90 Gel Filename Character Table (INT 21H, AX=6505H) 3-106 Get Filename Uppercase Table (INT 21H, AX=6504H) 3-106 Get File Size (INT 21H, AH=23H) 3-35 Get Genenl Driver Information (INT 33H, AX=25H) 5-60 Get Global Code Page (INT 21H, AX=6601H) 3-110 Gel GRAFTABL.COM Installed State (INT 2FH, AX=BOOOH) 5-24 Gel Handle Allribute (INT 67H, AX=5200H) 5-82 Gel Handle Count (INT 67H, AH=4BH) 5-75 Gel Handle Name (INT 67H, AX=5300H) 5-83 Gel Hardware Conf11uration (INT 67H, AX=5900H) 5-91 Get HIMEM.SYS Entry-Point Address (INT 2FH, AX=4301H) 5-18 Get HIMEM.SYS Installed Slate (INT 2FH, AX=4300H) 5-17 Get lnDOS Flag Address (INT 21H, AH=34H) 3-46

Appe11dix B: /11dex Oel lnlerrupl Veclor (INT 21H, AH=35H) 3-46 Gel lleralion Counl (INT 2 IH, AX=440CH, Minor Code=65H) 3-68

Oel KEYB.COM Counuy Flag (INT 2FH, AX=AD83H) 5-23 Get KEYB.COM Version Number (INT 2FH, AX=AD80H) 5-22 Get Language Number (INT 33H, AX=23H) S-S9

Oel Lead Byle Table (INT 21H, AH=63H) 3-104 Oet Logical Drive Map (INT 21H, AX=440EH) 3-77 Oel Machine Name (INT 21H, AX=5EOOH) 3-98 Gel Map Size (INT67H,AX=6A03H) 5-102 Get Maximum VirtuJLI Coordinates (INT 33H, AX=26H) 5-60 Oe1 Media ID (INT 21 H, AX=440DH, Minor Code=66H) 3-76 Oel MelllOJ}' Size Service (INT 12H) 4-36 Get Minimum/Maximum Virtual Coordinales (INT 33H, AX=37H) 5-65 Get Mouse Driver Slale Slorage Requirements (INT 33H, AX=ISH) 5-51 Oe1 MOUSE.INI Location (INT 33H, AX=40H) 5-67 Get Mouse Sensitivity (INT 33H, AX=I BH) 5-54

Oel MS-DOS Version (INT 21H, AX=3306H) 3-45 Oel Nelwork lnslalled Stale (INT 2FH, AX=IIOOH) 5-1 S Oel NLSFUNC.EXE Installed S1a1e (INT2FH, AX=l400H) 5-16 Oel Number of CD-ROM Drives (INT 2FH, AL--OOH) 5-31 Oel Number of Mappable Pages (INT 67H, AX=580 IH) 5-90 Oet Number of Raw Pages (INT 67H, AX=5901H) 5-91 Get or Set Volume Descriptor Preference (INT 2FH, AL=0EH) 5-36 Oe1 Page Count (INT 67H, AH=42H) 5-72 Oel Page Count for Handle (INT 67H, AH=4CH) 5-76 Oel Page CounlS for All Handles (INT 67H, AH=4DH) 5-76 Oel Page Fnune Address (INT 67H, AH=41H) 5-71 Oet Page Map (INT 67H, AX=4EOOH) 5-77 Oel Page Map Array Size (INT 67H, AX=4E03H) 5-78 Oel Physical Window Array (INT 67H, AH=60H) 5-99 Oel Prinler Device (INT 2FH, AX=0I06H) 5-14 Oe1Prin1erSe1up (INT21H,AX=5E03H) 3-100 Get PRINT.EXE Installed S1a1e (INT 2FH, AX=OIOOH) 5-11 Oel PSP Address (INT 21 H, AH=5 IH) 3-89 Oel PSP Address (INT 21H, AH=62H) 3-103 Get Screen/Cursor Masks and Mickey Coun1s (INT 33H, AX=27H) 5-61 Oe1 SHARE.EXE Installed Slale (INT 2FH, AX=IOOOH) 5-15 Get Size of Allemate Map Register Save Area (INT 67H, AX=5B02H) 5-94 Get Size of Partial Page Map Information (INT 67H, AX=4F02H) S-80

Oel Stack Space for Map Page and Call (INT 67H, AX=5602H) 5-87 Oel Startup Drive (INT 21H, AX=3305H) 3-45 Oel Stalus (INT 67H, AH=40H) 5-71 Oel Swileh Sellings (INT 33H, AX=39H) 5-66 Oet SySlem Map (INT 67H, AX=6AOOH) 5-101 Get SySlem Physical Window Array (INT67H, AH=68H) 5-100 Oet Time (INT 21H, AH=2CH) 3-40 Oel Total Handles (INT 67H, AX=5402H) 5-85 Oe1 Uppercase Table (INT21H, AX=6502H) 3-105 Gel Upper Memory Link (INT 21 H, AX=5802H) 3-93 Gel User Allemale lnlerrupt Address (INT 33H, AX=19H) 5-53 Oe1 Verify Stale (INT 21H, AH=54H) 3-89 Oel Version Number (INT 21H, AH=30H) 3-42 Oel Video Buffer (TopView) (INT I0H, AH=FEH) 4-33 Global Descriplor Table (INT ISH) 4-68 Graphics Mode AUX Char Oen Table 4-34

H Handle Access Dyle 3-121 Movement Melhods 3-122 Handle-Oriented Functions Summary (INT 21H) 3-10 HANDLETABLE Slruclure Fonnal 6-87

B-5 Hayes Modem Command Sel 7-83 Modem Response Codes 7-86 Modem 5-Regisler Definitions 7-84 Hexadecimal Addition Tables 1-4 to Binary Number Conversion 1-3 to Decimal Number Conversion 1-2 Mulliplicalion Tables 1-6 to Octal Number Conversion 1-3 Hide Cursor (INT 33H, AX=02H) 5-42 High Sierra CD-ROM Directory Formal 5-38 Hold Print ]obs and Oel Slatus (INT 2FH, AX=OI04H) 5-13 HP LaserJet Prinler Control Codes Summary 7-81

i486 PinoulS 8-40 IBM ASCII Characu:r Sol 1-20 Fixed Disk Formal Summary 2-29 Keyboard Extended Function Codes 1-22 PC Model Numbers and Configurations 7-7 Printer Control Codes Summary 7-76 ICON (Single-line Resource Statements) 6-27 Icon Resource File Formal 6-25 IDE Intelligent Drive Electronics Commands 7-64

Registers 7--63 Identify Instance Data (INT 2FH, AX=4B05H) 5-21 Included Command Files Summary 2-32 Include File Constants Defmitions by Name 6-40 Definitions by Use 6-60 !nil Communications Port (INT 14H, AH=OOH) 4-54 lnil Drive Pair Characteristics (INT 13H, AH=09H) 4-43 Initialization Messages 6-97 Initialize Pointing Device (INT I SH, AX=C20SH) 4-74 Initialize Prinler Port (INT 17H, AH=O IH) 4-85 INITREQUEST Struclure 3-136 lni1 Window, Scroll Window Down (INT I0H, AH=07H) 4-19 lnil Window, Scroll Window Up (INT I0H, AH=06H) 4-19 Input Messages 6-97 Instruction Sets 8086 7-89 8087 7-97 INT 5H-Print Screen Service 4-14 INT9H-Keyboard 4-15 INT JOH- Video Functions AH=OOH-Sel Mode 4-15 AH=OIH-SetCu1>orType 4-16 AH=02H - Set Cursor Position 4-17 AH=03H - Read Cursor Position 4-17 AH=04H-Read Light Pen Position 4-18 AH=05H-Select Display Page 4-18

AH=06H-Init Window. Scroll Window Up 4-19 AH=07H-lnit Window, Scroll Window Down 4-19 AH=08H - Read Chancier and Anribule 4-20 AH=09H - Wri1e Chancier and Anribule 4-20 AH=OAH - Write Character Only at Cursor 4-21 AH=OBH-SelColorPalene 4-21 AH=OCH - Write Pixel 4-22 AH=ODH - Read Pixel 4-23 AH=OEH - Write Text in Teletype Mode 4-23 AH=OFH - Oel Current Display Mode 4-24 AH=IOH - Sel Palette Regis1ers 4-24 AH=II H - Characb:r OeneralOr 4-25 AH=l2H-Allemale Selecl 4-26 AH=l3H-Wrile Siring 4-27 AX=IAOOH-Read Display Codes 4-27 AX=IA0IH- Wriie Display Codes 4-28

The Programmert PC Sourcebook

B-6

INT lOH - Video Functions, conti1Jued AH= IBH - Return Slale 4-29 AX= ICOOH - Return Save/Restore 4-31 AX=ICOIH-Save State 4-32

AX= 1C02H - Rcslore Slate 4-32 AH=FEH -Gel Video Buffer (Top View) 4-33 AH=Fflf - Updale Video Buffer (Top View) 4-33 Display Codes 4-28 Display Modes 4-16

Palette and Color Values 4-22 Video State Buffer Layoul 4-29 INT 11 H - Gel Equipment List Service 4-35 INT 12H -Get Memory Size Service 4-36 INT 13H - Disk Functions AH=OOH - Reset Disk System 4-36 AH=O IH - Get Disk System Status 4-37 AH=02H - Read Disk 4-38 AH=03H - Write Disk 4-38

AH=04H - Verify Sectors 4-39 AH=05H - Format Cylinder 4-40 AH=06H - Formal Cylinder Sci Bad Seclor Flags 4-41 AH=07H - Format Drive Starting at Cylinder 4-42

AH=OSH - Read Drive Parameters 4-42 AH=09H - Init Drive Pair Characteristics 4-43 AH=OAH - Read Long Seclors 4-44

AH=OBH - Wrile Long Sectors 4-44 AH=0CH - Seek 4-45

INT I SH-Miscellaneous Functions, cont;,uud

AH=87H AH=88H AH=89H AH=90H -

Move Block 4-67 Get Extended Memory Siu 4-67 Swi1ch to Protected Mode 4-68 Device Busy 4-69

AH=91H - ln1e1111pt Complele 4-70

AH=COH - Re1um System Config Parameters 4-70 AH=-ClH-Relum Ext BIOS Segment Address 4-71 AX=C200H - Enable/Disable Pointing Device 4-72 AX=C201H-Reset Pointing Device 4-72 AX=C202H - Se1 Sample Rate 4-73 AX-C203H - Sel Resolu1ion 4-73 AX=C204H - Read Device Type 4-74

AX=C205H - lnitialii.e Pointing Device 4-74 AX=C206H - Exiended Commands 4-75

AXaC207H - Device Driver lnit Call 4-76 AH=C3H - Watchdog Timeoul 4-77 AH-C4H - Prog Oplion Select 4-77 Global Descrip1or Table 4-68

Mouse Port Slalus Bytes 4-76 System Descriptor Table 4-71 INT 16H -Keyboard Functions AH=OOH - Read Chancier 4-78 AH=OIH-ReadStatus 4-78 AH=02H - Read Flags 4-79 AH=03H - Sel Typemalic Rale and Delay 4-80 AH=05H - Keyboard Wrile 4-81

AH=0DH - Alternate Disk. Reset 4-45

AH=09H - Keyboard Functionality Detennination 4-81

AH=0EH - Read Tesl Buffer 4-46

AHzl0H - Exiended Keyboard Read 4-82 AH=I IH - Exlellded Keystroke Stalus 4-82 AH=l2H-Exlended Shift Status 4-83 Ex1ended Keyboard Flags By1e 4-83 Keyboard Flags Byle 4-80

AH=0FH - Write Test Buffer 4-46 AH=l0H-Test Drive Ready 4-47 AH=l IH-Recalibrate Drive 4-47 AH= 12H - Controller RAM Diagnostic 4-48 AH=l 3H - Controller Drive Diagnostic 4-48 AH=l4H -ControUer lnlemal Diagnostic 4-49 AH=l5H- Read DASO Type 4-49

AH= 16H - Diskette Change Line Status 4-50 AH=l 7H- Sel DASO Type for Format 4-50

AH=l8H-Set Media Type for Fonnat 4-51 AH=l9H-Park Heads 4-52

AH=lAH - Fonnat Unit 4-53 Disk System Scatus Byte Layout 4-37 Fonnat Unit Modifier Bits 4-53 Media Descriptor Table 4-52 INT 14H - Serial Functions AH=OOH - lnil Communications Pon 4-54 AH=0IH - Wrile Characler 4-55 AH=02H - Read Characler 4-56 AH=03H - S1a1us RequeSI 4-56 AH=04H - Exlended lnil 4-57 AX=0500H - Read Modem Conlrol RegiSler 4-58 AX=0501H - Wrile Modem Conlrol RegiSler 4-58 COM Pon Parameler Byte 4-55 Modem and Line S1atus Byte 4-54

INT 15H- Miscellaneous Functions AH=OOH -Casselle Moror ON (obsolele) 4-59 AH=0I H - Cassetle Motor OFF (obsolele) 4-60 AH=02H-Cassette Read Data Blocks (obsolete) 4-60 AH=03H -Cassetle Wrile Daia Blocks (obsole1e) 4-61 AH=OFH - Format Periodic ln1e1111pl 4-61 AH=21H- Power-On Self-TeSI Error Log 4-62 AH=23H - Read/Wriie DOS Flags for PS/I 4-62 AH=4FH - Keyboard lnlen:epl 4-63 AH=80H - Open Device 4-63 AH=8 IH - Clo,e Device 4-64 AH=82H - Program Termina1e 4-64 AH=83H - Evenl Wait 4-65 AH=84H - Joysiic:k Support 4-65 AH=85H - Sysiem RequeSI Key Pressed 4-66 AH=86H - Wail 4-66

INT 17H - Printer Functions AH=OOH - Wrile Chancier 4-84 AH=OIH- lnilialize Prinler Pon 4-85 AH=02H - S1atus RequeSI 4-85

Printer Status Byte 4-84

INT 18H - BASIC Loader 4-86 INT 19H - Bootstrap Loader 4-86 INT IAH -Time of Day Functions AH=OOH - Read Clock Counl 4-87 AH=OIH - Sel Clock Count 4-87 AH-02H - Read Real Time Clock Time 4-88 AH=03H - Set Real Time Clock Time 4-88 AH=04H - Read Real Time Clock Dale 4-89 AH=05H - Set Real Time Clock Date 4-89 AH=06H - Set Real Time Clock Alann 4-90 AH=07H - Tum Off Real Time Clock Alann 4-90 AH=09H - Read Real Time Clock Alann 4-91 AH=OAH - Read Syslelll Timer Day Counl 4-91 AH=OBH - Set Syslelll Timer Day Counl 4-92 AH=80H - Set Sound Soun:e 4-92 INT 21H Functions Summaries Characler l/0 3-13

Directory Management

3-12

Drive Management 3-12 FCB-Orienled 3-9 File-Sharing 3-12 Functions by DOS Version 3-6 Handle-Orienled 3-10 IOCTL Device-Orienled 3-11 Keyboard 3-8 Memory Managemenl 3-13 National-Language Support 3-14 Nelwort 3-15 Program Management 3-14 Syslelll Management 3-15 INT 21 H - DOS Functions AH=OOH - Terminale Progrmn 3-16

Appe11dix B: /11du

INT21H-OOSFunctions, continu~ AH=OIH-Read Keyboanl wilh Echo 3-17 AH=02H-DisplayCharacler 3-18 AH=03H-Auxiliary lnpul 3-19 AH=04H - Auxiliary Oulpul 3-19 AH=OSH - Prinl Characler 3-20 AH=06H - Direct Console l/0 3-20 AH=07H - Direcl Console lnpul 3-21 AH=OSH - Read Keyboard wilhoul Echo 3-22 AH=09H - Display Siring 3-22 AH=0AH - Buffered Keyboanl lnpul 3-23 AH=0BH - Check Keyboanl Slalus 3-23 AH=OCH - Flush Buffer, Read Keyboanl 3-24 AH=ODH - Resel Drive 3-24 AH=OEH - Se1 Defaull Drive 3-25 AH=OFH - Open File wilh FCB 3-25 AH= IOH - Close File will, FCB 3-26 AH=IIH- Find Finl File wilh FCB 3-26 AH=l 2H - Find Nexl File wilh FCB 3-27 AH=l3H-Delele File willi FCB 3-28 AH=l4H-Sequenda1Read 3-28 AH=l5H - Sequential Wrile 3-29 AH=l6H-Crea1eFilewithFCB 3-30 AH=17H-RenameFilewilliFCB 3-31 AH=19H-Gel Current Drive 3-31 AH=IAH- Set Disk Transfer Address 3-32 AH=IBH-Gel Oefaull Drive Data 3-32 AH=ICH-Ge1DriveDala 3-33 AH=IFH -Gel Default DPB 3-33 AH=21H- Random Read 3-34 AH=22H - Random Wri1e 3-34 AH=23H - Gel File Size 3-35 AH=24H - Sel Random Record Number 3-36 AH=25H - Sel lnlemlpl VeclOr 3-36 AH=26H - Creale New Program Segmenl Prefix 3-37 AH=27H-Random Block Read 3-37 AH=28H - Random Block Wrile 3-38 AH=29H - Parse Filename 3-39 AH=2AH - Gel Dale 3-39 AH=2BH - Se1 Dale 3-40 AH=2CH - Gel Time 3-40 AH=2DH -Sel Time 3-41 AH=2EH - Sel/Resel Verify Flag 3-41 AH=2FH - Gel Disk Transfer Address 3-42 AH=30H-Ge1 Venion Number 3-42 AH=3 IH - Keep Program 3-43 AH=32H - Gel DPB 3-43 AX=3300H - Gel Ctrl-+C Check Flag 3-44 AX=3301H - Sel Clrl+C Check Flag 3-44 AX=3305H - Gel S1a11up Drive 3-45 AX=3306H-Gel MS-DOS Version 3-45 AH=34H - Gel lnDOS Flag Address 3-46 AH=35H-Gel ln1enup1 VeclOr 3-46 AH=36H -Gel Disk Free Space 3-47 AH=38H - Gel Counlry Da1a 3-47 AH=38H - Sel Counlry Dala 3-48 AH=39H - Creale Di,.clOry 3-49 AH=3AH - Remove DireclOry 3-50 AH=3BH - Change Curren, DireclOry 3-50 AH=3CH - Crelle File willi Handle 3-51 AH=3DH - Open File willi Handle 3-52 AH=3EH - Close File will, Handle 3-52 AH=3FH - Read File or Device 3-53 AH=40H - Wriae File or Device 3-54 AH=41H-DeleleFile 3-54 AH=42H - Move File Poinler 3-55 AX=4300H- Gel File At1ribu1es 3-56 AX=4301H-Set File Allribules 3-57 AX=4400H - Gel Device Dala 3-58 AX=440AH - Is File or Device Remole 3-64

B-7

INT 21H - DOS Functions, continued AXs440BH - Sci Sharing Retry Count 3-64 AX=440CH, Minor Code=4AH - Select Code Page J-66 A X ~ , Minor Code=4CH - Start Code-Page Prepare A X ~ , Minor Code=4DH - End Code-Page Prepare AX=440CH, Minor Code=SA-1- Set Display Mode 3-68 A X ~ , Minor Code=6AH - Query Selected Code Page

~tor

AX~~,3 Code=6BH - Query Code-Page Prepare AX=440CH, Minor Code=7A-I - Get Display Mode 3-70 AX=440CH, Minor Code=45H - Set Iteration Counl 3-65 AX=440CH, Minor Code=65H - Gel Iteration Count 3-68 AX=440DH, Minor Code=40H - Set Device Parameters 3-71 AX=440DH. Minor Code=41H- Write Track on Logical Drive 3-72 AX=440DH, Minor Code=42H - Formal Track on Logical Drive 3•72 AX=440DH, Minor Code=46H - Sel Media ID 3-73 AX=440DH, Minor Code=60H - Get Device Parameters 3-74 AX=440OH, Minor Code=61H - Read Track on Logical Drive 3-74 AX=440OH, Minor Code=62H - Verify Track on Logical Drive 3-75 AX=440DH, Minor Code=66H - Gel Media ID 3-76 AX=440OH, Minor Code=68H - Sense Media Type 3-76 AX=440EH - Get Logical Drive Map 3-77 AX=440FH-Se1 Logical Drive Map 3-78 AX=4401H -Set Device Dala 3-58 AX=4402H - Receive Control Cati. from Character Device 3.59 AX=4403H - Send Control Oala to Character Device 3-59 AX=4404H - Receive Control Dala from Block Device 3-60

AX=4405H - Send Control Dala to Block Device 3-60 AX=4406H -Check Device lnpul Slatus 3-61 AX=4407H - Check Device Outpul S1a1Us 3-62 AX=4408H - Does Device Use Removable Media 3-62 AX=4409H - Is Drive Remote 3-63 AX=4410H - Query IOCTL Handle 3-78 AX=44 II H - Query IOCTL Device 3-79 AH=45H - Duplicate File Handle 3-79 AH=46H - Fon:e Duplicale File Handle 3-80 AH=47H -Gel Curren! Dire 2-14 PS/2 Model 30 Connectors Diskette Drive 8-10 Fixed Drive 8-10 PowerSupply 8-17 Model 50 ConneclorS Diskette Drive 8-11 Power Supply 8-17 Model 50/60 Memory Connector 8-19 Model 50/60{/0/80 DMA l/0 AddrS Canada) Order Code WIGUPR

The Waite Group's MICROSOFT QUICKBASIC'" PRIMER PLUS The Waite Group: Stephen Prata with Harry Henderson This is the ideal introduction-and more-for anyone eager to explore the Microsoft QuickBASIC programming environment. Covering Microsoft QuickBASIC version 4.5, this book provides step-by-slep instructions. clear and helpful explanations, superb programming examples. and expert advice. You'll also find detailed infonnation on topics not fully covered in standard introductions-graphics, debugging. sound, error trapping. interaction with DOS. and mi:-i:ed-language programming. In addition, each chapter includes a series of review questions and answers so that you can chart your progress. 624 pages $24.95 ($32.95 Canada)

Order Code QBPRPL

The Waite Group's Microsoft QuickBasic'" Bible Mitchell Waite, Robert Arnson, Christy Gemmell. and Harry Henderson This is the cornerstone of every QuickBasic Programmer's library, featuring up-to-date, detailed infonnation on every QuickBasic keyword, statement, function, and feature through version 4.5. Each entry

includes:



purpose, syntax. and specific uses



an operational description



cross-references 10 01her dal:a



compatibility information for nine other versions of Basic. The authors also provide hundreds of instructive programming examples and tutorials as well as helpful warnings and tips.

960 pages

$27.9S ($36.95 Canada)

Order Code QBBI

LEARNCNOW Augie Hansen Learn how to program in C, quickly and painlessly, with LEARN C NOW. This completely integrated system is designed to make C programming fun and easy to learn on any microcomputer running MS-DOS. This.unique package includes three 5 •t~-inch disks and a companion book. It gives you everything you need to learn C at your own pace before purchasing expensive programming tools. The disks contain lessons in C programming, with detailed information on using the Learn C Compiler; the Learn C in-memory compiler, based on Microsoft QuickC and featuring a full screen editor, debugger, online task-specific help, and blazing 7(K)() line-per-minute compiler speed; and scores of sample programs. Complementing the online information, Hansen's companion book provides lessons in C programming. question-and-answer sections, and helpful recommendations for getting the most out of this excellent course. And with your copy of LEARN C NOW, you'll also receive a special discount coupon for the full-strength Microsoft QuickC Compiler with Microsoft QuickAssembler. 384 pages with three s•t~-inch disks

$39.!)5 ($4!1.!)5 Canada)

Order Code LECNO

MICROSOFf'S 80386/80486 PROGRAMMING GUIDE, 2nd ed. Ross P. Nelson Here is a clear, comprehensive, and authoritative introduction to the premier line of Intel chips-including

the 80386SX, 80386DX, and 80486. This reference is loaded with illustrations and is ideal for assembly language programmers. microprocessor design engineers, and students of computer architecture. Ross Nelson, an early adviser to the 80386 development team at Intel covers CPU organization of the 80287 and 80387 math coprocessors, memory architecture, protection schemes, the basic instruction set and the floating-point instruction set, implementation of a virtual memory system through paging and cache management with the 80486, and more. Every serious 80386 and 80486 programmer will appreciate the clearly organized instruction set reference-a valuable resource. 496 pages

$24.95 ($34.!JS Canada)

Order Code BOPRGU

MICROSOFT® MOUSE PROGRAMMER'S REFERENCE, 2nd ed. This is the official documentation for programming the Microsoft Mouse. It provides all the software and how-to infonnation you need to incorporate a sophisticated mouse interface for MS-DOS operating system-based programs. Fully updated to cover Microsoft BallPoint mouse and the mouse driver version 8, this new edition includes: sample programs that demonstrate mouse programming in six PC programming languages; a comple1e reference to all mouse function calls; an overview of mouse programming; detailed information about writing and using mouse menu programs; comprehensive index; and much more. The two 5 1/•-inch companion disks include sample mouse menus, MOUSE.LIB and EGA.LIB, and a collection of valuable programming examples in interpreted Basic, Microsoft QuickBasic, Microsoft C, Microsoft QuickC, Microsoft Macro Assembler, FORTRAN, and Pascal. 352 pages with two S 1/4-inch disks

$34.!JS ($44.95 Canada)

Order Code MOPRR2

Microsoft Press books are available wherever quality computer books are sold. Prices subject to change. Or call 1-800-MSPRESS for ordering infonnation or placing credit card orders. Please refer to BBK when placing your order. In Canada, con1ac1 Macmillan Canada, A11n: Microsoft Press Dcpl., 164 Commander Blvd .. Agincourt, Ontario, Canada MIS 3C7. 416-293-8141 In the U.K,, CORIICI Micl'05ofl Press. 27 Wrighls Lane. London W8 5TZ,

THE PROGRAMMER'SP QmRCEBOOK

Check your facts-fa st-with this one-of-a-kind reference! Whatever you need to know about a PC-card sizes, cable connections, ROM BIOS routines, internal registers, DO~~ functions, and so onyou 'll find the information here. This unique resource integrates in one convenient volume important factual data published in scores of technical and user references. This new edition is designed to be your primary reference to information about the latest software and hardware, including MS-DOS 5, Windows 3, and the PS/2®models 80, 90, and 95. Information about older systems is also retained throughout the.book, and equivalent features of earlier software versions are identified. The material is easily retrievable, presented in hundreds of charts and tables that include references to the source of the data, "pointers" to related information in the book, and notes to help you use the nforination. Topics include: ■

Numeric conversions and character sets



DOS commands and utilities



Microprocessor chip pinouts and instruction sets, including the 80486, 386SX, and 80387





New Lotus®/Intel®/Microsoft (LIM) 4.0 Expanded Memory Specification (EMS) abilities



ROM BIOS function calls



Microsoft Windows function calls



Microsoft CD-ROM extensions

■ The Microsoft BallPoint'"

mouse, Hayes® modem, Extended Graphics Adapter (XGA), and other peripherals ■

Virtual Control Programming Interface (VCPJ) function calls

DOS function calls

THE PROGRAMMER'S PC SOURCEBOOK-a must-have computerside reference for DOS and Windows programmers! * DOS refers to the MS-DOS and PC-DOS operating systems.

ISBN 1-55615-321-X

U.K. Canada [Re,·ommn1ded]

.,.,J.J "Ill