Bananymous 
							
						 
						
							
								e447d5fccf 
								
							 
						 
						
							
							
								
								All: remove obsolete gitignore files  
							
							... 
							
							
							
							These have not been in use for almost a year 
							
						 
						
							2024-03-18 15:28:46 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9c36d7c338 
								
							 
						 
						
							
							
								
								BAN/Kernel: Rework assertion/panic system  
							
							... 
							
							
							
							BAN/Assert.h does not need any includes meaning it can be included
anywhere without problems. 
							
						 
						
							2024-03-04 11:41:54 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ac9e71d9c7 
								
							 
						 
						
							
							
								
								LibC: Fix parsing mode from string  
							
							
							
						 
						
							2024-02-20 13:25:24 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								915dea01c9 
								
							 
						 
						
							
							
								
								LibC: fix printf %e for inf/nan values  
							
							
							
						 
						
							2024-02-16 15:34:24 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								566bb73897 
								
							 
						 
						
							
							
								
								LibC: Implement ato* and strto* functions for floating point numbers  
							
							
							
						 
						
							2024-02-16 15:28:52 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1b24c4f279 
								
							 
						 
						
							
							
								
								LibC: Implement strtou{l,ll}  
							
							
							
						 
						
							2024-02-15 12:25:56 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a5a041e637 
								
							 
						 
						
							
							
								
								LibC: Remove cast from S_* macros so they can be used in preprocessor  
							
							
							
						 
						
							2024-02-15 12:20:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								373d166076 
								
							 
						 
						
							
							
								
								LibC: Implement ato{i,l,ll} and strto{l,ll}  
							
							
							
						 
						
							2024-02-14 22:35:23 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1ba883719a 
								
							 
						 
						
							
							
								
								LibC: Implement popen and pclose  
							
							
							
						 
						
							2024-02-14 17:22:45 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								de629291b9 
								
							 
						 
						
							
							
								
								LibC: Implement freopen, rewind and fix bugs in code  
							
							... 
							
							
							
							Now everything will be properly locked once threads are implemented.
All functions "lock" the stream for the wanted operation 
							
						 
						
							2024-02-14 16:36:48 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4cd9abdd15 
								
							 
						 
						
							
							
								
								LibC: Implement getopt()  
							
							
							
						 
						
							2024-02-14 15:00:58 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								198dde8365 
								
							 
						 
						
							
							
								
								Kernel: Add klibc for kernel  
							
							... 
							
							
							
							Now building same source as libc is not needed and libc doesn't
have to do hacks to allow kernel compilation 
							
						 
						
							2024-02-14 15:00:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b56fa4a29d 
								
							 
						 
						
							
							
								
								LibC: Implement fscanf  
							
							... 
							
							
							
							I had missed this when I was implementing *scanf functions 
							
						 
						
							2024-02-14 14:39:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e946b392c9 
								
							 
						 
						
							
							
								
								LibC: Add definition for S_IFMT  
							
							... 
							
							
							
							I was using S_IFMASK, but linux seems to use this 
							
						 
						
							2024-02-14 14:39:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								81689b5f02 
								
							 
						 
						
							
							
								
								LibC: Implement most of missing functions from string.h  
							
							... 
							
							
							
							only strcoll*, strxfrm* and strerror_l are left unimplemented 
							
						 
						
							2024-02-14 14:39:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c18d926174 
								
							 
						 
						
							
							
								
								LibC: Fix timeval field name  
							
							
							
						 
						
							2024-02-14 03:36:18 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9314528b9b 
								
							 
						 
						
							
							
								
								Kernel: Improve syscall handling  
							
							... 
							
							
							
							Syscalls are now called from a list of function pointers 
							
						 
						
							2024-02-12 21:51:11 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3fc1edede0 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement super basic select  
							
							... 
							
							
							
							This does not really even block but it works... :D 
							
						 
						
							2024-02-12 17:26:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6fb69a1dc2 
								
							 
						 
						
							
							
								
								LibC: Implement inet_ntop for IPv4 addresses  
							
							
							
						 
						
							2024-02-08 11:59:11 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								454bee3f02 
								
							 
						 
						
							
							
								
								LibC: Fix sockaddr_un implementation  
							
							
							
						 
						
							2024-02-07 15:57:45 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								41cad88d6e 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement dummy syscalls for accept, connect, listen  
							
							
							
						 
						
							2024-02-07 15:57:45 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f804e87f7d 
								
							 
						 
						
							
							
								
								Kernel: Implement basic gateway for network interfaces  
							
							
							
						 
						
							2024-02-05 18:18:56 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c35ed6570b 
								
							 
						 
						
							
							
								
								LibC: Implement endiannes and ip address functions  
							
							
							
						 
						
							2024-02-05 18:18:56 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								692cec8458 
								
							 
						 
						
							
							
								
								Kernel/Userspace/LibC: Implement basic dprintln for userspace  
							
							
							
						 
						
							2024-02-05 01:24:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e1ffbb710b 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement basic ioctl for network addresses  
							
							
							
						 
						
							2024-02-03 01:50:10 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								bc1441a5eb 
								
							 
						 
						
							
							
								
								LibC: add stropts.h  
							
							
							
						 
						
							2024-02-02 14:29:20 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0f154c3173 
								
							 
						 
						
							
							
								
								Kernel: Implement basic recvfrom  
							
							
							
						 
						
							2024-02-02 13:50:00 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ec2f21bb9f 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement SYS_SENDTO  
							
							
							
						 
						
							2024-02-02 03:16:01 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ab150b458a 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement basic socket binding  
							
							
							
						 
						
							2024-02-02 01:31:58 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cf28ecd5a6 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add SYS_SOCKET  
							
							
							
						 
						
							2024-02-01 23:39:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								dfe5a2d665 
								
							 
						 
						
							
							
								
								All: Cleanup all files  
							
							... 
							
							
							
							Add newline to end of files and remove whitespace from end of lines 
							
						 
						
							2024-01-24 15:53:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e544e6a62d 
								
							 
						 
						
							
							
								
								LibC: Implement floating point parsing to *scanf functions  
							
							
							
						 
						
							2024-01-24 11:54:12 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								606a7cb313 
								
							 
						 
						
							
							
								
								LibC: Implement almost POSIX compliant *scanf functions  
							
							... 
							
							
							
							Only wchar strings and floating point values are not parsed 
							
						 
						
							2024-01-24 10:33:12 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2c471a89d0 
								
							 
						 
						
							
							
								
								LibC: Add compile option to libc to stop optimizing string.h  
							
							
							
						 
						
							2024-01-17 19:44:29 +01:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								51214ea1bf 
								
							 
						 
						
							
							
								
								Kernel: Add load_keymap syscall and load Finnish keymap in init  
							
							
							
						 
						
							2024-01-10 14:46:29 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								db0650cf10 
								
							 
						 
						
							
							
								
								LibC: Implement basic atexit. This allows clean exit from doom (soon)  
							
							
							
						 
						
							2024-01-03 00:30:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								668c4c8976 
								
							 
						 
						
							
							
								
								LibC: Implement getgrnam and getgrgid  
							
							
							
						 
						
							2024-01-03 00:14:49 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								96d831c31a 
								
							 
						 
						
							
							
								
								Kernel/LibC/Userspace: Implement chown and set tty owner on login  
							
							
							
						 
						
							2024-01-02 22:19:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4307968182 
								
							 
						 
						
							
							
								
								All: Start work again on sse support  
							
							
							
						 
						
							2023-12-28 19:14:42 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3352640d09 
								
							 
						 
						
							
							
								
								LibC: strlen had to be marked not optimized...  
							
							
							
						 
						
							2023-12-19 21:42:59 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								637397dd2f 
								
							 
						 
						
							
							
								
								LibC: Make memcpy and memset not optimized  
							
							... 
							
							
							
							GCC does some weird optimizations and breaks these functions 
							
						 
						
							2023-12-19 21:42:59 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5edbb1d5c4 
								
							 
						 
						
							
							
								
								LibC: make execvp fail if no executable found  
							
							
							
						 
						
							2023-12-19 21:42:59 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1cd5b3c20c 
								
							 
						 
						
							
							
								
								LibC: Fix stpncpy  
							
							... 
							
							
							
							I had misunderstood and tought that the string is always
null terminated 
							
						 
						
							2023-12-15 00:33:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c773e2ed07 
								
							 
						 
						
							
							
								
								LibC: Optimize malloc even further  
							
							... 
							
							
							
							aoc2023/day12 now runs in 3.5 seconds on my machine. This is way
better than the old almost hour. 
							
						 
						
							2023-12-14 23:49:25 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c4186bd5f0 
								
							 
						 
						
							
							
								
								LibC: Compile with -O2 optimizations  
							
							... 
							
							
							
							I have no idea why libc had no optimizations enabled.
Weird thing is that memcpy optimized to infinite loop if I kept the
__restrict__ attributes in pointers. I don't think there was any ub. 
							
						 
						
							2023-12-14 23:40:08 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5f640da166 
								
							 
						 
						
							
							
								
								LibC: Optimize malloc by a lot  
							
							... 
							
							
							
							I now cache first free node in malloc_pool and whether the node is
last or not. There allow doing less full iterations over the whole
malloc pool.
Malloc is still unbearably slow and I will have to write a proper
fast malloc at some point. With this patch running aoc2023/day12 is
atleast possible. Probabaly will take closer to an hour... 
							
						 
						
							2023-12-14 15:31:00 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7320104fd0 
								
							 
						 
						
							
							
								
								LibC: Mark __assert_fail as noreturn  
							
							
							
						 
						
							2023-12-14 15:13:54 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								600bd7ee0f 
								
							 
						 
						
							
							
								
								LibC: Implement rmdir in unistd.h  
							
							
							
						 
						
							2023-12-14 11:02:56 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								adf1e54605 
								
							 
						 
						
							
							
								
								LibC: Implement more functions to string.h  
							
							
							
						 
						
							2023-12-14 11:02:30 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a3de64f5fa 
								
							 
						 
						
							
							
								
								LibC: Implement basic version of system() this assumes Shell exists  
							
							
							
						 
						
							2023-12-14 11:00:40 +02:00