GameBoy Web Server
Huma79 writes "Adrian O'Grady has successfully gotten TCP/IP and PPP working on his handheld Gameboy Advance for a web server. Pictures of the server running and a telnet session to it can be found at fivemouse.com."
← Back to Stories (view on slashdot.org)
Wonder how fast it gets Slashdotted!
maybe he intends to build a beowulf clu*WHACKWHACKWHACK* OW DAMNIT! I didn't say it! I *SWEAR!*
Because you can.
The motto of all true engineers.
Carousel is a lie!
Ryan T. Sammartino
"Ancora imparo"
I'd like to see a program written for the Gamecube and/or PC(this includes macs, etc.) that allows you to connect your gameboy advance (for the gamecube there is already the GCN-GBA link) and play with other GBA players over the internet (when the NIC for the Gamebue is available) as if GBA's were directly linked.
Right now, I'm mainly thinking about playing Golden Sun against other people.
I can see now: Access Denied. You are not allowed to view /personalrecords.pl until you have successfully found all 6 Diamond Crystals and converted them to Gaia Armor or until you have beaten stage 4 in the Darm Realm, "Ville of the Damned."
add more excitement to that dull intarnet!
nevermind, after actually reading the article it is pretty fucking cool. [goes to get a GBA]
Does anyone else hear the rumble of Nintendo closing in on this poor chap? I think it's sad when I read something like this and I first think "Oh cool. That's really smart, useless but cool." and then I cringe thinking about people like him getting squashed in litigation. I got five bucks that says he gets a cease and desist letter...
/. pessimism. You decide.
Heh, that or I've been successfully turned to
--I hate big sigs.
Ryan T. Sammartino
"Ancora imparo"
It's amazingly easy to write programs for the Gameboy Advance. Since it has an ARM processor, gcc is readily available, and there is a strong developer community. Even a programming novice could probably write a few decent demos or games. For anyone who is interested in game programming, check out gbadev.org.
Don't be intimidated; the webserver looks like it took a lot more work than it would take to create a game. The hardest part for his project was probably establishing a PPP link.
Let's hope that since his site is now posted on /. that he isn't running his website THROUGH his GBA web server ;)
I haven't heard of Nintendo exactly "closing in" on other projects for the GBA, such as an NES emulator or the Afterburner front-light mod....
:)
By the way, the NES emulator alone is worth getting a GBA for - not some dumb old webserver that nobody (especially not the Big N) is going to care about
AC
If you're just going to sit there doing only "useful" stuff that's completely original, you aren't going to get much done.
Ryan T. Sammartino
"Ancora imparo"
PPP on a gameboy? What's next? I know I, for one, will not be happy until somebody TCP/IP-izes my old Atari 2600...
the Spud Server!!
-raph
Now all someone needs to do is make an 802.11b adapter in a gameboy cartridge and you could serve pages anywhere while kicking ass in Tetris!
Yeah, echo server is all and good, but I'd like to see them get Apache 2.0 on there.
Oh.. that's right... no mod_pearl. Oh well.
Quite true that this is useless to you/the world, but to him, the person that did this, he has learned a great deal. I mean, what have you done? what "valuable" asset have you produced? [I'm not saying this to say that you are worthless, but to point out that big things tend to start out small. Look at Napster for example, I don't think Shawn Fanning sat down one day and decided to make an P2P app to turn the record industry on its head...]
In addition, it just shows that the same thing that all these bloated programs/os's that we have out there can be done on a rather small device with limited hardware. I remember back in the days when the ultimate thing was to be able to design a graphic intense demo using only 640K. I keep seeing it all the time and it's just getting worse. Lazy coders and uneducated programmers don't bother writing code that can be done with 25% less lines or 25% less resources just because right now there's no need. The hardware is far ahead of the software demands. This typically leads to bloat.
_______________________________
"I'm not Conceited...I'm just a realist..."
So what you're saying he learned a lot about writing web servers for GameBoy Advance? Great, I hope that information helps him in life.
TCP/IP is cool and all for a GBA. but since its a strong arm processor why not port/figure out how to load linux on a cart? I think this is a very cool step in a good dir for GBA. if nintendo doesnt stomp it out 1st.
If he didn't have a super mushroom he'd never survive all those SYN packets...
Yes, every implementation of TCP/IP is perfectly unique. Nothing similar AT ALL between the TCP/IP my Mac box and my FreeBSD box use. Nope, all completely unique, nothing uniform about this so-called "TCP/IP standard".
"Upon attaching the waterblock to my penis, I began to notice that I know nothing about computers." -- JRockway
sorry, he ment " because you can, the motto of a true hacker (in the classical sence of thew term)"
I am the Alpha and the Omega-3
If all you can see is he learned about writing web servers for GBA, and you think this is not a very marketable skill, then you are very myopic.
I prefer to look at it this way: the guy probably learned a fair bit about embedded programming (on a very constrained system no less), along with networking.
The Next Big Thing for console games (disclaimer: I work for EA) is going to be to get them online and networked.
Hmmm.... put those two together, and I'll bet even you can figure out where I'm going with this....
Ryan T. Sammartino
"Ancora imparo"
Quite true that this is useless to you/the world, but to him, the person that did this, he has learned a great deal. I mean, what have you done? what "valuable" asset have you produced?
Yes, I'd agree. Probably the most useful things I did was to write a ROM ripper for the C-64 to read game cartridges, and a graphic printer driver for the MPS 802 printer (No mean feat - it only had one 8x8 graphic character per line - boy did that print head fly with all those carriage returns).
Point is, neither of those things were terribly useful. So what. They were fun. I don't look back at my youth with regret because I could have done something else with my time.
To be truthful, I'm rather envious of Adrian for having the skills to do this sort of thing.
Michael
There is no cryptographic solution to the problem where the intended receiver and the attacker are the same entity.
Everyone's favorite ISP, AOL, has just released a press release that they are switching to Game Boy Advances for their servers.
According to the press release, it will increase server output by 300%.
Oh yeah!
Anonymous Coward: (n.) 1. nerd at school or library. 2. karmawhore in training. 3. embarrased prep.
I'm having trouble seeing it as pratical or useful
;-)
So do I. Because it's not intended to be any of those. Why does everything have to be USEFUL? I bet the guy had loads of fun hacking this thing together. And besdies, it's damn cool. Oh well, I guess it should be useful to the guy who made it, since he'd have learnt a great deal in the process.
On the other hand, I fail to see how your comment is useful or practical either. It's great that you took the time to write it but I'm not gonna take it. Feel free to mod me flamebait
Don't quote me on this.
/me attempts to troll...
But Why? Why?
Just Limin' Mon
In related news, port scans of wehavethewayout.com indicate that it is running on a GameBoy Advance. It is reputed to be much more stable than the Windows IIS put in to replace the FreeBSD box.
Insanity is contagious. - Yossarian
If you look way down on his web page, back to the october days, he starts by creating a multi-threading kernel, and then writing alternate A's and B's to the screen. This is what Linus did when he was testing his first attempt at multi-threading two processes.
/. effect :-)
If you read through the site, you get the idea he is learning all kinds of requisite CompSci skills along the way. That's good enough reason to do a project like this.
From a late night hacking session on 3rd April 2002: I believe this may be a world first. My GBA is currently connected to the Internet (yes, if I gave you the address, you could access it right now!).
Now, if he only would post that IP address, we could see how it stands up to the
the AC
Hemos is like...sci-fi fans;he thinks technology is cool, but he hasn't bothered to understand the science it's based on
Me and my homeboy back in the admin lab almost ten years ago, fixing 286s or 8088s, i forget, got the idea to see how many monitors and separate video cards we could put in one box. When our supervisor walked in, he said "Are all those monitors running off that one computer? Why do you have three monitors attached to it?"
We replied, "Because four wouldn't work."
I hacked up a 802.11 card for mine.
This is taken from an interview with the author http://www.consolevision.com/features/interviews/g ba/adrianon.shtml
"I wanted to write something that was technically perfect but practically useless so that the university couldn't make any money out of my project. "
for the same reason writers write novels and not instruction manuals.
or something.
"when life gets complicated, I like to take a nap in a tree and wait for dinner" - Hobbes.
The motto of true engineers is "to get laid with as many chicks as you can".
I dont know about you, but im getting started on the first ever gameboy internet rpg.
That's nothing new. Konami had a Web Server for the original Gameboy. You activated it from any Konami game by pressing Up Up Down Down Left Right Left Right B A Start. (Doh didn't post with my name above)
blah. This is taken from an interview with the author http://www.consolevision.com/features/interviews/g ba/adrianon.shtml
"I wanted to write something that was technically perfect but practically useless so that the university couldn't make any money out of my project. "
i like girls
I hoped the linked site would be run off the Game Boy.
Fastest Slashdotting ever.
Ok we can explain this easily...
If you wanted to write a comms protocol for the GBA that was a standard (TCP/IP over ppp) to write a game that can play against multiple players you (if you have a brain) use an established and open protocol. now you need to figure out how to write clients and servers... well the easiest thing to write is a http server.
this guy wrote it for learning.. he now has the tools to make something really cool for the GBA.
this is why.. edu-ma-cation and learning and research.
why did we go to the moon? we knew what was there. so why did we kill 3 astronauts, and waste gagillions to do it? we could have just bought a 30 billion dollar telescope to look at it.
understand now?
Do not look at laser with remaining good eye.
Well, supposedly the largest (EP)ROM you can buy right now is 255 Mbit (note, not megabyte, megabit, so 32 megabytes).. can Linux be squeezed into such a small space and still have functionality to boot/etc? Is there even enough volatile memory available in a GBA to work? I know NetBSD was running on a Dreamcast (though I don't think they've (the developers) have gone much farther than just getting it to boot and run), so it seems reasonable to see atleast that running on the GBA's ARM processor...
Does anyone know the minimum memory/media constraints for Linux though? I've never given it much thought. =)
All I know about Bush is I had a good job when Clinton was president.
Hell yeah. I heard someone actually wrote a version of the UNIX kernel that would run on home PCs. Like anyone would ever use something like that.
Phear my l33t homepage.
"If you have to ask why, you're not a member of the intended audience. Please go on about your business and accept my apologies for this distraction."
---Bob Zinbinski, author of TTYQuake
If you ping it, will it pong?
Karma: SELECT `karma` FROM `users` WHERE `userid`=138474;
It's not a StrongARM, it's an ARM7TDMI running at 16.78MHz. 256K RAM 240x160 LCD.
:)
So it has more horsepower than a Palm, but still no memory manager or cache. This means it's restricted to MMU-free micro-ports of Linux like uClinux.
Like someone else posted.. not impossible, but probably not terribly satisfying as a target. Not to say it wouldn't be a satisfying, educational, or fun project, though.
I'll tell you why. If programmers would stop assuming we all have 2GHz Pentium 4 computers w/ half a gig of RAM and write all code like it *has* to be run on something slow with little memory, the state of the software industry would be much more impressive than it is now.
The fact that it can run a web server certainly makes me overlook the "screen is too dark" issue.
Guy writes a TCP/IP stack for GBA. Think about it... how about plugging your gba into your network and firing up a gamespy type utility on your gba and BOOM.. you can play multiplayer over the internet.
Of course someone needs to figure out the fine details and write this shit but nonetheless kudos to the Guy!
It's called play. Most curious people learn through playing. A few people with Eric Cartman-like personalities, however, can't understand the concept.
soo... what games do you have for your GBA?
games? oh, I never got into the whole gaming thing.
so what are you doing with a GBA?
oh, just hosting a website or two. you know, in my spare time.
I didn't know you could get Beowolf for the GBA!
LOL
Are you happy now?
bah... I just wrote a webserver for a _windows XP_ box. try beating that.
"I think it would be a good idea" Gandhi, on Western Civilisation
Actually, in my experience, engineers will spend more time, money, and effort developing an easier, faster, more cost-efficient way than if they had just done it the normal way in the first place. :)
there is always the old 'because i can' but that sometimes gets kinda dull...
the feat here is not that the is a webserver running here its that the author was able to run an embeded proegram on a non pc system...
whether it is a webserver or whatever else doesn't matter the point is that this is one step in the right direction formany other things such as maybe a gameboy emulator...
these baby steps are the way reverse engineering is done and i amhopeful that this could lead to many other cooler GBA programs or GBA devices for use in a pc environment
unzip; strip; touch; finger; mount; fsck; more; yes; unmount; sleep
nice... time to telnet cyberspace.org and play Nethack via GBA!
DON'T PANIC.
If play around with these small linuxes on old machines like 386 laptops, you will quickly find that squeezing everything on to the disk space is not the problem, the problem is having enough ram. Most of those distros won't run on two megs of ram because they try to make an initial ram disk bigger than that and thus fail right off the bat. However, small-linux will boot a 386 with 2 megs of ram, so if you want something tiny, it might be a good place to start.
I skimmed some of the posts on this topic and was a little disheartened by some people's reactions to the usefulness of this hack. Let's put a couple of things into perspective:
1.) It's not a product
2.) It looks as though he just wanted to do it for shits and giggles, not seriously trying to solve any probelms other than 'it can be done.'
A lot of things we take for granted today were based on ideas that people questioned the usefulness of. Did anybody think Pong was useful? "Why would I pay $119 for a game that I could play on a pingpong table?"
Consider that usefulness depends on the individual too. You yourself may not care about running a websever on a GBA, but soembody might find an interesting use for it. If I were setting up a brand new network somewhere, I could see the potential of firing up a GBA, getting it on the network, and seeing if I could connect to it. It could be a troubleshooting device, maybe. (Although if it's connected to a Linux machine, that idea seems a little absurd. But if they made the GBA independent of it...)
What of somebody took the code from this project and made the GBA into a VNC client? I think there are sysadmins out there who would find that rather useful. Seeing as how GBA's are $70 nowadays, that could turn into an interesting product. There are some of us out there that would think it was totally cool that I could buy a GBA and get reimbursed from my company with it, heh.
Come to think of it... if the XBOX were a little more open, it could turn into one hell of a sysadmin tool....
"Derp de derp."
Somebody needs to get that dude laid.
The sheer joy of it of course! If you think webservers should only be on full-fledged computers, then kiss all those embeded web devices goodbye.
----
All of whose base are belong to the what-now?
License to "Be Silly": $0
Skills learned: priceless
Hands on tinckering is a good way to learn, even if the result is silly.
Yeah, but a webserver on a PIC is a much cooler thing. Yes, even your watch could have a web server. I'm thinking that building something cool and useful is even more l337. I think that a line of sight optikal ethernet link is pretty kewl (and useful!).
That's just my 10b cents.
The biggest trick the devil pulled was letting lawyers become politicians so they can write the laws.
Modern PalmOS devices tend to run at 33MHz.
TO BUY A NEW CAR WOULD MAKE YOU SEXUALLY ATTRACTIVE.
If we slashdot it, will it catch on fire? I always wonder what happens to all these little webservers people keep making.. a watch, a gameboy... what will a DoS attack do to it?
Drain the batteries for sure..
- This isn't the sig you're looking for. Move along, move along..
Yep. And the result of that? Connecting three or four monitors to an IBM PC/AT (see previous post.)
There should be a moratorium on the use of the apostrophe.
Max V.
NeXTMail/MIME Mail welcome
Um, did you read the article? They explain how they did it pretty clearly.
There should be a moratorium on the use of the apostrophe.
Max V.
NeXTMail/MIME Mail welcome
"why did we go to the moon? we knew what was there. so why did we kill 3 astronauts, and waste gagillions to do it? we could have just bought a 30 billion dollar telescope to look at it."
Because the Soviets put the first satellite and astro/cosmonaut in orbit?
There should be a moratorium on the use of the apostrophe.
Max V.
NeXTMail/MIME Mail welcome
TI-89.....
*thinks*
*laughs evily*
*disappears into darkness*
"Evil will always triumph because good is dumb." -- Dark Helmet
He talks a lot about connecting your GBA to a Linux box, yet all of his screen shots are from Win9x. Hrm, can I all BS on this one yet or am I missing something?
They would? Oh wait, this is Slashdot.
OR
"That's not Tetris, it's our new synergy-building groupware"
"I assumed blithely that there were no elves out there in the darkness"
Correction: That last should be *returns to TI-GCC* instead of *disappears into darkness*. I'm sorry for any confusion this might have caused.
"Evil will always triumph because good is dumb." -- Dark Helmet
In other words, anybody with an EPROM burner could 'rip' a C64 cartridge
Getting off topic here, and replying to an AC post as well, but the aim was to copy the ROM to tape or disk and then run from RAM, so you didn't need any extra hardware.
Michael
There is no cryptographic solution to the problem where the intended receiver and the attacker are the same entity.
From the proposal link on the guy's site:
I have chosen to work on this project, as I am keen to learn about development for non-Intel based systems and I am very interested in low-level networking. This project will allow me to explore both areas of interest while still only working on one project.
An extra advantage of this project is that it ties in very well with the rest of my course as I am also studying Computer Networks: Principals and Applications (CNPA) and Distributed and Parallel Systems. My project and the CNPA course will complement each other very well, as I will be studying some of the required protocols in details as part of the course.
From the work I do on this project, the main area in which I will expand my understanding is in the functionality of a number of network protocols. This knowledge should be very useful for any future project I wish to undertake which involve the use of network functions.
This project will also fit in with my specialist award as I'm aiming for a Computing and Networking specialist degree.
Connect 2 Gameboys by GSM and Bluetooth: http://www.it.lth.se/it/msprojects/ita/past/playmo bile/
Taking color pictures with GB b&w camera http://www.ruleofthirds.com/gameboy/
why did we go to the moon...and waste gagillions to do it?
;)
Bah! The US Gov'ment pocketed the gagillions and got Hollywood to fake the whole thing!
"I'm tired of all this 'Aren't humanity great' bullshit. We're a virus with shoes" - Bill Hicks
If memory serves me correctly, there is an old story about Columbus telling his colleagues about finding America? Went something like This *extremely paraphrased, heh*
Columbus: I found America
Colleagues: So? Anyone of Us coulda done it.
Columbus takes an egg and asks Them to stand it on its end, They all try and fail *must not have been the equinox*. So Columbus takes the egg, crunchs the end on the table and the egg stands up.
Colleagues: We coulda done that!
Columbus: Yes, but you didnt think of it.
Course, im not comparing this to Discovering America or anything.
Also, I wonder how long till the First Code Red Attempt on it, ; )
Wouldn't it be cool to be able to put a CD in your discman with a linux kernel built into it, the latest build of apache, and some sort of static content, hook up the remote jack and convert it into a CAT5 jack on the other end, and bam you have a portable webserver you can play music in? or, you can put a disc full of mp3s into it and put streaming software onto it?
OK, so I'm going over the top here, but the Slashdot community has sure seen a bunch of mighty weird webservers...
Here is a legal use of liksang products.
to create on a blank cartridge a Linux Distro.
to boot that distro in my kids Game Boy Advance.
And try to port TuxRacer to it.
However, some fool has decided that is an item can be used to break a law that item is illegal.
When can I buy liksang items here in the USA ?!?!?!
comment directly in my journal
Wow, next time I need to tell the time, I can look at http://watch.dwinsper.org instead of going to all the effort to move my arm.
Another source of revenue. Make It so you can charge people to play on your online servers. Making videogames a pay per use item...Sorry to say that, I don't know EAs plans, but if people have to pay any amount however small its too much. Don't take this wrong, I know it hasn't happend yet, I'm just tired of how much our society is becoming a pay-per-use society.
I know this heading off topic but it does apply to the parent and the use of what the entire article is about.
LinuxWorx
Spelling errors are intentional as are gramatical error
What *I* really want is and ftp server, or SMB share, on my Clie (any palm, really). Sure would make grabbing stuff from it or putting stuff on it quite nice. It shouldn't be hard, somebody just has to write it...yeah, I know, but it's not so important to me to take my time away from other projects yet :)
MSImport allows you to mount the memory stick on the Clie as a removable disk. While it's designed to run under Windows, it works under Linux quite well too. If you run a kernel > 2.4.10, the Clie acts as a SCSI device that you can easily mount and grab files to/from.
See this link for more info.
Can we get pr0n on our Gameboy Advance? Theoretically, could one host a pr0n website on a Gameboy Advance. Until these two dreams are realized, the GBA can never be a truly useful mobile computing device.
Voodoo Extreme may soon find itself a better web server. ;)
My words are backed with NUCLEAR WEAPONS!
Nah -- a *real* engineer is at the peak of motivation when people say it *can't* be done.
catch the flag and king of the hill! Who say this has no usefull purposes :)
Could this be el primero español spelling flame on slashdot?
This is a lame example of reasoning. Going to the moon was done because it was never done before. Writing a HTTP server for a gameboy is a waste of time because everyone knows how easy it is to do. Big deal you compiled some simple code with gcc for a different CPU than intel. It is sad this kind of news makes slashdot, and makes everyone get all excited. You might as well go watch television for 16 hours a day while you are at it. Then post that on slashdot because someone watched television for 16 hours straight. I guess in my book, accomplisments like this are "no big deal". I could of done it in a weekend.
Modesty is one of life's greatest attributes
I just wrote a webserver for a _windows XP_ box.
Windows XP is basically NT, and Apache 2 already runs on NT.
Will I retire or break 10K?
When can I buy liksang items here in the USA ?!?!?!
Now. LikSang.com still sells Game Boy Advance development accessories to customers in the U.S. It has just dropped UPS for United States destinations. Just ship your accessories via EMS Speedpost, and you'll be fine.
[ /me goes back to playing his spinning tetris clone on GBA ]
Will I retire or break 10K?
First, I do remember when arcades where the only good place to play, but they never charged me just to enter the place...the only charge was usage. Its like cars, buy it or lease it, not buy it and pay for each mile. When do you see game makers actually charging less for a game because they can make it up in the playing of it. And even if they did, and I really don't think I'm totally alone in this viewpoint...look at DIVX. Pay less upfront and pay per use, it failed quickly. If they are going to charge per use online, give the game away for FREE. Shoot, when I buy my truck and pay it off, ford doesn't charge me for each mile I put on it.
LinuxWorx
Spelling errors are intentional as are gramatical error