I must say that I protest to all the recent I/O changes, and in my
opinion, they are all wrong and badly researched, and have hacked what
was once good code.
Best regards,
Alex Ionescu
On Wed, Jun 3, 2009 at 2:48 AM, <mjmartin(a)svn.reactos.org> wrote:
> Author: mjmartin
> Date: Wed Jun 3 13:48:33 2009
> New Revision: 41269
>
> URL: http://svn.reactos.org/svn/reactos?rev=41269&view=rev
> Log:
> - IopCreateDriver: Change MajorFunction routines back to internal function IopInvalidDeviceRequest for ones that were set to NULL in the Drivers DriverEntry. Windows does it and so shall we.
>
> Modified:
> trunk/reactos/ntoskrnl/io/iomgr/driver.c
>
> Modified: trunk/reactos/ntoskrnl/io/iomgr/driver.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/driver.c…
> ==============================================================================
> --- trunk/reactos/ntoskrnl/io/iomgr/driver.c [iso-8859-1] (original)
> +++ trunk/reactos/ntoskrnl/io/iomgr/driver.c [iso-8859-1] Wed Jun 3 13:48:33 2009
> @@ -1302,7 +1302,7 @@
> RtlZeroMemory(DriverObject, ObjectSize);
> DriverObject->Type = IO_TYPE_DRIVER;
> DriverObject->Size = sizeof(DRIVER_OBJECT);
> - DriverObject->Flags = DRVO_BUILTIN_DRIVER;
> + DriverObject->Flags = DRVO_LEGACY_DRIVER;//DRVO_BUILTIN_DRIVER;
> DriverObject->DriverExtension = (PDRIVER_EXTENSION)(DriverObject + 1);
> DriverObject->DriverExtension->DriverObject = DriverObject;
> DriverObject->DriverInit = InitializationFunction;
> @@ -1398,6 +1398,14 @@
> {
> /* Returns to caller the object */
> *pDriverObject = DriverObject;
> + }
> +
> + /* Loop all Major Functions */
> + for (i = 0; i <= IRP_MJ_MAXIMUM_FUNCTION; i++)
> + {
> + /* Set each function that was set to NULL to internal routine */
> + if (!DriverObject->MajorFunction[i])
> + DriverObject->MajorFunction[i] = IopInvalidDeviceRequest;
> }
>
> /* Return the Status */
>
>
There's nothing ugly about this -- this is exactly what the field is for.
Best regards,
Alex Ionescu
On Sat, May 30, 2009 at 4:07 PM, <cgutman(a)svn.reactos.org> wrote:
> Author: cgutman
> Date: Sun May 31 03:07:13 2009
> New Revision: 41213
>
> URL: http://svn.reactos.org/svn/reactos?rev=41213&view=rev
> Log:
> - Export and hackplement NdisSetTimerEx
> - Implementation is #ifed out currently but I may enable it later
> - Hopefully somebody can think of a better way to do it than the current code
>
> Modified:
> trunk/reactos/drivers/network/ndis/ndis.def
> trunk/reactos/drivers/network/ndis/ndis/time.c
>
> Modified: trunk/reactos/drivers/network/ndis/ndis.def
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/ndis/ndis.…
> ==============================================================================
> --- trunk/reactos/drivers/network/ndis/ndis.def [iso-8859-1] (original)
> +++ trunk/reactos/drivers/network/ndis/ndis.def [iso-8859-1] Sun May 31 03:07:13 2009
> @@ -257,6 +257,7 @@
> NdisSetPacketPoolProtocolId@8
> ;NdisSetProtocolFilter ?
> NdisSetTimer@8
> +NdisSetTimerEx@12
> NdisSetupDmaTransfer@24
> NdisSystemProcessorCount@0
> NdisTerminateWrapper@8
>
> Modified: trunk/reactos/drivers/network/ndis/ndis/time.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/ndis/ndis/…
> ==============================================================================
> --- trunk/reactos/drivers/network/ndis/ndis/time.c [iso-8859-1] (original)
> +++ trunk/reactos/drivers/network/ndis/ndis/time.c [iso-8859-1] Sun May 31 03:07:13 2009
> @@ -243,5 +243,26 @@
> KeSetTimer (&Timer->Timer, Timeout, &Timer->Dpc);
> }
>
> +VOID
> +EXPORT
> +NdisSetTimerEx(
> + IN PNDIS_TIMER Timer,
> + IN UINT MillisecondsToDelay,
> + IN PVOID FunctionContext)
> +{
> +#if 0
> + /* FIXME: I'm not sure how to this in a nice way
> + * We can't store the function context anywhere in NDIS_TIMER
> + * so I'm forced to do this
> + */
> +
> + Timer->Dpc.DeferredContext = FunctionContext;
> +
> + NdisSetTimer(Timer, MillisecondsToDelay);
> +#else
> + UNIMPLEMENTED
> +#endif
> +}
> +
> /* EOF */
>
>
>
Hi
I download a very early edtion of reactos(0.0.21), I think it would be
easy to understand for me. I disable the NDEBUG macro, so I can catch the
debug info. By default, I use the /DEBUGPORT=SCREEN, and the log info is
printed on the screen. Then I changed to /DEBUGPORT=BOCHS, but there is no
any info on the bochs console.
Could you tell me how to catch the log on the bochs?
Fan Zhang
Ok before you go on in this area, I am currently working on a complete
rewrite of sysparams stuff. It should hopefully be ready this week and
should fix almost all winetests and additional tests in this area.
Regards,
Timo
dchapyshev(a)svn.reactos.org schrieb:
> Author: dchapyshev
> Date: Mon May 25 17:08:57 2009
> New Revision: 41115
>
> URL: http://svn.reactos.org/svn/reactos?rev=41115&view=rev
> Log:
> - Stubimplement SPI_GETFONTSMOOTHINGTYPE/SPI_SETFONTSMOOTHINGTYPE
>
> Modified:
> trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c
>
> Modified: trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
> ==============================================================================
> --- trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c [iso-8859-1] (original)
> +++ trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c [iso-8859-1] Mon May 25 17:08:57 2009
> @@ -699,6 +699,22 @@
> {
> ASSERT(pvParam);
> *((BOOL*)pvParam) = IntIsFontRenderingEnabled();
> + break;
> + }
> + case SPI_SETFONTSMOOTHINGTYPE:
> + {
> + if (*((UINT*)pvParam) == FE_FONTSMOOTHINGCLEARTYPE)
> + {
> + DPRINT1("ReactOS does not support ClearType smoothing but it is returned TRUE\n");
> + }
> + bChanged = TRUE;
> + break;
> + }
> + case SPI_GETFONTSMOOTHINGTYPE:
> + {
> + /* We do not support ClearType. Only standard smoothing */
> + DPRINT1("ReactOS does not support ClearType smoothing. Returned FE_FONTSMOOTHINGSTANDARD\n");
> + *((UINT*)pvParam) = FE_FONTSMOOTHINGSTANDARD;
> break;
> }
> case SPI_GETICONTITLELOGFONT:
>
>
>
Hi..
I have had an idea which i want to share with you, so we can discuss if it is interesting or stupid enough.
Right now we have a Winetests comparator called TestMan thanks to the efforts of Colin and Lone_Rifle. This script compares the Winetest results of different revisions. It is really helpful to find regressions(Thanks Lone_rifle to be supervising them from time to time :) ).
My idea is about creating/adding a new script which compares the winetest results of a ReactOS revision vs the result of the WineHQ winetests.
Of course just in those functions/modules that we have full-synced with Wine.
Why?
Lets imagine that our Wininit:FTP functions are synced(as they are).That means that the code of those functions are the same in Wine and in ReactOS. That means that Bugs present in that code will be present in ReactOS too.These could be called the Expected bugs.ReactOS should fail in these tests since Wine functions are bugged: call them Expected Fails.
But sometimes ReactOS is showing more fails than the Expected Fails( in synced code).Why?
Well, these synced functions use other deeper functions which arent synced with Wine and which is own ReactOS code.And, of course,which can have Bugs.If these deeper functions arent working properlly then affects the synced functions which uses them and then you will see extra tests failing.
Lets give a small example.
Wininit:FTP is synced with Wine.
WineHQ reports 6 failures : http://test.winehq.org/data/b175a43fb8439a33a686512935597d4c43c19733/wine_w…
ReactOS latest rev reports 19 failures: http://79.99.5.181/testman/detail.php?id=141321
These 13 extra failures arent expected.We expect just 6 Expected Fails (which seems to be related with Bugs in Wine code), so this 13 extra failures are related with deeper functions (which are ReactOS own code).
So the New Script would check the failures in WineHQ and in ReactOS rev and warn when the number of failures is higher than the number of Expected failures,showing also the differences, so the New Script can easily point our Devs towards ReactOS bugs, helping he "hunting" giving "clues" to them.
If my reasoning is wrong,or i am missing something,please tell me. :)
How much useful would be this Script?Is it interesting enough for Developing purposes?or Is it a waste of time/efforts?
Note: The ie is Bugzilled.It´s curious,since doing a small Timing trick you can have the 6 Expected Fails instead the 19 failures.
http://www.reactos.org/bugzilla/show_bug.cgi?id=4533
Vicmarcal
_________________________________________________________________
¡Acelera con la Fórmula 1! Juega y demuestra lo que sabes con MSN Deportes
http://msn.es.predictorpro.com/grand-prix/overview.aspx?season=8
Well mate, pity to hear that!
As you well know, one cannot simply leave this project! So everyone`s gonna
be glad to see you lurking around!
Best regards
Sorry for not replying to e-mails about this -- I was on vacation on a cruise.
When I'm back to Montreal I'll write a driver to test if this is
correct or not -- but definitely this is better.
Best regards,
Alex Ionescu
On Mon, May 25, 2009 at 1:17 AM, <tkreuzer(a)svn.reactos.org> wrote:
> Author: tkreuzer
> Date: Mon May 25 03:17:48 2009
> New Revision: 41106
>
> URL: http://svn.reactos.org/svn/reactos?rev=41106&view=rev
> Log:
> MmGrowKernelStack: go back to the ASSERT and add a fixed check
>
> Modified:
> trunk/reactos/ntoskrnl/mm/procsup.c
>
> Modified: trunk/reactos/ntoskrnl/mm/procsup.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/procsup.c?rev=…
> ==============================================================================
> --- trunk/reactos/ntoskrnl/mm/procsup.c [iso-8859-1] (original)
> +++ trunk/reactos/ntoskrnl/mm/procsup.c [iso-8859-1] Mon May 25 03:17:48 2009
> @@ -258,11 +258,15 @@
> {
> PETHREAD Thread = PsGetCurrentThread();
>
> - /* Make sure we have reserved space for our grow */
> - if (((PCHAR)Thread->Tcb.StackBase - (PCHAR)Thread->Tcb.StackLimit) >
> - (KERNEL_LARGE_STACK_SIZE + PAGE_SIZE))
> - {
> - return STATUS_NO_MEMORY;
> + /* Make sure the stack did not overflow */
> + ASSERT(((PCHAR)Thread->Tcb.StackBase - (PCHAR)Thread->Tcb.StackLimit) <=
> + (KERNEL_LARGE_STACK_SIZE + PAGE_SIZE));
> +
> + /* Check if we have reserved space for our grow */
> + if ((PCHAR)Thread->Tcb.StackBase - (PCHAR)Thread->Tcb.StackLimit +
> + KERNEL_STACK_SIZE > KERNEL_LARGE_STACK_SIZE)
> + {
> + return STATUS_STACK_OVERFLOW;
> }
>
> /*
>
>
May I ask, why not use simple C for this?:
DriverBlock->DriverObject->MajorFunction = MajorFunctions;
Or if that doesn't work, use a casting trick...
Best regards,
Alex Ionescu
On Sun, May 24, 2009 at 2:49 AM, <cgutman(a)svn.reactos.org> wrote:
> Author: cgutman
> Date: Sun May 24 04:49:02 2009
> New Revision: 41090
>
> URL: http://svn.reactos.org/svn/reactos?rev=41090&view=rev
> Log:
> - MajorFunction has IRP_MJ_MAXIMUM_FUNCTION positions
> - Sorry for so many commits on the same function
>
> Modified:
> trunk/reactos/drivers/network/ndis/ndis/miniport.c
>
> Modified: trunk/reactos/drivers/network/ndis/ndis/miniport.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/ndis/ndis/…
> ==============================================================================
> --- trunk/reactos/drivers/network/ndis/ndis/miniport.c [iso-8859-1] (original)
> +++ trunk/reactos/drivers/network/ndis/ndis/miniport.c [iso-8859-1] Sun May 24 04:49:02 2009
> @@ -2788,7 +2788,7 @@
> return NDIS_STATUS_RESOURCES;
> }
>
> - for (i = 0; i < IRP_MJ_MAXIMUM_FUNCTION; i++)
> + for (i = 0; i <= IRP_MJ_MAXIMUM_FUNCTION; i++)
> DriverBlock->DriverObject->MajorFunction[i] = MajorFunctions[i];
>
> DriverBlock->DriverObject->MajorFunction[IRP_MJ_PNP] = NdisIDispatchPnp;
>
>
What is the reason we don't sync wine's secur32?
Thanks,
Timo
cwittich(a)svn.reactos.org schrieb:
> Author: cwittich
> Date: Sun May 24 13:40:15 2009
> New Revision: 41096
>
> URL: http://svn.reactos.org/svn/reactos?rev=41096&view=rev
> Log:
> fix secur32 main winetest crash by returning 0 packages in EmumSecurityPackagesA/W
>
> Modified:
> trunk/reactos/dll/win32/secur32/sspi.c
>
>
Hi,
This mail is a little bit late as I didn't find time to write it earlier.
Basically, I've decided that I do not want to continue working on
ReactOS. I just don't find it "fun" or interesting to do any more.
I spent months trying to get my head around Kernel Streaming and its
associated components, how they fit together let alone how they actually
function. And really, it's not enjoyable. I don't fully understand
Windows kernel-mode coding, and coding the sound system really isn't as
straightforward a task as I had originally anticipated. It has become
more of a chore over time.
Considering I made the switch from Windows to Linux around 2005 and have
rarely actually needed to use Windows at home since then, there doesn't
seem to be any benefit for me to put my time into working on ReactOS.
Also I never really seemed to get very far with sound... I see
Janderwald has taken up the challenge on this and is making good
progress on it.
I had been considering leaving a few months ago, but stuck around for
our gathering in Brussels, which was great (aside from the restaurant
which seemed like it was going to cook its customers, and the
overly-smiley waiter who didn't fully explain what "special sauce"
contained...) To be honest I think putting the hybrid CD together for
that to be my best and also most hacky achievement for ReactOS. Starflow
produced all the fliers/badges/etc. and I think altogether, FOSDEM was a
success. And I hope it sparked interest for other people to join the
project.
I intend on working on some of my own projects from this point on
(possibly audio related still...)
All the best for the future,
Andrew Greenwood
I have the code to complete this functionality locally, I just haven't committed it yet as it's not tested.
Thanks for the conflict :-P
-----Original Message-----
From: ros-diffs-bounces(a)reactos.org [mailto:ros-diffs-bounces@reactos.org] On Behalf Of tkreuzer(a)svn.reactos.org
Sent: 22 May 2009 23:18
To: ros-diffs(a)reactos.org
Subject: [ros-diffs] [tkreuzer] 41046: #if out an unused static funtion. Don't know if it's still useful. Ged?
Author: tkreuzer
Date: Sat May 23 02:17:55 2009
New Revision: 41046
URL: http://svn.reactos.org/svn/reactos?rev=41046&view=rev
Log:
#if out an unused static funtion. Don't know if it's still useful. Ged?
Modified:
branches/ros-amd64-bringup/reactos/base/applications/mscutils/servman/propsheet_depends.c
Modified: branches/ros-amd64-bringup/reactos/base/applications/mscutils/servman/propsheet_depends.c
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/base/…
==============================================================================
--- branches/ros-amd64-bringup/reactos/base/applications/mscutils/servman/propsheet_depends.c [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/base/applications/mscutils/servman/propsheet_depends.c [iso-8859-1] Sat May 23 02:17:55 2009
@@ -50,6 +50,7 @@
return TreeView_InsertItem(hTreeView, &tvins);
}
+#if 0 // FIXME: What is this good for?
static VOID
AddServiceDependency(PSERVICEPROPSHEET dlgInfo,
HWND hTreeView,
@@ -123,6 +124,7 @@
}
}
+#endif
static VOID
AddServiceDependent(HWND hTreeView,
I hope you asked James and Timo, who may have uncommitted patches to
this file (which would fail to apply now).
WBR,
Aleksey Bragin.
On May 22, 2009, at 4:50 PM, dchapyshev(a)svn.reactos.org wrote:
> Author: dchapyshev
> Date: Fri May 22 16:50:31 2009
> New Revision: 41042
>
> URL: http://svn.reactos.org/svn/reactos?rev=41042&view=rev
> Log:
> - Formatting fix. No code change
>
> Modified:
> trunk/reactos/subsystems/win32/win32k/ntuser/hook.c
>
On Thu, May 14, 2009 at 2:52 PM, KJK::Hyperion <hackbunny(a)reactos.org> wrote:
> Ged wrote:
>> Another unix like addition?
>> Do we really need this and the previous telnet server in our source?
>
> to be fair, Windows does provide a command line TFTP client/server. So
> far, I've only seen it used for malware spreading, but it's there and we
> should provide one too
Where I work we use dhcpd/tftp and PXEboot on both Linux and Windows
to do automagical deployment services. The end goal with all of this
is a ReactOS deployment system from a single image that can provision
ReactOS thinkclients/diskless workstations without the need of a Linux
or Windows host.
Pushing out a freeldr or grub+freeldr or even pxelinux+grub+freeldr
image with a blob containing a ROS ramdisk should be pretty simple
using isc-dhcpd/tftp on Linux but I'm more interested in the
infrastructure side of things right now. Currently the dhcpd with PXE
support is the only part we are really missing. We COULD do it from
Linux or Windows right now, but I want to get all the infrastructure
in place where we don't need any other OS.
Thanks
--
Steven Edwards
"There is one thing stronger than all the armies in the world, and
that is an idea whose time has come." - Victor Hugo
Thank you for your answer. But I'm still perplexd.
pushl %eax //at that time ,%eax=0? so BootMain will receive NULL parameter?
call _BootMain
--- On Wed, 5/20/09, pay7n(a)o2.pl <pay7n(a)o2.pl> wrote:
> From: pay7n(a)o2.pl <pay7n(a)o2.pl>
> Subject: Re: [ros-dev] runtime time function question in freeldr
> To: "ReactOS Development List" <ros-dev(a)reactos.org>
> Date: Wednesday, May 20, 2009, 3:18 AM
> This is not an Intel syntax.
> Operands in memory operations have inverted order:
>
> mov src, dest
>
> not
>
> mov dest, src
>
> thus eax == 0
>
>
> Zhang Fan pisze:
> > Hi everybody,
> > I'm a newbie of ReactOS, and I've just looked a piece
> of code in freeldr module. I found some runtime function
> such as strstr(). I want to know if the run time lib should
> be initialized, and where the initialized code.
> > Another question is that a piece of code in arch.S
> >
> >
> > EXTERN(RealEntryPoint)
> >
> > //....
> > .code32
> >
> > /* Zero BootDrive and BootPartition
> */
> > xorl %eax,%eax
> > movl
> %eax,(_BootDrive)
> > movl
> %eax,(_BootPartition)
> >
> > /* Store the boot drive */
> > movb
> %dl,(_BootDrive)
> >
> > /* Store the boot partition */
> > movb
> %dh,(_BootPartition)
> >
> > /* GO! */
> > pushl %eax
> > call _BootMain
> >
> > At there, I think %eax should equal zero, and BootMain
> will call CmdLineParse(),and CmdLineParse will call
> strstr(). So it cause strstr will receive a NULL parameter.
> Is it right?
> >
> > Thank you.
> >
> > Fan Zhang
> >
> >
> >
> >
> > _______________________________________________
> > Ros-dev mailing list
> > Ros-dev(a)reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-dev
> >
>
> _______________________________________________
> Ros-dev mailing list
> Ros-dev(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev
>
Hi everybody,
I'm a newbie of ReactOS, and I've just looked a piece of code in freeldr module. I found some runtime function such as strstr(). I want to know if the run time lib should be initialized, and where the initialized code.
Another question is that a piece of code in arch.S
EXTERN(RealEntryPoint)
//....
.code32
/* Zero BootDrive and BootPartition */
xorl %eax,%eax
movl %eax,(_BootDrive)
movl %eax,(_BootPartition)
/* Store the boot drive */
movb %dl,(_BootDrive)
/* Store the boot partition */
movb %dh,(_BootPartition)
/* GO! */
pushl %eax
call _BootMain
At there, I think %eax should equal zero, and BootMain will call CmdLineParse(),and CmdLineParse will call strstr(). So it cause strstr will receive a NULL parameter. Is it right?
Thank you.
Fan Zhang
Hello mailing list folks!
While Xiaoming wouldn't be able to have commit access, would he be able to contribute in other ways not related to coding,
i.e., hardware or software testing? Just curious.
Mr. Ionescu, I probably would have tried to tell Xiaoming what I know about the rules, too, even though I'm not a developer.
Actually, the FAQ is pretty clear in regards to ReactOS only using clean-room reverse engineering.
http://www.reactos.org/en/about_userfaq.html. I would have just referred him to this, if you or another developer hadn't jumped in
to give a more precise answer. I usually leave it up to the devs to answer questions, but I try to answer questions if I can when
no developer is at hand at the moment. I hope that doesn't mean I have a drug problem. :)
To be honest, I was pretty confused myself about who could do what if they had seen Windows source code beforehand. I know the
current position is that seeing source code != no ReactOS programming for you, but then again there was the whole debate a few years
back about whether the devs at the top had seen any Windows source code and I'm still not sure how that got resolved. I had
alternately heard that people who had seen source code couldn't contribute, or if they had they could only code stuff whose Windows
equivalents they hadn't seen the source code to, so it's not something that was just made up. I'm not trying to restart old flame wars,
but the fact is that the policy regarding Windows source code hasn't always been so clear, which may have left some people (myself
included) confused. While I personally wouldn't have replied assuming the same level of authority as a developer, I don't think us
ordinary folks should be blamed if we've gotten a little confused about this througout the course of the past few years.
I don't mean to start off here on a bad note, but I get irritated because on the forums someone asks a simple question, someone answers,
the devs get angry because they feel someone overstepped their authority, even thought the devs tend to give a terse answer with no
explanation. The newbie scared of asking anything else about the project because folks get so angry with one another, and figures it's
not worth the trouble of getting involved.
By the way, if the formatting here looks like it was written by a crackhead, it's because this is my first time posting on the mailing
list. (I'm more active on the forums.) Then again, my hometown inspired The Wire, so who knows. :P
-Joshua Bailey