Commit Graph

3095 Commits

Author SHA1 Message Date
Bananymous 028024b0da ports: Add timidity port 2025-08-11 03:45:38 +03:00
Bananymous 4f61230506 init: Start AudioServer on boot 2025-08-11 03:45:38 +03:00
Bananymous 309ec660b6 Kernel/LibC: Implement chroot 2025-08-11 03:45:38 +03:00
Bananymous 695262624d Kernel: Fix potential UB in AML OpRegion initialization 2025-08-11 03:45:38 +03:00
Bananymous c96c264801 LibC: Implement fnmatch 2025-08-10 19:57:31 +03:00
Bananymous 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
Bananymous f41e254e35 Kernel: Fix dead lock on process exit 2025-08-10 19:57:31 +03:00
Bananymous 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
Bananymous 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
Bananymous 5b587d199e Kernel/LibC: Implement FIONREAD for tcp and udp sockets 2025-08-10 19:57:31 +03:00
Bananymous 009b073892 LibC: Add IN6_IS_ADDR_* and IN_MULTICAST macros
These are assumed to exist by some ports
2025-08-10 19:57:31 +03:00
Bananymous 92e962430b LibC: Make sockaddr and sockaddr_in compatible with other systems
sockaddr:
make sa_data is 14 bytes on all systems

sockaddr_in:
add sin_zero
2025-08-10 19:57:31 +03:00
Bananymous 3aa20a3a32 Kernel: Fix ACPI _GPE calling
This adds patch adds support for extended GPEs and the second GPE
register block.
2025-08-07 19:35:13 +03:00
Bananymous de7c3d3d29 Kernel: Don't try to create . in USTAR
Our build system adds . entry to the tar archive and it should be
handled as an no-op
2025-08-07 19:35:13 +03:00
Bananymous 3f89df338e IDT: Remove stack OOB check
This makes debugging easier when you can see the actual register values
and what is mapped and where
2025-08-07 19:35:13 +03:00
Bananymous c7f89c9b77 ports: Update SDL2 2.30.11 -> 2.32.8 2025-08-07 16:43:05 +03:00
Bananymous a107e463e8 ports/SDL2: Add audio support 2025-08-07 16:43:05 +03:00
Bananymous 7a5cfe1728 LibAudio/AudioServer: Add support for playing real time audio 2025-08-07 16:43:05 +03:00
Bananymous 7ad3f967db Kernel: Don't stop audio processing after each entry in AC97 2025-08-07 16:43:05 +03:00
Bananymous d1c814cf9d Kernel: Optimize consecutive absolute mouse move events
This is a hack to make window server usable without kvm :D
2025-08-07 16:43:05 +03:00
Bananymous 72f85dce2b Kernel: Make userspace stack on-demand allocated
Also bump the hardlimit of stack size from 512 KiB->32 MiB. This still
feels quite low but is much better than before :D
2025-08-07 16:43:05 +03:00
Bananymous f5bbcc017c Kernel: Only send one smp message when reserving a range
This was causing some kernel panic because processors ran out of smp
message storage when reserving large areas.

Also most of the time there is no need to actually send the SMP message.
If process is mapping something to just its own address space, there is
no need for a TLB shootdown. Maybe this should be only limited to kernel
memory and threads across the same process. I'm not sure what the best
approach here and it is better to send too many invalidations that too
few!
2025-08-07 16:43:05 +03:00
Bananymous 2980173c8e ports: Fix config.sub downloading 2025-08-07 16:28:09 +03:00
Bananymous a84c348045 LibC: Add shm_{open,unlink} stubs
These are needed for our llvm port
2025-08-07 16:28:09 +03:00
Bananymous d845ecc811 LibC: Add wcstok, wcstol and swprintf stubs
These are needed for our python3 port
2025-08-07 16:28:09 +03:00
Bananymous 064d9009a2 LibC: Add clock_getres stub
This is needed for our python3 port
2025-08-07 02:50:24 +03:00
Bananymous b6aa5bdfab LibC: Implement if_indextoname and if_nametoindex
These are needed for our cmake port
2025-08-07 02:50:24 +03:00
Bananymous a3bdf0456e LibC: Add getpriority stub
This is needed for our cmake port
2025-08-07 02:50:24 +03:00
Bananymous e3ecf05866 LibC: Add stubs for {get,free}ifaddrs
These are needed for our libuv port
2025-08-07 02:50:24 +03:00
Bananymous 6240374dd1 LibC: Add semaphore stubs
These are needed for our bochs port
2025-08-07 02:50:24 +03:00
Bananymous e17ee831a7 LibC: Add times stub
This is needed for our openssl port
2025-08-07 02:50:24 +03:00
Bananymous aef9bd6357 LibC: Add mk{nod,fifo}{,at} stubs
These are needed for our tcl port
2025-08-07 02:50:24 +03:00
Bananymous 8857227a35 LibC: Add getservbyname stub
This is needed by our tcl port
2025-08-07 02:50:24 +03:00
Bananymous 937250c681 userspace: Add dummy libdl
This allows ports to link against without needing to patch it out
2025-08-07 02:50:24 +03:00
Bananymous 66d3a1d025 ls: Output in columns 2025-08-07 02:50:24 +03:00
Bananymous 647fedfa19 Kernel: Add missing multiboot.h 2025-08-05 17:12:26 +03:00
Bananymous c593d3ed75 LibC: Add missing libintl.h 2025-08-05 17:10:43 +03:00
Bananymous bd885a01e5 ports/expat: Remove libtool file 2025-08-05 03:47:52 +03:00
Bananymous 628825fdff ports: Don't set CMAKE_TOOLCHAIN_FILE environment variable
This doesn't allow llvm to build native tablegen
2025-08-05 03:47:16 +03:00
Bananymous 46dd411273 LibC: fflush stdout when reading from stdin
This is the *intended behaviour* per ISO C specification
2025-08-05 03:32:59 +03:00
Bananymous 2e2ee11452 LibC: Add more reasonable values to stack size constants 2025-08-05 03:32:59 +03:00
Bananymous ce0df333b3 LibC: Make sa_data in sock_addr zero sized 2025-08-05 03:32:59 +03:00
Bananymous 8bbda78272 ports/xash3d-fwgs: Don't disable opengl and patch output
Manually link against libxash.so. My current dlopen does not support
loading ELF files that contain TLS
2025-08-05 03:32:59 +03:00
Bananymous 945509fc93 ports/mesa: Use llvm pipe instead of softpipe if llvm is compiled 2025-08-05 03:32:59 +03:00
Bananymous b586917930 ports: Add llvm port
This can be compiled before mesa to make mesa use llvmpipe instead of
softpipe. llvmpipe is at least 10x faster :D
2025-08-05 03:09:24 +03:00
Bananymous 45ad6082bc DynamicLoader: Support dlopen(NULL, ...) 2025-08-05 03:09:24 +03:00
Bananymous f27823babe Kernel: Move stacks to the top of userspace address space 2025-08-05 03:09:24 +03:00
Bananymous 95cfac471a Kernel: Rename loopback adapter lo0 -> lo 2025-08-05 03:09:24 +03:00
Bananymous f7c1084c3e Kernel: Expose boot command line in /proc/cmdline 2025-08-05 03:09:24 +03:00
Bananymous cf96bb6cc3 Kernel: Add support for multiboot
I don't know why I did it but it works now :D
2025-08-05 03:09:24 +03:00