Spatial computingIn development

Classic 128K

A spatial-computing system that brings six classic Macintosh models into Apple Vision Pro through real-time 68k emulation.

Role
Concept, product design, architecture, Swift/RealityKit engineering and emulator integration
Engagement
In development

The central challenge

Make historically accurate desktop-computer emulation feel natural inside a modern immersive 3D environment.

Constraints

  • Real-time emulator output crossing Rust, C and Swift boundaries
  • Six hardware profiles with different ROM, memory and storage rules
  • Performance-sensitive image processing and spatial rendering
  • A convincing interaction model for physical and virtual input

Scope

  • Product design
  • visionOS development
  • Emulator integration
  • 3D and interaction engineering
  • Technical architecture

Approved outcomes

6classic Macintosh models supported
<24hfor selected functional technical proofs

The challenge

Classic Macintosh software was designed for a physical machine with a tiny monochrome display, a keyboard and a mouse. Apple Vision Pro offers an entirely different spatial medium. The project had to preserve the machine’s character while making its controls, files and display behave coherently in an immersive environment.

One product across six machines

Classic 128K supports the Macintosh 128K, 512K, 512Ke, Plus, SE and Classic. Each model has distinct memory, ROM, floppy and hard-disk capabilities. Those differences are represented as explicit machine definitions rather than scattered conditional logic.

The result is a system that can change machines cleanly, validate assets accurately and adapt the interface to the selected hardware.

A bridge from Rust to RealityKit

The Snow emulator runs the 68k hardware model in Rust. A C interface and Swift wrapper expose its lifecycle, display and input to the app. An actor-based frame pipeline expands and processes the emulator’s monochrome framebuffer off the main thread before it is presented on the spatial model.

Protocol-oriented boundaries isolate the emulator, asset management and rendering layers. That makes a technically unusual stack testable and maintainable.

Designed as a finished product

The interface treats the computer as a product in space, with material detail, readable setup states, model-specific guidance and precise error messages. The technology only works when the experience feels complete.

Need help with a complex system?

Tell us what the product or system needs to achieve, where the main risks are, and what has made it difficult.