Thomas Larsen schrieb:
4. Disam shell32 and scsiport.sys Theire where lot of
places where it where identical
The M$ compiler and gcc is very different. If you compare the assembler
code which is compiled from the same source, you can found the same
functions bodies, but inside the functions there are many differences.
Some time ago, I've ported a simple driver for an eprom programer from
M$ tools to the ReactOS build system. At the start it hasn't worked,
because I forgot the stdcall attributes for some functions. The
reassembled code was very different.
5. Microsoft Source leak my friend just downloaded it i
got parts of the code what could be on my
1,33 mb floppy
If you was interessted to compare the ros and M$ code, you have never
worked with a floppy. It is too simple to burn a cd or dvd.
6. Saw scsiport.sys where 90% identical i layout and
code and alittel of shell32
Some parts of scsiport are from me. I've never seen the scsiport sources
from M$. I'm not sure which code from M$ you know. Our scsiport is more
compatible with the NT4.0 one. I've test many scsi controller with its
NT 4.0 drivers (adaptect 2940, ataptec on asus p2d, dmx3194uw, diamond
fireport, tekram dc390, initio a100, some with different lsi chipset,
some with initio 950 chip set). I think M$ has lost the W2K sourcesand
not the NT4.0 one. Our scsiport is very different from W2k and it is
different from NT4.0. I've add a list of imported functions. Some
functions are very specific for the implemention. ReactOS doesn't use
IoFreeMdl, IoFreeIrp, the DeviceQueu functions and some others. Many
things may nearly the same, bcause they must implement the some
functions. Our implementation is different from M$. The different
imported functions shows this. You cannot find 90% identical, if you
compare our source with the M$ source.
- Hartmut
ReactOS NT4.0 W2K
_allmul x
_aullshr x
_except_handler3 x
_strnicmp x x x
_wcsnicmp x x
DbgBreakPoint x x
DbgPrint x x
ExAllocatePool x
ExAllocatePoolWithTag x x x
ExDeleteNPagedLookasideList x
ExFreePool x x x
ExInitializeNPagedLookasideList x
ExInterlockedPopEntrySList x
ExInterlockedPushEntrySList x
InterlockedCompareExchange x
InterlockedDecrement x x x
InterlockedExchange x x
InterlockedExchangeAdd x
InterlockedIncrement x x
IoAllocateAdapterChannel x x
IoAllocateDriverObjectExtension x
IoAllocateErrorLogEntry x x
IoAllocateIrp x
IoAllocateMdl x
IoAllocateWorkItem x
IoAssignResources x
IoAttachDeviceToDeviceStack x
IoBuildAsynchronousFsdRequest x x
IoBuildDeviceIoControlRequest x x
IoBuildSynchronousFsdRequest x x
IoCallDriver x
IoCompleteRequest x
IoConnectInterrupt x x x
IoCreateDevice x x x
IoCreateSymbolicLink x x x
IoDeleteDevice x x x
IoDeleteSymbolicLink x
IoDetachDevice x
IoDisconnectInterrupt x x x
IofCallDriver x x
IofCompleteRequest x x
IoFreeIrp x x
IoFreeMdl x x
IoFreeWorkItem x
IoGetConfigurationInformation x x x
IoGetDeviceProperty x
IoGetDriverObjectExtension x
IoInitializeIrp x
IoInitializeTimer x x x
IoInvalidateDeviceRelations x
IoInvalidateDeviceState x
IoOpenDeviceRegistryKey x
IoQueryDeviceDescription x x
IoQueueWorkItem x x
IoRegisterDeviceInterface x x
IoReportDetectedDevice x x
IoInvalidateDeviceRelations x
IoInvalidateDeviceState x
IoOpenDeviceRegistryKey x x
IoQueryDeviceDescription x x
IoQueueWorkItem x x
IoRegisterDeviceInterface x x
IoReportDetectedDevice x x
IoWriteErrorLogEntry x x
KeAcquireSpinLockAtDpcLevel x x
KeBugCheck x
KeBugCheckEx x
KeCancelTimer x
KefAcquireSpinLockAtDpcLevel x x
KefReleaseSpinLockFromDpcLevel x x
KeInitializeDeviceQueue x x
KeInitializeDpc x x x
KeInitializeEvent x x x
KeInitializeSpinLock x x x
KeInitializeTimer x x
KeInsertByKeyDeviceQueue x x
KeInsertDeviceQueue x
KeInsertQueueDpc x x x
KeReadStateEvent x x
KeReleaseSpinLockFromDpcLevel x x
KeRemoveDeviceQueue x
KeRemoveByKeyDeviceQueue x
KeRemoveDeviceQueue x
KeResetEvent x
KeSetEvent x
KeSetTimer x x
KeSynchronizeExecution x x x
KeWaitForMultipleObjects x
KeWaitForSingleObject x x
memcpy x
Mm64BitPhysicalAddress x
MmAllocateContiguousMemorySpecifyCache x
MmBuildMdlForNonPagedPool x
MmFreeContiguousMemorySpecifyCache x
MmGetPhysicalAddress x x
MmHighestUserAddress x
MmLockPagableDataSection x
MmMapIoSpace x x x
MmUnlockPagableImageSection x
MmUnmapIoSpace x x x
NlsMbCodePageTag x
ObfDereferenceObject x x
ObfReferenceObject x x
ObReferenceObjectByHandle x
ObReferenceObjectByPointer x
PoCallDriver x
PoRegisterDeviceForIdleDetection x
PoRequestPowerIrp x
PoSetPowerState x
PoStartNextPowerIrp x
RtlAnsiStringToUnicodeString x x
RtlAppendUnicodeStringToString x x
RtlAreBitsSet x
RtlAssert x
RtlClearAllBits x x
RtlClearBits x x
RtlCompareMemory x
RtlCopyUnicodeString x x
RtlFindClearBitsAndSet x x
RtlFreeUnicodeString x x
RtlInitAnsiString x x
RtlInitializeBitMap x x
RtlInitUnicodeString x x x
RtlIntegerToUnicodeString x x
RtlMoveMemory x
RtlZeroMemory x
RtlQueryRegistryValues x
RtlSetBits x
RtlStringFromGUID x
RtlUnicodeStringToAnsiString x x
RtlUnicodeStringToInteger x
RtlxAnsiStringToUnicodeSize x
RtlUnwind x
sprintf x x x
swprintf x x
vsprintf x
wcslen x x x
wcsrchr x
ZwClose x x x
ZwCreateDirectoryObject x
ZwCreateKey x x x
ZwDeleteKey x
ZwEnumerateValueKey x x
ZwOpenKey x x
ZwQueryValueKey x x
ZwSetValueKey x x x