maccer macro preprocessor.
__REG_XXXX special variables. The optimizer automatically transforms LD into LDH when necessary.
cgb.s library.
get_sprite_tile() and get_sprite_prop().
banks.c example.
-Wl-yp0x146=0x03 flag.
STOP instruction.
wait_vbl() function.
set_win_data() function so that it is consistent with other functions. This change requires adding 0x80 to the first parameter of this function call in existing programs.
cls() function to the standard output library (reported by Helmut Schoettner).
-int8 and -int16) to specify the size of the integer type (default is 8 bits, which produces shorter and faster code).
-Wl-yp0x143=0x80).
reset() function to reset the GB (restart the program's execution).
_cpu that indicated the CPU of the machine on which the code is running (GB, Pocket GB, Color GB).
memset, malloc, calloc, and free are implemented).
set_bkg_tiles.
paint.c) illustrating this library.
LD (HLI),A
LD (HLD),A
LD A,(HLI)
LD A,(HLD)
ADD SP,offset
LDHL SP,offset
gb-dtmf example so that it compiles on DOS.
comm.c example which illustrates how to use communication routines.
-Wl-yn="XXX" flag (where X is the name of the program, which can contain up to 16 characters in quotes, including spaces; on Unix, depending on your shell, you must add backslashes before quotes and spaces like in -Wl-yn=\"My\ Game\").
memcpy() and hiramcpy() functions). The compiler now automatically generates two symbol for the start and the end of each function, named start_X and end_X (where X is the name of the function). This enables to calculate the length of a function when copying it to RAM.
ram_fn.c example which illustrates how to copy functions to RAM and HIRAM.
irq.c example which illustrates how to install interrupt handlers.
switch_ram_bank() function). The switch_bank() function has been renamed to switch_rom_bank(). The banks.c example has been updated. The flags for generating multiple bank images have been modified.
-Wl-g.OAM=# flag (where # is the address of the sprite ram). The sprite ram address must begin at an address multiple of 0x100, and is 0xA0 bytes long.
int comparison.
delay() function so that it takes a long parameter. It can be used to wait between 1 and 65536 milliseconds (0 = 65536). The pause() function has been removed.
galaxy.c) has been added. It is the C version of the space.s example. sprite.c has been removed.
banks example).
-Wl-g.STACK=# flag (where # is the address of the stack pointer).
show_bkg()) have been changed into macros (e.g. SHOW_BKG).
delay() function waits exactly 1 millisecond, and the pause() waits 256 milliseconds.
lib/gb.lib (lib\gb.lib on DOS) text file contains a list of modules in which to look for undefined symbols. The linker will parse this file, and link your code with the required modules only. The stdio library has been split in several object files, and only necessary modules will be added to your code, thus reducing its size.
-Wo-lccdir=GBDK-DIR flag when invoking lcc.
\GBDK-2.0 directory on DOS machines.
int is 8 bits.
long is 16 bits.