NetBSD Progress On Sega's Dreamcast
See below for a sample dmesg output,
Please stay tuned for more information!
- Hubert Feyrer, The NetBSD Project
Copyright (c) 1996, 1997, 1998, 1999, 2000
The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 1.5_ALPHA (DREAMCAST) #8: Fri Jul 14 01:42:14 JST 2000
msaitoh@vslock.xxx.yyy:/var/sources/src/sys/arch/evbsh3/compile/DREAMCAST
total memory = 16384 KB
avail memory = 12988 KB
using 230 buffers containing 920 KB of memory
mainbus0 (root)
shb0 at mainbus0
scif0 at shb0 port 0xffe80000-0xffe8000f irq 12
scif0: console
biomask c0000000 netmask c0000000 ttymask e0000000
md0: internal 1440K image area
rn_init: radix functions require max_keylen be set
boot device:
root on md0a dumps on md0b
cannot mount root, error = 22
root device (default md0a):"
Of course, what you do with a Dreamcast running NetBSD is up to you. Errr ... just what could you do with a Dreamcast running NetBSD?
A netbsd port to dreamcast would be ideal for people to learn *nix and open source really easy.
It'd be *nix for dummies.
Just pop in the netbsd CD (dreamcast does run on CD's does it ? I don't know for sure) and you're off. The users could mess with the system all they'd want. On the next reboot of the dreamcast you'd have a fresh install again.
And I know you could do this with a PC too. But then you'd have to build a VERY generic kernel, or several ones depending on the PC config. The single dreamcast platform is so much simpler to make a distro for.
NetBSD was able to get their code bootstrapped due to a programming backdoor left in by Sega which lets the console be started from the second session of a standard CDROM, as opposed to sega's proprietary GDROM format. This was the same method used by the Gameshark CDX disc. Unfortunately, due to recent innovations using this boot method, Sega is rumored to be phasing out the backdoor in the newest releases of the Dreamcast to keep third-party developers happy.
Anyway, I hope Sega gets themselves in gear and releases the Dreamcast NIC sometime soon. Then all we need is a NetBSD-based distributed.net client disc.. ;>
Check out Marcus Comstedt's site for more tasty tidbits about Dreamcast programming.
Those factors would likely make such a unit pretty useful as a "cheap terminal," rather like the $200 Think NIC units.
Unfortunately, I suspect the cost and effort would outweigh the cost of a Think NIC, meaning that while the concept is still a "cool hack," it's not a terribly practical one...
If you're not part of the solution, you're part of the precipitate.
Unfortunately, more hardware costs more money, so that the Dreamcast + NIC + more RAM (of some form) is liable to put the pricetag way past that of the rather similar Think NIC that already has the "more RAM" and the NIC.
If you're not part of the solution, you're part of the precipitate.
Of course, what you do with a Dreamcast running NetBSD is up to you. Errr ... just what could you do with a Dreamcast running NetBSD?
Nethack.
Xpilot...
--
The DC controler ports are pretty fast. I had a thery that they were USB, but after reading more I don't think they are, they are "only" around 3Mbits/sec each. The modem module can be remoed, and an ethernet can be pluged in (if they ever start selling it) which might make the DC a useful MP3 player. A Zip drive (with USB ports) can also be hooked up (I'm unclear on how).
So it's a bit limited as a Unix box, but not toatally worthless.
Besides with NetBSD on it I could play nethack on it, which somehow appeals to me :-)
This is not true. I travelled to Japan in Early June. I asked the customs officer if the Sony Playstation 2 had any export controls on it, since I was thinking of buying a few to bring back to the US. He told me that no, there were no export controls on it. That the whole thing was some confusion at central government and was cleared up within two days. He also told me that I'd only have to worry about import issues on the country I was bringing them into.
He didn't come out and say it, but some of my Japanese friends did. It was just a ploy by Sony to make the playstation sound really cool.
Oh, there is one last issue with taking a PS2 out of Japan. Sony will not honor the warantees on these units outside of Japan. At least that's what I was told by my Japenese friends. That was a deal killer for me.
ObOnTopic: I think that the port to dreamcast is way cool. Look at how useful the NetBSD/hpcmips port is for the WindowsCE machines that are now being dumped on the market cheaply.
I'd love to see some proof of this. An url would be nice.
This sig is false.
(Now that word I like!)
Linux running on the Dreamcast was demoed at a recent LinuxUserGroup meeting in the Tokyo area.
Though there was no shell yet, but the kernel booted and could be manipulated via the VS. communication cable. Quite impressive.
There is the doom/ps util. Allows graphical "admin" of a box. Be vewy vewy quiet, I'm hunting your wogin shell...
Check it out.
Of course a BSD port of a more modern game would be needed, but I think a few Internet-Enabled-Rocket-Launcher applications could be very popular...
-- http://thegirlorthecar.com funny dating game for guys
I've been doing a bit of work putting linux on the N64 because they are the cheapest platform I can find. Most of the hard work is done since GCC for it is here but there is lots to do. I want to get the thigns to talk to each other over their high speed serial controller interface but I don't have any docs and all the sample code just isn't abuseing the hardware that way.
I figured that a cost of about AU$200 (thats about US $130) per machine, you could build a large cluster of 64 bit machines.
At least with dreamcast you won't need a custom cartrage but at least with a custom cart, there is room for a fast I/O device.
Well, I *could* build a mountain of mashed potatoes and call it Mount Spudmore, but is that a good reason to do it? Hell no.
_I'd_ check it out, if you took some snapshots and put it up on the web. And you could probably make slashdot quickies with something like that.
Heck, if you were Canadian, there'd probably be some sort of Can-Con art grant you could get, and tons of PEI farmers would donate the 'materials'.
[/me gets to thinking]
I don't really agree with some of the other posts which say this is limited to serving content or security, I see the advantages of this is increasing the ability to port *nix games and to be able to develop for multiple platforms at once.
I'm pushing for Linux to be ported to the DC, because then we can have a port of OpenGL (I hear the PowerVR2 supports it natively), and SDL (which AFAIK has been ported to FreeBSD) among other things. Just porting OpenGL and/or SDL would allow QuakeForge to be compiled for DC with probably little to no modifications. With a ppp driver in the kernel (or on a ramdisk if you prefer) you will have netplay for these types of games with a *minimum* of porting effort. Any linux games that don't require X (unless you want to port X, but why??) could be ported, off the top of my head I can think of xmame, lsdldoom, just to name some obvious ones.
Here's what I thought needed to be done:
Get the linux kernel up and running with a console on the serial port.
Allow the kernel to load a ramdisk from a CDR.
Write an accel. frame buffer to access the DC's frame buffer.
Impose certain constraints on the dev. system since this is a *console* and not an athalon w/ 128MB ram. One constraint would be instead of porting glibc, use newlib instead (is this even possible?). This would eliminate the majority of command-line Linux utils, but why would you want these anyway?
Port SDL using the frame buffer, I have no clue about OpenGL though.
This would replace WinCE as a devel. system, and allow broke college students such as myself to go nuts with the DC. Third-party developers might even be interested in this.
Marcus
If a substantial portion of people/companies go out and buy 100+ machines each for their own compute farms, the manufacturers are going to eventually notice that the ratio of games bought to consoles sold is declining. At some point they will attempt to prevent non-game (or really, non-royalty generating uses of their hardware. Kind of like the whole i-opener fiasco.
However, there is probably a point up to which the manufacturers are happy to have unix ported because it will increase their raw sales figures, and act as an incentive for game development companies, whose suits would never conceive of the idea that a console might be used for something other than gaming, to port to the console.
When information is power, privacy is freedom.
Now back to porting OpenBSD to a games platform...so consider this overtly paranoid scenario that might just scare the pants off export authorities:
Games platform with massive graphics processing power + OpenBSD = Massively secure and un-crackable* encrypted system for controlling nuclear weapons from so-called rogue states!
(*some may argue that OpenBSD merely creates this illusion)
Now wouldn't that be an amusing thought!
-- "I can't tell the future, I just work there." -- The Doctor
What strikes me as amazing is that I know a couple of guys who ran out of machines and where running out of time during a render for a film production. These little boxes just happened to be a cheap way to get renders kicking! Now, nothing like seeing a render farm of dreamcasts?!
kick some CAD
People are typing that this cannot be useful in any way, but I say that is completely false! Obviously the reson to port BSD to the dreamcast is so that they can then port Nethack to that platform. The NetBSD folks realize that the Dreamcast is a gaming platform, and they will treat it as such.... why with fortune, nethack, and hunt on there (for the multiplayer experiece) this could be sold as dreamcast software in stores.
He who knows not, and knows he knows not is a wise man
Think about what porting an open BSD or Linux over to a closed, proprietary console system does:
It opens the console.
All of a sudden, you've got an open, cheap, extensible platform. It's got sound, it's got video output to TV or VGA, it's got a CD-ROM drive, it's got a modem, it's got a keyboard, and it's got the possibility for further expansion through the serial port, as well as swapping out the modem for an ethernet card in the future.
You could port VNC to it under GGI or SVGALIB or even plain old X, and turn any TV into a desktop, you don't even need a VGA monitor.
Take it one step further, and now it's a cheap network computer or thin client, with a light word processing app, web browser, and solitaire game on a free ISP like NetZero or whatever.
Or maybe it's an MP3 player stereo component with an on-screen interface and cool visualization options. Hell, it'd fit great in your car.
Or let's take this as far as you can go. Why not port something really massive to it? Say, something like the Unreal engine. There are projects out there like Digitalo's Virtual Reality Notre Dame Project, where you can tour giant heritage structures like the Notre Dame de Paris Cathedral in full 3D, led around by a virtual tour guide, and teach kids things they'd never otherwise learn. Porting the engine to the Dreamcast (there's already an x86 Linux and PSX2 port) would give you a $199 learning console that plugs right into the TVs most schools already have (moreso than computers), and suddenly gives them classroom access to more power and technology than any PC initiative ever did. From light web browsing to 3D learning applications, a BSD port to the Dreamcast could make dreams of computers in the classroom real.
Disclaimer: Yeah, I'm an engine licensee, producing 3D tours using the engine with my Unrealty product. But I want to see a cheap platform for them as much as any teacher who's seen the potential for such a thing.
--Vito
Of course, what you do with a Dreamcast running NetBSD is up to you. Errr ...
just what could you do with a Dreamcast running NetBSD?
Nethack.
The Dreamcast shares many of the same interface and resource limitations as set top boxes, embedded devices and palmtop devices (each to differing extents). NetBSD was ported to the arm32 based shark, which was DEC's reference network computer platform (later killed due to pressure from Microsoft), but Network computing and others released systems based both on the hardware and on the NetBSD distribution. If it helps you can think of the Dreamcast as a low cost reference platform on which to experiment with interfaces, limited resources and (to a very limited extent) unusual video acceleration, but its also a good way to show to many people that all the world is not a PC, and that they have hardware around the house that could run unix. It was also interesting to see how few Dreamcast specific changes were needed to the NetBSD tree in order to get it to this point. If I had a Dreamcast then I would probably get a keyboard and a CD with ssh, lynx, pppd and a bunch of other tools. If Sega come up with a easy way to add 10baseT to the system then NFS and another server turns it into a quite interesting X and web browsing terminal. I agree the playstation 2 makes a much more capable target, particularly with USB and PCMCIA.