mintsuki
2ee939725e
term: Compatibility with new terminal code
2022-12-30 07:58:46 +01:00
mintsuki
1aba6b3aeb
lib/gterm: Remove now-useless full_refresh() call
2022-12-16 03:53:42 +01:00
mintsuki
b3c08f8122
term: Compatibility with latest terminal changes
2022-12-14 16:35:03 +01:00
mintsuki
ffaaabf14a
readline: Fix issue arising from terminal's wraparound handling fix
2022-11-19 08:04:17 +01:00
mintsuki
d39baeaa80
video: Initial support for multiple framebuffers
2022-11-18 23:59:31 +01:00
Ryan Cohen
07d8dd2c68
readline: Fix command line scrolling and cursor wrap-around
...
Fixes `cursor_fwd` to wrap the cursor to the first column when it passes
the bottom right corner of the screen.
Fixes `readline` to update the command line's row position when the
cursor wrap-around causes the screen to scroll up.
2022-11-13 13:49:00 -05:00
mintsuki
e0aec79cb6
limine: Add support for framebuffer modes listing
2022-10-14 05:19:13 +02:00
mintsuki
6022f5bf23
elf: Add overlapping PHDR detection
2022-10-10 04:35:28 +02:00
mintsuki
af80341c8c
misc: Dynamically allocate EFI memmap copy
2022-10-07 07:49:47 +02:00
mintsuki
2557aa8f46
misc: Increase EFI_COPY_MAX_ENTRIES to 2048
2022-10-07 06:23:49 +02:00
mintsuki
3d95c8960c
misc: Add limine subdir to stage3 and config search paths. Closes #225
2022-10-06 06:29:11 +02:00
mint
23f2c7dbac
Merge pull request #228 from czapek1337/some-fixes
...
Some minor fixes
2022-10-06 06:05:37 +02:00
mintsuki
7f09259c57
term: Misc improvements for SERIAL=yes on EFI
2022-10-06 05:41:21 +02:00
mintsuki
6e1c792e41
gterm: Prevent memory leak gterm_init() failure
2022-10-06 05:41:21 +02:00
czapek1337
68e936e7f4
readline: Fallback to SystemTable->ConIn
2022-10-06 05:37:22 +02:00
mintsuki
ac34ec411f
term: Better ensure term is not accessed when NULL
2022-10-05 15:01:01 +02:00
mintsuki
d187c576d8
term: Make term_notready() static
2022-10-04 21:00:39 +02:00
mintsuki
ff8c5f318c
term: Gate BIOS specific code behind ifdefs
2022-10-04 20:47:19 +02:00
mintsuki
f977548e84
term: Reimplement context control
2022-10-04 20:39:50 +02:00
mintsuki
48a7c12e5b
term: Misc fixes and improvements
2022-10-04 19:10:38 +02:00
mintsuki
d3c8a66918
term: Misc fixes and improvements
2022-10-04 08:21:59 +02:00
mintsuki
b34954bb43
term: Misc fixes and improvements
2022-10-04 07:24:42 +02:00
mintsuki
45312e66ae
term: Add builtin font
2022-10-04 06:04:31 +02:00
mintsuki
f6ba5991b5
term: Misc minor bug fixes
2022-10-04 05:39:48 +02:00
mintsuki
0f1d86e7e4
term: Tidy up VGA textmode wrapper code
2022-10-04 02:34:11 +02:00
mintsuki
8849d08eeb
term: Tidy up gterm wrapper code
2022-10-04 01:37:19 +02:00
mintsuki
4d855fc17e
term: Move to use external, portable terminal
2022-10-04 00:58:00 +02:00
mintsuki
96c184fdf6
term: Misc bug fixes in fallback backends
2022-09-28 01:16:39 +02:00
mintsuki
0d7b1e1148
term: Do not reset mode on UEFI fallback init
2022-09-27 06:36:04 +02:00
mintsuki
4a4409e1b2
pmm: Undo most of what was done between 85603ec8
and 74a3a1c6
2022-09-24 03:57:55 +02:00
mintsuki
0cb98610f0
panic: Fix build on non-BIOS targets
2022-09-23 20:59:02 +02:00
mintsuki
e062b4ed7d
term: Move more of it to stage 3
2022-09-23 20:53:14 +02:00
mintsuki
a6189abdc1
misc: Fix bugs introduced in 3181293a
2022-09-20 09:54:35 +02:00
mintsuki
f86a421209
misc: Fix up some no_unwind globals
2022-09-17 15:09:08 +02:00
mintsuki
0ae552a25c
misc: Misc stage 2 related improvements
2022-09-17 13:53:57 +02:00
mintsuki
7f14f2f0d0
misc: Improve printing effectively on panics and errors
2022-09-17 10:40:14 +02:00
mintsuki
50b524838a
efi: Ensure panics are (hopefully) always visible
2022-09-15 13:31:42 +02:00
mintsuki
886523359c
efi/disk: Use blake2b to calculate unique sector hash
2022-09-15 12:53:47 +02:00
mintsuki
ae4605936a
misc: Minor cleanup after #216
2022-09-14 02:20:12 +02:00
mint
c1e98f26c9
Merge pull request #216 from czapek1337/blake2b
...
Implement blake2b hash function and checksum validation
2022-09-13 09:30:45 +02:00
czapek1337
9680a1ad51
uri: Add checksum validation
2022-09-13 01:14:55 +02:00
czapek1337
71eb143611
print: Specifier for printing URIs
2022-09-12 14:10:36 +02:00
mintsuki
82eb809111
elf: Fix issue where KASLR was applied to non reloc executables
2022-09-11 23:07:13 +02:00
mintsuki
3452e492bb
elf: General refactor
2022-09-11 10:05:45 +02:00
mintsuki
5566278736
textmode: Load notready() *before* setting term_{cols,rows}
2022-09-05 03:14:16 +02:00
mintsuki
86ebf0b453
term: Initial support for 256-color palette
2022-09-05 00:49:33 +02:00
mintsuki
67498a6967
term: Initial support for RGB
2022-09-04 06:39:13 +02:00
mintsuki
b2a390c4d5
misc: Update wallpaper
2022-09-04 03:57:32 +02:00
mintsuki
c44f514738
misc: Rename UEFI and BIOS define macros
2022-09-02 02:29:12 +02:00
mintsuki
27711e3c27
fs: Add case insensitive fopen() for config and system files
2022-09-02 01:12:13 +02:00
mintsuki
c528068ac7
misc: Fix improper panic() calls
2022-08-28 20:16:27 +02:00
mintsuki
07080dcbc2
misc: blib.h -> misc.h
2022-08-26 23:44:47 +02:00
mintsuki
65671d73c7
misc: Update several macros
2022-08-26 23:30:00 +02:00
mintsuki
16c5e98120
misc: Update ALIGN macros
2022-08-26 21:34:40 +02:00
mintsuki
a89b843673
Revert "bios: Get rid of self-modifying interrupt call code"
...
This reverts commit 5e0f85727a
.
2022-08-25 20:13:42 +02:00
mintsuki
fe637af458
ext: Properly follow relative symlinks
2022-08-21 00:50:12 +02:00
Kacper Słomiński
e1f6ac8860
Initial AArch64 port ( #205 )
...
* Initial aarch64 port
* Enable chainload on aarch64
No changes necessary since it's all UEFI anyway.
* Add specification for Limine protocol for aarch64
* PROTOCOL: Specify state of information in DT /chosen node
* common: Add spinup code for aarch64
* common: Port elf and term to aarch64
* common: Port vmm to aarch64
Also prepare to drop VMM_FLAG_PRESENT on x86.
* protos: Port limine boot protocol to aarch64
Also drop VMM_FLAG_PRESENT since we never unmap pages anyway.
* test: Add DTB request
* PROTOCOL: Port SMP request to aarch64
* cpu: Add cache maintenance functions for aarch64
* protos/limine, sys: Port SMP to aarch64
Also move common asm macros into a header file.
* test: Start up APs
* vmm: Unify get_next_level and implement large page splitting
* protos/limine: Map framebuffer using correct caching mode on AArch64
* CI: Fix GCC build for aarch64
* entry, menu: Replace uses of naked attribute with separate asm file
GCC does not understand the naked attribute on aarch64, and didn't
understand it for x86 in older versions.
2022-08-18 17:32:54 +02:00
mintsuki
997c787c16
term/limine: Allow overriding terminal config in entry
2022-08-14 15:09:57 +02:00
mintsuki
11b56c39f0
config: Only make keys global if before first entry
2022-08-14 14:45:20 +02:00
mintsuki
93f8d011ff
multiboot2: Fix bug where old ACPI tag would not get passed if RSDP rev == 0
2022-08-12 23:33:28 +02:00
mintsuki
e3c4fbea25
config: Remove stray include
2022-08-06 20:21:56 +02:00
mintsuki
c23eac8018
mbr: Make detection more lax. Addresses #185
2022-07-28 22:48:04 +02:00
mintsuki
85603ec8db
pmm: Simplify handling EFI memory acquisition and release
2022-07-26 08:09:50 +02:00
mintsuki
dcfef93ff6
efi: Handle cases where untouched memmap entries are lower than current base
2022-07-24 22:36:46 +02:00
mintsuki
d2b1579668
multiboot: Properly check elsewhere returns
2022-07-24 22:28:16 +02:00
mintsuki
86fc022f11
misc: Move 'verbose' declaration to lib/print.h
2022-07-18 21:14:21 +02:00
mintsuki
6eafb4fc03
build: BIOS stage2only build improvements
2022-07-18 21:02:44 +02:00
mintsuki
ffb4ba6f55
mbr: Relax MBR validation requirements. Closes #195
2022-07-16 17:32:27 +02:00
mintsuki
4dc295c9d8
misc: Fix broken memcmp()
2022-07-14 20:03:21 +02:00
mintsuki
e5e125887b
protos: Remove pointless returns added for autodetection
2022-07-13 07:40:53 +02:00
mintsuki
0af37b7cf0
fwcfg: Drop support
2022-07-13 06:23:20 +02:00
mintsuki
62c029c218
chainload: Implement MBR_ID config option. Closes #190
2022-07-11 01:30:54 +02:00
mintsuki
1ac1343059
mbr: Add extra FAT32 and NTFS signatures to validity check
2022-07-10 22:46:08 +02:00
mintsuki
5e0f85727a
bios: Get rid of self-modifying interrupt call code
2022-07-10 18:58:17 +02:00
mintsuki
7d78cf4e17
part: Also print fslabel in lsvol
2022-07-07 11:22:43 +02:00
mintsuki
eafff620d7
uri: Fix call to panic()
2022-07-07 11:18:09 +02:00
mintsuki
180eb8490a
part: Misc EBR-related bug fixes. Fixes #189
2022-07-06 03:17:11 +02:00
mintsuki
0431623381
fs: Improve layering in how the filesystem API works
2022-07-04 20:16:33 +02:00
mintsuki
51b36a79c4
config: Fix macro parsing and expansion bugs
2022-07-02 13:29:18 +02:00
mintsuki
effb82320e
config: Fix issue with configs without trailing newline
2022-07-02 12:05:56 +02:00
mintsuki
0f5a467a78
uri: Add fslabel:// URI scheme as mentioned in #188
2022-07-02 10:43:10 +02:00
mintsuki
857dcbbfe7
part: Fix broken sector count normalisation calculation
2022-07-01 18:32:18 +02:00
mintsuki
0a7c1be0bb
part: Fix implicit declaration warning
2022-07-01 17:33:59 +02:00
mintsuki
20640083d8
part: Fix long standing issue with GPT logical block sizes and implement lsvol console command
2022-07-01 17:30:53 +02:00
mintsuki
f3621c7bcc
acpi: Add EBDA address sanity checks and work around bogus GCC warning
2022-07-01 15:04:57 +02:00
mintsuki
3d65bfb9b9
misc: Misc elsewhere and multiboot-related bug fixes
2022-06-29 12:32:50 +02:00
mintsuki
215bf87993
misc: Bring mb2 up to par to mb1 wrt everywhere ranges and bug fixes
2022-06-29 10:27:04 +02:00
mintsuki
19287d5ca1
misc: Add elsewhere TU and rework mb1 to use it
2022-06-29 09:34:14 +02:00
mintsuki
e436b763c2
elf: Add elf*_load_elsewhere() functions
2022-06-29 08:16:22 +02:00
mintsuki
4e0ec6d544
elf: Undo all the mess caused by multiboot in preparation for separate functions
2022-06-29 07:48:10 +02:00
mintsuki
fba565b34e
elf: Add support for sliding and ELF ranges to ELF32 as well
2022-06-28 10:26:14 +02:00
mintsuki
27e2b84e31
elf64: Do not align ELF ranges if using paddr
2022-06-27 15:20:01 +02:00
mintsuki
b92d48e44f
multiboot(2): Initial support for arbitrary kernel load addresses
2022-06-27 10:55:57 +02:00
mintsuki
75c3585e58
build: Use binary libgcc from GCC instead of our own stubs. Closes #180
2022-06-20 04:28:59 +02:00
mintsuki
ab84448be2
multiboot2: Fix broken section list size calculation (2)
2022-06-19 00:30:01 +02:00
mintsuki
7f6ac2d135
multiboot2: Add mb2_alloc() for quirky allocation locations
2022-06-18 23:40:34 +02:00
mintsuki
5b181e10a3
term: Move notready and fallback backends to stage 2
2022-06-17 20:29:23 +02:00
mintsuki
1fc8247a86
build: Increase portability of Makefile targets
2022-06-15 03:25:36 +02:00
mintsuki
ab79b95632
elf: Load non-load sections in memory for multiboot
2022-05-29 06:03:59 +02:00
mintsuki
b11b21dfb0
fb: Expand width and height to 64-bit
2022-05-22 06:38:34 +02:00