Commit Graph

234 Commits

Author SHA1 Message Date
mintsuki cb9edd2a7b Reorganise source tree 2020-09-14 19:32:11 +02:00
mintsuki 6a6171d5e1 Update README.md 2020-09-13 15:47:43 +02:00
mintsuki ccbba7eeb5 Remove now-useless libgcc functions from builtins.asm 2020-09-13 15:28:51 +02:00
mintsuki dd6f38f632 Ship reproducible prebuilt bootloader and make 'make all' only build limine-install 2020-09-13 15:20:53 +02:00
mintsuki 5663169aa6 Switch back to GCC 2020-09-13 14:36:18 +02:00
mintsuki 859a10b142 Update stivale specifications 2020-09-11 16:35:14 +02:00
mintsuki 2e537412d3 Improve the way stivale paging is set up 2020-09-11 16:17:55 +02:00
mintsuki 1ccf8e34bc Adapt new vmm to 5-level paging as well 2020-09-11 14:09:15 +02:00
mintsuki 0c7e08d3c7 Add a more proper 64-bit vmm 2020-09-11 10:53:21 +02:00
Danny Wray 9802c8d36e
removed stray libgcc (#24) 2020-09-09 22:56:18 +02:00
mintsuki ef6ef5865b Implement support functions ourselves instead of relying on libgcc 2020-09-09 16:04:06 +02:00
mintsuki c53122516a Make the test image smaller and align the partition properly 2020-09-08 14:02:28 +02:00
mintsuki 97394ff601 Fix limine-install issue where it did not copy over MBR timestamp and disk signature 2020-09-06 08:52:50 +02:00
mintsuki 8760c0b3d6 Add protective BPB in bootsector and check for the presence of int 13h extensions before using them 2020-09-06 07:25:34 +02:00
mintsuki b16f63458d Shuffle around memory layout of bootloader 2020-09-06 05:15:55 +02:00
mint 45aaa72e85
Decompressor (#23)
* Add decompressor infrastructure

* Fix up everything

* Add a gzip decompressor (#22)

Co-authored-by: Matteo Semenzato <mattew8898@gmail.com>
2020-09-06 03:35:32 +02:00
mintsuki 734a3e268f Fix stivale2 memmap struct being misdefined 2020-09-05 02:50:53 +02:00
mintsuki 7bde0c80ca Move to clang, no longer ship prebuilt binary, embed bootloader into the installer and provide a way to install the installer 2020-09-04 05:21:58 +02:00
mintsuki ea62cf37c7 Fix alignment issues with memmap and modules in stivale2 2020-09-04 02:05:49 +02:00
mintsuki 4ac886b2f7 Add limine-install as a dependency to test targets 2020-09-04 02:01:53 +02:00
mintsuki ba7ed52f6a Enable lto and move naked assembly functions to own files 2020-09-04 01:37:24 +02:00
mintsuki 5379787967 Only enter graphical terminal mode for menu 2020-09-02 10:31:39 +02:00
mintsuki 902109ef68 Wire up logic for graphical terminal 2020-09-02 09:55:56 +02:00
mintsuki 3eb7d5f0ba Implement logic for graphical terminal 2020-09-02 07:16:05 +02:00
mintsuki 2052d92b91 Implement ext_mem_balloc() 2020-09-02 05:33:22 +02:00
mintsuki 46f46ddd15 When calling into real mode, also pass the segment registers 2020-09-02 04:39:27 +02:00
mintsuki b9be2e70c1 Change PIC IRQ flushing method 2020-09-02 02:32:04 +02:00
mintsuki 1a267656f9 Add Clang compile instructions to readme 2020-08-29 20:15:50 +02:00
mintsuki 866e95b4c3 Rebranding 2020-08-29 20:02:16 +02:00
mintsuki 2150daaf9a Fix bug with clobbers of cpuid function 2020-08-29 18:51:23 +02:00
mintsuki 155362570e Reimplement memcpy, memmove, memcmp, and memset in assembly to work around potentially buggy compilers generating references to those function recursively within the function bodies 2020-08-28 01:25:17 +02:00
mintsuki e2a87ca33e Fix handling of return value for strcmp and strncmp 2020-08-27 01:31:32 +02:00
mintsuki fc23258aa7 Handle intel style inline assembly via macros for compatibility with clang, remove TempleOS protocol support 2020-08-27 00:44:16 +02:00
mintsuki b2d24ecca3 Update binary image 2020-08-26 22:49:19 +02:00
atomicbit 45033e8186
Better firmware compatibility. (#19)
Co-authored-by: atomicbit <atomicbit.gg@gmail.com>
2020-08-26 22:45:32 +02:00
atomicbit 97b8d367be
Force IPV4 in toolchain script (#18)
* Force IPV4 in toolchain script

I was gonna build a toolchain for qloader2 and wget simply hanged. This patch fixes it.

* additional comment in wget

Co-authored-by: Visual <30368284+VisualDevelopment@users.noreply.github.com>

* other additional comment in wget

Co-authored-by: Visual <30368284+VisualDevelopment@users.noreply.github.com>

Co-authored-by: Visual <30368284+VisualDevelopment@users.noreply.github.com>
2020-08-26 02:25:18 +02:00
atomicbit 008b6e691e
Mark the partition as bootable (#17)
* Mark the partition as bootable

Some BIOSes (eg. my laptop's) require at least one partition to be marked as bootable, this patch can save one from frustration.

* change loader.img to test.img

i made a mistake

Co-authored-by: Visual <30368284+VisualDevelopment@users.noreply.github.com>

* additional comment

Co-authored-by: Visual <30368284+VisualDevelopment@users.noreply.github.com>

Co-authored-by: Visual <30368284+VisualDevelopment@users.noreply.github.com>
2020-08-26 01:21:06 +02:00
mintsuki c97fc83bbf Fix up compile flags 2020-08-24 23:35:06 +02:00
mintsuki f67f022d73 Bump binutils to 2.35 2020-08-19 22:49:00 +02:00
mintsuki a223f9c308 Update STIVALE2.md 2020-08-11 18:10:38 +02:00
mintsuki a002f05110 Fix broken memory types in stivale 2020-08-11 18:00:51 +02:00
mintsuki 6296d27c11 Restore old stivale specification and move stivale2 spec to own file 2020-08-11 17:53:37 +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 32278a690f Add reference screenshot 2020-08-05 00:08:40 +02:00
mintsuki 6d349d8062 Bump GCC to 10.2.0 2020-07-24 15:56:58 +02:00
mintsuki ddd4172dcd Add memory clobbers where missing and remove useless stivale signature 2020-07-24 15:38:55 +02:00
mintsuki e45f8ac41a stivale: Zero out unused GPRs and add a signature 2020-07-09 03:24:54 +02:00
mintsuki 1bbe7f9385 FAT32: fail if computing the 8.3 filename goes wrong 2020-07-08 04:33:54 +02:00
mintsuki bb96bab7f6 Fix another FAT32 bug (introduced by me) 2020-07-08 04:15:26 +02:00
mintsuki 6d5efbdc15 Make test cases buildable on FreeBSD 2020-07-06 22:59:28 +02:00