Commit Graph

580 Commits

Author SHA1 Message Date
xvanc 030242d69a vmm/riscv: fix bug in `vmm_max_paging_mode()` 2023-08-03 20:12:51 -05:00
mintsuki 50b8ab2c26 rv64: Misc relaxation related fixes 2023-08-01 05:32:05 -05:00
mintsuki 2f1dac0600 gterm: Change resolutions at which autoscaling is triggered 2023-07-29 11:55:37 -05:00
mintsuki 0ecb2ab895 menu: Center menu vertically 2023-07-29 11:55:37 -05:00
mintsuki 474fc105a5 gop: Readd preset mode storage 2023-07-29 11:55:37 -05:00
mintsuki 418f8d7280 menu: Do not draw box around boot menu 2023-07-29 02:17:12 -05:00
mintsuki 722bde2cbc menu: Adjust centering by 2 characters to the left 2023-07-28 04:26:48 -05:00
mintsuki 5bdb1bbf55 menu: Fix a couple of boot menu alignment issues 2023-07-28 04:26:48 -05:00
mintsuki 8f167bc2e5 menu: Initialise max_len if null regardless of shift 2023-07-28 04:26:48 -05:00
mintsuki d73cd37834 menu: Fix maybe uninitialised issue with cur_len var 2023-07-28 04:26:48 -05:00
mintsuki 478b6f3806 menu: Fix NULL deref bug with shift variable 2023-07-28 04:26:48 -05:00
mintsuki 4b452e69a4 console: Add slide command 2023-07-28 04:26:48 -05:00
mintsuki 98f30bfdd6 menu: Center boot menu 2023-07-28 04:26:48 -05:00
mintsuki 9921af54d0 gterm: Autoscale font on higher resolutions 2023-07-28 04:26:48 -05:00
Kacper Słomiński a2e502328d limine: Adjust higher half offsets for AArch64 2023-07-26 17:05:43 -05:00
Kacper Słomiński dc68fcaff7 limine: Use a higher-half pointer for the stack on AArch64 2023-07-26 17:05:33 -05:00
mintsuki f365a46617 misc: Minor updates to linker scripts 2023-07-26 17:05:20 -05:00
mintsuki 871a8053c2 build: Get rid of OBJCOPY2ELF_FLAGS since only IA-32/BIOS used it 2023-07-26 17:05:06 -05:00
mintsuki 49ecb6b577 build: Get rid of RISCV_CFLAGS variable as it is now unnecessary 2023-07-26 17:04:54 -05:00
mintsuki bc1896c5bb riscv64: Do not use global pointer register 2023-07-26 17:04:30 -05:00
mintsuki b72d033510 elf: elf64_load(): Remove accidentally left in debug code 2023-07-09 03:40:06 +02:00
mintsuki 11f50a6aaa part: Require keypresses between entry displays in list_volumes() 2023-07-09 03:37:55 +02:00
mintsuki 79e50a82af misc: Use assembly for memory functions on x86 2023-07-09 03:09:45 +02:00
mintsuki 17e26c8c95 elf: Fix potential uninitialised usage of bss_size 2023-07-09 03:09:45 +02:00
mintsuki 9333f1ca8b limine/elf: Optimise not to scan .bss for requests 2023-07-08 23:44:50 +02:00
mintsuki 99d671ecf8 build: Drop -Wno-deprecated-declarations flag 2023-06-20 16:24:27 +02:00
mintsuki 7882d89b4e limine: Drop 5-level paging request support 2023-06-20 16:10:08 +02:00
mintsuki 1ad6d6013e limine: Drop terminal request support 2023-06-20 15:58:52 +02:00
mintsuki 2ac43a320f asm: Add missing section directives 2023-06-20 13:24:49 +02:00
mintsuki 2d6a1e4535 console: Add firmware type command 2023-06-20 11:10:33 +02:00
mintsuki 6e41938206 gensyms: Filter out non-function symbols 2023-06-20 08:54:53 +02:00
mintsuki 66268f7d7f pmm: Use fixed value of 1024 for recl entries count 2023-06-15 13:06:52 +02:00
mintsuki cb14f44eb3 pmm: Fix change-memmap-in-use bug 2023-06-15 12:54:36 +02:00
mintsuki 910a0d84a0 vmm: Fix page_sizes values and move declaration to top 2023-06-15 08:21:48 +02:00
mintsuki 670b635ae8 config: Add and document ARCH built-in macro 2023-06-15 02:23:48 +02:00
mintsuki bc8188e275 misc: limine.sys -> limine-bios.sys 2023-06-15 02:02:32 +02:00
mintsuki 7b1284808a build: Fix permissions of output files in makefile instead of release recipe 2023-06-15 01:33:17 +02:00
mintsuki 2b154138fe misc: Updates for new limine-efi 2023-06-12 05:57:47 +02:00
mintsuki cde874fe80 misc: Updates for new flanterm 2023-06-10 19:23:50 +02:00
mintsuki 666c5dfcd1 riscv64: Update location of __global_pointer$ 2023-06-06 00:17:07 +02:00
mintsuki 13042bd25e build/riscv64: libgcc-riscv64 -> libgcc-riscv64-softfloat 2023-06-06 00:02:07 +02:00
mintsuki 74a6b8e125 protos/linux: Do not zero EFI memmap size on IA-32 EFI 2023-06-05 23:05:20 +02:00
xvanc 1f01ddfc6d
limine: scale the maximum KASLR offset based on the address space size 2023-06-04 13:50:26 -05:00
xvanc 9274ee656e
Initial riscv64 port (#274)
* initial riscv64 port

* enable Paging Mode feature for all architectures

* riscv: add missing protocol docs

* riscv: fix tests

* docs: clarify `LIMINE_PAGING_MODE_DEFAULT` macro

* build: fix whitespace in common/GNUmakefile

* riscv: default to Sv48 paging when supported

* vmm: make `VMM_MAX_LEVEL` 1-indexed

* limine: do not call `reported_addr()` before finaling paging mode

smp/riscv: do not overwrite the argument passed to APs

* limine/riscv: update default paging mode in limine.h

* test/riscv: pad OVMF.fd when downloading it
2023-06-04 01:36:06 +02:00
Bryce Lanham fe083d3701 Fix netboot in configs where BLOCK_IO does not exist
For example, netbooting qemu-system-aarch64 with no drive specified will
result in OVMF not loading the BLOCK_IO_PROTOCOL, causing a panic in
disk.s2.c.
2023-06-01 03:33:13 -05:00
mintsuki f26b651e5f disk/efi: Do not use DISK_IO protocol and fix buffer reuse bug 2023-05-30 21:36:09 +02:00
mintsuki 679fdd4351 misc: Use C instead of asm for mem*() family of functions 2023-05-30 12:23:31 +02:00
mintsuki eac03c8c89 build/uefi: Remove now-useless -DGNU_EFI_USE_MS_ABI flag 2023-05-28 23:53:34 +02:00
mintsuki 0125dcd67a build/uefi: Pass -fshort-wchar to CC 2023-05-27 16:55:49 +02:00
mintsuki 7989064599 elf: Improve detection of relocatable ELFs 2023-05-13 00:05:50 +02:00
mintsuki 73462a5116 Revert "compress/gz: Add hack to allow macOS compressed GZs to load with stbi"
This reverts commit 1dd75a18ac.
2023-05-03 19:53:27 +02:00
mintsuki f618eb26af Revert "misc: Revert back to using tinf for all GZ decompression"
This reverts commit 3438b8d235.
2023-05-03 19:53:27 +02:00
mintsuki e9186e1859 Revert "uri: Backport pre-tinf-removal variable assignments"
This reverts commit 514522125b.
2023-05-03 19:53:27 +02:00
Bryce Lanham e0c3e6bdce multiboot1: also fix elf32 section loading
As with the prior mb2 fix, use the correct size elf section header for
32 bit elf
2023-05-02 20:48:13 -05:00
Bryce Lanham fdcb9a9243 multiboot2: fix 32 bit elf section loading
Existing code was using 64 bit elf section header unconditionally. This
commit fixes that :)
2023-05-02 20:15:43 -05:00
mintsuki 8dd7973e23 pxe: Add and use constant PXE ACK packet size and fix BIOS PXE ACK struct 2023-04-28 04:59:08 +02:00
mintsuki 36846549e0 menu: Do not initialise textmode terminal if QUIET=yes. Addresses #269 2023-04-26 23:49:22 +02:00
Bryce Lanham 2362f1a785 Implement Multiboot2 network tag
Added caching of the dhcp response in the pxe code, and then adding the
tag containing it.
2023-04-24 06:44:56 -05:00
Bryce Lanham 64a0c6073b Fix PXE BIOS boot when using a proxy DHCP server 2023-04-22 01:22:36 -05:00
mintsuki c41e3969a6 build: Pass proper warning flags to nasm 2023-04-18 12:41:01 +02:00
mintsuki e57050d9c7 multiboot1: Support TEXTMODE config as with Linux/mb2 protocols 2023-04-13 19:21:49 +02:00
mintsuki 93ae0e9afc textmode: Actually disable term hooking on non-managed initialisation 2023-04-13 18:49:26 +02:00
ミンツキ 3613997108
Merge pull request #263 from klange/mb2-textmode
multiboot2: Support TEXTMODE config as with linux
2023-04-12 16:24:14 +02:00
K. Lange 2da6225f9e multiboot2: ignore unsupported tags if they are marked optional 2023-04-12 19:53:24 +09:00
K. Lange a3f84fc4a3 multiboot2: Support TEXTMODE config as with linux 2023-04-12 19:50:01 +09:00
mintsuki 240d9688b0 multiboot2: Fix lack of argument to panic format string 2023-04-12 09:56:28 +02:00
mintsuki eba0183b6e build: Reorganise warning flags 2023-04-11 17:15:41 +02:00
mintsuki ebd1953e51 build: Use uppercase PIE/PIC compilation flags 2023-04-11 15:57:02 +02:00
mintsuki 514522125b uri: Backport pre-tinf-removal variable assignments 2023-04-08 03:10:53 +02:00
mintsuki 3438b8d235 misc: Revert back to using tinf for all GZ decompression 2023-04-08 02:17:02 +02:00
mintsuki b66184cfbd limine: Clarify ambiguity with response revision and internal modules 2023-03-30 03:51:59 +02:00
mintsuki 012605adf9 limine: Fix issue with internal modules and kernels in root dir 2023-03-30 02:43:52 +02:00
mintsuki d0df21abb9 limine: Mark terminal as deprecated 2023-03-30 02:12:24 +02:00
mintsuki 01eeeb6e1d term: Drop in_bootloader for new Flanterm 2023-03-30 01:23:55 +02:00
mintsuki 779571339e misc: Updates for Flanterm rebrand 2023-03-29 22:43:06 +02:00
mintsuki a2dd3449a8 limine: Fix framebuffer pointer in terminal struct being invalid without a framebuffer request 2023-03-29 11:04:53 +02:00
mintsuki 42027470c7 limine: Fix bug where internal modules are parsed with revision < 1 2023-03-25 00:59:26 +01:00
mintsuki d0ee1e7d65 limine: Support relative-to-kernel paths for internal modules 2023-03-24 18:24:27 +01:00
mintsuki 698ca1a665 limine: Honour LIMINE_INTERNAL_MODULE_REQUIRED flag 2023-03-24 10:18:18 +01:00
mintsuki 830251e68e limine: Load internal modules before config modules 2023-03-24 09:07:40 +01:00
mintsuki d4334699e3 limine: Implement internal modules concept 2023-03-24 01:02:31 +01:00
mintsuki 0196abf2ec build: Minor build system updates 2023-03-23 02:35:08 +01:00
mintsuki 2ea3f7e9d8 build: Minor build system updates 2023-03-23 01:02:58 +01:00
mintsuki 3bf159d81c compress: Rename modified tinfgzip wrapper to gzip 2023-03-16 22:49:24 +01:00
mintsuki 9663318102 build: Remove useless unset commands from common GNUmakefile 2023-03-16 17:01:41 +01:00
mintsuki fadb9a7c13 build: Misc updates for new freestanding-toolchain 2023-03-16 03:38:53 +01:00
mintsuki f71f506b0a build: configure: Change some variable names to be more friendly 2023-03-16 02:28:50 +01:00
mintsuki 9009404a11 build: Updates for newer freestanding-toolchain 2023-03-14 17:20:46 +01:00
mintsuki 828e3790a4 chainload: LoadOptionsSize should be in bytes. Fixes #254 2023-03-08 15:40:11 +01:00
mintsuki 246276a538 chainload: BIOS: do not rely on 0x7c00 being free 2023-03-07 13:07:28 +01:00
mintsuki 980c122475 vga_textmode: Minor cursor-related bug fixes 2023-03-07 13:07:28 +01:00
mintsuki 4ef529b4eb misc: Load BIOS port at 0xf000 instead of 0x8000 2023-03-07 02:21:09 +01:00
mintsuki fc4e283ad5 stb_image: Fix free/realloc wrappers to handle being passed NULL 2023-03-05 19:01:31 +01:00
mintsuki 0f4beb1bfd gterm: Fix NULL dereference bug when no wallpaper used 2023-03-05 09:49:28 +01:00
mintsuki 1dd75a18ac compress/gz: Add hack to allow macOS compressed GZs to load with stbi 2023-03-05 09:08:37 +01:00
mintsuki 8bb12244be image: Use stbi_image_free() instead of freeing buffer ourselves 2023-03-05 08:47:38 +01:00
mintsuki 753bb820ae stb_image: More proper implementation of malloc/free/realloc macros 2023-03-05 08:29:27 +01:00
mintsuki 959c44658e image: Use stb_image for image loading 2023-03-05 07:57:54 +01:00
mintsuki 11ef3bced2 build: Honour CROSS_CPPFLAGS 2023-02-25 01:38:26 +01:00
mintsuki 9bcad9d258 build: Very minor QOL fixes 2023-02-20 22:24:21 +01:00