Commit Graph

119 Commits

Author SHA1 Message Date
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
Jeremy Soller 1b02aebde2 Remove excess alignment 2020-02-05 21:32:08 -07:00
Jeremy Soller 0a3a08d6ff Fall back to sector after bootloader if no partition table is found 2020-02-05 20:56:12 -07:00
Jeremy Soller e08e3b301d Remove unused sector count 2020-02-05 20:52:43 -07:00
Jeremy Soller 5abe28fd45 Update to RedoxFS 4 2020-01-20 09:57:08 -07:00
Jeremy Soller 97b1ae3952 Merge branch 'master' into 'master'
Support booting from MBR disks

See merge request redox-os/bootloader!3
2020-01-12 20:40:25 +00:00
4lDO2 3f7007a9a5 Support loading filesystems from MBR partitions. 2020-01-08 17:54:06 +11:00
4lDO2 bc43dbb621 Move the store function away from the bootsector. 2020-01-07 16:59:38 +11:00