pret / pokered

Disassembly of Pokémon Red/Blue
4.02k stars 991 forks source link

Programming language #140

Closed KKSzymanowski closed 8 years ago

KKSzymanowski commented 8 years ago

Was Pokemon Red originally written in Assmbly?

Why not C? Was it because of some hardware limitations? Was it to optimize it as much as possible in terms of performance and required space?

Sanqui commented 8 years ago

A C compiler for the Game Boy was likely not even available by the time Pokémon Red was made; it was standard to code games in assembly.

C was used for some very late Game Boy Color titles, but even there you usually have hand-optimized assembly sections, as compiled C code tends to be an order of magnitude slower and larger than equivalent hand-coded assembly.

yenatch commented 8 years ago

That said, sdcc has come a long way since 2000. See https://github.com/rotmoset/gbdk-n.

LIJI32 commented 8 years ago

The ASM code itself is too inconsistent to be generate by a compiler, too.

KKSzymanowski commented 8 years ago

Thanks. I asked because when i first touched assembly it was some academic exercise with image processing(Gouraud shading I think) and it was so much pain to write, it makes me wonder how can you develop whole game. I suppose they didn't really have a choice back in the 90'.