Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Building Consoles For Fun

Posted by timothy on Thu Dec 12, 2002 04:02 PM
from the hey-you-kids-cut-that-out dept.
tierra writes "Indiviuals writing their own games is one thing, but try building your own console. Russ Christensen, and his team put together in class, dive into the fun of using an old Nintendo system to house their customized XSA-50 Board. They also uses a XSA Extender to hook their personal console up to a monitor instead of a TV. They programmed Tetris and Space Invaders for their console using a system they call CASM."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Bah (Score:5, Funny)

    by RaboKrabekian (461040) on Thursday December 12 2002, @04:24PM (#4874827) Journal
    If you're going to make the games yourself, and the console yourself - dammit, build the TV yourself too, you lazy bastard!
  • by jhawkins (609878) on Thursday December 12 2002, @04:28PM (#4874884)
    The Tetris Game I wrote. To see the game in action here is an 18MB Windows Media File. Or a 78MB MPEG File.

    For the love of God, what does he think he's doing?

  • At school? (Score:3, Funny)

    by Dragon213 (604374) on Thursday December 12 2002, @04:30PM (#4874908)
    Wow, I wish I had the kind of classes that would let me build stuff like this in them....but noooo, all we could do is sit there, read the books, and take the tests. Never actually applying the knowledge that we just learned.......
    • "Delve not into the affairs of Dragons, for thou art small and crunchy"

      and good with ketchup, you insensitive clod!
  • ...take the little Cappuciono PC and fill it with top notch hardware, place nice USB ports on the front, make a memory card slot on the front to hold 128 meg chips for game saves, then market it as a "PC game console".
    • At $150? (Score:3, Insightful)

      by yerricde (125198)

      take the little Cappuciono PC and fill it with top notch hardware

      But will you be able to get it down to $150 to compete with the Nintendo GameCube?

      • Re:At $150? (Score:5, Insightful)

        by MisterFancypants (615129) on Thursday December 12 2002, @04:48PM (#4875139)
        But will you be able to get it down to $150 to compete with the Nintendo GameCube?

        Even if you could get it below $100 it would never compete with the GameCube unless it had a similar sized/similar quality game library. In other words, not going to happen. Not to mention a huge marketing push.

        A few people, including the Linux-Indrema team, have had thoughts such as this before. Neat idea from a tech-head view, but business-wise its nothing but a disaster waiting to happen.

  • by Strange Ranger (454494) on Thursday December 12 2002, @04:40PM (#4875024)
    [flame off][humor on]
    "Our professor allowed us to take a different approach, using an ICDS Enhanced Hot Water Drill, a cage full of GM hamsters and some pantyhose we have created our own version of the worlds very first Wheel. We carved it straight of a rock wall! We call it Wheel Revolution. The wheel was a revolution, and it revolves, so we're getting double-usage out of the name. Bob is able to put his hands on the axis of the wheel while Pete holds his ankles and runs. We'll be holding a public demo for a few days so stop on over and try it out!"

    " Our engineering professor liked the idea of us really getting back to the basics."
    • Funny, but I think you're missing the point. The class was a computer architecture class. They designed a 16-bit microcomputer core with its own instruction set. They implemented that design in VHDL, which is synthesized onto a programmable chip (either a CPLD or an FPGA). The rest of their exercise is just to make it do something interesting besides add a bunch of numbers to verify that it works.

      Reinventing the wheel is something you do quite often in school. Only by reinventing something do you truely realize both how things work and why they are built they way they are.

      • ... or why they aren't built the way they should be.

        Only by actually using the MFC did I start to realise why people like starting out with Windows programming and also realise why people don't write 'good' programs using the MFC (easily).
  • I think it's great that people are doing this. It is an important step in learning how to build much more complex systems, gaming or otherwise. But, it has already been done some 40 years ago. What's more, there weren't all these off the shelf chips that these guys used.

    For those that are old enough to remember, I'm sure that you are already having fond memories of Pong. For those that are a bit younger, take a look at this [pong-story.com].
    • Uh, did you actually read the linked article? I'm not sure which off-the-shelf chips you are referring to, but the processor is a custom design which was simulated in hardware on an FPGA. Probably a lot of the hardware besides the processor was also custom. I did a similar project when I was in school, and we used almost entirely custom-designed chips (due to necessity of interfacing with a custom bus, etc.) with a little bit of 7400-series logic which was availabe even 40 years ago, albeit in a slightly different form factor.

  • This topic is on fire. While the embers cool on this wildly interesting and thought provoking story that has, in may ways, changed my life, take a look at some other related reading: Nintendo's corporate IP statement. Oodles of fun. Nintendo sues you, be it state side or Soviet Russia. [nintendo.com]
    • Yes, I have no love for this aspect of Nintendo (nor their anti-competitive actions in the past).

      My favourite part:

      Are Game Copying Devices Illegal?


      Yes. Game copiers enable users to illegally copy video game software onto floppy disks, writeable compact disks or the hard drive of a personal computer. They enable the user to make, play and distribute illegal copies of video game software which violates Nintendo's copyrights and trademarks. These devices also allow for the uploading and downloading of ROMs to and from the Internet. Based upon the functions of these devices, they are illegal.


      They say "yes, game copying devices are illegal" by defining the illegal acts you can do with one. That's like saying "yes, car's are illegal based on the functional capabilities it provides to run down school children."

      Metroid Prime still rox tho :P
      • I prefer the little statement in the back of my Aidyn Chronicles game (very good, btw) that copying your games to make backups is not at all necessary and that you don't need to seek legal council about it.
  • Question (Score:3, Interesting)

    by KeatonMill (566621) on Thursday December 12 2002, @05:33PM (#4875591)
    How exactly does CASM differ from C? I don't see any ASM type code in there, it just looks like C. I realize that it isn't quite C, but hmmm... I'm interested in more details about the compiler/processor.
    • I think because it only works on low level constructs like Asm though it has a syntax similar to C. This reminds me of the Terse programming language really.
    • Re:Question (Score:3, Informative)

      >How exactly does CASM differ from C? I don't see any ASM type code in there, it just looks like C. I realize that it isn't quite C, but hmmm... I'm interested in more details about the compiler/processor

      The question should actually be how does CASM differ from C++. The way it works is you write a CASM program and you compile the program using a C++ compiler and you include the CASM library files. And then when you execute the compiled program it emmits ASCII 1's and 0's that is then passed through another tool that traslates it into a format that the XESS loading program wants.

      So CASM the programming language is a series of C++ functions and classes. The functions maintain state, like the cr16_while(expression expr) function. so when they are called they can emit the correct machine code. And we overload the operators so things like "a+b" will then in turn call the function add which will in turn emit machine code to do the add.

      We do actually have ASM functions for adding and moving and the rest of our instruction set. Except I don't use those functions much in tetris. There is a couple of times that I do call the lshi function for left shift.

      Does that help explain CASM better? If not then let me know.

      • It does make more sense. I found the (large) PDF file and I'm trying to make some sense of it. At first I thought you guys just put together some parts and qhipped up some code, but now I have a much, much deeper respect and understanding for how much work that was.
  • Too Much Code (Score:3, Insightful)

    by nns6561 (559085) on Thursday December 12 2002, @05:37PM (#4875629)
    Anybody else surprised by the fact that it took 9000 lines of code. Having done similar projects in VHDL, it should take less than 1000. Looking at their code, I understand why. They did not use any of the more complex VHDL features. No generics or loops. The entire project was just poorly thought through.

    Cool idea though.
    • Anybody else surprised by the fact that it took 9000 lines of code. Having done similar projects in VHDL, it should take less than 1000. Looking at their code, I understand why. They did not use any of the more complex VHDL features. No generics or loops. The entire project was just poorly thought through.

      What about time? This was a class project. With this project and projects for other classes, they probably didn't have the time to make it better.
    • Re:Too Much Code (Score:4, Informative)

      by Russ Christensen (633700) on Thursday December 12 2002, @09:19PM (#4877268) Homepage
      To respond to why it took 9000 lines of VHDL code. One of our key design goals was to have this run on hardware. VHDL is a very complicated language that is very powerful, and then comes the part of VHDL that is an IEEE standard for going to hardware. That part of VHDL is only the simple features and so that was our reason for only using the very simple features of VHDL. We wanted to know for sure that the design would be able to drop down onto an FPGA. We didn't want a processor that would only work in simulation or would only compile down with one tool.

      This wasn't a project to show off that we know how to program VHDL in a fancy way. Rather it was to show that we can quickly design a computer. This was the first time that we had used VHDL and when we started the project we did not have the FPGA's to test our design on. So we decided that we would only use the simplest subset of VHDL. Our goal was to go from nothing to a finished project in two months. We viewed using complex VHDL features that might not compile to hardware.

      We succeded in getting the project done in two months as a part-time school project. Including hardware design. A complete test framework, two games, and a final report. I think when you say "The entire project was just poorly thought though" you are not judging the project according to our design goals.

  • credibility (Score:3, Funny)

    by imAck (102644) on Thursday December 12 2002, @05:58PM (#4875792) Homepage
    The graphics: impressive.
    The nintendo for a case: most impressive.

    The fact that they use the word 'foo' in the tetris source code: pure credibility

  • ColecoVision... (Score:3, Interesting)

    by dark_panda (177006) on Thursday December 12 2002, @06:28PM (#4876058)
    As I recall, the ColecoVision was made with completely off-the-shelf parts. Wouldn't be too difficult to re-build one of those things. It was probably one of the few video game consoles that you could actually rebuild from scratch.

    I think. My memory is pretty hazy and I haven't openned mine up in years.

    J
  • Wonderful! (Score:5, Interesting)

    by Junks Jerzey (54586) on Thursday December 12 2002, @06:36PM (#4876117)
    I love projects like this. May just the fact that they succeeded inspire others to try the same thing.

    On a tangent, this is the kind of thing that's been very possible for some time, but most people blindly assume that it's much too difficult. Similarly, writing a compiler for a high level language is a relatively easy project. You could do it in a semester course, or a month of spare time, but mention "writing a compiler" to the great majority of programmers, even those with lots of experience, and they run away in terror.

    Personal chip design reached critical mass back around 1994.
    • I wouldn't say that writing a compiler is easy. I took a compiler design course and it was quite a job! The idea of compiling the compiler with the compiler was interesting. Then you compile the compiler with the compiled compiler... It was a C compiler (which we wrote in C of course). Jeez! Compiler writing is so... recursive!
  • I've always to assemble a MegaTouch... those dopey trivia/photo hunt machines you see at bars and airports. I know the MegaTouch XL used commodity 486 hardware and appears to boot off a CD, but apparently there's a proprietary PROM and a "Dallas" security key that I know nothing about. Anyone ever get ahold of a MegaTouch CD and mess around with it?
    • It is more difficult than you think, primarily because the XBOX uses a unified memory architecture (CPU and video memory share the same memory), which is quite different than the set up on PCs. Most XBOX games rely on this architecture for rendering (one example..a vertex-shader assisted particle engine). If this code were to run on a PC, even a very fast one, the memory bottleneck would destroy its performance making the game unplayable.

      I'm sure you'll see "XBOX Emulators" for PCs, but don't expect one to actually run games well for about 2 years.

      • It is more difficult than you think, primarily because the XBOX uses a unified memory architecture (CPU and video memory share the same memory), which is quite different than the set up on PCs.

        Yeah and so does every console. I once heard someone say the N64 was "practically unemulatable" because of the high bandwidth of the cpu to gpu and the RAMBUS memory. Well... Been there done that...

        Since the system is MS's own design, I'm sure it is using standard DirectX calls. So you just have to intercept and re-route. The memory bottleneck won't be as bad as you think.

        I'm sure you'll see "XBOX Emulators" for PCs, but don't expect one to actually run games well for about 2 years.

        Now that does sound about right. Judging from most consoles, it takes about 3 years before a really good one comes out.
        • Yeah and so does every console. I once heard someone say the N64 was "practically unemulatable" because of the high bandwidth of the cpu to gpu and the RAMBUS memory. Well... Been there done that...

          The N64 is STILL practically unemulatable. The N64 emulators out there don't actually emulate the hardware, for the most part, they simple have rewritten many of the API routines from Nintendo's dev tools to x86 code. That's why there's still no N64 "emulator" with anywhere near full compatibility with all games. Most play a few key games well, like Zelda, Mario, etc, but fail with the majority of 3rd party games. So why don't you try learning about what you're talking about before you talk, bitch?

    • by Jace of Fuse! (72042) on Thursday December 12 2002, @04:56PM (#4875218) Homepage
      From what I've read, the X-box is nothing more than a PIII PC with some mods to make it "different".

      Some very serious mods to make it different. For starters, it has little to no OS overhead, it's memory structure is unified and more efficient than a PC's and it doesn't waste memory managing memory since all of it's ram is dedicated to the single application (game) that is running.

      If this has already been done, please post links.

      Just do a search for XBox emulation. It hasn't been done, and the primary reason is that the XBox game discs are written in reverse order from regular DVDs. This gives the advantage of speeding up read access because the data is read from the outside in, but also it prevents piracy.

      There are a whole slew of other reasons why the XBos isn't just a PC, and why a PC can't really just magically be turned into an Xbox without some serious software trickery. I once thought it would be possible, but after looking into it I realized it's going to be a little harder than anybody initially thought. ...

      Now -- what I -- WOULD -- love to see is a project very closely resembling the Indreama, put together by someone who really knows a whole lot about video game consoles, and willing to take a risk on a different business model than has traditionally been used by the video game industry.

      Hmm. Maybe I should post my ideas in my journal....
      • >> Just do a search for XBox emulation. It hasn't been done, and the primary reason is that the XBox game discs are written in reverse order from regular DVDs. This gives the advantage of speeding up read access because the data is read from the outside in, but also it prevents piracy

        This is not true, but is a common rumor based on some early speculation by PS2 fanboys mostly (ie; "Don't get an xbox - you cant mod it - its games ar backwards. It is TEH SUCK").

        Likewise untrue is the rumor that GameCube discs spin 'backwards' (I have one, I watched it spin, and they spin CW like any other).

        IIRC, It uses a tweaked version of the UDF filesystem, and a non-standard packet format which is embedded into the firmware of its DVD-reader. A PC-DVD reader 'could' theoretically read an XBOX disk, but it would require some heavy-duty rewrite of the drives firmware.

        The unified memory architecture could hurt emulation of certain titles, but I'm convinced few if any will make any sort of use of it. Most XBOX games are just half-assed ports, or cross developed for other systems (including PC).

        There's some work being done - an XBE (xbox executable) can be translated to an EXE and some rudimentary linkage to appropriate kernel functions is happening.

        At the very least, the PC will soon be a cool testbed for xbox hacking, if not playing warezed copies of Halo.
        • Actually, being written in Reverse Order does not automatically mean that the drive "Spins in reverse".

          It is true that the data is written from the outside in. This is done for the said reasons of giving the XBox a speed advantage.

          The Gamecube doesn't need such advantages since the proprietary DVD based mini-disc of the Gamecube has a fairly fast seek time AND transfer rate. Of the three systems (I have all three) the Gamecube load times are the fastest by a considerable amount.

          As for the XBox's unified memory architecture, it's not something games have to "make use of". It's just the way the system works. I'll agree, a huge percentage of XBox games are shovelware from either the PC or the PS2, but I promise you that Halo on a PC of equal system specs to that of an Xbox is going to run like shit even if it's a PC specific port.

          I'm aware of the work being done in XBox emulation, and I follow it very closely. That's why I know it's been harder than anybody initially thought. I never claimed it was impossible or that it wouldn't be done. It will, however, take more than just a little bit of software trickery.

          Whether or not the DVD's can be force-read off of a standard PC DVD rom drive through direct hardware hitting is yet to be determined, but things aren't looking good.

          On a side note, it is nice to see XBox controllers finally being used on the PC. See this link [codeunderground.com] if interested.
                • ME: It is true that the data is written from the outside in.

                  STRATJAKT: but the xbox doesn't read inside out

                  Am I missing something here?

                  If it's NOT reading from the outer edges, and it's not reading form the inner edge, where DOES it read the data from? I've seen printed material that says it reads from the outer most edges for speed advantages. It may have been in err, I won't argue with that possibility.

                  Even the link you provided clearly says the TOC is written in such a way that it misleads the drive about the amount of data on the disc. If I remember correctly the Lead-In is on the inner most edge. The lead-in contains the Table of Contents which extends to 50 mm from center on a regular CD (as per the redbook spec). After the lead in, is the data area, but it doesn't have to extend immediately.

                  I have read both in print and online that the data area was stored outside of the area laid out by the TOC to make copying harder as it makes it appear as if there is less data on the disc than there really is.

          • As for the XBox's unified memory architecture, it's not something games have to "make use of". It's just the way the system works. I'll agree, a huge percentage of XBox games are shovelware from either the PC or the PS2, but I promise you that Halo on a PC of equal system specs to that of an Xbox is going to run like shit even if it's a PC specific port.


            Woah. What? The unified memory architecture isn't a benefit of the XBox - it's a drawback - a limitation. The graphics chipset has to access main memory along with the processor. All other modern consoles have segmented memory.

            Also, the GC also reads outside in. Main reason is for copy protection, not for speed.
      • **Just do a search for XBox emulation. It hasn't been done, and the primary reason is that the XBox game discs are written in reverse order from regular DVDs. This gives the advantage of speeding up read access because the data is read from the outside in, but also it prevents piracy.
        **

        xbox games are 'easy' to get from the net already.
        it's not like everyone uses stuff from liksang to play imports.. so the data is readable all right.

        as for the os overhead.. that's just the os. linux runs on this puppy without _that_ much tinkering away from regular pc, the memory architechture afaik isn't 'magically special','unified' or anything like that.. sure the barebones os might lack decent memory management but.. it's ms anyways.

        bottom line is that it should be easier than dc, psx, ps2 or gc. and no need to waste cycles on emulating a different cpu.

        though, it might be easier to do vmware of sorts of the hw and run it os data dumped from genuine xbox.. might take year(s) to happen but it will happen.
      • Disk format is never really an issue. There is always someone out there that can figure out how to read the disc and rip the data from those discs. Once ripped the data can be used by anyone.

        I've heard some people working on making XBox games work under Wine/Linux. As the XBox has a much smaller/stable subset of Windows OS this might be fairly easy to accomplish. I see some work being done on emulation under Windows also. Given the average time it takes to develop a good emulator it's really not taking that long to develop one for the Xbox.

        I don't really see the point of emulating the XBox and I'd like to see an open sourced console that can run Linux-based games. I've thought of using a hdd-free Mini-ITX system for such a system. It wouldn't push the envelope but it'd be decently powerful while remaining affordable, low power, and cool. Could use USB-based joysticks with it and it supports both vga and tv output and has a built-in ethernet port.
    • by Uller-RM (65231) on Thursday December 12 2002, @05:30PM (#4875561) Homepage
      1) Unified memory architecture.
      2) Close to Win32, but not quite.
      3) Liberal use of hashing and checksumming.

      The XBE executable format is actually pretty interesting - it's similar to Win32's PE, but with many more flags and tables - for example, bitfields for what mediums are acceptable to run the game off of (DVD, hard drive, CD-RW, etc.) Each section and the relocation address tables have a SHA-1 hash taken of it, the header containing the section offsets and hashes of each is itself hashed, digitally signed using PKE, and then encrypted.

      The hard drive also uses the ATA spec's password protection, although that's already been bypassed and the drive dumped. In any case, most people with homebrew code are using the neXgen or EvoX dashboards to run an FTP server on the XBox for uploading and downloading files to the HDD, so you don't have to muck about with IDE cables.

      Most of the modchips out there right now work by tying the chip enable pin on the on-board BIOS to to ground, and emulating the BIOS directly on the LPC bus to allow execution of unsigned code and ignore mismatched media flags. (BTW, kudos to MSFT for complicating things with a floating ground... more than a few early modchips were responsible for fried PCs while doing in-circuit programming.)
    • Systems Engineer (Score:2, Interesting)

      Way back when, I had the mixed blessing of working in sufficiently advanced enough laboratories, that I got certified as a systems engineer on Windows NT operating systems. So, I happen to be certified in this area of work, and know something about the process by which one makes console machines. Work I was doing included overhauling Windows to make thin client email stations at our university, which were actually quite similar to console gaming machines. One of the major differences is that thin clients email stations typically use network protocols and network file systems, whereas consoles use compact disk protocols and compact disk file systems. (Ethernet versus Sneakernet)

      Anyhow, you have to realize that 'mod' is perhaps a poor choice of words in regards to how one would probably go about making a homebrew X-Box. I would suggest using the term 'lockdown'. In priciple, and in practice, the only thing that really needs to be done is the following:

      1. Set up a gaming machine at home. Try using a pizza box or laptop.

      2. Install drivers for your gaming controls. Control pads, voice recognition, video drivers, compact disk drivers, et al. Some good links to get started:

      Sense8 [sense8.com] - The WorldToolKit has the best device driver support that I've seen.
      Immersion [immersion.com] - Good starting point for haptics, game controllers, etc.
      Voip-Calculator [voip-calculator.com] gets you started on voice over internet protocol.
      Nero [nero.com] - gets you started on CD File System layouts.
      Altiris [altiris.com] - gets you started on image pushing.

      3. Design your filesystem.

      4. Get the basic configuration working such that it plays an off-the-shelf XBox game.

      5. Make a backup image of your gaming station.

      6. Delete all unnecessary files, remove all unnecessary subsystems. Lockdown the system until it does nothing other than run the game on the CD when you put it into the tray.

      6. Make backup images of your station as needed.

      7. When done, remove unnecessary hardware (floppy drive, keyboard, etc).

      8. Push image from server onto new consoles with similar configuration as (7).

      Now then, you may be asking 'Homebrew'? This sounds like a major operation! This is a going to cost a fortune! Well, yes and no. Yes, M$ is a for-profit company, which seeks to make money. Yes, if you went through this process, you could probably start-up a company which makes it's own console boxes which are XBox compatible. No, this isn't open-source and freeware technology. Yes, you could probably assemble a homebrew XBox by using these links, this process, a Windows 2000 operating system, and PC parts.

      The benefit: You know enough to design games and accessories for the XBox market. Do something like make a stereoscopic VR hack of Halo, utilizing Immersion gloves, and CrystalEyes goggles. Submit the concept to M$, become a business partner, and sell immersive visualization systems to XBox consumers, or something.
      • > Sense8 [sense8.com] - The WorldToolKit has the best device driver support that I've seen.
        > Immersion [immersion.com] - Good starting point for haptics, game controllers, etc.

        I've used products from both companies. Let me say that I'm not impressed with either. WorldToolKit (WTK) is fairly easy to use, and it does have a lot of support for things like Polhemus fast tracks, etc, but a lot of these devices aren't that hard to write drivers for, and WTK's abilities are really limited. For instance, there isn't any support that I can see for multipass texturing, let alone vertex or pixel shaders. It does let you drop to OpenGL in places, but that is tricky. I'd recommend either using a free tool kit (Crystal Space looks good, but I haven't had a chance to try it, OpenScenegraph is decent) or roll your own (which really isn't very hard to do). WTK is really expensive by the way.

        As to Immersion, well, I'm under NDA for some of it. However, but their APIs suck. For one device, I had to chuck their high level API (the one that allow you to do things like GetPosition) and write my own reading from the low level API (the one that retrieves raw encoder values from the PCI card). On another device, I was able to use the high level API, but the values matrices I got back were wacked out and require much code to fix them. But, maybe Immersion's APIs for joysticks and such is nicer.

        CrystalEyes at least I have no problem with. Not as cool as a HMD with Polhemus Fast Track position tracker though.
      • Re:TETRIS SUES YOU (Score:2, Insightful)

        by Zapateria (597451)
        In the United States of America, The Tetris Company [everything2.com] will sue you if your game's name is too similar to "Tetris".

        And they don't sue all of the people who make and sell cheap clones of it and call it "Wibble" or something?

        Strange.
    • Remember back in the day when Sun was trying to push their JavaStation box? It was suppose to run a JavaOS on an Intel processor. It wasn't all that successfull.

      Well, the lab I used to work at let some of the undergraduates take home the stacks of spare JavaStations we had laying around. =) The theory was that if you could install Linux and Quake on the OS, you would have a fully functioning console box, open sourced, that could run Quake. For those of you who are interested in mass producing console boxes, here are the lessons learned:

      1. You need to be able to store the console operating system on an image server.

      2. You need a serial port connector, or a LapLink connector, or a BOOTP enabled network card in the console box.

      3. You need to install your OS on a testing machine, and strip down all of the extra functionallity (notepad, emacs, vi, and everything else). This is the process of optimizing your open source operating system. Set up the console box as you would a normal gaming system.

      4. Take an image of the machine with some product, such as Altiris LabExpert.

      5. Push the basic OS onto new machines, as needed.

      6. Write documentation, develop games, etc.

      7. Get a CD burner and burn games onto the CDs.

      8. Package machines and CDs (seperately, probably).

      9. Sell machines at cost plus a markup for time and effort.

      10. Attempt to do a few things well and specialize.
      • I had a Javastation. I sold it earlier this year because I needed the money. Both Javastations (the ones known as MrCoffee, and the ones know as Krups) used Sparc processors.

        The MrCoffee JavaStation (the one that looked like a Sun 611 drive case) was essentially a diskless SS5 in a smaller case, and a tweaked PROM.
          • First, there is Solaris for Intel.

            Second, there was rumored to be an internal port of Solaris to the Javastation. It probably wouldn't have been hard.

            Third, I'm told that if you want to run Java on a Javastation, you will get better performance by netbooting Linux and running your Java there that you would have on JavaOS. However, I still would have liked to have been able to get a copy of JavaOS to try. It sounded neat.

            Anyway, by now there are precompiled Linux's for the Javastation floating around. I just never got around to finishing setting up my boot server (got BOOTP and something else running to boot the OS loader that allows more boot options, but never got the rest of the stuff installed on the server), then, as I said, I needed the cash.

            I now have a Sun ELC that I'm trying to get netbooting. However, I'm being held up because I gave away what turned out to be my last spare tranceiver (I thought I had another spare around). Someday.

            I love old Sun gear. I have a 3/160, a 3/280, and a 3/80. Plus an IPX, SS Classic, and Ultra1. I used to have a SS2, but I gave it to someone more needing of it. I still want to get a SS10 with the ZX board, which was the setup of the first 3D workstation I ever used. Ahh, good times.
        • Because of specs given to us, when our processer does a shift left and shift right it can only shift by one. So on our hardware doing the add instruction or doing a shift left to impliment the multiplication is actually the exact same speed.