ce990c3026
AOC2023: Implement day20 part1
2023-12-24 13:39:26 +02:00
4146f2777b
AOC2023: Implement 10 hour solution to day19 part2
2023-12-23 20:53:50 +02:00
64323c51e6
AOC2023: Implement day19 part 1
2023-12-23 18:47:44 +02:00
a0200a7b10
AOC2023: Implement day18 part 1
2023-12-23 18:47:21 +02:00
8add759b5d
AOC2023: Implement day17 part1
2023-12-23 18:46:43 +02:00
2faf90bc2b
AOC2023: Add script to create day template and download input
2023-12-23 18:46:14 +02:00
762d575d70
AOC2023: Add program to run all days
2023-12-23 18:45:40 +02:00
3b21cc90ae
AOC2023: Add helper for downloading puzzle input
2023-12-19 22:22:31 +02:00
4e900804b8
AOC2023: Implement day16
2023-12-19 22:22:16 +02:00
9ec733904f
AOC2023: Implement day15
2023-12-19 21:42:59 +02:00
f46240e879
AOC2023: Implement day14
2023-12-19 02:49:48 +02:00
68627995f8
AOC2023: Implement day13
2023-12-19 01:25:23 +02:00
d273c5e77c
rm: Use remove instead of unlink for removing files
2023-12-14 11:03:58 +02:00
8344f2f9ab
AOC2023: Fix day3 implementation
...
I accidently broke my day3 when messing with signed/unsigned integers
2023-12-14 11:03:19 +02:00
862993398d
AOC2023: Implement day12
...
There seems to be a problem with my malloc so the hash map is not
working. This code worked fine on my linux with actually working
malloc :D
2023-12-14 10:51:48 +02:00
225c7c6ab4
AOC2023: Implement day11
2023-12-11 14:36:33 +02:00
58633ca373
AOC2023: Remove unnecessary loop
2023-12-10 20:18:59 +02:00
00d57d783e
LibC+userspace: Make everything compile with -Wall -Wextra -Werror
...
I added -Wall -Wextra -Werror as public compile flags to libc. Now
everything in userspace in compiled using these flags. I made all
necessary changes to allow compilation to work.
Only exception is execvp which has a large stack usage. Maybe it
should use malloc for the buffer but posix allows ENOMEM only when
kernel is out of memory... This can be fixed when fexecve is
implemented and there is no need for absolute path.
2023-12-10 19:20:14 +02:00
f077e17b2a
AOC2023: Implement day10
2023-12-10 18:28:04 +02:00
a6bfbbf655
ls: Rewrite whole program for cleaner output
...
ls -l now sorts elements and aligns them by columns.
2023-12-10 01:05:12 +02:00
c273bf98c9
ls+stat: show setuid, setgid and sticky bits
2023-12-09 19:43:25 +02:00
99a5b6e2ef
AOC2023: Cleanup day9 code
...
Move tree building to its own function. Both parts can use the same
tree. This also decreaseas memory usage by one element by row :D
2023-12-09 19:08:13 +02:00
0c3e5980d6
AOC2023: Implement day9
2023-12-09 16:22:43 +02:00
2b927b9729
BAN: Restructure sort functions and namespaces
2023-12-08 18:58:47 +02:00
b523ccb893
AOC2023: Implement day8
...
Second part was kinda weird. You are supposted to assume something
of the input, which necessarily is not true.
2023-12-08 17:13:20 +02:00
7bb3172591
AOC2023: Use the default sort algorithm
2023-12-08 00:10:59 +02:00
3bc7113cc5
sudo: fix some typos
2023-12-07 14:05:17 +02:00
24243268a6
Shell: do path resolution only if command doesn't contain '/'
2023-12-07 13:34:46 +02:00
669d55707e
AOC2023: Use quick sort in solution
2023-12-07 11:55:28 +02:00
6caa9b6f95
BAN: implement quick sort and test for it
2023-12-07 11:55:28 +02:00
43458cc74f
BAN: implement exchange sort and test for it
2023-12-07 11:55:28 +02:00
536bb74d53
AOC2023: optimize hand score calculation
2023-12-07 09:26:17 +02:00
efd8be8207
AOC2023: implement day7
2023-12-07 07:56:56 +02:00
06a84da844
Userspace: Implement barebones sudo
...
This doesn't do any password checking or anything. Just sets uid and
gid before execvp()
2023-12-06 18:15:42 +02:00
ff8b3be8dc
Userspace: implement basic sleep command
2023-12-06 13:05:53 +02:00
56008869d6
Shell: Handle keyboard input that was interrupted by signal
2023-12-06 13:04:33 +02:00
531211e09d
AOC2023: implement day6
2023-12-06 07:27:25 +02:00
82cb2ea20b
AOC2023: implement day5
2023-12-05 09:13:13 +02:00
622007f2ee
Shell: Verify that command exists before executing it
...
This prevents page fault somewhere when executing non-existing
commands.
2023-12-04 22:57:27 +02:00
cf76d2e7d9
AOC2023: remove unnecessary loop
2023-12-04 17:54:10 +02:00
41f8974080
AOC2023: implement day4
2023-12-04 17:51:27 +02:00
3ed25425a3
AOC2023: implement day3
...
Solution to second puzzle is not optimal, it definately should be
O(1) space, but I didn't want to think about it.
2023-12-03 17:07:09 +02:00
49f8c4268f
AOC2023: implement day2
2023-12-02 16:10:37 +02:00
70c224d8ea
AOC2023: Cleanup day1 code
2023-12-01 13:31:55 +02:00
6a7335e5c9
AOC2023: implement day1
2023-12-01 12:38:01 +02:00
3aaa755c51
AOC2023: update buildsystem
2023-12-01 12:38:01 +02:00
dabd79afa7
Userspace: Prepare aoc2023 environment :)
2023-12-01 01:22:53 +02:00
6ccb1bbbf9
init: set default termios on every username prompt
...
Before if e.g. Shell crashed init would have broken termios
2023-12-01 01:22:53 +02:00
8564b59e14
image: Remove inheritance from Netbpm
...
This inheritance made no sense
2023-11-29 20:56:05 +02:00
327b330338
Kernel: Make internal framebuffer bpp constexpr defined in libc
2023-11-29 20:07:33 +02:00