558374a47c 
								
							 
						 
						
							
							
								
								Kernel: IDT flush only once in initialization  
							
							
							
						 
						
							2023-01-22 02:06:43 +02:00  
				
					
						
							
							
								 
						
							
								6e24ef8323 
								
							 
						 
						
							
							
								
								Kernel: IDT cleanup Kernel panic messages  
							
							
							
						 
						
							2023-01-22 02:06:43 +02:00  
				
					
						
							
							
								 
						
							
								3e8fbbaabd 
								
							 
						 
						
							
							
								
								Kernel: Fix small typos in IDT  
							
							
							
						 
						
							2023-01-22 01:12:47 +02:00  
				
					
						
							
							
								 
						
							
								491610db2c 
								
							 
						 
						
							
							
								
								Kernel: move GDT initialization to boot.S  
							
							
							
						 
						
							2023-01-22 00:48:12 +02:00  
				
					
						
							
							
								 
						
							
								aac7595a47 
								
							 
						 
						
							
							
								
								Kernel: cleanup boot.S code and enable SSE  
							
							
							
						 
						
							2023-01-21 23:44:23 +02:00  
				
					
						
							
							
								 
						
							
								b5453fad5c 
								
							 
						 
						
							
							
								
								Kernel: dump_stacktrace uses now "\r\n" line endings for bochs  
							
							
							
						 
						
							2023-01-21 22:21:38 +02:00  
				
					
						
							
							
								 
						
							
								bb051604a1 
								
							 
						 
						
							
							
								
								Kernel: Move dump_stacktrace() to arch folder  
							
							... 
							
							
							
							It uses mov instruction which has different register on x86/x86-64 
							
						 
						
							2023-01-21 22:16:31 +02:00  
				
					
						
							
							
								 
						
							
								9e092c80c0 
								
							 
						 
						
							
							
								
								Kernel: Cleanup boot.S  
							
							
							
						 
						
							2023-01-21 22:16:01 +02:00  
				
					
						
							
							
								 
						
							
								b9a4530e54 
								
							 
						 
						
							
							
								
								Kernel: Kernel::Panic now dumps stacktrace to com1  
							
							
							
						 
						
							2023-01-16 21:50:50 +02:00  
				
					
						
							
							
								 
						
							
								73abc3b2ee 
								
							 
						 
						
							
							
								
								fixup! Kernel: Move GDT to its own namespace and cleanup  
							
							
							
						 
						
							2023-01-16 15:24:59 +02:00  
				
					
						
							
							
								 
						
							
								46e5b3f3d6 
								
							 
						 
						
							
							
								
								Kernel: Move GDT to its own namespace and cleanup  
							
							
							
						 
						
							2023-01-16 15:24:10 +02:00  
				
					
						
							
							
								 
						
							
								32453daf66 
								
							 
						 
						
							
							
								
								Kernel: actually dont map page 0  
							
							
							
						 
						
							2023-01-13 15:04:06 +02:00  
				
					
						
							
							
								 
						
							
								416a41745f 
								
							 
						 
						
							
							
								
								Kernel: Kernel::Panic now checks that TTY is initialized instead of VESA  
							
							
							
						 
						
							2023-01-13 15:04:06 +02:00  
				
					
						
							
							
								 
						
							
								77e82de51e 
								
							 
						 
						
							
							
								
								Kernel: Make IDT exceptions use a single Kernel:Panic  
							
							... 
							
							
							
							This allows IDT to print exceptions even when we dont have TTY 
							
						 
						
							2023-01-13 15:04:06 +02:00  
				
					
						
							
							
								 
						
							
								75ee592fb5 
								
							 
						 
						
							
							
								
								Kernel: remove debug print from MMU  
							
							
							
						 
						
							2023-01-13 00:04:50 +02:00  
				
					
						
							
							
								 
						
							
								7f01eaa936 
								
							 
						 
						
							
							
								
								Kernel: Move CPUID feature strings to cpp file  
							
							
							
						 
						
							2023-01-13 00:03:37 +02:00  
				
					
						
							
							
								 
						
							
								4c7950cd3e 
								
							 
						 
						
							
							
								
								Kernel: remove unused function from IDT  
							
							
							
						 
						
							2023-01-13 00:02:39 +02:00  
				
					
						
							
							
								 
						
							
								4ae4ad528a 
								
							 
						 
						
							
							
								
								Kernel: APIC use dprintln instead of kprintln  
							
							... 
							
							
							
							VESA drivers will be initialized much later now so kprintln
will not be available when initializing APIC 
							
						 
						
							2023-01-12 13:52:22 +02:00  
				
					
						
							
							
								 
						
							
								f412c164b3 
								
							 
						 
						
							
							
								
								Kernel: Rename ACPI debug print macro  
							
							
							
						 
						
							2023-01-12 13:48:05 +02:00  
				
					
						
							
							
								 
						
							
								5493d1bae1 
								
							 
						 
						
							
							
								
								Kernel: Add debug print to MMU and fix comment  
							
							
							
						 
						
							2023-01-12 13:46:02 +02:00  
				
					
						
							
							
								 
						
							
								301ad89783 
								
							 
						 
						
							
							
								
								Kernel: Unallocate RSDT after we are done with it  
							
							
							
						 
						
							2023-01-12 13:45:01 +02:00  
				
					
						
							
							
								 
						
							
								8fd51fb47d 
								
							 
						 
						
							
							
								
								Kernel: Replace Paging{.h,.cpp} with better MMU{.h,.cpp}  
							
							
							
						 
						
							2023-01-12 13:24:36 +02:00  
				
					
						
							
							
								 
						
							
								64c57ea3d0 
								
							 
						 
						
							
							
								
								Kernel: Remove obsole CPUID::IsAvailable  
							
							... 
							
							
							
							This is now a harware requirement that is verified already in boot.S 
							
						 
						
							2023-01-10 21:28:59 +02:00  
				
					
						
							
							
								 
						
							
								6f9552d673 
								
							 
						 
						
							
							
								
								BAN: Add math to its own namespace  
							
							
							
						 
						
							2023-01-10 19:11:27 +02:00  
				
					
						
							
							
								 
						
							
								181478119e 
								
							 
						 
						
							
							
								
								Kernel: Paging is now enabled by boot.S  
							
							
							
						 
						
							2023-01-10 17:53:29 +02:00  
				
					
						
							
							
								 
						
							
								c6467b8ebc 
								
							 
						 
						
							
							
								
								Kernel: Multiboot data and kernel command lines are now global variables  
							
							
							
						 
						
							2023-01-10 17:50:24 +02:00  
				
					
						
							
							
								 
						
							
								efd8638a96 
								
							 
						 
						
							
							
								
								Kernel: Improve kernel panic message and rename it 'panic'->'Panic'  
							
							
							
						 
						
							2023-01-09 21:57:03 +02:00  
				
					
						
							
							
								 
						
							
								531f470132 
								
							 
						 
						
							
							
								
								Kernel: Add helper to map pages with base address and size  
							
							... 
							
							
							
							This allows us to easily map enough pages for buffer with known size
VESA driver can now allocate enough memory for whole framebuffer if it
doesn't fit in a single page (1920x1080 for example) 
							
						 
						
							2023-01-05 03:44:41 +02:00  
				
					
						
							
							
								 
						
							
								086f0c7cf6 
								
							 
						 
						
							
							
								
								Kernel: Better error reporting from VESA and fix texmode rendering  
							
							
							
						 
						
							2023-01-05 03:36:20 +02:00  
				
					
						
							
							
								 
						
							
								d6623def32 
								
							 
						 
						
							
							
								
								Kernel: Paging uses now PAE with 2 MiB pages  
							
							
							
						 
						
							2023-01-05 02:00:18 +02:00  
				
					
						
							
							
								 
						
							
								9d9a6b2fec 
								
							 
						 
						
							
							
								
								Kernel: VESA can now print 8x16 bitmaps  
							
							
							
						 
						
							2022-12-30 20:47:25 +02:00  
				
					
						
							
							
								 
						
							
								f51ca4b642 
								
							 
						 
						
							
							
								
								Kernel: Rewrite IDT exception kernel panic message  
							
							
							
						 
						
							2022-12-30 20:03:09 +02:00  
				
					
						
							
							
								 
						
							
								fc05642b74 
								
							 
						 
						
							
							
								
								Kernel: Make Render from buffer public tty function  
							
							
							
						 
						
							2022-12-30 19:57:44 +02:00  
				
					
						
							
							
								 
						
							
								ef0b2010e0 
								
							 
						 
						
							
							
								
								Kernel: Add basic PS/2 Mouse driver  
							
							
							
						 
						
							2022-12-30 19:38:21 +02:00  
				
					
						
							
							
								 
						
							
								3c92aa45fb 
								
							 
						 
						
							
							
								
								Kernel: 'cpuinfo' command in shell now shows wheter you are running on 64-bit cpu  
							
							
							
						 
						
							2022-12-28 19:46:37 +02:00  
				
					
						
							
							
								 
						
							
								267367333e 
								
							 
						 
						
							
							
								
								Kernel: Move paging code to a helper  
							
							
							
						 
						
							2022-12-28 19:01:01 +02:00  
				
					
						
							
							
								 
						
							
								5d7a767f8b 
								
							 
						 
						
							
							
								
								Kernel: Enable basic paging  
							
							
							
						 
						
							2022-12-28 04:17:34 +02:00  
				
					
						
							
							
								 
						
							
								3e8590687f 
								
							 
						 
						
							
							
								
								Kernel: Cleanup code and move kmalloc initialization to later  
							
							
							
						 
						
							2022-12-28 04:16:21 +02:00  
				
					
						
							
							
								 
						
							
								9169020ad2 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary checks from GraphicsPutCharAt()  
							
							
							
						 
						
							2022-12-27 18:29:51 +02:00  
				
					
						
							
							
								 
						
							
								620b836fc3 
								
							 
						 
						
							
							
								
								Kernel: VESA now somewhat handles Cursor in Graphics mode  
							
							
							
						 
						
							2022-12-27 18:29:02 +02:00  
				
					
						
							
							
								 
						
							
								2d46281c16 
								
							 
						 
						
							
							
								
								Kernel: TTY scroll is now done using memmove  
							
							... 
							
							
							
							This will be faster when memory functions will be optimized 
							
						 
						
							2022-12-27 17:45:47 +02:00  
				
					
						
							
							
								 
						
							
								5ae1fc58e9 
								
							 
						 
						
							
							
								
								Kernel: Clean code in tty and vesa  
							
							
							
						 
						
							2022-12-27 17:22:45 +02:00  
				
					
						
							
							
								 
						
							
								2535eb1c4c 
								
							 
						 
						
							
							
								
								Kernel: TTY now handles keeping terminal buffer  
							
							... 
							
							
							
							VESA Driver cannot scroll anymore, this is handled by tty 
							
						 
						
							2022-12-27 17:06:33 +02:00  
				
					
						
							
							
								 
						
							
								f7eb85babd 
								
							 
						 
						
							
							
								
								Kernel: IDT exceptions print better errors now  
							
							
							
						 
						
							2022-12-23 15:56:10 +02:00  
				
					
						
							
							
								 
						
							
								d8fd6afd12 
								
							 
						 
						
							
							
								
								Kernel: Make TTY a class  
							
							
							
						 
						
							2022-12-23 15:55:45 +02:00  
				
					
						
							
							
								 
						
							
								3f7a61a4d2 
								
							 
						 
						
							
							
								
								Kernel: VESA driver has now second buffer for fast scrolling  
							
							... 
							
							
							
							This allows us to not read from video memory, since it was very slow
I also implemented fast path for graphics clearing and scrolling if bpp is 32 
							
						 
						
							2022-12-20 14:02:44 +02:00  
				
					
						
							
							
								 
						
							
								5e2680cade 
								
							 
						 
						
							
							
								
								Kernel: You can now disable APIC from the grub commandline  
							
							
							
						 
						
							2022-12-20 11:57:09 +02:00  
				
					
						
							
							
								 
						
							
								c82caacbaa 
								
							 
						 
						
							
							
								
								Kernel: Cleanup APIC code  
							
							... 
							
							
							
							APIC seems to work on my main machine, but not on other one 
							
						 
						
							2022-12-20 04:45:46 +02:00  
				
					
						
							
							
								 
						
							
								64a5a28ff0 
								
							 
						 
						
							
							
								
								Kernel: Add time since boot to Shell  
							
							
							
						 
						
							2022-12-19 11:46:38 +02:00  
				
					
						
							
							
								 
						
							
								c8866aa88b 
								
							 
						 
						
							
							
								
								Kernel: Move GDT and IDT assembly to inline assembly  
							
							
							
						 
						
							2022-12-19 11:46:38 +02:00