Commit graph

31706 commits

Author SHA1 Message Date
ReactOS Portable Systems Group 6c50287599 - Initialize BytesPerSector, SectorsPerTrack and NumberOfHeads to zero.
- Calculate number of cylinders too now.
- Save number of hidden sectors as well.
- Implement support for IOCTL_DISK_GET_PARTITION_INFO (RamdiskGetPartitionInfo).
- Implement support for IOCTL_DISK_GET_DRIVE_GEOMETRY (shared with IOCTL_CDROM_GET_GEOMETRY, IOCTL_STORAGE_GET_MEDIA_TYPES and IOCTL_DISK_GET_MEDIA_TYPES)
- DiskLength should be a LARGE_INTEGER.
- DiskOffset should be signed.


svn path=/trunk/; revision=34666
2008-07-22 08:52:18 +00:00
ReactOS Portable Systems Group c61f672499 - We have to unpack the BIOS block before actually reading it.
- Now we correctly read 512 bytes per sector instead of 0.
- We are almost there!


svn path=/trunk/; revision=34665
2008-07-22 07:12:05 +00:00
ReactOS Portable Systems Group 0e52616f5f - Implement MmRawDeleteVirtualMapping.
- RamdiskUnmapPages works now.


svn path=/trunk/; revision=34664
2008-07-22 07:11:33 +00:00
ReactOS Portable Systems Group 1f497aae89 - Jesus, Fix yet another math bug in RamdiskMapPages (we were lucky not to hit it, that's all).
- Implement RamdiskUnmapPages.
- Need to implement MmRawDeleteVirtualMapping to make this last step work.


svn path=/trunk/; revision=34663
2008-07-22 06:54:25 +00:00
ReactOS Portable Systems Group 7fdb4518b7 - Epic Fail? Fix another math bug...it actually works now!
- Fix another wrong debug print.


svn path=/trunk/; revision=34662
2008-07-22 06:46:09 +00:00
ReactOS Portable Systems Group 22a37283cc - Double fail: Fix a math bug, calculate the actual offset in the mapping and return it, and don't forget to return the total length read too.
svn path=/trunk/; revision=34661
2008-07-22 06:40:00 +00:00
ReactOS Portable Systems Group 04dfc992a1 - Fail: was using the wrong structure (the boot sector is a BOOT_SECTOR which contains the BIOS Parameter Block, not a BPB directly).
- Fix wrong debug print too.

svn path=/trunk/; revision=34660
2008-07-22 06:31:31 +00:00
ReactOS Portable Systems Group d543929a55 - Save base page where loader mapped the ramdisk.
- Try to implement RamdiskMapPages for boot disks as it seems we're calling them now...
- The math works and the I/O mapping too, but I'm not sure we're reading correct data, so still left this unimplemented for now.


svn path=/trunk/; revision=34659
2008-07-22 06:21:11 +00:00
ReactOS Portable Systems Group 4d7d1dfc95 - Easy there cowboy, just because you can write good code doesn't mean you shouldn't even try building it.
- Fix x86 build failure, good thing everyone is probably asleep.

svn path=/trunk/; revision=34658
2008-07-22 06:04:06 +00:00
ReactOS Portable Systems Group 2b398fba13 - Um, yeah, the "DiskType" is CLEARLY not an NT FILE_DEVICE_ constant... this makes no sense at all.
- Defined some proper constants (somewhat based on guesses, but should be mostly correct) for the DiskType.
- Now the code actually makes sense, instead of talking about CD-ROM File Systems and CD-ROMs everywhere (and Controllers and...floppies?!)


svn path=/trunk/; revision=34657
2008-07-22 05:49:52 +00:00
ReactOS Portable Systems Group afdc43c7b2 - Not only did r34637 break the ARM build, it also doesn't make sense on x86 (or other) builds, because it assumes invalid data layout. For example, on x64 builds, the code would read random data.
- In the future, please refer to other code which loops the current processors and gets their KPRCB before attempting a half-assed implementation. KiProcessorBlock should be used.


svn path=/trunk/; revision=34656
2008-07-22 05:37:01 +00:00
ReactOS Portable Systems Group c6a3ef9f7e - Build vfatfs instead of CDFS.
- Load vfatfs instead of CDFS.
- Implement code in the ramdisk driver to handle both ISO and FAT ramdisks. Don't know what the big deal with support ISO ramdisks was supposed to be, when our ramdisk is FAT, and dealing with FAT is a lot easier than CDFS (no TOC emulation and other rubbish that was added).


svn path=/trunk/; revision=34655
2008-07-22 05:31:24 +00:00
ReactOS Portable Systems Group 4f81cc1111 - Forgot to commit this with the last update -- this adds the PreviousTrapFrame member to the ARM _KTRAP_FRAME structure.
svn path=/trunk/; revision=34654
2008-07-22 05:28:14 +00:00
James Tabor 4f11e10d3d - Rewrite HOOKs, Implement CallNextHookEx and fix prototype for NtUserCallNextHookEx. Move hook structure to ntuser.h for user verifying.
- Tested with FF, Seamonkey, Abiword, and the rest of our applications.

svn path=/trunk/; revision=34653
2008-07-22 04:54:53 +00:00
Jeffrey Morlan c688052ea5 - Make console handles start at 3, not 7.
- Make CsrGetObject increment the ref count to prevent objects from being deleted while in use. Add CsrReleaseObjectByPointer calls where necessary.

svn path=/trunk/; revision=34652
2008-07-22 00:33:42 +00:00
Timo Kreuzer ff907c5360 implement HackSecureVirtualMemory as a possible workaround for missing MmSecureVirtualMemory
svn path=/trunk/; revision=34651
2008-07-21 23:56:26 +00:00
Timo Kreuzer 27afd30041 fix READ_PORT_xxx macros
svn path=/trunk/; revision=34650
2008-07-21 21:53:38 +00:00
Timo Kreuzer 533f66b5f7 fix prototypes of _beginthread and _beginthreadex
svn path=/trunk/; revision=34649
2008-07-21 21:46:24 +00:00
Jeffrey Morlan 4e1f4eaa28 MmReleasePageMemoryConsumer: When giving the page directly to a pending allocation request, zero it first. (Bug 3543)
svn path=/trunk/; revision=34647
2008-07-21 21:30:41 +00:00
Ged Murphy 03764ecabe - Fix NeedCurrentDirectoryForExePath. Based on Wine code
- Passes all kernel32:path winetests

svn path=/trunk/; revision=34644
2008-07-21 19:54:50 +00:00
Matthias Kupfer aefde24020 - Add selectable spanish and italian keyboard layout to default language.
- This fix is temporarily until GUI 1st stage setup replaces usetup.
- See issue #3313 for more details.

svn path=/trunk/; revision=34642
2008-07-21 19:17:45 +00:00
Ged Murphy 373bd4b1da Fix Rva handling code
svn path=/trunk/; revision=34641
2008-07-21 17:50:27 +00:00
ReactOS Portable Systems Group 1738564a77 - Improve system call handler by adding more debugging checks to be used later.
- Optimize and simplify trap handling by using a common exit just like on x86's Kei386EoiHelper - KiExceptionExit. This way the code isn't duplicated 6 times.
- Do the same for system calls (KiServiceExit).
- Save the previous trap frame and restore it during each system call.


svn path=/trunk/; revision=34640
2008-07-21 15:55:58 +00:00
Matthias Kupfer 3f38468f23 avoid flicker when registering components
svn path=/trunk/; revision=34638
2008-07-21 15:52:52 +00:00
Aleksey Bragin e9973c3d3a - Pass thread's CreateTime in QSI SystemProcessInformation.
- Better implementation of QSI SystemInterruptInformation.
- Minor cleanup.

svn path=/trunk/; revision=34637
2008-07-21 12:45:12 +00:00
Timo Kreuzer 7ac61f4d05 use %p in sprintf instead of %x / cast to int
svn path=/trunk/; revision=34636
2008-07-21 12:15:36 +00:00
Aleksey Bragin 4e663a7c28 - Include a "System Idle Process" as the first item in QSI SystemProcessInformation.
svn path=/trunk/; revision=34635
2008-07-21 12:14:23 +00:00
Ged Murphy ee13626507 - fix the length of the dependencies string
- spotted by bugboy <martinmnet at hotmail dot com>

svn path=/trunk/; revision=34634
2008-07-21 11:43:55 +00:00
Matthias Kupfer 9bd87564c8 add language group for japanese keyboard layout
svn path=/trunk/; revision=34633
2008-07-21 10:55:33 +00:00
Matthias Kupfer c2e433cadf - enable japanese keyboard layout in 1st stage setup (but 2nd stage doesn't but yet)
- select Swiss keyboard layout for Liechtenstein as default

svn path=/trunk/; revision=34632
2008-07-21 10:44:18 +00:00
Aleksey Bragin 7a158b7f2d Yuriy Sidorov <jura@cp-lab.com>
- Invalid parameter error is returned if requested memory area is located above USER_SHARED_DATA address (0x7FFE0000) (WinXP compatible).
- Access violation error is returned if existing memory area found on requested address and this area have uninitialized region list.
See issue #3467 for more details.

svn path=/trunk/; revision=34630
2008-07-21 09:40:12 +00:00
Aleksey Bragin d50cea53cd - Small DPRINT typo fix.
svn path=/trunk/; revision=34629
2008-07-21 09:36:02 +00:00
Aleksey Bragin e52a7ae321 Yuriy Sidorov <jura@cp-lab.com>
- Call DbgBreakPoint() only for main thread. It fixes debugging of multithreaded apps.
- Prevent BSOD if ObReferenceObjectByHandle failed in NtGetContextThread and NtSetContextThread.
See issue #3535 for more details.

svn path=/trunk/; revision=34628
2008-07-21 09:22:28 +00:00
Aleksey Bragin 1b7106dee1 - Remove useless USE_W32API define from .rbuilds
- Fix compilation of a number of modules.
- Delete outdated fmifs.h, the one from ReactOS includes should be used instead.
- Move more libs to /lib directory.

svn path=/trunk/; revision=34627
2008-07-21 09:15:15 +00:00
Aleksey Bragin 32bd72afd4 - Fix wrong paths to some rosapps utils.
svn path=/trunk/; revision=34626
2008-07-21 09:11:30 +00:00
ReactOS Portable Systems Group c4a2e2e22b - Implement RamdiskReadWrite.
- Implement RamdiskReadWriteReal.
- We now have a working copy loop for both read and write operations.
- Need to implement RamdiskMapPages and RamdiskUnmapPages -- then we'll nearly be done!


svn path=/trunk/; revision=34625
2008-07-21 06:35:39 +00:00
Art Yerkes 861184aa18 Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
- Forgot to remove UnlockRequest in last patch

svn path=/trunk/; revision=34624
2008-07-21 05:44:10 +00:00
ReactOS Portable Systems Group 9a54151f86 - Fix ARM exports to make up for the recent i386 changes.
- Implement MmGetPageProtect. MDL Probe And Lock now works.
- We get to RamdiskReadWrite now!


svn path=/trunk/; revision=34623
2008-07-21 01:41:04 +00:00
ReactOS Portable Systems Group 63c51607f5 - Get rid of 3 days of work due to complaints from our legal guy.
svn path=/trunk/; revision=34622
2008-07-21 01:15:07 +00:00
ReactOS Portable Systems Group f28f30eafa - Implement IOCTL_CDROM_GET_LAST_SESSION and IOCTL_CDROM_READ_TOC.
- The formet is a hack to support ReactOS' cdfs.


svn path=/trunk/; revision=34621
2008-07-21 01:12:17 +00:00
Timo Kreuzer 35b23ed1d4 rbuild files use tab indentation
svn path=/trunk/; revision=34620
2008-07-20 23:21:16 +00:00
Jeffrey Morlan 1ee0441036 Fix KeInsertQueueApc error checking
svn path=/trunk/; revision=34619
2008-07-20 23:00:18 +00:00
Jeffrey Morlan ec2194d205 KiMoveApcState: Fix reversal of RepairList arguments. (Bug 1720)
svn path=/trunk/; revision=34618
2008-07-20 22:48:06 +00:00
ReactOS Portable Systems Group c1937b5160 - Now it compiles.
- Add wdk_wnet_to_ros.diff to easily merge changes with any possible future WDK updates.

svn path=/trunk/; revision=34616
2008-07-20 19:56:09 +00:00
ReactOS Portable Systems Group 77a8db07f3 - Add new CDFS driver.
- Does not compile.


svn path=/trunk/; revision=34615
2008-07-20 19:52:30 +00:00
ReactOS Portable Systems Group 87f76ea54b - Our resident GCC expert just informed me of an undocumented "enable Microsoft Compiler Extensions" flag that makes things like unnnamed members work.
- Apply the switch and remove our workaround hack.


svn path=/trunk/; revision=34614
2008-07-20 19:39:55 +00:00
Jeffrey Morlan f956615435 In ConioConsoleCtrlEvent, don't wait for the thread to terminate; a misbehaving handler could hang CSRSS indefinitely that way. Testing on Windows shows that no waiting is done when Ctrl-C is pressed; however, there is a wait of up to 5 seconds when attempting to close the window, so add a comment in GuiConsoleHandleClose mentioning this.
svn path=/trunk/; revision=34613
2008-07-20 19:34:18 +00:00
ReactOS Portable Systems Group 840143e28a - Fix the way NlsOemLeadByteInfo is exported.
- Fix definition of PFAST_IO_UNLOCK_ALL_BY_KEY.
- Add IO_REPARSE and IO_REMOUNT definitions.
- Add IOCTL_CDROM_DISK_TYPE definition.
- Add FlagOn, BooleanFlagOn, SetFlag and ClearFlag definitions.
- Add FILE_READ_ONLY_VOLUME, FILE_SEQUENTIAL_WRITE_ONCE, FILE_SUPPORTS_TRANSACTIONS definitions.
- Add FSRTL_FLAG_ADVANCED_HEADER definition.
- Add FSRTL_FLAG2_PURGE_WHEN_MAPPED and FSRTL_FLAG2_IS_PAGING_FILE definitions.
- Add FILE_ID_FULL_DIR_INFORMATION and FILE_ID_BOTH_DIR_INFORMATION structures.
- Add FSRTL_FCB_HEADER_V0 and FSRTL_FCB_HEADER_V1 definitions.
- Add FSRTL_COMPARISION_RESULT enumeration.
- Add backwards compatibility support for non-AVL tree routines.
- Add RtlInsertElementGenericTableAvl, RtlDeleteElementGenericTableAvl, RtlLookupElementGenericTableAvl, RtlEnumerateGenericTableWithoutSplayingAvl prototypes.
- Add FsRtlSetupAdvancedHeader macro.
- Add FsRtlIsFatDbcsLegal prototype.
- Add FsRtlTeardownPerStreamContexts prototype.
- Add RtlFreeOemString, RtlOemStringToCountedUnicodeString, RtlUnicodeStringToCountedOemString, RtlOemToUnicodeN prototypes.
- Fix GenericTable prototypes in rtlfuncs.h
- It seems the ntoskrnl_i386.def exports file is totally incorrect with respect to mingw -- most FsRtl functions are not properly exported. We fixed the ones we need, someone needs to go fix this entire file.
- Add memcmp to the NTOS exports -- we're not entirely sure how you were even expecting 3rd party drivers to load in React?
- Fix FastFat's "VfatFastIoUnlockAllByKey" prototype to match the fixed up PFAST_IO_UNLOCK_ALL_BY_KEY definition.
- Clean-build-tested on i386.


svn path=/trunk/; revision=34611
2008-07-20 19:19:02 +00:00
Matthias Kupfer f3ddaf8067 mark the current keyboard layout as checked (in popup menu)
svn path=/trunk/; revision=34610
2008-07-20 19:08:35 +00:00
Jeffrey Morlan d9c376b18d Fix memory leak in vfwprintf: Don't change 'mem' pointer before freeing it.
svn path=/trunk/; revision=34609
2008-07-20 16:48:24 +00:00