Skip to content

anthongretter/bMb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bare-Metal Music Box (bMb)

A simple kernel for 32-bit x86 that plays Twinkle-Twinkle, how cool is that?

I built this while learning more about bare-metal programming while following the Bare Bones guide. It uses the Programmable Interval Timer (PIT) chip with Mode 3 (Square Wave) to synth the sound waves. In order to compile you'll need to have a cross compiler for i686, and then specify the location of both the compiler per say and the assembler in the makefile, I used gcc-15.2.0 and binutils-2.45. You can run directly via QEMU with make emulation, or generate a GRUB ISO image make image.

Future Work

  • Basic terminal output capabilities
  • Basic interface to play frequencies using PIT
  • Switch busy waiting of notes to hardware interruptions
  • Keyboard piano mode
  • MIDI support?

About

A simple kernel for 32-bit x86 that plays Twinkle-Twinkle

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors