Errata for _PC_Interrupts_, second edition, by Ralf Brown and Jim Kyle 9/18/94 Page 1, middle "the brisk sales fo the recently released MS-DOS 6.0 proves" should read "... prove" Page 1, last paragraph "PC Interrupts" should be italicized Page 4, "About the authors" The blurb for Ralf Brown is out of date. The first sentence should read "Ralf Brown is currently a Postdoctoral Fellow at Carnegie Mellon University's Center for Machine Translation." Page 4, middle "LISTSERV@COL2 = PIECS" should read "LISTSERV@RPIECS" Page 8, Table 2-1 "06h Invalid Opcode" was inadvertently split Page 14, Table 2-2 (next-to-last line on page) The "Program Chapter ..." header should have been at the top of page 15 Page 15, Table 2-2 The values for ANSIPLUS.SYS and XMA2EMS.SYS should read "1Ah" and "1Bh", respectively. Page 17 The default value for ASPIHOOK.SYS should read "C0h" instead of "C0" Page 25, Table 3-1 Read "Convertible" for "CONV" and "PC Jr" for "Jr" Page 26, Table 3-3 "03h 2 @@" should have only a single at-sign Page 29, INT 10h For "AT's", substitute "ATs" Page 29, INT 70h "Notes: many" --> "Details: Many" Page 31, INT 05h "status used by default handler" --> "status used by the default handler" Page 34, Table 4-4 "ABIOS ver supports" --> "ABIOS version supports" Page 39, INT 15h Function 83h missing line break in Registers at call; ES:BX should align under CX:DX Page 55, INT 16h Function 05h Return Registers: should read AL 80h if supported and should line up with function 80h in the left column Page 55, INT 16h Function 09h "and22h" --> "and 22h" Page 60, INT 1Ah Function 01h missing Return Registers: section, which should just read "none" Chapter 5 a very tiny font was used, which appears to have been due to attempting to preserve page numbers in the face of a considerable number of late additions Page 76, INT 1Ah Function 9Ch "9BhINT 21h" should read "9Bh; INT 21h" Page 78, INT 10h Function 5200h missing Return Registers: section, which should just read "none" Page 79, INT 17h Function 84h "In Chapter 15" --> "in Chapter 15" Page 80, Section "NEC" intro The intro should mention that all of the INT 18h calls conflict with IBM's usage of INT 18h. Page 92, INT 16h Function F0h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Pages 101-109, Table 8-2 a considerable number of entries are incorrectly aligned Page 117, Table 8-2 The notes at the end of the table have lost their numbers; they should be numbered from 1 to 12 instead of being marked with asterisks. Page 117, INT 10h Function 01h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 122, INT 10h Function 1000h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 124, INT 10h Function 1012h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 129, INT 10h Function 12h Subfunction 32h "display adapters" --> "display adapter's" Page 130, INT 10h Function 12h Subfunction 35h "0, 2 or 3" --> "0, 2, or 3" Page 131, INT 10h Function 1402h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 140, INT 10h Function 007Fh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing; in addition, the last return value listed should align with "1Ah,1Bh,..." in the left column Page 144, INT 10h Function 5F02h (Chips&Tech) "autmatic" --> "automatic" Page 145, INT 10h Function 5F90h-5F92h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 171, Table 8-60 "eading" should of course be "reading" and "umber" s.b. "number" Page 178, INT 2Fh Function 1A53h missing line break--"other registers..." should be under "CL=..." Page 182, INT F2h missing line break--"other registers..." should be under "0Eh..." Page 188, Section "SOLLEX" intro "intended to provided" should be "intended to provide" Page 196 the second "INT 10h Function 12h, Subfunction A2h" heading should be A3h instead of A2h Page 205, INT 13h Function 05h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 230, Table 11-16 "100H to 3F8H" should be "100h to 3F8h" Page 234, INT 13h Function 06h "defect list" --> "defect list" Page 251, INT 14h Function 0Eh under Registers at call, "0EH" should be "0Eh" Page 259, INT 14h Function 1Eh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 145, INT 14h Function 86h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 269, INT 14h Function FF02h the function name should be "SET RECEIVE BUFFER" Page 279, INT 2Fh Function 48C4h Subfunction 00h both the 48C4h in the heading and AX=48C4h should read 48C5h instead Pages 282 to 285 are in the wrong font Page 296, INT 10h Function 4Bh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 308, INT 1Ah Function E0h "FFH" under Return Registers should read "FFh" Page 321, INT 21h Function 37D0h "valuefrom" should of course be "value from" Pages 325 to 334 all occurrences of (" --left paren/double qoute-- should omit the paren Page 325, INT 2Fh Fucntion 4A11h Subfunction 0001h "host:\DBLSPACE.sequence" should not be in boldface Page 325, INT 2Fh Function 4A11h Subfunction 0003h this function was erroneously marked as undocumented Page 326, INT 2Fh Function 4A11h Subfunction 0004h this function was erroneously marked as undocumented Page 326, INT 2Fh Function 4A11h Subfunction 0006h "tounmount" --> "to unmount" Page 331, Section "Stacker" intro "MacIntosh" --> "Macintosh" Page 346, INT 13h Function 30h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Pages 350 and 351 Both INT 21h Function 4402h and Function 4403h are for SMARTDRV.SYS v3 only. Page 354, INT 2Fh FUnction 4A10h Subfunction 000Ah delete the "@S" Page 361, INT 16h Function 5758h under Registers at call, the last line should read CX 5758h Page 371, intro "some battery-powered" should read "most battery-powered" Page 373, INT 15h Function 5307h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 379, INT 5Fh Function 00h missing line break--"20h 240x128..." should be under "07h text..." Page 393, INT 60h Function 0403h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 399, INT 60h Function 050Ah "Table 24-!K" should read "Table 24-68" Page 407, INT 60h Function 0707h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 409, INT 60h Function 0903h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 411, INT 60h Function 0B06h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 418, INT 60h Function 0C05h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 433, INT 60h Function 1508h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 451, INT 33h Function 0033h the "other" and "ES:DX -> ..." lines should be in the left-hand column Page 461, INT 33h Function 3001h "Desqview" should read "DESQview" Page 467, INT 80h Function 0000h instead of referring the reader to the index, the Conflicts section should reference Table 2-2 Page 469, INT 94h Function 0000h "INT 94h;Function 0000h" should have a blank in place of the semicolon Page 474, INT 94h Function 8001h "INT 94h;Function 8001h" should have a blank in place of the semicolon Page 476, INT 94h Function 8017h Subfunctions 04h/08h under Registers at call, the "AL=" and "SI=" lines should be swapped Page 477, INT 94h Function 8017h Subfunction 10h under Registers at call, the "AL=" and "SI=" lines should be swapped Page 507, Table 24-11 replace the lines for offsets 3Ch and 3Dh with: 3Ch BYTE apparently unused by MS-DOS versions <= 6.00 (Novell DOS 7) interim console flag (see AX=6301h) 3Dh BYTE (APPEND) TrueName flag (see INT 2F/AX=B711h) Page 512, INT 21h Functions 3300h and 3301h "DOS-internal and" should read "DOS-internal stacks and" Page 538, Table 24-50 at offset 4Ch, "4CH" should read "4Ch" Page 539, Table 25-53 "bit 8- 9" should be "bit 8-9" Page 555, Table 24-81 at offset 43h, bits 13 and 12: \ / should be a large right brace Page 560, Table 24-95 "D escription" --> "Description" Page 576, Table 24-116 remove the ".comment ..." line Page 585, Table 24-125 in the first Return Registers section, "ZF ..." and following should align with the "02h 'PullRequest'" line in the left-hand column The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 586, Table 24-125 misaligments: "AL,FLAGS destroyed" should match up with "07h 'SigEvent'" "after corresponding ProcRun call" with "09h 'ProcBlock'" The final "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 587, Table 24-125 misalignments: "ZF set if queue full" should match up with "0Dh 'QueueWrite'" "BX,CX destroyed" should match up with "10h 'GetDOSVar'" final "AX,BX,CX,DX destroyed" should align with "1Ch 'CritLeave'" Page 593, Table 24-131 delete the "N@" Page 597, INT 23h under Details, "must to check" should read "must check" Page 599, INT 26h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Chapter 26 this chapter was printed in the wrong font (and what an ugly one!) Page 620, INT 2Fh Function 14FEh "Table 24-!C" should be "Table 24-18" Page 629, INT 2Fh Function 1A02h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 635, Section "KEYB" intro "KEBYxx" should of course be "KEYBxx" Page 654, INT 2Fh Function 168Ah "ASCI" --> "ASCII" Page 667, Table 30-12 "paged accessed" --> "page accessed" Page 671, Table 30-16 the three "DPMI;..." lines were meant to be indexing entries and should be deleted Page 673, INT 31h Function 0801h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 681, Table 31-19 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 687, INT 2Ch Function 002Bh missing line break before "See also" Page 690, INT 21h Function 2507h "numbern" --> "number" Page 699, Table 33-11 "Table 24-!L" --> "Table 24-19" Page 715, INT 2Fh FUnction FB42h Subfunction 0001h under Return Registers for BC3.0, remove the "unknown" after "ES:SI" Page 715, INT 2Fh Function FB42h Subfunction 0002h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 719, INT 2Fh Function FB42h Subfunction 0009h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 725, INT 2Fh Function FB42h Subfunction 1002h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 728, Table 36-21 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 729, Table 36-28 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 733, INT 21h Function FFh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 735, INT 21h Function 2Bh Subfunction 4149h the Return Registers section should read AL FFh if installed Page 742, INT 67h Function 56h under Return Registers, "BX = stack space required" should align with "02h get page map...." in the left-hand column Page 744, INT 67h Function 5Bh misalignments under Return Registers: "BL = current ..." should align with "00h get alternate map ..." "DX = array size ..." with "02h get alternate map save ..." "BL = number of ..." with "03h allocate alternate map ..." Page 744, INT 67h Function 5Bh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 746, Section "Extended Memory" intro "Mmeory" should of course be "Memory" Page 763, Table 39-70 misalignments under Return Registers: second "CF set on error" should align with "01h unknown" at left third "CF set on error" should align with "02h unknown" at left "unknown" should align with "03h MS Windows initializing" at left first "CF clear" with "04h MS Windows terminating" at left second "CF clear" with "05h determine whether program..." at left third "CF clear" with "06h unknown" last "CF clear" with "else" in left-hand column Page 764, Table 39-72 "#BReturn Registers:" should be a boldface "Return Registers:" Page 764, Table 39-73 missing line break before "clears any pending IRQ7"; omit the trailing "else" in that sentence Page 764, Table 39-74 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 765, Table 39-74 misalignments under Return Registers: first "CF clear" with "00h 'QEMM_GET_INFO'" in left-hand column second "CF clear" with "01h 'QEMM_GET_STEALTH_COUNT'" at left third "CF clear" with "02h 'QEMM_GET_STEALTH_LIST'" at left "CF set" with "else" in left-hand column Page 765, Table 39-76 misalignments under Return Registers: second "CF clear" with "01h 'QEMM_SET_PTE'" in left-hand column "CF set" should align with "else" in left-hand column Page 765, Table 39-77 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments under Return Registers: first "CF clear" with "00h 'QEMM_GET_VHI_INFO" in left-hand column second "CF clear" with "01h 'QEMM_SET_VHI_FINO" at left (and FINO should be INFO) "CF set" should align with "else" in left-hand column Page 766, Table 39-78 under Return Registers, the final "CF set" should align with "else" at left Page 766, Table 39-80 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments under Return Registers: first "CF clear" should align with "00h get unknown" in left-hand col. second "CF clear" with "01h set unknown" at left third "CF clear" with "FFh clear all unknown" in left-hand column "CF set" should align with "else" in left-hand column Page 767, Table 39-81 missing "Return Registers" section, which should read unknown Page 773, Table 40-11 at offset 14h, "prsent" should be "present" Page 774, Table 40-13 "s egment" should of course be "segment" Page 777, Table 40-36 under Return Registers, the final "unknown" should line up with "01h Windows3 terminating" in the left-hand column Page 778, Table 40-46 The "Return Registers" section slipped to the next page and thus appears at first glance to be missing under Return Registers, "BX = ..." should line up with "00h get STACKS" Page 789, INT 67h Function 5DE3h/5DE4h these two functions are missing Return Registers sections, which should read Return Registers: none Page 795, Table 42-1 the line for offset 00h should read 00h WORD length of signature string at offset 14h in device driver Page 802, INT 67h Function 5E00h this function is missing a Return Registers section, which should read Return Registers: none Page 803, INT 67h Functions 5E02h/5E03h/5E04h these three functions are missing Return Registers sections, which should read Return Registers: none Page 814, INT 2Fh Function 1607h Subfunction 0015h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments under Return Registers: "CX = state" should line up with "0000h query ..." in left-hand column first "AX=B97Ch" with "0001h set patches" "if supported request" with "0003h get size ..." "AX = B97Ch if supported" with "0004h determine instanced...." "DX:AX = 0000h...." with "0005h get device driver size" at left Page 815, INT 2Fh Function 1607h Subfunction 0015h under Details, "_DOS_Internals_" should be an italicized "DOS Internals" Page 824, INT 15h Function 1000h delete "Conflicts:" Page 830, Table 44-5 the large right brace should be to the left of "return 00000000h...." Page 838, Table 44-13 at DFh, delete "TopView;command repitition", which was to have been an index entry at E4h, delete "TopView;menu style" Page 840, Table 44-13 at FBh, delete "TopView;field table" Page 841, Table 44-14 \ / should be a large right brace in all instances Page 843, Table 44-15 at 07h and 85h, delete "DESQview;suspending tasks" and "background processing;TopView", which were to have been indexing entries Page 844, Table 44-15 at 8Bh and ADh, delete "DESQview;select field processing" and "DESQview;notification window", which were to have been indexing entries Page 849, INT 15h Function 12h Subfunction 0Bh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 850, INT 15h Function 12h Subfunction 0Dh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 852, table 44-24 \ > should be a large right brace / Page 852, INT 15h Function 12h Subfunction 11h "TopView" should have been at the right-hand side of the first line, rather than wrapped to the second line The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 871, INT 21h Function 2Bh Subfunction 4445h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments: "BX = version..." should line up with "01h get version" at left both sets of "BH=","BL=","DX=" should be in the right-hand column and should line up with "02h get shadow buffer..." and "04h get shadow" Page 873, INT 15h Function BFDEh Subfunctions 0006h and 0007h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments: "AH = interrupt number" should line up with "0006h get" Page 883, INT 2Fh Function DE01h Subfunction 7575h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments: "AX = 00FFh if installed" should line up with "0000h installation" first "AX = 0001h" with "0001h turn on" second "AX = 0001h" with "0002h turn off" "AX = status" with "0003h get process info" "AH = major version" with "0004h get version" "DX:AX = 1/100s ..." with "0005h (v1.10+) get time" "DX:AX = total task switches" with "0006 (v1.10+) get number" Page 897, INT 14h Function 09h missing line breaks before "Conflicts" and "See also" Page 897, INT 14h Function 20h "see Function 00h'SERIAL'" should read "see BIOS Function 00h in Chapter 12" Page 909, INT 15h Function 1Ch missing line break before "See also" Page 929, INT 12h Function FFFEh Subfunction FFFEh The "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments: "AX = status" with "00h installation check" "AX = number of programs" with "02h buld program ID list" "AX = 0000h if task" with "03h switch to specified task" "AX = version ..." with "06h get version" "AX = number of open tasks" with "08h get open tasks" Page 934, INT 2Fh Function 4A05h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 938, Table 49-7 \ / should be a large right brace Page 943, INT 21h Function 5758h "CF clear"/"ES:BX -> Headroom's INT 21h handler" should be in the right-hand column and lined up with "02h get INT 21h handler" The second "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 944, INT 21h Function 5758h The final "Return Registers" section slipped to the next page and thus appears at first glance to be missing misalignments: "CF clear" with "13h unknown" "AX = unknown set by function 15h" with "16h get unknown" "BX = unknown" with "17h get unknown" Page 953, Table 49-16 "Bitfield" should read "Bitfields" Page 957, INT D4h Function 1Dh "see see" Page 965, Section "SWELL" intro extraneous line break between "child" and "process" Page 978, INT 2Fh (Ross Wentworth's POPUP) The second "Return Registers" section slipped to the next page and thus appears at first glance to be missing "AX = hotkey" should line up with "08h get hotkeys" Page 979, INT 2Fh (CiriSOFT) missing line break before "See also" Page 979, Table 51-3 at offset -9, "must be use THIS variable in it's" should read "must use THIS variable in its" Page 980, Table 51-3 "and it's" should read "and its" Page 985, INT 66h Function FFFEh under Details, "This installation" should read "The installation" Page 987, Table 52-1 ".comment snake into two columns" should be deleted Page 1013, chapter intro "such varies products" --> "such varied products" Page 1042, INT 2Fh Function D000h "must be unchanged)" extraneous paren Page 1069, Table 59-1 after "AX=FE01h", delete the "INT 21h;Function FFFFh" which should have been an indexing entry Page 1078, INT 2Fh Function CA03h "sto scan" --> "to scan" Page 1092, INT 16h Function FFB8h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 1106, INT 2Fh Function D201h Subfunction 4849h missing line break before "Conflicts:" Page 1114, Table 64-3 at 0617h, "grphics" --> "graphics" Page 1122, INT 11h Function 77h The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 1123, INT 11h Functin 7Ah The "Return Registers" section slipped to the next page and thus appears at first glance to be missing Page 1129, INT 2Fh Function CB05h delete the ".comment snake into two columns" Page 1130, INT 2Fh Function CB07h "see Function CB06h" --> "see Table 65-6" Page 1141, INT 21h Function 2B01h Subfunction 5441h The beginning of the Program section should read "TAME is a shareware (commercial in versions 3.0x only) program by ..." Page 1145, Table 66-6 "DH = niterrupt number" should read "DH = interrupt number" Page 1146, Section "ASCII" the introduction should read ASCII is one of a number of programs using a common TSR interface by Compact Soft group of Kiev, Ukraine. A widely-available copy of ASCII version 4.23 was hacked to indicate that the author is Nick Zaikin, Jr. Page 1149, INT F7h Function 00h extraneous blank line Page 1171, INT 16h Function EDh "get resident CS" should read "get resident data segment" and "AX = code segment of resident portion" should say "data" instead of "code" Incorrect indentations Page Line Text 18 19 (DPMILOAD, etc.) 18 32 for DOS 3.5 27 3 75h 36 41 clock ticks 44 24 Toshiba T5200/100 48 13 disable cache L1 48 15 enable cache L1 49 23 requested arbitration level 56 23 02h) (see Table 4-19) etc.