991ae4383a
Kernel/LibC: Implement fchmod
2024-08-25 15:07:42 +03:00
2ce7205c80
Kernel: Add command line option to disable debug printing
...
The whole system can crash when debug output and tty output are done at
the same time. This patch is just a hack to prevent the crash :D
2024-08-25 15:02:15 +03:00
bec3e8654f
Shell: Implement escaping quotes in quoted strings
2024-08-24 17:13:50 +03:00
14fdcb892d
Ports: Make curl port use openssl
...
Curl now works with https!
2024-08-22 15:10:41 +03:00
d6d062841d
Ports: Add openssl port
2024-08-22 15:10:41 +03:00
06d0985bba
Ports: Add zlib port
2024-08-22 15:10:41 +03:00
9ea969be1f
Ports: Add port that downloads and install cacert to system
2024-08-22 15:10:41 +03:00
500f774b7f
LibC: Add a lot of stub implementations for different libc functions
...
some ports want to link against these, but they are not ever called
based on simple testing
This patch adds stubs for
- openlog
- syslog
- getrusage
- mlock
- mprotect
- getpeername
- shutdown
- tzset
- mktime
2024-08-22 15:10:41 +03:00
ca8832c0e1
LibC: Implement getaddrinfo and freeaddrinfo, add stub for getnameinfo
2024-08-22 15:10:41 +03:00
1cbba113fd
LibC: Add and cleanup some networking structures and definitions
2024-08-22 15:10:41 +03:00
45b4b33a3d
LibC: Add definitions for some integer sizes to limits.h
2024-08-22 15:10:41 +03:00
c453a8e2dc
LibC: Implement poll() using select
2024-08-22 15:10:41 +03:00
e59772a58d
General: Cleanup build scripts
2024-08-22 15:10:41 +03:00
fb35f06cf5
Kernel: Add better support for bootloaders loading the kernel
...
Before I assumed that bootloaders loaded the kernel at physical address
0, but this patch kinda allows loading to different addresses. This
still doesn't fully work as kernel bootstrap paging relies on kernel
being loaded at 0
2024-08-22 14:48:21 +03:00
abc788c756
Kernel: Improve output message when dumping all syscalls
2024-08-22 14:48:21 +03:00
63b616dc2e
Kernel: Hack non-blocking support for sockets
...
This is not thread safe and can still block if two programs refering to
the same socket try to read data at the same time
2024-08-22 14:48:14 +03:00
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
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
37cd4ed504
Kernel: Add support for CSI @, b, d to VirtualTerminal
2024-08-22 14:04:45 +03:00
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
23194d1f53
Kernel: Implement basic random device to /dev/random
2024-08-22 14:02:26 +03:00
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
066e8e1cc2
Kernel: Remove unnecessary debug logging from VFS initialization
2024-08-18 20:51:10 +03:00
5cd7b40165
Kernel: Make BananBootloader info struct header compatible with C
2024-08-18 20:51:10 +03:00
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
ff62c262fe
Kernel: Fix PS/2 scancode set 2 keycodes for the bottom row keys
2024-08-18 20:51:10 +03:00
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
40c6989374
Kernel: Implement AML ObjectTypeOp
2024-08-18 20:51:10 +03:00
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
0fa16cf982
Kernel: Fix and add some AML to_underlying functions
2024-08-18 20:44:51 +03:00
8902032b42
BuildSystem: Cleanup kernel cmake file
2024-08-18 20:44:12 +03:00
368f5e9799
Kernel: Add command lineoption nousb that will disable usb controller
2024-08-16 22:09:24 +03:00
46b34817d2
snake: Remove random goto statements when regenerating apple's position
2024-08-16 17:36:37 +03:00
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
490a28ee7a
Kernel/AML: General cleanup and compliance improvements
2024-08-15 23:14:13 +03:00
75884ca6b8
Kernel/AML: Allow calling method through named objects
2024-08-15 23:13:32 +03:00
d729d7f570
Kernel: Implement AML storing to Buffer
2024-08-15 23:12:52 +03:00
6408bb2efa
Kernel: Add AML API for getting underlying value of nodes
2024-08-15 23:11:59 +03:00
d8dabab4fb
Kernel: Implement AML CopyObjectOp
2024-08-15 20:55:55 +03:00
4dc107f77a
Kernel: Fix AML Register/Reference accesses
2024-08-15 20:55:18 +03:00
eaf06d239c
Kernel: Cleanup and fix AML Method calls
2024-08-15 20:54:55 +03:00
d9b3a4bf77
Kernel: Add more conversions for AML Integer, Register, String
2024-08-15 20:51:04 +03:00
cf970d5914
Kernel: Add better conversion for AML Alias, Name and Reference
2024-08-15 20:48:35 +03:00
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