1cfe3dd4da
Kernel: Implement AML BreakOp and ContinueOp
2024-08-15 19:08:00 +03:00
51d1e47bfe
Kernel: Fix AML CreateFieldOp to take bit index instead of byte index
2024-08-15 19:05:58 +03:00
e0a447bfaf
Kernel: Add _GL to ACPI root namespace
2024-08-15 02:28:22 +03:00
3f5ee6f414
Kernel: Rewrite the AML conversion API
...
This doesn't currently make the interpreter any better, but it will make
further implementation easier to be spec (or hardware...) compliant
2024-08-15 02:25:45 +03:00
44d5c8c4b4
Kernel: Implement AML To{Buffer,Integer,String}Op
2024-08-14 20:28:32 +03:00
17b7e9e772
Kernel: Allow all named objects to fail cleanly if name exists
2024-08-14 20:28:00 +03:00
8a2a444f33
BAN: Make formatting functions inline
2024-08-14 20:26:55 +03:00
957df08932
Kernel: root command line option can be specified as an UUID
...
Format is the same as in linux
root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
This makes it easier to boot when computer has multiple disks installed
2024-08-14 13:23:27 +03:00
fd018b32d0
BAN: Implement GUID::to_string
2024-08-14 13:23:27 +03:00
e000c7d818
BAN: Use static_cast instead of C-style cast in RefPtr deletion
2024-08-14 13:23:27 +03:00
bb40069773
Kernel: Add nice debug prints for device addition/removal
2024-08-14 13:23:27 +03:00
37d5b60f5c
Kernel: Implement AML {Event,Reset,Signal,Wait}Op
2024-08-14 11:59:34 +03:00
37e6cd6500
General: Update README contribution information
2024-08-14 10:34:41 +03:00
feadea0e91
Kernel: Fix AML unaligned integer reads and buffer shifts over 32
2024-08-13 23:44:17 +03:00
f71a29b6c4
Kernel: Implement AliasOp for AML interpreter
2024-08-13 22:42:37 +03:00
ec4cfdee23
Kernel: Fix and cleanup a lot of AML code
...
Node now have APIs to convert them to buffer, integer and string. This
allows possibility to handle methods that need explicitly use one of the
overloads instead of integer.
This patch also adds handling of DebugOp. This is used quite heavily in
uACPIs test suite.
2024-08-13 22:42:37 +03:00
dd79db6383
Kernel: AML implement CreateFieldOp
2024-08-13 18:52:48 +03:00
723e458bd7
Kernel/Terminal: Update terminal color themes and fix TTY bright/dark
2024-08-12 21:15:55 +03:00
25a47f0df3
LibC: Implement ungetc()
...
I didn't really test this, but I think this implementation does what it
needs to :)
2024-08-12 19:14:55 +03:00
39be57424c
Kernel: Fix SYS_SEEK with SEEK_END
...
I was subtracting the offset from file end when I should have added it.
2024-08-12 19:13:27 +03:00
45ffa1b79c
General: Update README feature list
...
README did not contain anything about GUI or USB which I have had for
maybe a month now :D
2024-08-12 15:14:04 +03:00
f37e1c2229
Kernel: Map .rodata as read only instead of read-write
2024-08-12 14:28:52 +03:00
1bd7b86e60
Terminal: Implement cursor blinking
...
This looks much nicer than the old static cursor
2024-08-12 14:24:17 +03:00
18e7cf2069
Terminal: Add cursor rendering
...
Cursor is now shown at the current position. It can be hidden (or shown)
with the ansi `\033[?25h` or `\033[?25l`
2024-08-12 00:50:06 +03:00
60b4d90608
LibGUI: Add Window::get_pixel()
...
This is fine as its not reading from video memory
2024-08-12 00:49:35 +03:00
5197000124
LibC: Fix qsort for types bigger than 64 bytes
2024-08-11 18:00:05 +03:00
71d4060993
Ports: Update port building instructions
2024-08-11 17:58:10 +03:00
34c6ad7277
Base: Add sample png image and make it the default GUI background
2024-08-11 01:16:23 +03:00
9e79ef2a91
Terminal: Use pseudo terminal instead of pipes
...
Terminal can now send signals from keyboard (ctrl+c) to programs running
in the terminal!
2024-08-11 01:02:59 +03:00
4d1b32f770
Kernel: open does not need TTY_INIT to set the controlling terminal
2024-08-11 01:02:59 +03:00
a5a097fa4a
Kernel/LibC: Add initial pseudo terminal support
...
This patch implements posix_openpt() and ptsname()
grantpt() and unlockpt() are left in LibC as stubs, as posix_openpt
currently does all of the needed work.
2024-08-11 01:02:59 +03:00
ad645f31d0
Kernel/LibC: Add setsid()
2024-08-11 00:58:12 +03:00
f08d429851
Terminal: Add utf8 parsing for input
...
This patch adds possibility to render multibyte utf8 codepoints!
2024-08-11 00:54:51 +03:00
bac3219a01
Kernel: Fix Pipe::can_read_impl()
...
The logic was inversed, which made all select calls report incorrectly
for pipes. This made terminal emulator just freeze.
2024-08-10 18:18:25 +03:00
09a527fb12
Kernel: Fix scheduler thread counter
...
I was actually never incrementing the counter :D
2024-08-10 18:18:25 +03:00
58a3a480b9
Ports: Update the port system once again!
2024-08-10 18:18:25 +03:00
a12bfe4639
LibC: Don't crash when calling tcflush()
2024-08-09 17:03:21 +03:00
6cda639869
LibC: Add stubs for tmpfile, mktemp and fchmod
2024-08-09 17:02:49 +03:00
2797fe116f
LibC: Add stubs for some functions in {dlfcn,ftw,utime,wchar}.h
2024-08-09 17:01:41 +03:00
e768cd53fb
LibC: Add definition for SIGWINCH
...
This is actually not yet sent, but programs can install signal handlers
for it!
2024-08-09 17:00:13 +03:00
83e2ad40d6
LibC: Implement gai_strerror and add stubs for {get,free}addrinfo
2024-08-09 16:59:49 +03:00
7ebd0699e3
LibC: Add _PC* definitions to unistd.h
...
These are not used for anything yet
2024-08-09 16:58:58 +03:00
46b1d4d194
LibC: Remove cxx abi stuff from libc
...
These will cause multiple definitions when linking with libstdc++
2024-08-09 16:58:11 +03:00
f60e265397
LibC: Add ldexp to math.cpp
2024-08-09 16:57:16 +03:00
2e642327ea
LibC: Implement localeconv()
2024-08-09 16:56:48 +03:00
a87ce41030
LibC: rename fd_set internal variable
...
binutils seems to need access to the internal type and uses this name
for lookup.
2024-08-09 16:55:52 +03:00
0c8cae4cc3
LibC: Move ioctl to <sys/ioctl.h>
...
Some ports seem to be assuming that ioctl exists there and not in
stropts.h
2024-08-09 16:54:30 +03:00
ed325b4a45
Kernel: Fix typo in userspace address validation
2024-08-09 16:52:57 +03:00
1c67b5e812
Kernel: Fix wait syscall to report status of exited children
2024-08-09 16:52:35 +03:00
b6c964c444
Kernel: Rewrite pipes
...
Pipes have now a fixed size buffer and pipe clone and close is working
again.
2024-08-09 16:50:19 +03:00