Files
low-level-programming/README.md

23 lines
966 B
Markdown
Raw Normal View History

2022-01-29 21:45:42 -08:00
# Bare metal programming sandbox
This repo is a sandbox for experimenting with bare metal code and other
low-level programming concerns.
2022-01-29 21:58:19 -08:00
This repo contains the following executables:
* `gamarjoba_munde` - x86-64 linux binary that prints the text "Gamarjoba, Munde"
2022-01-29 22:08:03 -08:00
* `baremetal_gamarjoba` - bare-metal x86 program run with QEMU
2022-01-29 22:39:59 -08:00
* `keyboard` - reads keycode information from keyboard. Also uses both Rust and C includes.
* `lightshow` - NOTE: Broken - an attempt at a substantial #[no_core] rust object file, currently crashes rustc
2022-01-29 23:28:31 -08:00
* `rust_kernel` - me following the 2015 version of the Phil Opp rust bare metal tutorial. Kept around for posterity
2022-01-29 21:45:42 -08:00
# Useful links
The following projects are inspirational:
* https://github.com/programble/bare-metal-tetris
* http://0xax.blogspot.com/2014/09/say-hello-to-x64-assembly-part-3.html
## x86 instruction set reference:
* http://x86.renejeschke.de/
* http://www.cs.virginia.edu/~evans/cs216/guides/x86.html#registers