Bananymous
72f3fe0b12
LibC: Add empty files sys/param.h and sys/file.h
...
For some reason some ports include these files even when they detect
that they are not available
2024-08-22 14:47:59 +03:00
Bananymous
cba12efeb1
Kernel: Ignore optional_actions in SYS_TCSETATTR
...
Currently all terminals are syncronous, so the actions don't do anything
2024-08-22 14:47:54 +03:00
Bananymous
37cd4ed504
Kernel: Add support for CSI @, b, d to VirtualTerminal
2024-08-22 14:04:45 +03:00
Bananymous
869bba4dad
Kernel: Add check for panic in timer interrupt handler
...
Previously processors would not get notified about kernel panic if they
were idling
2024-08-22 14:03:03 +03:00
Bananymous
23194d1f53
Kernel: Implement basic random device to /dev/random
2024-08-22 14:02:26 +03:00
Bananymous
969563c06a
Kernel: Don't load AP init code to 0xF000, but relocate it later
...
This cleans up the kernel executable as bootloaders don't have to
load AP init code straight to 0xF000, but it will be moved there once
kernel is doing the AP initialization.
2024-08-21 13:37:50 +03:00
Bananymous
066e8e1cc2
Kernel: Remove unnecessary debug logging from VFS initialization
2024-08-18 20:51:10 +03:00
Bananymous
5cd7b40165
Kernel: Make BananBootloader info struct header compatible with C
2024-08-18 20:51:10 +03:00
Bananymous
c7b134ba4b
Kernel: Fix NVMe controller namespace numbering
...
namespace numbers were incrementing globally instead of per controller.
This led to two single namespace controllers creating nvme0n1 and
nvme1n2
2024-08-18 20:51:10 +03:00
Bananymous
ff62c262fe
Kernel: Fix PS/2 scancode set 2 keycodes for the bottom row keys
2024-08-18 20:51:10 +03:00
Bananymous
42e2c15e0c
Kernel: Add ps2=<scancode set> command line argument
...
This allows forcing specific scancode set on broken PS/2 emulations
2024-08-18 20:51:10 +03:00
Bananymous
40c6989374
Kernel: Implement AML ObjectTypeOp
2024-08-18 20:51:10 +03:00
Bananymous
71dc373610
Kernel: "Fix" AML _OSI string to return true for windows strings
...
This is the way its supposed to be done as other code paths are
untested...
2024-08-18 20:51:10 +03:00
Bananymous
0fa16cf982
Kernel: Fix and add some AML to_underlying functions
2024-08-18 20:44:51 +03:00
Bananymous
8902032b42
BuildSystem: Cleanup kernel cmake file
2024-08-18 20:44:12 +03:00
Bananymous
368f5e9799
Kernel: Add command lineoption `nousb` that will disable usb controller
2024-08-16 22:09:24 +03:00
Bananymous
46b34817d2
snake: Remove random goto statements when regenerating apple's position
2024-08-16 17:36:37 +03:00
Bananymous
b1fe24bb57
Kernel: Hack AML integers to work better
...
Something is trying to store into a constant integers. Just by copying
not returning any integers as constants fixes it xD
2024-08-16 13:04:52 +03:00
Bananymous
490a28ee7a
Kernel/AML: General cleanup and compliance improvements
2024-08-15 23:14:13 +03:00
Bananymous
75884ca6b8
Kernel/AML: Allow calling method through named objects
2024-08-15 23:13:32 +03:00
Bananymous
d729d7f570
Kernel: Implement AML storing to Buffer
2024-08-15 23:12:52 +03:00
Bananymous
6408bb2efa
Kernel: Add AML API for getting underlying value of nodes
2024-08-15 23:11:59 +03:00
Bananymous
d8dabab4fb
Kernel: Implement AML CopyObjectOp
2024-08-15 20:55:55 +03:00
Bananymous
4dc107f77a
Kernel: Fix AML Register/Reference accesses
2024-08-15 20:55:18 +03:00
Bananymous
eaf06d239c
Kernel: Cleanup and fix AML Method calls
2024-08-15 20:54:55 +03:00
Bananymous
d9b3a4bf77
Kernel: Add more conversions for AML Integer, Register, String
2024-08-15 20:51:04 +03:00
Bananymous
cf970d5914
Kernel: Add better conversion for AML Alias, Name and Reference
2024-08-15 20:48:35 +03:00
Bananymous
1cfe3dd4da
Kernel: Implement AML BreakOp and ContinueOp
2024-08-15 19:08:00 +03:00
Bananymous
51d1e47bfe
Kernel: Fix AML CreateFieldOp to take bit index instead of byte index
2024-08-15 19:05:58 +03:00
Bananymous
e0a447bfaf
Kernel: Add _GL to ACPI root namespace
2024-08-15 02:28:22 +03:00
Bananymous
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
Bananymous
44d5c8c4b4
Kernel: Implement AML To{Buffer,Integer,String}Op
2024-08-14 20:28:32 +03:00
Bananymous
17b7e9e772
Kernel: Allow all named objects to fail cleanly if name exists
2024-08-14 20:28:00 +03:00
Bananymous
8a2a444f33
BAN: Make formatting functions inline
2024-08-14 20:26:55 +03:00
Bananymous
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
Bananymous
fd018b32d0
BAN: Implement GUID::to_string
2024-08-14 13:23:27 +03:00
Bananymous
e000c7d818
BAN: Use static_cast instead of C-style cast in RefPtr deletion
2024-08-14 13:23:27 +03:00
Bananymous
bb40069773
Kernel: Add nice debug prints for device addition/removal
2024-08-14 13:23:27 +03:00
Bananymous
37d5b60f5c
Kernel: Implement AML {Event,Reset,Signal,Wait}Op
2024-08-14 11:59:34 +03:00
Bananymous
37e6cd6500
General: Update README contribution information
2024-08-14 10:34:41 +03:00
Bananymous
feadea0e91
Kernel: Fix AML unaligned integer reads and buffer shifts over 32
2024-08-13 23:44:17 +03:00
Bananymous
f71a29b6c4
Kernel: Implement AliasOp for AML interpreter
2024-08-13 22:42:37 +03:00
Bananymous
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
Bananymous
dd79db6383
Kernel: AML implement CreateFieldOp
2024-08-13 18:52:48 +03:00
Bananymous
723e458bd7
Kernel/Terminal: Update terminal color themes and fix TTY bright/dark
2024-08-12 21:15:55 +03:00
Bananymous
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
Bananymous
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
Bananymous
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
Bananymous
f37e1c2229
Kernel: Map .rodata as read only instead of read-write
2024-08-12 14:28:52 +03:00
Bananymous
1bd7b86e60
Terminal: Implement cursor blinking
...
This looks much nicer than the old static cursor
2024-08-12 14:24:17 +03:00