This is a set of items that I would like to do or have some day or the other. If you think some items are missing, tell me. If you want to work on some of them, feel free to do what you want and send me an e-mail.

1. Binutils

  • Better multi-target board support
    Have a database of target boards with their memory description to help when linking.
Done:
  • Support 68HC12 page addressing
  • Linker relaxation
    Get rid of the .page0 prefix ('*') and translate the instruction into a .page0 access at link time depending on the location of that symbol.
  • Linker gc section
    Garbage collection of unused sections (unused functions).

2. GCC

  • GNAT port
    Port the GNAT Ada compiler (I was able to build gcc 3.1 with Ada and compile a simple Ada program, so it looks promising).
  • More optimizations
  • Generate brclr instructions
  • Rewrite 32-bit divisions to use fdiv, idiv and ediv.
Done:
  • Support 68HC12 page addressing
    Note:The -mlong-calls option that generates call and rtc is implemented in the GCC CVS main repository.
  • Generate dbcc, ibcc instructions for 68HC12
  • Generate code that does not imply soft registers in .page0
  • Update the documentation
  • Fix the problems to have a successful validation.
  • Generate code for 68HC12

3. GDB and 68HC11/68HC12 Simulator

  • Support for gdbserver
  • Simulation of more 68HC11 devices (analog outputs, input/outputs, ...)
  • Simulation of external devices (flash, LCD, keyboard, sensors, ...)
  • Read a device layout file so that a user can specify the configuration of the board (ram, rom, eeprom, flash ...).
  • Simulation of 68HC12 devices
  • Port or fix Gdb's serial line for native Windows host.
Done:
  • Support 68HC12 page addressing
    Note: The extended memory addressing is implemented in the GDB CVS repository.
  • Gdb patch is applicable to Insight 5.0
  • Support for 68HC12
  • Support for Buffalo monitor
  • Support for DBug monitor
  • Fix backtrace command.
  • Fix call command.

4. Newlib

  • Get a smaller C library
  • Get more board support package primitives

5. Documentation

  • Document how to use all this stuff.
    In progress: We now have a starting Tutorial guide.
  • FAQ on using GCC for 68HC11.
Done:
  • Document the specific options for GCC.

6. Misc

Done: