Commit Graph
497 Commits
Author SHA1 Message Date
belliash 156cb7bcac Refactor system resources to be able to distinguish if requested resource does not exist or if it is locked and cannot be reused
Builds / ExectOS (amd64) (push) Failing after 28s
Builds / ExectOS (i686) (push) Failing after 28s
2024-06-22 18:54:34 +02:00
belliash 906e09fd9f Refactor COM port support, to get rid of global variables in library
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 36s
2024-06-12 18:02:29 +02:00
belliash 91e8a86ee2 Implement kernel undefined behavior sanitizer support
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-12 16:19:24 +02:00
belliash c7e96184e6 Correct typo
Builds / ExectOS (i686) (push) Successful in 47s
Builds / ExectOS (amd64) (push) Successful in 49s
2024-06-12 16:11:38 +02:00
belliash bd7d4f5a0d Fix function type mismatch undefined behavior when calling through a pointer
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-06-09 22:26:01 +02:00
belliash 3097ff6250 Get rid of NULL pointer dereference
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 37s
2024-06-09 12:45:01 +02:00
belliash 2f16f4f613 Traverse Local x2APIC structures to find all processors
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-06-07 23:05:12 +02:00
belliash f36b59c961 Store processor identities in system info structure
Builds / ExectOS (i686) (push) Successful in 1m13s
Builds / ExectOS (amd64) (push) Successful in 1m14s
2024-06-07 20:19:56 +02:00
belliash 86bc2042e5 Cleanup XTDK headers
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-06-06 23:09:03 +02:00
belliash 92e861ebae Cleanup APIC related headers
Builds / ExectOS (i686) (push) Successful in 39s
Builds / ExectOS (amd64) (push) Successful in 43s
2024-06-06 21:50:20 +02:00
belliash 4212453cf5 Fix APIC initialization code
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-06 16:49:08 +02:00
belliash ef65bceccd Initialize legacy PIC and mask all interrupts
Builds / ExectOS (i686) (push) Successful in 37s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-05 16:08:54 +02:00
belliash 7b29897efb Initialize ACPI Timer
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-04 21:04:09 +02:00
belliash 7704e5d399 Initial kernel ACPI support
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 36s
2024-06-04 16:24:13 +02:00
belliash de709162e3 ACPI_RSDT structure does not need to be packed
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-03 22:27:36 +02:00
belliash 5d2d409d0f Add more XTSTATUS status codes
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-03 22:14:58 +02:00
belliash 9124574bc5 Fixes and improvements to ACPI related structures and definitions
Builds / ExectOS (amd64) (push) Successful in 38s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-03 21:17:31 +02:00
belliash c289dab514 Add ACPI resource type
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-02 21:36:59 +02:00
belliash 6176ca38a8 Cleanup hardware allocation memory pool related code
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Failing after 32s
2024-06-02 17:29:31 +02:00
belliash 6b1ccc4ce5 Do not hardcode PML shift values
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 35s
2024-05-27 22:26:05 +02:00
belliash 7f8846f23d Map memory for hardware layer on i686
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-05-27 22:17:30 +02:00
belliash 70d1295919 Do not support non-PAE systems
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 30s
2024-05-24 23:47:29 +02:00
belliash 03ba3b5583 Add missing forward references for APIC related structures
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-05-24 23:41:27 +02:00
belliash 94a40501d4 Mask APIC ICR0 and disable APIC interrupts for initialization time by raising APIC TPR
Builds / ExectOS (amd64) (push) Successful in 49s
Builds / ExectOS (i686) (push) Successful in 48s
2024-05-24 23:39:06 +02:00
belliash b4588d5b4c Make ExectOS only run on processors which support PAE
Builds / ExectOS (amd64) (push) Successful in 55s
Builds / ExectOS (i686) (push) Successful in 53s
2024-05-24 16:30:39 +02:00
belliash 5221db2e63 Rename LOADER_MEMORY_MAPPING structure to more meaningful LOADER_MEMORY_DESCRIPTOR
Builds / ExectOS (i686) (push) Successful in 2m8s
Builds / ExectOS (amd64) (push) Successful in 2m11s
2024-05-23 19:00:50 +02:00
belliash 143803aad9 PPE needs PAE on i686
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 46s
2024-05-22 23:09:30 +02:00
belliash 609538b9be Implement MmpGetPdeAddress() and MmpGetPteAddress() routines for i686 architecture as well as MmpMemoryExtensionEnabled() for checking PAE/LA57 support
Builds / ExectOS (amd64) (push) Successful in 51s
Builds / ExectOS (i686) (push) Successful in 50s
2024-05-22 22:47:28 +02:00
belliash 4db5425238 Add PHYSICAL_ADDRESS type definition
Builds / ExectOS (i686) (push) Failing after 39s
Builds / ExectOS (amd64) (push) Successful in 41s
2024-05-22 18:52:57 +02:00
belliash 03727a61d3 Implement hardware layer pool memory management
Builds / ExectOS (amd64) (push) Failing after 46s
Builds / ExectOS (i686) (push) Failing after 44s
2024-05-22 18:51:09 +02:00
belliash 500498508e Rename PACK definition
Builds / ExectOS (amd64) (push) Successful in 48s
Builds / ExectOS (i686) (push) Successful in 47s
2024-05-20 15:34:15 +02:00
belliash ac33b86c3d Implement AcGetAcpiTable() routine
Builds / ExectOS (i686) (push) Successful in 53s
Builds / ExectOS (amd64) (push) Successful in 55s
2024-05-19 23:45:28 +02:00
belliash 4931f1b9a3 Cleanup loader information block after switching to system resources
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-05-18 17:32:56 +02:00
belliash c17f6a95d4 Use relative path in debug output
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 40s
2024-05-18 17:30:11 +02:00
belliash 1e2efce26a Add a system resources list to the initialization block
Builds / ExectOS (amd64) (push) Successful in 43s
Builds / ExectOS (i686) (push) Successful in 41s
2024-05-16 23:20:57 +02:00
belliash 74c1b03a6b Implement a system resources management routines
Builds / ExectOS (amd64) (push) Failing after 10m17s
Builds / ExectOS (i686) (push) Failing after 10m15s
2024-05-16 23:08:59 +02:00
belliash f74a5521ba Update KPROCESS and KTHREAD structure definitions
Builds / ExectOS (amd64) (push) Successful in 39s
Builds / ExectOS (i686) (push) Successful in 37s
2024-05-14 19:44:10 +02:00
belliash efef3cb80d Cleanup EFLAGS related definitions
Builds / ExectOS (amd64) (push) Successful in 38s
Builds / ExectOS (i686) (push) Successful in 37s
2024-05-14 16:22:10 +02:00
belliash e311cad8f7 Allow to clear framebuffer screen with any, custom background color
Builds / ExectOS (amd64) (push) Successful in 44s
Builds / ExectOS (i686) (push) Successful in 42s
2024-05-12 22:43:06 +02:00
belliash c576f7f8f2 Provide pixel information to the kernel
Builds / ExectOS (amd64) (push) Successful in 41s
Builds / ExectOS (i686) (push) Successful in 40s
2024-05-12 22:28:06 +02:00
belliash 615a1457bf Fixes to FbpGetPixelInformation() and FbpGetColorMask() routines
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 44s
2024-05-12 22:20:22 +02:00
belliash eeeb9d6ed7 Update PoInitializeProcessorControlBlock() routine and corresponding structures
Builds / ExectOS (i686) (push) Successful in 50s
Builds / ExectOS (amd64) (push) Successful in 53s
2024-05-09 22:12:50 +02:00
belliash 38b0b2ac7d Use correct stack when using preallocated processor structures
Builds / ExectOS (i686) (push) Successful in 49s
Builds / ExectOS (amd64) (push) Successful in 50s
2024-05-08 15:57:24 +02:00
belliash b65ff2a767 Implement MmAllocateProcessorStructures() routine as a temporary hack to get a buffer for AP initialization
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 44s
2024-05-07 23:30:11 +02:00
belliash 276eb77862 Update KPROCESSOR_BLOCK structure
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-05-07 16:20:40 +02:00
belliash ab618f95b9 Use dedicated GUID for DUMMYOS boot protocol
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 35s
2024-04-29 13:48:01 +02:00
belliash e80927c5d3 Fix undefined behavior and NULL pointer in boot loader OS list renderer
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 32s
2024-04-27 00:42:25 +02:00
belliash 22693a48d3 Rework trap handling assembly code
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-04-23 15:07:08 +02:00
belliash a36c02fde8 Use common name for EFLAGS and RFLAGS, regardless the CPU architecture
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-21 22:35:06 +02:00
belliash 30a2cb9849 Update timers support
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 46s
2024-04-21 13:57:55 +02:00