2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
[reactos.git] / reactos / ChangeLog
1 2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
2
3 * tools/rgenstat/rgenstat.c (process_directory): Fix building on Windows.
4
5 2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
6
7 * tools/rgenstat/rgenstat.c (API_INFO): Add filename field.
8 (path_to_url, get_filename): New functions.
9 (parse_file, process_directory): Build cvs path.
10 (generate_xml_for_component): Set file attribute on a function.
11 * tools/rgenstat/web/rapistatus.css (.h): New class.
12 * tools/rgenstat/web/rapistatus.js (clickHandler): Go to the file in
13 ViewCVS on click on a function.
14 * tools/rgenstat/web/rapistatus.xsl: Handle file attribute.
15
16 2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
17
18 * subsys/win32k/objects/region.c (W32kFillRgn): Fix syntax error.
19
20 2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
21
22 * tools/rgenstat/rgenstat.c (get_previous_identifier): Skip end-of-line
23 characters when searching for identifier.
24 (parse_file): Print a warning if no identifier is found.
25
26 2003-07-10 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
27
28 * subsys/win32k/objects/region.c: (W32kFillRgn) Implement.
29
30 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
31
32 * lib/winspool/stubs.c: Add @implemented and @unimplemented to APIs.
33
34 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
35
36 * lib/wsock32/stubs.c: Add @implemented and @unimplemented to APIs.
37
38 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
39
40 * lib/ws2_32/misc/bsd.c: Add @implemented and @unimplemented to APIs.
41 * lib/ws2_32/misc/dllmain.c: Ditto.
42 * lib/ws2_32/misc/event.c: Ditto.
43 * lib/ws2_32/misc/ns.c: Ditto.
44 * lib/ws2_32/misc/sndrcv.c: Ditto.
45 * lib/ws2_32/misc/stubs.c: Ditto.
46 * lib/ws2_32/misc/upcall.c: Ditto.
47
48 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
49
50 * drivers/dd/videoprt/videoprt.c: Add @implemented and @unimplemented
51 to APIs.
52
53 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
54
55 * lib/version/misc/stubs.c: Add @implemented and @unimplemented to APIs.
56
57 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
58
59 * lib/user32/misc/dde.c: Add @implemented and @unimplemented to APIs.
60 * lib/user32/misc/desktop.c: Ditto.
61 * lib/user32/misc/display.c: Ditto.
62 * lib/user32/misc/exit.c: Ditto.
63 * lib/user32/misc/object.c: Ditto.
64 * lib/user32/misc/resources.c: Ditto.
65 * lib/user32/misc/sprintf.c: Ditto.
66 * lib/user32/misc/stubs.c: Ditto.
67 * lib/user32/misc/timer.c: Ditto.
68 * lib/user32/misc/winhelp.c: Ditto.
69 * lib/user32/misc/winsta.c: Ditto.
70 * lib/user32/windows/accel.c: Ditto.
71 * lib/user32/windows/bitmap.c: Ditto.
72 * lib/user32/windows/class.c: Ditto.
73 * lib/user32/windows/clipboard.c: Ditto.
74 * lib/user32/windows/cursor.c: Ditto.
75 * lib/user32/windows/dc.c: Ditto.
76 * lib/user32/windows/defwnd.c: Ditto.
77 * lib/user32/windows/dialog.c: Ditto.
78 * lib/user32/windows/draw.c: Ditto.
79 * lib/user32/windows/font.c: Ditto.
80 * lib/user32/windows/hook.c: Ditto.
81 * lib/user32/windows/icon.c: Ditto.
82 * lib/user32/windows/input.c: Ditto.
83 * lib/user32/windows/mdi.c: Ditto.
84 * lib/user32/windows/menu.c: Ditto.
85 * lib/user32/windows/message.c: Ditto.
86 * lib/user32/windows/messagebox.c: Ditto.
87 * lib/user32/windows/nonclient.c: Ditto.
88 * lib/user32/windows/paint.c: Ditto.
89 * lib/user32/windows/prop.c: Ditto.
90 * lib/user32/windows/rect.c: Ditto.
91 * lib/user32/windows/text.c: Ditto.
92 * lib/user32/windows/window.c: Ditto.
93
94 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
95
96 * drivers/net/tdi/cte/string.c: Add @implemented and @unimplemented to
97 APIs.
98 * drivers/net/tdi/cte/stubs.c: Ditto.
99 * drivers/net/tdi/tdi/dereg.c: Ditto.
100 * drivers/net/tdi/tdi/handler.c: Ditto.
101 * drivers/net/tdi/tdi/obsolete.c: Ditto.
102 * drivers/net/tdi/tdi/stubs.c: Ditto.
103
104 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
105
106 * lib/snmpapi/snmpapi.c: Add @implemented and @unimplemented to APIs.
107
108 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
109
110 * lib/secur32/lsa.c: Add @implemented and @unimplemented to APIs.
111
112 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
113
114 * drivers/storage/scsiport/scsiport.c: Add @implemented and
115 @unimplemented to APIs.
116
117 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
118
119 * drivers/net/ndis/ndis/40gone.c: Add @implemented and @unimplemented
120 to APIs.
121 * drivers/net/ndis/ndis/50gone.c: Ditto.
122 * drivers/net/ndis/ndis/buffer.c: Ditto.
123 * drivers/net/ndis/ndis/cl.c: Ditto.
124 * drivers/net/ndis/ndis/cm.c: Ditto.
125 * drivers/net/ndis/ndis/co.c: Ditto.
126 * drivers/net/ndis/ndis/control.c: Ditto.
127 * drivers/net/ndis/ndis/hardware.c: Ditto.
128 * drivers/net/ndis/ndis/io.c: Ditto.
129 * drivers/net/ndis/ndis/memory.c: Ditto.
130 * drivers/net/ndis/ndis/miniport.c: Ditto.
131 * drivers/net/ndis/ndis/protocol.c: Ditto.
132 * drivers/net/ndis/ndis/string.c: Ditto.
133 * drivers/net/ndis/ndis/stubs.c: Ditto.
134 * drivers/net/ndis/ndis/time.c: Ditto.
135
136 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
137
138 * lib/kernel32/debug/break.c: Add @implemented and @unimplemented
139 to APIs.
140 * lib/kernel32/debug/debugger.c: Ditto.
141 * lib/kernel32/debug/output.c: Ditto.
142 * lib/kernel32/except/except.c: Ditto.
143 * lib/kernel32/file/backup.c: Ditto.
144 * lib/kernel32/file/cnotify.c: Ditto.
145 * lib/kernel32/file/copy.c: Ditto.
146 * lib/kernel32/file/create.c: Ditto.
147 * lib/kernel32/file/curdir.c: Ditto.
148 * lib/kernel32/file/delete.c: Ditto.
149 * lib/kernel32/file/deviceio.c: Ditto.
150 * lib/kernel32/file/dir.c: Ditto.
151 * lib/kernel32/file/dosdev.c: Ditto.
152 * lib/kernel32/file/file.c: Ditto.
153 * lib/kernel32/file/find.c: Ditto.
154 * lib/kernel32/file/iocompl.c: Ditto.
155 * lib/kernel32/file/lfile.c: Ditto.
156 * lib/kernel32/file/lock.c: Ditto.
157 * lib/kernel32/file/mailslot.c: Ditto.
158 * lib/kernel32/file/move.c: Ditto.
159 * lib/kernel32/file/npipe.c: Ditto.
160 * lib/kernel32/file/pipe.c: Ditto.
161 * lib/kernel32/file/rw.c: Ditto.
162 * lib/kernel32/file/tape.c: Ditto.
163 * lib/kernel32/file/volume.c: Ditto.
164 * lib/kernel32/mem/global.c: Ditto.
165 * lib/kernel32/mem/heap.c: Ditto.
166 * lib/kernel32/mem/isbad.c: Ditto.
167 * lib/kernel32/mem/local.c: Ditto.
168 * lib/kernel32/mem/procmem.c: Ditto.
169 * lib/kernel32/mem/section.c: Ditto.
170 * lib/kernel32/mem/virtual.c: Ditto.
171 * lib/kernel32/misc/atom.c: Ditto.
172 * lib/kernel32/misc/comm.c: Ditto.
173 * lib/kernel32/misc/computername.c: Ditto.
174 * lib/kernel32/misc/console.c: Ditto.
175 * lib/kernel32/misc/env.c: Ditto.
176 * lib/kernel32/misc/error.c: Ditto.
177 * lib/kernel32/misc/errormsg.c: Ditto.
178 * lib/kernel32/misc/handle.c: Ditto.
179 * lib/kernel32/misc/ldr.c: Ditto.
180 * lib/kernel32/misc/mbchars.c: Ditto.
181 * lib/kernel32/misc/muldiv.c: Ditto.
182 * lib/kernel32/misc/perfcnt.c: Ditto.
183 * lib/kernel32/misc/profile.c: Ditto.
184 * lib/kernel32/misc/res.c: Ditto.
185 * lib/kernel32/misc/stubs.c: Ditto.
186 * lib/kernel32/misc/sysinfo.c: Ditto.
187 * lib/kernel32/misc/time.c: Ditto.
188 * lib/kernel32/misc/toolhelp.c: Ditto.
189 * lib/kernel32/process/cmdline.c: Ditto.
190 * lib/kernel32/process/create.c: Ditto.
191 * lib/kernel32/process/proc.c: Ditto.
192 * lib/kernel32/process/session.c: Ditto.
193 * lib/kernel32/string/lstring.c: Ditto.
194 * lib/kernel32/synch/critical.c: Ditto.
195 * lib/kernel32/synch/event.c: Ditto.
196 * lib/kernel32/synch/intrlck.c: Ditto.
197 * lib/kernel32/synch/mutex.c: Ditto.
198 * lib/kernel32/synch/sem.c: Ditto.
199 * lib/kernel32/synch/timer.c: Ditto.
200 * lib/kernel32/synch/wait.c: Ditto.
201 * lib/kernel32/thread/fiber.c: Ditto.
202 * lib/kernel32/thread/fls.c: Ditto.
203 * lib/kernel32/thread/thread.c: Ditto.
204 * lib/kernel32/thread/tls.c: Ditto.
205
206 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
207
208 * lib/iphlpapi/iphlpapi.c: Add @implemented and @unimplemented
209 to APIs.
210
211 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
212
213 * lib/gdi32/main/dllmain.c: Add @implemented and @unimplemented
214 to APIs.
215 * lib/gdi32/misc/stubs.c: Ditto.
216 * lib/gdi32/misc/stubsa.c: Ditto.
217 * lib/gdi32/misc/stubsw.c: Ditto.
218 * lib/gdi32/objects/bitblt.c: Ditto.
219 * lib/gdi32/objects/brush.c: Ditto.
220 * lib/gdi32/objects/clip.c: Ditto.
221 * lib/gdi32/objects/dc.c: Ditto.
222 * lib/gdi32/objects/fillshap.c: Ditto.
223 * lib/gdi32/objects/line.c: Ditto.
224 * lib/gdi32/objects/pen.c: Ditto.
225 * lib/gdi32/objects/region.c: Ditto.
226 * lib/gdi32/objects/text.c: Ditto.
227
228 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
229
230 * drivers/storage/class2/class2.c: Add @implemented and @unimplemented
231 to APIs.
232
233 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
234
235 * lib/advapi32/misc/shutdown.c: Add @implemented and @unimplemented
236 to APIs.
237 * lib/advapi32/misc/stubs.c: Ditto.
238 * lib/advapi32/misc/sysfunc.c: Ditto.
239 * lib/advapi32/reg/reg.c: Ditto.
240 * lib/advapi32/sec/ac.c: Ditto.
241 * lib/advapi32/sec/misc.c: Ditto.
242 * lib/advapi32/sec/sec.c: Ditto.
243 * lib/advapi32/sec/sid.c: Ditto.
244 * lib/advapi32/service/scm.c: Ditto.
245 * lib/advapi32/service/sctrl.c: Ditto.
246 * lib/advapi32/token/privilege.c: Ditto.
247 * lib/advapi32/token/token.c: Ditto.
248
249 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
250
251 * tools/rgenstat/rgenstat.c (parse_file): Be silent.
252
253 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
254
255 * rules.mak (XSLTPROC): Add.
256 * tools/Makefile: Add rgenstat.
257 * apistatus.lst: New file.
258 * tools/rgenstat: New directory.
259 * tools/rgenstat/.cvsignore: New file.
260 * tools/rgenstat/llmosrt.c: Ditto.
261 * tools/rgenstat/Makefile: Ditto.
262 * tools/rgenstat/rgenstat.c: Ditto.
263 * tools/rgenstat/web: New directory.
264 * tools/rgenstat/web/*.gif: New files.
265 * tools/rgenstat/web/.cvsignore: New file.
266 * tools/rgenstat/web/rapistatus.css: Ditto.
267 * tools/rgenstat/web/rapistatus.js: Ditto.
268 * tools/rgenstat/web/rapistatus.xsl: Ditto.
269
270 2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
271
272 * drivers/fs/vfat/misc.c (VfatLockControl): Move it so it is placed
273 before it is referenced.
274 * include/win32k/ntuser.h (NtUserQueryWindow): Correct prototype.
275 * lib/winedbgc/debug.c (default_dbg_vlog): Use wine_dbg_vprintf, not
276 __wine_dbg_vprintf.
277 * ntoskrnl/nt/vdm.c (NtEarlyInitVdm): Work around GCC 3.4 trying to be
278 smart.
279
280 2003-07-07 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
281
282 * subsys/win32k/ntuser/window.c: (NtUserQueryWindow) Implement.
283 * include/win32k/ntuser.h: Ditto.
284 * lib/user32/windows/window.c: (GetWindowThreadProcessId) Implement.
285
286 2003-07-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
287
288 * lib/user32/windows/defwnd.c (DefWndHandleLButtonUpNC,
289 User32DefWindowProc): Only send WM_SYSCOMMAND message, not WM_CLOSE.
290 (DefWndHandleSysCommand): Handle SC_CLOSE message.
291
292 2003-07-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
293
294 * include/win32k/ntuser.h (NtUserSetFocus): Correct prototype.
295 * lib/user32/misc/stubs.c (SetFocus): Remove.
296 * lib/user32/windows/defwnd.c (KEYDATA_ALT): New.
297 (User32DefWindowProc): Handle WM_SYSKEYDOWN.
298 * lib/user32/windows/input.c (SetFocus): New.
299 * subsys/win32k/include/msgqueue.h (USER_MESSAGE_QUEUE): Document
300 FocusWindow field.
301 * subsys/win32k/include/window.h (W32kSetFocusWindow): Change return type
302 to HWND.
303 * subsys/win32k/include/winsta.h (W32kGetFocusMessageQueue): New.
304 * subsys/win32k/ntuser/input.c (KeyboardThreadMain): Handle system keys.
305 * subsys/win32k/ntuser/keyboard.c (NtUserSetFocus): New.
306 * subsys/win32k/ntuser/msgqueue.c (MsqPostKeyboardMessage): Implement.
307 * subsys/win32k/ntuser/stubs.c (NtUserSetFocus): Remove.
308 * subsys/win32k/ntuser/window.c (W32kSetFocusWindow): Implement.
309 (NtUserGetClientRect, W32kGetWindowProc, NtUserCreateWindowEx): Release
310 window reference on error.
311 (W32kDestroyWindow): Remove focus from window tree before destroying it
312 if needed.
313 * subsys/win32k/ntuser/winpos.c (WinPosChangeActiveWindow): Implement.
314 (WinPosShowWindow): Activate window if needed.
315 * subsys/win32k/ntuser/winsta.c (W32kGetFocusMessageQueue): New.
316
317 2003-06-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
318
319 * lib/user32/controls/button.c (ButtonWndProc_common): Fix unsigned/signed
320 warning.
321
322 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
323
324 * include/ddk/dbgfuncs.h: Move ...
325 * include/ntos/dbgfuncs.h: ... here.
326 * include/basetsd.h (LONG32): Make it a long.
327 * include/ntos.h: Include ntos/dbgfuncs.h.
328 * include/ddk/dbgfuncs.h (DBG_STATUS_*, DBG_GET_SHOW_*): Move to
329 include/ntos/dbgfuncs.h.
330 * include/ddk/exfuncs.h (ExNotifyCallback): Match w32api prototype.
331 (*BinaryTree, *SplayTree, *HashTable): Move to include/ntos/zw.h.
332 * include/ddk/extypes.h (TRAVERSE_METHOD, PKEY_COMPARATOR,
333 PTRAVERSE_ROUTINE, _BINARY_TREE_NODE, BINARY_TREE, SPLAY_TREE_NODE,
334 SPLAY_TREE, HASH_TABLE): Move to include/ntos/zwtypes.h.
335 * include/ddk/status.h (STATUS_PATH_SYNTAX_BAD): Rename to
336 STATUS_OBJECT_PATH_SYNTAX_BAD.
337 * apps/utils/objdir/objdir.c (StatusToName): Change
338 STATUS_PATH_SYNTAX_BAD to STATUS_OBJECT_PATH_SYNTAX_BAD.
339 * ntoskrnl/dbg/errinfo.c: Use STATUS_OBJECT_PATH_SYNTAX_BAD.
340 * include/ntos/rtl.h (RtlQueryRegistryValues, RtlWriteRegistryValue,
341 RtlDeleteRegistryValue): Match w32api prototypes.
342 * include/ntos/zw.h (ZwQuerySystemTime): Ditto.
343 * lib/kernel32/file/cnotify.c (FindFirstChangeNotificationW): Use
344 STATUS_OBJECT_PATH_SYNTAX_BAD.
345 * lib/ntdll/rtl/registry.c (RtlDeleteRegistryValue,
346 RtlQueryRegistryValues, RtlWriteRegistryValue): Match w32api prototypes.
347 * ntoskrnl/cm/cm.h, ntoskrnl/cm/ntfunc.c, ntoskrnl/cm/regfile.c: Change
348 FILETIME to LARGE_INTEGER.
349 * ntoskrnl/cm/rtlfunc.c (RtlDeleteRegistryValue, RtlQueryRegistryValues,
350 RtlWriteRegistryValue): Match w32api prototypes.
351 * ntoskrnl/ex/callback.c (ExNotifyCallback): Ditto.
352 * ntoskrnl/ex/time.c (NtQuerySystemTime): Ditto.
353
354 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
355
356 * hal/halx86/dma.c (AdapterObjects): Don't put braces on scalar
357 initializers.
358
359 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
360
361 Changes for compiling with w32api
362
363 * include/ddk/obfuncs.h (ObCreateObject): Remove.
364 * include/ntos/zwtypes.h (ObRosCreateObject): Add.
365 * ntoskrnl/ntoskrnl.def, ntoskrnl/ntoskrnl.edf: Export ObCreateObject@36
366 and ObRosCreateObject@20.
367 * ntoskrnl/cm/ntfunc.c, ntoskrnl/cm/registry.c, ntoskrnl/cm/regobj.c,
368 ntoskrnl/io/create.c, ntoskrnl/io/device.c, ntoskrnl/io/iocomp.c,
369 ntoskrnl/lpc/connect.c, ntoskrnl/lpc/create.c, ntoskrnl/mm/section.c,
370 ntoskrnl/nt/evtpair.c, ntoskrnl/nt/mutant.c, ntoskrnl/nt/ntevent.c,
371 ntoskrnl/nt/ntsem.c, ntoskrnl/nt/nttimer.c, ntoskrnl/nt/profile.c,
372 ntoskrnl/ob/dirobj.c, ntoskrnl/ob/namespc.c, ntoskrnl/ob/symlink.c,
373 ntoskrnl/ps/create.c, ntoskrnl/ps/process.c, ntoskrnl/se/token.c,
374 subsys/win32k/ntuser/winsta.c: Use ObRosCreateObject, not ObCreateObject.
375 * ntoskrnl/ob/object.c (ObRosCreateObject): Rename from ObCreateObject.
376 (ObCreateObject): Add stub.
377
378 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
379
380 Changes for compiling with w32api
381
382 * include/ddk/cctypes.h (PREACTOS_COMMON_FCB_HEADER): Remove.
383 (FSRTL_COMMON_FCB_HEADER): Add.
384 * include/ddk/iotypes.h (FILE_OBJECT): Rename field
385 SectionObjectPointers to SectionObjectPointer.
386 * ntoskrnl/cc/copy.c, ntoskrnl/cc/misc.c, ntoskrnl/cc/pin.c,
387 ntoskrnl/cc/view.c, ntoskrnl/io/rawfs.c, ntoskrnl/mm/section.c,
388 drivers/fs/cdfs/cleanup.c, drivers/fs/cdfs/fcb.c,
389 drivers/fs/cdfs/fsctl.c, drivers/fs/ntfs/fcb.c, drivers/fs/ntfs/fsctl.c,
390 drivers/fs/vfat/close.c, drivers/fs/vfat/create.c,
391 drivers/fs/vfat/finfo.c, drivers/fs/vfat/fcb.c, drivers/fs/vfat/fsctl.c:
392 Use new FILE_OBJECT structure.
393 * drivers/fs/cdfs/cdfs.h, drivers/fs/ntfs/ntfs.h, drivers/fs/vfat/vfat.h:
394 Use new FSRTL_COMMON_FCB_HEADER structure.
395 * drivers/net/afd/include/afd.h (FSRTL_COMMON_FCB_HEADER): Remove.
396 * include/ddk/ketypes.h (KQUEUE): Match w32api structure.
397 * ntoskrnl/ke/queue.c, ntoskrnl/ke/wait.c: Use new structure.
398 * ntoskrnl/ke/spinlock.c (KeAcquireSpinLockAtDpcLevel,
399 KeReleaseSpinLockFromDpcLevel): Undefine before declaring.
400
401 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
402
403 Changes for compiling with w32api
404
405 * include/ddk/ketypes.h (KSPIN_LOCK, PKSPIN_LOCK): Match w32api
406 structures.
407 * ntoskrnl/ke/spinlock.c: Use new structures.
408
409 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
410
411 Changes for compiling with w32api
412
413 * include/ddk/service.h: Move ...
414 * include/ntos/service.h: ... here.
415 * include/ddk/kdfuncs.h: Move ...
416 * include/ntos/kdfuncs.h: ... here.
417 * include/ntos/halfuncs.h: New file.
418 * ntoskrnl/include/internal/hal/hal.h,
419 ntoskrnl/include/internal/hal/bus.h,
420 ntoskrnl/include/internal/hal/mps.h: Remove.
421 * hal/halx86/include/hal.h: Remove disabled code.
422 * include/ntos.h: Include ntos/service.h, ntos/halfuncs.h, and
423 ntos/kdfuncs.h.
424 * include/ddk/fstypes.h (FILE_LOCK_TOC): Move ...
425 * include/ntos/file.h: ... here.
426 * include/ddk/halfuncs.h (HalAllProcessorsStarted,
427 HalBeginSystemInterrupt, HalDisableSystemInterrupt,
428 HalEnableSystemInterrupt, HalEndSystemInterrupt,
429 HalInitializeProcessor, HalInitSystem, HalReportResourceUsage): Move to
430 include/ntos/halfuncs.h.
431 * include/ddk/iofuncs.h (IoAssignDriveLetters): Ditto.
432 * include/ddk/kefuncs.h (KeInitializeApc): Match w32api prototype.
433 (KeRaiseIrqlToSynchLevel): Move to include/ntos/halfuncs.h.
434 * include/ddk/ketypes.h (KAPC_ENVIRONMENT): Move to include/ntos/types.h.
435 (KDEVICE_QUEUE, KDEVICE_QUEUE_ENTRY): Match w32api prototype.
436 (KINTERRUPT): Move to include/ntos/zwtypes.h.
437 * include/ddk/mmtypes.h (PAGE_ROUND_UP, PAGE_ROUND_DOWN): Move ...
438 * include/ntos/mm.h: ... here.
439 * include/ddk/ntddk.h: Don't include ddk/kdfuncs.h.
440 * include/ddk/pstypes.h (PKTHREAD, PRKTHREAD): Add.
441 (PsInitialSystemProcess, PsProcessType, PsThreadType): Move ...
442 include/ntos/ps.h: ... here.
443 * lib/ntdll/rtl/i386/exception.c (SehpContinue): New.
444 * ntoskrnl/rtl/i386/exception.c (SehpContinue): Ditto.
445 * ntoskrnl/include/internal/ke.h: Include <ddk/ntifs.h>.
446 * ntoskrnl/include/internal/ntoskrnl.h: Include internal/ke.h.
447 * ntoskrnl/ex/napi.c: Use new structure SSDT_ENTRY.
448 * ntoskrnl/ke/apc.c (KeInitializeApc): Match w32api prototype.
449 * ntoskrnl/ke/kqueue.c: Use fields of new structures KDEVICE_QUEUE
450 and KDEVICE_QUEUE_ENTRY.
451
452 2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
453
454 * ntoskrnl/cm/regfile.c (CmiCopyKey): Fix unsigned/signed warning.
455
456 2003-06-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
457
458 * lib/user32/windows/icon.c (CURSORICON_FindBestCursor,
459 CURSORICON_FindBestIcon): Fix unsigned/signed warning.
460
461 2003-06-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
462
463 Changes for compiling with w32api
464
465 * ntoskrnl/include/internal/i386/ps.h (KPCR_TSS): Redefine as 0x3C.
466 (KPCR_TIB): New structure.
467 (IKPCR): Ditto.
468 (KPCR): Match w32api structure fieldnames.
469 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Adjust for changes to KPCR.
470 * ntoskrnl/ke/i386/kernel.c: Ditto.
471 * ntoskrnl/ps/thread.c: Ditto.
472
473 2003-06-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
474
475 Changes for compiling with w32api
476
477 * include/ntos/zwtypes.h (SYSTEM_MODULES): Rename to
478 SYSTEM_MODULE_INFORMATION. Match w32api structure fieldnames.
479 (SYSTEM_MODULE_INFORMATION): Rename to SYSTEM_MODULE_INFORMATION_ENTRY.
480 Match w32api structure fieldnames.
481 * include/epsapi.h: Include <ntos.h>.
482 (PSYSMOD_ENUM_ROUTINE, PsaCaptureSystemModules, PsaWalkSystemModules,
483 PsaWalkFirstSystemModule, PsaWalkNextSystemModule): Use
484 SYSTEM_MODULE_INFORMATION_ENTRY and SYSTEM_MODULE_INFORMATION structures.
485 * lib/epsapi/enum/drivers.c: Use SYSTEM_MODULE_INFORMATION_ENTRY and
486 SYSTEM_MODULE_INFORMATION structures.
487 * lib/psapi/misc/win32.c: Ditto.
488 * ntoskrnl/ldr/loader.c: Ditto.
489 * lib/epsapi/enum/modules.c: Include <ntos.h>.
490 * lib/ntdll/rtl/thread.c: Ditto.
491 * lib/rosrtl/thread/context.c: Ditto.
492 * lib/rosrtl/thread/create.c: Ditto.
493 * lib/rosrtl/thread/stack.c: Ditto.
494 * include/ntos.h: Include "rosrtl/thread.h".
495 * include/structs.h (_BLOB_DEFINED): Rename to __BLOB_T_DEFINED.
496 * include/winsock2.h: Ditto.
497 * include/ntos/obtypes.h (POBJECT_TYPE): Make a pointer to struct
498 _OBJECT_TYPE.
499 (PHANDLE_TABLE): Make a pointer to struct _HANDLE_TABLE.
500 * ntoskrnl/include/internal/mm.h (PSECTION_OBJECT): Make a pointer to
501 struct _SECTION_OBJECT.
502 * ntoskrnl/include/internal/i386/ps.h (PKPCR): Make a pointer to struct
503 _KPCR.
504
505 2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
506
507 * Makefile: Update bootcd target.
508
509 2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
510
511 * subsys/system/usetup/progress.c (ProgressNextStep): Check if NewPos
512 is odd.
513
514 2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
515
516 Changes for compiling with w32api
517
518 * include/ddk/haltypes.h: Move ...
519 * include/ntos/haltypes.h: ... here.
520 * include/ddk/obtypes.h: Move ...
521 * include/ntos/obtypes.h: ... here.
522 * include/ddk/i386/tss.h: Move ...
523 * include/ntos/tss.h: ... here.
524 * include/errors.h, include/windows.h: #include_next <windows.h>.
525 * include/ntos.h: Include "ntos/haltypes.h", "ntos/obtypes.h", and
526 "ntos/tss.h".
527 * include/ddk/defines.h (EXPORTED, IMPORTED): Move to
528 include/ntos/types.h.
529 * include/ddk/exfuncs.h, include/ddk/mmtypes.h, include/ntos/except.h,
530 include/ntos/file.h, include/ole32/guiddef.h, include/win32k/color.h,
531 lib/msafd/include/debug.h, lib/user32/include/debug.h,
532 lib/ws2_32/include/debug.h, lib/ws2help/debug.h,
533 ntoskrnl/include/internal/debug.h, ntoskrnl/ke/i386/bthread.S,
534 ntoskrnl/rtl/error.c: Don't define macros if previously defined.
535 * include/ddk/halfuncs.h: Include <ntos/haltypes.h>.
536 * include/ddk/iotypes.h: Include <ntos/obtypes.h>.
537 * include/ddk/ketypes.h (MB_FLAGS_*, LOADER_MODULE, ADDRESS_RANGE,
538 LOADER_PARAMETER_BLOCK): Move to include/ntos/types.h.
539 * include/ddk/ntddk.h: #include_next <ddk/ntddk.h>.
540 * include/ddk/ntifs.h: #include_next <ddk/ntifs.h>.
541 * include/napi/shared_data.h (SharedUserData): Undefine before defining.
542 * include/ntos/rtl.h (RtlUpcaseUnicodeString): Correct prototype.
543 * include/ntos/zwtypes.h (THREAD_STATE): Add.
544 * lib/ntdll/rtl/unicode.c (RtlUpcaseUnicodeString): Match new prototype.
545 * ntoskrnl/rtl/unicode.c (RtlUpcaseUnicodeString): Ditto.
546 * lib/string/Makefile: Include Makefile.$(ARCH). Don't include
547 makefile.$(ARCH).
548 * ntoskrnl/ex/sysinfo.c, ntoskrnl/include/internal/ntoskrnl.h,
549 * ntoskrnl/include/internal/ob.h, ntoskrnl/ob/handle.c: Include <ntos.h>.
550 * ntoskrnl/ke/i386/syscall.S: Don't include <ddk/defines.h>.
551 (KernelMode, UserMode): Define.
552 * ntoskrnl/ke/i386/stkswitch.S, ntoskrnl/ke/i386/tskswitch.S,
553 ntoskrnl/ke/i386/v86m_sup.S: Include <ntos/tss.h>
554
555 2003-05-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
556
557 * Makefile: Fix typo.
558
559 2003-05-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
560
561 * Makefile: Don't install system.hiv. Install fonts and nls directory.
562 * tools/rcopy.c (copy_file, copy_directory, is_directory): New functions.
563
564 2003-05-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
565
566 * ntoskrnl/io/irp.c (IofCallDriver): Don't reference FileObject.
567
568 2003-05-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
569
570 * ntoskrnl/io/cleanup.c (IopCompleteRequest1, IoSecondStageCompletion):
571 Don't dereference Irp->UserEvent here.
572 * ntoskrnl/io/irp.c (IofCallDriver): Reference FileObject.
573 * ntoskrnl/io/rw.c (IopReadWriteIoComplete): New function.
574 * (NtReadFile, NtWriteFile): Set I/O completion routine if using an
575 event that is under object manager control.
576
577 2003-05-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
578
579 * ntoskrnl/Makefile (OBJECTS_IO): Add io/rawfs.o.
580 * ntoskrnl/cm/registry.c (CmiInitHives): Check status using NT_SUCCESS().
581 * ntoskrnl/include/internal/io.h (RawFsIsRawFileSystemDeviceObject,
582 RawFsDriverEntry): Add prototypes.
583 * ntoskrnl/include/internal/ntoskrnl.h (IoInit2): Add prototype.
584 * ntoskrnl/io/device.c (IopCreateDriverObject): Handle unnamed services.
585 * ntoskrnl/io/fs.c (IoMountVolume): Handle mounting of raw volumes.
586 (IoRegisterFileSystem): Add registered filesystem device objects at the
587 head of the list.
588 * ntoskrnl/io/iomgr.c (IoInit2): New function.
589 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Call IoInit2().
590 * ntoskrnl/mm/section.c (MmQuerySectionView): Check return value of call
591 to MmFindRegion().
592 * ntoskrnl/io/rawfs.c: New file.
593
594 2003-05-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
595
596 * lib/fslib/vfatlib/vfatlib.c (VfatFormat): Set hidden sectors.
597 * ntoskrnl/io/xhaldrv.c (xHalIoWritePartitionTable): Implement support
598 for primary partitions.
599 * subsys/system/usetup/partlist.c (CreateSelectedPartition): Compute
600 hidden sectors.
601 * subsys/system/usetup/usetup.c (SelectPartitionPage,
602 DrawFileSystemList, FormatPartitionPage): Don't use conditional define
603 ENABLE_FORMAT.
604 (CreateFileSystemList): Don't draw "Keep current file system" option if
605 formatting is needed.
606 (SelectFileSystemPage): Figure out if partition must be formatted.
607 * subsys/system/usetup/usetup.h (ENABLE_FORMAT): Remove.
608 (FILE_SYSTEM_LIST): Add ForceFormat field.
609
610 2003-05-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
611
612 * lib/user32/windows/font.c (TEXT_PathEllipsify, TEXT_Reprefix): Fix
613 unsigned/signed warning.
614 * ntoskrnl/mm/pagefile.c (MmWriteToSwapPage, MmReadFromSwapPage,
615 NtCreatePagingFile): Ditto.
616
617 2003-05-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
618
619 * tools/helper.mk: Kill implicit rule ".o".
620
621 2003-04-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
622
623 * Makefile (DLLS): Add epsapi, psapi and wsock32.
624 * lib/ntdll/ldr/utils.c (LdrPerformRelocations): Handle the case where a
625 relocation crosses a page boundary.
626 (LdrFixupImports): Use image load address in calculatation of import
627 address list.
628
629 2003-04-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
630
631 * lib/fslib/vfatlib/vfatlib.h: New file.
632 * subsys/system/usetup/format.c: Ditto.
633 * subsys/system/usetup/format.h: Ditto.
634 * lib/fslib/vfatlib/vfatlib.c (GetShiftCount): Define.
635 (VfatWriteBootSector, VfatWriteFsInfo, VfatWriteFAT,
636 VfatWriteRootDirectory): New function.
637 (VfatFormat): Implement.
638 * subsys/system/usetup/bootsup.c: (InstallFat32BootCodeToFile): Use
639 0x0000 as marker to disable backup boot sector.
640 (InstallFat32BootCodeToDisk): Add lower 8-bit to BackupBootSector.
641 Also treat 0x0000 as no backup boot sector is available.
642 * subsys/system/usetup/makefile (TARGET_SDKLIBS): Define.
643 (TARGET_OBJECTS): Add format.o.
644 * subsys/system/usetup/partlist.c (AddPartitionList): Initialize
645 PartNumber field.
646 (GetSelectedPartition): Set PartEntryNumber correctly.
647 (CreateSelectedPartition): Write partition information to disk.
648 (DeleteSelectedPartition): New function.
649 * subsys/system/usetup/partlist.h (PARTDATA): Add field CreatePartition.
650 (DeleteSelectedPartition): Prototype.
651 * subsys/system/usetup/usetup.c (ConfirmDeletePartition): New function.
652 (SelectPartitionPage): Support deletion of partition.
653 (FormatPartitionPage): Support formatting of partition.
654
655 2003-04-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
656
657 * tools/helper.mk (TARGET_ASFLAGS): Add -march and define MK_ARCH_ID.
658 * lib/ntdll/makefile (TARGET_ASFLAGS): Define as
659 "-I $(PATH_TO_TOP)/include".
660 (TARGET_OBJECTS): Add ldr/entry.o.
661 * lib/ntdll/ldr/startup.c: Move inline assembly code...
662 * lib/ntdll/ldr/entry.S: ...here. New file.
663
664 2003-04-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
665
666 * include/kernel32/kernel32.h (assert): Define.
667 * tools/mkhive/.cvsignore: New file.
668
669 2003-04-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
670
671 * subsys/system/usetup/partlist.c (AddPartitionList): Create
672 unpartitioned areas.
673 (CreatePartitionListNoGUI): Save disk geometry.
674 (PrintDiskData): Do not print hidden partition list entries.
675 (ScrollDownPartitionList, ScrollUpPartitionList): Skip hidden partition
676 list entries.
677 (GetActiveBootPartition): Use CurrentDisk as index.
678 (CreateSelectedPartition): New function.
679 * subsys/system/usetup/partlist.h (PARTDATA): Add field NewPartSize.
680 (PARTENTRY): Add fields StartingOffset and HidePartEntry.
681 (DISKENTRY): Add fields Cylinders, TracksPerCylinder, SectorsPerTrack,
682 and BytesPerSector;
683 (CreateSelectedPartition): Add Prototype.
684 * subsys/system/usetup/usetup.c (PAGE_NUMBER): Add CREATE_PARTITION_PAGE
685 and FORMAT_PARTITION_PAGE
686 (CurrentPartitionList, CurrentFileSystemList): New globals.
687 (SelectPartitionPage): Set CurrentPartitionList.
688 (PARTITION_SIZE_INPUT_FIELD_LENGTH): Define as 6.
689 (DrawInputField, ShowPartitionSizeInputBox, CreatePartitionPage,
690 CreateFileSystemList, DestroyFileSystemList, DrawFileSystemList,
691 ScrollDownFileSystemList, ScrollUpFileSystemList, FormatPartitionPage):
692 New functions.
693 (SelectFileSystemPage): Draw partition screen.
694 (CheckFileSystemPage): Handle CREATE_PARTITION_PAGE and
695 FORMAT_PARTITION_PAGE.
696 * subsys/system/usetup/usetup.h (FILE_SYSTEM, FILE_SYSTEM_LIST): Add enums.
697
698 2003-04-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
699
700 * tools/mkhive/infcache.c (InfpCacheFindSection, InfpCacheFindKeyLine,
701 InfFindFirstLine, InfFindFirstMatchLine, InfFindNextMatchLine,
702 InfGetLineCount): Change call to stricmp() to strcasecmp().
703 * tools/mkhive/reginf.c (GetRootKey): Ditto.
704 * tools/mkhive/registry.c (RegSetValue, RegQueryValue): Ditto.
705
706 2003-04-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
707
708 * ntoskrnl/kd/gdbstub.c (KdEnterDebuggerException): Fix signed/unsigned
709 comparison warning.
710 * ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Ditto.
711 * ntoskrnl/ke/i386/usertrap.c (KiUserTrapHandler): Ditto.
712 * tools/helper.mk: Do not install static libraries.
713
714 2003-04-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
715
716 * tools/Makefile: Fix rule for mkflpimg.
717
718 2003-04-12 Casper S. Hornstrup <chorns@users.sourceforge.net>
719
720 * tools/cdmake/Makefile: Use HOST_CC.
721 * tools/cdmake/cdmake.c (MAX_PATH, DIR_SEPARATOR_CHAR,
722 DIR_SEPARATOR_STRING): Define.
723 (directory_record): Add fields name_on_cd and extension_on_cd.
724 (error_exit): Make a macro. Avoid using vfprintf and fprintf.
725 (write_directory_record, new_directory_record, compare_directory_order,
726 pass): Use name_on_cd and extension_on_cd.
727 (make_directory_records, get_file_specifications): Use DIR_SEPARATOR_CHAR.
728 (new_directory_record, make_directory_records): Linux implementations.
729 (main): Use DIR_SEPARATOR_CHAR.
730
731 2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
732
733 * lib/freetype/.cvsignore: Ignore nul.
734
735 2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
736
737 * drivers/storage/atapi/atapi.c (AtapiReadWrite): Expect an interrupt a
738 bit sooner.
739 * hal/halx86/isa.c (HalpGetIsaInterruptVector): Compute vector for MP.
740 * hal/halx86/pci.c (HalpGetPciInterruptVector): Ditto.
741 * hal/halx86/sysbus.c (HalpGetSystemInterruptVector): Ditto.
742 * hal/halx86/mp.c (AssignIrqVector): Rewrite.
743 (MpsTimerHandler): Disable for now.
744 (MpsSpuriousHandler): Do not acknowledge interrupt.
745 (HalAllProcessorsStarted): Only boot 1 CPU for now.
746 (RescheduleDpcRoutine): New function.
747 (RescheduleDpc): New variable.
748 (HalpInitMPS): Initialize RescheduleDpc. Fix bug in call to memset.
749 * hal/halx86/mpsirql.c: Rewrite.
750 * hal/halx86/include/mps.h (VECTOR2IRQ, IRQ2VECTOR, VECTOR2IRQL,
751 IRQL2VECTOR): New macros.
752 * ntoskrnl/ntoskrnl.def: Add KeRescheduleThread@0.
753 * ntoskrnl/ntoskrnl.edf: Ditto.
754 * ntoskrnl/include/internal/ke.h (KeRescheduleThread): Prototype.
755 * ntoskrnl/ke/kthread.c (KeRescheduleThread): New function.
756 * ntoskrnl/ke/i386/exp.c (KeInitExceptions): Remove unneeded call to
757 set_trap_gate().
758 * ntoskrnl/ke/i386/irq.c (VECTOR2IRQ, IRQ2VECTOR, VECTOR2IRQL): Correct.
759 (IRQ_BASE): Define as FIRST_DEVICE_VECTOR.
760 (NR_IRQS): Define using IRQ_BASE.
761 (KeInitInterrupts): Use IRQ_BASE.
762 (KiInterruptDispatch2): Rewrite.
763 (KiInterruptDispatch): Ditto.
764 (KeConnectInterrupt): Pass Vector to HalEnableSystemInterrupt() for MP.
765 (KeDisconnectInterrupt): Pass Vector to HalDisableSystemInterrupt() for MP.
766 * ntoskrnl/ke/i386/trap.s (_KiTrapProlog): Change 0x124 to KPCR_CURRENT_THREAD.
767
768 2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
769
770 * Makefile: Add format.
771 * include/fslib/vfatlib.h (VfatFormat): Prototype.
772 * lib/fmifs/format.c (VfatFormat): Add stub.
773 * lib/fmifs/makefile (TARGET_LIBS): Add vfatlib.a.
774 * lib/fslib/vfatlib/vfatlib.c (VfatFormat): Add stub.
775 * tools/helper.mk: Do not install .sym files for static libraries.
776 * subsys/system/format: New directory.
777 * subsys/system/format/makefile: New file.
778 * subsys/system/format/format.c: Ditto.
779
780 2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
781
782 * include/fslib: New directory.
783 * lib/fslib: Ditto.
784 * lib/fslib/vfatlib: Ditto.
785 * include/fslib/vfatlib.h: New file.
786 * lib/fslib/vfatlib/.cvsignore: Ditto.
787 * lib/fslib/vfatlib/Makefile: Ditto.
788 * lib/fslib/vfatlib/vfatlib.c: Ditto.
789 * Makefile: Support file system libraries
790 * lib/zlib/Makefile: Remove nostrip target.
791 * tools/helper.mk: Add nostrip target.
792
793 2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
794
795 * tools/.cvsignore: Ignore rline.
796
797 2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
798
799 * bootcd.bat: Install dosmbr.bin.
800 * drivers/storage/disk/disk.c (DiskClassDeviceControl): Pass physical
801 device object to IoWritePartitionTable().
802 * ntoskrnl/io/xhaldrv.c (xHalReadMBR): New function.
803 (xHalWriteMBR): Ditto.
804 (xHalExamineMBR): Use xHalReadMBR() to read MBR.
805 (xHalIoWritePartitionTable): Partial implement.
806 * subsys/system/usetup/bootsup.c (InstallMBRBootCodeToDisk): New function.
807 * subsys/system/usetup/bootsup.h (InstallMBRBootCodeToDisk): Prototype.
808 * subsys/system/usetup/partlist.c (CreatePartitionListNoGUI): New function.
809 (CreatePartitionList): Use CreatePartitionListNoGUI() to create partition
810 list.
811 (GetPartitionInformation): New function.
812 (MarkPartitionActive): Ditto.
813 * subsys/system/usetup/partlist.h (MarkPartitionActive): Prototype.
814 * subsys/system/usetup/usetup.c (SelectPartitionPage): Make SystemRootPath
815 point to the selected partition if no partitions are active.
816 (BootLoaderPage): If no partitions are active, then install a DOS MBR and
817 mark the selected partition active.
818
819 2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
820
821 * Makefile: Add bootcd target.
822 (BOOTCD_INSTALL): Set for bootcd install.
823 * rules.mak (TOPDIR): Define on windows.
824 (BOOTCD_DIR): Define.
825 (RLINE): Define.
826 * apps/tests/lpc/makefile: Handle BOOTCD_INSTALL.
827 * apps/tests/mstest/Makefile: Ditto.
828 * apps/tests/nptest/Makefile: Ditto.
829 * apps/tests/shm/makefile: Ditto.
830 * ntoskrnl/Makefile: Handle BOOTCD_INSTALL. Add bootcd target.
831 * drivers/dd/vga/makefile: Add bootcd target.
832 * drivers/dd/blue/makefile (TARGET_BOOTSTRAP): Define as yes.
833 * drivers/dd/floppy/Makefile: Ditto.
834 * drivers/fs/cdfs/makefile: Ditto.
835 * drivers/fs/ntfs/makefile: Ditto.
836 * drivers/fs/vfat/makefile: Ditto.
837 * drivers/input/keyboard/makefile: Ditto.
838 * drivers/storage/atapi/makefile: Ditto.
839 * drivers/storage/cdrom/makefile: Ditto.
840 * drivers/storage/class2/makefile: Ditto.
841 * drivers/storage/disk/makefile: Ditto.
842 * drivers/storage/scsiport/makefile: Ditto.
843 * hal/halx86/Makefile: Ditto.
844 * lib/ntdll/makefile: Ditto.
845 * subsys/system/usetup/makefile (TARGET_BOOTSTRAP): Define as yes.
846 (TARGET_BOOTSTRAP_NAME): Define as smss.exe.
847 * tools/Makefile: Add rline executable.
848 * tools/helper.mk: Support bootcd targets.
849 * tools/rline.c: New file.
850
851 2003-04-04 Casper S. Hornstrup <chorns@users.sourceforge.net>
852
853 * lib/freetype/builds/compiler/gcc.mk (CC): Comment out; use CC from
854 rules.mak instead.
855 * lib/freetype/README.ROS: Note this in porting guide.
856
857 2003-03-29 Casper S. Hornstrup <chorns@users.sourceforge.net>
858
859 * ntoskrnl/ex/sysinfo.c (SystemProcessInformation): Fix warning.
860
861 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
862
863 * include/ntos/rtltypes.h (PRTL_BASE_PROCESS_START_ROUTINE): Define.
864 * lib/kernel32/process/create.c (RtlBaseProcessStartRoutine): Import.
865 (KlCreateFirstThread): Support images with native subsystem ID.
866 * lib/ntdll/def/ntdll.def (RtlBaseProcessStartRoutine): Export.
867 * lib/ntdll/def/ntdll.edf (RtlBaseProcessStartRoutine): Ditto.
868 * lib/ntdll/rtl/exception.c (RtlBaseProcessStart): Forward declare.
869 (RtlBaseProcessStartRoutine, RtlBaseProcessStart): Add.
870
871 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
872
873 * include/defines.h (VS_FFI_SIGNATURE, VS_FFI_STRUCVERSION): Define.
874
875 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
876
877 * ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Use exception code
878 STATUS_ACCESS_VIOLATION for exception 14.
879
880 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
881
882 * ntoskrnl/fs/util.c (FsRtlGetFileSize): Implement.
883
884 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
885
886 * lib/ntdll/rtl/nls.c (RtlCustomCPToUnicodeN, RtlMultiByteToUnicodeN,
887 RtlOemToUnicodeN, RtlUnicodeToCustomCPN, RtlUnicodeToMultiByteN,
888 RtlUnicodeToMultiByteSize, RtlUnicodeToOemN,
889 RtlUpcaseUnicodeToCustomCPN, RtlUpcaseUnicodeToMultiByteN,
890 RtlUpcaseUnicodeToOemN): Assert when unimplemented code is reached.
891
892 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
893
894 * include/ntos/zwtypes.h (FILE_BASIC_INFORMATION): Use LARGE_INTEGER,
895 not TIME type for time fields.
896 * lib/kernel32/file/copy.c (SetLastWriteTime): Adjust for new type.
897 (CopyFileExW): Ditto.
898
899 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
900
901 * include/ntos/types.h (FALSE): Protect with #ifndef FALSE.
902 (TRUE): Protect with #ifndef TRUE.
903
904 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
905
906 * include/napi/i386/segment.h (put_user, get_user,
907 bad_user_access_length, __segment_dummy, __sd, __const_sd, __put_user,
908 __get_user, __generic_memcpy_tofs, __constant_memcpy_tofs, COMMON,
909 __generic_memcpy_fromfs, __constant_memcpy_fromfs, memcpy_fromfs,
910 memcpy_tofs, get_fs_byte, get_fs_word, get_fs_long, put_fs_byte,
911 put_fs_word, put_fs_long, get_user_word, get_user_byte, get_user_long,
912 put_user_byte, put_user_word, put_user_long, get_fs, get_ds, set_fs,
913 set_ds): Remove.
914
915 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
916
917 * include/ddk/pstypes.h (TLS_OUT_OF_INDEXES): Define.
918
919 2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
920
921 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): Treat a write attempt with
922 a return value of STATUS_END_OF_FILE as a successful write.
923 * ntoskrnl/cc/copy.c (WriteCacheSegment): Ditto.
924
925 2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
926
927 * ntoskrnl/cm/regfile.c (CmiRemoveSubKey): Kill warnings.
928 (CmiMergeFree): Ditto.
929
930 2003-02-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
931
932 * include/structs.h (OSVERSIONINFOEXA): Expand definition of
933 OSVERSIONINFOA.
934 (OSVERSIONINFOEXW): Expand definition of OSVERSIONINFOW.
935 * lib/msafd/misc/helpers.c (LocateHelperDLL): Cast AddressFamily,
936 SocketType, and Protocol to INT.
937 * lib/ws2_32/misc/catalog.c (LocateProvider): Ditto.
938
939 2003-01-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
940
941 * ntoskrnl/dbg/profile.c (KdbProfilerThreadMain): Make STDCALL.
942
943 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
944
945 * drivers/net/tcpip/makefile (TCP_OBJECTS): Add transport/tcp/tcpcore.o,
946 transport/tcp/tcp_input.o, transport/tcp/tcp_ipv4.o,
947 transport/tcp/tcp_output.o, and transport/tcp/tcp_timer.o.
948 * drivers/net/tcpip/transport/tcp/tcp.c (TCPStartup): Call tcp_init().
949 * drivers/net/tcpip/include/linux.h: New file.
950 * drivers/net/tcpip/include/tcpcore.h: Ditto.
951 * drivers/net/tcpip/include/tcpdef.h: Ditto.
952 * drivers/net/tcpip/transport/tcp/tcp_input.c: Ditto.
953 * drivers/net/tcpip/transport/tcp/tcp_ipv4.c: Ditto.
954 * drivers/net/tcpip/transport/tcp/tcp_output.c: Ditto.
955 * drivers/net/tcpip/transport/tcp/tcp_timer.c: Ditto.
956 * drivers/net/tcpip/transport/tcp/tcpcore.c: Ditto.
957
958 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
959
960 * lib/kernel32/k32.h: New file.
961 * lib/kernel32/makefile (TARGET_CFLAGS): Add -I./.
962 (TARGET_PCH): Set to k32.h.
963 * lib/kernel32/except/except.c: Use <k32.h>.
964 * lib/kernel32/file/backup.c: Ditto.
965 * lib/kernel32/file/cnotify.c: Ditto.
966 * lib/kernel32/file/copy.c: Ditto.
967 * lib/kernel32/file/create.c: Ditto.
968 * lib/kernel32/file/curdir.c: Ditto.
969 * lib/kernel32/file/delete.c: Ditto.
970 * lib/kernel32/file/deviceio.c: Ditto.
971 * lib/kernel32/file/dir.c: Ditto.
972 * lib/kernel32/file/dosdev.c: Ditto.
973 * lib/kernel32/file/file.c: Ditto.
974 * lib/kernel32/file/find.c: Ditto.
975 * lib/kernel32/file/iocompl.c: Ditto.
976 * lib/kernel32/file/lfile.c: Ditto.
977 * lib/kernel32/file/lock.c: Ditto.
978 * lib/kernel32/file/mailslot.c: Ditto.
979 * lib/kernel32/file/move.c: Ditto.
980 * lib/kernel32/file/npipe.c: Ditto.
981 * lib/kernel32/file/pipe.c: Ditto.
982 * lib/kernel32/file/rw.c: Ditto.
983 * lib/kernel32/file/tape.c: Ditto.
984 * lib/kernel32/file/volume.c: Ditto.
985 * lib/kernel32/mem/global.c: Ditto.
986 * lib/kernel32/mem/heap.c: Ditto.
987 * lib/kernel32/mem/isbad.c: Ditto.
988 * lib/kernel32/mem/local.c: Ditto.
989 * lib/kernel32/mem/procmem.c: Ditto.
990 * lib/kernel32/mem/section.c: Ditto.
991 * lib/kernel32/mem/virtual.c: Ditto.
992 * lib/kernel32/misc/atom.c: Ditto.
993 * lib/kernel32/misc/comm.c: Ditto.
994 * lib/kernel32/misc/console.c: Ditto.
995 * lib/kernel32/misc/debug.c: Ditto.
996 * lib/kernel32/misc/dllmain.c: Ditto.
997 * lib/kernel32/misc/env.c: Ditto.
998 * lib/kernel32/misc/error.c: Ditto.
999 * lib/kernel32/misc/handle.c: Ditto.
1000 * lib/kernel32/misc/ldr.c: Ditto.
1001 * lib/kernel32/misc/profile.c: Ditto.
1002 * lib/kernel32/misc/res.c: Ditto.
1003 * lib/kernel32/misc/stubs.c: Ditto.
1004 * lib/kernel32/misc/sysinfo.c: Ditto.
1005 * lib/kernel32/misc/time.c: Ditto.
1006 * lib/kernel32/process/cmdline.c: Ditto.
1007 * lib/kernel32/process/create.c: Ditto.
1008 * lib/kernel32/process/proc.c: Ditto.
1009 * lib/kernel32/process/session.c: Ditto.
1010 * lib/kernel32/string/lstring.c: Ditto.
1011 * lib/kernel32/synch/critical.c: Ditto.
1012 * lib/kernel32/synch/event.c: Ditto.
1013 * lib/kernel32/synch/intrlck.c: Ditto.
1014 * lib/kernel32/synch/mutex.c: Ditto.
1015 * lib/kernel32/synch/sem.c: Ditto.
1016 * lib/kernel32/synch/timer.c: Ditto.
1017 * lib/kernel32/synch/wait.c: Ditto.
1018 * lib/kernel32/thread/fiber.c: Ditto.
1019 * lib/kernel32/thread/thread.c: Ditto.
1020 * lib/kernel32/thread/tls.c: Ditto.
1021
1022 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1023
1024 * apps/testsets/Makefile (TEST_SETS): Remove ldr.
1025 * include/msvcrt/ctype.h (towupper): Make returntype wchar_t.
1026
1027 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1028
1029 * tools/rtouch.c: Include <sys/utime.h>, not <utime.h>.
1030
1031 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1032
1033 * tools/rtouch.c: New file.
1034 * rules.mak (ROS_USE_PCH): Default to no.
1035 (RTOUCH): Define.
1036 * tools/Makefile: Add rtouch utility.
1037 * tools/helper.mk: Support precompiled headers.
1038
1039 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1040
1041 * ntoskrnl/dbg/profile.c: New file.
1042 * ntoskrnl/Makefile (OBJECTS_KDBG): Add dbg/profile.o.
1043 * ntoskrnl/dbg/kdb.h: Define NTOS_MODE_KERNEL. Include <ntos.h>.
1044 (LdrGetAddressInformation, KdbInitProfiling, KdbInitProfiling2,
1045 KdbDisableProfiling, KdbEnableProfiling, KdbProfileInterrupt) Prototype.
1046 * ntoskrnl/kd/kdebug.c (KdInitSystem): Add /PROFILE option if KDBG=1.
1047 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Call KdbInitProfiling2()
1048 if KDBG=1.
1049 * ntoskrnl/ke/i386/irq.c: Include <../dbg/kdb.h> if KDBG=1.
1050 (KiInterruptDispatch): Call KdbProfileInterrupt() on timer interrupt
1051 if KDBG=1.
1052
1053 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1054
1055 * drivers/fs/vfat/create.c (VfatSupersedeFile): Only notify cache manager
1056 about change in file size if caching is initiated on the file stream.
1057
1058 2003-01-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
1059
1060 * boot.bat: Use DOS end-of-line characters.
1061
1062 2003-01-02 Casper S. Hornstrup <chorns@users.sourceforge.net>
1063
1064 * ntoskrnl/ke/timer.c (KeExpireTimers): Avoid signed/unsigned comparison
1065 warning.
1066 * lib/user32/controls/scrollbar.c (SCROLL_DrawScrollBar): Put a statement
1067 at end.
1068
1069 2002-12-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1070
1071 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Only uninitialize caching
1072 when initialized.
1073 * drivers/fs/vfat/fcb.c (vfatReleaseFCB): Ditto.
1074 * lib/kernel32/mem/section.c (CreateFileMappingW): Pass NULL as
1075 MaximumSize to NtCreateSection if dwMaximumSizeHigh and dwMaximumSizeLow
1076 are both 0.
1077 * ntoskrnl/cc/pin.c (CcMapData): Assert if Bcb is NULL.
1078 * ntoskrnl/cc/view.c (CcRosReleaseCacheSegment, CcRosLookupCacheSegment,
1079 CcRosMarkDirtyCacheSegment, CcRosUnmapCacheSegment,
1080 CcRosCreateCacheSegment, CcRosGetCacheSegmentChain,
1081 CcRosGetCacheSegment, CcRosRequestCacheSegment, CcFlushCache,
1082 CcRosDeleteFileCache, CcRosReferenceCache, CcRosDereferenceCache,
1083 CcRosReleaseFileCache, CcGetFileObjectFromSectionPtrs): Ditto.
1084 * ntoskrnl/mm/section.c (MiReadPage): Assert if Fcb->Bcb is NULL.
1085 (MmCreateDataFileSection): Make sure caching is initialized for the file
1086 stream.
1087
1088 2002-11-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
1089
1090 * include/ddk/ldrtypes.h: Move ...
1091 * include/ntos/ldrtypes.h: ... here.
1092 * include/ddk/ntddk.h: Include ldrtypes.h at new location.
1093
1094 2002-11-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
1095
1096 * drivers/bus/acpi/ospm/osl.c (acpi_os_readable, acpi_os_writable):
1097 Match prototypes.
1098 * include/ascii.h (AbortSystemShutdownA): Correct prototype.
1099 * include/debug.h (assert): Wrap in #ifndef assert.
1100 * include/funcs.h (AbortSystemShutdown): Remove duplicate prototype.
1101 * include/ddk/rtltypes.h: Move ...
1102 * include/ntos/rtltypes.h: ... here.
1103 * include/ddk/rtl.h: Move ...
1104 * include/ntos/rtl.h: ... here.
1105 * include/ddk/zwtypes.h: Move ...
1106 * include/ntos/zwtypes.h: ... here.
1107 * include/ddk/zw.h: Move ...
1108 * include/ntos/zw.h: ... here.
1109 | include/ddk/cmfuncs.h: Remove file; Move NtCreateKey to ntos/zw.h.
1110 * include/ntos.h: #include ntos/rtltypes.h, ntos/rtl.h, ntos/zwtypes.h,
1111 and ntos/zw.h.
1112 * include/unicode.h: (AbortSystemShutdownW): Correct prototype.
1113 * include/ddk/ntddk.h: Include headers at new location; Don't include
1114 removed files.
1115 * include/defines.h: Wrap definitions in w32api in #ifndef __USE_W32API.
1116 * include/ntos/zwtypes.h: Ditto.
1117 * include/napi/lpc.h: Ditto.
1118 * include/napi/shared_data.h: Ditto.
1119 * include/napi/teb.h: Ditto.
1120 * include/napi/types.h: Ditto.
1121 * include/ntdll/ldr.h: Ditto.
1122 * include/ntdll/rtl.h: Ditto.
1123 * include/ntos/console.h: Ditto.
1124 * include/ntos/disk.h: Ditto.
1125 * include/ntos/except.h: Ditto.
1126 * include/ntos/file.h: Ditto.
1127 * include/ntos/gditypes.h: Ditto.
1128 * include/ntos/heap.h: Ditto.
1129 * include/ntos/keyboard.h: Ditto.
1130 * include/ntos/mm.h: Ditto.
1131 * include/ntos/ntdef.h: Ditto.
1132 * include/ntos/ps.h: Ditto.
1133 * include/ntos/registry.h: Ditto.
1134 * include/ntos/security.h: Ditto.
1135 * include/ntos/synch.h: Ditto.
1136 * include/ntos/time.h: Ditto.
1137 * include/ntos/types.h: Ditto.
1138 * include/ntos/port.h: Ditto.
1139 * lib/advapi32/misc/shutdown.c (AbortSystemShutdownW,
1140 AbortSystemShutdownA): Correct prototype.
1141 * lib/advapi32/reg/reg.c: #include ntos.h.
1142 * lib/advapi32/sec/misc.c: Ditto.
1143 * lib/advapi32/sec/sid.c: Ditto.
1144 * lib/advapi32/service/sctrl.c: Ditto.
1145 * lib/advapi32/token/token.c: Ditto.
1146 * lib/kernel32/misc/dllmain.c: Ditto.
1147 * ntoskrnl/ex/napi.c: Ditto.
1148 * ntoskrnl/rtl/i386/exception.c: Ditto.
1149 * lib/advapi32/sec/ac.c: Ditto.
1150 (FindFirstFreeAce, GetAce): Change PACE* to PACE_HEADER*.
1151 * lib/advapi32/service/scm.c (EnumServicesStatusExA,
1152 EnumServicesStatusExW, QueryServiceStatusEx): Correct prototype.
1153 * lib/ntdll/rtl/ppb.c (RtlDestroyProcessParameters): Match prototype.
1154 * ntoskrnl/dbg/errinfo.c (DbgGetErrorText): Use %08x, not %08lx.
1155 * ntoskrnl/io/arcname.c (IoCreateSystemRootLink): Use %u, not %lu.
1156 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Ditto.
1157 * (_main): Use %d, not %ld.
1158 * ntoskrnl/include/internal/i386/ke.h: Add #pragma GCC system_header.
1159 * include/ddk/ntdef.h (NTSYSAPI, NTAPI, NTKERNELAPI): Define to STDCALL;
1160 Check if already defined.
1161 * include/base.h (STDCALL, CDECL, CALLBACK, PASCAL): Move to ntos/types.h.
1162
1163 2002-11-13 Rick Gaiser <RickG81@Wanadoo.nl>
1164
1165 * drivers/bus/isapnp/isapnp.c (FindNextReadPort): Increment Port before
1166 checking wether port address is in NE2000 address space range and returning
1167 port address value.
1168
1169 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
1170
1171 * drivers/bus/acpi/include/acpi.h: Include platform/types.h.
1172 * drivers/bus/acpi/include/actypes.h: (UINT8, BOOLEAN, UCHAR, UINT16,
1173 INT32, UINT32, UINT64): Disable, use the OS defined types instead.
1174 * drivers/bus/acpi/include/platform/types.h: Remove all types,
1175 include ntos.h instead.
1176 * drivers/bus/acpi/ospm/include/acpisys.h: Don't include
1177 platform/types.h.
1178
1179 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
1180
1181 * include/defines.h: Fix warnings when bulding with gcc 3.3.
1182 * include/ddk/status.h: Ditto.
1183 * include/freetype/internal/ftdebug.h: Ditto.
1184 * include/net/ndis.h: Ditto.
1185 * lib/msafd/misc/helpers.c: Ditto.
1186 * lib/user32/windows/defwnd.c: Ditto.
1187 * lib/user32/windows/window.c: Ditto.
1188 * ntoskrnl/cm/ntfunc.c: Ditto.
1189 * ntoskrnl/cm/regfile.c: Ditto.
1190 * ntoskrnl/cm/regobj.c: Ditto.
1191 * ntoskrnl/dbg/errinfo.c: Ditto.
1192 * ntoskrnl/ex/hashtab.c: Ditto.
1193 * ntoskrnl/include/internal/mm.h: Ditto.
1194 * ntoskrnl/io/irp.c: Ditto.
1195 * ntoskrnl/kd/gdbstub.c: Ditto.
1196 * ntoskrnl/ke/queue.c: Ditto.
1197 * ntoskrnl/ke/sem.c: Ditto.
1198 * ntoskrnl/ldr/resource.c: Ditto.
1199 * ntoskrnl/mm/balance.c: Ditto.
1200 * ntoskrnl/mm/freelist.c: Ditto.
1201 * ntoskrnl/mm/mdl.c: Ditto.
1202 * ntoskrnl/mm/npool.c: Ditto.
1203 * ntoskrnl/mm/section.c: Ditto.
1204 * ntoskrnl/rtl/error.c: Ditto.
1205 * ntoskrnl/rtl/mem.c: Ditto.
1206 * ntoskrnl/rtl/string.c: Ditto.
1207 * ntoskrnl/rtl/time.c: Ditto.
1208 * ntoskrnl/rtl/unicode.c: Ditto.
1209 * ntoskrnl/rtl/wstring.c: Ditto.
1210 * ntoskrnl/rtl/i386/exception.c: Ditto.
1211 * subsys/win32k/freetype/src/base/ftinit.c: Ditto.
1212
1213 2002-11-03 Casper S. Hornstrup <chorns@users.sourceforge.net>
1214
1215 * apps/tests/lpc/lpcclt.c: Change LPC_MESSAGE_HEADER to LPC_MESSAGE.
1216 * include/csrss/csrss.h: Ditto.
1217 * include/lsass/lsass.h: Ditto.
1218 * include/napi/dbg.h: Ditto.
1219 * include/napi/lpc.h: Ditto.
1220 * lib/kernel32/misc/console.c: Ditto.
1221 * lib/ntdll/csr/lpc.c: Ditto.
1222 * lib/ntdll/dbg/debug.c: Ditto.
1223 * lib/secur32/lsa.c: Ditto.
1224 * ntoskrnl/dbg/user.c: Ditto.
1225 * ntoskrnl/include/internal/port.h: Ditto.
1226 * ntoskrnl/lpc/connect.c: Ditto.
1227 * ntoskrnl/lpc/reply.c: Ditto.
1228 * ntoskrnl/ps/process.c: Ditto.
1229 * subsys/csrss/api/conio.c: Ditto.
1230 * subsys/csrss/api/process.c: Ditto.
1231 * subsys/csrss/api/user.c: Ditto.
1232
1233 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
1234
1235 * lib/msvcrt/except/seh.s: Fix end-of-line formatting.
1236 * lib/ntdll/rtl/i386/exception.c: Ditto.
1237 * lib/ntdll/rtl/i386/except.s: Ditto.
1238 * ntoskrnl/rtl/i386/except.s: Ditto.
1239 * ntoskrnl/rtl/i386/seh.s: Ditto.
1240
1241 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
1242
1243 * lib/msvcrt/Makefile (OBJECTS_EXCEPT): Add except/seh.o; Remove
1244 except/exhand3.o.
1245 * lib/msvcrt/except/exhand2.c (MsvcrtDebug): New function.
1246 * lib/msvcrt/except/unwind.c (PEXCEPTION_FRAME): Remove.
1247 (_global_unwind2): Correct prototype.
1248 * lib/ntdll/makefile (RTL_I386_OBJECTS, ARCH_OBJECTS): New groups.
1249 (TARGET_OBJECTS): Add ARCH_OBJECTS group.
1250 * lib/ntdll/rtl/exception.c (KiUserExceptionDispatcher): Set
1251 NumberParameters in exception record.
1252 (RtlRaiseStatus): Remove.
1253 * ntoskrnl/Makefile (OBJECTS_RTL): Remove rtl/seh.o.
1254 (OBJECTS_RTL_I386): Add rtl/i386/except.o, rtl/i386/exception.o, and
1255 rtl/i386/seh.o.
1256 * ntoskrnl/ke/catch.c (RtlpExecuteHandlerForException,
1257 RtlpDumpExceptionRegistrations, RtlpDispatchException,
1258 RtlpExecuteHandler, RtlpExceptionHandler, RtlpUnwindHandler,
1259 RtlpExecuteHandlerForException, RtlpExecuteHandlerForUnwind,
1260 RtlUnwind): Remove.
1261 (RtlpDispatchException): Add prototype.
1262 * ntoskrnl/ke/i386/usertrap.c (ExceptionTypeStrings): Remove.
1263 * ntoskrnl/ps/create.c (PsCreateTeb): Mark end of exception
1264 registration list.
1265 * tools/helper.mk (TARGET_ASFLAGS): Add -g if DBG = 1.
1266 * lib/msvcrt/except/exhand3.c: Remove.
1267 * ntoskrnl/rtl/seh.c: Ditto.
1268 * lib/msvcrt/except/seh.s: New file.
1269 * lib/ntdll/rtl/i386/except.s: Ditto.
1270 * lib/ntdll/rtl/i386/exception.c: Ditto.
1271 * ntoskrnl/rtl/i386/except.s: Ditto.
1272 * ntoskrnl/rtl/i386/exception.c: Ditto.
1273 * ntoskrnl/rtl/i386/seh.s: Ditto.
1274
1275 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
1276
1277 * lib/kernel32/process/create.c (_except_handler): New function.
1278 (BaseProcessStart): Ditto.
1279 (KlCreateFirstThread): Return INVALID_HANDLE_VALUE on error; Call
1280 BaseProcessStart() before process entry point.
1281 * lib/kernel32/thread/thread.c (_except_handler): New function.
1282 (ThreadStartup): Protect thread using SEH constructs.
1283
1284 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
1285
1286 * include/ddk/zw.h (NtProcessStartup): Use standard calling convention.
1287 * subsys/csrss/csrss.c (NtProcessStartup): Ditto.
1288 * subsys/smss/smss.c (NtProcessStartup): Ditto.
1289 * subsys/system/autochk/autochk.c (NtProcessStartup): Ditto.
1290 * subsys/system/usetup/usetup.c (NtProcessStartup): Ditto.
1291
1292 2002-10-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
1293
1294 * apps/tests/tokentest/tokentest.c (ROS_ACE_HEADER): Move field
1295 AccessMask ...
1296 (ROS_ACE): ... here.
1297 (DisplayDacl): Make pAce an ROS_ACE*; Use new path for AceType; Use
1298 sizeof(ACE) instead of sizeof(ACE_HEADER).
1299 * include/ntos/security.h (ACE_HEADER): Move field AccessMask ...
1300 (ACE): ... here.
1301 * lib/ntdll/rtl/acl.c: Use new path for AccessMask.
1302 * ntoskrnl/se/semgr.c: Ditto.
1303 * ntoskrnl/se/acl.c (SepInitDACLs): Use new path for AccessMask; Use
1304 sizeof(ACE) instead of sizeof(ACE_HEADER).
1305 * ntoskrnl/se/token.c (SepCreateSystemProcessToken): Use sizeof(ACE)
1306 instead of sizeof(ACE_HEADER).
1307
1308 2002-10-20 Casper S. Hornstrup <chorns@users.sourceforge.net>
1309
1310 * include/napi/teb.h (RTL_USER_PROCESS_PARAMETERS): Use field names
1311 as described in Windows NT/2000 Native API Reference.
1312 * lib/kernel32/file/file.c: Use new field names.
1313 * lib/kernel32/misc/console.c: Ditto.
1314 * lib/kernel32/process/create.c: Ditto.
1315 * lib/kernel32/process/proc.c: Ditto.
1316 * lib/ntdll/rtl/path.c: Ditto.
1317 * lib/ntdll/rtl/ppb.c: Ditto.
1318 * lib/ntdll/rtl/process.c: Ditto.
1319
1320 2002-10-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
1321
1322 * include/ntos.h: Include relevant files.
1323 * include/internal/ke.h: Include files relative to
1324 ntoskrnl/include.
1325 * include/internal/arch/ke.h: Ditto.
1326
1327 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
1328
1329 * drivers/dd/floppy/floppy.c: Changed PAGESIZE to PAGE_SIZE.
1330 * drivers/fs/cdfs/fcb.c: Ditto.
1331 * drivers/fs/cdfs/fsctl.c: Ditto.
1332 * drivers/fs/cdfs/rw.c: Ditto.
1333 * drivers/fs/ext2/dir.c: Ditto.
1334 * drivers/fs/ext2/inode.c: Ditto.
1335 * drivers/fs/ext2/rw.c: Ditto.
1336 * drivers/fs/ext2/super.c: Ditto.
1337 * drivers/fs/minix/blockdev.c: Ditto.
1338 * drivers/fs/minix/cache.c: Ditto.
1339 * drivers/fs/minix/inode.c: Ditto.
1340 * drivers/fs/minix/rw.c: Ditto.
1341 * drivers/fs/ntfs/fcb.c: Ditto.
1342 * drivers/fs/ntfs/ntfs.h: Ditto.
1343 * drivers/fs/vfat/create.c: Ditto.
1344 * drivers/fs/vfat/direntry.c: Ditto.
1345 * drivers/fs/vfat/dirwr.c: Ditto.
1346 * drivers/fs/vfat/fat.c: Ditto.
1347 * drivers/fs/vfat/fcb.c: Ditto.
1348 * drivers/fs/vfat/fsctl.c: Ditto.
1349 * drivers/fs/vfat/rw.c: Ditto.
1350 * drivers/storage/class2/class2.c: Ditto.
1351 * drivers/storage/scsiport/scsiport.c: Ditto.
1352 * hal/halx86/adapter.c: Ditto.
1353 * hal/halx86/mp.c: Ditto.
1354 * include/ddk/mmfuncs.h: Ditto.
1355 * include/ddk/mmtypes.h: Ditto.
1356 * include/ddk/i386/pagesize.h: Ditto.
1357 * include/ntdll/pagesize.h: Ditto.
1358 * lib/kernel32/process/create.c: Ditto.
1359 * lib/kernel32/thread/thread.c: Ditto.
1360 * lib/ntdll/ldr/utils.c: Ditto.
1361 * lib/ntdll/rtl/env.c: Ditto.
1362 * lib/ntdll/rtl/heap.c: Ditto.
1363 * lib/ntdll/rtl/ppb.c: Ditto.
1364 * lib/ntdll/rtl/process.c: Ditto.
1365 * lib/ntdll/rtl/thread.c: Ditto.
1366 * ntoskrnl/cc/copy.c: Ditto.
1367 * ntoskrnl/cc/view.c: Ditto.
1368 * ntoskrnl/ex/sysinfo.c: Ditto.
1369 * ntoskrnl/include/internal/i386/mm.h: Ditto.
1370 * ntoskrnl/io/mdl.c: Ditto.
1371 * ntoskrnl/ke/kthread.c: Ditto.
1372 * ntoskrnl/ke/i386/kernel.c: Ditto.
1373 * ntoskrnl/ldr/init.c: Ditto.
1374 * ntoskrnl/ldr/loader.c: Ditto.
1375 * ntoskrnl/mm/anonmem.c: Ditto.
1376 * ntoskrnl/mm/cont.c: Ditto.
1377 * ntoskrnl/mm/freelist.c: Ditto.
1378 * ntoskrnl/mm/iospace.c: Ditto.
1379 * ntoskrnl/mm/kmap.c: Ditto.
1380 * ntoskrnl/mm/marea.c: Ditto.
1381 * ntoskrnl/mm/mdl.c: Ditto.
1382 * ntoskrnl/mm/mminit.c: Ditto.
1383 * ntoskrnl/mm/ncache.c: Ditto.
1384 * ntoskrnl/mm/npool.c: Ditto.
1385 * ntoskrnl/mm/pagefile.c: Ditto.
1386 * ntoskrnl/mm/pageop.c: Ditto.
1387 * ntoskrnl/mm/section.c: Ditto.
1388 * ntoskrnl/mm/slab.c: Ditto.
1389 * ntoskrnl/mm/i386/page.c: Ditto.
1390 * ntoskrnl/ob/handle.c: Ditto.
1391 * ntoskrnl/ps/create.c: Ditto.
1392 * ntoskrnl/ps/process.c: Ditto.
1393 * ntoskrnl/ps/w32call.c: Ditto.
1394 * subsys/win32k/include/object.h: Ditto.
1395
1396 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
1397
1398 * lib/ntdll/string/ctype.c: Undefine __MSVCRT__ to not have mingw
1399 runtime import _pctype.
1400
1401 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
1402
1403 * lib/user32/misc/desktop.c (string.h): Include.
1404 * lib/user32/misc/resources.c: Ditto.
1405 * lib/user32/misc/winhelp.c: Ditto.
1406 * lib/user32/windows/accel.c: Ditto.
1407 * lib/user32/windows/bitmap.c: Ditto.
1408 * subsys/win32k/freetype/ctype.c: Undefine __MSVCRT__ and _pctype to not
1409 have mingw runtime import _pctype.
1410
1411 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
1412
1413 * ntoskrnl/cc/view.c (alloca): Prototype.
1414 * ntoskrnl/rtl/ctype.c: Undefine __MSVCRT__ to not have mingw runtime
1415 import _pctype.
1416
1417 2002-08-26 David Welch <welch@computer2.darkstar.org>
1418
1419 * lib/gdi32/misc/dllmain.c (GdiDllInitialize): Don't initialize
1420 win32k.sys for each process.
1421 * subsys/csrss/init.c (CsrServerInitialization): Initialize
1422 win32k.sys as well.
1423
1424 2002-08-26 David Welch <welch@computer2.darkstar.org>
1425
1426 * ntoskrnl/ps/process.c (NtCreateProcess): Reference the
1427 parent process's handle using ExGetPreviousMode.
1428
1429 2002-08-26 David Welch <welch@computer2.darkstar.org>
1430
1431 * lib/user32/misc/dllmain.c (Init): Initialize gdi32 as well.
1432
1433 2002-08-26 David Welch <welch@computer2.darkstar.org>
1434
1435 * iface/addsys/genw32k.c (main, process): Generate a set of
1436 stubs for csrss as well.
1437
1438 2002-08-26 David Welch <welch@computer2.darkstar.org>
1439
1440 * lib/kernel32/process/create.c (CreateProcessW): Initialize
1441 all the members of the new process's PPB.
1442
1443 2002-08-17 David Welch <welch@computer2.darkstar.org>
1444
1445 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): Ensure the
1446 process isn't freed in the middle of our operations.
1447
1448 2002-08-17 David Welch <welch@computer2.darkstar.org>
1449
1450 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation): Fixed.
1451
1452 2002-08-17 David Welch <welch@computer2.darkstar.org>
1453
1454 * ntoskrnl/ps/create.c (PiDeleteThread): Don't dereference
1455 the thread's process while holding the thread list lock.
1456
1457 2002-08-17 David Welch <welch@computer2.darkstar.org>
1458
1459 * ntoskrnl/mm/section.c (MmMapViewOfSection): Check there is
1460 enough space for all parts of an image before mapping it; if
1461 there isn't enough space free at the preferred base address
1462 then try to choose a different one.
1463
1464 2002-08-17 David Welch <welch@computer2.darkstar.org>
1465
1466 * ntoskrnl/mm/mpw.c (MmInitMpwThread): Run the MPW thread at
1467 idle priority.
1468
1469 2002-08-17 David Welch <welch@computer2.darkstar.org>
1470
1471 * ntoskrnl/mm/kmap.c (ExUnmapPage, ExAllocatePageWithPhysPage,
1472 MiFreeNonPagedPoolRegion, MiAllocNonPagedPoolRegion): Maintain
1473 a hint of the next free page; makes running with whole page
1474 allocation more bearable.
1475
1476 2002-08-17 David Welch <welch@computer2.darkstar.org>
1477
1478 * ntoskrnl/mm/anonmem.c (MmPageOutVirtualMemory): Show an
1479 out of swap space message if we are out of swap space.
1480 * ntoskrnl/mm/section.c (MmPageOutSectionView): Show an
1481 out of swap space message if we are out of swap space.
1482 * ntoskrnl/mm/pagefile.c (MmAllocSwapPage): Don't automatically
1483 show an out of swap space message on failure.
1484 * ntoskrnl/mm/pagefile.c (MmShowOutOfSpaceMessagePagingFile): New
1485 function to notify the user that the pagefile is full.
1486
1487 2002-08-17 David Welch <welch@computer2.darkstar.org>
1488
1489 * drivers/lib/zlib/Makefile: Create a dummy zlib.sym
1490
1491 2002-08-16 David Welch <welch@computer2.darkstar.org>
1492
1493 * ntoskrnl/mm/npool.c (ExAllocateWholePageBlock): Converted
1494 to use PHYSICAL_ADDRESS type for page address.
1495
1496 2002-08-16 David Welch <welch@computer2.darkstar.org>
1497
1498 * subsys/win32k/ntuser/class.c (W32kCreateClass): Corrected
1499 typo when calculating the offset into the class object to
1500 put the class name string.
1501
1502 2002-08-16 David Welch <welch@computer2.darkstar.org>
1503
1504 * ntoskrnl/ps/thread.c (PsDispatchThreadNoLock): Don't call
1505 the reaper function directly; set an event to wake up a seperate
1506 reaper thread.
1507 * ntoskrnl/ps/thread.c (PsReaperThreadMain): New function that
1508 waits for a notification and then calls PsReapThreads.
1509 * ntoskrnl/ps/thread.c (PsInitThreadManagement): Create the
1510 reaper thread.
1511
1512 2002-08-15 David Welch <welch@computer2.darkstar.org>
1513
1514 * lib/advapi32/misc/dllmain.c (DllMain): Removed debug message.
1515
1516 2002-08-14 David Welch <welch@computer2.darkstar.org>
1517
1518 * subsys/smss/init.c (SmPagingFilesQueryRoutine): If possible
1519 take the size of the paging file from the registry.
1520
1521 2002-08-14 David Welch <welch@computer2.darkstar.org>
1522
1523 * ntoskrnl/mm/section.c (MmCreateDataFileSection): Extend the
1524 section if necessary.
1525
1526 2002-08-14 David Welch <welch@computer2.darkstar.org>
1527
1528 * ntoskrnl/mm/pagefile.c (NtCreatePagingFile): Set the file
1529 size using the FileAllocationInformation class.
1530
1531 2002-08-14 David Welch <welch@computer2.darkstar.org>
1532
1533 * ntoskrnl/mm/anonmem.c (MmWritePageVirtualMemory): Implemented
1534 function to write anonymous memory pages to the swap file.
1535 * ntoskrnl/mm/anonmem.c (MmFreeVirtualMemoryPage): Free any
1536 swap page associated with the page.
1537 * ntoskrnl/mm/mpw.c (MmWriteDirtyPages): New function to find
1538 pages to write to disk.
1539 * ntoskrnl/mm/mpw.c (MmMpwThreadMain): Implemented MPW functionality.
1540 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): New function
1541 to write a single page back to disk.
1542 * ntoskrnl/mm/rmap.c (MmSetCleanAllRmaps, MmSetDirtyAllRmaps,
1543 MmIsDirtyPageRmap): New rmap function to support the MPW thread.
1544 * ntoskrnl/mm/section.c (MmWritePageSectionView): Implemented
1545 function to write back section pages.
1546 * ntoskrnl/mm/section.c (MmFreeSectionPage): Free any swap
1547 entry associated with the page; mark pages shared with
1548 the cache as dirty if necessary.
1549
1550 2002-08-14 David Welch <welch@computer2.darkstar.org>
1551
1552 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set name of
1553 the module into the module text structure.
1554
1555 2002-08-14 David Welch <welch@computer2.darkstar.org>
1556
1557 * ntoskrnl/io/rw.c (NtReadFile, NtWriteFile): Use the correct
1558 test for whether to wait for the completion of i/o.
1559
1560 2002-08-14 David Welch <welch@computer2.darkstar.org>
1561
1562 * ntoskrnl/cm/ntfunc.c (NtFlushKey): Request synchronous i/o
1563 from NtOpenFile.
1564 * ntoskrnl/cm/regfile (CmiInitPermanentRegistryHive): Request
1565 synchronous i/o from NtCreateFile.
1566 * ntoskrnl/dbg/kdb_stabs.c (LdrpLoadModuleSymbols): Request
1567 synchronous i/o from NtOpenFile.
1568 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Request synchronous i/o
1569 from NtOpenFile.
1570
1571 2002-08-14 David Welch <welch@computer2.darkstar.org>
1572
1573 * ntoskrnl/cc/view.c (CcRosSuggestFreeCacheSegment): Maintain the
1574 correct reference count.
1575
1576 2002-08-14 David Welch <welch@computer2.darkstar.org>
1577
1578 * ntoskrnl/cc/view.c (CcRosFlushCacheSegment): New function to
1579 write back a modified cache segment.
1580 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): New function to
1581 flush some dirty pages from the cache.
1582 * ntoskrnl/cc/view.c (CcRosMarkDirtyCacheSegment): New function to
1583 mark a cache segment modified while mapped into memory as dirty.
1584
1585 2002-08-14 David Welch <welch@computer2.darkstar.org>
1586
1587 * ntoskrnl/cc/pin.c (CcMapData, CcUnpinData, CcSetDirtyPinnedData):
1588 Store the dirty status in the BCB; don't write back dirty data
1589 immediately.
1590
1591 2002-08-14 David Welch <welch@computer2.darkstar.org>
1592
1593 * include/ntos/mm.h: Added SEC_XXXX defines from 'Windows NT/2000
1594 Native API Reference'
1595
1596 2002-08-14 David Welch <welch@computer2.darkstar.org>
1597
1598 * drivers/fs/vfat/ea.c (VfatSetExtendedAttributes): Empty
1599 placeholder for extended attribute functions.
1600
1601 2002-08-14 David Welch <welch@computer2.darkstar.org>
1602
1603 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation):
1604 Added function to set allocation size.
1605
1606 2002-08-14 David Welch <welch@computer2.darkstar.org>
1607
1608 * drivers/fs/vfat/fcb.c (vfatFCBInitializeCache): Renamed
1609 to vfatFCBInitializeCacheFromVolume.
1610 * drivers/fs/vfat/fcb.c (vfatMakeFCBFromDirEntry): Don't
1611 initialise the cache with a file object representing the
1612 volume unless the FCB is for a directory.
1613
1614 2002-08-14 David Welch <welch@computer2.darkstar.org>
1615
1616 * drivers/fs/vfat/create.c (VfatPagingFileCreate): Added a
1617 new function for handling paging file only code.
1618 * drivers/fs/vfat/create.c (VfatSupersedeFile): Added a
1619 new function for doing a file supersede.
1620 * drivers/fs/vfat/create.c (VfatCreateFile): Reformatted and
1621 adjusted control flow. Set allocation size and extended attributes
1622 on create.
1623 * drivers/fs/vfat/create.c (VfatCreate): Removed goto.
1624
1625 2002-08-14 David Welch <welch@computer2.darkstar.org>
1626
1627 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Renamed
1628 updEntry to VfatUpdateEntry.
1629 * drivers/fs/vfat/close.c (VfatCloseFile): Renamed
1630 updEntry to VfatUpdateEntry.
1631 * drivers/fs/vfat/dirwr.c (updEntry): Renamed to
1632 VfatUpdateEntry.
1633 * drivers/fs/vfat/dirwr.c (addEntry): Renamed to
1634 VfatAddEntry.
1635
1636 2002-08-14 David Welch <welch@computer2.darkstar.org>
1637
1638 * apps/tests/sectest/sectest.c (main): Fixed formatting.
1639
1640 2002-08-10 David Welch <welch@computer2.darkstar.org>
1641
1642 * ntoskrnl/mm/i386/page.c (MmSetPageProtect): Fixed
1643 behaviour when called on the system address space.
1644
1645 2002-08-10 David Welch <welch@computer2.darkstar.org>
1646
1647 * ntoskrnl/mm/virtual.c (MmQueryAnonMem, MmProtectAnonMem,
1648 NtAllocateVirtualMemory, NtFreeVirtualMemory): Renamed
1649 segments to regions; moved region code to seperate file.
1650 Implemented NtQueryVirtualMemory and NtProtectVirtualMemory
1651 for anonymous memory areas.
1652
1653 2002-08-10 David Welch <welch@computer2.darkstar.org>
1654
1655 * ntoskrnl/mm/anonmem.c: Moved functions relating to
1656 areas created with NtAllocateVirtualMemory to a
1657 seperate file.
1658
1659 2002-08-10 David Welch <welch@computer2.darkstar.org>
1660
1661 * ntoskrnl/mm/section.c (MmQuerySectionView): Implemented
1662 NtQueryVirtualMemory for section views.
1663
1664 2002-08-10 David Welch <welch@computer2.darkstar.org>
1665
1666 * ntoskrnl/mm/section.c (MmAccessFaultSectionView,
1667 MmNotPresentFaultSectionView, MmProtectSectionView,
1668 MmMapViewOfSegment, MmAlterViewAttributes): Implemented
1669 NtProtectVirtualMemory for section views.
1670
1671 2002-08-10 David Welch <welch@computer2.darkstar.org>
1672
1673 * ntoskrnl/ke/main.c: Removed SEH test code.
1674
1675 2002-08-10 David Welch <welch@computer2.darkstar.org>
1676
1677 * lib/ntdll/ldr/utils.c (LdrFixupImports): Remove the readonly
1678 protection from the IAT before writing to it.
1679
1680 2002-08-10 David Welch <welch@computer2.darkstar.org>
1681
1682 * lib/ntdll/ldr/utils.c (LdrAdjustDllName): Properly null terminate
1683 the base name of the DLL.
1684
1685 2002-08-10 David Welch <welch@computer2.darkstar.org>
1686
1687 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set the text segment
1688 of modules to readonly after loading.
1689
1690 2002-08-09 David Welch <welch@computer2.darkstar.org>
1691
1692 * ntoskrnl/ps/create.c (NtCreateThread): Call PsSuspendThread
1693 if NtCreateThread has CreateSuspended as TRUE.
1694 * ntoskrnl/ps/suspend.c (PsSuspendThread, PsResumeThread,
1695 PiSuspendThreadKernelRoutine): Fixed suspend functionality.
1696
1697 2002-08-09 David Welch <welch@computer2.darkstar.org>
1698
1699 * ntoskrnl/ke/i386/usertrap.c (print_user_address): Copy
1700 the LDR variable from the right address.
1701
1702 2002-08-09 David Welch <welch@computer2.darkstar.org>
1703
1704 * ntoskrnl/ke/apc.c (KiDeliverNormalApc): Check for
1705 kernel APCs pending on exit from the kernel.
1706 * ntoskrnl/ke/apc.c (KiDeliverNormalApc, KiDeliverUserApc,
1707 KiDeliverApc): Set the APC's inserted flag to FALSE after
1708 removing it from the thread's queue.
1709
1710 2002-08-09 David Welch <welch@computer2.darkstar.org>
1711
1712 * lib/kernel32/thread/thread.c (ThreadStartup): Don't
1713 call DLL entrypoints; this is done by LdrInitializeThunk.
1714 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
1715 DLLs in initialization order; take the loader lock before
1716 calling.
1717
1718 2002-08-09 David Welch <welch@computer2.darkstar.org>
1719
1720 * apps/tests/thread/thread.c (main): Test suspend and
1721 resume functionality.
1722
1723 2002-08-08 David Welch <welch@computer2.darkstar.org>
1724
1725 * ntoskrnl/mm/section (NtQuerySection): Return the
1726 right result length.
1727
1728 2002-08-08 David Welch <welch@computer2.darkstar.org>
1729
1730 * ntoskrnl/ke/usertrap.c (print_user_address): Check for
1731 a NULL LDR structure in the PEB; copy the LDR pointer in
1732 safely.
1733
1734 2002-08-08 David Welch <welch@computer2.darkstar.org>
1735
1736 * ntoskrnl/ke/apc.c (KiDeliverUserApc): Deliver all present
1737 APCs; release the APC spinlock while acccessing user memory.
1738
1739 2002-08-08 David Welch <welch@computer2.darkstar.org>
1740
1741 * include/internal/ps.h: Adjusted offsets into the ETHREAD
1742 structure.
1743 * include/internal/ps.h: Removed redundant members from the
1744 KTHREAD structure.
1745 * ntoskrnl/ke/kthread.c (KeInitializeThread): Removed
1746 redundant members from the KTHREAD structure.
1747
1748 2002-08-08 David Welch <welch@computer2.darkstar.org>
1749
1750 * ntoskrnl/dbg/kdb.c (KdbEnterDebuggerException): New
1751 function to enter the debugger on an exception.
1752 * ntoskrnl/kd/kdebug.c (KdInitSystem): Initialize the
1753 local kernel debugger if enabled.
1754 * ntoskrnl/ke/catch.c (KiDispatchException): Enter the
1755 local kernel debugger on an exception.
1756
1757 2002-08-08 David Welch <welch@computer2.darkstar.org>
1758
1759 * include/ntdll/ldr.h: Added definition for a DLL entrypoint.
1760 * lib/kernel32/process/create.c (KlCreateFirstThread): Put
1761 the argument to the NtProcessStartup function on the stack.
1762 * lib/kernel32/process/create.c (KlInitPeb): Read the
1763 base address of the new image from the PEB.
1764 * lib/kernel32/process/create.c (CreateProcessW): Start the
1765 first thread at the entrypoint of the new image.
1766 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): If the
1767 function is called after the initial startup then just call the
1768 entrypoints for the loaded DLLs with DLL_THREAD_ATTACH. Don't
1769 call the entrypoint of the image.
1770 * lib/ntdll/rtl/process.c (RtlpCreateFirstThread): Put the
1771 argument to the NtProcessStartup function on the stack.
1772 * lib/ntdll/rtl/process.c (KlInitPeb): Read the base address of
1773 the new image from the PEB.
1774 * lib/ntdll/rtl/process.c (RtlCreateUserProcess): Start the
1775 first thread at the entrypoint of the new image.
1776 * ntoskrnl/ke/i386/bthread.S (PsBeginThreadWithContextInternal):
1777 Use the system call path to begin a usermode thread.
1778 * ntoskrnl/ke/i386/thread.c (Ke386InitThreadWithContext): Convert
1779 the supplied context into a trap frame.
1780 * ntoskrnl/ldr/init.c (LdrLoadInitialProcess): Put the PEB argument
1781 to the NtProcessStartup function on the new stack; start the
1782 first thread at the entrypoint of the image.
1783 * ntoskrnl/ps/create.c (NtCreateThread): Create an APC to call
1784 LdrInitializeThunk in the context of a new thread before its
1785 entrypoint.
1786
1787 2002-08-08 David Welch <welch@computer2.darkstar.org>
1788
1789 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Uninitialise
1790 the cache on file cleanup.
1791 * drivers/fs/vfat/fcb.c (vfatReleaseFcb): Don't uninitialise
1792 the cache on file close.
1793 * ntoskrnl/cc/copy.c: Renamed zero page global variable.
1794 * ntoskrnl/cc/view.c: Added cache delete function.
1795
1796 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
1797
1798 * rules.mak (RSYM): Define.
1799 * include/ddk/zwtypes.h (DebugDbgLoadSymbols): Add to enum
1800 _DEBUG_CONTROL_CODE.
1801 * include/ntdll/ldr.h (LDR_SYMBOL_INFO, LdrpLoadUserModuleSymbols): Add.
1802 (LdrLoadModuleSymbols): Remove.
1803 * include/ntos/kdbgsyms.h (ST_FILENAME, ST_FUNCTION,
1804 ST_LINENUMBER): Add.
1805 (SYMBOL). Make Name an ANSI_STRING.
1806 (IMAGE_SYMBOL_INFO, AreSymbolsParsed): Add.
1807 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
1808 LdrpLoadUserModuleSymbols() not LdrLoadModuleSymbols().
1809 * lib/ntdll/ldr/utils.c (LdrLoadModuleSymbols): Rename to
1810 LdrpLoadUserModuleSymbols.
1811 (LdrpLoadUserModuleSymbols): Use DebugDbgLoadSymbols debug control code.
1812 (LdrLoadDll): assert if out of memory.
1813 (LdrLoadDll): Call
1814 LdrpLoadUserModuleSymbols(), not LdrLoadModuleSymbols().
1815 * lib/ntdll/string/ctype.c (_pctype): #undef.
1816 * ntoskrnl/dbg/dbgctrl.c (NtSystemDebugControl): Call
1817 LdrLoadUserModuleSymbols on DebugDbgLoadSymbols.
1818 * ntoskrnl/include/internal/ldr.h (LdrGetAddressInformation): Add.
1819 * ntoskrnl/include/internal/module.h (MODULE_TEXT_SECTION): Make SymbolInfo
1820 an IMAGE_SYMBOL_INFO.
1821 * ntoskrnl/ke/i386/exp.c (LdrGetAddressInformation): Add prototype.
1822 (print_address): Change #ifdef KDBG to #ifdef DBG.
1823 (KiDoubleFaultHandler, KiDumpTrapFrame, KeDumpStackFrames): Dump
1824 one stack frame per line.
1825 * ntoskrnl/ke/i386/multiboot.S: Create pagetables for more kernel
1826 address space so larger modules can be passed from the boot loader.
1827 * ntoskrnl/ke/i386/usertrap.c (LdrGetAddressInformation): Add prototype.
1828 (print_user_address): Print symbols using LdrGetAddressInformation().
1829 * ntoskrnl/ldr/loader.c (SYMBOLFILE_HEADER, IMAGE_SYMBOL_INFO_CACHE,
1830 STAB_ENTRY, N_FUN, N_SLINE, N_SO, SymbolListHead): Add.
1831 (TAG_SYM_BUF): Remove.
1832 (LdrInitDebug): Remove unneeded code.
1833 (LdrInit1): Prepare for loading symbols.
1834 (LdrpReadLine, HexL, LdrpParseLine, LdrpLoadModuleSymbolsFromBuffer,
1835 LdrpLoadUserModuleSymbolsFromBuffer): Remove.
1836 (LdrpParseImageSymbols, LdrpGetFileName, LdrpGetFunctionName,
1837 LdrpGetLineNumber, LdrGetAddressInformation, LdrpLookupUserSymbolInfo): Add.
1838 (LdrpLoadModuleSymbols, LdrInitializeBootStartDriver): Change to use new
1839 symbol structures.
1840 (LdrLoadUserModuleSymbols): Cache symbol buffers.
1841 (LdrUnloadModuleSymbols): Implement.
1842 (LdrLoadModule, LdrUnloadModule): Change #ifdef KDBG to #ifdef DBG.
1843 (LdrPEProcessModule): Split a line into two lines.
1844 (LdrPEProcessModule): Setup for loading symbols.
1845 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Open with FILE_SHARE_READ.
1846 * ntoskrnl/ps/process.c (PiFreeSymbols): Call LdrUnloadModuleSymbols() to
1847 free symbols.
1848 (PiDeleteProcess): Change #ifdef KDBG to #ifdef DBG.
1849 * ntoskrnl/rtl/ctype.c (_pctype): #undef.
1850 * ntoskrnl/rtl/string.c (strncpy): Terminate destination string.
1851 * tools/Makefile (rsym): Add target.
1852 * tools/helper.mk: Include config and use -g if DBG = 1.
1853
1854 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
1855
1856 * Makefile (install_before): Install system.hiv to correct location.
1857
1858 2002-07-04 David Welch <welch@computer2.darkstar.org>
1859
1860 * subsys/win32k/include/callback.h: Fixed callback argument
1861 definitions.
1862 * subsys/win32k/ntuser/winpos.c: Implemented some more of the windows
1863 sizing/moving code.
1864 * subsys/win32k/ntuser/painting.c: Implemented some more of the
1865 window painting code.
1866 * subsys/win32k/objects/coord.c: Implemented LPtoDP and DPtoLP.
1867 * subsys/win32k/objects/region.c: Added stubs for some more
1868 region functions.
1869
1870 2002-07-04 David Welch <welch@computer2.darkstar.org>
1871
1872 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the
1873 process desktop handle as well.
1874
1875 2002-07-04 David Welch <welch@computer2.darkstar.org>
1876
1877 * ntoskrnl/se/token.c: Don't call the ZwXXX variant of
1878 system calls when in system context.
1879
1880 2002-07-04 David Welch <welch@computer2.darkstar.org>
1881
1882 * ntoskrnl/Makefile: Added file with MDA output code.
1883 * ntoskrnl/kd/kdebug.c: Recognize MDA as a destination for
1884 debug output.
1885
1886 2002-07-04 David Welch <welch@computer2.darkstar.org>
1887
1888 * lib/user32/windows/defwnd.c: Implemented some more of the
1889 default window handler.
1890
1891 2002-07-04 David Welch <welch@computer2.darkstar.org>
1892
1893 * lib/user32/misc/stubs.c: Removed some stubs to seperate files.
1894
1895 2002-07-04 David Welch <welch@computer2.darkstar.org>
1896
1897 * lib/user32/user32.def: Export ScreenToClient otherwise we
1898 get problems when code in user32 tries to call it.
1899
1900 2002-07-04 David Welch <welch@computer2.darkstar.org>
1901
1902 * include/win32k/region.h: Added prototypes for some missing
1903 region functions.
1904
1905 2002-07-04 David Welch <welch@computer2.darkstar.org>
1906
1907 * include/win32k/ntuser.h: Added prototypes for some missing
1908 NtUserXXX functions.
1909
1910 2002-07-04 David Welch <welch@computer2.darkstar.org>
1911
1912 * include/user32/wininternal.h: Added some constants for
1913 private GetDCEx styles that WINE needs.
1914
1915 2002-07-04 David Welch <welch@computer2.darkstar.org>
1916
1917 * include/user32/callback.h: Fixed callbacks for messages with
1918 parameters.
1919
1920 2002-07-04 David Welch <welch@computer2.darkstar.org>
1921
1922 * include/napi/win32.h (W32THREAD): Added pointer to the
1923 thread's desktop.
1924 * include/napi/win32.h (W32PROCESS): Removed handle table,
1925 added a pointer to the process's window station.
1926 * subsys/win32k/ntuser/guicheck.c (W32kGuiCheck): Reference
1927 a process's window station on the first win32k system call. Reference
1928 a thread's desktop on the first win32k system call.
1929
1930 2002-07-04 David Welch <welch@computer2.darkstar.org>
1931
1932 * include/messages.h: Added some missing WM_XXX constants.
1933
1934 2002-07-04 David Welch <welch@computer2.darkstar.org>
1935
1936 * drivers/dd/ide/makefile: Compiling with debugging messages
1937 needs libgcc to be linked in.
1938
1939 2002-07-04 David Welch <welch@computer2.darkstar.org>
1940
1941 * iface/addsys/genw32k.c: Generate a variable with the
1942 number of system calls.
1943 * iface/native/genntdll.c: Generate a proper stack frame for
1944 the user system call stubs.
1945 * ntoskrnl/ke/i386/syscall.S: Generate a proper stack frame for
1946 the handler for system calls.
1947
1948 2002-07-04 David Welch <welch@computer2.darkstar.org>
1949
1950 * Makefile: Build the GUI startup application.
1951 * subsys/system/gstart/gstart.c: Application to start up
1952 the GUI.
1953
1954 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1955
1956 * tools/helper.mk: Make an import library a proper target
1957 depending on the .def file.
1958
1959 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1960
1961 * subsys/win32k/ntuser/window.c (NtUserGetWindowLong): Began
1962 implementation.
1963
1964 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1965
1966 * subsys/win32k/misc/object.c (ObmCreateHandle): Return the
1967 correct handle value.
1968
1969 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1970
1971 * subsys/win32k/makefile: Make win32k depend on the file containing
1972 the service table.
1973
1974 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1975
1976 * ntoskrnl/ke/i386/stkswitch.S (KeSwitchStackAndRet,
1977 KePushAndStackSwitchAndSysRet): Push one value only.
1978 * ntoskrnl/ps/w32call.c (NtCallbackReturn, NtW32Call): Moved
1979 these functions to a new file. Restore the old trap frame after
1980 returning from a callback.
1981
1982 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1983
1984 * lib/user32/windows/message.c (CallWindowProcA, CallWindowProcW):
1985 Convert message to Unicode or ASCII if necessary.
1986
1987 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1988
1989 * include/user32/callback.h: Added WM_CREATE and WM_NCCALCSIZE
1990 callbacks.
1991 * lib/user32/windows/window.c (User32SendCREATEMessageForKernel,
1992 User32SendNCCREATEMessageForKernel): Implemented.
1993 * subsys/win32k/ntuser/callback.c (W32kSendCREATEMessage):
1994 Implemented.
1995
1996 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1997
1998 * include/structs.h: Added Unicode and ASCII versions of
1999 CREATESTRUCT.
2000
2001 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2002
2003 * tools/helper.mk: Make the install target depend on all the
2004 files to be installed.
2005
2006 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2007
2008 * ntoskrnl/ps/thread.c (NtCallbackReturn): Set TSS.Esp0 to the
2009 top of the old stack.
2010 * ntoskrnl/ps/thread.c (NtW32Call): Set TSS.Esp0 to the top of
2011 the new stack. Free the callback stack correctly. Don't copy
2012 portion of the trap frame that doesn't exist in non-v86-mode
2013 interrupts.
2014 * ntoskrnl/ps/thread.c (PsFreeCallbackStack): New function to
2015 free a stack allocated with PsAllocateCallbackStack.
2016
2017 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2018
2019 * drivers/dd/null/makefile: Commented out local LDFLAGS as
2020 these cause bad relocations in the stripped image.
2021
2022 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2023
2024 * config: Corrected spelling error.
2025
2026 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2027
2028 * subsys/system/winlogon/winlogon.c (WinMain): Check for
2029 failure when creating a window system.
2030
2031 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2032
2033 * ntoskrnl/ob/handle.c (ObDuplicateObject): Added this internal
2034 function for duplicating objects.
2035 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the parent
2036 process's window station to the child process.
2037 * ntoskrnl/ps/process.c (PsInitProcessManagement): Initialize the
2038 first process's window station.
2039
2040 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2041
2042 * ntoskrnl/mm/marea.c (MmCreateMemoryArea): Initialise
2043 page operation structure members.
2044 * ntoskrnl/mm/pageop.c (MmReleasePageOp, MmGetPageOp): Increment
2045 or decrement the page operation count in the memory area.
2046 * ntoskrnl/mm/virtual.c (MmNotPresentFaultVirtualMemory,
2047 MmPageOutVirtualMemory): Check for a deleted memory area before
2048 handling the fault.
2049 * ntoskrnl/mm/virtual.c (MmFreeVirtualMemory): Wait for all
2050 page operations to finish before freeing the memory area.
2051
2052 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2053
2054 * ntoskrnl/ke/i386/syscall.S (interrupt_handler2e): Corrected
2055 test for previous mode, upper 16-bit of CS on the stack after an
2056 interrupt are arbitary.
2057
2058 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2059
2060 * lib/user32/misc/winsta.c: Cleaned up indentation.
2061
2062 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2063
2064 * apps/tests/winhello/winhello.c (WinMain, MainWndProc):
2065 Cleaned up formatting, some more error checks.
2066
2067 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2068
2069 * ntoskrnl/mm/virtual.c (MmSecureVirtualMemory,
2070 MmUnsecureVirtualMemory, NtQueryVirtualMemory): Corrected indentation.
2071
2072 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2073
2074 * ntoskrnl/ke/i386/exp.c (KiDoubleFaultHandler): Print CR3
2075 correctly.
2076
2077 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
2078
2079 * ntoskrnl/include/internal/ps.h: Added KTHREAD_STACK_LIMIT definition.
2080 * ntoskrnl/ke/i386/tskswitch.S (Ki386ContextSwitch): Force all the
2081 pages of the kernel stack to be accessible from this process.
2082
2083 2002-06-04 David Welch <welch@cwcom.net>
2084
2085 * ntoskrnl/cc/view.c (ReadCacheSegmentChain): Changes to use
2086 PHYSICAL_ADDRESS type for physical addresses.
2087 * ntoskrnl/cc/copy.c (CcRosCreateCacheSegment): Changes to use
2088 PHYSICAL_ADDRESS type for physical addresses.
2089 * ntoskrnl/cc/copy.c (CcFreeCachePage): Changes to use
2090 PHYSICAL_ADDRESS type for physical addresses.
2091 * ntoskrnl/include/internal/mm.h: Changed prototypes to use
2092 PHYSICAL_ADDRESS type for physical addresses.
2093 * ntoskrnl/include/internal/ps.h (KPROCESS): Changed type of
2094 page directory base to PHYSICAL_ADDRESS.
2095 * ntoskrnl/include/internal/i386/mm.h: Changed prototypes to use
2096 PHYSICAL_ADDRESS type for physical addresses.
2097 * ntoskrnl/ke/kthread.c (KeFreeStackPage): Changes to use
2098 PHYSICAL_ADDRESS type for physical addresses.
2099 * ntoskrnl/ke/kthread.c (KeInitializeThread): Changes to use
2100 PHYSICAL_ADDRESS type for physical addresses.
2101 * ntoskrnl/ke/process.c (KeAttachProcess, KeDetachProcess): Changes
2102 to use PHYSICAL_ADDRESS type for physical addresses.
2103 * ntoskrnl/ke/kernel.c (PcrPages, KeApplicationProcessorInit): Changes
2104 to use PHYSICAL_ADDRESS type for physical addresses.
2105 * ntoskrnl/mm/balance.c (MM_ALLOCATION_REQUEST): Changes to use
2106 PHYSICAL_ADDRESS type for physical addresses.
2107 * ntoskrnl/mm/balance.c (MmReleasePageMemoryConsumer): Changes to use
2108 PHYSICAL_ADDRESS type for physical addresses.
2109 * ntoskrnl/mm/balance.c (MmRequestPageMemoryConsumer): Changes to use
2110 PHYSICAL_ADDRESS type for physical addresses.
2111 * ntoskrnl/mm/cont.c (MmFreeContinuousPage): Changes to use
2112 PHYSICAL_ADDRESS type for physical addresses.
2113 * ntoskrnl/mm/cont.c (MmAllocateContinuousAlignedMemory): Changes to
2114 use PHYSICAL_ADDRESS type for physical addresses.
2115 * ntoskrnl/mm/freelist.c (MmTransferOwnershipPage,
2116 MmGetLRUFirstUserPage, MmGetLRUNextUserPage, MmGetContinuousPages,
2117 MmInitializePageList, MmSetFlagsPage, MmSetRmapListHeadPage,
2118 MmGetRmapListHeadPage, MmMarkPageMapped, MmMarkPageUnmapped,
2119 MmGetFlagsPage, MmSetSavedSwapEntryPage, MmGetSavedSwapEntryPage,
2120 MmReferencePage, MmGetReferenceCountPage, MmIsUsablePage,
2121 MmDereferencePage, MmGetLockCountPage, MmLockPage, MmUnlockPage,
2122 MmAllocPage): Changes to use PHYSICAL_ADDRESS type for physical
2123 addresses.
2124 * ntoskrnl/mm/iospace.c (MmMapIoSpace): Changes to use
2125 PHYSICAL_ADDRESS type for physical addresses.
2126 * ntoskrnl/mm/kmap.c (ExAllocatePage, MiZeroPage, MiCopyFromUserPage,
2127 ExAllocatePageWithPhysPage): Changes to use PHYSICAL_ADDRESS type for
2128 physical addresses.
2129 * ntoskrnl/mm/marea.c (MmFreeMemoryArea): Changes to use
2130 PHYSICAL_ADDRESS type for physical addresses.
2131 * ntoskrnl/mm/mdl.c (MmUnlockPages, MmMapLockedPages,
2132 MmProbeAndLockPages): Changes to use PHYSICAL_ADDRESS type for
2133 physical addresses.
2134 * ntoskrnl/mm/mm.c (MmSharedDataPagePhysicalAddress,
2135 MmCommitPagedPoolAddress, MmNotPresentFault): Changes to use
2136 PHYSICAL_ADDRESS type for physical addresses.
2137 * ntoskrnl/mm/mminit.c (MmInitVirtualMemory): Changes to use
2138 PHYSICAL_ADDRESS type for physical addresses.
2139 * ntoskrnl/mm/ncache.c (MmAllocateNonCachedMemory,
2140 MmFreeNonCachedPage): Changes to use PHYSICAL_ADDRESS type for
2141 physical addresses.
2142 * ntoskrnl/mm/npool.c (grow_kernel_pool): Changes to use
2143 PHYSICAL_ADDRESS type for physical addresses.
2144 * ntoskrnl/mm/rmap.c (MmPageOutPhysicalAddress, MmInsertRmap,
2145 MmDeleteAllRmaps, MmDeleteRmap): Changes to use
2146 PHYSICAL_ADDRESS type for physical addresses.
2147 * ntoskrnl/mm/section.c (MiReadPage, MmNotPresentFaultSectionView,
2148 MmAccessFaultSectionView, MmPageOutDeleteMapping,
2149 MmPageOutSectionView, MmFreeSectionPage): Changes to use
2150 PHYSICAL_ADDRESS type for physical addresses.
2151 * ntoskrnl/mm/slab.c (ExGrowSlabCache): Changes to use
2152 PHYSICAL_ADDRESS type for physical address.
2153 * ntoskrnl/mm/virtual.c (MmPageOutVirtualMemory,
2154 MmNotPresentFaultVirtualMemory, MmFreeVirtualMemoryPage): Changes to
2155 use PHYSICAL_ADDRESS type for physical address.
2156 * ntoskrnl/mm/wset.c (MmTrimUserMemory): Changes to use
2157 PHYSICAL_ADDRESS type for physical address.
2158 * ntoskrnl/mm/page.c (Mmi386ReleaseMmInfo, MmCopyMmInfo,
2159 MmGetPhysicalAddressForProcess, MmCreateVirtualMapping,
2160 MmCreateVirtualMappingUnsafe, MmCreateVirtualMappingForProcess,
2161 MmDeleteVirtualMapping): Changes to use PHYSICAL_ADDRESS type for
2162 physical address.
2163 * ntoskrnl/ps/process (PsInitProcessManagment): Changes to use
2164 PHYSICAL_ADDRESS type for physical address.
2165 * ntoskrnl/ps/thread.c (PsAllocateCallbackStack): Changes to use
2166 PHYSICAL_ADDRESS type for physical address.
2167
2168 2002-06-04 David Welch <welch@cwcom.net>
2169
2170 * Lots of change since the ChangeLog was last updated.
2171
2172 2001-03-18 David Welch <welch@cwcom.net>
2173
2174 * ntoskrnl/ke/apc.c (KiDeliverApc): Bug fix.
2175 * ntoskrnl/ke/apc.c (KeInsertQueueApc): More comments.
2176 * ntoskrnl/ke/catch.c (KiDispatchException): Bug fix.
2177 * ntoskrnl/ke/timer.c (KeDelayExecutionThread): Don't use removed
2178 function KeAddTimeoutThread.
2179 * ntoskrnl/ke/timer.c (KeAddTimeoutThread): Removed.
2180 * ntoskrnl/ke/wait.c (KeWaitForSingleObject, KeWaitForMultipleObjects):
2181 Don't use KeAddTimeoutThread.
2182 * ntoskrnl/mm/freelist.c (MmAllocateContiguousAlignedMemory): Bug fix
2183 * ntoskrnl/mm/freelist.c (MmAllocatePage): Allocate from the top
2184 memory.
2185
2186 2001-03-17 David Welch <welch@cwcom.net>
2187
2188 * ntoskrnl/ke/catch.c (KiDispatchException): Implementation of
2189 exception handling, user-mode only.
2190
2191 2001-03-16 David Welch <welch@cwcom.net>
2192
2193 * include/ddk/zw.h: Corrected declarations of NtCreateProfile,
2194 NtQueryIntervalProfile, NtSetIntervalProfile.
2195 * include/ddk/zwtypes.h: Added definitions of KPROFILE_SOURCE.
2196 * ntoskrnl/include/internal/ke.h: Added the interrupted EIP as a
2197 parameter to KiUpdateSystemTime for profiling purposes.
2198 * ntoskrnl/include/internal/nt: Added declaration for profiling
2199 support initialization.
2200 * ntoskrnl/ke/timer.c (KiUpdateSystemTime, KeExpireTimers): Call
2201 the profiling code on a timer interrupt with the interrupt EIP.
2202 * ntoskrnl/ke/i386/irq.c (KiDispatchInterrupt): Pass the interrupted
2203 EIP to KiUpdateSystemTime.
2204 * ntoskrnl/mm/virtual.c (NtReadVirtualMemory, NtWriteVirtualMemory):
2205 Release the MDLs used properly.
2206 * ntoskrnl/nt/nt.c: Call the profiling support initialization.
2207 * ntoskrnl/nt/ntevent.c (NtCreateEvent): Don't try copying the
2208 ObjectAttributes parameter if it is NULL.
2209 * ntoskrnl/nt/profile.c: Implemented profiling.
2210
2211 2001-03-16 David Welch <welch@cwcom.net>
2212
2213 * ntoskrnl/include/internal/safe.h: Corrected typo.
2214 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtQueryEvent):
2215 Corrected typos.
2216 * ntoskrnl/rtl/mem.c: Missing header file.
2217
2218 2001-03-16 David Welch <welch@cwcom.net>
2219
2220 * ntoskrnl/include/internal/safe.h: Add definitions for handling
2221 potentially unsafe pointers.
2222
2223 2001-03-16 David Welch <welch@cwcom.net>
2224
2225 * ntoskrnl/include/internal/mm.h: Removed MmSafeCopyToUser and
2226 MmSafeCopyFromUser as source files need these but don't want internal
2227 mm definitions.
2228 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtPulseEvent,
2229 NtQueryEvent, NtResetEvent, NtSetEvent): Copy data to and from
2230 user mode safely.
2231 * ntoskrnl/rtl/mem.c (MmCopyToCaller, MmCopyFromCaller): Helper
2232 functions for copying data to and from potentially unsafe pointers.
2233
2234 2000-12-23 David Welch <welch@cwcom.net>
2235
2236 * All task switching is done in software.
2237 * Beginnings of v86 mode support.
2238
2239 2000-12-22 David Welch <welch@cwcom.net>
2240
2241 * ntoskrnl/ps/kill.c (PiTerminateProcessThreads): Drop
2242 PiThreadListLock before calling PsTerminateOtherThread
2243
2244 2000-12-16 David Welch <welch@cwcom.net>
2245
2246 * ntoskrnl/ex/fmutex.c (ExReleaseFastMutexUnsafe): Only set the
2247 fast mutex's owner back to NULL if it is being released
2248
2249 2000-12-10 David Welch <welch@cwcom.net>
2250
2251 * ntoskrnl/ke/i386/vm86_sup.S (Ki386RetToV86Mode): Added function
2252 to do the raw switch to v86 mode.
2253 * ntoskrnl/include/internal/vm86.h: Definitions for the v86 mode
2254 support.
2255
2256 2000-12-10 David Welch <welch@cwcom.net>
2257
2258 * ntoskrnl/ke/i386/trap.s (PsBeginThreadWithContextInternal): Moved
2259 to ntoskrnl/ke/i386/bswitch.S.
2260 * ntoskrnl/ke/i386/trap.s (interrupt_handler2e): Moved to
2261 ntoskrnl/ke/i386/syscall.S.
2262 * ntoskrnl/ke/i386/trap.s (old_interrupt_handler2e): Removed.
2263
2264 2000-12-04 David Welch <welch@cwcom.net>
2265
2266 * ntoskrnl/ke/i386/irq.c (KiInterruptDispatch): Record the last PC
2267 value for a rescheduled thread.
2268 * ntoskrnl/ke/i386/irqhand.s: Construct a primitive trap frame
2269 in interrupt handlers.
2270
2271 2000-08-30 David Welch <welch@cwcom.net>
2272
2273 * Added calibration of KeStallExecutionProcessor timing
2274 (code from linux 2.2.16).
2275
2276 * Corrected compilation bugs in user32 library.
2277
2278 * Corrected compilation bugs related to anonymous structs
2279 in ndis code.
2280
2281 * Pass command line to kernel from loadros.
2282
2283 * Corrected PIC mask calculation.
2284
2285 2000-05-27 David Welch <welch@cwcom.net>
2286
2287 * Fixed issue with closing non-existent or already closed
2288 handle.
2289
2290 2000-01-26 David Welch <welch@cwcom.net>
2291
2292 * ZwCreateProcess now maps ntdll rather than the user-mode
2293 code.
2294
2295 1999-09-06 David Welch <welch@cwcom.net>
2296
2297 * Implemented ZwOpenProcess.
2298
2299 * Partially implemented killing other threads (possible memory
2300 leaks).
2301
2302 * Made a start on a proper implemention of APCs (based on
2303 article in NT insider).
2304
2305 1998-12-08 David Welch <welch@cwcom.net>
2306
2307 * Corrected bug in shell (Read two keypresses and assumed they
2308 where the key going up and down respectively).
2309
2310 * Corrected race in dpc handling.
2311
2312 * Took out cleanup sections in ZwReadFile (now handled by the
2313 APC).
2314
2315 * Disabled broken code in kernel32.
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325