If you know what to do, it takes one evening to add the gba as new target to the compiler. FPC uses the GNU Binutils to assemble and link, so it's mainly telling the compiler which asm and linker to use.

The next step is to make an rtl, another 1-2 evenings I guess.

Then 3-4 days debugging.

Now the hard part comes: maintain the port, i.e. handle bug reports, adapt it to compiler/rtl changes etc. This is little work, but requires permenant interest and it's the reason why ports like BeOS, NetBSD or OpenBSD died. Nobody maintained them.

However, this doesn't address the thumb problem, I don't know if the gdb needs thumb code or not.