6404d01a5e
libui: Properly cut off the last drawn character if necessary
2023-08-08 16:19:56 +02:00
a510c58de0
libui: Add Rect::contains(Rect)
2023-08-08 16:19:56 +02:00
632252e1d1
libui: Render font characters properly with no spacing, matching the width calculations
2023-08-08 16:19:56 +02:00
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
continuous-integration/drone/push Build is passing
2023-08-08 16:19:38 +02:00
1caa2c0888
Update README.md
continuous-integration/drone/push Build is passing
2023-08-08 16:04:10 +02:00
8748364b7e
ports: Add a binutils port =D
...
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()
continuous-integration/drone/push Build is passing
2023-08-08 14:40:14 +02:00
37e9b25b62
apps: Add touch
continuous-integration/drone/push Build is passing
2023-08-08 14:34:58 +02:00
a92077d311
kernel+libc: Add all variants of utime
continuous-integration/drone/push Build is passing
2023-08-08 14:14:35 +02:00
1481a4736a
tmpfs: Update mtime on writes
continuous-integration/drone/push Build is passing
2023-08-08 13:36:25 +02:00
4195e7f206
kernel+libc+stat: Add support for file times
...
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()
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
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
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()
...
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()
continuous-integration/drone/push Build is passing
2023-08-07 22:53:37 +02:00
77ebdda2e0
libos: Add Process::spawn()
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
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
...
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
continuous-integration/drone/push Build is passing
2023-08-03 10:32:52 +02:00