FAQ - Frequently Asked Questions

Q: I made a demo/game using HEL, do you want it?
A: Of course!


Q: I see a lot ATTR_EWRAM when you define variables, for what is it good for?
A: By default variables go into internal work RAM (IWRAM), which is limited to 32KB only. With ATTR_EWRAM you can store variables in external work RAM (EWRAM) instead, which is 256KB large.

Q: Can I change the attributes of an object clone, for example change the palette without affecting its "owner object"?
A: Yes you can. The object clone is just pointing to the same graphic slot in Vram as the object where it was cloned from. You can change its palette, position, mode etc!


Q: When I use the hel_TileSetMapTile function, it always overwrites a few tiles in the upper left area of the screen.
A: Sounds like you didn't pass enough NumTilesRam to hel_TileCreate.


Q: I use the Fixed Point macros functions, when I look at the generated assembler files, I see a lot of ldrb and orr opcodes. Why? It should be just a ldr though!
A: This probably occurs if you embedded them in a struct which uses the ATTR_PACKED attribute. Replace ATTR_PACKED with ATTR_ALIGNED(4) and the compiler produces less and faster code!


Q: I have a lot of text tables in my game and have even everything declared as const, but it is still not located in ROM, why?
A: Replace "const char *myTextTable[]" with "const char *const myTextTable[]" and everything is fine.


Q: HEL_DEBUG_MSG does not output anything, what's wrong?
A: You probably forgot to define HEL_DEBUG or HEL_CHECKED.


Q: How you convert all the sample graphics?
A: The graphic conversions are all done through make. Open the makefile of a sample project and look for "gfx:" target. That's the graphic conversion command. If you want to execute it, open a HAM Shell ("External Tools | Command Prompt" in VisualHAM) and enter: make gfx


Q: In one of your sample projects I saw you use GBACrusherCL.exe, where can I get it?
A: The program is called GBA Crusher and it's written by John Sensebe. Use google.com or have a look at the gbadev.org forum.


Q: Can I check how many memory my game uses?
A: You can use the following command to display the sizes of sections inside binary files (*.elf;*.a;*.o;etc): ham/gcc-arm/bin/arm-thumb-elf-size.exe -A game.elf


Q: Are there any examples for HEL?
A: Yes, there are! The HEL zip archive you probably just downloaded contains them, just take a look at it. Hint: The folder is called demos


Q: My project needs so long to compile, what can I do?
A: See Improving compile time


Q: Why Window Functions? They are also covered by HAM!
A: Window Functions in HEL are implemented because:


Q: Why do you have most of the Object functions implemented which are also available in HAM?
A: The object functions in HAM were too slow for the game I worked on, therefore I wrote an own object manager which is a lot faster.


Q: When I use the release library, the compiler complains it cannot find the neccessary functions or symbols.
A: Please see Library Notes


Q: I want to use background-wrapping with my map, where can I enable it?
A: See hel_MapSetBounds



Generated on Mon Apr 9 16:39:00 2007 for HEL Library by  doxygen 1.5.1