sarnold | our next speaker is karltk; he is a computer science student in haugesund norway; he has been working with open source software for four years, is a gentoo developer sincelast summer, and has worked on the linux dreamcast project since its inception |
---|---|
sarnold | please direct your questions and comments to #qc; hopefully spanish will be in #redes, dutch in #taee |
sarnold | please welcome karltk :) |
karltk | okay, hi gang. |
karltk | I'd like to start out with saying that zx80user and lethal here are also part of the linuxdc team. |
karltk | so you can probably bug them about details in #qc |
karltk | As we all think slides are boring, I've only made one. It's available at http://www.boblycat.org/~karltk/linuxdc/ |
karltk | the linuxdc project arose a few years ago (I think about two) when me and mrbrown (the only linuxdc developer not currently present) decided it was a shame no linux port existed for the sega dreamcast gaming console. |
karltk | we then decided to undertake the project of porting our favourite kernel and accompanying userspace tools to it. |
karltk | at the time, there had been a lot of reverse-engineering going on, to understand the innards of the machine. of course, sega itself didn't have any reason to release techspecs to non-commercial developers. |
karltk | however, the linuxsh project (linuxsh.sf.net) had done a good job of porting the kernel to the processor type in the dc, and other people had also toyed with modifying that port to run on the dreamcast itself. |
karltk | both mrbrown and lethal are part of the linuxsh project. bug them for details on the kernel porting work. |
karltk | obviously, there's little or no commercial value in this project. |
karltk | so the main motivating factor is pure hack value. |
karltk | and as with any projects of this character, there have been numerous suggestions for real-world applications, ranging from clustered computing to a pvr. |
karltk | however, the problem with most of these appealing ideas is that the dreamcast itself is fairly underpowered, compared to regular x86 workstations. |
karltk | it features a 200MHz SuperH processor and only 16MB of internal RAM. |
karltk | Unlike the xbox, there is no internal harddrive, so we really have problems with the memory. |
karltk | there does exist an ide adaptor hack for it, so it is technically possible to plug in an IDE device, but nobody sells this commerically, so unless you're an EE geek (or know one), you're lost |
karltk | apart from the harddrive, the dc could be used at least as a cheap X terminal: you can get both a keyboard and mouse for it, as well as a VGA adapter. |
karltk | all in all, it's now an outdated, but kinda cute embedded system. |
karltk | as for the porting work itself. there was a debian port available at ftp.m17n.org (I think it still might be), but it's kinda outdated. |
karltk | they had ported both doom and X, so I guess it was "full featured" ;) |
karltk | however, given the restrictions of the machine, it would be nicer to have a either a very slim X server or dispense with it altogether. |
karltk | the kernel port supports the 2d framebuffer, and that's what we can run X on. however, the DC has a 3d card. It's a powervr2 card, slightly modified for the dc. |
karltk | (later on, the pvr2 became kyro, then kyroII) |
karltk | there has been discussion back and forth, how to best make its features available. probably through opengl, but on linux, opengl is usually only available alongside X, which is already too huge. |
karltk | so we've been looking at the recent developments in mesa to see if it would be possible to a framebuffer-only opengl port. |
karltk | however, even with proper 2d and 3d hw accel, it is not likely that the dc would ever be able to play divx (especially not divx 4 and 5), given its slow (by today's standards) processor. |
karltk | as the dc doesn't have a harddrive, anything we run on it must initially be booted off the CD-ROM. |
karltk | visik7> btw had u try to play a divx with mplayer? |
karltk | no, I've not yet taken a real bash at recompiling any of the open-sourced (and "open-sourced" versions) of any divx players for the dc. |
karltk | to have any chance of getting a workable framerate, we'd have to do considerable amounts of assembly coding. it's just not been a high priority. |
karltk | also, zx80user points out that the sound driver eats too much cpu power currently. |
karltk | (so, if anybody has free time on their hands, apply within ;P) |
karltk | anyway, back to the booting. |
karltk | obviously, unless you're very strange in the head, you don't want to burn out every recompile of your kernel and boot image to cd whenever you've done some kernel hacking. |
karltk | fortunately, the dc comes with a serial port, and it's also possible to get a so-called broadband adapter (usually referred to as a NIC by the rest of us). |
karltk | so, you can boot a slave program that reads in a binary from the serial port or across the network, and unpacks it memory and calls it. |
karltk | there are a few details here which I skip. feel free to ask later, if it's considered interesting. |
karltk | visik7> DC doesn't read RW ? |
karltk | reportedly, some DCs can read RW cds. Mine cannot. |
karltk | Inside, there's a small pot.meter you can tweak the wavelength of the laser. On some models (such as mine), you have to do the tweaking in order for it to even read CD-Rs. |
karltk | I've been told that DCs produced after Oct 2000 are not even capable of reading CD-Rs. |
karltk | Initially, we used glibc as our c library, but that's positively huge. |
karltk | lately, we've started toying with uclibc (www.uclibc.org) |
karltk | it's tiny, seems to work, and Erik (the uclibc maintainer) is a very nice guy ;) |
karltk | based on that, mrbrown recently put together a new toolchain (a cross-compiler) based on gcc-3.2, binutils-2.13 and uclibc. |
karltk | Using this toolchain, we've been cross-compiling userspace packages for the last few weeks, in the hopes of having a demo cd ready for today's presentation. |
karltk | However, the nice thing about autumn and europe, is that the various viral strains have managed to migrate from asia by now, and tend to result in week-long periods of bedrest :/ |
karltk | as I mentioned before, there is already a (partial) port of debian. |
karltk | our new port is based off of Gentoo (some of you may have attended yesterday's talks by seemant and nick). |
karltk | the reason why we selected gentoo for the new port, is that it's a from-source distro, and the package build scripts are very easy to tweak. |
karltk | If you're very luck, cross-compiling to the dreamcast can be as easy as tweaking a few lines in the configuration of portage (the Gentoo package system), and tell it to put the resulting binaries in an alternate root. |
karltk | this is not to say that there will be an official Gentoo port to the dreamcast. |
karltk | If it had been feasible to self-host the build environment on the dc, it would be easily doable. |
karltk | however, if when a package needs to be cross-compiled, one usually has to do various nasty tricks and apply some patches to the build system. |
karltk | thus, we cannot verbatim use the Gentoo build scripts, and modifying them upstream to allow for cross-compilation would probably result in a maintenance nightmare for the other archs |
karltk | visik7> karltk if I mount a nfs partition can I compile directly from |
karltk | DC ? |
karltk | visik7: provided you have compiled and self-hosting version of gcc, yes |
karltk | some of you may have had the misfortune of visiting our web page (www.linuxdc.org) |
karltk | from there, you can see that we seem to be quite dormant, which is fairly accurate. |
karltk | development on the linuxdc project has been very irregular :/ |
karltk | however, as usual, we'll see if can't post some interesting results Real Soon Now :) |
karltk | I guess that's mostly what I had in mind. If there are any questions, feel free. |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
garoeda | clap clap clap clap clap clap clap |
visik7 | clap clap clap clap clap clap clap |
garoeda | clap clap clap clap clap clap clap |
garoeda | clap clap clap clap clap clap clap |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
visik7 | clap clap clap clap clap clap clap |
garoeda | clap clap clap clap clap clap clap |
garoeda | clap clap clap clap clap clap clap |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
sarnold | clap clap clap clap :) |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
sarnold | clap clap clap clap :) |
sarnold | clap clap clap clap :) |
fernand0 | plas plas plas plas plas plas plas plas plas plas |
tilde | karltk: yawn.. *applause* |
visik7 | Java, dotGNU porting ? |
visik7 | :D |
zx80user | clap clap clap clap |
karltk | visik7: it would be nice to have a peek at kaffe or japhar, I guess. |
Mjesus | clap clap clap clap clap clap clap clap clap clap |
Mjesus | clap clap clap clap clap clap clap clap clap clap |
Mjesus | clap clap clap clap clap clap clap clap clap clap |
Mjesus | clap clap clap clap clap clap clap clap clap clap |
karltk | visik7: but both of those projects are quite dormant as well. additionally, they really don't support java well enough. |
Mjesus | clap clap clap clap clap clap clap clap clap clap |
nitcom | plop . plop . plop |
Mjesus | clap clap clap clap clap clap clap clap clap clap |
nitcom | plop . plop . plop plop . plop . plop plop . plop . plop plop . plop . plop plop . plop . plop plop . plop . plop plop . plop . plop plop . plop . plop |
karltk | thanks for listening. |
garoeda | a pitty that the dc doesn't have a hd |
karltk | if any of you would like to pester us later, we hang out at #linuxdc on irc.freenode.net |
fernand0 | thanks to you for the talk |
Mjesus | it's very interesting ! |
exter | hi |
botijo | niihau, exter |
visik7 | it's quite difficult to find a bba (or nic) now |
rexlee | thanks to karltk and umeet2002 - this idea is really great |
zrb | clap clap |
exter | niihau botijo |
Arador | clap clap clap clap clap clap |
Arador | clap clap clap clap clap clap |
Arador | clap clap clap clap clap clap |
Arador | clap clap clap clap clap clap |
Arador | clap clap clap clap clap clap |
Mjesus | have you contacted with developers of other consoles about linux porting ? |
zrb | clap clap clap clap clap |
karltk | Mjesus: mrbrown is also hacking on a port to ps2 |
karltk | Mjesus: we've not spent time socialising with the xbox guys, because that's x86 anyway ;) |
visik7 | the official porting of linux to ps2 is quite limited |
visik7 | 2.2 kernel |
visik7 | no DVD support |
Mjesus | thanks! |
garoeda | i know a guy that bought an xbox just for running linux on it |
Arador | visik7: very interesting, one always wants to run linux everywhere ;) |
visik7 | anyway the big limit of the console is the memory DC has 16Mb ps2 only 32 |
Arador | garoeda: they're cheap (microsoft doesn't earn a lot of money with the console itself) |
visik7 | Arador I bought DC only to run linux on it :D I've no dc games :DDDD |
Arador | visik7: you can't add memory? |
Arador | visik7: heh |
tilde | karltk: here. now. :) |
visik7 | Arador to the ps2 no |
visik7 | Arador it's fisically impossible |
visik7 | Arador on the DC dunno |
Arador | visik7: i mean, can't you "hack" the board, or something like that? |
visik7 | Arador PS2 no |
visik7 | Arador DC dunno |
visik7 | bye karltk and thank |
Mjesus | Karl Trygve Kalleberg, excellent !! |
Arador | i've a friend who has linux running in his dreamcast, he wanted to see this lecture but he is sleeping :-/ |
fernand0 | he'll read the log |
fernand0 | hehe |
visik7 | Arador have u save the log ? |
Arador | visik7: yes..this channel, and #redes, the spanish translation |
Mjesus | yes, all the log are in the web as soon as possible |
visik7 | Arador ok he can read it |
fernand0 | time to leave |
fernand0 | see you, thank you to all for comming |
garoeda | see you later :) |
visik7 | ok bye see u on freenode :D |