Slashdot Mirror


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."

54 of 75 comments (clear)

  1. Related news by Anonymous Coward · · Score: 4, Insightful

    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.

    1. Re:Related news by Zadok_Allan · · Score: 1

      The computer equivalent of that would be a Dell 486. The O2's would be at least a Corvette.

  2. Hmmm... by crumbz · · Score: 3, Funny

    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....

    1. Re:Hmmm... by kramulous · · Score: 1

      At work we were going through our storeroom and came across three SGI O2's, 4 Octanes, 2 indigos and an Onyx (Ok, it's a big storeroom). The boss wanted them to be thrown out. I managed to convince him not too. That these are the sort of machines that may start to increase in price.

      I used the Onyx 6 years ago when I first started as a remote X display (or was it an Indigo)? But that's about it. All of them still work.

      --
      .
    2. Re:Hmmm... by Mix+Master+Nixon · · Score: 1

      (another!) workstation for under $200 or so.

      Does it support Xinerama with hardware acceleration? If not, there's no possible selling point compared to my $500 Dell laptop whatsoever (Intel video card).

      An X driver with lots of rough edges and lots of hoops to jump through? This is different than my Dell laptop with Intel graphics running Linux how, exactly?

      --
      Oppressing an entire population is never cheap.
      --Jeckler (/. Beta IS GARBAGE!)
    3. Re:Hmmm... by Bert64 · · Score: 1

      I have a dual head Octane which supported Xinerama under IRIX... It worked quite smoothly and had acceleration on both heads.

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
    4. Re:Hmmm... by Score+Whore · · Score: 1

      No. It was DEC.

    5. Re:Hmmm... by Philip+K+Dickhead · · Score: 1

      No.

      It was Rasterman and Mandrake.

      Thanks, Enlightenment core team! If nothing else were widely adopted, we owe 'em Xinerama - which got a big boost while both were lads, and picked up by RedHat.

      We also owe them for MUCH of the Linux/BSD/Xorg eye-candy. Their implementations may not have been the very best - certainly not the ones that went mainstream. But the blandness of FLTK, Motif, FVWM, etc. suffered in comparison to their freshman efforts at visual pop and sizzle. The direct challenge presented by the Enlightenment visual presentation set a bar and a challenge that the toolkits, window managers and render engines of that time were pressed to meet. More so than OS X or any other contemporary. If you 'Nix looks hotter than Vista or Mac today, then you have these longhaired guys, who didn't sit still when told what was impossible or necessary to thank for it.

      --
      "Speaking the Truth in times of universal deceit is a revolutionary act." -- George Orwell
    6. Re:Hmmm... by Philip+K+Dickhead · · Score: 1

      I have a few Indigo & Indigo2 machines BEGGING for someone to match this effort for the SGI, "Elan" framebuffer.

      Oh, what's five or seven more years of hardware obsolescence to the inspired hacker?

      --
      "Speaking the Truth in times of universal deceit is a revolutionary act." -- George Orwell
    7. Re:Hmmm... by evilviper · · Score: 1

      there's no possible selling point compared to my $500 Dell laptop whatsoever (Intel video card).

      Let's see:

      Price: $300 less.
      Historical significance: Infinitely higher
      Styling: Undeniably better
      Architecture: MIPS
      Reliability: Vastly more error-resilient hardware

      So, those would in fact all be selling points. The fact that they aren't important enough factors for YOU is about as interesting as knowing what computer a single random person someone in the world prefers... In fact, it's EXACTLY the same! So why would you bother to post this banality, or do you in fact believe someone reading slashdot may possibly care?

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    8. Re:Hmmm... by prefect42 · · Score: 1

      I doubt they'll increase in price fast enough to justify storing them. The octanes alone would be worth a mint melted down, as there's an unnatural amount of metal in those things.

      --

      jh

    9. Re:Hmmm... by Shinobi · · Score: 1

      Dual display, or real SGI dual head? (Back in the day, dual head capability on SGI workstations was having 2 physical users able to use the same machine simultaneously, with one display, one keyboard+mouse each. It was a major feature for Octane's and Onyx's)

    10. Re:Hmmm... by Score+Whore · · Score: 1

      No. It was DEC.

    11. Re:Hmmm... by Philip+K+Dickhead · · Score: 1

      I guess Wikipedia always trumps? If there is code ancestry, I think Geoff Harrison and team made it go into XFree86.
      http://www.opensubscriber.com/message/enlightenment-users@lists.sourceforge.net/2875733.html

      --
      "Speaking the Truth in times of universal deceit is a revolutionary act." -- George Orwell
    12. Re:Hmmm... by Score+Whore · · Score: 1

      Wikipedia is just a reference. I remember that it was DEC. The question wasn't who did work on it in XFree86. It was where did it originate. It originated at DEC.

    13. Re:Hmmm... by Score+Whore · · Score: 1

      The first version of xinerama.c in the xfree86.org cvs tree, note the copyright message:

      Copyright (c) Digital Equipment Corporation, 1991, 1997

      http://cvsweb.xfree86.org/cvsweb/xc/lib/Xinerama/Xinerama.c?rev=1.1&content-type=text/vnd.viewcvs-markup

    14. Re:Hmmm... by Zadok_Allan · · Score: 1

      An X driver with lots of rough edges and lots of hoops to jump through?

      You may want to read the article again, it said nothing like that. There are no hoops to jump through for the user and you invented the 'lots' of rough edges. The hoops mentioned in the article are about the driver having to keep the Xserver from trying to scribble into video memory.

  3. The difference between archeology and necrophilia? by Anonymous Coward · · Score: 2, Insightful

    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.

  4. no one left at SGI who understands old graphics hw by Anonymous Coward · · Score: 4, Interesting

    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!

  5. Only took 9 years by fluffy99 · · Score: 1

    According to http://bsd.slashdot.org/article.pl?sid=00/06/30/087234, BSD was ported to the O2 in 2000.

    1. Re:Only took 9 years by Zadok_Allan · · Score: 2, Insightful

      So what? Nobody else has been able to do it.

    2. Re:Only took 9 years by fluffy99 · · Score: 1, Insightful

      Nobody else wanted to bother. They all moved on to better platforms.

  6. Re:no one left at SGI who understands old graphics by Zadok_Allan · · Score: 1

    That's probably exactly what happened. Too bad we won't be able to support any of their newer graphics hardware for that reason.

  7. Re:What a waste of time by ari_j · · Score: 4, Insightful

    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.

  8. Re:no one left at SGI who understands old graphics by trutative · · Score: 1

    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.

  9. thanx 4 the memories;-) by airdrummer · · Score: 1

    next to vax/vms, irix was my fave dev. platform;-)

  10. Re:What a waste of time by CarpetShark · · Score: 1

    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.

    I think, somewhere along the line there, the topic changed from his open source work to your virginity ;)

  11. IRIS != IRIX by Hazelesque · · Score: 2, Informative

    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

  12. Thank you. by Grendel+Drago · · Score: 4, Insightful

    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
  13. Octane / Onyx by Bert64 · · Score: 2, Interesting

    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!
    1. Re:Octane / Onyx by rbanffy · · Score: 1

      Well... Just don't hold your breath.

    2. Re:Octane / Onyx by armanox · · Score: 1

      I haven't had too much luck with the Octane I've been playing with (ok, it's been like a year now). Gentoo is fun on it, but, I can't seem to even get X working with it (X DOES work from the old live cd though, so I know it can be done).

      --
      I'm starting to think GNU is the problem with "GNU/Linux" these days.
    3. Re:Octane / Onyx by Zadok_Allan · · Score: 2, Informative

      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..

      That's the client library, as far as I know there is no Xrender extension for Xsgi so all anti-aliased text is rendered client-side, by software, which burns lots of CPU cycles. On slow CPUs like the R5k that really, really hurts.

      About Onyx and Octane - there's linux code available to make IMPACT-based boards do tricks but nothing for vPro, let alone Reality Engine or Infinite Reality. IIRC all these graphics options understand OpenGL opcodes more or less directly so once someone finds out how to feed them commands the rest should be easy.
      ( btw. the O2's rendering engine is nothing like that, you program it like most other graphics chips, by hammering data into registers or feeding register write commands into a ring buffer )

  14. Re:A marriage made on the river Styx by rbanffy · · Score: 1

    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.

  15. Desktop by Vinegaroon · · Score: 2, Funny

    Could this mean we are nearing the year of NetBSD on the desktop?

  16. Re:What a waste of time by BlueStrat · · Score: 1

    ...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.
  17. Why run BSD on old SGI hardware? by fluffy99 · · Score: 2, Interesting

    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.

    1. Re:Why run BSD on old SGI hardware? by paganizer · · Score: 1

      Whatever else, they were pretty.

      --
      Why, yes, I AM a Pagan Libertarian.
    2. Re:Why run BSD on old SGI hardware? by TheRaven64 · · Score: 3, Interesting

      Testing your code on two very different architectures is a good way of making sure that it doesn't make any invalid assumptions. Things like structure alignment and padding (e.g. glibc), endians (anyone who casts from int* to char* to truncate), and so on. For a long while, a good rule of thumb was to test on x86 BSD and SPARC64 SysV (typically Solaris), and if it worked then your code would run anywhere. With old SGI machines so cheap, they are a very easy way of getting hold of a machine that is very different from x86.

      Also, they're pretty.

      --
      I am TheRaven on Soylent News
  18. Re:What a waste of time by ari_j · · Score: 1

    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?

  19. Re:What a waste of time by ari_j · · Score: 4, Interesting

    Virginity is underrated. What's really bad is getting laid once and never again! Or, at least, so I've been told. ;)

  20. Re:What a waste of time by BlueStrat · · Score: 1

    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.
  21. How about GPU-based calculations? by damn_registrars · · Score: 2, Interesting

    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.
  22. Re:Get Rid of Patents by ChrisMaple · · Score: 1

    Anybody can sit around all day and come up with ideas.

    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
  23. Fuel Injection by c0d3r · · Score: 1

    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?

  24. UC BERKELEY - NACHOS? by c0d3r · · Score: 1

    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.

  25. Re:What a waste of time by ari_j · · Score: 1

    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.

  26. NetBSD is cool. Quit whining. by Anonymous Coward · · Score: 1, Informative

    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.

  27. Re:What a waste of time by howlingmadhowie · · Score: 3, Informative

    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'.

  28. byte order is not the only reason to like a CPU by Joseph_Daniel_Zukige · · Score: 1

    bohemian.

  29. Sooo..... by KnowledgeKeeper · · Score: 2, Interesting

    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.
  30. Re:What a waste of time by Zadok_Allan · · Score: 1

    i don't know why you were modded flamebait, this has nothing to do with linux.

    Linux is mentioned but not praised.

  31. Re:What a waste of time by Brandybuck · · Score: 1

    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!
  32. O2 - RGBA anyone? by abs0 · · Score: 1

    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 :)