Skip to content

wxwisiasdf/flatboot

Repository files navigation

Flatboot is a simple bootloader, it will load your kernel and you'll be happy
very simple!, no complexity needed!

================================================================================
Overview
================================================================================
Flatboot is a bootloader meant to be able to boot stivale and stivale2 kernals
in a mainframe, while keeping it very user-friendly and familiar to people who
OSDev on PCs.

================================================================================
Compiling
================================================================================
Flatboot uses autotools as the main build system generator because it's very
based

In order to generate the configuration scripts you only need to run:
"autoreconf"

Additionally, automake might complain about missing files, simply do:
"automake --add-missing"

Use "./configure --host=s390-linux --target=s390-linux" in order to configure
for a mvs-compatible target.

You'll need make, hercules and dasd-utils (they come with hercules by default).

In order to compile the bootloader just do:
"./compile.sh"

To build a "test" system use:
"./test.sh"

================================================================================
Telnet terminal support (using BSC lines)
================================================================================
The telnet terminal can be used by creating a 2703 device which allows read and
write, this can be done using the following exaple hercules configuration:

0009 2703 lport=3200 rhost=example.com rport=22 dial=in

rhost and rport are used to denote the ip address of the telnet server where
rport denotes the port of telnet

the terminal will be in ebcdic and not in ascii - actually, the entire kernel
and bootloader use ebcdic

================================================================================
Terminal 3270
================================================================================
Read the 3270 datastream protocol because this is like a vt100 terminal. and yes
it uses escape sequences, use this:

x3270 -model 3270 -port 3270 127.0.0.1

To connect to the terminal via x3270 on your local machine.