b334259a07
AudioServer: Don't allow client to fully halt audio
2025-08-19 16:23:30 +03:00
74af4e9150
ports/SDL2_mixer: Add MIDI support
2025-08-19 16:23:30 +03:00
8b7790ded2
Kernel: Fix userspace pointer checks
...
Some syscalls were unconditionally validating optional paramenters which
were allowed to be null pointers
2025-08-19 16:23:30 +03:00
3e97a82af0
Kernel: Allow getgroups with size
...
This can be used to query the number of groups
2025-08-19 16:23:30 +03:00
0066b20413
Kernel: Fix spinlock leaks with unix sockets
2025-08-19 16:23:30 +03:00
9d6656451a
LibC: Make time_t signed integer
...
Some port like python3 assumes this is the case
2025-08-19 16:23:30 +03:00
32f980e259
Kernel: Fix ACPI namespace lookup for multi segment names
2025-08-19 16:23:30 +03:00
ca9361abc1
DynamicLoader: Add support for dladdr
2025-08-19 16:23:30 +03:00
36cb3d56fe
LibC: Define Dl_info_t and add stub for dladdr
2025-08-19 16:23:30 +03:00
0bece8a54c
Kernel: Add missing ACPI resource header
2025-08-19 16:23:30 +03:00
70bbdbd8f5
LibC: Cleanup syslog output
...
add ": " after the identification and formatted output. syslog does not
require trailing newline so add it in case it is missing.
2025-08-16 22:56:03 +03:00
df8365f0c7
ports/openssh: Configure with --disable-fd-passing
...
I though this wasn't needed because of my patch, but I didn't actually
test the code
2025-08-16 22:55:53 +03:00
974aae2ebe
ports: Add openssh port
2025-08-16 22:32:37 +03:00
ceca93c8b1
LibC: Cleanup memmove and memcpy for x86_64
2025-08-16 14:05:21 +03:00
b6793cc6f2
Kernel: Add AML ConcatResOp
2025-08-15 18:54:17 +03:00
809d07546a
Kernel: Remove minimum timeout of 100 ms from epoll
...
This is not actually needed and was just temporary code to make sure i
notified the epoll everywhere
2025-08-15 18:28:11 +03:00
804cbeb1a7
Kernel: Increment kmalloc storage size to 64 MiB
...
I really don't want to do this, but rewriting kmalloc to be dynamic
would require me to rewrite 32 bit paging and I really don't want to.
2025-08-15 17:02:15 +03:00
c07188a60e
Kernel: Look for PS/2 devices in the ACPI namespace
...
This allows finding the PS/2 controller on newer machines that don't
have the 8042 bit set in FADT.
2025-08-15 17:02:15 +03:00
3804d4332b
Kernel: Make _SEG, _BBN and _ADR lookup absolute
2025-08-15 17:02:15 +03:00
064aaef6c3
Kernel: Don't fail on creating reserved opregion
2025-08-15 17:02:15 +03:00
ce262a5d2d
Kernel: Allow ReturnOp in global scope
2025-08-15 17:02:15 +03:00
d128f4d70b
Kernel: Fix AML CreateField debug print
2025-08-15 17:02:15 +03:00
46d1ada708
Kernel: Allow AML package->package conversion
2025-08-15 17:02:15 +03:00
2819e5f647
Kernel: Make _STA and _INI lookup absolute
2025-08-15 17:02:15 +03:00
c2017a5181
Kernel: Allow looking up devices with multiple eisa ids
...
Also match against _CIDs in addition to _HID
2025-08-15 17:02:15 +03:00
58ad839136
Kernel: Add support for ACPI Embedded Controllers
2025-08-15 17:02:15 +03:00
8ed5a71c45
Kernel: Register IDT handlers from a vector
...
This drops code size by a lot :D
2025-08-13 18:27:46 +03:00
57050a83ba
ports/timidity: Fix compilation
...
Precalculating newton coefficients does not work as the buildsystem
tries to run a banan-os binary. This patch enables coefficient
calculation code for the runtime!
2025-08-13 12:20:21 +03:00
6ed0e84421
LibC: Fix mktime argument updating
2025-08-11 19:00:23 +03:00
9b09d2b47a
LibC: Update struct tm to be POSIX issue 8 compliant
2025-08-11 18:59:20 +03:00
1a6c5deb4b
LibC: Add {AF,PF}_LOCAL as aliases to {AF,PF}_UNIX
2025-08-11 18:48:24 +03:00
45a73b00de
LibC: Make glob_t a typedef
2025-08-11 18:47:55 +03:00
59fff26a5f
LibC: Remove our iconv.h header and add libiconv port
...
If I ever end up writing my own iconv, i will drop the port :D
2025-08-11 18:46:15 +03:00
fde4d4662e
LibC: Implement getopt_long{,_only}
...
Few ports attempt to use this so lets add them :D
2025-08-11 18:36:46 +03:00
c9355ad94a
BuildSystem: Fix file permission bits on image creation
...
If a file had setuid/setgid/sticky bits set, they were not copied to the
sysroot
2025-08-11 14:48:57 +03:00
bad3b8b3e2
ports/binutils: Fix compilation when zstd is installed
...
binutils uses pkg-config to find zstd for the host when building. If our
zstd port is installed, it finds it instead and ends up including our
own sysroot which is incompatible with host's.
unsetting pkg-config related variables fixes this and allows binutils to
build fine even when zstd is installed. We can now make it a dependency.
2025-08-11 14:07:37 +03:00
0b81bb9b10
ports/quake2: Use SDL2 instead of our own frontend
2025-08-11 14:07:37 +03:00
f61c78efd5
ports/tinygb: Use SDL2 instead of our own frontend
2025-08-11 14:07:37 +03:00
6b2307ab22
ports/doom: Use SDL2 instead of our own frontend
...
This allows doom to play sounds!
2025-08-11 14:07:37 +03:00
9ccb381c31
ports: Add SDL2_mixer port
...
This allows some ports to use audio :D
I did not port any audio libraries so loading sounds probably doesn't
work :D
2025-08-11 14:07:37 +03:00
71133236f8
ports: Add timidity port
2025-08-11 14:07:37 +03:00
e5786fe435
init: Start AudioServer on boot
2025-08-11 14:07:37 +03:00
ef6ee78fd1
Kernel/LibC: Implement chroot
2025-08-11 14:07:37 +03:00
695262624d
Kernel: Fix potential UB in AML OpRegion initialization
2025-08-11 03:45:38 +03:00
c96c264801
LibC: Implement fnmatch
2025-08-10 19:57:31 +03:00
af0bca74e4
Kernel/LibC: Implement {get,set,init}groups
...
This allows dropping /etc/group parsing from the kernel :D
2025-08-10 19:57:31 +03:00
f41e254e35
Kernel: Fix dead lock on process exit
2025-08-10 19:57:31 +03:00
7e472a9c1d
Kernel: Fix USB FS device default max packet size
...
Apparently this is a common non spec compliant issue on many
controllers/devices.
thanks @sasdallas
2025-08-10 19:57:31 +03:00
ee3f10313a
BuildSystem: Flip USB_ARGS and DISK_ARGS in qemu.sh
...
This allows attaching usb disk :D
2025-08-10 19:57:31 +03:00
5b587d199e
Kernel/LibC: Implement FIONREAD for tcp and udp sockets
2025-08-10 19:57:31 +03:00