A professional-grade Android-style boot loader for x86 systems, written in pure assembly language. This implementation provides a complete boot environment with graphical interface, multi-OS support, and hardware initialization capabilities.
- Android-style Boot Interface - Faithful recreation of Android's bootloader UI
- Multi-OS Support - Boot Android, Linux, or other systems
- Hardware Initialization - Full hardware detection and setup
- Graphics Support - VESA graphics mode with custom UI rendering
- File System Support - FAT32 file system access for kernel loading
- Secure Boot - Optional secure boot implementation
- Recovery Mode - Built-in recovery environment
- Architecture: x86 32-bit protected mode
- Memory Management: Paging enabled with 4GB address space
- File Systems: FAT32, EXT2/3/4 support
- Graphics: VESA 2.0+ compatible, 32-bit color support
- Protocols: Multiboot2, ACPI, SMBIOS support
- Security: SHA-256 verification, secure boot options
- NASM 2.15+ (assembler)
- GNU Make 4.3+
- GCC (for toolchain utilities)
- QEMU 6.0+ (for testing)
sudo apt-get update
sudo apt-get install nasm make gcc qemu-system-x86 xorriso grub-commonsudo dnf install nasm make gcc qemu-system-x86 xorriso grub2-efigit clone https://github.com/FMZNkdv/ABL.git
cd ABL
make allThis will generate:
build/abl.bin- Raw binary imagebuild/abl.img- Floppy disk imagebuild/abl.iso- Bootable ISO imagebuild/abl.efi- UEFI application (if supported)
make qemu
make qemu-uefi
make qemu-vgasudo make install-usb DEVICE=/dev/sdX
make iso && cdrecord dev=/dev/sr0 build/abl.iso