DEADSOFTWARE

 
descriptionBare Metal BlackBox 1.7.1 - a BlackBox implementation that works on top of bare x86 PC without any host OS.
ownerDeaDDooMER
last changeWed, 19 Aug 2020 20:21:57 +0000 (23:21 +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
2020-08-19 DeaDDooMERKernel: initialize fpu only if it exists master
2020-08-09 DeaDDooMERKernel: do not use fpu ops in Kernel
2020-08-09 DeaDDooMERInit: disable mouse driver
2020-08-09 DeaDDooMERInit: use HostShell if no one graphics video mode
2020-08-09 DeaDDooMERDrvVesa: do not trap if not possible to get bios font
2020-08-09 DeaDDooMERboot0: generate memory map for first 1Mb with older...
2020-08-05 DeaDDooMERboot0: add alternative method to get memory size for...
2018-12-27 DeaDDooMERall input work through SysInput module
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
...
heads
3 years ago master
5 years ago minix_rw