Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
Games Entertainment

Unofficial GBA SDK Available for Free 143

BlackGriffen writes "Anyone who is interested in making their own Gameboy Advance ROMs can go get an unofficial GBA SDK . With this and a flash ROM kit from someplace like lan-kwei.com, we could see a flourishing indie game making community. Available for Linux and Mac OS X only (for now, it's open source)."
This discussion has been archived. No new comments can be posted.

Unofficial GBA SDK Available for Free

Comments Filter:
  • by PrimeWaveZ ( 513534 ) on Tuesday June 04, 2002 @11:25AM (#3638275)
    I hope we can see more open-source community support for Mac OS X in the future. It's projects like this that help to solidify its position as not only a great consumer OS, but as a great workhorse and development OS as well.
    • By Providing OSX support and Linux support, is Nintendo giving the bird to MS? Makes sense to me......make a product that your competitor can't use......

      Its open source, but I figger that any one STUPID enought to port it to M$ is gonna get beat like Rodney King if they dare show their face in this here slashdot.

      That was a joke of course. not uhm....flamebut.
  • While this is Good Thing (TM) and will encourage some interesting games for the handheld system, I am a little worried about who might try and use this to convert their favorite SNES ROMS (Chrono Trigger, FFIV (II US), Super Metroid, etc) to their own ROM kit and play it.

    Ah, screw it - I want to see this happen, just so I have a reason to take the train into work and play Super Mario RPG.
    • The GBA and the SNES are nothing alike. They have about the same processing power, which is why a lot of games get ported. But the SNES is a 16 bit version of the 6502 (Nintendo tried for NES back compatibility, but it didn't work out), whereas the GBA is a 32 bit ARM processor.

      You have to compeletely rewrite an SNES game to get it on GBA. A GBA devkit won't help with that.
      • The SNES was a 65816, the same chip used in the apple IIgs- except that it was running at 10mhz if my memory serves correctly, and a stock gs only runs at 2.7. It had a whole lot of funky things going on (like a 24bit address space and 16bit registers) but it was almost completely compatible with the 65c02. It was also probably the last general purpose microprocessor designed by hand.
      • They have about the same processing power, which is why a lot of games get ported. But the SNES is a 16 bit version of the 6502 (Nintendo tried for NES back compatibility, but it didn't work out), whereas the GBA is a 32 bit ARM processor.

        Let me get this straight. A 10MHz steroid-addled 6502 could keep pace with a 32-bit ARM processor? Did I read that right? Or does the GBA really have a lot more processing power that isn't being tapped?

        • SNES games were written in ASM, GBA games are mostly written in C. 'Nuff said.
          • by yerricde ( 125198 )

            SNES games were written in ASM, GBA games are mostly written in C.

            The inner loops of the graphics transformation and sound mixing in most GBA games are written in ARM assembly language and stored in a special fast RAM on the same die as the CPU.

        • The 65c816 was more than a 6502 on roids. It was a fully functional 16bit cpu, at least as capable as some low end 32bit cpu's *COUGH*386sx*COUGH*. The ARM is a decent 32bitter, but hardly the top of the food chain. Without looking at the specs, the GBA is certainly more powerful than the SNES, but we're not talking orders of magnitudes.

          • The 65c816 was more than a 6502 on roids. It was a fully functional 16bit cpu

            The 65c816, used in the Apple IIGS computer and Super NES game console, was a 16-bit processor with an 8-bit data bus and only three integer registers (A, X, and Y).

            at least as capable as some low end 32bit cpu's

            The Motorola 68000, used in the Sega Genesis and SNK Neo-Geo game consoles and the original Apple Macintosh computer, was a 32-bit processor with a 16-bit data bus. So was the Intel 386SX processor, used in some PC clones.

            Without looking at the specs, the GBA is certainly more powerful than the SNES

            After becoming intimately familiar with the specs, I'd say twice as powerful overall, or about as powerful as the Super NES with Super FX.

            but we're not talking orders of magnitudes.

            Correct. In general, you need at least an order of magnitude speed difference to emulate a video game console. The 16 MHz ARM7TDMI in the GBA just barely squeezes by when emulating [pocketheaven.com] a 1.8 MHz 6502 and the rest of the original NES chipset.

  • With sources out for games like Descent I [descent2.com] (and II [descent2.com]), and Doom/Heretic/Hexen [descent2.com], etc... I'm awaiting to see someone port these games to GBA...
    • Re:I wonder... (Score:3, Informative)

      by strags ( 209606 )
      DOOM is already available on the GBA.

      Descent is probably beyond the GBA's capabilities, since it uses arbitrarily-angled perspective-correct textured polygons, which are a fair bit harder to render on a low-end CPU (the GBA has a 16MHz ARM7 CPU).

      I guess you could just flat-shade the whole thing, but it wouldn't look anywhere near as good.
    • Re:I wonder... (Score:1, Interesting)

      by Anonymous Coward
      ah the horror .. i tried to port doom1 (with sw wad). let me list 3 things why you will probably never see descent on the gba .

      1.
      256k ram, 32k fastram
      yep.. get all your global vars into this one first, then think about a memory manager. i had doom take like 160k on vars but that just just isnt enough..

      2.
      16mhz cpu.
      the other poster didnt mentioned of course that the rom acces cripples this quite a bit. (and you want to keep your code in the rom .. maybe fastram for innerloops but then you have to worry about where to put the textures )

      3.
      no hardware division
      which rules out perspective texture mapping.

      so there..
      2 and 3 arent that bad but 256k will hold back what could have been..
      -
      and the doom they released for the gba is really crippled!
    • Re:I wonder... (Score:2, Interesting)

      by Anonymous Coward
      I played one or two ray-casted video games on my TI-85 and TI-86 calculators. These had, I think, 6MHz Zilog Z80 microprocessors. These are old processors from the late '70s or early '80s, and they don't have a lot of registers, so complex stuff runs kind of slow on them. They also don't know how to divide, so you have to do that in code, and naturally they didn't have numeric coprocessors to make up for that deficiency.

      The TI-85 had about 24K available RAM, and the '86 had something like 60K available RAM.

      Considering the claustrophobic amount of RAM and CPU power, especially the limited number of registers (and the small width of them), and the lack of ability to do division or anything floating-point in the hardware, these ray-casted games ran fairly well.

      Ray-casting is very different from *real* 3D, however. Real 3D involves things like rotating and translating potentially thousands of nodes, culling unseen polygons, searching large binary space partition arrays (BSPs), calculating whether or not (and where) to display objects not in the BSP (like health vials and other players), etc. And all of the above has to be done for every single frame.

      Raycasting is loads easier. You cast out a ray for every pixel that your viewport is wide. If the ray collides with an object on a 2-D map, the engine grabs a vertical slice from a texture map, scales it according to distance, and drops the results into the framebuffer. If the engine supports transparent pixels and any were copied, the ray continues. Otherwise it's on to the next column.

      There is some other work involved, such as drawing sprites and ammo/health/etc. bars. And there are a few other tricks, such as having variable-height floors and ceilings, like in Doom. Raycasting is very fast compared to real 3D, since there is a lot less floating-point math (and math in general) involved. However, you lose flexibility in order to gain speed. In Doom, you could only have one place for the player to stand at any grid location, so you couldn't have one room above another, or a bridge that could be gone over and also under. It is also tricky to get raycasting engines to do "looking up and down" without it looking distorted, so in most raycasted games, the player always looked straight forward.

      If my old TI-85 with 32K of RAM and a 6MHz Z80 can handle a raycasting engine, then so can a GBA with 256K of RAM and a modern ARM processor with a lot more registers and almost 3x the clock speed. (Not to mention DMAs and hardware sprites and layers!)

      Finally, the GBA has scaling and rotation, and the ability to draw primitive 3-D fields... all in hardware.

      If texture usage is kept VERY conservative, it is reasonable to believe that a ray-casting engine with texture-mapping capabilities is reasonable.

      What would be even more reasonable would be to write a ray-casting engine that didn't bother with textures at all, using solid colors instead. You could get some reasonable framerate out of a game like that, and it would still be fun to play. You might even be able to get away with some "dirty" shading.

      I have also seen GBA ROMs containing "real" 3-D engines, but the only things in them were objects in space. This is reasonable for a 3-D version of Asteroids, or something like Wing Commander.
  • Hey, maybe we'll see Tux Racer for the GBA? That'd be tight.

    Actually, how low-level is the API? Any chance someone could get Linux running on one of these babies?
  • I can start those rumors about someone porting Mario 64 to it! With any luck, it'll be as big as the DooM 2600 [google.com] project. ;o)
  • I was planning on trying to develop something on my friends PS2 when he got the Linux kit. But since I actually own a GBA, this is a much more worthy project. I want to see someone do some good network games...I'm going to try and create something similar to Strategic Commander (PalmOS game from www.zindaware.com) that can actually communicate over the cables...maybe even allow disconnects and continuations. Wouldnt that be fun :-)
  • by bberg ( 516819 ) on Tuesday June 04, 2002 @11:34AM (#3638334) Homepage
    This sort of stuff has been around for a while.
    here [io.com] is one dev kit
    here [devrs.com] is some more stuff
    that should give you plenty of links to play with.
  • Old news (Score:5, Informative)

    by neonstz ( 79215 ) on Tuesday June 04, 2002 @11:35AM (#3638342) Homepage

    The link in the article refers to the MacOS X port. Check out this [io.com] for the "original" Unofficial Gameboy Advance SDK. It has been available for about a year or so. It has always worked on Win32 platforms too, so the submitter did a really bad job. The compiler in the SDK is actually GCC.

    Check out www.gbadev.org [gbadev.org] and www.devrs.com/gba/ [devrs.com] for some other GBA development stuff. (And while you're at it, check out my own GBA-page [darkside.no] for some of the demos i've written for the GBA :)

  • by totalnubee ( 223194 ) on Tuesday June 04, 2002 @11:36AM (#3638344)
    This is not really news. Jason Wilkins, the creator if the Unofficial GBA DevKit, released it to the public at least a year ago. Also, there is a Win32 version (it came first).

    This DevKit is basically just a port of GCC to the ARM with some AGB specific startup code for interrupt handling and whatnot. The official DevKit from Nintendo is the same thing (although using an older version of GCC), but you get some extra hardware and software also. Having done AGB development for a while, it is nice to have alternatives like this unofficial devkit available, but it is nothing revolutionary. The impressive thing is actually how good the emulators have gotten recently, they should begin to allow even official developers to rely less on the expensive Nintendo hardware for normal day-to-day development.
  • Porting Doom? (Score:1, Informative)

    by Anonymous Coward
    It's already been done by David A. Parkman productions (or something along those lines) and you can buy it for the affordable GBA cartridge price of $35. It's very true to the original game. The only problem is, of course, the dark screen which people will quickly remind you is not a problem with the GBA AfterBurner upgrade [portablemonopoly.com] [Triton Labs]. I've really been getting into Doom again with this release (as much as sunlight allows anyways). As for other games, expect the most popular SNES games to appear on the GBA. Breath of Fire I and II (by Capcom, top-notch RPG games) have already been ported. I must admit that, lately, visiting all my old favorites on a portable system has been taking up more of my time than next-gen console games. You can't beat good gameplay, no matter the format.
  • This is nothing really new. I have been doing homebrewed GBA development for a while (bying a flash cart this summer). Here are some links of GCC cross compiled for ARM/THUMB.

    Linux and Windows [io.com]

    Also check out gbadev.org [gbadev.org] for all sorts of demos (source included), emulators and tools.

    As a note, I am working on a full API for the GBA called GGAPI. I can do rotation backgrounds, 8-bit bitmaps, hardware sprites and more so far...so again...nothing new...hope you enjoy :)
  • by peterdaly ( 123554 ) <petedaly AT ix DOT netcom DOT com> on Tuesday June 04, 2002 @11:46AM (#3638422)
    At about $70 (Game Boy Advanced, Amazon price [amazon.com]), you can create custom games, ports of other things, etc. This sounds to me like a much more practical thing to purchase to play around with the the PS2, which is in at least the $500 range to start hacking your own stuff for.

    It would be interesting to know how many people will create practical, non-game applications. I know there are many non-game attachments, like a TV tuner and digital camera available for the unit.

    I may actually get one of these myself to hack around with. The "other half" says I shouldn't waste money on the PS2, cuz I will may write one application, then never touch the $500 investment again. Same thing with the Sharp PDA. $70 is much more reasonable for this type of hobby.

    -Pete
    • It would be interesting to know how many people will create practical, non-game applications

      Business Man1: It was nice meeting with you. Let me just put your email/phone # in my address book program.
      Business Man2: Yeah, sure no problem.

      -30 seconds later-

      Business Man2 looks over shoulder of business Man1 and see's Mario.

      Business Man2: What the!
      Business Man1: Oh yeah yeah yeah, sorry.

  • by Jacer ( 574383 )
    the port couldn't have been that hard, i mean, with the foundation of the operating system being so close to it's native environment.....they could squeeze a LOT more usability out of it with just a little more work. i do applaud what they have done!
  • by ldopa1 ( 465624 ) on Tuesday June 04, 2002 @11:48AM (#3638433) Homepage Journal
    This would totally rule.. I'd love to see Nethack for the GB. I'm currently working on a Palm version, and of course, it'll work on Windows CE, but honestly, wouldn't Nethack be an awesome alternative to bejeweled on the bus?
    • If you do this, you will be my god. (and by god, I mean Molloch)
    • This would totally rule.. I'd love to see Nethack for the GB.

      So you want indie games...that are really just ports of old games? Isn't that like worshipping a cover band?
      • Porters should be as respected as other programers.

        Honestly this is more like worshiping a band for doing a nice cover because whoever ports the software isn't necessarily known just for the software they ported. They might have some original code somewhere.

        Having everyone worship their own pet people would do the world good. Distribute the support! Why should 5 key developers get ALL the attention.

        If your worshiping anything not out of fear for being stuck in some firey pit, it's all dandy from my point of view.
        • Porters should be as respected as other programers.

          I've done ports; they're at least an order of magnitude easier than writing original code. Porting a game is usually done in one to six months. New games take 1 to 3 years. If you cover a song, you at least have to learn how to play it. When you port code, you just diddle around with select parts of it on the backend until it works.

          The spirit of the indie game scene is *design*. Ports of Nethack and emulators are boooring.
      • Exactly!!!

        Seriously, some of the best games ever created were invented at the beginning of the computer revolution. Think Nethack, Rogue, Adventure, Pong etc... I mean, what ever happened to games like Pac-Man (of which the first perfect game was played only a couple of years ago...)? Those games took actual thought, and no twitching (think Unreal Tournament, Quake N and Half-Life).

        Speaking of HL, if it weren't for the Mods, which require thought, skill and strategy, I wouldn't play at all....
        • Erm, did you never play Pong or Pac-Man? Twitching is exactly what they took.
          • You're kidding, right? Pong - angle of incedence=angle of refraction - nuff said.

            PacMan - Required strategy - ways to lure ghosts away from where you'll be in a minute.

            If the ghosts shot at PacMan, and he shot back, maybe that would be twitchy...
            • I still don't consider that any less twitchy than the examples given of modern games. Take Q3A for example. Any clan member will tell you it's all about control of the armor/health/quad damage. It's about keeping the other team from them. Try firing a rocket without anticipating what the target will do during the flight time.

              Both Q3A and pong are based on simple rules, and to be good at either entails a certain amount of thinking and planning, but I wouldn't call either a strategy game. It seems naive to see strategy evolve from the rules in some games, but not others.
    • I'd love to see Nethack for the GB. I'm currently working on a Palm version

      Doesn't nethack have more than 256 KB of state? The GBA has only about 288 KB of RAM on the console and 32 KB of RAM on the cartridge (for saved games).

  • Dev kits (Score:2, Insightful)

    I think that companies like Nintendo and Sony and such should sell stipped down dev kits for like, say $50... including software you'd need and maybe a transfer cable.

    No disrespect to the great underground game hackers out there, but I don't think there is much of a risk of an uber fantastic game like Gran Tourismo 3 getting put out. If there is, maybe a deal can be struck to distribute the game to the masses. The gaming industry itself could see what's being turned out, and maybe find some new prospective talent.

    I also think that the console manufacturers should make and sell (as well as install for a fee) mod chips to play IMPORT games (not burned games) because then they can make more $$$ selling the import games (as well as maybe an import fee, who knows)

  • I dipped into lankwei.com (as mentioned in the original article), and found this page [lik-sang.com] with info on various flash ROM products. Not exactly cheap...

    -----
    Apple hardware still too expensive for you? How about a raffle ticket? [macraffle.com]
  • So who's gonna get a kernel booting on the GBA? Then we can get mpg123 goin and flash the cartridge with our fav mp3's.
  • by thesurfaces.net ( 196820 ) on Tuesday June 04, 2002 @12:05PM (#3638533) Homepage
    Some existing GBA dev kits...

    HAM [ngine.de]
    The SGADE [suddenpresence.com]
    The original Unofficial GameBoy Advance Software Development Kit [io.com]

    UK users should buy their kit (Flash ROM kit and lighting kit from Craig Rothwell [cdworld.co.uk] -- reliable feller.

  • I've been running the unofficial gameboyadvance developmentkit mirror in the Netherlands for quite some time. Jason has a datalimit of some 500Mb. The packages have shown a consistend demand of about 400 downloads/month generating aprox. 8Gb/month ever since the first version in August of 2001. So it's nothing new. Bandwidth has been an issue for him espacialy since he had to make the full gcc sources available instead of only a patch. I've been waiting for it to get slashdotted, I'll be monitoring my traffic tonight!!! :)
  • I know that the Game Cube can use GBA as controllers. I am not sure what the interface protocol is like, though. Do you think that it might be possible to make custom GBA carts for Cube games, that provide enhancements (cheats, etc) to a game playing on the Cube?
  • I've heard U.S. Customs is seizing things like this siting the DMCA and that it MIGHT be used for piracy.

  • You can get the GBA hardware carts/writers from: Lik Sang [qksrv.net]
  • Better details (Score:5, Informative)

    by stonecypher ( 118140 ) <stonecypher@gTWAINmail.com minus author> on Tuesday June 04, 2002 @12:46PM (#3638825) Homepage Journal
    I've submitted this maybe a half dozen times with more linkage. Oh, well. :)

    The ability to program for the GameBoy Advance is *not* Linx or Mac only. The biggest group of developers centers around a partial build of GCC called "DevKit Advance", which has pre-made setups for Win32 and Linux. There are smaller communities each around "HAM", "SGADE", and "GCCGBA" - all Win32 prebuilt only. If you've ever built your own GCC, however, you can build to GBA, and that means you can build from damn near *anywhere*.

    Good places to go to learn:

    • IRC: #gbadev on EfNet - fairly active channel full of developers, mostly amateur but a few commercial. DO NOT ASK FOR ROMS OR COMPILER DOCS HERE! You would be summarily banned. This is a legit ONLY channel.
    • Yahoo! Groups "GbaDev". Many of the same crowd as above, but a larger populace, and by email, not realtime chat. Also, there are archives. :) Many of your problems - even surprisingly difficult ones - can be answered just by digging through the archives. Moderated.
    • There are more tutorials than just The Pern Project [216.167.73.47], but I can only ever remember that one. :) I got started before that tutorial, so I have no idea of its quality (many people seem to have started with it)


    Compilers:
    • SGADE [flipcode.com] - The Socrates GameBoy Advance Development Environment - Good, complete, fairly easy to install, completely unrestricted open source. Developer is tireds and overbusy, and wants someone to take over the development. (Yahoo group [yahoo.com] also available
    • HAM [ngine.de]Free for non-commercial development. Has an installer; fairly painless for Win32 people. There are requirements about using is commercially which I personally do not dig.
    • DevKitAdvance [io.com] - The modified distro of GCC that the bulk of us use. You'll see Jason's name on GCC mailing lists from time to time. Thanks, Fenix. (This is the kit I use, though rather heavily modified)
    • Someone whined and GCCGBA was taken away from us, because it wasn't a whole GCC distro or something (the discussion was never made public, and I'm going by rumor); the remaining packages don't seem to have trouble, but I'm a little will happen to other compilers over time.


    Some interesting stuff that's been done:
    • Snap together and play GBA Game Creator [nerim.net]
    • Quake Level 1 displayed realtime on gameboy: Article [dreamcast.ca] and Video [dreamcast.ca]


    Miscellaneous news sites with links to code and tools:
    • GbaDev.org [gbadev.org] - The canonical news source, especially since AGBDEV.NET died. Most things are covered here. Those that aren't can be found at
    • Jeff Froweihn's Devrs.Com [devrs.com]. Jeff Froweihn wrote the lnkscript and various other stuff that you're likely using if use use the homebrew community's stuff. Thank him. Also, he maintains an aswesome, if difficult to take in at once, news site.
    • GameBoy Land [dreamcast.ca]


    Anyway, this is by no means an exhaustive list, but it's a start, and you can get to most of the good ones from there by linkage. If anyone needs a hand, my email address at slash should work.

    StoneCyph on EfNet, johnisaheadcase / Fatty diZilla on mailing list
    • Re:Better details (Score:3, Informative)

      by phobialab ( 583393 )
      Thanks for the kind words on the SGADE, but your information is a little out of date.

      Development of the SGADE has changed hands (to me), and is now continuing full force. The new release should be up sometime this week, with additional releases following roughly every three weeks for the next few months -- each adding even more functionality.

      The website has also changed [suddenpresence.com], and is currently undergoing an overhaul.

      -- MTP
      • Development of the SGADE has changed hands (to me), and is now continuing full force.

        Congratulations! Jaap's code was instrumental in helping me grok the hardware; I'm happy to hear that his work is being maintained and extended. The best of luck to you; SGADE is (imho) a critical thing: an amateur environment which could be made legitimate by being sued by a commercial product. This is (again imho) HAM's critical fault, and besides, I like your name better. :)
        • made legitimate by being sued

          (Sighs) The thing I hate most about spell checkers is that they miss mistakes if the mistakes also spell valid words.

          Used. . Obvious joke trolls, begone.

          Stupid 2 minute filter made me rewrite this. Bleargh.
  • So does this mean that with the ROMS that are for the SNES, we could somehow make our own port of say "Secret of Mana" (or some other SNES title) for the GBA? That would be awesome! Though probably not awesome enough for me to spare time to learn this.
    • we could somehow make our own port of say "Secret of Mana" (or some other SNES title) for the GBA?

      No you couldn't, not at least until after December 31, 2088 (1993 SoM release + 95 year copyright term).

      You'd have to make your own RPG, with your own characters and your own story. But if you want that, just go buy Golden Sun.

    • Putting obvious copyright issues aside, I don't want to see another port of an old SNES title to an newer platform. Don't get me wrong, SoM is a great game, but it should be a source of inspiration, not perspiration. Give me a new game that addresses the issues of the old or takes me in different directions than before!
  • The ROM writers that you can get from lan-kwei.com were being seized at US starting earlier this year as they arrived. Nintendor went on a big campaign to try to eliminate this type of thing. They feel that flash roms lead to pirating.
  • Okay. Some stuff I missed, after reading through the questions.

    • The hardware supports carts up to 256 megabit (32mb) in size. There are flash carts which have more space, however, through software bank switching. No commercial ROM currently even hits the hardware size limit (manufactureing costs, it is widely believed, are to blame; it may be the case that Big N limits the available size of carts to both themselves and third parties)
    • Yes, a linux distro would fit. No, it wouldn't be any fun without a keyboard. Yes, TCP/IP has already been done (a working webserver, which IIRC was even on SlashDot already. That's what caused me to try to post the homebrew dev scene the first time.)
    • Emulators: there are about a dozen good ones around; many stick to VisualBoy Advance [emuhq.com] and Mappy Virtual Machine [bottledlight.com] for development. VBA is often regarded as the best and fastest emulation, and Mappy is usually seen as having the best debugging tools (source-level breakpoints, register viewing, disassembly, viewers for most of the important chunks of RAM, etc). VBA interfaces with GNU debuggers, but I'm lazy, and haven't tried it.
    • How good is the processor? Good enough to emulate an NES? Yes. In fact, there's a port of an emulator which runs NES binaries which were stapled onto the end of the emu binary out there already (it uses scaling and rotation to fit the otherwise too-large pictures; some detail is lost, so text often looks funny, etc). I have no linkage; sorry.
    • To be specific, the processor is an ARM7 TDMI running at approx 16 mhz. Also, the screen does 60hz refreshes, is 240x160, and has a bitmapped 15bpp color mode (among other modes, including z-buffered modes). The programmer is afforded extreme memory mapping flexability by the hardware; it's more fun than a Rubix' Cube.
    • Sorry - should have clarified - the ones I listed are all emulators for the GBA. Sorry, but not even remotely close. You didn't even get the popular ones. There's a pretty decent list here [zophar.net], at Zophar's Domain (a pretty good dev site)
    • Descent is probably beyond the GBA's capabilities, since it uses arbitrarily-angled perspective-correct textured polygons, which are a fair bit harder to render on a low-end CPU (the GBA has a 16MHz ARM7 CPU).You should see some of the stuff that's going on. There are a number of fully textured 3D engines out there, one of which actually uses Descent levels as its examples! (I linked to another in my previous post which uses the quake level 1) A good example is the Raylight [raylight.it] engine, though there are probably a dozen that I've seen (and a few proprietary, one of which I'm about halfway done writing :) )
    • Hey, maybe we'll see Tux Racer for the GBA? That'd be tight. Quite possible. A racer wouldn't be difficult - the floor is a mode 7 S/R background, the sprites are prerendered, and there's enough VRAM that they don't need to be DMAed into place or anything (though people do that anyway, often enough [grins])

      Actually, how low-level is the API? Any chance someone could get Linux running on one of these babies?"The API" isn't. HAM has an engine, SGADE has an engine, there are others (I don't use them), and there are some commercial ones. But, here's the thing: the hardware does a lot of stuff. Sprites and backgrounds are supported in hardware, and do scaling and blending stuff, etc. It's just register tweakage. You don't really need an API.

      Big N does send an API of some sort, but I'm not a licensed developer, so I know dick about it. I'm told it's not that much of a difference - mostly just wrapper functions.
    • well if you realyl want to consider assembler an API, that is your answer. ARM flavored assmebler. We're not stuck to Assembly. Though there are about six assemblers in common use (the one that gets most use as not just part of a toolchain seems to be GoldRoad [goldroad.co.uk], but because I don't use assembly except in-line, I have a biased perspective), there are also a buttload of C and C++ and so forth compilers. Because Gnu's Compiler Collection (GCC does not mean gnu's c compiler) works and is the common compiler for the homebrew platform, you also have access to *compiled* java, pascal, and I think Objective C and Forth, or Fortran, or something that starts with an F. Too lazy to go check. :)

      There are other compilers which can target the platform. Commercial people often use the ARM [arm.com] ADS [arm.com] or SDT [arm.com]. Other tools, like the Metaware [metaware.com] toolchain and the Green Hills [ghs.com] Optimizing Compiler (it's part of the name, not a parroted description, settle down) are commonly used because of their purported performance. Far from being an expert myself, I'll just point you at the Dhrystone [dwelch.com] that David Welch graciously presented to the community.
    • I was planning on trying to develop something on my friends PS2 when he got the Linux kit. But since I actually own a GBA, this is a much more worthy project. More worthy, but more difficult. You'll want a flash cart and linker - the hardware is still the only perfect binary executor, though VBA is pretty impressive. All told, the PS2 Linux kit isn't more expensive, and it's hella more fun in the long run (Tux Racer on a console anyway, doncha know!)
    • At about $70 (Game Boy Advanced, Amazon price [amazon.com]), you can create custom games, ports of other things, etc. This sounds to me like a much more practical thing to purchase to play around with the the PS2, which is in at least the $500 range to start hacking your own stuff for. You're counting just the hardware in one, but the hardware and the mod stuff in the other. $200 (ps2) + $200 (Linux kit) is $400. There was a recent price drop. $70 (AGB) + $40 (USB Flasher) + $15 (Power cable for flasher) + $10 (Parallel cord) + ~$100 (Average flash cart - price varies by size) = $235. Granted, a $175 price difference, but not what you implied. Also, a lot of us already have both. Then, the price of a homebrew kit actually weighs in the other direction, and the AGB is small and limiting enough that unless you really want to, it's a pain of a challenge.
    • It would be interesting to know how many people will create practical, non-game applications. I know there are many non-game attachments, like a TV tuner and digital camera available for the unit. There are already music sequencers, methods of connecting it (realtime!) to a PC for chatter, MIDI sequencers, connections to serve as visualizers for various kinds of data collectors (think forest service), and a host of weird homebrew things that aren't exactly games. I expect quite a few more over time; I'm working on one in a half-assed way right now. Moreover, over time I expect level editors for at least homebrew games, and possibly for commercial games; would you call those applications?
    • This would totally rule.. I'd love to see Nethack for the GB. I'm currently working on a Palm version, and of course, it'll work on Windows CE, but honestly, wouldn't Nethack be an awesome alternative to bejeweled on the bus?Shhh... Shen Mansell [tripod.com] already has Moshpit [tripod.com] put together, and there are three or four people already rumbling about alternatives on the list. Also, note that I'm on alt.games.roguelike.development making an ass of myself all the time... (For those who may be Ccurious, a BooFly is a creature which looks like Will Riker and which doesn't meet me for coffee at E3. Thpppbbt.)
    • I think that companies like Nintendo and Sony and such should sell stipped down dev kits for like, say $50... including software you'd need and maybe a transfer cable. This gets kicked around a lot in the chatrooms and on the dev lists. The consensus seems to be that yeah, it'd be nice, but though a lot of people would really use it for what it was for, a whole lot of people would use it to pirate games, and besides, Big N's licensing fees per cart and hegemony on software support their business model, so they'd be hurting themselves anyway. In conclusion: not bloody likely.
    • No disrespect to the great underground game hackers out there, but I don't think there is much of a risk of an uber fantastic game like Gran Tourismo 3 getting put out. Whereas art and sound resources usually make this true, with time, they actually often do. Take a look into the very mature NES or 2600 development scenes; you'll see things you'd never imagine possible (for instance, someone ported the Z-Machine interpreter Frotz to the GameBoy Advance as GBA Frotz [obsession.se], which seems impressive until you realize that the no$gmb guy, who I think is Martin Korth or something, and who really needs to put his damn name in his bio page, did it for the gameboy(!) in *8* *K* of RAM (far smaller than the real Z-Machine was supposed to be), and it works fine! Linkage [www.work.de]

      Homebrew developers thrive on being told it can't be done. The more you tell them they can't do commercial stuff, the more you're going to see commercial stuff done. That's what got me started. :)
    • Yes, Craig Rothwell is reliable (someone else's post). Also, though Lik-Sang is reliable (that's where I got mine), right now cyustoms is banning the import of these, and so you won't get one even if lik-sang mails it to you. Craig Rothwell currently goes under their radar, but don't try him if you're seeing this post a month or so old - things may have changed (they often do, unfortunately). The best thing to do is to go to the Yahoo! Group and ask; you'll get a lot of replies in 48 hours.
    • I know that the Game Cube can use GBA as controllers. I am not sure what the interface protocol is like, though. Do you think that it might be possible to make custom GBA carts for Cube games, that provide enhancements (cheats, etc) to a game playing on the Cube? No. The GC uses half-size DVD discs which are difficult to burn and which have not yet had their protections cracked or circumvented. Things may change later.
    • So does this mean that with the ROMS that are for the SNES, we could somehow make our own port of say "Secret of Mana" (or some other SNES title) for the GBA? That would be awesome! Though probably not awesome enough for me to spare time to learn this. If you're dedicated. you need to scale a lot of graphics down; the sound hardware is completely different, so the audio stuff will need to be wholly rewritten. There are odd considerations due to the different CPUs. But, yeah, many people have been porting SNES and Genesis games commercially; I don't see why a team of amateurs with lots of time and skill couldn't do the same. It's not easy, though, mind you.

      This is our world now...the world of the electron and the switch, the beauty of the baud. Pre-chewed pieces of pap! And shouldn't be teaching anyway!!@!3T1!! r00l!

      cough Sorry. Old habits die hard.

    • Descent is probably beyond the GBA's capabilities, since it uses arbitrarily-angled perspective-correct textured polygons, which are a fair bit harder to render on a low-end CPU (the GBA has a 16MHz ARM7 CPU).
      You should see some of the stuff that's going on. There are a number of fully textured 3D engines out there, one of which actually uses Descent levels as its examples! (I linked to another in my previous post which uses the quake level 1) A good example is the Raylight [raylight.it] engine, though there are probably a dozen that I've seen (and a few proprietary, one of which I'm about halfway done writing :) )


      None of these engines do true perspective correct texturing. And yes, I'm fairly aware of the work that's going on out there - I am the author of FooN [pocketheaven.com], and have also written a bunch of 3d engines for the GBA. My point was that, while DOOM/GBA is a more-or-less exact replica of the PC version, Descent/GBA is not going to look anywhere near as cool as the original.

      Sorry - should have clarified - the ones I listed are all emulators for the GBA.
      Sorry, but not even remotely close. You didn't even get the popular ones. There's a pretty decent list here [zophar.net], at Zophar's Domain (a pretty good dev site)


      Read. Comprehend. Post.

      "The ones I listed are all emulators for the GBA". Not "These are all the emulators for the GBA".
      In other words, the emulators I listed are all emulators that run on the GBA, and emulate other machines.

      Another thing - you mistakenly state that the GBA has a Z-buffer. WTF? As someone who claims to be developing a 3D engine for the GBA, you must be aware that the GBA most certainly doesn't have a Z buffer. It doesn't even have any polygon rendering hardware.
      • Another thing - you mistakenly state that the GBA has a Z-buffer. WTF? As someone who claims to be developing a 3D engine for the GBA, you must be aware that the GBA most certainly doesn't have a Z buffer. It doesn't even have any polygon rendering hardware.

        (grins) Yet another reason not to post stoned. :) Same reason I didn't really grammar or html check; it's a minor miracle i didn't screw any of those links up.
    • by strags ( 209606 )
      A couple of other things:

      Yes, a linux distro would fit

      Since RAM is limited to 256K(slow) + 32K(fast), it's unlikely you're going to fit a Linux distro that can do anything meaningful. Bear in mind that the ARM7 does not have a MMU, so you'd be limited to uCLinux or something of that ilk.

      Yes. In fact, there's a port of an emulator which runs NES binaries

      It's not a port. It was written from scratch.

I have a very small mind and must live with it. -- E. Dijkstra

Working...