./build.sh genera la imagen /img/x64_arq.img (entre otras).
./run.sh corre en qemu la imagen /img/x64_arq.qcow2 (puede usar argumento "-c cant_cores" default = 1)
El repositorio tiene en /extern/kernel.bin un payload de SO para probar rapidamente, el cual usa cuando se hace el armado.
Copiar la imagen raw a un pendrive usando dd.
sudo dd if=./img/x64_arq.img of=</dev/sda> status=progress
Simple Assembly UEFI Application - Can't Exit Boot Services El el ultimo posteo (pagina 1) tiene codigo ejemplo en asm.
UEFI bootloader para extraer ideas Va directo a usar GOP, no revisa EDID.
Implementacion C++ con UEFI boot services Ver /boot/src/boot.cpp
Pagina oficial de la especificacion UEFI
EFI Specification Version 1.10
Repositorio EDKII con los protocolos
Buen resumen de todo lo necesario para uso de UEFI
Introduction to UEFI Util lectura para introducirse en el tema.
VESA osdev.org Informacion VESA en general: breve historia, vbe_info_structure, vbe_mode_info_structure, codigo asm para una funcion vbe_set_mode.
VESA delorie.com Informacion de bajo nivel para setear VESA.
VESA kernel.org Informacion especifica de Linux acerca de VESA.
PE format microsoft.com Encabezado y sus partes en detalle.
PE format osdev.org Menos detalle que el anterior, pero buenas referencias al fondo de la pagina. Algunos links rotos.
shell-storm.org Paginacion: linda tabla que indica flags y modos.
x86asm.net Info en general de caracteristicas Intel.
ftp.gnu.org Some reference for ld scripts.
aeb.win.tue.nl Scancode different sets reference.
basicinputoutput.com Me fui un poco por las ramas, pero linda tabla con comandos varios para mouse, led, teclado. Tiene otros posteos interesantes, dejo la referencia porque luego quiero darle una mirada a otros posteos.
i386-stub.c ftp.gnu.org Para driver debug en pc fisica. i386-stub.c