Commit Graph

227 Commits

Author SHA1 Message Date
mintsuki
2b11825b20 console: Introduce Limine console 2021-10-09 13:32:57 +02:00
mintsuki
3dbd494f87 disk: Signature double checking for EFI volume detection fallback 2021-09-06 08:52:41 +02:00
mintsuki
cefc4a76ca gterm: Implement TERMINAL_FONT_SPACING and default it to 1 2021-08-20 19:25:42 +02:00
mintsuki
fa0aa6d7b9 gterm: Add config aliases and other minor fixes 2021-08-18 21:02:03 +02:00
mintsuki
32192f73a4 docs: Document TEXTMODE option 2021-08-17 00:58:02 +02:00
mintsuki
b2e66e5a2d term: Misc improvements and fixes 2021-08-17 00:37:24 +02:00
mintsuki
385af687b3 vga_textmode: Replace BIOS calls to enable and disable hardware cursor with direct VGA port IO 2021-08-17 00:06:20 +02:00
Andy-Python-Programmer
e308da5b48
Add the kernel file v2 tag in tests
Signed-off-by: Andy-Python-Programmer <andypythonappdeveloper@gmail.com>
2021-08-10 19:10:53 +10:00
mintsuki
07dc81bbee build: Pass -mabi=sysv to cc 2021-07-31 21:28:06 +02:00
mintsuki
5106c6cde2 test: Update Makefile 2021-07-25 14:48:58 +02:00
mintsuki
2a4f9eb0c4 elf: Do not enforce segment load address alignment even if PMRs are requested 2021-07-25 01:18:36 +02:00
mintsuki
e96b55a477 stivale2: Fix test 2021-07-15 17:16:55 +02:00
mintsuki
de3c7eed67 stivale2: Implement PMRs 2021-07-15 16:20:29 +02:00
mintsuki
9f5c5e09b4 menu: Support entry comments 2021-07-08 16:57:40 +02:00
mintsuki
3b18864e6f efi: Misc bug fixes 2021-07-07 05:54:40 +02:00
mintsuki
2bce5bf2d1 docs: Update screenshot 2021-07-07 04:50:32 +02:00
mintsuki
0e6ad967de textmode: Fix various cursor-related issues 2021-07-07 03:37:29 +02:00
mintsuki
177b83de9c menu: Prefer left alignment for titles which are not divisible by 2 2021-07-07 02:43:07 +02:00
mintsuki
04c4c42779 test: Update so it builds with LLVM 2021-07-02 19:05:30 +02:00
mintsuki
4d7a48eca7 term: Add support for tabs 2021-05-22 23:11:18 +02:00
mintsuki
f650e4b41b misc: Add verbose config option 2021-05-11 06:46:42 +02:00
mintsuki
db3a41bc4c uefi: Implement chainloading support 2021-05-06 04:31:05 +02:00
mintsuki
a01e5ecd1a stivale2: Implement higher half returned addresses flag 2021-05-04 23:00:26 +02:00
mintsuki
4bd3a540a8 stivale: Implement higher half returned addresses flag 2021-05-04 15:17:36 +02:00
mintsuki
033ceb3353 stivale: Implement SMBIOS related stuff. Fixes #81 2021-04-28 20:15:24 +02:00
mintsuki
c3db6d0c41 stivale: Implement KASLR config option 2021-04-15 04:32:49 +02:00
mintsuki
d9466f3d25 stivale2: Implement unmap NULL using 4KiB pages 2021-04-14 21:57:23 +02:00
mintsuki
7ac20e0615 gterm: Many improvements 2021-04-11 02:30:48 +02:00
mintsuki
4bbc98b62e Revert "video: Many terminal related bug fixes and improvements"
This reverts commit f7638e965b.
2021-04-11 01:26:50 +02:00
mintsuki
f7638e965b video: Many terminal related bug fixes and improvements 2021-04-10 23:08:32 +02:00
mintsuki
91f0600e6b image: Add support for centering images 2021-04-09 01:26:39 +02:00
mintsuki
05c60bac51 gterm: Speed up terminal greatly by caching an alpha blent canvas of the background instead of alpha blending every pixel of the background every time 2021-04-08 23:05:27 +02:00
mintsuki
7e5b809a7e build: Add missing -pie to test link command 2021-04-08 05:23:32 +02:00
mintsuki
621fc30a3b build: Prefer -static-pie to -shared for linking PIE executables 2021-04-08 02:07:40 +02:00
mintsuki
46a82f1c7f test: Add missing break in switch case 2021-04-07 02:51:56 +02:00
mintsuki
7abb7348a9 stivale2: Implement terminal 2021-04-07 02:10:28 +02:00
mintsuki
2f299b1f0d test: Update Makefile 2021-03-29 18:50:26 +02:00
mintsuki
0885bac3aa stivale2: Implement kernel slide tag 2021-03-28 16:20:23 +02:00
mintsuki
c45407cb62 test: Remove KASLR entries from config since that is no longer an option 2021-03-28 16:07:39 +02:00
mintsuki
d1946b9dbc stivale2: Implement kernel file tag 2021-03-28 15:46:59 +02:00
mintsuki
23bf225f63 test: Apparently manually defining PHDRs is not actually needed 2021-03-26 16:24:28 +01:00
mintsuki
6c7e096800 stivale2: Implement EDID and EFI system table tags 2021-03-14 06:13:19 +01:00
mintsuki
de4fd786dd uri: Replace bios:// with hdd:// and odd:// 2021-03-13 08:27:15 +01:00
mintsuki
781fc3137c misc: Revert test limine.cfg 2021-03-10 00:56:35 +01:00
mintsuki
058da70164 Misc fixes 2021-03-07 04:31:06 +01:00
mintsuki
443266feb3 Implement UEFI EDID 2021-03-05 23:48:52 +01:00
mintsuki
cbcf3779b6 Fix keyboard stuff 2021-03-04 13:48:31 +01:00
mintsuki
f26b6045a7 Let there be GOP 2021-03-04 10:13:02 +01:00
mintsuki
1be84baf84 Makefile fixes 2021-03-04 05:30:31 +01:00
mintsuki
7d8758d643 Further Makefile fixes 2021-03-02 18:39:39 +01:00
mintsuki
326bcbfa29 misc: Misc adjustments 2021-02-25 01:47:48 +01:00
mintsuki
27848fc85c misc: General code reorganisation 2021-02-25 01:24:54 +01:00
mintsuki
0673962817 misc: Code reorganisation 2021-02-22 20:43:51 +01:00
JlXip
34460c31a5 iso9660 2021-02-22 06:00:23 +01:00
mintsuki
57496ad0c7 stivale2: Implement MTRR Write Combining Framebuffer tag 2021-01-03 02:43:27 +01:00
mintsuki
1f10b55b29 stivale: Make kaslr a config setting 2020-12-27 23:11:11 +01:00
mintsuki
5bc1e8d830 misc: Remove compressed bg 2020-12-27 22:23:06 +01:00
mintsuki
13f3ee0932 misc: Make sure relocatable kernels work 2020-12-27 22:10:20 +01:00
mintsuki
faae7a002c vbe: Fix bug where the vbe tty double buffer did not properly refresh 2020-12-27 19:32:18 +01:00
mintsuki
a9ff406d31 uri: Add support for gzip-compressed files 2020-12-27 00:27:47 +01:00
mintsuki
cdfc454ae2 menu: Support changing branding title screen 2020-12-10 07:32:15 +01:00
mintsuki
8c910b20e5 uri: Add boot resource 2020-12-09 13:02:05 +01:00
mintsuki
8d04ab1c30 vbe: Add support for user loadable fonts for the menu 2020-12-05 04:42:19 +01:00
mintsuki
6ab44cb04c stivale: Add support for extended colour information 2020-12-05 02:10:02 +01:00
mintsuki
3ee1ee880b menu: Fix bug where variable may be used uninitialised, make DEFAULT_ENTRY 1-based, add 'no' setting for TIMEOUT 2020-12-03 12:38:53 +01:00
mintsuki
fe022c49f5 menu: Do not have countdown if default entry is a directory 2020-12-02 19:16:38 +01:00
mintsuki
9b7f9e4209 config: Add default expanded entries 2020-12-01 02:52:03 +01:00
mintsuki
81b9911613 pmm: Panic if there is an attempt to reserve a memory range below 1 MiB 2020-11-25 02:25:00 +01:00
mintsuki
9cd21c6a30 term: Add double buffering 2020-11-20 19:55:18 +01:00
mintsuki
dc54ee97eb config: Add initial support for config directory entries 2020-11-16 23:31:03 +01:00
mintsuki
8460cee5ca misc: Implement stacktrace 2020-11-15 17:56:10 +01:00
mintsuki
352f74daef stivale2: Fix bug where uri_open return value is tested wrong; uri: Allocate new buffer on uri_resolve 2020-11-10 11:12:56 +01:00
mintsuki
98c8921a7e misc: Update background and screenshot 2020-11-09 14:29:53 +01:00
mintsuki
168716a251 misc: Add config file options for specifying the resolution in a granular way. Other misc bug fixes. Fixes #45 2020-11-09 12:31:47 +01:00
mintsuki
cfb1734f43 vbe: Implement more expressive framebuffer tag (fixes #37) 2020-11-08 11:59:23 +01:00
mintsuki
65b39a4111 menu: Make theme colours a single key 2020-11-05 13:29:42 +01:00
mintsuki
0319b51b4b Use URIs in the last few remaining places, update CONFIG.md 2020-11-01 22:07:10 +01:00
mintsuki
038c041208 Add GUID resource type 2020-11-01 21:25:35 +01:00
mintsuki
569df8aca8 Use URIs everywhere, update config documentation. Fixes #48 2020-11-01 10:31:35 +01:00
mintsuki
07ac3de4e6 SMP: Fix struct duplication bug 2020-10-25 12:41:13 +01:00
mintsuki
b7f4412948 Add BSP LAPIC ID field to stivale2 SMP structure. Resolves #46 2020-10-25 04:58:53 +01:00
mintsuki
74c7c0d776 Add E9_OUTPUT config option 2020-10-20 02:38:44 +02:00
mintsuki
47d517bec8 Use URIs instead of explicit drive and partition keys in config file 2020-10-17 06:23:11 +02:00
streaksu
7d400d30d6 Add a unified test image for stivale1 and stivale2 for both x86_64 and i386 2020-09-30 00:31:42 +02:00
mintsuki
2f7d3c378d Default back to text mode instead of VBE, add DEFAULT_ENTRY config option 2020-09-29 21:48:34 +02:00
mintsuki
562e3c7c88 menu: Do not ignore key pressed during countdown 2020-09-28 22:39:28 +02:00
mintsuki
e886a6fa76 stivale2: Finish implementing x2APIC support 2020-09-27 01:32:47 +02:00
mintsuki
0403a29f76 Refactor VBE code 2020-09-26 03:56:44 +02:00
mintsuki
ed5d049c72 Fix issue with int 13h DAP potentially not fitting within a single real mode segment; load stage 2 at 0x8000 and disable LTO as it is broken for some unknown reasons now 2020-09-25 22:36:26 +02:00
VAN BOSSUYT Nicolas
4f6b1d20c2 Made the margin configurable. 2020-09-24 23:18:51 +02:00
VAN BOSSUYT Nicolas
d6f162972c Added alpha support. 2020-09-24 23:09:29 +02:00
VAN BOSSUYT Nicolas
0477d34236 The color scheme can be changed using the configuration file. 2020-09-24 21:48:49 +02:00
mintsuki
7aa9d845e7 Complete background infrastructure and fix some bmp bugs 2020-09-22 00:18:13 +02:00
mintsuki
5ee53fbe4d Initial work on bitmap and background support. Add a public domain picture.
Co-authored-by: ethan <55000224+ethan4984@users.noreply.github.com>
2020-09-21 17:43:37 +02:00
mintsuki
41c68e5e43 Initial SMP implementation 2020-09-18 14:39:29 +02:00
mintsuki
1ccf8e34bc Adapt new vmm to 5-level paging as well 2020-09-11 14:09:15 +02:00
mintsuki
902109ef68 Wire up logic for graphical terminal 2020-09-02 09:55:56 +02:00
mintsuki
866e95b4c3 Rebranding 2020-08-29 20:02:16 +02:00
mint
9fcb13c2a2
Tagging stivale (#16)
* Initial tagging system

* stivale: Report bootloader brand and version, change structure of memory map tag

* Reintroduce legacy stivale protocol and rename tagging stivale to stivale2
2020-08-11 17:43:39 +02:00
mintsuki
6d5efbdc15 Make test cases buildable on FreeBSD 2020-07-06 22:59:28 +02:00
Shreyas Lad
24ddd20e89
Handle improper file paths (#14)
* Sort memmap entries

* fixed improper module path fault

* Sort memmap entries

* removed bin yet again

* Sort memmap entries

* build

Co-authored-by: mintsuki <mintsuki@protonmail.com>
2020-06-05 19:33:51 +02:00
mintsuki
6540239006 Add possibility to pick separate entry point to stivale 2020-05-30 15:44:14 +02:00
mintsuki
389b687985 Change how config works a bit 2020-05-06 16:38:45 +02:00
mintsuki
8ef1e28e9d Misc bug fixes and sanity checks 2020-04-24 18:26:08 +02:00
mintsuki
15c18d7642 Add boot menu 2020-04-21 18:27:05 +02:00
mintsuki
fb827cb5bf Make qloader2-install less verbose 2020-04-21 15:12:00 +02:00
mintsuki
41ea91c694 echfs: Add directory support 2020-04-21 10:18:21 +02:00
mintsuki
5f859ea7d1 Add 32 bit stivale support 2020-04-18 18:01:29 +02:00
mintsuki
5d0c6d924a Improve ext2 driver a bit 2020-04-15 20:15:38 +02:00
mintsuki
8680f99eaa Add GPT support 2020-04-15 13:21:44 +02:00
Shreyas Lad
609f9d86de
EXT2 and VFS support (#5)
* initial header file

* finished inode structure

* finished inode permissions

* updated makefile

* working ext2fs build

* found superblock

* bgdt is ded

* parsed bgdt

* directory entry structure

* parsed inodes

* parsed root inode

* found directory entries

* added ext2 support

* fs abstraction support

* cached size in FILE

* hm

* removed debug statements

* added  to is_ext2() args

* fixed read errors

* comply with standards

* fixed things

* more fixes

* more makefile fixes

* even more fixes
2020-04-15 08:48:35 +02:00
mintsuki
2ecd4a8016 Make stivale actually pass the command line to the kernel 2020-03-31 10:48:24 +02:00
mintsuki
6578b55c9f Add module support to stivale 2020-03-30 22:27:15 +02:00
mintsuki
44a5f47516 Add timeout config option 2020-03-28 02:52:59 +01:00
mintsuki
a234da8deb Add bpp field to stivale header 2020-03-27 05:58:37 +01:00
mintsuki
e39d7f5dd1 Ensure bpp of video mode is 32 bit 2020-03-27 05:43:34 +01:00
mintsuki
573b3308e1 Add KERNEL_DRIVE default value 2020-03-27 03:45:36 +01:00
mintsuki
1cbd6fb2e9 Plug in e820 driver 2020-03-27 02:10:22 +01:00
mintsuki
1166de64c8 Add initial VBE driver 2020-03-26 03:13:19 +01:00
mintsuki
26bccc6308 Add RSDP detection to stivale 2020-03-26 01:37:56 +01:00
mintsuki
0040b97fd1 Working on stivale 2020-03-26 00:46:35 +01:00
mintsuki
8494b1d880 Add protos abstraction and stivale and qword protocols 2020-03-25 21:05:14 +01:00
mintsuki
1b80c8ca90 Misc stuff 2020-03-25 05:19:07 +01:00
mintsuki
85709a0fbe elf: Add support for higher half kernels 2020-03-25 04:38:23 +01:00
mintsuki
d95a8403cc Use elf64 2020-03-25 01:31:59 +01:00
mintsuki
1a48bec601 Add elf parser 2020-03-25 01:04:18 +01:00
mintsuki
5c36fac374 Add testing facilities 2020-03-24 23:39:02 +01:00