If I may add my 2 cents worth.
I too have a spot in my heart for Linux Gui's, both KDE and Gnome.
However the overheads are too high. So I have 3 three Thinkspads on the net.
and a comfortable swivel chair.
IMHO Linux is toooo fat and slow and badly designed, before I get flamed it is only MHO.
So I have tried to compromise (on Particulars, not on Principles).
This was my strategy (for what it is worth):
Please remember it is only MHO, and not set in concrete.
I chose the first Linux distro off the block i.e. Slackware because it stuck to basic principles. Yes as simple as that. The old 1440 KB floppy disk (about the size of my limited imagination).
I chose a basic Windows32 platform i.e. 9x
Then I worked on the tiny Linux's (Monkey Linux, and pocket Linux)
Until I discovered Pat Villani's :
Linux for Windows 9X
Home page: http://www.monmouth.com/user_pages/patv/
Download: ftp://opensourcedepot.com/pub/linux/WinLin9X/v0.2/setup.exe
Author: Pat Villani (http://www.monmouth.com/user_pages/patv)
Mailing list: lin4win(a)opensourcedepot.com
It was great, it sat neatly in 18 MB.
Then I asked myself, "what the heck am I doing with nearly half a gig of Windows98se?"
Not wanting to bring Microsoft down on my financially poor head:
I downloaded Australian product called 98Lite from LitePC.com (trial version)
I liked it so much I bought the real thing.
It gave me the opportunity to unbolt everything which Microsoft told the courts was not possible to do.
There she was, stripped from nearly half a gig to 50mb, stark naked, but looking like Homer Simpson.
The speed increase was fantastic. Now I am going for 30 mb, then 16, then 8, then .......
The full story would take too long to tell, so I will leave it at that.
Suffice to say I have now dumped Linux and gone back to Unix BSD and bash.
That is when met Minsys and it was a good feeling.
I was Bourne again, bash'ed about the head, so to speak.
Oh I forgot there is a need for one extra doorway off ros-general especially for me.
Mark it ros-insane.
Cheers and rosuccess
Justin
---- "Robert Köpferl" <rob(a)koepferl.de> wrote:
> Hhmmm, what you tink of is what I call a GDI-Port+win32 of xfree.
> etc
> Richard Campbell wrote:
> > XFree86 has already been ported to windows, whats the point in a ROS port?
> > etc
> > Robert Köpferl wrote:
> > etc
> >> It should be possible to port Xfree86 to ROS (be it win32 or posix) as
> >> it has been proted to os2.
> >>etc
> >> TwoTailedFox wrote:
> >> etc
> >>> I've seen quite a few users propose ideas, such as a new GUI, or new
> >>> functionality, only to be told it doesn't fit in with the Core Goal of
> >>> ReactOS.
> >>> etc
> >>> _______________________________________________
> >>> ros-general mailing list
> >>> ros-general(a)reactos.org
> >>> http://www.reactos.org/mailman/listinfo/ros-general
> >>>
> >> _______________________________________________
> >> ros-general mailing list
> >> ros-general(a)reactos.org
> >> http://www.reactos.org/mailman/listinfo/ros-general
> >>
> > _______________________________________________
> > ros-general mailing list
> > ros-general(a)reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-general
> >
>
> _______________________________________________
> ros-general mailing list
> ros-general(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-general
Hi Lyrical.
How can I possibly argue with that, assembler and "C" will always be necessary.
It goes without saying.
If we ever do get a ros-programming list, they will both be basic learning requirements.
And if we do get it, then a ros-user list, just for non programmers will likewise be a requirement.
As for ros-programming, we already have a link to MingGW-Msys which is dedicated to creating both Windows and Win-Linux Applications. It has about 5 years of experience.
ReactOS already comes better supplied with free software than Microsoft. But unfortunately it comes as a benefit to Microsoft too.
Already MinGW-Msys has a sizable library of tools, for the enthusiastic How-to programmer.
ReactOS can seriouly compete with Windows, but only if it maintains a high level of Free Professionalism.
That is not necessarily a contradition. A professional attitude assists the Free Open Source development.
For us older and I hope wiser ex-professionals programmers, we lean more to the What-if-User side.
The basic programming requirement for us, I believe is the second great product of the Bell engineers, AWK: Alfred V. Aho, Peter J. Weinberger, and Brian W. Kernighan.
That lead to Perl. It is almost impossible to get us away from programming, no matter how high we go.
But there are those who don't want to program at all, just play What-if games of illusion.
The ideal tool for that is a Spread Sheet, like excel. That and IBM RPG are my pet hate.
If you have a Maths and Process Control bent, then is has to be Haskell and Lambda programming.
http://www.haskell.org/
But if that is too much like programming then we look for an Integrated Development Environment, IDE like:.
Smalltalk, the great creation from Palo Alto Research Center PARC, and funded with heaps of Xerox money;
http://www.cs.uta.fi/kurssit/OPOK/smalltalk/Smalltalk%20Express/
It is less than 3MB compressed (must switch display to 256 color), and free NC
It will actually run and access files on a hard disk in Safe Mode. Impossible?? then try it.
A similar great creation of Alain Colmerauer and Robert Kowalski is Prolog. That can also be downloaded from http://www.pdc.dk/ . It is really the old Borland Turbo Prolog and FreeNC
An example of the Power of IBM VisualSmalltalk is Liberty Basic www.libertybasic.com/ and FreeNC Just Basic http://www.justbasic.com/ .
It is less then 3 MB compressed and is wowing the older and younger VBasic enthusiasts and runs under windows. It uses a Smalltalk VM to interpret Vbasic commands and executes them in Smalltalk.
It is am amazing demonstration of the power of the Software Illusion.
Anyway they are all here on:
http://www.google.com/search?hl=en&q=Wikipedia+hello+world&btnG=Google+Sear…
But before all of that, we need to structure our ros-general to better support these diverse requirements.
Ros-general is becoming too crowded.
All these Languages are too much to handle and still have time to get on with the job.
Cheers and rosuccess
Justin
http://www.cs.uta.fi/kurssit/OPOK/smalltalk/Smalltalk%20Express/
---- Lyrical Nanoha <LyricalNanoha(a)dosius.net> wrote:
> On Thu, 20 Oct 2005, jwalsh(a)bigpond.net.au wrote:
>
> > If I may add my 2 cents worth.
> > I too have a spot in my heart for Linux Gui's, both KDE and Gnome.
> > However the overheads are too high. So I have 3 three Thinkspads on the net.
> > and a comfortable swivel chair.
>
> Try QVWM, FVWM or XFCE 3.8 and you'll see that a window manager doesn't
> have to be bloated. All of those run nicely in 64 MB RAM and I have run
> QVWM and FVWM successfully on 32. KDE otoh strains and groans in 64 MB.
>
> > Suffice to say I have now dumped Linux and gone back to Unix BSD and bash.
>
> Well, BSD isn't legitimately called "UNIX" anymore, but still. BSD tools
> are lighter than GNU tools, and more efficient. GNU itself is very
> bloated.
>
> -uso.
> _______________________________________________
> ros-general mailing list
> ros-general(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-general
Right on Kevin, right on !!
I intuitively know you aren't trying to win. I like your style.
People of my generation don't like to be patronised, just challenged.
I have to admit I am not a spring chicken, just old and wasting away.
People like you give me that added burst of life.
Please let me thank you. Lets make ReactOS something to boast about.
It makes me feel so good to have found ros-general.
Here the old and the young can come together with one mind.
But a few (little) adjustments could be helpful.
One such adjustment would be a doorway to MinGW-Msys and to Earnie Boyd.
He is the guy to help all those "C" advocates.
The doorway should be named ros-programming.
The other should be named ros-users.
Perhaps another for ros-abusers (just kidding).
Cheers and rosuccess
Justin
---- Kevin Lawton <kepla(a)btinternet.com> wrote:
> Hey, Justin, I wasn't trying to 'win' - didn't want to sound better or anything.
> I just wanted to inject a point or two into the discussion.
> Anyway, thanks - the link is interesting.
> I still think the same principle applies - use a high-level language where you want the emphasis on ease of development and maintenance but use a low-level language where speed and efficiency are paramount. What I do think is interesting is where a low-level language, like assembler, is used to produce small fast software - far more than strictly 'necessary' - resulting in high efficiency and an unexpected turn of speed. Like, for example, the concept of a GUI-based op system which will fit on a floppy disk. In other forms of engineering, electrical or mechanical for example, efficiency is highly desirable for economy in both energy consumption and materials usage. Software engineering doesn't currently seem to be following similar principles.
> What I think would be really cool would be if ReactOS was not just a Windows replacement, but a faster and more efficient Windows replacement.
> Kevin.
>
> > -----Original Message-----
> > From: jwalsh(a)bigpond.net.au [mailto:jwalsh@bigpond.net.au]
> > Sent: 18 October 2005 14:36
> > To: ReactOS General List
> > Cc: Kevin Lawton
> > Subject: RE: [ros-general] New to ReactOS
> >
> >
> >
> > Ok Kevin, you win.
> > How can I begin to answer you?
> > Except to say, take a look at where tha AIM group: Apple IBM and
> > Motorola are going.
> > It looks like Wintel group Microsoft and Intel will not be far
> > behind either.
> >
> > So please take a look at what has been thrown away in 1996.
> >
> > www.cs.uta.fi/kurssit/OPOK/smalltalk/Smalltalk%20Express/
> >
> > Please download it. It's only about 3 MB compressed (in two files).
> > It is free non commercial and will do absolutley no damage I promise you.
> > Because it was designed for DOS it will call the Windows API only
> > very rarely.
> > In fact I ran it in safe mode and I could access the hard disk,
> > which is supposed to be impossible to do.
> > This version is probably limited to 256 colors so make sure you
> > switch the display.
> > Then we can talk later about the relavance of 'C' and 'Assembler'
> > Regards and rosuccess
> > Justin
> >
> >
> >
> >
> >
> > ---- Kevin Lawton <kepla(a)btinternet.com> wrote:
> > > Yeah, okay, but . . .
> > > With C being a 'higher level' language than assembler it will always be
> > > easier for a group of humans to work on a project in. You could
> > take this
> > > further and use something like Java, though not for an
> > op-system kernel as
> > > Java programs need something below them to run the run-time
> > virtual machine.
> > > C is a good language for writing an op system in because that
> > is why it was
> > > designed (by Kerningham and Ritchie - their book on C is still
> > the best work
> > > of its kind). It was created to write the Unix op system in and the
> > > combination of high and low-level features will always make it ideal for
> > > such a task. In terms of generating nice tight machine code
> > when compiled, C
> > > is probably the best high-level language in this respect.
> > > Modern computers are so enormously powerful that most projects
> > feel that it
> > > is unnecessary to use assembler for the extreme efficiency it
> > offers - C is
> > > more than 'good enough'. But, when projects ARE written for
> > modern machines
> > > using assembler we then start to see just how fast things can
> > go. We might
> > > feel that the 'average' PC is plenty fast enough performing
> > day-to-day tasks
> > > with an op system written in C and applications in Java or VB, and it
> > > probably is, but give it a chance to run software written in
> > good assembler
> > > and you can get quite a surprise. Even if we think we can spare
> > it, those
> > > high-level language programs (incl op system) can perform
> > nothing like the
> > > blistering performance you can get from really good assembler
> > code. You also
> > > find that because assembler programming is so 'direct' then the
> > resulting
> > > machine code tends to be far more compact than that generated from other
> > > languages. Smaller programs (op systems included) use less room on disk,
> > > load faster into a smaller memory space and tend to have
> > shorter execution
> > > paths.
> > > It is all fine and dandy that ReactOS will be a working 'clone'
> > of Windows
> > > but Windows is often criticised for being large and slow. What
> > if ReactOS
> > > could achieve full Windows compatibility while being much
> > smaller and faster
> > > ?
> > > Kevin.
> > >
> > > > -----Original Message-----
> > > > From: ros-general-bounces(a)reactos.org
> > > > [mailto:ros-general-bounces@reactos.org]On Behalf Of Murphy, Ged
> > > > (Bolton)
> > > > Sent: 18 October 2005 08:13
> > > > To: 'ReactOS General List'
> > > > Subject: RE: [ros-general] New to ReactOS
> > > >
> > > >
> > > > jwalsh(a)bigpond.net.au wrote:
> > > >
> > > > > Who uses assembler for serious anything these days?
> > > > <snip>
> > > > > If anybody from ros is really in need of assembler then
> > > > something is sus.
> > > >
> > > >
> > > > Considering you can't build ROS without an assembler, something
> > > > must be sus.
> > > > If you look at the ReactOS kernel, you will find many asm files.
> > > > My point was that the vast majority is written in C and is generally
> > > > preferred.
> > > >
> > > > Ged.
> > > >
> > > >
> > > >
> > > >
> > ************************************************************************
> > > > The information contained in this message or any of its
> > > > attachments is confidential and is intended for the exclusive
> > > > use of the addressee. The information may also be legally
> > > > privileged. The views expressed may not be company policy,
> > > > but the personal views of the originator. If you are not the
> > > > addressee, any disclosure, reproduction, distribution or other
> > > > dissemination or use of this communication is strictly prohibited.
> > > > If you have received this message in error, please contact
> > > > postmaster(a)exideuk.co.uk
> > > > <mailto:postmaster@exideuk.co.uk> and then delete this message.
> > > >
> > > > Exide Technologies is an industrial and transportation battery
> > > > producer and recycler with operations in 89 countries.
> > > > Further information can be found at www.exide.com
> > > >
> > > >
> > > > _______________________________________________
> > > > ros-general mailing list
> > > > ros-general(a)reactos.org
> > > > http://www.reactos.org/mailman/listinfo/ros-general
> > >
> > > _______________________________________________
> > > ros-general mailing list
> > > ros-general(a)reactos.org
> > > http://www.reactos.org/mailman/listinfo/ros-general
> >
>
>
> _______________________________________________
> ros-general mailing list
> ros-general(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-general
I've seen quite a few users propose ideas, such as a new GUI, or new
functionality, only to be told it doesn't fit in with the Core Goal of
ReactOS.
ReactOS is all about creating a Win32-compatible Operating System.
Now, later on, when the Kernel is sufficiently developed, we can do
what Linux does, and create "Distributions".
I had a look at the KDE/Ros Thread, and noted that a version of that,
and GNOME may well be available for Windows next year.
If the UI Team chooses to Grow, you can offer, for example mind you, a
Core ReactOS System, with Windows Classic, and one or more
"Distributions", with a different GUI, such as KDE or GNOME.
Same goes for ReactOS in different 'roles'. Offering versions aimed at
Workstations, Servers, or even for Educational/Testing use, would be
feasible down the line.
Just my 0.02c
--
"I had a handle on life, but then it broke"
Ok Kevin, you win.
How can I begin to answer you?
Except to say, take a look at where tha AIM group: Apple IBM and Motorola are going.
It looks like Wintel group Microsoft and Intel will not be far behind either.
So please take a look at what has been thrown away in 1996.
www.cs.uta.fi/kurssit/OPOK/smalltalk/Smalltalk%20Express/
Please download it. It's only about 3 MB compressed (in two files).
It is free non commercial and will do absolutley no damage I promise you.
Because it was designed for DOS it will call the Windows API only very rarely.
In fact I ran it in safe mode and I could access the hard disk, which is supposed to be impossible to do.
This version is probably limited to 256 colors so make sure you switch the display.
Then we can talk later about the relavance of 'C' and 'Assembler'
Regards and rosuccess
Justin
---- Kevin Lawton <kepla(a)btinternet.com> wrote:
> Yeah, okay, but . . .
> With C being a 'higher level' language than assembler it will always be
> easier for a group of humans to work on a project in. You could take this
> further and use something like Java, though not for an op-system kernel as
> Java programs need something below them to run the run-time virtual machine.
> C is a good language for writing an op system in because that is why it was
> designed (by Kerningham and Ritchie - their book on C is still the best work
> of its kind). It was created to write the Unix op system in and the
> combination of high and low-level features will always make it ideal for
> such a task. In terms of generating nice tight machine code when compiled, C
> is probably the best high-level language in this respect.
> Modern computers are so enormously powerful that most projects feel that it
> is unnecessary to use assembler for the extreme efficiency it offers - C is
> more than 'good enough'. But, when projects ARE written for modern machines
> using assembler we then start to see just how fast things can go. We might
> feel that the 'average' PC is plenty fast enough performing day-to-day tasks
> with an op system written in C and applications in Java or VB, and it
> probably is, but give it a chance to run software written in good assembler
> and you can get quite a surprise. Even if we think we can spare it, those
> high-level language programs (incl op system) can perform nothing like the
> blistering performance you can get from really good assembler code. You also
> find that because assembler programming is so 'direct' then the resulting
> machine code tends to be far more compact than that generated from other
> languages. Smaller programs (op systems included) use less room on disk,
> load faster into a smaller memory space and tend to have shorter execution
> paths.
> It is all fine and dandy that ReactOS will be a working 'clone' of Windows
> but Windows is often criticised for being large and slow. What if ReactOS
> could achieve full Windows compatibility while being much smaller and faster
> ?
> Kevin.
>
> > -----Original Message-----
> > From: ros-general-bounces(a)reactos.org
> > [mailto:ros-general-bounces@reactos.org]On Behalf Of Murphy, Ged
> > (Bolton)
> > Sent: 18 October 2005 08:13
> > To: 'ReactOS General List'
> > Subject: RE: [ros-general] New to ReactOS
> >
> >
> > jwalsh(a)bigpond.net.au wrote:
> >
> > > Who uses assembler for serious anything these days?
> > <snip>
> > > If anybody from ros is really in need of assembler then
> > something is sus.
> >
> >
> > Considering you can't build ROS without an assembler, something
> > must be sus.
> > If you look at the ReactOS kernel, you will find many asm files.
> > My point was that the vast majority is written in C and is generally
> > preferred.
> >
> > Ged.
> >
> >
> >
> > ************************************************************************
> > The information contained in this message or any of its
> > attachments is confidential and is intended for the exclusive
> > use of the addressee. The information may also be legally
> > privileged. The views expressed may not be company policy,
> > but the personal views of the originator. If you are not the
> > addressee, any disclosure, reproduction, distribution or other
> > dissemination or use of this communication is strictly prohibited.
> > If you have received this message in error, please contact
> > postmaster(a)exideuk.co.uk
> > <mailto:postmaster@exideuk.co.uk> and then delete this message.
> >
> > Exide Technologies is an industrial and transportation battery
> > producer and recycler with operations in 89 countries.
> > Further information can be found at www.exide.com
> >
> >
> > _______________________________________________
> > ros-general mailing list
> > ros-general(a)reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-general
>
> _______________________________________________
> ros-general mailing list
> ros-general(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-general
Why all the excitement?
Who uses assembler for serious anything these days?
Ok in my day I used debug.exe because it came with DOS.
Now chip sizes are so large and processors so fast it would be a joke.
Today I would use AWK.exe, and if I needed to get tight assembler, compile it with TAWK.
or Mawk.
Then if I were mad enough, hand craft out the redundency, or write another in AWK program to do it.
You will get more Wow for your effort.
If anybody from ros is really in need of assembler then something is sus.
Regards and rosucceed
Justin
---- Redefined Horizons <redefined.horizons(a)gmail.com> wrote:
> Wow! Great news!
> Now let me ask about volunteering to help with the project. I'd like to get
> some experience programming in assembly language and/or machine code.
> Is there any need for this on the ReactOS project? Can I start on some
> simple assembly language programming tasks for ReactOS and have someone that
> can guide me through the tough spots?
> Let me know if I can help in this area.
> Scott
>
> On 10/17/05, KJKHyperion <hackbunny(a)reactos.com> wrote:
> >
> > Redefined Horizons wrote:
> >
> > > [1] Is ReactOS built on a Unix core, or is it a new operating
> > > sytem from the ground up?
> >
> > ReactOS is all-original, written from the ground up as a clone of the
> > Windows design
> >
> > > [2] Can you dual boot with ReactOS and a Linux operating system like
> > > Debian? If you can, is there a place where I can find instructions on
> > > how to do so?
> >
> > yes, see
> > <http://www.reactos.org/wiki/index.php/HOWTO/boot_FreeLoader_from_GRUB>
> >
> > > [3] Does an application that runs on Microsoft Windows have to be
> > > ported before it can be run on ReactOS?
> >
> > No
> >
> > > Can I try installing the program to see how it works?
> >
> > Yes
> > _______________________________________________
> > ros-general mailing list
> > ros-general(a)reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-general
> >
True Magnus.
However C and Assembler are only two of about 150 computer languages.
They are the A to Z, so to speak, and have a set order, like the numbers 123...n-1.
Some people are so obsessed by Number and Letter sequences, that is all they do.
Like chasing pi
Pythagoras established a complete religion on a simple Triangle.
In the beginning Unix recognised a string of character terminated by a null character.
And the standard io was a keyboard and display, and it was ASCII not extended.
I do not think much has changed, except we make it a lot harder to distinguish between these simple beginnings and now.
There are two basic kinds of operatives:
The What-if kind and the How-to kind
The What-if kind like the spread sheet and play games with truth tables
The How-to kind like to build the tools for the What-if kind.
The What-if kind want to want to build the world.
The How-to kind want to print it out as "hello world"
both are obsessions.
http://en.wikipedia.org/wiki/Hello_world_program
Regards and rosuccess
Justin
---- Magnus Olsen wrote:
> Some part are optimze in asm in ros. Rember if u coding right
> asm is faster that any other langues. BitBlit optimze in some part
> was done in asm. If any one feel some part can be optimze in asm
> then do it. But we need also the C function so it can compile on other
> platforms.
>
> ----- Original Message -----
> From:
> To: "ReactOS General List"
> Cc: "Redefined Horizons"
> Sent: den 18 October 2005 02:41
> Subject: Re: [ros-general] New to ReactOS
>
>
> > Why all the excitement?
> > Who uses assembler for serious anything these days?
> > Ok in my day I used debug.exe because it came with DOS.
> > Now chip sizes are so large and processors so fast it would be a joke.
> > Today I would use AWK.exe, and if I needed to get tight assembler, compile
> it with TAWK.
> > or Mawk.
> > Then if I were mad enough, hand craft out the redundency, or write another
> in AWK program to do it.
> > You will get more Wow for your effort.
> > If anybody from ros is really in need of assembler then something is sus.
> >
> > Regards and rosucceed
> >
> > Justin
> >
> >
> > ---- Redefined Horizons wrote:
> > > Wow! Great news!
> > > Now let me ask about volunteering to help with the project. I'd like to
> get
> > > some experience programming in assembly language and/or machine code.
> > > Is there any need for this on the ReactOS project? Can I start on some
> > > simple assembly language programming tasks for ReactOS and have someone
> that
> > > can guide me through the tough spots?
> > > Let me know if I can help in this area.
> > > Scott
> > >
> > > On 10/17/05, KJKHyperion wrote:
> > > >
> > > > Redefined Horizons wrote:
> > > >
> > > > > [1] Is ReactOS built on a Unix core, or is it a new operating
> > > > > sytem from the ground up?
> > > >
> > > > ReactOS is all-original, written from the ground up as a clone of the
> > > > Windows design
> > > >
> > > > > [2] Can you dual boot with ReactOS and a Linux operating system like
>
> > > > > Debian? If you can, is there a place where I can find instructions
> on
> > > > > how to do so?
> > > >
> > > > yes, see
> > > >
>
> > > >
> > > > > [3] Does an application that runs on Microsoft Windows have to be
> > > > > ported before it can be run on ReactOS?
> > > >
> > > > No
> > > >
> > > > > Can I try installing the program to see how it works?
> > > >
> > > > Yes
> > > > _______________________________________________
> > > > ros-general mailing list
> > > > ros-general(a)reactos.org
> > > > http://www.reactos.org/mailman/listinfo/ros-general
> > > >
> > _______________________________________________
> > ros-general mailing list
> > ros-general(a)reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-general
> >
> >
> > --
> > No virus found in this incoming message.
> > Checked by AVG Anti-Virus.
> > Version: 7.0.344 / Virus Database: 267.12.2/137 - Release Date: 2005-10-16
> >
> >
>
> _______________________________________________
> ros-general mailing list
> ros-general(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-general
Thank you Casper.
In a nutshell ! !
I only wish I could have put it so succinctly.
The problem with ros at the moment (and it is not life threatening) is:
There is no space set aside for private discussion, but which, at the same times allows for returning to the ros-general thread again.
Because of that (design failure not code failure), we all stay in the ros-general public space and argue over the top of one another.
Sometimes it seems like the floor of the NYSE, where people must waive and shout to get attention to their particular issue.
Good fun for some but agony for others.
Regards and rosuccess
Justin
---- Casper Hornstrup <ch(a)csh-consult.dk> wrote:
> You have to know when to use it. I think we do okay in that area.
> We have assembler optimized versions of string functions which are
> often executed during operation, but we also have C versions of
> these functions to make ReactOS easier to port to new architectures.
> We have assembler code for very low-level code which would be
> impossible to do in C. I believe there should be a minimum of
> assembly used to increase maintainability/portability and when used,
> it should be because there is a major speed difference during
> _normal operation_ of the OS. If a function which is called only
> once during startup of the OS could be made 1ns faster using
> assembly, then it doesn't really make ReactOS feel faster to the
> user even though running the function 10000 times in a loop might
> show a 1000% average speed increase. If the function was run 1000
> times a second during normal operation then the user might feel
> a difference. There are other ways to make ReactOS faster than
> resorting to assembly. You could use better algorithms for
> instance.
>
> Casper
>
> > -----Original Message-----
> > From: ros-general-bounces(a)reactos.org [mailto:ros-general-bounces@reactos.org] On Behalf Of Kevin
> > Lawton
> > Sent: 18. oktober 2005 10:30
> > To: ReactOS General List
> > Subject: RE: [ros-general] New to ReactOS
> >
> > Yeah, okay, but . . .
> > With C being a 'higher level' language than assembler it will always be
> > easier for a group of humans to work on a project in. You could take this
> > further and use something like Java, though not for an op-system kernel as
> > Java programs need something below them to run the run-time virtual machine.
> > C is a good language for writing an op system in because that is why it was
> > designed (by Kerningham and Ritchie - their book on C is still the best work
> > of its kind). It was created to write the Unix op system in and the
> > combination of high and low-level features will always make it ideal for
> > such a task. In terms of generating nice tight machine code when compiled, C
> > is probably the best high-level language in this respect.
> > Modern computers are so enormously powerful that most projects feel that it
> > is unnecessary to use assembler for the extreme efficiency it offers - C is
> > more than 'good enough'. But, when projects ARE written for modern machines
> > using assembler we then start to see just how fast things can go. We might
> > feel that the 'average' PC is plenty fast enough performing day-to-day tasks
> > with an op system written in C and applications in Java or VB, and it
> > probably is, but give it a chance to run software written in good assembler
> > and you can get quite a surprise. Even if we think we can spare it, those
> > high-level language programs (incl op system) can perform nothing like the
> > blistering performance you can get from really good assembler code. You also
> > find that because assembler programming is so 'direct' then the resulting
> > machine code tends to be far more compact than that generated from other
> > languages. Smaller programs (op systems included) use less room on disk,
> > load faster into a smaller memory space and tend to have shorter execution
> > paths.
> > It is all fine and dandy that ReactOS will be a working 'clone' of Windows
> > but Windows is often criticised for being large and slow. What if ReactOS
> > could achieve full Windows compatibility while being much smaller and faster
> > ?
> > Kevin.
>
> _______________________________________________
> ros-general mailing list
> ros-general(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-general
jwalsh(a)bigpond.net.au wrote:
> Who uses assembler for serious anything these days?
<snip>
> If anybody from ros is really in need of assembler then something is sus.
Considering you can't build ROS without an assembler, something must be sus.
If you look at the ReactOS kernel, you will find many asm files.
My point was that the vast majority is written in C and is generally
preferred.
Ged.
************************************************************************
The information contained in this message or any of its
attachments is confidential and is intended for the exclusive
use of the addressee. The information may also be legally
privileged. The views expressed may not be company policy,
but the personal views of the originator. If you are not the
addressee, any disclosure, reproduction, distribution or other
dissemination or use of this communication is strictly prohibited.
If you have received this message in error, please contact
postmaster(a)exideuk.co.uk
<mailto:postmaster@exideuk.co.uk> and then delete this message.
Exide Technologies is an industrial and transportation battery
producer and recycler with operations in 89 countries.
Further information can be found at www.exide.com
In retrospect there is one important area for the Assembly Language Programmer.
It would only be interesting to the serious enthusiast.
It is writing primitives for very tight Smalltalk.
It is the area of embedded systems.
Owing to a buggys Windows98se I cannot send attachments (indirectly a good thing).
An Example is below.
Regards and rosuccess
---- Redefined Horizons <redefined.horizons(a)gmail.com> wrote:
> Wow! Great news!
> Now let me ask about volunteering to help with the project. I'd like to get
> some experience programming in assembly language and/or machine code.
> Is there any need for this on the ReactOS project? Can I start on some
> simple assembly language programming tasks for ReactOS and have someone that
> can guide me through the tough spots?
> Let me know if I can help in this area.
> Scott
>
> On 10/17/05, KJKHyperion <hackbunny(a)reactos.com> wrote:
> >
> > Redefined Horizons wrote:
> >
> > > [1] Is ReactOS built on a Unix core, or is it a new operating
> > > sytem from the ground up?
> >
> > ReactOS is all-original, written from the ground up as a clone of the
> > Windows design
> >
> > > [2] Can you dual boot with ReactOS and a Linux operating system like
> > > Debian? If you can, is there a place where I can find instructions on
> > > how to do so?
> >
> > yes, see
> > <http://www.reactos.org/wiki/index.php/HOWTO/boot_FreeLoader_from_GRUB>
> >
> > > [3] Does an application that runs on Microsoft Windows have to be
> > > ported before it can be run on ReactOS?
> >
> > No
> >
> > > Can I try installing the program to see how it works?
> >
> > Yes
> > _______________________________________________
> > ros-general mailing list
> > ros-general(a)reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-general
> >
-------------------------------------------------------------------------------
PAGE 85,132
TITLE User Defined Primitive #92 (INT 62H)
; This is an example of a possible user defined primitive.
; The primitive below "primitive92" is an implementation
; of the String at: primitive.
;
; The first part of the code "installs" the primitive
; "segment and offset" address into INT 62H vector.
; The second part, "primitive92" defines the code that
; will be executed when primitive number 92 from
; "Smalltalk/V" is invoked.
PAGE
INCLUDE fixdptrs.usr
IF1
INCLUDE access.usr
ENDIF
PAGE
code SEGMENT
ASSUME CS:code,DS:code,ES:code
ORG 100H
start: JMP installPrim
PAGE
primitive92 PROC FAR
; This is code that will be executed everytime primitive
; number 92 is invoked from "Smalltalk/V"
enterPrimitive ;enter primitive macro (see macro
;listings)
MOV CX,DI ;copy receiver in CX
; getClass DI,DX,ES ;put class of receiver in DX
;
; CMP DX,ClassStringPtr ;if class of receiver is not
; JNE failure ;String then primitive fails
; ;(This check is commnet since it is
; ;not necessary but it is shown here
; ;as an example on how to use the
; ;getClass macro
MOV DI,[BP+16] ;put index argument in DI
SHR DI,1 ;shift right and
MOV AX,DI ;copy in AX
JNC smallInt ;if no carry (even number) then
RCL DI,1 ;its a small integer and jump else
;restore the index object ptr
MOV DX,SS ;set ES to address classes segment
SHR DX,1
MOV ES,DX
CMP WORD PTR ES:[DI],ClassLargePosInt ;if class of index object
JNE failure ;pointer is LargePositiveInteger
;then continue else primitive fails
getObjectAddress DI,BX,ES ;get address of index object ptr
CMP WORD PTR ES:[BX],4 ;size of this large positive
JNE failure ;integer must be 4 (2 bytes for
;size header + 2 bytes for the
;number itself) - not 4 suggests
;that number is more than 2 bytes
;long and primitive fails else
MOV AX,ES:[BX+2] ;move 2 byte integer into AX and
JMP haveIndex ;jump to haveIndex
smallInt: JLE failure ;if after shift sign of integer
;changes or its zero then
;primitive fails (index must be
;greater than zero)
haveIndex: INC AX ;index +1 to correct byte access
JZ failure ;later on; if value goes to 0 then
;index was too large and primitive
;fails
MOV BX,CX ;set BX to receiver object ptr and
getObjectAddress BX,DI,ES ;get address of receiver (string)
isSizeEven BX,CX,DS ;check even/odd length of string
;object (JZ for even length)
MOV BX,ES:[DI] ;move size of string to BX
JZ even ;if isSizeEven result is zero
DEC BX ;condition flag then length
;of string is even (BX - 2 bytes
;for size header) else length of
;string is odd (BX - 3) so adjust
;size of string (BX) by -1
even: CMP AX,BX ;adjusted index must be less than
JAE failure ;BX (string size) else primitive
;fails
;now we must get the character
;from the string and turn it into
;an object pointer
XOR CH,CH ;set CH to zero
MOV BX,AX ;set BX to be adjusted index
MOV CL,ES:[DI+BX] ;move to CL the char from string
SHL CX,1 ;multiply CX by 2
ADD CX,FirstCharacterPtr ;add to CX the base character ptr
MOV BX,CX ;set BX to result char pointer
exitWithSuccess 1 ;and enter into successful exit
;macro with arg count 1 (the index)
failure: exitWithFailure 1 ;failure macro with arg count 1
primitive92 ENDP
primitive92end LABEL BYTE ;label for exit and stay resident
; This is primitive "installation code" with the exit and
; stay resident
installPrim PROC NEAR
MOV AX,CS ;set DS to address code segment
MOV DS,AX
MOV DX,OFFSET primitive92 ;load DX with primitive offset
MOV AX,2562H ;use DOS to set address of INT 62H
INT 21H
LEA DX,primitive92end ;load DX with address beyond last
INT 27H ;byte - exit and stay resident
installPrim ENDP
SUBTTL
PAGE
code ENDS
END start