Commit Graph

126 Commits

Author SHA1 Message Date
Jeremy Soller c7eeb9f220 Version 1.0.0 2022-02-10 16:02:58 -07:00
Jeremy Soller 2100b1174b Add support for live disk 2022-02-10 15:51:14 -07:00
Jeremy Soller b53bcfd7cd Reduce prints from UEFI bootloader 2022-02-10 12:18:24 -07:00
Jeremy Soller 45c3770d59 Use VbeFarPtr to fix reading video modes 2022-02-10 11:56:44 -07:00
Jeremy Soller 9b244a56a3 Unify logic for BIOS and UEFI 2022-02-08 21:40:26 -07:00
Jeremy Soller 039ab8cd77 Cleanup of UEFI code 2022-02-08 18:15:13 -07:00
Jeremy Soller d2316290cb Get aarch64 UEFI bootloader building 2022-02-08 16:46:39 -07:00
Jeremy Soller aae67a40c1 Move video mode selection to generic code 2022-02-08 16:32:12 -07:00
Jeremy Soller 7358344616 Re-enable support for live kernel 2022-02-08 14:20:37 -07:00
Jeremy Soller 8c7bb57ef3 Integrate EFI bootloader 2022-02-08 14:17:09 -07:00
Jeremy Soller 6936228dff Refactor into arch and os, remove warnings 2022-02-08 13:17:30 -07:00
Jeremy Soller 2ab9afcbc4 Move disk to OS abstraction 2022-02-08 12:27:48 -07:00
Jeremy Soller 1a9fdeb76f Remove unused target family 2022-02-08 12:27:33 -07:00
Jeremy Soller ee9c9a3785 Use new rust-toolchain format 2022-02-08 12:27:21 -07:00
Jeremy Soller 5de0a9076b Fix vga=no mode 2022-02-07 20:44:25 -07:00
Jeremy Soller 79a32a3b28 Detect disk before choosing mode 2022-02-07 20:41:57 -07:00
Jeremy Soller dc8af12cc7 Do mode selection first 2022-02-07 20:36:58 -07:00
Jeremy Soller 75b7827375 Load gdt before and after thunk 2022-02-07 20:19:40 -07:00
Jeremy Soller 6ed05fcaa4 Set env 2022-02-07 16:35:38 -07:00
Jeremy Soller 82e0908abb Workaround for re-using page table in kernel 2022-02-07 16:08:01 -07:00
Jeremy Soller 43d045788f Support calling kernel 2022-02-07 15:26:30 -07:00
Jeremy Soller 9db76a58b8 Do not require unreal mode, load stage 2 in conventional memory 2022-02-07 13:49:03 -07:00
Jeremy Soller a692d3e2ce Re-enable cpuid detection 2022-02-07 10:50:25 -07:00
Jeremy Soller 010569fb21 Add some long mode support 2022-02-07 10:30:29 -07:00
Jeremy Soller fb29a36208 Organize files to make building for multiple archs easier 2022-02-07 08:43:43 -07:00
Jeremy Soller 15ba17e0b7 Use asm memory map code for now 2022-02-05 21:02:12 -07:00
Jeremy Soller acff86a794 Use 32-bit registers for thunking 2022-02-05 20:57:53 -07:00
Jeremy Soller 868877a6c5 Use redoxfs 0.4.4 2022-02-05 20:54:27 -07:00
Jeremy Soller 05ac036f52 Add logging and implement opening RedoxFS 2022-02-02 20:40:27 -07:00
Jeremy Soller cb8a10ca26 Implement disk read 2022-02-02 17:04:17 -07:00
Jeremy Soller 0dcd7a5a38 Refactor 2022-02-02 16:09:48 -07:00
Jeremy Soller 2e3292986e Add redoxfs 0.5 dependency 2022-02-02 15:39:47 -07:00
Jeremy Soller 5313f46e61 Put magic addresses in one place 2022-02-02 15:04:05 -07:00
Jeremy Soller 14993ed497 Add allocator and set mode using VBE 2022-02-02 14:34:56 -07:00
Jeremy Soller 50b42eda0d VBE mode info in Rust binary 2022-02-02 13:36:08 -07:00
Jeremy Soller b7a1f53141 Disable cursor 2022-02-02 09:59:12 -07:00
Jeremy Soller 2bb9a37887 Push more thunk interrupts 2022-02-02 09:56:40 -07:00
Jeremy Soller b1cdecc00e Significant cleanup of assembly code, write fmt::write for vga 2022-02-02 09:56:19 -07:00
Jeremy Soller f6582168c6 Thunking to real mode for interrupts 2022-02-01 22:14:50 -07:00
Jeremy Soller c9ec8f7a07 WIP: VGA 2022-02-01 19:50:15 -07:00
Jeremy Soller ab2aaa9c38 WIP: convert to rust 2022-02-01 16:58:53 -07:00
Jeremy Soller c96eb83d18 Merge branch 'enable-aarch64-filesystem-build' into 'master'
aarch64: Dummy placeholder to placate build/filesystem.bin

See merge request redox-os/bootloader!7
2021-01-19 18:07:19 +00:00
Robin Randhawa 0acf353bc8 aarch64: Dummy placeholder to placate build/filesystem.bin 2021-01-19 18:02:57 +00:00
Jeremy Soller 1d201c4435 Merge branch 'rmm' into 'master'
Support for RMM

See merge request redox-os/bootloader!6
2020-11-27 16:49:54 +00:00
Jeremy Soller 2dccb065df Support for RMM 2020-11-27 16:49:54 +00:00
Jeremy Soller 6adcce54dc Merge branch 'cpuid' into 'master'
Implement CPUID feature checks

See merge request redox-os/bootloader!5
2020-06-07 23:21:25 +00:00
Tibor Nagy a022b64a05 Implement CPUID feature checks
The bootloader now shows an error message instead of hanging with
a black screen on incompatible CPUs.
2020-06-08 00:21:45 +02:00
Jeremy Soller ab0603206f Merge branch 'kernel-args' into 'master'
Add the two additional (but set to NULL) kernel args.

See merge request redox-os/bootloader!4
2020-04-18 22:37:28 +00:00
4lDO2 2cefce0a83 Add two additional (but set to NULL) kernel args. 2020-04-18 17:04:06 +02:00
Jeremy Soller 60b87c4477 Make more adjustments to padding to match padding from before MBR change 2020-02-06 19:40:42 -07:00