Commit Graph

223 Commits

Author SHA1 Message Date
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