Bananymous
24d91eee90
Kernel/LibInput: Rework Joystick handling
...
Joystick axis and buttons are now named to standard values, this allows
interfacing multiple different controllers (only DS3 is supported)
Add ioctl calls for userspace to set joystick player leds and rumble
Only use DS3 code paths when we detect that the attached device is
actually an DS3 controller
update test-joystick program to the new interface and add support to
control rumble and player leds
2026-01-07 19:01:07 +02:00
Bananymous
a5318448f5
userspace: Add audioctl utility to configure audio server
2026-01-06 22:26:11 +02:00
Bananymous
b7c40eeb57
AudioServer: Handle multiple audio devices with multiple pins
...
This makes audio server configurable during runtime!
2026-01-06 22:26:11 +02:00
Bananymous
e7c9be1875
AudioServer: Increase send buffer size and hardcode volume to 20%
2026-01-06 22:26:11 +02:00
Bananymous
8f1b314802
Kernel: Add ioctls to select audio device's output pin
2026-01-06 22:26:11 +02:00
Bananymous
e926beba5a
test-mouse: Fix mouse fd cleanup
...
I was creating a local variable shadowing the global one. This prevented
cleanup to close it. (this is not really necessary as the program dies
anyway)
2026-01-06 21:58:56 +02:00
Bananymous
3ad053cf6d
image: Add option to change resize algoritm
...
Also benchmark timing is now done cpu clock, not monotonic one
2026-01-06 21:58:56 +02:00
Bananymous
bc11469a0b
mkdir: Fix mkdir error handling
2026-01-06 21:58:56 +02:00
Bananymous
a00695bdac
LibC: Add stubs that I have locally
...
I'm not sure if these are used by anything but I would assume so as I
have added them :D
functions added:
- getprotobyname
- open_memstream
- munlock
- lockf
- nice
- crypt
- getsid
- wcstoul
2026-01-06 21:58:56 +02:00
Bananymous
89959b800c
LibC: Implement random and srandom
2026-01-06 21:58:56 +02:00
Bananymous
3e19c3b62e
LibC: Fix timeradd and timersub overflow/underflow
2026-01-06 21:58:56 +02:00
Bananymous
d970debb4d
LibC: Define MAXPATHLEN in sys/param.h
...
This file is not POSIX, but some software seems to rely on it
2026-01-06 21:58:56 +02:00
Bananymous
d0ba52073f
LibC: Add stubs for shm_* functions
2026-01-06 21:58:56 +02:00
Bananymous
943e3b6f51
LibC: Define IN_CLASS* macros
...
These are not POSIX but some software seems to rely on them
2026-01-06 21:58:56 +02:00
Bananymous
25d43682aa
LibC: Bump FOPEN_MAX 16->64
2026-01-06 21:58:56 +02:00
Bananymous
60ec5d30fd
init: Start Clipboard server on startup
...
I had forgotten to commit this when I added the clipboard server :D
2026-01-06 21:58:56 +02:00
Bananymous
7667fe6ca5
LibC: Implement sem_timedwait
2026-01-06 21:58:56 +02:00
Bananymous
7964698ae5
userspace: Add simple joystick test app
2026-01-03 20:42:42 +02:00
Bananymous
65664b0d65
Kernel: Add support for DualShock 3 controllers
...
This driver accepts any HID joystick devices but button and axis
mappings will only work on a PS3 controller
2026-01-03 20:07:08 +02:00
Bananymous
50ba743faf
Terminal: Cleanup CSI handling and add =c,>c,c,E,F
2026-01-02 17:13:46 +02:00
Bananymous
2efd6f92b2
rm: add -f and -i options
...
rm *should* now be posix compatible
2025-12-31 19:28:55 +02:00
Bananymous
0421fbdc25
LibC: Implement sem_getvalue
2025-12-28 15:29:37 +02:00
Bananymous
6fbf1469aa
LibC: define static_assert in assert.h
...
This is needed from C11 until C23
2025-12-28 00:12:03 +02:00
Bananymous
280d3fd919
LibC: Fix assert.h include guard
2025-12-28 00:12:03 +02:00
Bananymous
40ce95b87f
LibC: Add definition for TCP_MAXSEG
...
This is not implemented yet
2025-12-27 23:37:03 +02:00
Bananymous
e7d644b874
AudioServer: Fix rounding the number of samples when resampling
...
If client tried to play a single sample at lower frequency as the
kenrel, audio server would never play it leading to the client hanging
This makes calculations round the number of samples always up to fix
this
2025-12-18 16:05:28 +02:00
Bananymous
c64159d5c3
AudioServer: Fix resampling math
...
This caused resampled audio to freeze the whole audio system after few
minutes of playing (like doom)
2025-12-18 14:59:55 +02:00
Bananymous
2af6066ee3
LibC: Fix sysconf(_SC_OPEN_MAX)
2025-12-16 05:20:18 +02:00
Bananymous
fc16b5331c
LibC: Fix backtrace compilation
...
Also dump backtrace on SIGABRT
2025-12-16 05:20:00 +02:00
Bananymous
b2723a0c5f
aoc2025: Implement day12 solution
2025-12-15 19:06:17 +02:00
Bananymous
01042a24f0
aoc2025: Implement day11 solution
2025-12-15 17:57:45 +02:00
Bananymous
f9643b3881
aoc2025: Implement day10 solution
2025-12-15 14:42:03 +02:00
Bananymous
d2d18bea5d
aoc2025: Implement day9 solution
2025-12-13 03:09:15 +02:00
Bananymous
87e595b83e
aoc2025: Implement day8 solution
2025-12-12 22:37:03 +02:00
Bananymous
08031b1227
aoc2025: Implement day7 solution
2025-12-12 21:15:22 +02:00
Bananymous
9a87c1f734
aoc2025: Implement day6 solution
2025-12-12 20:17:12 +02:00
Bananymous
edeb667ead
aoc2025: Implement day5 solution
2025-12-12 06:30:03 +02:00
Bananymous
db2aa495b8
aoc2025: Implement day4 solution
2025-12-12 06:08:00 +02:00
Bananymous
ddfb591094
aoc2025: Implement day3 solution
2025-12-12 04:34:40 +02:00
Bananymous
e8f1ba3722
aoc2025: Implement day2 solution
2025-12-12 02:49:33 +02:00
Bananymous
19c4f34ccb
aoc2025: Implement day1 solution
2025-12-12 02:49:10 +02:00
Bananymous
5d9e9c021a
aoc2025: Prepare programming environment
2025-12-12 02:48:40 +02:00
Bananymous
c72b351bba
LibC: Implement glob{,free}
2025-11-23 05:33:44 +02:00
Bananymous
1f9b296ae7
cp: Add -r/--recursive flag
2025-11-23 02:25:05 +02:00
Bananymous
e3e2e7b4df
userspace: Implement mv utility
2025-11-23 02:24:52 +02:00
Bananymous
4ec8f4a4bf
Kernel/LibC: Implement rename{,at}
2025-11-22 23:55:10 +02:00
Bananymous
db7ffcf9d5
Kernel/Terminal: Add support for bracketed paste mode
...
This gets rid of annoying warnings when running some programs like bash
2025-11-18 05:40:36 +02:00
Bananymous
8f6cb9c057
Terminal: Add selection and clipboard support
...
text can now be copied with ctrl+shift+c and pasted with ctrl+shift+v
2025-11-18 05:40:36 +02:00
Bananymous
291f298d19
userspace: Implement LibClipboard and ClipboardServer
...
programs can now connect to the clipboard server using libclipboard and
get and set the clipboard of the current user
2025-11-18 05:40:36 +02:00
Bananymous
d60f12d3b8
Kernel: Add support for SCM_CREDENTIALS and fix recvmsg
...
recvmsg was broken when receiving into more than a single iovec
2025-11-18 05:40:36 +02:00