Commit Graph

113 Commits

Author SHA1 Message Date
Berkus Decker d453d60e19 Bump qemu-exit to version 1.0 2020-10-07 13:00:30 +03:00
Berkus Decker 041c4add0d Bump r0 to version 1.0 2020-10-07 13:00:28 +03:00
Berkus Decker 4cc5305dc8 Prepare scripts for windows CI runner 2020-10-06 19:27:50 +03:00
Berkus Decker af1cc83530 Add testing framework
Based on os.phil-opp.com ideas it includes running test framework in
qemu semihosting mode so that tests can indicate pass or fail to calling
process.

GitHub Actions are configured to run these tests and validate acceptance.

Add test-runner target to perform tests in qemu.

Add -nographic for qemu running tests.

Drop serial for qemu tests as well.
2020-10-06 19:27:50 +03:00
Berkus Decker 9fd9612b77 Fix entry point to always start a binary
Keep vectors table.
Do not keep boot data if not referenced.
2020-09-21 04:01:21 +03:00
Berkus Decker cd16b733e9 Add non-allocating formatted write implementation 2020-09-21 04:01:18 +03:00
Berkus Decker f485629fb6 Add boot code for RPi and QEMU 2020-09-21 04:01:17 +03:00
Berkus Decker 668296b8e0 Fix clippy warning 2020-08-10 00:34:49 +03:00
Berkus Decker a4a3289712 Add GH Actions build workflow 2020-08-10 00:34:49 +03:00
Berkus Decker 57e4b81e1c Implement power-efficient sleep after boot-up
* arch-based crates, inspired by Redox
* Do not burn cpu uselessly.
* Start using cortex-a registers.
* Important: initialise stack pointer!
2020-08-09 22:00:36 +03:00
Berkus Decker 57fc6e5aa5 Add QEMU configuration 2020-08-09 19:40:57 +03:00
Berkus Decker cb814b353b Add Raspberry Pi target configuration
* Use rlibc for memset/memcpy
* Create linker script for raspberry pi 3
* Add aarch64 target file inspired by Robigalia
* Force bitcode embedding for LTO
2020-08-09 19:35:09 +03:00
Berkus Decker a57833d2b1 Add basic structure
* Add default License
* Keep a changelog
* Add Code of Conduct
* Build tests as optimized for size ('s')
  * Otherwise boot code goes bonkers in qemu
2020-08-09 19:33:34 +03:00