Commit graph

31706 commits

Author SHA1 Message Date
ReactOS Portable Systems Group b1e617cc6f - Write out all the IOCTLs the RAM Disk emulation core needs to handle.
- Looks like the React CDFS driver behaves very differently from the NT CDFS driver.


svn path=/trunk/; revision=34608
2008-07-20 16:13:19 +00:00
Matthias Kupfer ba074059a5 Mario Kacmar <kario AT szm DOT sk>
- Slovak translation of several inf-files
- See #3518 for more details.

svn path=/trunk/; revision=34607
2008-07-20 14:58:35 +00:00
Matthias Kupfer 54ca4c3d3b - again, one more fix of damaged inf files
- please take care when committing this utf-16 files

svn path=/trunk/; revision=34606
2008-07-20 14:52:15 +00:00
ReactOS Portable Systems Group 9da9409da6 - Unlike NT, it seems React has a bug and does not automatically load the boot FS driver regardless of start type.
svn path=/trunk/; revision=34605
2008-07-20 06:36:27 +00:00
ReactOS Portable Systems Group 7158e5bfa9 - Fix the parameters we were sending to IoCreateDevice for our drive FDO.
- Now the kernel attempts to mount us through CDFS!
- Start stubbing the work we'll need to do in RamdiskDeviceControl -- this is where the emulation magic will happen.

svn path=/trunk/; revision=34604
2008-07-20 06:32:23 +00:00
ReactOS Portable Systems Group 3a6f964385 - Ramdisk doesn't seem to work yet, we're not getting properly initialized yet.
- We end up crashing in CcRosTryToInitialzeFileCache because there is no SectionObjectPointer, and it is assumed this always exists.
- We need to verify if this is truly the case -- in either case, add an ASSERT, since all assumptions should be ASSERTed!

svn path=/trunk/; revision=34603
2008-07-20 04:40:27 +00:00
ReactOS Portable Systems Group 14ea158446 - Finish implementing RamdiskCreateDiskDevice -- we should now have a working ramdisk drive that should receive read/write requests.
svn path=/trunk/; revision=34602
2008-07-20 04:39:01 +00:00
ReactOS Portable Systems Group 54694096a1 - Looks like this FIXME was fixed.
svn path=/trunk/; revision=34601
2008-07-20 04:38:26 +00:00
Art Yerkes 5ba974a93f Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
- Fixes some issues with releasing locks
- Verify that we have an MDL before trying to unlock it

svn path=/trunk/; revision=34600
2008-07-20 04:33:53 +00:00
Sylvain Petreolle f2db1bc11f french translation for media/inf files
svn path=/trunk/; revision=34598
2008-07-20 00:44:09 +00:00
ReactOS Portable Systems Group df5fe4469c - Fixup some more structure and prototype details to make more sense.
- Start building the drive FDO extension by capturing most of the input data and our strings.

svn path=/trunk/; revision=34597
2008-07-19 22:42:18 +00:00
ReactOS Portable Systems Group 1176b541f6 - Create the RAM Disk Drive Device Object.
- Create the name for it, based on the GUID sent by the kernel.
- Create the DOS Device Symbolic Link if requested and if possible.
- Create the DOS Drive Letter if requested.
- (drivers/storage/class/ramdisk/ramdisk.c:440) Creating symbolic link: \DosDevices\C: to \Device\Ramdisk{d9b257fc-684e-4dcb-79ab-f6a2cf0350b7}
- Need to continue implementing..


svn path=/trunk/; revision=34596
2008-07-19 22:21:38 +00:00
ReactOS Portable Systems Group 8ee4e020f8 - Implement the main RamdiskWorkerThread work loop.
- Now we have to implement RamdiskCreateDiskDevice for real.

svn path=/trunk/; revision=34594
2008-07-19 21:19:41 +00:00
ReactOS Portable Systems Group 71bada1343 - We break your build, you break ours...
svn path=/trunk/; revision=34593
2008-07-19 21:04:31 +00:00
ReactOS Portable Systems Group 5bcb1c6a0e - Usually a good idea to fill out the device relation count instead of leaving it uninitailized to 2 billion.
- Fixes all the ramdisk problems -- need to implement RamdiskWorkerThread now.

svn path=/trunk/; revision=34592
2008-07-19 20:57:31 +00:00
ReactOS Portable Systems Group 46eda1013c - No, it isn't "ramdisk" that's misbehaving, it's your code. PnP needs to handle BusRelations instead of ignoring them.
svn path=/trunk/; revision=34591
2008-07-19 20:55:49 +00:00
ReactOS Portable Systems Group 910b3242e7 - It doesn't make sense to dereference an I/O Work Item... did you perhaps mean to dereference the device object?
- Fixes a crash when IoInvalidateRelations is called, as well as a reference leak.


svn path=/trunk/; revision=34590
2008-07-19 20:52:52 +00:00
ReactOS Portable Systems Group fd5bd1942d - Seperate the Ramdisk device extension into the Bus Device Extension and the Drive Device Extension.
- Rename the device types to Bus vs Drive, not FDO vs PDO (they're both FDOs).
- Use a common extension (the first 0x60 bytes or so) between Bus and Drive devices.
- Implement first pass of RamdiskCreateDiskDevice -- doesn't create anything, just validates the parameters.
- Implement our delayed work queue for handling requests asynchronously -- SendIrpToThread. Doesn't do anything for now.
- Implement RamdiskQueryDeviceRelations... not sure if we're doing the right thing. According to PnP, we get a warning that we are "misbehaving".
- Driver seems to crash right now, needs fixes.
- Some reformatting to make more lines fit inside 80 characters so it looks nice in joe.


svn path=/trunk/; revision=34589
2008-07-19 18:44:31 +00:00
Matthias Kupfer aa4af5693a Display of ReactOS bitmap implemented.
svn path=/trunk/; revision=34588
2008-07-19 17:20:20 +00:00
Pierre Schweitzer 909b7f0308 Fixed i386 build
svn path=/trunk/; revision=34586
2008-07-19 08:04:47 +00:00
ReactOS Portable Systems Group 49de00587a - Implement DebugService2, but don't make it do anything yet.
- Add ATTEMPTED_SWITCH_FROM_DPC bugcheck code.


svn path=/trunk/; revision=34585
2008-07-19 06:53:36 +00:00
ReactOS Portable Systems Group c0cde8777b - Enable interrupts after probing and capturing parameters during a system call.
- Enable WFI during idle loop.
- Implement undefined exception handler, and get rid of reserved exception code -- this will never happen except for an SoC bug.
- Request an APC interrupt if the new thread we context switched to has APCs pending and enabled.
- Perform DPC watchdog debugging code if a DPC lasted more than a second.
- Do the appropriate bugcheck if DPCs are active during a context switch.
- Go over the FIXMEs in the assembly files too, and create a new FIXME-PERF category.


svn path=/trunk/; revision=34584
2008-07-19 06:53:03 +00:00
ReactOS Portable Systems Group b95845bf85 - Cleanup some stray header issues for ARM.
- Separate kernel FIXMEs into clearer groupings:
  - TODO FIXMEs are highest priority, as they are missing required functionality.
  - USER FIXMEs are the next highest priority, since they will be required for user mode support.
  - V6 FIXMEs and future groupings are lowest priority, since they relate to hardware support we don't care about for now.


svn path=/trunk/; revision=34583
2008-07-19 06:13:10 +00:00
James Tabor 7272eb9108 Move NUMC defines to FNIDs.
svn path=/trunk/; revision=34582
2008-07-19 03:49:48 +00:00
Timo Kreuzer 8bbca850f6 RtlpCreateCriticalSectionSem: use InterlockedCompareExchangePointer instead of InterlockedCompareExchange for a handle
svn path=/trunk/; revision=34581
2008-07-18 23:47:33 +00:00
Matthias Kupfer 8fddba3256 Mario Kacmar <kario AT szm DOT sk>
- Enhancement for basic Slovak keyboard layout added.
- See #1251 for more details.

svn path=/trunk/; revision=34580
2008-07-18 21:08:52 +00:00
Matthias Kupfer 98ecafb85f Mario Kacmar <kario AT szm DOT sk>
- Enhancement for Slovak keyboard layout (QWERTY) added.
- See #3528 for more details.

svn path=/trunk/; revision=34579
2008-07-18 21:05:40 +00:00
Matthias Kupfer 820054b030 Mario Kacmar <kario AT szm DOT sk>
- Slovak and Czech translation of several rc-files
- See #3519 for more details.

svn path=/trunk/; revision=34578
2008-07-18 20:58:09 +00:00
Klemens Friedl 50147b7f55 * update GUI interface, according to http://www.reactos.org/wiki/index.php/First_Stage_GUI_Setup
svn path=/trunk/; revision=34576
2008-07-18 19:35:03 +00:00
James Tabor ce85b4a0f3 Update WinUser, CWPRETSTRUCT and MOUSEHOOKSTRUCTEX.
svn path=/trunk/; revision=34575
2008-07-18 18:09:12 +00:00
Art Yerkes 747d575347 Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
- Reenable spinlocks in MiniIndicateData
- Don't raise IRQL when calling MiniDoRequest

svn path=/trunk/; revision=34574
2008-07-18 11:19:29 +00:00
Matthias Kupfer 11f2456fdf - gui template for 1st stage setup, english only
- implemented, but still disabled - it's work in progress

svn path=/trunk/; revision=34572
2008-07-18 09:07:54 +00:00
Stefan Ginsberg 90f3efacc5 - Patch from Samuel "encoded" Serapion (samdwise51 at gmail dot com)
- Use "size_t" instead of "unsigned int" where appropriate

svn path=/trunk/; revision=34570
2008-07-17 22:25:03 +00:00
Stefan Ginsberg 7c9bd27915 - Fix a typo in the DC_ATTR structure: mxDevicetoWorld -> mxDeviceToWorld
svn path=/trunk/; revision=34569
2008-07-17 21:54:40 +00:00
Jeffrey Morlan b4db43fa7b Clean up console code a bit:
- Get/SetConsoleTitle: Get rid of unnecessary handle creation; instead, just have csrss get the console from the ProcessData.
- Instead of using ShowX/ShowY to store the origin of the buffer, use the VirtualX member that was put there for this purpose. Rename it to VirtualY, though, since it's a row number. ShowX/ShowY should hold the position of the visible window, once that's implemented.
- From the CSRSS_CONSOLE structure: remove hActiveBuffer (redundant), CodePageId (unused), and hWindowIcon (only used as a temporary)
- Make cursor coordinates be "logical", not "physical". This simplifies various things.
- ConioConsoleFromProcessData: If process has no console, return STATUS_INVALID_HANDLE; don't pretend to succeed (causing many functions to access memory around address 0, which is probably not a good thing). Remove various Console != NULL checks which are now unnecessary.

svn path=/trunk/; revision=34568
2008-07-17 21:53:39 +00:00
Art Yerkes ecdd55845d Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
- Don't mess with cancelled IRPs
- Don't attempt to cancel an already cancelled IRP
- Unmap MDL when then IRP gets completed

svn path=/trunk/; revision=34567
2008-07-17 19:42:26 +00:00
Jeffrey Morlan 846c750785 Fix argument parsing for label command. It should not split the arguments by spaces; on Windows you can do 'label c:x y z' and it will set the label to X Y Z. (Bug 3530 #2)
svn path=/trunk/; revision=34566
2008-07-17 16:46:09 +00:00
Stefan Ginsberg c7ed95cb55 - Patch by Cameron Gutman aicommander <at> gmail <dot> com
- Don't release the device spinlock twice if KeSynchronizeExecution returns false
See issue #3520 for more details.

svn path=/trunk/; revision=34564
2008-07-17 14:43:36 +00:00
Stefan Ginsberg 03c3603a3d -PCHify OpenGL32
svn path=/trunk/; revision=34562
2008-07-17 11:37:49 +00:00
Christoph von Wittich 30feb7b285 fix for getaddrinfo
patch by Yuri Sidorov <jura at cp-lab dot com>

svn path=/trunk/; revision=34560
2008-07-17 08:07:37 +00:00
Jeffrey Morlan c1e4ff95a4 - CsrReleaseObject: Fix locking to prevent possibility of closing the same handle twice.
- GuiConsolePaint: Clip the paint area to the screen buffer, to stop heap corruption if the window gets oversized.
- ConioDeleteConsole: Do decrement the active screen buffer's refcount, but only after calling ConioCleanupConsole to destroy the window.
- Remove Win32CsrInsertObject. This function did two unrelated things (initialize lock and create handle), but in the only place it was used (CsrCreateScreenBuffer) the lock had already been initialized in CsrInitConsoleScreenBuffer, so this use was erroneous.
- Rename Win32CsrInsertObject2 (creates handle only) to Win32CsrInsertObject.

svn path=/trunk/; revision=34559
2008-07-16 23:16:40 +00:00
Colin Finck f776a00eeb Commit my test suite I used for verifying the behaviours of wctomb, wcstombs and WideCharToMultiByte and writing the reimplementations for ReactOS on request of Stefan
svn path=/trunk/; revision=34558
2008-07-16 22:08:58 +00:00
Colin Finck 248d39652c - Remove 2 wrong versions of wctomb and 2 wrong versions of wcstombs
- Implement new versions of wctomb and wcstombs, which consider the language set by setlocale() and work according to all behaviours I could find when testing under WinXP SP2.
  This was tested with an own test suite (which I can commit as well if anyone is interested)
- Do a real conversion to MultiByte characters using wctomb in fputwc and vfwprintf. (verified under WinXP SP2)
- Set 'MSVCRT___lc_codepage' and 'MSVCRT___lc_collate_cp' to 1252 by default ("C" locale) and not the current active codepage (which might not work with i.e. Eastern codepages)
- Add a new check for 'MultiByteCount < 0' to WideCharToMultiByte (also verified under WinXP SP2)
- Change MB_LEN_MAX back to 2, the value 5 only applies to newer CRT's (msvcrt only handles single-byte and double-byte characters)
- Don't compile the Wine-imported 'wcscpy_s', it isn't available in msvcrt

svn path=/trunk/; revision=34557
2008-07-16 21:40:09 +00:00
Matthias Kupfer d37dc48ec3 add new Slovak keyboard layout to first stage setup list
svn path=/trunk/; revision=34556
2008-07-16 21:21:21 +00:00
Timo Kreuzer ea50e3e05c FLOATOBJ is a structure only on x86 in kernelmode, for usermode drivers and other architectures it's a FLOAT. Update winddi.h accordingly.
svn path=/trunk/; revision=34555
2008-07-16 21:12:27 +00:00
Timo Kreuzer a5e5e742fd Patch by Stefan Ginsberg:
- remove XFORM members from DC structure and use MATRIX instead. Use MatrixS2XForm and XForm2MatrixS for intermediate conversion.
- this is a temporary solution (still using fpu) until I'm finished with FLOATOBJ rewrite + XFOROMOBJ api (soon)

svn path=/trunk/; revision=34554
2008-07-16 20:16:30 +00:00
Timo Kreuzer a8f3f89717 DC_AllocDc:
- Set DC's iGraphicsMode to GM_COMPATIBLE when creating a DC
NtGdiRectangle:
- only exclude bottom/right pixels if dc is GM_COMPATIBLE
- fix indentation

svn path=/trunk/; revision=34553
2008-07-16 19:48:19 +00:00
Timo Kreuzer 4a5e93fab1 Add MATRIX accelerator flag MX_SCALE and set it in XForm2MatrixS, when off-diagonal elements are zero.
svn path=/trunk/; revision=34552
2008-07-16 18:57:23 +00:00
James Tabor 816777c79a - Fix CurrentWnd when it has a NULL, see Bug 3527.
svn path=/trunk/; revision=34550
2008-07-16 16:12:44 +00:00
Aleksey Bragin 2557cd7a1e Dmitry Gorbachev
- Fix a problem in VgaIsPresent: Content of the Address Register goes to the Data Register, and vice versa. It also writes content of the Map Select Register (which is number 4) into the Bit Mask Register (number 8).
See issue #2125 for more details.

svn path=/trunk/; revision=34549
2008-07-16 16:02:32 +00:00