[rb-general] A major milestone in bootstrapping
Orians, Jeremiah (DTMB)
OriansJ at michigan.gov
Mon Aug 27 14:19:09 CEST 2018
> Interesting... I'm looking at
> https://github.com/oriansj/M2-Planet/blob/master/seed.M1
> How was it written? It seems like a monumental task to write all that and keep enough context in one's head! > Then again, I have never written assembly before...
If you'll notice https://github.com/oriansj/M2-Planet/blob/master/seed.M1#L2
It explicitly says it was generated from stage0 https://savannah.nongnu.org/projects/stage0/
Specifically cc_x86 http://git.savannah.nongnu.org/cgit/stage0.git/tree/stage2/cc_x86.s
Which was built by M0: http://git.savannah.nongnu.org/cgit/stage0.git/tree/stage1/M0-macro.hex2
Which was built by hex2: http://git.savannah.nongnu.org/cgit/stage0.git/tree/stage1/stage1_assembler-2.hex1
Which was built by hex1: http://git.savannah.nongnu.org/cgit/stage0.git/tree/stage1/stage1_assembler-1.hex0
Which was built by hex0: http://git.savannah.nongnu.org/cgit/stage0.git/tree/stage1/stage1_assembler-0.hex0
Which was the 250byte seed used
Well the work started back in 2016 with http://git.savannah.nongnu.org/cgit/stage0.git/tree/Linux%20Bootstrap/hex0.s
and http://git.savannah.nongnu.org/cgit/stage0.git/tree/Linux%20Bootstrap/hex0.hex
It was written one function at a time, with the arguments passed in registers and careful preservation of everything passed.
- Jeremiah Orians
More information about the rb-general
mailing list