blob: dbfbb6d5b3f2105cd3b0e84763dbad44eb8218be (
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
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
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
|
NAME ntvdm.exe
EXPORTS
#if defined(i386)
getEAX
getEBX
getECX
getEDX
getESP
getEBP
getESI
getEDI
getFS
getGS
setEAX
setEBX
setECX
setEDX
setESP
setEBP
setESI
setEDI
setFS
setGS
MGetVdmPointer = ExpSim32GetVDMPointer ; for 1.0 VDD compatibility
setMSW
getEIP
CurrentMonitorTeb DATA
ExpVdmTib = VdmTib DATA
SelectorLimit = ExpSelectorLimit DATA
#else // Risc platforms
c_getAX = getAX
c_getAL = getAL
c_getAH = getAH
c_getBX = getBX
c_getBL = getBL
c_getBH = getBH
c_getCX = getCX
c_getCL = getCL
c_getCH = getCH
c_getDX = getDX
c_getDL = getDL
c_getDH = getDH
c_getSP = getSP
c_getBP = getBP
c_getSI = getSI
c_getDI = getDI
c_getIP = getIP
c_getCS = getCS
c_getSS = getSS
c_getDS = getDS
c_getES = getES
c_getCF = getCF
c_getPF = getPF
c_getAF = getAF
c_getZF = getZF
c_getSF = getSF
c_getIF = getIF
c_getDF = getDF
c_getOF = getOF
c_setAX = setAX
c_setAH = setAH
c_setAL = setAL
c_setBX = setBX
c_setBH = setBH
c_setBL = setBL
c_setCX = setCX
c_setCH = setCH
c_setCL = setCL
c_setDX = setDX
c_setDH = setDH
c_setDL = setDL
c_setSP = setSP
c_setBP = setBP
c_setSI = setSI
c_setDI = setDI
c_setIP = setIP
c_setCS = setCS
c_setSS = setSS
c_setDS = setDS
c_setES = setES
c_setCF = setCF
c_setPF = setPF
c_setAF = setAF
c_setZF = setZF
c_setSF = setSF
c_setIF = setIF
c_setDF = setDF
c_setOF = setOF
c_setMSW = setMSW ; should be setMSW
Sim32SetVDMMemory
Sim32FlushVDMPointer
Sim32GetVDMPointer = ExpSim32GetVDMPointer ; for pr 1.0 compatibility
SetWOWforceIncrAlloc
#endif
getMSW
getAX
getAL
getAH
getBX
getBL
getBH
getCX
getCL
getCH
getDX
getDL
getDH
getSP
getBP
getSI
getDI
getIP
getCS
getSS
getDS
getES
getCF
getPF
getAF
getZF
getSF
getIF
getDF
getOF
setAX
setAH
setAL
setBX
setBH
setBL
setCX
setCH
setCL
setDX
setDH
setDL
setSP
setBP
setSI
setDI
setIP
setCS
setSS
setDS
setES
setCF
setPF
setAF
setZF
setSF
setIF
setDF
setOF
host_simulate
host_CreateThread
host_ExitThread
Sim32pGetVDMPointer ; for internal use
getIntelRegistersPointer
RegisterWOWIdle
BlockWOWIdle
SuspendTimerThread
ResumeTimerThread
call_ica_hw_interrupt = ica_hw_interrupt
GetWOWShortCutInfo
DispatchInterrupts
ExpLdt = Ldt DATA
FlatAddress DATA
pDeviceChain DATA
fSeparateWow DATA
host_com_close
host_direct_access_error
VDDInstallIOHook
VDDDeInstallIOHook
VDDRequestDMA
VDDSetDMA
VDDQueryDMA
VDDInstallMemoryHook
VDDDeInstallMemoryHook
VDDAllocMem
VDDFreeMem
VDDIncludeMem
VDDExcludeMem
VDDTerminateVDM
VDDInstallUserHook
VDDDeInstallUserHook
VDDSimulate16
VDDReserveIrqLine
VDDReleaseIrqLine
VDDAllocateDosHandle
VDDAssociateNtHandle
VDDReleaseDosHandle
VDDRetrieveNtHandle
DBGNotifyNewTask
DBGNotifyRemoteThreadAddress
DBGNotifyDebugged
cpu_createthread
WaitIfIdle
WOWSysErrorBox
SoftPcEoi
demFileFindFirst
demFileFindNext
demClientErrorEx
#ifdef CPU_40_STYLE
VdmAllocateVirtualMemory
VdmFreeVirtualMemory
VdmQueryFreeVirtualMemory
VdmReallocateVirtualMemory
VdmAddVirtualMemory
VdmRemoveVirtualMemory
#endif
#ifndef i386
VdmAddDescriptorMapping
#endif
|