gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

Coding > Embedded C++?

#8479 - Hellraisr - Fri Jul 11, 2003 8:04 pm

Would developing on the GBA be considered 'embedded C++' or 'embedded development' (or no to both?)

Thanks!

#8480 - niltsair - Fri Jul 11, 2003 8:19 pm

Thinking about what to write on your resume? ;-)

I'd say embedded development. C++ is just a language, not a type of dev.

#8483 - Hellraisr - Fri Jul 11, 2003 9:10 pm

Actually, I'm just starting with game development, and there is a company around here that I could potentially get a job at, but it does require embedded C++/Assembly.

So I was thinking that if I get some skills in that through programming on the GBA, I could get a job there. This is good though because I was wondering how to get these kinds of skills.

Thank you for your help!

#8511 - Cyberman - Sat Jul 12, 2003 5:03 pm

I'm sorry it's only a partial thing really.

Basically if you program for the GBA you are programing for a specific system. Think of it like prgraming for a PC.

Embeded systems cover everything from DVD players to your thermostat. So consider this before slaping the title on what you have done. I've even programed a HVAC system in C++ to a motor analyzer. You have a wide variety of things that are considered embeded systems, but really it means a small computer embeded into a system, hence embeded system programing.

I hope that helps. :)

Cyb

#8615 - madcat23 - Wed Jul 16, 2003 4:53 pm

You could call it embedded, but it isn't really the same as a microcontroller. You should probally be a bit more specific about what you've done, and if you want to get some experiance working with a "real" embedded system, look at a cheap microcontroller. You can get a Z80 kit from Zilog for around $50 (I don't know if it includes a C compiler or not though), or work with a PIC or Cypress PSoC. You can get programmers and an assembler for both for pretty cheap, although a C compiler for either will cost over $100.
For what it's worth, assembly programming on the PSoC is pretty easy.

#8623 - ampz - Wed Jul 16, 2003 7:33 pm

AVR's are easy to work with and there is a free C compiler.

#8626 - Cyberman - Wed Jul 16, 2003 8:05 pm

ampz wrote:
AVR's are easy to work with and there is a free C compiler.


Yes.. PICs AVR's you name it, but specifically he was speaking of C++ .. which in an embeded system is a whole new challenge (I would say I don't want to talk about it but it's really strange the problems you get).

C++ in an embeded system requires either special pragma's for forcing an order for instantiation of static objects or using static pointers and force a fixed order of instantiation.
This is due from the problem of chicken and egg. Let's say the chicen requires two legs two wings and a beak. The members need to be created before the chicken can walk. This isn't so bad because the chicken contains references to it's parts.

A real embeded system is different. An example would be the mundane serial port. Let's say you have a remote terminal attached to said system. And the terminal has a particular protocol and interface. The terminal cannot be created before the serial object exists that it uses. Lets say you have a display context that uses the terminal interface as well. Ok.. as you can see it can be a real.. challenge to get everything ordered correctly :)

Fortunately many extensions exist in C++ to thwart this problem, but not when I had the fun of writting a HVAC system controler using C++ :)

Lots of Microcontrolers out there as well, including ARM7TDMI compatibles from ATMEL. Many support C++. I personal LIKE the arm thumb better than a lot of the others but that's my preference I suppose ;)

Anyhow back to what I was originally saying, programing for the GBA is not exactly an embeded system, it's a very SPECIFIC system and that's about all you can say for it.

Cyb