Bananymous 
							
						 
						
							
								57f6f50939 
								
							 
						 
						
							
							
								
								Terminal: Implement dumb font bolding  
							
							... 
							
							
							
							This is just drawing character twice at one pixel offset 
							
						 
						
							2025-05-05 23:09:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f959905adf 
								
							 
						 
						
							
							
								
								LibGUI: Rework window rendering  
							
							... 
							
							
							
							Abstract drawing surface to Texture. All windows now contain a texture
matching its size. 
							
						 
						
							2025-05-05 23:08:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f78c7e7926 
								
							 
						 
						
							
							
								
								LibGUI: Add API to block until window events are available  
							
							
							
						 
						
							2025-05-05 22:33:00 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								96496da0ab 
								
							 
						 
						
							
							
								
								Kernel: Allow USB mouse to send extra2 button events  
							
							
							
						 
						
							2025-05-05 22:32:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2dc4733ac1 
								
							 
						 
						
							
							
								
								test: improve pthread test  
							
							
							
						 
						
							2025-05-05 19:21:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f14774d034 
								
							 
						 
						
							
							
								
								libc: fix tmpnam when no name is found  
							
							
							
						 
						
							2025-05-05 19:17:16 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c08c63f420 
								
							 
						 
						
							
							
								
								libc: reorder destructor and fflush in exit  
							
							
							
						 
						
							2025-05-05 19:16:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								eb79c6c47c 
								
							 
						 
						
							
							
								
								mkdir: Add -p option  
							
							
							
						 
						
							2025-05-05 19:16:29 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								bf1cbb4cde 
								
							 
						 
						
							
							
								
								Terminal: Update terminal size and send SIGWINCH on resize  
							
							
							
						 
						
							2025-05-05 19:09:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								592675022e 
								
							 
						 
						
							
							
								
								Kernel: Allow tcgetpgrp on pseudo terminal masters  
							
							
							
						 
						
							2025-05-05 19:09:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b2e10d7e6e 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary locks  
							
							
							
						 
						
							2025-05-05 19:08:57 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0689954433 
								
							 
						 
						
							
							
								
								Terminal: Set minimum size to 8x2 cells  
							
							
							
						 
						
							2025-05-05 18:20:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5c37f198cb 
								
							 
						 
						
							
							
								
								WindowServer/LibGUI: Allow windows to set minimum size  
							
							
							
						 
						
							2025-05-05 18:19:59 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3b02a9d4fe 
								
							 
						 
						
							
							
								
								WindowServer: Resize from closest corner  
							
							
							
						 
						
							2025-05-05 18:19:19 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c9057aa498 
								
							 
						 
						
							
							
								
								WindowServer: Cleanup code and resize on fullscreen  
							
							
							
						 
						
							2025-05-05 16:42:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2b0d198b05 
								
							 
						 
						
							
							
								
								Terminal: Allow resizing of the terminal  
							
							
							
						 
						
							2025-05-05 03:15:30 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7798145c74 
								
							 
						 
						
							
							
								
								WindowServer: Implement window resizing  
							
							... 
							
							
							
							windows can now set resizable attribute which allows window server to
resize them 
							
						 
						
							2025-05-05 03:14:50 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fcfadd7c74 
								
							 
						 
						
							
							
								
								LibGUI: Add background color for windows  
							
							... 
							
							
							
							This is used when resizing a window to fill the empty space 
							
						 
						
							2025-05-05 03:12:31 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c0181820a9 
								
							 
						 
						
							
							
								
								ports/tinygb: Set title like sdl frontend does  
							
							
							
						 
						
							2025-05-05 01:10:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								76d4e6bd18 
								
							 
						 
						
							
							
								
								LibGUI: Add support for changing window title  
							
							
							
						 
						
							2025-05-05 01:10:05 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ccb81de85d 
								
							 
						 
						
							
							
								
								snake: Use box drawing characters  
							
							... 
							
							
							
							This makes it look much better.
Also fix bug with apples generating on top of snake's tail 
							
						 
						
							2025-05-05 00:30:58 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								82f4975f45 
								
							 
						 
						
							
							
								
								LibC: Save callee saved registers on setjmp  
							
							
							
						 
						
							2025-05-04 13:54:35 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d457e6ad6a 
								
							 
						 
						
							
							
								
								LibC: Fix printf e/E modifier for negative exponents  
							
							
							
						 
						
							2025-05-04 13:42:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								abf7c8e68a 
								
							 
						 
						
							
							
								
								LibC: Implement `difftime`  
							
							
							
						 
						
							2025-05-04 13:42:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1a38d0c31e 
								
							 
						 
						
							
							
								
								LibC: Add g/G modifiers to printf  
							
							
							
						 
						
							2025-05-04 13:42:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9ff9d679e9 
								
							 
						 
						
							
							
								
								Kernel: Fix text mode cursor  
							
							... 
							
							
							
							Apparently text mode renders cursor in the *foreground* color. My
current clear function used the same color for foreground and background
making the cursor effectively invisible.
Also cursor hiding is now done by moving the cursor off bounds (0, height)
some website I read said this to be valid even on VGA compatible cards
without disable bit.
http://www.osdever.net/FreeVGA/vga/textcur.htm  
							
						 
						
							2025-04-25 02:31:33 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9f3f8f950a 
								
							 
						 
						
							
							
								
								Kernel: Add better panic message for failed shutdown  
							
							... 
							
							
							
							ACPI shutdown does not work on the web emulator and running `poweroff`
crashes on `ASSERT_NOT_REACHED()`. 
							
						 
						
							2025-04-25 01:52:33 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								006a196e4a 
								
							 
						 
						
							
							
								
								LibC: optimize strpbrk, str{,c}spn, strtok{,_r}  
							
							... 
							
							
							
							These matches are now detected with bitmasks instead of looping over the
second string 
							
						 
						
							2025-04-24 01:39:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								418678466c 
								
							 
						 
						
							
							
								
								Kernel: Fix text mode palette  
							
							... 
							
							
							
							ANSI and text mode color indices are not in the same order 
							
						 
						
							2025-04-23 23:07:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9f4cb5c4dd 
								
							 
						 
						
							
							
								
								Kernel: Make pseudo terminals not overwrite old data  
							
							... 
							
							
							
							If pseudo terminal buffer was filled, old implementation would overwrite
old data. This is bad if producer is capable of producing more data than
consumer can handle. 
							
						 
						
							2025-04-23 22:03:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								73f9de6635 
								
							 
						 
						
							
							
								
								Terminal: Add support for ANSI SGR 8bit and 24bit  
							
							
							
						 
						
							2025-04-23 22:03:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								12b9c82086 
								
							 
						 
						
							
							
								
								Terminal: Don't wrap cursor right after x == cols  
							
							... 
							
							
							
							This prevents scrolling when bottom right scroll is written to 
							
						 
						
							2025-04-23 22:03:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a8edb8870e 
								
							 
						 
						
							
							
								
								Kernel: Add support for 8bit and 24bit ANSI SGR  
							
							
							
						 
						
							2025-04-23 22:03:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								dabc3c6cc4 
								
							 
						 
						
							
							
								
								Kernel: Don't wrap cursor immediatly at cols()  
							
							... 
							
							
							
							This prevents unwanted scrolling when writing to bottom right cell 
							
						 
						
							2025-04-23 22:03:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cc7c1ad30d 
								
							 
						 
						
							
							
								
								Kernel: Add per terminal palette for TerminalDriver  
							
							... 
							
							
							
							This allows better color approximation on text mode and in future will
allow user to possibly change the palette 
							
						 
						
							2025-04-23 18:44:37 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4d840a8d9a 
								
							 
						 
						
							
							
								
								BAN: Make Array more constexpr  
							
							
							
						 
						
							2025-04-23 18:40:20 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								95a80bfe81 
								
							 
						 
						
							
							
								
								ports: Add tinygb port  
							
							... 
							
							
							
							This is awesome! 
							
						 
						
							2025-04-23 13:19:28 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								53e9eab0cd 
								
							 
						 
						
							
							
								
								ports/tcc: Fix building on 32 bit  
							
							
							
						 
						
							2025-04-23 08:43:27 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								35b3c3c98c 
								
							 
						 
						
							
							
								
								Kernel: Fix scheduler load balancing  
							
							... 
							
							
							
							I was not updating the current queue of the thread which lead to blocked
threads think they were in run queue 
							
						 
						
							2025-04-23 08:09:51 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								20e17a28cf 
								
							 
						 
						
							
							
								
								Kernel: Fix \b handling  
							
							... 
							
							
							
							Don't clear the character, only move cursor backwards 
							
						 
						
							2025-04-23 06:33:11 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								28bf2d6374 
								
							 
						 
						
							
							
								
								Kernel/Terminal: Add support for ANSI DSR  
							
							
							
						 
						
							2025-04-23 06:14:56 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8a00b53050 
								
							 
						 
						
							
							
								
								Kernel/Terminal: Fix ANSI SGR m for multiple values  
							
							
							
						 
						
							2025-04-23 05:29:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8834241417 
								
							 
						 
						
							
							
								
								LibC: Fix scanf %n modifier  
							
							... 
							
							
							
							Old code was always returning off by one 
							
						 
						
							2025-04-22 09:55:38 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								96740d6be4 
								
							 
						 
						
							
							
								
								LibC: Make `inet_addr` spec compliant  
							
							... 
							
							
							
							I was not doing any error checking, basically i validated anything that
started with atleast a single digit. 
							
						 
						
							2025-04-22 09:40:46 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b853d29992 
								
							 
						 
						
							
							
								
								Kernel: Fix unix domain socket close detection  
							
							
							
						 
						
							2025-04-22 08:36:44 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								33a0f562d3 
								
							 
						 
						
							
							
								
								resolver: Add support for CNAME  
							
							... 
							
							
							
							Also rework resolver's send format and convert test-tcp and nslookup to
use getaddrinfo 
							
						 
						
							2025-04-22 08:36:44 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f8e3ae0525 
								
							 
						 
						
							
							
								
								Kernel: Fix deadlock caused by multithreading  
							
							... 
							
							
							
							This allows multiple threads to concurrently call the most common
blocking syscalls:
- read
- write
- accept
- connect
- sendto
- recv
- pselect
This prevents a dead lock when for example process is waiting on a pipe,
but unable to write to it since process is locked.
This is the beginning of starting to remove processes own lock from
syscall and locking only necessary parts. 
							
						 
						
							2025-04-22 04:51:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c790bad667 
								
							 
						 
						
							
							
								
								Kernel: Make OpenFileDescriptorSet thread safe  
							
							... 
							
							
							
							Also this allows concurrent calling of read/write/send/recv 
							
						 
						
							2025-04-22 04:31:18 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d54489bbcb 
								
							 
						 
						
							
							
								
								Kernel: Implement MemoryRegion pinning  
							
							... 
							
							
							
							This allows process to pin a MemoryRegion into users memory space for
syscall duration without allowing user to munmap the region. 
							
						 
						
							2025-04-22 04:30:07 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								808c97020a 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement SA_RESTART  
							
							... 
							
							
							
							I have been thinking how to do this for a long time but I finally
figured out a semi-clean way 
							
						 
						
							2025-04-22 02:42:44 +03:00