A set of minimal dependency bootstrap binaries
Go to file
Jeremiah Orians 1b545f6806
Added a High level prototype for speeding up the process of manually calculating hex addresses
2016-09-03 19:43:31 -04:00
High_level_prototypes Added a High level prototype for speeding up the process of manually calculating hex addresses 2016-09-03 19:43:31 -04:00
Library function prototypes Initial trivial prototype of malloc. Need to figure out standard stack and heap space blocks 2016-08-14 18:22:39 -04:00
Linux Bootstrap Organized files and expanded notes 2016-05-21 20:12:34 -04:00
img Experimenting with org-mode images 2016-07-03 22:57:12 -04:00
public Completed initial prototype supporting Javascript for Web Assembly IDE 2016-07-20 20:34:01 -04:00
stage0 Prototyping an improvement to The Hex monitor's user interface for more primative hardware 2016-08-24 19:44:54 -04:00
stage1 Translated improvement into hex0 version of stage1_assembler-2 2016-09-03 19:20:16 -04:00
x86 Minor reorganization 2016-06-05 14:46:30 -04:00
.gitignore Started to use the file named rom as the bootstrap binary 2016-08-20 13:30:03 -04:00
Checksums.org Fixed names in Checksums file, added executed instructions and fixed makefile bug 2016-08-24 19:24:28 -04:00
ISA_HEX_Map.org Incorporated Additional Push and Pop instructions 2016-08-12 01:11:08 -04:00
Knight.py Added a new function to the IDE to shorten debugging time 2016-08-20 20:36:56 -04:00
LICENSE Added README and LICENSE 2016-05-18 18:52:18 -04:00
README Improved documentation to reflect sytle information obtained. 2016-06-12 18:25:38 -04:00
User_Interface.py Added a new function to the IDE to shorten debugging time 2016-08-20 20:36:56 -04:00
Web Interface prototype Generator.py Made Static development prototype into a wrapper around generic library so that web program can be more easily tested 2016-07-20 21:27:28 -04:00
dynamic_execution_trace.c Added dynamic tracing capability to vm 2016-09-03 17:35:06 -04:00
makefile Added dynamic tracing capability to vm 2016-09-03 17:35:06 -04:00
notes.org Moved reference to proper file 2016-07-02 13:14:18 -04:00
tty.c Enable raw mode access for VM interactions 2016-08-21 19:23:45 -04:00
vm.c Refactored out common code 2016-08-08 20:10:46 -04:00
vm.h Incorporated Additional Push and Pop instructions 2016-08-12 01:11:08 -04:00
vm_decode.c Added dynamic tracing capability to vm 2016-09-03 17:35:06 -04:00
vm_instructions.c Fixed minor user interaction bug in Development mode and fixed the continued execution of a Halted vm in the IDE 2016-08-24 19:26:45 -04:00
wrapper.c Fixed minor user interaction bug in Development mode and fixed the continued execution of a Halted vm in the IDE 2016-08-24 19:26:45 -04:00

README

This is a set of manually created hex programs in a Cthulhu Path to madness fashion.
Which only have the goal of creating a bootstrapping path to a C compiler capable of
Compiling GCC, with only the explicit requirement of a single 1 KByte binary or less.

Additionally, all code must be able to be understood by 70% of the population of programmers.
If the code can not be understood by that volume, it needs to be altered until it satifies the above requirement.

WE DON'T WANT YOUR CLEVER CODE. Only stupidly simple code will be accepted.
The Madness must be satisfied and only with the Blood ritual of code we perform here.

This repo contains a few of my false start pieces that may be of interest to people who
want to independently create the root binary, I welcome all bug fixes and code that aids
in the above stated goal.

I'll be adding more code and documentation as I build pieces.
ALL code in this REPO is under the GPLv3 or Later.