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