Commit Graph

471 Commits

Author SHA1 Message Date
75c519a70c Use more generic name for this macro use pointer used behind it will point to kernel debugger after it gets initialized 2023-02-07 19:37:44 +01:00
f8d2ccc0d0 Add more debugging macros 2023-02-06 16:10:32 +01:00
707c92e08a Boot loader no longer needs to do anything related to the stack 2023-02-05 10:03:21 +01:00
c6cadbd655 Initialize MXCSR register 2023-02-05 00:30:12 +01:00
5eaf7d63a3 Initialize Page Attribute Table 2023-02-05 00:14:34 +01:00
55cdae7c83 Initialize AMD64 processor registers 2023-02-04 23:40:03 +01:00
f37722b6e6 Distinguish ProcessorBlock and ProcessorControlBlock 2023-02-03 19:28:03 +01:00
269214ed34 Another improvements to GDT 2023-02-03 18:00:37 +01:00
19f34d4b17 Cleanup the code 2023-02-02 19:42:57 +01:00
715f875c4f Set alignment and packing properly 2023-02-02 17:01:18 +01:00
2e2b01742a Definitions for setting structures alignment and packing 2023-02-02 15:47:21 +01:00
73fc7607cd There is no need to specify alignment of the structure in the forward reference 2023-02-02 15:37:57 +01:00
dc1a94b982 This is 'Processor Block' 2023-02-01 22:02:07 +01:00
21fbe6febe Add IDT related definitions 2023-02-01 20:14:10 +01:00
5bbda188c6 IDT access levels and gate types 2023-02-01 00:51:13 +01:00
9a1e9b1084 Define TSS offsets 2023-01-30 23:43:10 +01:00
a761d3125a Architecture specific initialization prior to processor structures initialization 2023-01-30 20:34:05 +01:00
6f068513cd Initial processor block initialization 2023-01-30 19:07:05 +01:00
ebe6792f2b Add MSR (Model Specific Registers) values 2023-01-30 17:59:00 +01:00
ce4e590347 Add missing forward declaration of ArInitializeProcessor() routine 2023-01-29 00:57:06 +01:00
900e71459a Add missing x86 descriptor sizes 2023-01-29 00:54:36 +01:00
7bf4a9ab8d Initialize boot CPU structures inside kernel on AMD64 2023-01-29 00:45:17 +01:00
27e2fdf4f2 Introduce architecture library as new kernel subsystem and move selected routines into new subsystem 2023-01-28 10:34:55 +01:00
e94e50b5d9 Implement HlLoadInterruptDescriptorTable() intrinsics for loading IDT 2023-01-26 20:08:57 +01:00
3ad3149f80 Add descriptor structure definition 2023-01-25 17:42:35 +01:00
bfc9db8b6d Unify KGDTENTRY and KIDTENTRY between architectures as much as possible 2023-01-25 17:35:03 +01:00
3ee759cc27 i686 Interrupt request levels definitions 2023-01-25 17:18:27 +01:00
7bd67d6210 Add GDT and Segments related definitions for i686 2023-01-25 17:13:24 +01:00
a366de618f AMD64 Interrupt request levels definitions 2023-01-25 17:08:42 +01:00
8f348c3954 Add GDT and Segments related definitions for AMD64 2023-01-25 17:05:15 +01:00
707dc37868 Fix type of Source parameter in HlLoadSegment() routine 2023-01-24 23:08:48 +01:00
35aa514f95 Implement HlLoadSegment() intrinsics routine 2023-01-24 19:27:18 +01:00
d3d8d144a0 Implement HlLoadGlobalDescriptorTable() intrinsic 2023-01-23 20:13:51 +01:00
c81b858757 Implement HlReadGSQuadWord() intrinsic 2023-01-23 19:59:54 +01:00
f20ab3e52e Implement HlLoadTaskRegister() for loading TSS segment selector into task register 2023-01-23 15:26:35 +01:00
9cbe2d458c Initial support for EFI framebuffer 2023-01-23 15:26:35 +01:00
145fc17271 Pass framebuffer pitch information to the kernel 2023-01-18 20:15:41 +01:00
41a0a2b37c Shorter and longer version of the build timestamp 2023-01-18 20:10:03 +01:00
1a93c198ed Add missing forward reference to _LOADER_GRAPHICS_INFORMATION_BLOCK structure 2023-01-16 19:51:19 +01:00
605597262c Initial version of EFI framebuffer module, currently support only GOP 2023-01-16 18:41:25 +01:00
e3f0782053 Add enumeration of efi supported graphics protocols 2023-01-16 00:10:44 +01:00
5d74fb2bb5 Add UGA related structures 2023-01-16 00:03:35 +01:00
fb60625abc Add more intrinsic routines 2023-01-13 22:32:45 +01:00
21abe0553a Code formatting 2023-01-11 15:39:36 +01:00
beed5e0b51 More architecture specific definitions 2023-01-11 15:29:43 +01:00
025e05013d Partially revert last changes 2023-01-10 22:51:38 +01:00
bac7af8a33 Cleanup data types 2023-01-09 23:07:21 +01:00
6255165f10 Add missing EFI enumeration lists forward references 2023-01-08 09:31:40 +01:00
fd6e273d8a Add missing forward references 2023-01-07 23:44:00 +01:00
ca1d7ddfe8 Basic context, frames and exceptions definitions 2023-01-07 23:36:50 +01:00