skeezix
Internal Development
I get asked some of these quesitons a few dozen times a day, and it comes up in IRC a lot, etc.. so I thought I'd rant out a bit.
http://www.codejedi.com/cgi-bin/blog.cgi/t....blog?seemore=y
Now, lets see how much I get flamed
jeff
Posted here, so you needn't hit the link:
Tech: A simplistic comparison of the GP2x and [X]
Tue, 04 Oct 2005
A lot of people are planning to move over to the GP2x handheld console - be they former or current GP32 (the companies prior device) owners or people coming completely in from the green. As a GP32 owner and fan this is great news -- GamePark (now GamePark Holdings) are fairly clueless in a lot of ways, but (like Commodore!) they know to keep prices low to the ground and encourage third parties to get into the mix. (Yes, you read right, a company who actually encourages you to rip open their devices knowing you'll enjoy it, tell all your friends, and need to buy another when you kill your SMC slot.. right Squidge?)
Anyway, for now, I'll try and avoid going over what a GP32 is in any great detail, and what the GP2x will be... except to summarize something I've been saying a lot lately. So now I can just point to this posting and say "see there"
Oh, and that the GP32 'scene' is a lot like the old Amiga and Atari ST and Commie scenes were -- its _fun_.
The past
The GP32 is well loved by its fans as being the top emulation machine around right now, despite its rather anemic specs. An ARM CPU with no FPU (and that can usually only clock up to 160MHz or more) attached to 8MB of RAM and an SMC slot - not much and all off the shelf.. but it does feel pretty good and offers controls that don't cramp you up (I'm looking at you, Tapwave.) It offers a really sexy bright screen (too bad its sideways in RAM!), and a really simple SDK thats free and Free courtesy of the Free Software Foundation and gcc (again, I'm looking at you Tapwave!), though it lacks the sexy black finish and touchscreen (again, looking at you with sad eyes, Tapwave!) Due to the ease of coding and familiarity of tools, the GP32 quickly became 'the' machine to port homebrew games and emulators to.. it was easy to do, fast to do, and the result was loved by the scene members and really.. the emus are a total blast. Course, only a few dozen developers are active at a time but this helps create mystique and makes for a tight friendly scene of people hacking away and helping each other. (And thank god for gp32x.de and Evil Dragon!)
The present
The GP32 is pretty much unheard of by most gamers and coders, since its created by a small Korean company and distributed only through little importers such as Lik Sang, GBAX and various individuals. Good kachet, but not so good for sales. Naturally, people have hacked away at their Palm OS and Pocket PC PDAs, and done wonders on the GBA and Sony PSP consoles. The PSP could be king (and really is a _great_ emulation platform right now) were it not for Sony constantly trying to suppress the scene and homebrew development - eventually, users will have to decide between getting new games, or sticking to old games and homebrew, and thats just not cool. But for now, the GP32 is the king of open handheld game consoles, and the PSP is tops for handheld consoles with bastard intentions.
The GP32 has no special hardware and is relatively limited, but works well due to the dedication of its developers and scene. The Tapwave Zodiac was a better machine in almost every sense, but the company business model just couldn't hold up against the tide that is Sony and Nintendo. The Zodiac, over the GP32, sported 200MHz (a little clockable as well) processor with fast architecture, a bright touchscreen with a 2d GPU for scaling, smoothing and blitting, and rechargable battery and enormous pile of RAM. The Zodiac was pretty good kit for emulation and homebrew, but the companies choice to back a commercial compiler suite pretty much made homebrew non-existant.. so the GP32 remained king.
The PSP on the other hand is easy to develop for due to the hard work of the PSP SDK team (among others) and is also based on gcc-and-friends. With a fast CPU (333Mhz!) and aggressive chipset as well as full 3d GPU, its a sexy piece of machinery. No touchscreen, but long rechargable battery life, a gorgeous bright display, analog and digital controls.. its a great emulation platform -- and lets face it, theres millions out there so lots of potential admirers for your homebrew. Too bad Sony is out to get the scene...
Nintendo's DS is another good solid platform; a little harder for people to homebrew with since they need to first acquire a special adapter to enable homebrew to occur (ie: additional cost and effort), and a little harder to develop for.. its still a popular machine due to the dual screen and touchscreen action. Like the GBA (though superior to the GBA in every way), the NDS doesn't have a beefy processor so no serious emulation will occur (ie: Amiga etc.)
The Future
So I would argue that the near future of mobile emulation essentialy boils down to two main contenders - the Sony PSP and its 'now it works, soon it might not' mentality, and the GP2x which hopefully will adopt the mighty GP32 community.
So how does the GP2x stack up?
The GP2x is another machine built mostly from off-the-shelf componentry.. no touchscreen but another big and bright screen like seen on the existing GP32 'BLU' (backlit) models. This time she'll have lots of RAM (64MB seems to be the goal), which puts her in the same boat as the venerable Zodiac - enough RAM for SNES and NES by far.. but also enough for Amiga, Atari ST, and even Neo Geo CD (oh baby!).. even enough for emulating a number of classy Capcom arcade games and the like. Gamepark has always been pretty good with controls, so we expect the GP2x (to be released soon) to have good controls, and this time a SD/MMC slot instead of the long out of date SMC card system.. media will be cheap and fast.
The point
But as we all know.. emulation is about processing power, and the GP2x could shine here.. but not right away. The GP32 faired pretty well on its lowly 160MHz or so, but everyone wanted more. With the PSP we see that 333MHZ can do pretty well (especially with a GPU behind it), but I've long said the sexy point is about 400MHz and up (maybe even 600). The GP2x takes a twist - rather than offer a single piece with high speed, it will offer two 200MHz processors with some specialization in function. (Clocking may be possible, but we won't know until we see the machine.)
What does this mean?
(This is why I made this post -->) A direct port to the machine will run about as well as any other 200MHz machine, such as the Tapwave Zodiac. The machine has the potential to work really well, with the dual processor arrangement.. but it will take some work for developers to port a single-threaded application to a multi-CPU arrangement to actually use that second CPU effectively; in fact, we can assume most applications will be single-CPU based and run at 200MHz, while a few others will use one CPU for heavy lifting all the time, and use the second CPU for 'bursts' to save on performance (say, for audio generation or screen scaling, while the main game engine does its business.) After a bit of time, the second CPU will be used more heavily, and after even more time I'm sure both CPUs will be working double time.. but right up front, it'll act like a 200MHz machine.
But for those developers who take care, it could really pay off. Lets just hope Gamepark provides some cache for the chips, and arranges the system bus so as to minimize contension between CPUs. Otherwise we lose a lot of performance hopping on and off the bus..
http://www.codejedi.com/cgi-bin/blog.cgi/t....blog?seemore=y
Now, lets see how much I get flamed
jeff
Posted here, so you needn't hit the link:
Tech: A simplistic comparison of the GP2x and [X]
Tue, 04 Oct 2005
A lot of people are planning to move over to the GP2x handheld console - be they former or current GP32 (the companies prior device) owners or people coming completely in from the green. As a GP32 owner and fan this is great news -- GamePark (now GamePark Holdings) are fairly clueless in a lot of ways, but (like Commodore!) they know to keep prices low to the ground and encourage third parties to get into the mix. (Yes, you read right, a company who actually encourages you to rip open their devices knowing you'll enjoy it, tell all your friends, and need to buy another when you kill your SMC slot.. right Squidge?)
Anyway, for now, I'll try and avoid going over what a GP32 is in any great detail, and what the GP2x will be... except to summarize something I've been saying a lot lately. So now I can just point to this posting and say "see there"
The past
The GP32 is well loved by its fans as being the top emulation machine around right now, despite its rather anemic specs. An ARM CPU with no FPU (and that can usually only clock up to 160MHz or more) attached to 8MB of RAM and an SMC slot - not much and all off the shelf.. but it does feel pretty good and offers controls that don't cramp you up (I'm looking at you, Tapwave.) It offers a really sexy bright screen (too bad its sideways in RAM!), and a really simple SDK thats free and Free courtesy of the Free Software Foundation and gcc (again, I'm looking at you Tapwave!), though it lacks the sexy black finish and touchscreen (again, looking at you with sad eyes, Tapwave!) Due to the ease of coding and familiarity of tools, the GP32 quickly became 'the' machine to port homebrew games and emulators to.. it was easy to do, fast to do, and the result was loved by the scene members and really.. the emus are a total blast. Course, only a few dozen developers are active at a time but this helps create mystique and makes for a tight friendly scene of people hacking away and helping each other. (And thank god for gp32x.de and Evil Dragon!)
The present
The GP32 is pretty much unheard of by most gamers and coders, since its created by a small Korean company and distributed only through little importers such as Lik Sang, GBAX and various individuals. Good kachet, but not so good for sales. Naturally, people have hacked away at their Palm OS and Pocket PC PDAs, and done wonders on the GBA and Sony PSP consoles. The PSP could be king (and really is a _great_ emulation platform right now) were it not for Sony constantly trying to suppress the scene and homebrew development - eventually, users will have to decide between getting new games, or sticking to old games and homebrew, and thats just not cool. But for now, the GP32 is the king of open handheld game consoles, and the PSP is tops for handheld consoles with bastard intentions.
The GP32 has no special hardware and is relatively limited, but works well due to the dedication of its developers and scene. The Tapwave Zodiac was a better machine in almost every sense, but the company business model just couldn't hold up against the tide that is Sony and Nintendo. The Zodiac, over the GP32, sported 200MHz (a little clockable as well) processor with fast architecture, a bright touchscreen with a 2d GPU for scaling, smoothing and blitting, and rechargable battery and enormous pile of RAM. The Zodiac was pretty good kit for emulation and homebrew, but the companies choice to back a commercial compiler suite pretty much made homebrew non-existant.. so the GP32 remained king.
The PSP on the other hand is easy to develop for due to the hard work of the PSP SDK team (among others) and is also based on gcc-and-friends. With a fast CPU (333Mhz!) and aggressive chipset as well as full 3d GPU, its a sexy piece of machinery. No touchscreen, but long rechargable battery life, a gorgeous bright display, analog and digital controls.. its a great emulation platform -- and lets face it, theres millions out there so lots of potential admirers for your homebrew. Too bad Sony is out to get the scene...
Nintendo's DS is another good solid platform; a little harder for people to homebrew with since they need to first acquire a special adapter to enable homebrew to occur (ie: additional cost and effort), and a little harder to develop for.. its still a popular machine due to the dual screen and touchscreen action. Like the GBA (though superior to the GBA in every way), the NDS doesn't have a beefy processor so no serious emulation will occur (ie: Amiga etc.)
The Future
So I would argue that the near future of mobile emulation essentialy boils down to two main contenders - the Sony PSP and its 'now it works, soon it might not' mentality, and the GP2x which hopefully will adopt the mighty GP32 community.
So how does the GP2x stack up?
The GP2x is another machine built mostly from off-the-shelf componentry.. no touchscreen but another big and bright screen like seen on the existing GP32 'BLU' (backlit) models. This time she'll have lots of RAM (64MB seems to be the goal), which puts her in the same boat as the venerable Zodiac - enough RAM for SNES and NES by far.. but also enough for Amiga, Atari ST, and even Neo Geo CD (oh baby!).. even enough for emulating a number of classy Capcom arcade games and the like. Gamepark has always been pretty good with controls, so we expect the GP2x (to be released soon) to have good controls, and this time a SD/MMC slot instead of the long out of date SMC card system.. media will be cheap and fast.
The point
But as we all know.. emulation is about processing power, and the GP2x could shine here.. but not right away. The GP32 faired pretty well on its lowly 160MHz or so, but everyone wanted more. With the PSP we see that 333MHZ can do pretty well (especially with a GPU behind it), but I've long said the sexy point is about 400MHz and up (maybe even 600). The GP2x takes a twist - rather than offer a single piece with high speed, it will offer two 200MHz processors with some specialization in function. (Clocking may be possible, but we won't know until we see the machine.)
What does this mean?
(This is why I made this post -->) A direct port to the machine will run about as well as any other 200MHz machine, such as the Tapwave Zodiac. The machine has the potential to work really well, with the dual processor arrangement.. but it will take some work for developers to port a single-threaded application to a multi-CPU arrangement to actually use that second CPU effectively; in fact, we can assume most applications will be single-CPU based and run at 200MHz, while a few others will use one CPU for heavy lifting all the time, and use the second CPU for 'bursts' to save on performance (say, for audio generation or screen scaling, while the main game engine does its business.) After a bit of time, the second CPU will be used more heavily, and after even more time I'm sure both CPUs will be working double time.. but right up front, it'll act like a 200MHz machine.
But for those developers who take care, it could really pay off. Lets just hope Gamepark provides some cache for the chips, and arranges the system bus so as to minimize contension between CPUs. Otherwise we lose a lot of performance hopping on and off the bus..
Last edited by a moderator: