descriptionBare Metal BlackBox 1.7.1 - a BlackBox implementation that works on top of bare x86 PC without any host OS.
ownerDeaDDooMER
last changeThu, 27 Dec 2018 19:53:45 +0000 (22:53 +0300)
readme
Bare Metal BlackBox
--------------------

BlackBox Component Builder ported to bare x86 PC and runs without any host os.

Project goals:
- Make BlackBox to be fully independent environment;
- Make BlackBox easy to port to other os;
- Learn BlackBox internals and possibly port it to new architectures.

Building
-------------------

Requirements:
* GNU/Linux or any other *nix
* BlackBox 1.7.1
* GNU Binutils
* Wine
* Qemu

Firstly copy files from this repo to clean BlackBox 1.7.1 environment.
See [ http://blackboxframework.org/stable/blackbox-1.7.1.zip ].
Than just sequentially execute commanders from Docu486/Build-Tool.odc.

Current state
-------------------
Currently BMBB in early alpha stage. It can boot on hardware that have at least
16 MiB Ram. Kernel implements everything exept coroutine support procedures.
Currently graphics not supported, but implemented simple textmode shell based
on StdInterpreter. Host subsystem mostly not implemented.

You can call Init.WinterWrapUp and enjoy music on you pc speaker. :)

Kernel implements:
* Whole BlackBox runtime
* Serial driver for logging
* VGA Text Mode driver
* Access to BIOS services

Implemented drivers:
* ATA Disks
* PS/2 Keyboard
* PC Speaker
* Serial
* Minix File System (Read Only)
* VESA 2.0+ Graphics driver

Todo:
* Graphics user interface
* Mouse driver
* Packed files
* Writable file system
* Full Host implementation
* System-independent controls
* PCI support
* Networking

Hints
-------------------
Press Pause/Break to interrupt executed command.
shortlog
2018-12-27 DeaDDooMERall input work through SysInput module master
2018-12-26 DeaDDooMERadded ps/2 mouse driver
2018-12-25 DeaDDooMERimplemented buffering in HostPorts, fixed allocation...
2018-12-24 DeaDDooMERAdded HostPorts and HostFonts
2018-12-22 DeaDDooMERTest fonts
2018-12-22 DeaDDooMERAdded VESA driver
2018-12-20 DeaDDooMERimplemented int86, so we can call bios services from...
2018-12-20 DeaDDooMERAdded page allocation
2018-12-18 DeaDDooMERDrivers moved to Sys/Drv subsystems
2018-09-25 DeaDDooMERLinkerBin now generate code that initialize section...
2018-09-25 DeaDDooMERAdded HostConsole
2018-09-25 DeaDDooMERUpdate readme
2018-09-25 DeaDDooMERCrosscompiler tools moved to subsystem Dev486
2018-09-13 DeaDDooMERAdded CommV24 implementation (not tested)
2018-08-21 DeaDDooMERFix loop on real hardware, but seems disk is dadly...
2018-08-20 DeaDDooMERFix memory manager init, so now it works on more hardwa...
...
heads
3 weeks ago master
5 months ago minix_rw