Hello,
yesterday we had a usual rant in #reactos-dev regarding organization,
teaming and development issues, and I explained how I see it. I think
explaining and discussing here would be beneficial.
I won't spend your time explaining how I came to this roadmap, I will
go right to it. This roadmap is mainly usage-oriented and doesn't
cover the kernel (it has its own one).
* Finish wine-based subsystem ("arwinss"), fixing all internal
(absent in Wine and/or trunk) bugs.
Milestone 1: user32 and gdi32 known to work and support at least all
the apps listed in the Wine app compat database.
* Test as many as possible apps known to work in Wine and determine
those which fail.
* Fix failing components (kernel32, ntdll, kernel, CSR, non-synced
DLLs, etc).
Milestone 2: ReactOS supporting quite wide amount of applications,
including major apps like MS Office suites, Open Office, CAD systems,
Adobe products.
Decision point: Because other Win32 components are proven to work, NT-
alike user32, gdi32 and win32k development may be boosted, testing
simplified.
* Implement filesystem drivers, using fastfat_new as a universal
skeleton for FS drivers. Use ntfs3g library and that skeleton to
develop an NTFS IFS driver.
Milestone 3: ReactOS with NTFS support (quite important for end
users, thus separated into a standalone milestone).
* Total rewrite of networking, using NT's one as a model.
Milestone 4: ReactOS with a rock-stable networking. Ability to host
database servers, web and FTP servers.
* Release 1.0 and profit ;)
So that's what I'm sticking to so far. I don't expect everyone to
agree, but if more people are involved, achieving these milestones
will happen faster. Also, they don't really have to go in a sequence,
all of that may be done simulteneously (e.g. filesystem drivers must
be developed against Windows 2003; kernel32 and ntdll could be fixed
first using winetests without waiting for arwinss to be complete;
networking could be again tested in existing ReactOS and Windows).
Comments, improvements are welcome.
WBR,
Aleksey Bragin.
I confirm Gabriel's findings.
2010/4/7 Gabriel ilardi <gabrielilardi(a)hotmail.it>
> Hi Eric,
>
> It seems this commit introduces a regression, I've filed bug 5283 (
> http://www.reactos.org/bugzilla/show_bug.cgi?id=5283) there are no prompts
> to install a driver for unknown hardware (i.e. AC97), I've tested 46702 and
> this doesn't happen.
> I've also reverted 46703 and 46714 in ntoskrnl and replaced head's ntoskrnl
> with it, after that I get the prompt to install the driver again.
> Thanks.
>
> Gabriel.
>
> ------------------------------
> Condividi le tue emozioni e proteggi la tua privacy. Chiacchiera su
> Messenger <http://www.windowslive.it/importaAmici.aspx>
>
> _______________________________________________
> Ros-dev mailing list
> Ros-dev(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev
>
Hi Eric,
It seems this commit introduces a regression, I've filed bug 5283 (http://www.reactos.org/bugzilla/show_bug.cgi?id=5283) there are no prompts to install a driver for unknown hardware (i.e. AC97), I've tested 46702 and this doesn't happen.
I've also reverted 46703 and 46714 in ntoskrnl and replaced head's ntoskrnl with it, after that I get the prompt to install the driver again.
Thanks.
Gabriel.
_________________________________________________________________
Messenger e Hotmail in tasca. Provali sul tuo cellulare!
http://new.windowslivemobile.msn.com/it-it/Default.aspx
> +
> +#define GDIOBJ_GetKernelObj(Handle) \
> + ((PGDI_TABLE_ENTRY)&GdiHandleTable->Entries[GDI_HANDLE_GET_INDEX(Handle)])->KernelData
>
This function shouldn't even exist.
> pdcattr->hlfntNew = NtGdiGetStockObject(SYSTEM_FONT);
> TextIntRealizeFont(pdcattr->hlfntNew,NULL);
> + NewDC->hlfntCur = pdcattr->hlfntNew;
> + NewDC->dclevel.plfnt = GDIOBJ_GetKernelObj(pdcattr->hlfntNew);
>
Looks like a good way to introduce bugs. There's a reason we have
locking functions. The fact that in this case it's a stockfont that
won't get deleted, doesn't mean we can do this always. If you want
performance, keep a global pointer to the font and use
GDIOBJ_IncrementShareCount
Since no one is listening (reading) to me about this issue and the
response I receive is "WTF are you talking about"! Let me explain one
more time.....
In reference to commit 46679, I attempted to provide the project an
example on how information contexts (IC) are created and removed.
Works as a toggle between switching flags and moving the
pdc->dclevel.pSurface pointer to and from pdc->pSurfInfo. The name of
pSurfInfo should give a good clue.
I was surprised when no one on IRC knew anything about this and it
explains why the yarotows branch is not taking this into
consideration.
Remember my rant? Building code from broke code creates more broken
code! Thus, increasing the amount of wasted time rewriting it.
--- branches/reactos-yarotows/subsystems/win32/win32k/objects/dclife.c
[iso-8859-1] (original)
+++ branches/reactos-yarotows/subsystems/win32/win32k/objects/dclife.c
[iso-8859-1] Sat Apr 3 18:42:04 2010
@@ -377,6 +377,9 @@
PATH_Delete(pdc->dclevel.hPath);
+ if(pdc->dclevel.pSurface)
+ SURFACE_ShareUnlockSurface(pdc->dclevel.pSurface);
+
PDEVOBJ_vRelease(pdc->ppdev) ;
return TRUE;
__________
Need to check for DC_TYPE_INFO and sometimes for DC_FLAG_TEMPINFODC.
Quick check for pSurfInfo if NULL might be helpful too.
I'm keeping track of yarotows and I see some needed merging into trunk
(head, main branch) soon. 46630 is a good start.
Thanks,
James
Referance: [ros-diffs] [jimtabor] 46679: [Win32k] - Implement
MakeInfoDC and support functions. Dedicated to Timo.
http://www.reactos.org/archives/public/ros-diffs/2010-April/036412.html
tkreuzer(a)svn.reactos.org wrote:
> Remove svn:mergeinfo property from several files
We should rather try to eliminate the root of these constant merge
artifacts, which seem to be the remaining svn:keywords properties.
As these ones instruct Subversion to update the revision number in the
affected files, they probably also include the revision numbers of merges
maintained by svn:mergeinfo.
I've already removed some svn:keywords properties in the same files (for
example in r41694), but I believe that this doesn't help much unless the
properties are also removed in all branches we use for merging.
Cheers,
Colin
sir_richard(a)svn.reactos.org wrote:
> [HALACPI]: Support depends on boot loader creating the ACPI BIOS Multi Node structure in
> MultiFunctionAdapter in the hardware tree. It seems that FreeLdr does this (wow!) correctly!
Oh ye of little faith :)
Hi,
Have you guys seen this?
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41013
Is it really a problem? The discussion came up on wine-devel.
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
Hi,
The testcd is broken. And no, it's not due to the header merge. This
time it broke in r46574 (hal changes)
Now please don't blame sir richard, instead someone please free some
disk space on the testbot.
Regards,
Timo
*points and laughs at the old man.
VIM all the way, baby!
On Mar 17, 2010 6:55 PM, "James Tabor" <jimtabor.rosdev(a)gmail.com> wrote:
Hi!
I guess it depends on how old some of us are. I use UNIX/Joe since
I've used WordStar in the past. Sometimes G/Kedit too.Visual C++ on
windows.
Not OT at all,
James
On Tue, Mar 16, 2010 at 12:44 PM, Deepak Gupta <mailmeatdkg(a)gmail.com>
wrote:
> I have been browsin...
_______________________________________________
Ros-dev mailing list
Ros-dev(a)reactos.org
http://www....
I have been browsing through reactos sources (mainly boot and ntoskrnl).
I was wondering which Editor/IDE people use for reactos sources.
I am currently using gVim along with ctags to browse through the sources.
Any suggestions which could be more helpful.
Regards
Deepak Gupta
Wow!
Svn must be getting better these days! It merged perfectly to my
changes I have here being tested. Expect some menu improvements and
code additions coming soon.
Thanks,
James
Hi!
typedef struct _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT {
GUID EnlistmentId;
#if !defined(__cplusplus)
UOW UOW;
#else
::UOW UOW;
#endif
} TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT,
*PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT;
can be used instead of a hack.
Dear core developers of Reactos,
I would like to inform YOu about my findings related to screen readers support while using Wine emulator, because as i understood, Wine and Reactos are sharing crucial information to make those tools as much Windows compatible as it is possible.
1. NVDA is not able to run in The Wine, which can be downloaded from PCLINUXOSS repositories, NVDA is only plaing a welcome gong and then i Am receiving series of error messages, one related to winmm.dll and also other related to MSAA support. oleacc.dll very probably.
When i tried one Czech very little screen reader based on using API hooks and API calls, program is written by using Microsoft Visual Basic 6.0 professional edition and crucial helper dlls are written in Microsoft visual C++ but not Express 2005 edition, older release of this programming language has been used.
What are mi findings?
Algorithms used for generating synthesizet speech are working ammazingly in Wine. but other algorithms for fetching names of buttons, objects and for getting textual information are not working.
But i Am afraid, that implementing reliable MSAA support is so much complex for core developers of Wine or Reactos, that it will never been possible to reach this goal.
Many of us are very intelligent and professional developers, who are even able to use Assembler while compiling and developing Reactos core components, but i think, that without access to Windows MSAA source code developing reliable MSAA support will be only big dream, which would never been come true.
Reactos is in general very stable and reliable operating system and i believe, that in future, also many device drivers will work with Reactos.
If also MSAA support would be added in future, this would be very positive for many handicapped users, because MSAA is being used not only by screen readers, but also while using other assistive technology, which are based on MSAA calls.
BUt i think, that Microsoft will not want to reveal The MSAA source code, the modified source code of oleacc.dll, user32.dll and others. Accessing source code is fortunately possible, but i read about this, that some fee must be paied to Microsoft to get access to their source code repository, and i think, that there will be very restricted conditions.
On Fri, Mar 5, 2010 at 12:29 PM, <evb(a)svn.reactos.org> wrote:
> - New Framebuffer (Linear) Display Driver to support new unified VGA/VBE miniport. Based on NT4 DDK Sample, with modifications by me (marked with // eVb) to support new functionality needed for 2003-era driver.
> - Also used Virtual Box Display Driver as sample, which is based on "GPL" Windows 2003 DDK sample driver. Could not use 2003 DDK sample directly because of licensing issues, and feel unsafe about VirtualBox "GPL" driver that says "PATENTED AND ONLY FOR USE IN MICROSOFT PRODUCTS".
> - Note that old driver was based off DDK sample too, but with variables renamed (some comments identical!) and code reformatted, then marked as "GPL". This is not very good way to share/use code... one day someone can teach you lesson.
I am not sure what this comment is supposed to mean. Are you saying
that the wishes of the Author should not be respected? The PATENTED
statement is an extra qualifier. We are talking about two issues,
patents (which are vague and Copyright which is clear). Clearly the
author being Microsoft does not want it's code used as a derived work
for a non-windows OS. As the copyright owner and licensor that is
their right. Or do you propose that developers ignore the copyright
law and do it anyway?
If you want to import the Windows 2003 DDK driver and create a derived
work in violation of the terms, do the rest of us a favor and upload a
scanned copy of your drivers license, passport or whatever as a
resource for this driver so Microsoft will know exactly who to sue.
--
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
Hi,
There's a regression that I narrowed to this range: 46028 (no regression) - 46043 (regression).
Tested in VirtualBox, in 3rd stage you get: (base/services/umpnpmgr/umpnpmgr.c:2132) CreateProcessAsUserW failed with error 1375 (ERROR_TOKEN_ALREADY_IN_USE), and no new hardware wizard prompt.
Regards,
Gabriel.
Here's the full debug log for 3rd stage:
(ntoskrnl/kd/kdio.c:297) -----------------------------------------------------
(ntoskrnl/kd/kdio.c:298) ReactOS 0.4-SVN (Build 20100309-r46043)
(ntoskrnl/kd/kdio.c:299) Command Line: /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS
(ntoskrnl/kd/kdio.c:303) ARC Paths: multi(0)disk(0)rdisk(0)partition(1) \ multi(0)disk(0)rdisk(0)partition(1) \ReactOS\
(ntoskrnl/ke/i386/cpu.c:746) Prefetch Cache: 64 bytes L2 Cache: 524288 bytes L2 Cache Line: 64 bytes L2 Cache Associativity: 16
WARNING: HalStopProfileInterrupt at hal/halx86/generic/profil.c:24 is UNIMPLEMENTED!
(ntoskrnl/mm/mminit.c:289) 0x80000000 - 0x80C00000 Boot Loaded Image
(ntoskrnl/mm/mminit.c:293) 0x80C00000 - 0x87000000 Paged Pool
(ntoskrnl/mm/mminit.c:297) 0xB0000000 - 0xB0300000 PFN Database
(ntoskrnl/mm/mminit.c:301) 0xB0300000 - 0xB0AC8000 ARM³ Non Paged Pool
(ntoskrnl/mm/mminit.c:305) 0xBC000000 - 0xBD000000 System View Space
(ntoskrnl/mm/mminit.c:309) 0xBD000000 - 0xC0000000 Session Space
(ntoskrnl/mm/mminit.c:312) 0xC0000000 - 0xC0300000 Page Tables
(ntoskrnl/mm/mminit.c:315) 0xC0300000 - 0xC0400000 Page Directories
(ntoskrnl/mm/mminit.c:318) 0xC0400000 - 0xC0800000 Hyperspace
(ntoskrnl/mm/mminit.c:322) 0xE1000000 - 0xED400000 ARM³ Paged Pool
(ntoskrnl/mm/mminit.c:325) 0xF4C00000 - 0xFA305000 System PTE Space
(ntoskrnl/mm/mminit.c:328) 0xFA305000 - 0xFFBE0000 Non Paged Pool Expansion PTE Space
(ntoskrnl/ke/i386/kiinit.c:53) Large Page support detected but not yet taken advantage of
(ntoskrnl/ke/i386/patpge.c:45) Global page support detected but not yet taken advantage of
(ntoskrnl/ke/i386/patpge.c:58) PAT support detected but not yet taken advantage of
(ntoskrnl/ke/i386/mtrr.c:24) MTRR support detected but not yet taken advantage of
PC Compatible Eisa/Isa HAL has been initialized
WARNING: IoReportResourceUsage at ntoskrnl/io/iomgr/iorsrce.c:700 is UNIMPLEMENTED!
WARNING: IoReportResourceUsage at ntoskrnl/io/iomgr/iorsrce.c:700 is UNIMPLEMENTED!
(ntoskrnl/io/iomgr/driver.c:1392) '\Driver\BUSLOGIC' initialization failed, status (0xc00000c0)
(drivers/network/ndis/ndis/miniport.c:2413)(NdisMRegisterMiniport) Initializing an NDIS 5.0 miniport
(drivers/network/ndis/ndis/config.c:485)(NdisReadConfiguration) ZwQueryValueKey #1 failed for NetworkAddress, status 0xc0000034
(drivers/network/ndis/ndis/config.c:700)(NdisReadNetworkAddress) NdisReadConfiguration failed (c0000001)
(drivers/network/ndis/ndis/efilter.c:96)(EthFilterDprIndicateReceive) Filter is NULL
(drivers/network/ndis/ndis/efilter.c:96)(EthFilterDprIndicateReceive) Filter is NULL
(drivers/network/ndis/ndis/efilter.c:96)(EthFilterDprIndicateReceive) Filter is NULL
(drivers/network/ndis/ndis/efilter.c:129)(EthFilterDprIndicateReceiveComplete) Filter is NULL
(ntoskrnl/io/iomgr/deviface.c:1005) IoGetDeviceObjectPointer() failed with status 0xc0000010
wood_uhci: Entering DriverEntry(), RegistryPath=
\Registry\Machine\System\CurrentControlSet\Services\usbdriver
(ntoskrnl/io/iomgr/driver.c:1392) '\Driver\usbdriver' initialization failed, status (0xc0000001)
Unhandled event type: 6
(ntoskrnl/io/iomgr/file.c:420) Using IopParseDevice() hack. Requested invalid attributes: 1
(ntoskrnl/io/iomgr/file.c:420) Using IopParseDevice() hack. Requested invalid attributes: 1
Boot took 14375646481 cycles!
Interrupts: 1079 System Calls: 4850 Context Switches: 291
(subsystems/win32/win32k/ntuser/sysparams.c:1499) UserSystemParametersInfo called without active windowstation.
err:(dll/win32/user32/misc/dllmain.c:367) GetConnected
(subsystems/win32/win32k/ntuser/desktop.c:604) RtlQueryRegistryValues failed for PaintDesktopVersion (c0000034)
(subsystems/win32/win32k/ntuser/sysparams.c:1499) UserSystemParametersInfo called without active windowstation.
(subsystems/win32/win32k/objects/gdiobj.c:1108) Attempted to lock object 0x0 of wrong type (Handle: 0x0, requested: 0x50000)
(subsystems/win32/win32k/objects/gdiobj.c:1108) Attempted to lock object 0x0 of wrong type (Handle: 0x0, requested: 0x50000)
(subsystems/win32/win32k/objects/gdiobj.c:1108) Attempted to lock object 0x0 of wrong type (Handle: 0x0, requested: 0x50000)
(subsystems/win32/win32k/objects/gdiobj.c:1108) Attempted to lock object 0x0 of wrong type (Handle: 0x0, requested: 0x50000)
err:(dll/win32/user32/windows/window.c:281) CreateWindowExA RegisterSystemControls
Boot took 21134116768 cycles!
Interrupts: 1632 System Calls: 8466 Context Switches: 1260
(subsystems/win32/win32k/ntuser/desktop.c:604) RtlQueryRegistryValues failed for PaintDesktopVersion (c0000034)
err:(dll/win32/advapi32/service/sctrl.c:668) ScmrSetServiceStatus() failed (Error 1722)
err:(dll/win32/advapi32/service/sctrl.c:668) ScmrSetServiceStatus() failed (Error 1722)
Boot took 24388307864 cycles!
Interrupts: 1753 System Calls: 11824 Context Switches: 1859
err:(dll/win32/advapi32/service/sctrl.c:668) ScmrSetServiceStatus() failed (Error 1722)
err:(dll/win32/advapi32/service/sctrl.c:668) ScmrSetServiceStatus() failed (Error 1722)
(lib/rtl/actctx.c:874) Unsupported yet language attribute (*)
(lib/rtl/actctx.c:2007) looking for name=Microsoft.Windows.Common-Controls version=6.0.0.0 arch=X86
Using shell hooks for notification of shell events.
(subsystems/win32/win32k/ntuser/hook.c:1202) Not implemented: HookId 3 Global TRUE
fixme:(dll/win32/kernel32/file/backup.c:35) BackupRead is UNIMPLEMENTED!
fixme:(dll/win32/kernel32/file/backup.c:35) BackupRead is UNIMPLEMENTED!
(lib/rtl/actctx.c:874) Unsupported yet language attribute (*)
(lib/rtl/actctx.c:2007) looking for name=Microsoft.Windows.Common-Controls version=6.0.0.0 arch=X86
CreateDirectory("C:\Documents and Settings\Administrator.REACTOS\Application Data\Microsoft")
CreateDirectory("C:\Documents and Settings\Administrator.REACTOS\Application Data\Microsoft\Internet Explorer")
(ntoskrnl/se/semgr.c:294) SidInToken Calls: 10000
CreateDirectory("C:\Documents and Settings\Administrator.REACTOS\Application Data\Microsoft\Internet Explorer\Quick Launch")
(base/services/umpnpmgr/umpnpmgr.c:2132) CreateProcessAsUserW failed with error 1375
(base/services/umpnpmgr/umpnpmgr.c:2132) CreateProcessAsUserW failed with error 1375
(base/services/umpnpmgr/umpnpmgr.c:2132) CreateProcessAsUserW failed with error 1375
(base/services/umpnpmgr/umpnpmgr.c:2132) CreateProcessAsUserW failed with error 1375
_________________________________________________________________
Più spazio per le tue esigenze. Hotmail va oltre i 5GB
http://www.windowslive.it/hotmail/SpazioDisponibile.aspx
I was blamed for doing this the other day. So do we skip tests or
don't? If yes, they must be marked as skipped, not silently ignored.
WBR,
Aleksey Bragin.
On Mar 8, 2010, at 11:52 PM, jimtabor(a)svn.reactos.org wrote:
> Author: jimtabor
> Date: Mon Mar 8 21:52:04 2010
> New Revision: 46006
>
> URL: http://svn.reactos.org/svn/reactos?rev=46006&view=rev
> Log:
> - [User32_winetest]
> - Win : Remove test_capture from service. This is related to
> TrackMouseEvent issues which use SetCapture.
>
> Modified:
> trunk/rostests/winetests/user32/win.c
>
> Modified: trunk/rostests/winetests/user32/win.c
> URL: http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/
> user32/win.c?rev=46006&r1=46005&r2=46006&view=diff
> ======================================================================
> ========
> --- trunk/rostests/winetests/user32/win.c [iso-8859-1] (original)
> +++ trunk/rostests/winetests/user32/win.c [iso-8859-1] Mon Mar 8
> 21:52:04 2010
> @@ -5979,7 +5979,7 @@
> test_capture_1();
> test_capture_2();
> test_capture_3(hwndMain, hwndMain2);
> - test_capture_4();
> +// test_capture_4();
>
> test_CreateWindow();
> test_parent_owner();
>
>
Hi,
Look for ntuser/defwnd.c and read the beginning of the file that deals
with shutdown messages, it passes all the wine tests. If you need
something, just ask, I will implement it.
Thanks,
James