Commit Graph

2088 Commits

Author SHA1 Message Date
db7dc09844
wind: Render an actual TGA mouse cursor 2023-08-08 16:19:56 +02:00
d142969eb0
wind: Add a close button to windows using a TGA icon 2023-08-08 16:19:55 +02:00
0e24e6a79a
libui: Add support for TGA image loading 2023-08-08 16:19:55 +02:00
d7fc3356e6
libui: Add an interface to fill a Canvas with an array of pixels 2023-08-08 16:19:55 +02:00
d1b31ab6aa
wind: Add window titlebars using ui::Font 2023-08-08 16:19:55 +02:00
e72a1a3697
libui: Add PSF font loading and rendering 2023-08-08 16:19:55 +02:00
26a61a6069
libui: Add Color::GRAY 2023-08-08 16:19:55 +02:00
f87952a615
libui: Rename Rect::absolute to normalized and add a new absolute function 2023-08-08 16:19:55 +02:00
b2037e978f
libluna: Add assignment operators to Buffer 2023-08-08 16:19:55 +02:00
78763b97f8
wind: Reorder drag sequence 2023-08-08 16:19:54 +02:00
5c3b5aae85
libui: Add Rect::relative 2023-08-08 16:19:54 +02:00
2261ffb31d
libui: Remove redundant statement 2023-08-08 16:19:54 +02:00
5343903e54
libui: Add getters for separate color values 2023-08-08 16:19:54 +02:00
ae7b712792
libui: Remove unnecessary stuff 2023-08-08 16:19:54 +02:00
6fdb245759
base: Remove startup items not necessary for GUI startup 2023-08-08 16:19:54 +02:00
0fe9b63f0e
libui+wind: (Draggable) windows 2023-08-08 16:19:54 +02:00
3dbe8418a1
wind: Create a local server object 2023-08-08 16:19:54 +02:00
c5900b7663
libos: Add a new LocalServer class for local domain sockets 2023-08-08 16:19:53 +02:00
0a06978fee
kernel: Support listening sockets in poll() 2023-08-08 16:19:53 +02:00
be99376307
base: Start wind on startup instead of the shell 2023-08-08 16:19:53 +02:00
a261603655
wind: Add a simple display server skeleton using libui
No client functionality yet, but it's a start.
2023-08-08 16:19:53 +02:00
a122ff133e
libui: Add a GUI and graphics library 2023-08-08 16:19:53 +02:00
adec709fe7
kernel: Fix negative movement in the PS/2 mouse driver 2023-08-08 16:19:52 +02:00
919c71ff85
README: More features
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 16:19:38 +02:00
1caa2c0888
Update README.md
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 16:04:10 +02:00
8748364b7e
ports: Add a binutils port =D
All checks were successful
continuous-integration/drone/push Build is passing
I can't believe the fact that there is a working gas and ld on Luna. At least, for a hello world program anyway :)

objdump seems to have some problems with stack size in some cases, but apart from that, no crashes.

And that can easily be solved with either more stack preallocation or stack resizing in the kernel on page faults.
2023-08-08 16:00:31 +02:00
49662b6069
tools: Calculate the needed fs size dynamically 2023-08-08 15:43:20 +02:00
d96ff92461
libc: Add borrowed strtod implementation 2023-08-08 15:17:25 +02:00
bfb76b5625
kernel: Properly expose block device sizes with the new metadata API 2023-08-08 15:17:08 +02:00
8c13513bf4
libc: Add strcoll()
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 14:40:14 +02:00
37e9b25b62
apps: Add touch
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 14:34:58 +02:00
a92077d311
kernel+libc: Add all variants of utime
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 14:14:35 +02:00
1481a4736a
tmpfs: Update mtime on writes
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 13:36:25 +02:00
4195e7f206
kernel+libc+stat: Add support for file times
All checks were successful
continuous-integration/drone/push Build is passing
The modification time is not updated though.
2023-08-08 13:33:40 +02:00
159c05c064
libluna: Add max() and min()
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 12:39:03 +02:00
b63a8ff245
libluna: Move get_blocks_from_size to a new header and call it ceil_div instead
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 11:58:33 +02:00
917203ef11
kernel: Run the init function in a separate block to free everything before kernel_exit is called
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-08 10:44:18 +02:00
826be882a9
kernel: Interrupt syscalls before exiting because of a signal
Closes #40.
2023-08-08 10:41:46 +02:00
198935eb30
libc: Reset the read buffer even when read() returns an error
This fixes the same data being read multiple times if an error was returned
2023-08-08 10:39:15 +02:00
7c254e5e15
kernel: Properly check memory bounds in strdup_from_user()
All checks were successful
continuous-integration/drone/push Build is passing
Missed this one in 097353e779.
2023-08-08 10:27:19 +02:00
2e63b93e48
libos: Remove debug statements from Process::spawn()
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-07 22:53:37 +02:00
77ebdda2e0
libos: Add Process::spawn()
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-07 22:49:12 +02:00
097353e779
kernel: Properly check memory bounds while touching user memory
Before this patch, one byte of each page was being accessed without checking the page's permissions.
2023-08-07 22:49:00 +02:00
10c892d606
kernel: Allow null envp in execve()
As far as I know, this is not standard, but I'm doing this as a convenience for programs using exec() right after clearenv().
2023-08-07 22:48:21 +02:00
f45734c61d
kernel/ATA: Stop storing ATA::Drive in a separate shared pointer
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-07 19:22:57 +02:00
bc20e1a31b
kernel: Store FD_CLOEXEC in the file descriptor itself
All checks were successful
continuous-integration/drone/push Build is passing
Closes #39.
2023-08-03 17:47:18 +02:00
b01aa72f17
libc+init+shmem-test: Add POSIX shared memory objects
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-03 10:32:52 +02:00
d41fb85466
libluna/SharedPtr: Count references with separately created objects properly 2023-08-03 10:32:22 +02:00
5aa042a5f2
kernel: Add constructors to SharedMemory 2023-08-03 10:31:58 +02:00
f150425222
kernel: Create a new shared memory object if the old one was lost 2023-08-03 10:31:29 +02:00