Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TouchBarDoom

DOOM running live inside the Touch Bar of a MacBook Pro.

Setup

  1. ./build.sh
  2. ./run.sh

Look for the 🐀 icon in your menu bar, not the Touch Bar. The shareware doom1.wad is already bundled in assets/wads/.

Usage

  • Left-click 🐀: DOOM takes over the Touch Bar + keyboard
  • Switch to any other app: instantly reverts to normal (DOOM keeps running in the background)
  • Right-click 🐀: Settings / Controls / Debug Log / Quit

Controls

Arrows move/turn · Space fires · E uses (doors/switches) · Return confirms · Escape = menu

Structure

  • src/doom/ — vendored id Software linuxdoom-1.10 source, ported off X11 onto an in-memory framebuffer (tb_bridge.c), plus a few 64-bit portability fixes
  • src/touchbar/ — Swift/AppKit host that renders the framebuffer to the physical Touch Bar via the private presentSystemModalTouchBar API
  • build.sh / run.sh — plain clang/swiftc + ad-hoc codesign

Known limitations

Relies on undocumented AppKit APIs that Apple could change. Only tested on a 13" MacBook Pro (M2).

Legal

DOOM engine source: GPLv2, see LICENSE. doom1.wad is id Software's freely-distributable shareware data.

About

Run the original Doom on the MacOS touch bar!

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages