blob: 12684d41b0d4ca8411cbf43cfec98fa1c9ac28a6 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
; Copyright (c) Microsoft Coropration 1988-1991. All Rights Reserved.
;****************************************************************
;* *
;* SEGDEFS.INC -- Segment Declarations for Dos Extender *
;* *
;****************************************************************
;* Revision History: *
;* *
;* 12/13/88 (GeneA): reordered segments so that the code *
;* segment is last. *
;* *
;****************************************************************
;
; -------------------------------------------------------
; DOS EXTENDER SEGMENTS
; -------------------------------------------------------
;; Touch here to force rebuild of DOSX! EarleH
?DF=1
?PLM=1
?WIN=0
?MEDIUM=1
DOS5=1
IFNDEF WHEN_COMMAND_COM_WORKS
WINDOWS=1
ELSE
WINDOWS=0
ENDIF
include .\cmacros.inc
DXDATA segment para public 'DATA'
DXDATA ends
DXSTACK segment para stack 'STACK'
DXSTACK ends
;
; This segment contains both real mode and protected mode code and
; resides in low memory.
DXCODE segment para public 'CODE'
DXCODE ends
;
; This segment contains protected mode code only, and is moved up
; into extended memory during the initialization process.
DXPMCODE segment para public 'PMCODE'
DXPMCODE ends
; -------------------------------------------------------
; GROUP DECLARATIONS
; -------------------------------------------------------
DGROUP group DXDATA, DXSTACK
; -------------------------------------------------------
; MS-DOS PROGRAM SEGMENT PREFIX DEFINITION
; -------------------------------------------------------
PSPSEG segment at 0
fnExit dw ? ;INT 20h instruction for termination linkage
segMemEnd dw ? ;segment address of end of program's memory
rsvd1 db ? ;undefined
fnDosFunc db 5 dup (?) ;far call to DOS function dispatcher
lpfnParent dd ? ;far pointer to parent program
lpfnInt23 dd ? ;previous contents of INT 23h vector (^C)
lpfnInt24 dd ? ;previous contents of INT 24h vector
segParentPSP dw ? ;segment address of parent PSP
bFileTable db 20 dup (?) ;process file table
segEnviron dw ? ;segment address of environment
lpStack dd ? ;application's SS:SP (updated on each dos call)
cbFileTable dw ? ;size of process file table
lpFileTable dd ? ;far pointer to process file table
org 5Ch
fcbDefault1 db 10h dup (?) ;default FCB 1
fcbDefault2 db 10h dup (?) ;default FCB 2
org 80h
cbCommand db ? ;lenght of command string
chCommand db 7Fh dup (?) ;command string
PSPSEG ends
; -------------------------------------------------------
; BIOS DATA SEGMENT DEFINITIONS
; -------------------------------------------------------
BIOS_DATA segment at 40h ;BIOS Data segment
org 67h
IO_ROM_INIT dw ? ;Shutdown code 0Ah will cause the
IO_ROM_SEG dw ? ; bios to return control to the far
; address stored here.
;Shutdown code 09h will cause the
; bios to load SS:SP from here and
; do an IRET.
INTR_FLAG db ?
org 72h
RESET_FLAG dw ? ;For Ctrl-Alt-Del
BIOS_DATA ends
; -------------------------------------------------------
;****************************************************************
|