1
0
tetros/README.md
Mark cf60d6734a
All checks were successful
CI / Typos (push) Successful in 13s
CI / Clippy (push) Successful in 32s
CI / Build (push) Successful in 1m15s
Comments
2025-03-04 19:41:22 -08:00

1.4 KiB

TetrOS: bare-metal tetris

Features

  • Compiles to a standalone disk image
  • Written from scratch using only Nasm and Rust
  • Custom BIOS bootloader
  • 32-bit x86 OS
  • Detailed comments. Read the makefile, then start in ./bios/main.asm.

Non-Features

  • Never tested on real hardware
  • Minimal gameplay and graphics. These features aren't hard to implement, but also don't present any interesting challenges. I have other things to do.

🚀 Building and Running

  • All scripts are in the makefile.
  • To build and run, use make qemu.
    • Dependencies: nasm, cargo, GNU binutils, qemu
    • This will NOT work on MacOS. BSD ld does not work like GNU ld.
  • Alternatively, a compiled disk image for the latest commit is here. This is the same file produced by make.
    • Download it and run qemu-system-i386 -d cpu_reset -no-reboot -smp 1 -m 2048 -machine q35 -net none -serial stdio -fda "disk.img"

📜 Resources

Used directly:

Useful background knowledge: