Game-development on Compaq iPaq
kilaasi writes "Some hard-core game-developers from Finland is making super-optimized games for the iPaq and similar devices, tweaking and tuning every bit of piece there is. These are old Commodore and Amiga-programmers that know the virtues of small-is-beautifull."
With even the slightest effort, at least the games will look better than a GameBoy Advance!
(Thank God for active backlighting!)
SlashSigTheorem: Humorous, Political, Critical, Constructive- If you have a
I keep telling my sweetie that, but she doesnt believe me.
this is a 200mhz StronARM CPU, is that not plenty fast for any useful game that can go on these things?
::)
It's often said that the old arcade games of the early 1980's were some of the best ever created because they had so little to work with -- and therefore they were forced to focus on gameplay over glitz.
:-)
If that same rule holds true for the iPaq, it might become one of the best gaming systems ever conceived.
Some hard-core game-developers from Finland is making
I'm also an English speaking American who realizes that proper grammar is beautiful too.
It's great that they're doing this - it will certainly allow for some cool games in the future, but not quite yet... the iPaq has a hardware "feature" that prevents programs from detecting simultaneous usage of more than one button. Nothing sucks more than having to stop moving so you can shoot or jump. To counter this, developers have built "virtual buttons" that appear on the touch screen, but this takes up alot of the already limited screen realty. Plues, its hard to get used to not having the underappreciated tactile feedback of physical buttons.
This seems like a cool idea!
Can you press more than one button at a time on the new iPaq ?
people have been eeking out performance out of ARM cpus (ipaq is just a strongARM clone) for a very long time
since the ol acorn in the corner of this roomcan atest to
did a space invaders clone when I was 15 should dig that out (-;
really you should look at the GBA as its the same ISA but instead of a pultry 78MHz on GBA its a whooping 200Mhz on the IPAQ
equate that with moveing from a 486 to a P200 and you get the idea !
(yeah yeah not the same, RISC, improved piplines.... give it a rest I know already)
should be relitvly easy to do a GBA clone on the IPAQ as its the same ISA why havent we seen this before ?
regards
john jones
for offensive language -- or mod such offensive language down to -5
I remember a C-64 demo called "Edge of Insanity", which displayed (amidst a funky backbeat) a hysterical tale of blood, gore, and doom that went on for page after page after page.
Anyone remember the original authors of this thing?
I'm damned if I can confirm it, but I vaguely remember a reference to Future Crew. But it was a hell of a long time ago, I no longer have the disk, and I could be confusing it with some other demo I enjoyed about the same time. But I do remember Future Crew from way the hell back. Far fucking out to see them still kicking ass.
"Small is beautiful"? These people are programming a machine with a 200MHz RISC chip with 32Mbytes of memory. That isn't small, that's high-end desk-top performance of a few years ago.
i'm using ibm via voice to control the screen on a bluetooth enabled pocket pc 2002 with 128 mb sd card, connecting to a ericsson t68 with bluetooth and using gprs. the 64k colors look great, the sound is stellar. most folks here trash microsoft no matter what they do, but the pocket pc 2002 os is amazing so is the compaq hardware. i tip my hat to ms on this, nicely done.
The PCs are bulky. Those 3D games make sense on PC.
But PDA are small and flat. The PDA games should be 2D.
What we need now is 1D-game. If you know what I mean.
I wonder if the engine could be rigged to run something else by that name.
I see a good portion of these people are the same people who were in the Future Crew demo group. Those guys made the coolest demos. Hell, they are still fairly cool. Skaven and Purple Motion are actually decent composers. I still listen to the music from Unreal 2 once in a while. Back in around 93 I found their demos on a local BBS. I hadn't seen anything that good before (on a PC). I purchased Max Payne and though it was pretty good, I didn't realise until now that they were the same people.
I'm suprised that you didn't mention that John Romero and Co have moved to making games for the iPaq at MonkeyStone Games.
Not only are they making games for them, but also trying to base a business on them.
Spelling is also a virtue, Taco.
Wow, the good ol' days. I was late, I didn't start getting around to the demoscene until Second Reality came out at Assembly'94. Then I was hooked. There were many hoaxes of "Third Reality" coming out at the next big demoparty, as I recall.
A lot of the old FC crew created a company called "Remedy" which creates the 3dmark benchmarks and recently released the game Max Payne. Purple Motion even did the music for part of 3dmark2001.
A few people on an IRC channel I used to frequent just found a 64k intro from The Party 2000. They said "wow, when did people do this?" When I started telling them about the good ol days of MS-DOS and the demos and intros (and 4k intros!) of that time, they all turned their noses and said "EWWW DOS was NEVER good for ANYTHING! Yuck!"
Of course, back then, the amount of polygons you could fit on a torus was the big challenge. It was what originally got me into programming. I feel so old now.
Of course now, it's so easy to create jaw dropping images without optimized code, so it's nice to see that there is something to really test your skills on like the iPaq. I miss seeing elegant code.
It is about time that programmers realize that embedded systems are not desktops. Hard drives are not an option with these things.
More attention needs to be placed not only on making smaller programs perform better, but getting the program to perform closer to the hardware specs. This is what programming used to do with Assembler.
A reference to Future Crew would probably be included in the "Greetz" section in the credits or during the demo. Future Crew was probably the most greeted demogroup out there, because of what they achived.
As people pointed out, IPaq is not a feeble machine, it is far more powerful than Gameboy - and on gameboy one could make stupidly cool demos with all the graphics, but on the other hand it's just rubbish enough a few people (and not hundres) can make something cool.
I'm curious to know why this is such a lost art. Could it be due to the fact that most engines are proprietary code? Did this lead to a state where a limited number of people have access to the code? Even fewer that would want to muck with 'legacy' code in the engine? What about publishing this in a book? I've read "The Black Art of Game Programming" which I found informative; Does this book not dive into the secrets? What are the secrets? It occurs to me that maybe these lost arts come from optimizing solutions to specific hardware platforms. Could these skills be lost because of the hardware dependencies, where as the evolution of software engineering has gravitated toward abstractions such as portability and a more OOP structure? If the knowledge of the art were important or interesting enough to distribute, where can we find it documented?
Don't mind me. This was a stream of consciousness ramble.
He co-designed the 3DO and Atari Lynx, plus was an OS guy for the Amiga (note that he did not design the Amiga hardware; that was Jay Miner). And now he's the lead tech guy at Fathammer.
Of course in this case it is debatable whether the best games for a system such as the iPaq should be hardcore 3D. If you take that route, then 98% of the processor time immediately goes out the window.
Although I'd like to rejoice at this news, I fear it won't help us much. With M$ pouring resources into XP and Xbox, I fear that CE (with its very reasonable liscencing terms) will become yet another orphaned child from Redmond.
"Prepare for the worst - hope for the best."
Well, I just upgraded my iPaq to the unstable version of qpe, a GUI built over qt embeded for iPaqs with a basic Familiar Linux, and believe it or not it has QUAKE.
man, this quake thing is quickly becoming omnipresent, some more time and we'll have more ports of quake than space invader or pac man...
What ? Me, worry ?
Now if they could only port Rune to the ipaq... imagine the possibilities!
Where did you download the IBM Via voice for the ipaq? I looked all over their website, but didn't see the download.
actually it has a 16.78mhz CPU instead of 200MHz in the ipaq...
That's more like going from a 25MHz 486 to P200.
Speaking of small demos, there is an execellent, high quality 11 minute 64 kb pc demo called the product. (sorry, windows only, DX 8 required).
-- If you try to fail and succeed, which have you done? - Uli's moose
We know no one wants to play a platform game with a pen, so obviously the next hack will be a joystick - but this begs the question:
How the fsck do you hold the iPaq AND a joystick at the same time?!
*clunk*
"Shit... dropped the joystick again."
(repeat 3x)
"Okay, maybe if I hold it like *this*."
*clunk* *crackle*
"SHIT!!#$!@@@@@%!^^@"
That's just great, where can I go to upgrade my old Ipaq? It would be nice to see the screen again, glowing dust is exciting for only so long. Then again, maybe I'll wait until they come out with a radiator backpaQ accessory. I've read that 64M of ram makes those things go down more often than an Athlon on VIA (take that, Monica!).
Did anyone see that screenshot of Berlin running on the IPAQ? Neither did I - but he got pretty damn close and that was fucking cool.
From the article: These are old Commodore and Amiga-programmers that know the virtues of small-is-beautifull.
For their time, nothing comes close to Commodore computers, the C64 sold 22 million units between 1981 and 1987. I started out with a C128 (I rarely ran C128 programs, instead I almost always ran it in C64 mode) and migrated to the Amiga's in 1989. I started out with an Amiga 500 and moved up to the A1200. Those machines were way ahead of their time, they were multimedia machines before the phrase was coined.
They had 4 channel digital stereo sound, could display 4096 colors out of a palette of 16 million onscreen at 1 time (this was when 16 color EGA was the rage on PC Clones). They had a fully multitasking operating system, and it was completely GUI orientated. They were also plug and play too, but they called it auto-detecting the hardware. I own a PC now, but at the time I'm glad I was an Amiga user instead of a PC user, I never had to go through all the troubles PC users were plagued with at the time (remember setting jumpers for ALL your hardware, and praying there were no conflicts?).
Shh.
Oh how I wish a few of the old Future Crew members would get together and finish some of their incomplete demo projects... No matter how many times I watch Unreal and Second Reality, I am still amazed by them. They are beautiful examples of super-optimized code. --Something that all programmers *SHOULD* be doing today, but don't.
Inmar Software ( http://www.inmarsoftware.com/ ) has a similarily optimized 3d engine for the Pocket PC. It has a game ( http://www.inmarsoftware.com/minigolf.htm ) that runs on StrongARM Pocket PCs and uses this impressive 3d engine. With 128 MB CF cards costing only $50 and 64 MB RAM in many new Pocket PCs, storage is not much of an issue, compared to other PDAs. The new Pocket PCs (running Pocket PC 2002, http://www.pocketpc.com/ ) all use the StrongARM cpu, so these sort of 3d games will become more common place and of higher quality in Pocket PCs with the powerful StrongARM as the cpu. The new PPC 2002 devices do not have a problem with multi-button pressing, so the quality of gaming on them will continue to advance. (The iPAQ 3635 only costs $300 after looking for a good deal and getting the $150 rebate from Compaq. I just ordered mine.)
I think there are a lot of gamers out there with Ipaqs who don't want extraneous 3-D graphics and action games. What is wrong with games that would be more suited to the platform. Like strategy (No, RTS is not real strategy) or RPGS?
r /FreeCiv/FreeCivScreenshots.html
http://members.fortunecity.com/broadsword/Compute
Somebody started working on a freeciv port, but I think it has been abandoned. Thats too bad. I can't think of many games more suited to the Ipaq than Civ.
Anyhow.. I just think all this Ipaq gaming development is going in the wrong direction. Someone should port dos to this thing (with VGA support) then we could play all kinds of good non 3d games at 320x200.
it's on the cd that ships with the new iPAQ 3800 series.
Check out this review. Actual model in hand, retail purchased. Buttons fixed as well as screen dust bunnies addressed.
Man oh man did that article bring back memories. Nothing, _NOTHING_ has ever impressed me as much as 2nd reality
Here's a download of the demo:
http://www.infosync.no/show.php?id=985&page=3
It's pretty cool!
I thought "131mhz, should be enough for those gameboy and NES (heck even C64) emulators...
:)
God I got a bad surprise... not only it's unplayable, I can't beleive it's tight-assembly code, either the microsoft compiler is really really crappy for MIPS device, or WinCE sucks too much ressources, or both of these reasons... The device isn't intended for gameplay, that I can understand, but heck, at 300$ a pop, (400-500$ for ipaq?) they might as well throw in just about every features they could.
I know that the processor in the E-115 is a crippled MIPS R3000/4000 without the FPU and some other "useless and current consuming" core components. I can overclock it but it still won't change de fact that I feel some application would greatly improve with simple lowlevel optimization.
All that said, It's nice to see some people coding low-level and pushing the envelope... Maybe they should work on pocketquake so I can get more than 1fps
--- Metamoderating abusive downgraders since my 300th post.
I use my Ipaq for everything. I use it's calculator function.
I sometimes calculate how my peers on slashdot will mark my post as "redundant" when it was never said in the first place.
I sometimes calculate how much more karma I need to boost my ego.
I sometimes calculate how much time it will take me to meta-mod these "meanie-heads," (remember, when posting use "school language") who moderate good posts as "troll," as unfair.
I am calculating right now how long it will take people to mark this comment as "troll" or "flamebait"
I also use the calendar function, but I shouldn't make my post to long. (remember, 20-40 lines)
-skoobasteve
scubasteve http://www25.brinkster.com/irx/scubasteve
A joystick is totally possible with the iPaq. It's 'ActiveSync' port just a glorified serial port. It shouldn't be hard to splice an old serial joystick to an activesync cable. Compile a new kernel and shazamm!
but if I want handheld gaming goodness, I'll stick with a $100 Gameboy Advance. If I'm feeling frisky maybe a WonderSwan.
If I want a PIM, I'll get a $100 Palm platform device. If I want a Super PIM capable of holding a few extras, I'll get a $200 Palm platform device.
Either way, I still have $200-$300 to spend on my next-gen home console.
I applaud the hacker ethic at work here, but to be pragmatic I think there are better tools to do my job.
obviously no deficiencies vs. no obvious deficiencies
The value of this article is not that a bunch of people have built 3D games for the iPAQ or other small devices.. The value of this article is that these people were able to create extremely clean and compact code. This is critical in developing good software
It just bugs me sometimes the number of lazy programmers that are out there. In one company that I have worked at, there was always a push towards getting it done rather than writing clean code. In one instance, one piece of software made 10 SQL queries that could have been done with 1. The reasoning for this was that, "the servers can handle it."
Remember guys as you go out there and develop code, although "the servers can handle it now.." at one point in the future, software is going to reach the capacity of the hardware. At that point, all the people that have been creating sloppy code will suffer.
_______________________________
"I'm not Conceited...I'm just a realist..."
I was at Eidos headquarters about two months ago and they showed me Tomb Raider on iPaq. I was blown away. (And trust me, I've seen/played a lot of video games.) The quality (FPS, etc.) was better than the original PSX.
t ml
As someone already commented, the controls were... interesting... but nothing that you couldn't get used to after a little bit of practice.
Anyway, for anyone who cares, here is a link I saw about iPAQ TR:
http://www.pocketgamer.org/archives/00000314.sh
--- My dad's political betting
Check it out at the AmigaDE shop! Some PDA titles are really great. The DE player doesn`t include the 3D pieces yet, therefor there are currently only some great looking 2D titles available. There will be desktop targetted applications available later as well.
The original Unreal was released in 1992, an updated version (with GUS support) in 1993. No time travel involved, just some sloppy writing in the Wired article.
It should also be noted that the Unreal demo has lots of parts, some in 2D, some in 3D.
Although it was a 20MB program I was able to run Ultima Underworld in it's 3D glory on my 386SX20. So no real FPU there and UW ran. 3D isn't that amazing on a 200mhz processor. The talk of minimal coding etc. big whoopie ding. It wasn't til doom that games didn't have most of their graphics engine done in Assembly.
It's a neat idea tho. I was unaware of the power of an iPAQ
Oh, well...that could be a problem, but it isn't. Simply because at that point they use fixed point for "scientfic calculation". Way back in the days, it was very common to use long or int with a fast library that implemented fixed point. In a stric sense this is not exactly "emulation" of floating point.
I know there are accuracy problems and other limitations, but it has been done and it is most probably enough for this kind of game. I'm pretty sure these guys used this method.
As an example, I would like to state "Mechwarrior" (which some of the screenshots reminded me of), that was completely written in fixed point IIRC. Gorgeous game, back in the days.
Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
Since nobody has mentioned it yet, I thought I would.. Did you notice that the article says the engine also runs on Linux?
You may also find this interesting:
http://www.g-cluster.com/
It's a Finnish company which develops unique technology that enables customers to play popular video games (Worms, Quake, Tux Racer, etc) using iPaq/WLAN. The games run at the server and are streamed to the handheld.
I tried the system last week at the local movie theater and it's cool. The quality of video is pretty poor and the controls are clumsy, but even still...
> use the supplied hardware on the 800 (sort of like the Amiga's copper).
... THERE is a common Designer link between the Atari - Amiga -
...
...
Well
Epex(?) Handy (Atari Lynx) to the 3DO!
For CBM history
Killer Unix
and
CBM history
John (C-128D, SX-64, A600HD, A1200HD, A2000HD, and CD32 owner)
(David Bowman, EVA near HUGE Monolithic Win-PC in orbit around Jupiter) "My God - its full of Malware!"
You make a joystick that plugas into the bottom of the iPaq and makes the whole device a gameboy style device.
Seriously until a good joystick comes along gaming on these devices suck. I've tried to play MAME games on it and can not make it past the first levels most of the time because of th shitty input interface
[Please type your sig here.]
Since I live here in Finland (and work in the IT field) this kind of thing is pretty daily stuff for me... I just yesterday on a lunch I visited Soneras (http://www.sonera.fi/) and G-clusters demo stand in a movie theater complex... They where displaying 3D games on iPaq with wlan connectivity...
Deathmatch on a PDA!
It's got a 200Mhz processor with 32Mb RAM, for feck's sake!
Physically small, yes - but it's got about the same power as a good PC did 5 years ago...
TWO HUNDRED AND FIFTY english pounds for a 4 meg upgrade - can't even remember how much my 70 meg hard disk was - I just got a 60 GIG one for my pc for less tho, that's for sure!
Typically during an FFT, you need 16 bits plus an extra bit every stage, which is log2(points) stages. So a 1024 point fft would require 26 bits of accuracy, which would fit within a 32 bit integer.
On the other hand, a single precision float is 32 bits, but only 24 bits are used for mantissa.
Hands up everyone who can tell me where the rounding errors occur in the floating point algorithm. Now, hands up everyone who can tell me where the rounding errors are in the integer algorithm.
The point is, there are integer-only MP3 players, which happen to run extremely efficiently and with the same accuracy (or better) as the floating point ones.
It's one of the biggest myths that's going around today that floating point somehow has greater accuracy than fixed point. It only does in some very specific cases, which doesn't include pretty much any DSP algorithm. I blame Intel's marketing, personally :)
Let's take the single, this would mean that you cannot accurately represent a big number like 221219.7625 (10 digits) in a 32 bit single. Besides an implicit cast from a int (32bit integer) to single (32bit floating point) would generate a warning in any compiler. This last statement just to say that any halfway informed programmer should have had halfway a clue about FP limitations.
Now for the fixed point, I know they have some distinct problems, but I should hit the books again to be specific.
Obviousley, I do not know anything about MP3 decoding, so I stand corrected. As you can see (well I hope), Intel marketing hasn't had too much influence me. :-)
(Didn't I defend fixed point in my original post? Yup, I did...)
Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)