TI-NSPIRE Linux In-Place Bootloader
C Assembly Objective-C
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
LICENSE
Makefile
README.md
atag.c
atag.h
atag_tags.h
debug.c
debug.h
main.c
mmu.S
mmu.h

README.md

TI-NSPIRE Linux In-Place Bootloader

This bootloader is deprecated. Please use version 2 of this bootloader instead

Boots a Linux kernel from inside the CAS software. For CX only right now (RAM sizes and machine ID are hardcoded).

Usage

Copy Linux kernel to /documents/linux/zImage.tns then run the program.

Developer's notes

We want to behave well while we're still relying on the host system (i.e. when reading from files or allocating memory).

After the ramdisk, kernel and ATAGs have all been setup and loaded into memory, we can start messing about. At this point, we must be completely self sustained and must not use any function exported by os.h or else we will crash. We also need to be careful that any operation we do will not overwrite ourselves.

Since printf is buffered and relys on the host system, printk is provided for printing debugging messages. It should be safe to call any time.

Brokenness

Ramdisk loading is broken.