Format of List of Lists |
Offset | Size | Description | ||||||
---|---|---|---|---|---|---|---|---|
-24 |
WORD |
(DOS 3.1+) contents of CX from INT 21/AX=5E01h | ||||||
-22 |
WORD |
(DOS ???+) LRU counter for FCB caching | ||||||
-20 |
WORD |
(DOS ???+) LRU counter for FCB opens | ||||||
-18 |
DWORD |
(DOS ???+) address of OEM function handler (see INT 21/AH=F8h) FFFFh:FFFFh if not installed or not available | ||||||
-14 |
WORD |
(DOS ???+) offset in DOS CS of code to return from INT 21 call | ||||||
-12 |
WORD |
(DOS 3.1+) sharing retry count (see AX=440Bh) | ||||||
-10 |
WORD |
(DOS 3.1+) sharing retry delay (see AX=440Bh) | ||||||
-8 |
DWORD |
(DOS 3.0+) pointer to current disk buffer | ||||||
-4 |
WORD |
(DOS 3.0+) pointer in DOS data segment of unread CON input when CON is read via a handle, DOS reads an entire line, and returns the requested portion, buffering the rest for the next read. 0000h indicates no unread input |
||||||
-2 |
WORD |
segment of first memory control block (see #01628) | ||||||
00h |
DWORD |
pointer to first Drive Parameter Block (see #01395 at AH=32h) | ||||||
04h |
DWORD |
first System File Table (see #01639,#01640,#01641,#01642) | ||||||
08h |
DWORD |
pointer to active CLOCK$ device's header (most recently loaded driver with CLOCK bit set) | ||||||
0Ch |
DWORD |
pointer to active CON device's header (most recently loaded driver with STDIN bit set) | ||||||
---DOS 2.x--- |
||||||||
10h |
BYTE |
number of logical drives in system | ||||||
11h |
WORD |
maximum bytes/block of any block device | ||||||
13h |
DWORD |
pointer to first disk buffer (see #01649,#01650) | ||||||
17h |
18 BYTEs |
actual NUL device driver header (not a pointer!) NUL is always the first device on DOS's linked list of device drivers. (see #01646) |
||||||
---DOS 3.0--- |
||||||||
10h |
BYTE |
number of block devices | ||||||
11h |
WORD |
maximum bytes/block of any block device | ||||||
13h |
DWORD |
pointer to first disk buffer (see #01650,#01652) | ||||||
17h |
DWORD |
pointer to array of current directory structures (see #01643) | ||||||
1Bh |
BYTE |
value of LASTDRIVE command in CONFIG.SYS (default 5) | ||||||
1Ch |
DWORD |
pointer to STRING= workspace area | ||||||
20h |
WORD |
size of STRING area (the x in STRING=x from CONFIG.SYS) | ||||||
22h |
DWORD |
pointer to FCB table | ||||||
26h |
WORD |
the y in FCBS=x,y from CONFIG.SYS | ||||||
28h |
18 BYTEs |
actual NUL device driver header (not a pointer!) NUL is always the first device on DOS's linked list of device drivers. (see #01646) |
||||||
---DOS 3.1-3.3--- |
||||||||
10h |
WORD |
maximum bytes per sector of any block device | ||||||
12h |
DWORD |
pointer to first disk buffer in buffer chain (see #01650) | ||||||
16h |
DWORD |
pointer to array of current directory structures (see #01643) | ||||||
1Ah |
DWORD |
pointer to system FCB tables (see #01640,#01641,#01642) | ||||||
1Eh |
WORD |
number of protected FCBs (the y in the CONFIG.SYS FCBS=x,y) | ||||||
20h |
BYTE |
number of block devices installed | ||||||
21h |
BYTE |
number of available drive letters (largest of 5, installed block devices, and CONFIG.SYS LASTDRIVE=). Also size of current directory structure array. | ||||||
22h |
18 BYTEs |
actual NUL device driver header (not a pointer!) NUL is always the first device on DOS's linked list of device drivers. (see #01646) |
||||||
34h |
BYTE |
number of JOIN'ed drives | ||||||
---DOS 4.x--- |
||||||||
10h |
WORD |
maximum bytes per sector of any block device | ||||||
12h |
DWORD |
pointer to disk buffer info record (see #01652,#01653)
|
||||||
16h |
DWORD |
pointer to array of current directory structures (see #01643,#01644) | ||||||
1Ah |
DWORD |
pointer to system FCB tables (see #01640,#01641,#01642) | ||||||
1Eh |
WORD |
number of protected FCBs (the y in the CONFIG.SYS FCBS=x,y) (always 00h for DOS 5.0) | ||||||
20h |
BYTE |
number of block devices installed | ||||||
21h |
BYTE |
number of available drive letters; also size of current
directory structure array. For DOS 4.0-6.0: largest of 5, installed block devices, and CONFIG.SYS LASTDRIVE= For DOS 7.x (Windows9X), set to 32 if no LASTDRIVE= or LASTDRIVEHIGH=, else set to larger of installed block devices and LASTDRIVE(HIGH)= |
||||||
22h |
18 BYTEs |
actual NUL device driver header (not a pointer!) NUL is always the first device on DOS's linked list of device drivers. (see #01646) |
||||||
34h |
BYTE |
number of JOIN'ed drives | ||||||
35h |
WORD |
pointer within IBMDOS code segment to list of special program names (see #01662) (always 0000h for DOS 5.0) | ||||||
37h |
DWORD |
pointer to FAR routine for resident IFS utility functions (see
#01658) may be called by any IFS driver which does not wish to service functions 20h or 24h-28h itself |
||||||
3Bh |
DWORD |
pointer to chain of IFS (installable file system) drivers | ||||||
3Fh |
WORD |
the x in BUFFERS x,y (rounded up to multiple of 30 if in EMS) | ||||||
41h |
WORD |
number of lookahead buffers (the y in BUFFERS x,y) | ||||||
43h |
BYTE |
boot drive (1=A:) | ||||||
44h |
BYTE |
flag:
|
||||||
45h |
WORD |
extended memory size in KB | ||||||
---DOS 5.0-6.0--- |
||||||||
10h |
39 BYTEs |
maximum bytes per sector of any block device | ||||||
37h |
DWORD |
pointer to SETVER program list or 0000h:0000h | ||||||
3Bh |
WORD |
(DOS=HIGH) offset in DOS CS of function to fix A20 control when executing special .COM format | ||||||
3Dh |
WORD |
PSP of most-recently EXECed program if DOS in HMA, 0000h if
low used for maintaining count of INT 21 calls which disable A20 on return |
||||||
3Fh |
8 BYTEs |
the x in BUFFERS x,y (rounded up to multiple of 30 if in EMS) | ||||||
---Windows NT DOS Box--- |
||||||||
10h |
6 BYTEs |
??? | ||||||
16h |
DWORD |
pointer to array of current directory structures (see #01645) | ||||||
1Ah |
6 BYTEs |
??? | ||||||
20h |
BYTE |
number of block devices installed | ||||||
21h |
BYTE |
number of local drive letters (= installed block devices) Also size of current directory structure array. |
||||||
22h |
18 BYTEs |
actual NUL device driver header (not a pointer!) NUL is always the first device on DOS's linked list of device drivers. (see #01646) |
||||||
---DOS 7.x--- |
||||||||
10h |
55 BYTEs |
maximum bytes per sector of any block device | ||||||
47h |
25 BYTEs |
??? | ||||||
60h |
BYTE |
"DOS_FLAG" (see also INT 26) |