Partial implementations

These implementations are all incomplete in some form or another. They’re provided as a reference and a starting point for anyone implementing a Bedrock system from scratch using one of these languages or similar.

bedrock-c++

A minimal Bedrock emulator written in C++17. It uses a microcoded processor core, making it small but inefficient. No further work is planned.

bedrock-c++.zip

bedrock-dos

A miminal Bedrock emulator written in Turbo Pascal version 4. The current version uses a microcoded processor core, which makes it significantly less efficient than it could be, but with the benefit of being more readable. It can load and run a program from the file system, but only implements ports 0x86 and 0x87 for text output.

The plan is to continue developing it as a viable and performant emulator for DOS computers. It’s currently very inefficient, so the best path forward will probably be to switch to a lower level language (Turbo Pascal was chosen in lieu of a working C compiler) and to replace the processor core with a hand-optimised implementation.

I don’t have any DOS system that I want to use this on, so this is a low priority.

BEDROCK.PAS

bedrock-matlab

A minimal Bedrock emulator written in MATLAB. You probably don’t want to use this if you have a choice, it’s quite slow. MATLAB has many strengths, systems programming is not one of them. No further work is planned.

bedrock-matlab.zip