Well the C compiler I use for gba uses standard C. Thanks FwyWice for the clarification on the OS thing as far as ps and Nintendo(not sure which one but i'd venture to say n64 and on). I have done a little dreamcast programming and it does have an OS. It uses a stripped down version of Windows CE.

As for the machine code thing I am not fluent enough with the machine code that gbc or gba understands to write code using a hex editor. But to answer face_master's question, such tools do exist. In fact one of the first gba compilers I used was based on GCC. But to be honest who wants to write their own language (other than a newbie programmer)?