ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Hjem | Informasjon | Fellesskap | Utvikling| Min ReactOS Kontakt oss

  1. Hjem
  2. Informasjon
  3. Fellesskap
  4. Utvikling
  5. Min ReactOS

  1. Oversikt
  2. Folket bak ReactOS
  3. Forum
  4. Wiki
  5. Melding Liste
  6. IRC Kanaler
  7. Nyhets sider
  8. Blogg
  9. Bruker FAQ

Community > ReactOS Newsletter Archive > ReactOS Newsletter: Volume 1, utgivelse 6

Volume 1, utgivelse 6

by Stuart on 2005-11-20
translated by Lars Martin Hambro on 2007-09-26

Welcome to Issue 6, the Issue that confirms we've beaten Splash. And to celebrate, this is going to be a Big issue. First off, We'll be taking a look at where ReactOS is headed, other than for x86, covering the Xbox, Xen, and PowerPC ports.

And we've also got out first vic.. I mean volunteer for our very first Interview. .. Now there's no excuse for the rest of the Developers to not volunteer!

But first, let's take a look on what's been going on behind the scenes.

top

Hvorfor Port ReactOS?


This is a question with many answers, but for most, the answer is a simple one: To expand the potential for the Operating System later on. The popularity of Linux stems from its ability to be a very flexible Operating System. Look at any major Linux Distribution, like Fedora Core, and Debian. They offer a multitude of options, including:

  • PowerPC
  • x86 (aka IA-32)
  • x86-64 (aka AMD64/EM64T)
  • SPARC
  • IA-64
  • NEC Alpha
  • Xen

ReactOS har følgende Ports i utvikling:

  • PowerPC
  • x86
  • Xbox
  • Xen
top

PowerPC? Hvorfor vi targeting Macintosh platform?


PowerPC isn't just used by Macs, although it has to be said, they've been one of it's most loyal customers, until they chose to switch to the Intel x86 Platform, for Power Consumption reasons on the iBook series of Notebooks.

The PowerPC Platform will give us a great deal of flexibility, by allowing us to appeal directly to Enthusiasts. Not many are aware of this fact, but all 3 of the Next Generation Console Systems (Which would be the Microsoft Xbox 360, Sony Playstation 3, and Nintendo Revolution) are built on the PowerPC Architecture. Even the Cell Processor, the much acclaimed CPU System for the Playstation 3, is PowerPC-Based. The Xbox 360 has some real potential, to become the test bed for an SMP PowerPC build of ReactOS.

How far has the PowerPC port of ReactOS come? Well, the short answer is to look here. Only, that page doesn't look comprehensible to anyone but arty (who is working on the PowerPC port, in addition to his main work, implementing Networking in ReactOS)... Long and short of it is, Freeldr starts booting, but crashes immediately, because the support for direct disk access isn't there yet.

top

Hva er 'Xen'? Har aldri hørt om det.


Unless you're an involved Linux user, you probably won't. Xen is an Open-Source attempt to make a Virtualization System, that is capable of running more than one copy of the Operating System simultaniously. The Major difference between this, and a system like QEMU, or VMWare, is that Xen isn't attempting to emulate the hardware that the Operating System is to run on, instead using the Installed Hardware to do so.

As you've probably made out, it's quite a complicated port, made doubly difficult from the Limitation that it needs to be compiled on Linux to be built correctly. So far, the only Linux Distribution I know of (And people will correct me on this, just watch), that has dedicated support for Xen, is Fedora Core 4. And I've just been informed that SuSE 10 also has offical support for Xen, as well as support in the following Linux/*nix Variants:

  • Debian (Doesn't meet Quality requirements)
  • Solaris (Still working with older Xen versions
  • NetBSD

Our Xen port starts booting, but crashes as soon as the Kernel starts loading. G� van Geldorp was working on this as a side project, but has since refocused his efforts in the meantime on getting Mozilla Firefox working, in preparation for when 0.3.0 is released. Xen itself is also gearing up for 3.0 release, so hopefully, when that's done, we can see some more work being done on Xen for ReactOS.

top

Xbox


The Xbox port is fairly stable, from what I've heard, the only thing missing is USB Support. Yes, you heard me right, the Xbox has USB. Specifically, those 4 ports on the front, and all USB 1.1 ports that use a non-standard connector (Which has one wire more than normal). If you know where to look, you can get a hold of custom Xbox-USB to Normal-USB connectors, which would allow you to hook up a range of USB Devices for your Xbox. Wouldn't it be great running an Open-Source Windows Alternative on a Microsoft-Engineered Console?

top

x86


By far the most active port in progress, This is to get ReactOS working on all x86 Processors (That theoretically means the 386, but it's unknown what our 'real' hardware requirements will be).

Since the Xbox itself is an x86 System (The CPU used is a Coppermine-Core Celeron 733Mhz), any advancements in the x86 port will benefit the Xbox port, as well.

top

Øyne med SVN


This week, we've seen a few interesting additions to the SVN trunk this week top

Major Trunk Changes


  • Add .inf file for Realtek netcards (8029 compatibles)
  • Remove NE2000 compatible card in Root bus, as QEMU enumerates it as PCI
  • Add .inf file for Xbox display card
  • ACPI added back to build, so a ReactOS installation now powers off automatically
  • Fix IoIsWdmVersionAvailable() to confirm we're compatible with Win2k
  • 2nd stage setup: start umpnpmgr service only after the installation of device classes
  • Reimplement Fast Mutex implementation in HAL/NT to be compatible with the real implementation
  • Service Stopping Improved
  • dplay and dplayx updated
  • Crypt32 added to Build & Boot CD
  • dhcpapi.dll added to Boot CD now
  • VMWare display driver installation fixed
  • Keyboard should no longer skip events
  • Hardcoded 'Find one device of midiout and wavout' has been replaced with 'Scan for WaveOutXX, WaveInXX, MidiInXX, MidiOutXX, AuxXX'.
top

Implementert


  • UpdateDriverForPlugAndPlayDevicesA
  • CreateServiceA
  • ScmrChangeServiceConfigW
  • ExEnterCriticalRegionAndAcquireFastMutexUnsafe
  • ExReleaseFastMutexUnsafeAndLeaveCriticalRegion
  • CommandLineFromMsiDescriptor
  • InterfacePciDevicePresent(Ex) of PCI_DEVICE_PRESENT_INTERFACE
  • GetDeviceCapabilities and GetDeviceCount for midMessage (MMDRV)
  • AUXDM_GETVOLUME (MMDRV)
  • AUXDM_SETVOLUME (MMDRV)
  • Ntoskrnl version of Fast Mutex
top

Removed


  • CcBrokenMutex
top

Other Changes


  • RosCMS uploaded to Trunk
  • NetAPI32 Vendor Drop
  • WINE 0.9.1 Vendor Drop
  • WINE 0.9.1 Tagged
  • Sync to WINE 0.9.1
top

Summarised Changes in WINE 0.9.1


  • Support for Find function in regedit.
  • Winelib app to eject a CD.
  • Many MSI improvements.
  • Better support for running text-mode apps without X.
  • Improved support for various code obfuscation tools.
  • Lots of bug fixes.
top

RosCMS in Trunk


As stated above, the installation files for RosCMS have been transferred to trunk, for use by others in the Open Source Community. RosCMS is an an Open Source effort, licenced under the GPL, to develop a Web Content Management System that is simple, fast, and can generate static web pages (Both in XTHML 1.1 and HTML 4.01 compliant formats). It's a powerful CMS for areas where speed, simplicity, and stability are needed.

top

Interview with silverblade


Well, it's taken 5 weeks from our first issue, but we finally have our first Interview. First up to the plate is Andrew Greenwood, also known as silverblade on IRC, one of our Resident Developers on ReactOS. So, without further Adieu, on with the Interview...

Side Note: I am in Bold, and Andrew is in Italics. If this doesn't look right, I'll change it..

Well, first off, Welcome to the the very first Interview for the ReactOS Weekly Newsletter, silverblade. How have you been lately?

silverblade: A little exhausted. There's been lots to learn and I've spent pretty much all my spare time getting started on the audio coding for ReactOS - including my lunch breaks at work!

Can you refresh for our readers, what part of the Audio Coding you've been working hardest on?

At the moment, I've been focusing on implementing WDMAUD.DRV, which is a user-mode component that processes requests from WINMM.DLL (the multimedia system API based on the one first introduced along with Windows 3.1) and contacts a kernel-mode driver (WDMAUD.SYS - the other half of the component I'm working on) to instruct it to carry out whatever task was requested by the calling application (via winmm).

Our current implementation of winmm.dll was ported from the WINE project, but will need a little tweaking to get it functioning properly with WDMAUD.DRV due to some (to my knowledge) undocumented behaviour between WINMM.DLL and WDMAUD.DRV on Windows.

I see that WINE has already provided the building blocks, and indeed just goes to show how close the ReactOS and WINE projects are. I'm sure some of our readers who have been keeping abreast of this newsletter have noticed that USB and Plug and Play have gotten a lot of attention as of late, and I'm curious myself... how far has the Audio Implementation come, since you've started working on it?

It's still in its early stages, but I'm pleased with what I've done so far. I'm currently testing my implementation of WDMAUD.DRV by replacing the Windows XP version with my own, which reduces the chances of a bug being caused by some other part of ReactOS not functioning as Windows does. With my driver running in Windows as ROSAUD.DRV, it wasn't being given the data it needed from WINMM.DLL. Replacing the Windows WDMAUD.DRV with my own resulted in a few new messages being sent to it, along with some new parameters.

At present, I'm concentrating on wave output handling (there's also wave input, MIDI, mixer and "auxiliary" messages to take care of.)

It's at a stage now where applications can open and close wave output devices, and the user-mode driver (wdmaud.drv) can send a callback, but that's about all.

What are your feelings on contributing to an Open-Source project like ReactOS, that has the potential to become quite renowned in the software world?

It's pretty exciting. I've always enjoyed writing software, but I've never really been involved in a large project (in terms of functionality, and the number of people involved.) Most of the software I've written has been semi-freeware (basically, users pay a small fee for some extra functionality) and I haven't really gained much from that - not just in a monetary perspective, but primarily there hasn't really been that un-noticed.

I've always liked the concept of open-source software, and when I first found the ReactOS project, wanted to do something to help out. Initially, I just tweaked a few things here and there behind the scenes. I helped out with some of the conversion to the w32api headers, but probably the most notable thing I've done so far is implement a Win32 API function that draws caption bars - for which I just reworked our existing code.

When you first saw ReactOS, what went through your head? When I first saw it, I thought, "This must be a dead project... way too ambitious". I'm a little curious to hear what others first thought when they saw ReactOS for the first time. What's your overall impression of the new ReactOS Website?

Back in the early days (pre-0.1) the website was pretty basic - just a few pages of information and a small discussion area. At the time I came across the website, I had been looking for articles on how to write an operating system, as I was fascinated by how operating systems - and the x86 architecture - work.

The first release of ReactOS I tried crashed pretty much instantly. I ran it inside Bochs, which was pretty slow. Despite this, I downloaded the source code and had a poke around, and the amount of work done so far was impressive.

I bookmarked the site, and made the occasional appearance there and on the mailing list, and in the IRC channel (which was pretty empty back in those days) to ask what tasks there were I could do.

Audio and MIDI have always been my main area of interest when it comes to programming, but I held fire just in case someone was working on sound.

But as it seems everyone has their own parts of ReactOS to look after and the sound system has remained untouched, it seems like the perfect thing for me to work on.

As for the new website - I think it's a vast improvement over the old one. It makes the project feel more alive/busy. I do however find it a little awkward to navigate in some cases, since some pages are buried away and the route to get to them isn't that obvious at first glance.

I can attest to that. I remember when GvG gave me the grand tour of the Admin Section.. it looked incomprehensible, at first.

Now, for many, ReactOS has a meaning all its own. For some, it just represents an Operating System, to others, a Hobby Project, and to others still, a showing of what can be done when a few people put their heads together. Does ReactOS mean slightly more to you than just an Operating System, or do you see it how it first looks: A collection of pointers, functions, and declarations wrapped in a GUI?

It's definitely more than just an Operating System. When ReactOS reaches a stage when it can run most of the Windows applications and drivers that exist, it could be a serious competitor for the standard desktop OS - if not other areas such as servers. Linux is already having an increasing impact on the desktop user market, and something that can natively run Windows applications and drivers will no doubt be favoured over Linux (for novice users, at least) and Windows (due to its cost and restrictions, in contrast to those of ReactOS.)

There's also the educational value, too. By looking at how ReactOS works, you can see how everything fits together (although it's not very obvious at a first glance) and, if/when you feel confident enough, can make modifications to try and improve the kernel for example.

Who knows - one day maybe ReactOS will dictate the future standards for software and hardware!

That's a future I'd like to see. After all, look at components of Linux, such as ReiserFS, that dictate performance standards to other filesystems. As for Educational Value, that's also how I see what ReactOS can do for someone like me. I'm just taking up C++, and I'm sure ReactOS can teach me a thing or two about how C works, in addition to what I'm learning about C++. But, before we conclude this Interview, one, final question.. Given your experiences with ReactOS, and how far your knowledge has progressed during that time.... Where do you see yourself in 5 years time, with regards to ReactOS, and your Real Life goals?

Hopefully by then the audio system will be in place! I believe the next version of Windows (Vista) will have a few changes with regard to the audio system, so I'll probably work on that when the time comes. The major components of the audio system should be fully-functional.

As for my real life goals... I don't really have much planned, other than to relocate to somewhere else in the country.

Most of my hobbies involve technology - even making music.

I'm kinda Music retarded. Music, Art... anything creative gets put in front of me, my left-hand brain switches right off.

I seem to be creative, and logical. I guess that's why I like working on audio/MIDI software, because I can test it whilst being creative!

In any case, I don't intend on giving up on the ReactOS audio system. My previous attempts failed because I wasn't really sure of what I was doing.

Well, I think that wraps things up for today. I best retire before my 1am spelling mistakes creep up on me. Thank-you for being my Guinea Pig this evening, and hopefully, that will entice the other members of the ReactOS Development Team out of the Woodwork :D

top

Conclusion


Whew! That's certainly our biggest issue so far, and I hope we'll see others just as big, if not bigger. As always, feedback is welcome on the ReactOS Weekly Newsletter, as are any requests on things you'd like to see covered. If you have any questions about ReactOS, you can either contact a Developer, or reach me at the address provided below.

Until Next Week.. Happy Compiling!

Stuart "TwoTailedFox" Robbins

ReactOS Weekly Newsletter Editor


top

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.