Add README.md for loader on i386

This commit adds a README.md file for the loader partition in the i386
architecture version. The README contains basic information about what
the loader partition has to do and to some degree on how it should be
accomplishing those tasks.

It is just general information which can be useful to have for looking
information up after some time.
This commit is contained in:
Eric-Paul Ickhorn 2024-06-16 23:09:31 +02:00
parent 3a2518ca8f
commit 776da2f85a
Signed by: epickh
GPG Key ID: 1358818BAA38B104
1 changed files with 37 additions and 0 deletions

37
i386/loader/README.md Executable file
View File

@ -0,0 +1,37 @@
# ``loader`` | Nightloader Code Partition
The partition of which the creation code is contained in this
directory isn't formatted in any particular way; the partition
which is created using this source code contains the instructions
and data for giving control over to the next stage. More on
the features of the *loader* can be found [here](#features)
## Features
The loader partition has to perform the following tasks:
1. Perform the general setup
- Setup a bigger stack
- Enable the A20 address line
- Enter 32-bit mode (Protected Mode)
- Setup Paging
2. Enable the built-in drivers
3. Load additional addons
- Find partitions accessible with the existing drivers
- Check the path ``/bin/nightloader/`` for addons
- Load and start those addons
- If any more filesystem drivers were found,
repeat the last three steps
4. Choose the appropriate action of the three following ones:
1. If no operating system was found,
- Send an error to any output
- Halt execution after 30 seconds
2. If an operating system was found and there is no
addon to take control
- Display all options onto the screen and let the
user choose which operating system to start
3. If an operating system was found and there is an
addon which takes the control
- Give the control to that addon and let it handle
the task of finding out what to do
5. Execute the action chosen by the user in the last step