Minimal semihosted ARM Cortex-M "Hello World"
The following is an extremely minimal, semihosted "Hello World" D program for ARM Cortex-M processors.
Goals
- Demonstrate that the D runtime and D standard library are not mandatory
- Demonstrate that linking to C code is not necessary
- Demonstrate that all required assembly code can be done within D
- Verify ARM Cortex-M toolchain (compiler-->linker-->debugger)
- Provide a starting point, with a low barrier to entry, for developers to begin testing the toolchain, porting the D runtime and libraries to the ARM Cortex-M platform, and programming their ARM Cortex-M software in D
Tools
- (host computer) Arch Linux 64-bit
- (compiler) LDC with ARM backend
- (linker & debugger) GNU Tools for GNU Tools for ARM Embedded Processors 4.7-2013-q3
- (GDB server) OpenOCD 0.7.0
- (JTAG emulator) JTAG-lock-pick Tiny 2