Hardware-Accelerated Graphics On SGI O2 Under NetBSD
Zadok_Allan writes "It's a bit late, but since many readers will remember the SGI O2 fondly, this might interest a few. The gist of the story is this: NetBSD now supports hardware accelerated graphics on the O2 both in X and in the kernel. We didn't get any help from SGI, and the documentation available doesn't go beyond a general description and a little theory of operation, which is why it took so long to figure it out. The X driver still has a few rough edges (all the acceleration frameworks pretty much expect a mappable linear framebuffer, if you don't have one — like on most SGI hardware — you'll have to jump through a lot of hoops and make sure there's no falling back to cfb and friends) but it supports XRENDER well enough to run KDE 3.5. Yes, it's usable on a 200MHz R5k O2. Not quite as snappy as any modern hardware but nowhere near as sluggish as you'd expect, and since Xsgi doesn't support any kind of XRENDER support, let alone hardware acceleration, pretty much anything using anti-aliased fonts gets a huge performance boost out of this compared to IRIX."
I finaly replaced the carb on '84 accord, and now the engine doesn't stall. Too bad, it's all rusted and missing a wheel.
Weird. Yesterday I was just perusing the SGI discard bin on eBay to see if I could pickup (another!) workstation for under $200 or so. I love those machines, despite IRIX, for surfing the web, e-mail, etc. Now if only Valve would release TF2 for IRIX 6.3 so I can play the sniper update....
It was a pretty box, with a software stack that was pretty solid. Prodev, Inventor and Performer, in particular, were pretty cool.
Sometimes, though, you just have to let the sleeping dead lie. This box symbolized exactly why SGI ran itself into the ground. Perfect being the enemy of good, and all.
There is no one left at SGI who understands how to get X11 to talk to this old hardware. Those people were layed off back during the dot.com bust in early 2000's when SGI shifted focus from Irix to WinNT. Since then Irix has been on absolute minimum life support until it was EOL'ed in 2006.
Therefor it is nearly impossible to get any programming or hardware documentation even if the current SGI wanted to co-operate. It's all been shredded long ago and the people who wrote it are gone, gone, gone!
According to http://bsd.slashdot.org/article.pl?sid=00/06/30/087234, BSD was ported to the O2 in 2000.
People like you kept me from getting involved with Linux.
A few points for you to consider:
- you want to tell me what to do for fun in my Copious Spare Time? Get lost.
- please learn to read - what makes you think this has anything to do with Linux at all?
- Linux needs help? Well, go help them instead of wasting time here.
That's probably exactly what happened. Too bad we won't be able to support any of their newer graphics hardware for that reason.
I hope that, someday, you have a hobby that leads you to excitedly give away for free something that you had the time of your life creating and put all your pride into. Then, I hope that someone tells you what a waste of time it was and insists that you do something less enjoyable for yourself to satisfy his own selfish needs.
I brew my own beer, build my own guitar amplifiers, and write code for projects that have been ongoing for a decade with fewer than a dozen users. To many people, every one of these activities is an utter waste of time. Some of those people get in my face and tell me to spend my time doing something more useful. To that group, I say this: Screw you, I'm having fun.
There is no one left at SGI who understands how to get X11 to talk to this old hardware. Those people were layed off back during the dot.com bust in early 2000's when SGI shifted focus from Irix to WinNT. Since then Irix has been on absolute minimum life support until it was EOL'ed in 2006.
Therefor it is nearly impossible to get any programming or hardware documentation even if the current SGI wanted to co-operate. It's all been shredded long ago and the people who wrote it are gone, gone, gone!
In fact that shift from hardware that ran Irix to WinNT could have happened well before the dot.com bust in 2001. It might have been as early as 1999.
next to vax/vms, irix was my fave dev. platform;-)
i don't know why you were modded flamebait, this has nothing to do with linux.
I think, somewhere along the line there, the topic changed from his open source work to your virginity ;)
IRIS is not the same thing as IRIX.
IRIS[1] stands for "Integrated Raster Imaging System", and was the name of a series of SGI hardware.
1. See http://www.irisindigo.com/index.php/Main_Page
That was beautiful. Thank you.
If the developer in question was doing this commercially, then points about priorities might stand. But it was done solely for fun, for love of an interesting project. To demand that people stop having fun is just... sad.
Laws do not persuade just because they threaten. --Seneca
I don't have an O2, but i have a couple of Octanes and an Onyx, both of which should run rings around an O2... Is there any way to get acceleration working on these, or is IRIX the best that's available?
I seem to remember IRIX having an xrender library available, possibly from sgifreeware or nekochan, or does it just do software rendering? IRIX used to make a very fast X terminal, but modern apps always seemed very sluggish on it and perhaps that's why..
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
It's totally unfair to rate this as flamebait. If any BSD user feels baited by the millionth "BSD is dead" post, he well deserves it.
And, frankly, I guess everybody saw this coming.
I could rate it as redundant, perhaps, but funny fits better.
http://www.dieblinkenlights.com
Strung a little too tight? The fluffy guy has a point. Given the limit audience of this code, I'd call it "hobby" too. As such it isn't particularly newsworthy. The only reason this made it on slashdot is because it mentioned bsd. Had the article been about getting WindowsXP to run on a 386, it would have been promptly ignored.
Could this mean we are nearing the year of NetBSD on the desktop?
...build my own guitar amplifiers...
You too, huh?
Hmmm..Ari..might you be "iamtheari" from the Weber forums by any chance?
Just curious...I'm a frequent poster there and your slashname is somewhat similar to the name in quotes who is an amp builder and poster there that I've recently replied to/helped.
Strat
Progressivism (aka US 'Liberalism'): Ideas so good they need a police/surveillance-state to enforce.
This is an honest question. Aside from the hobbyist and novelty aspect, why would you want to run BSD on old SGI hardware?
The O2 was a low end SGI workstation that marginally outperformed the x86 platform when it was introduced. Unless you have a reason like hardware or system specific coding, why not move to BSD on a cheap x86 platform?
Yeah, I know about big endian versus little endian - had to rewrite a bunch of code when we dumped the Sun E3500s in favor of running Solaris x86.
You caught me! I didn't figure there'd be much overlap between this world and that one. You may have more amps behind your belt, but at least I have a lower slashdot ID than you do! Which volume of the Real Book is "It's a Small World" in, anyhow?
Virginity is underrated. What's really bad is getting laid once and never again! Or, at least, so I've been told. ;)
It is now official. Netcraft confirms: *BSD is dying
One more crippling bombshell hit the already beleaguered *BSD community when IDC confirmed that *BSD market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming on the heels of a recent Netcraft survey which plainly states that *BSD has lost more market share, this news serves to reinforce what we've known all along. *BSD is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.
You don't need to be the Amazing Kreskin to predict *BSD's future. The hand writing is on the wall: *BSD faces a bleak future. In fact there won't be any future at all for *BSD because *BSD is dying. Things are looking very bad for *BSD. As many of us are already aware, *BSD continues to lose market share. Red ink flows like a river of blood.
FreeBSD is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time FreeBSD developers Jordan Hubbard and Mike Smith only serve to underscore the point more clearly. There can no longer be any doubt: FreeBSD is dying.
Let's keep to the facts and look at the numbers.
OpenBSD leader Theo states that there are 7000 users of OpenBSD. How many users of NetBSD are there? Let's see. The number of OpenBSD versus NetBSD posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 NetBSD users. BSD/OS posts on Usenet are about half of the volume of NetBSD posts. Therefore there are about 700 users of BSD/OS. A recent article put FreeBSD at about 80 percent of the *BSD market. Therefore there are (7000+1400+700)*4 = 36400 FreeBSD users. This is consistent with the number of FreeBSD Usenet posts.
Due to the troubles of Walnut Creek, abysmal sales and so on, FreeBSD went out of business and was taken over by BSDI who sell another troubled OS. Now BSDI is also dead, its corpse turned over to yet another charnel house.
All major surveys show that *BSD has steadily declined in market share. *BSD is very sick and its long term survival prospects are very dim. If *BSD is to survive at all it will be among OS dilettante dabblers. *BSD continues to decay. Nothing short of a miracle could save it at this point in time. For all practical purposes, *BSD is dead.
Fact: *BSD is dying
Well, I don't know ... even if there's no expertise and IRIX is EOLed -- all of this is still somewhere in cvs. Old timers from sgi would understand what I mean -- got 2 words -- make that 3 -- {bonnie,clyde}.engr -- all the good stuff was in there. Open source it -- they did it to xfs.
Hehehe! Busted!
Yeah, how many *nix-using geek guitar amp builders can there be, right?
Well, good to see you here. BTW, I use a number of different OS's...Linux, Free/Net/OpenBSD, A little Solaris, and even IRIX Unix in my SGI Octane R12000 workstation. I've even gone as far as playing with Plan9 from Bell Labs.
Good luck with the amp(s)! See you around the Weber forum.
Strat
Progressivism (aka US 'Liberalism'): Ideas so good they need a police/surveillance-state to enforce.
We've seen plenty about projects to use modern GPUs for heavy-duty calculations. These old SGI's were roughly 50% GPU by volume, energy, and cost. Has anyone found a way to use the SGI GPU for computations?
Damn_registrars has no butt-hole. Damn_registrars has no use for a butt-hole.
It ain't always that easy. Some ideas take years to get to the point that they can be made into a saleable product, yet they can be ripped off with a few days of effort. Without protection, why develop the idea in the first place?
Contribute to civilization: ari.aynrand.org/donate
In searching the internet you can add fuel injection to an 84 accord if you'd like. I'd put a thicker jet if i were you. Does it have a roter or a coil pack?
When are those idiots at berkeley gonna stop teaching their os class using NACHOS, and move back to writing BSD? Thats whats killing it in my opinion.
My only SGI is an Indigo2 I picked up around '98 or '99. It was my main workstation until it got completely and thoroughly rooted a couple years later. I dug it out of storage last fall and got it up and running with a fresh install of Irix 6.2. Just for kicks. These days I'm all Mac at home, Debian on my server, and the lovely world of XP at my day job. I swear, I do have one of those that I occasionally make time for.
This seems really, really pointless. I mean yes, I understand these were high end graphics workstations. Ok, fine, but it has been so long, and consumer technology has progressed so much that now regular consumer graphics cards run circles around them. I can understand interest in them even some time after their prime, since their high end hardware had support for things that much consumer hardware didn't, even if the consumer hardware was pushing triangles faster, but that's not the case any longer. A GeForce GTX 280, or hell a cheap GeForce 9600GT, will annihilate the graphics hardware in one of these in every way.
I want to chime in here to answer back to all the "Why? WHY?!!" posts...
I used NetBSD on an old PC I got for free. I like Linux and have had good experiences, but there was something in this PCs hardware the linux kernel didn't like, and NetBSD installed just fine. The man pages for NetBSD were very good, as was the FAQ, and I was able to get everything working just by reading the directions that came with it. I didn't have to scour the web for some obscure web page for the memoirs of some hacker overseas recalling the steps he took to get X11 working.
NetBSD is a fine OS. It very minimal. So, yes, it's missing a lot. But I found it pretty workable without that "you're lost in a maze of configuration files all alike" feeling.
On the environmental side, we should support ALL efforts to get old hardware working. OSS/GNU/BSD should actively support older hardware out-of-the-box. Broke students, the poor in 3rd world countries, kids who get hand-me-down computers that are older than they are... if free software would agressively support old hardware, these machines could be used. I mean, many MacOS ports of free software only run on 10.4 and 10.5, some won't even compile on 10.2 or 10.3 without major source changes...
But it's easier to compile OpenOffice so that you need 512 MB of RAM to get it load in a reasonable time. Firefox is one of the few that works well on old hardware, but it's an exception.
Also, working NetBSD accelerated video may mean a Linux equivalent is in the works. And that other SGI cards will become easier to finish drivers for (people will read the O2 source and realize oh, maybe the Onyx is programmed in a similar way...).
More working open source Operating Systems are better for everybody all around. Every time you use MacOS X, realize that a lot of what you're using was ported from FreeBSD and NetBSD. Yes, OS X is based on NextStep, but 4.2 lack drivers for modern hardware and modern GNU/BSD-style tools. Apple got what it needed from the BSDs and ran with it. And the finished product is worth it.
well, it's about using a computer some of us grew up dreaming about in freedom with a modern software stack. i think the correct tag for this story would be 'insanely cool'.
bohemian.
is information about hardware interfaces in NetBSD enough to reverse-engineer most of the O2 machine so it could run IRIX natively?
:)
If so, it would be very cool to make a clone of old SGI workstations like O2, but with faster CPU, better OpenGL pipeline, more RAM, USB ports, solid state drives while still being able to run software like original IRIX, Maya, Photoshop, etc. Wouldn't be too bad for the design of the case to stay the same
It is always better to be a first grade version of yourself than a second grade version of someone else.
Linux is mentioned but not praised.
First time I got laid I was so nervous I messed it all up. I got her hair caught in my zipper, rolled over and broke her glasses, and then came in her ear. Then she went and told all her friends, who told all their friends, and so... like... it's only been once because I've been blackballed from female companionship. Sigh.
Don't blame me, I didn't vote for either of them!
One interesting O2 oddity is that the native pixel format is RGBA rather than ARGB (the alpha channel is at the other end of each 32 bit word).
Fixing that flushed out a whole bunch of assumptions in X driver and application code, which helps keep non SGI specific X and application code portable. Interesting to think that a user who only runs x86_64/Linux may be running an app with slightly cleaner code thanks to Michael's work on an ol' SGI O2...
(He has also fixed up and extended the accelerated driver for SGI Indy machines with newport graphics, and written drivers for a bunch of other graphics hardware on sparc, macppc and arm)
Most of the focus in NetBSD is on x86_64/i386 and embedded arm/mips/ppc boxes nowdays, but if you squint a little a small enough embedded box looks *really* similar to an older desktop/server box :)
so if people want to maintain support, why not?
Anyway, if you want a *really* slow older box you should be looking at an Atari TT or Vax (and lets just say we're not seeing any burst of new graphics drivers for them :)