Bananymous 
							
						 
						
							
								a584e1a4ec 
								
							 
						 
						
							
							
								
								aoc2024: Implement day17 solution  
							
							
							
						 
						
							2024-12-17 23:30:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								869f4011a1 
								
							 
						 
						
							
							
								
								Kernel: Replace the old AML interpreter by a new, better one  
							
							... 
							
							
							
							The old AML interpreter was trash and did not follow value/reference
semantics at all. It was also super slow, one of my machines taking over
7 seconds to parse ACPI namespace and call _INI and _STA. 
							
						 
						
							2024-12-17 03:36:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								463bb72d24 
								
							 
						 
						
							
							
								
								aoc2024: Implement day16 solution  
							
							
							
						 
						
							2024-12-16 17:23:08 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8b312a47e6 
								
							 
						 
						
							
							
								
								BAN: Allow MUST and TRY to contain commas  
							
							
							
						 
						
							2024-12-16 17:22:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								46d4e32510 
								
							 
						 
						
							
							
								
								Kenrel: Validate inode open mode on read/write syscalls  
							
							
							
						 
						
							2024-12-15 20:49:12 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1815a913c3 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary hash map lookups  
							
							
							
						 
						
							2024-12-15 20:47:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a7e06715ba 
								
							 
						 
						
							
							
								
								aoc2024: Implement day15 solution  
							
							
							
						 
						
							2024-12-15 20:45:57 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a89fd95864 
								
							 
						 
						
							
							
								
								aoc2024: Implement day14 solution  
							
							
							
						 
						
							2024-12-14 23:52:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9ba9469bb1 
								
							 
						 
						
							
							
								
								aoc2024: Optimize day12  
							
							... 
							
							
							
							There is actually no need for hash maps 
							
						 
						
							2024-12-14 03:58:11 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4dbf173ed4 
								
							 
						 
						
							
							
								
								aoc2024: Implement day13 solution  
							
							
							
						 
						
							2024-12-14 03:17:55 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8936cca9cf 
								
							 
						 
						
							
							
								
								aoc2024: Implement day12 solution  
							
							
							
						 
						
							2024-12-12 17:03:31 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1c704680a8 
								
							 
						 
						
							
							
								
								aoc2024: Implement day11 solution  
							
							... 
							
							
							
							Finally we got a problem where trivial solution does not work 
							
						 
						
							2024-12-11 09:05:52 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3e36834751 
								
							 
						 
						
							
							
								
								aoc2024: Implement day10 solution  
							
							
							
						 
						
							2024-12-10 17:26:39 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								581caff638 
								
							 
						 
						
							
							
								
								BuildSystem: Install base sysroot only once  
							
							... 
							
							
							
							Base sysroot is not only installed when creating the syroot directory
for the first time. To get it installed again, you have to either delete
the old sysroot diretory or run clean target
This makes it so its actually possible to edit files specified in the
base sysroot without random hacks. 
							
						 
						
							2024-12-10 16:44:59 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8b612ba547 
								
							 
						 
						
							
							
								
								aoc2024: Implement day9 solution  
							
							... 
							
							
							
							part2 is kinda unoptimized, it should not use expanded input, but I did
not feel like rewriting my parsing code :) 
							
						 
						
							2024-12-09 16:20:21 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								90820f24a4 
								
							 
						 
						
							
							
								
								BAN: Make HashMap::{insert,emplace}{,_or_assign} return an iterator  
							
							... 
							
							
							
							This reduces the number of lookups done into the hash map :) 
							
						 
						
							2024-12-09 03:37:13 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								12a37500b0 
								
							 
						 
						
							
							
								
								Kernel: Fix triple-fault in vitual tty  
							
							... 
							
							
							
							This was happening when printing non-utf8 data while having virtual tty
as the debug console. 
							
						 
						
							2024-12-09 03:35:51 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3ae6ffdb01 
								
							 
						 
						
							
							
								
								ports/tcc: Create usr/include/sys/ucontext.h  
							
							... 
							
							
							
							This file does not have to contain anything, tcc just requires that it
exists. 
							
						 
						
							2024-12-08 20:42:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c4e76b391e 
								
							 
						 
						
							
							
								
								aoc2024: Implement day8 solution  
							
							... 
							
							
							
							I did not feel like optimizing this one, so its a O(n^2) looking over
every cell in the grid. Performs way faster than my optimized day6
solution tho :DD 
							
						 
						
							2024-12-08 16:14:39 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cf9ba737f0 
								
							 
						 
						
							
							
								
								aoc2024: Implement day7 solution  
							
							
							
						 
						
							2024-12-07 07:34:21 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2d0690ae2d 
								
							 
						 
						
							
							
								
								Kernel: Cleanup most of syscalls dealing with files  
							
							
							
						 
						
							2024-12-07 05:33:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								71a2d0971f 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary reverse from VFS file search  
							
							
							
						 
						
							2024-12-07 01:41:23 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3bf57e0748 
								
							 
						 
						
							
							
								
								Kernel: Add . and .. entries to /proc/<pid> directories  
							
							... 
							
							
							
							This allows to run `cd ..` in one of these directories 
							
						 
						
							2024-12-07 01:37:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fbc0319cb6 
								
							 
						 
						
							
							
								
								aoc2024: Implement day6 solution  
							
							
							
						 
						
							2024-12-07 01:08:08 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e8bc3c2d80 
								
							 
						 
						
							
							
								
								General: Add intructions to run doom to README  
							
							
							
						 
						
							2024-12-06 20:25:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fe192e07fb 
								
							 
						 
						
							
							
								
								General: Update README feature list  
							
							
							
						 
						
							2024-12-05 19:49:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								51b6329c86 
								
							 
						 
						
							
							
								
								Kernel: Make backspace \b and delete 0x7F  
							
							... 
							
							
							
							This is what `vim` seems to expect and imo makes way more sense. 
							
						 
						
							2024-12-05 17:34:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								72d9e4c1e7 
								
							 
						 
						
							
							
								
								Kernel: Remove accidental debug prints from fcntl syscall  
							
							
							
						 
						
							2024-12-05 17:34:32 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cb7d5c9d09 
								
							 
						 
						
							
							
								
								userspace: Implement `dirname` utility  
							
							
							
						 
						
							2024-12-05 08:30:30 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								097ab82529 
								
							 
						 
						
							
							
								
								userspace: Implement `basename` utility  
							
							
							
						 
						
							2024-12-05 08:30:06 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ccb603d77f 
								
							 
						 
						
							
							
								
								aoc2024: Implement day5 solution  
							
							
							
						 
						
							2024-12-05 08:16:34 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d7b02db832 
								
							 
						 
						
							
							
								
								aoc2024: Implement day4 solution  
							
							
							
						 
						
							2024-12-05 08:16:12 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								56cc5da9fb 
								
							 
						 
						
							
							
								
								userspace: Implement `ln` utility  
							
							
							
						 
						
							2024-12-05 08:14:45 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1903079f96 
								
							 
						 
						
							
							
								
								LibC: Fix popen to return correct return value instead of -1  
							
							
							
						 
						
							2024-12-05 06:47:10 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b6d0950ee9 
								
							 
						 
						
							
							
								
								LibC: Fix strftime implementation  
							
							... 
							
							
							
							This implementation now passes every musl-libc test :) 
							
						 
						
							2024-12-05 06:46:31 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c1a32a4041 
								
							 
						 
						
							
							
								
								LibC: Implement mktime  
							
							
							
						 
						
							2024-12-05 06:43:35 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8fa443879c 
								
							 
						 
						
							
							
								
								ports: Add working tcc port!  
							
							... 
							
							
							
							You can actually now compile programs within banan-os!! 
							
						 
						
							2024-12-04 21:23:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3a465cb94f 
								
							 
						 
						
							
							
								
								DynamicLoader: Don't write to pltgot if it does not exist  
							
							... 
							
							
							
							This makes `tcc` compile runnable executables 
							
						 
						
							2024-12-04 21:11:43 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								49133dce48 
								
							 
						 
						
							
							
								
								Kernel: Make pipe check data every 100ms  
							
							... 
							
							
							
							This prevents dead lock if read-end does not detect data before blocking
why write-end already notified. 
							
						 
						
							2024-12-03 21:54:27 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3b7b6beca5 
								
							 
						 
						
							
							
								
								ports: Allow using banan-os cmake toolchain file for ports  
							
							
							
						 
						
							2024-12-03 20:29:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0dd81328ff 
								
							 
						 
						
							
							
								
								ports: Unconditionally compile banan-os before building ports  
							
							... 
							
							
							
							This allows ports to use any banan-os library cleanly. Ninja is fast on
when everything is already compiled, so it doesn't add too much
overhead. 
							
						 
						
							2024-12-03 20:29:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a668593e6b 
								
							 
						 
						
							
							
								
								ports: Don't update ports on every build  
							
							... 
							
							
							
							This makes using ports much less painful :) 
							
						 
						
							2024-12-03 20:29:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3a5a22511a 
								
							 
						 
						
							
							
								
								aoc2024: Implement day3 solution  
							
							
							
						 
						
							2024-12-03 20:29:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								86859267f0 
								
							 
						 
						
							
							
								
								ports/curl: remove libcurl.la file and use /dev/urandom  
							
							
							
						 
						
							2024-12-03 20:29:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								88c9f6d233 
								
							 
						 
						
							
							
								
								LibC: Make environ a weak alias  
							
							... 
							
							
							
							If user program defines its own global `environ` variable it will still
work :) 
							
						 
						
							2024-12-03 20:29:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								176693dd5a 
								
							 
						 
						
							
							
								
								LibC: Implement wcscmp and wcsncmp  
							
							
							
						 
						
							2024-12-03 16:21:54 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								62bee04fc0 
								
							 
						 
						
							
							
								
								LibC: Implement dummy utime that just checks file existance  
							
							
							
						 
						
							2024-12-03 16:21:18 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0a5aacfd87 
								
							 
						 
						
							
							
								
								Kernel: Allow open with O_CREAT bypass file permission checks  
							
							... 
							
							
							
							call to open(path, O_CREAT|O_EXCL|O_RDWR, 0444) should open file as
read-write although file is created as read-only on filesystem. 
							
						 
						
							2024-12-03 16:17:34 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2dec3a6c95 
								
							 
						 
						
							
							
								
								Kernel: Add some sanity checks for existanse of threads  
							
							
							
						 
						
							2024-12-03 16:16:50 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fcc2814199 
								
							 
						 
						
							
							
								
								Kernel: Remove process from alarm list after it dies  
							
							
							
						 
						
							2024-12-03 16:16:08 +02:00