Commit Graph
158 Commits
Author SHA1 Message Date
harraiken 2dd1fdf869 Implement RTC support
Builds / ExectOS (amd64, release) (push) Failing after -59m35s
Builds / ExectOS (amd64, debug) (push) Failing after -59m33s
Builds / ExectOS (i686, debug) (push) Failing after -59m33s
Builds / ExectOS (i686, release) (push) Failing after -59m35s
2026-04-24 09:52:07 +02:00
harraiken 58010c27f4 Implement CMOS register access functions
Builds / ExectOS (amd64, debug) (push) Successful in -59m3s
Builds / ExectOS (amd64, release) (push) Successful in -59m5s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-04-23 19:13:56 +02:00
harraiken cd4e905054 Add support for I/O APIC controllers and interrupt override handling
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (i686, release) (push) Successful in 29s
2026-04-18 00:04:12 +02:00
harraiken cec5e8b16b Implement detection of timer capabilities
Builds / ExectOS (amd64, release) (push) Failing after 33s
Builds / ExectOS (i686, release) (push) Failing after 30s
Builds / ExectOS (i686, debug) (push) Failing after 41s
Builds / ExectOS (amd64, debug) (push) Failing after 44s
2026-04-12 23:58:48 +02:00
harraiken 7d8bfa8f0a Implement support for APIC Self-InterProcessor Interrupts (SIPI)
Builds / ExectOS (i686, debug) (push) Failing after 42s
Builds / ExectOS (amd64, debug) (push) Failing after 44s
Builds / ExectOS (amd64, release) (push) Failing after 47s
Builds / ExectOS (i686, release) (push) Failing after 45s
2026-04-09 20:25:55 +02:00
harraiken 9ffb03217a Implement software interrupt dispatch table and secondary handler lookup
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Failing after 30s
Builds / ExectOS (i686, debug) (push) Failing after 39s
Builds / ExectOS (amd64, release) (push) Successful in 42s
2026-04-08 20:13:35 +02:00
harraiken f1476912f3 Add definitions for PIT ports and APIC timer divisor configuration
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 46s
Builds / ExectOS (amd64, release) (push) Successful in 49s
2026-04-08 07:21:40 +02:00
harraiken 87a91bfeb1 Make XTDK headers assembly-safe
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (amd64, debug) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Failing after 30s
2026-04-01 16:05:34 +02:00
harraiken 40c4860548 Refine LDT setup and restore critical TSS fields for hardware exceptions
Builds / ExectOS (amd64, debug) (push) Successful in 38s
Builds / ExectOS (amd64, release) (push) Successful in 43s
Builds / ExectOS (i686, release) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 36s
2026-03-30 20:29:43 +02:00
harraiken 8c6c63465f Use dedicated NMI stack on i686
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (amd64, release) (push) Successful in 41s
Builds / ExectOS (i686, release) (push) Successful in 42s
Builds / ExectOS (amd64, debug) (push) Successful in 47s
2026-03-30 11:43:09 +02:00
harraiken e9aaeab982 Replace hardcoded stack count with architecture specific constant
Builds / ExectOS (amd64, debug) (push) Successful in 41s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 37s
2026-03-28 20:53:50 +01:00
harraiken 944d5b5c0a Implement pool allocations and frees tracking
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, release) (push) Successful in 48s
Builds / ExectOS (i686, debug) (push) Successful in 51s
2026-03-23 18:54:18 +01:00
harraiken b83eaaa820 Add definitions for pool management structures
Builds / ExectOS (amd64, release) (push) Successful in 32s
Builds / ExectOS (amd64, debug) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 28s
2026-03-21 19:10:58 +01:00
harraiken 7a44901064 Add definition for guarded PTE flag and remove hardcoded value
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 36s
2026-02-25 12:14:26 +01:00
harraiken 2c8eb6d692 Remove unused kernel base address definition
Builds / ExectOS (amd64, release) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 38s
Builds / ExectOS (amd64, debug) (push) Successful in 39s
Builds / ExectOS (i686, debug) (push) Successful in 29s
2026-01-23 20:59:10 +01:00
harraiken 0b1b76e9df Rollback bootloader memory management changes
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 43s
Builds / ExectOS (amd64, debug) (push) Successful in 44s
2026-01-20 16:04:07 +01:00
harraiken 0766eb4566 Drop obsolete KSEG0_KERNEL_BASE definition
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 37s
2026-01-12 23:05:01 +01:00
harraiken 455349f2d7 Remove dead code from paging and PTE management
Builds / ExectOS (amd64, debug) (push) Failing after 20s
Builds / ExectOS (amd64, release) (push) Failing after 26s
Builds / ExectOS (i686, debug) (push) Successful in 25s
Builds / ExectOS (i686, release) (push) Successful in 31s
2026-01-03 23:27:24 +01:00
harraiken 560cd43b34 Update memory manager type definitions and constants
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 27s
Builds / ExectOS (i686, debug) (push) Successful in 29s
2025-12-23 12:04:43 +01:00
harraiken 755a167f2c Respect architecture-specific PTE layouts and write PTEs via PML-aware helpers
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, debug) (push) Successful in 29s
Builds / ExectOS (i686, release) (push) Successful in 27s
2025-12-22 00:07:48 +01:00
harraiken 00d428d8de Architecture-specific system PTE limits
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 27s
Builds / ExectOS (i686, debug) (push) Successful in 27s
Builds / ExectOS (i686, release) (push) Successful in 25s
2025-12-16 20:05:51 +01:00
harraiken 0097cb88d7 Correct LA57 paging base addresses, add self-map constants and extend PTE structures
Builds / ExectOS (amd64, debug) (push) Successful in 8m33s
Builds / ExectOS (amd64, release) (push) Successful in 8m31s
Builds / ExectOS (i686, release) (push) Successful in 29s
Builds / ExectOS (i686, debug) (push) Successful in 31s
2025-11-29 23:11:54 +01:00
harraiken dda8f88830 Add PTE attribute definitions
Builds / ExectOS (amd64, release) (push) Successful in 29s
Builds / ExectOS (amd64, debug) (push) Successful in 31s
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 28s
2025-11-04 17:26:47 +01:00
harraiken fd13091476 Unify MMPML2_PTE field naming convention
Builds / ExectOS (amd64, debug) (push) Successful in 31s
Builds / ExectOS (amd64, release) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 35s
Builds / ExectOS (i686, release) (push) Successful in 33s
2025-11-03 22:02:59 +01:00
harraiken f6dac12057 Add missing EmptyPteList field to MMPAGEMAP_INFO
Builds / ExectOS (amd64, debug) (push) Successful in 31s
Builds / ExectOS (amd64, release) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 27s
2025-10-30 20:19:35 +01:00
harraiken 00b04f5405 Refactor IDT gate setup to use explicit DPL and type fields
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 32s
2025-10-18 18:29:49 +02:00
harraiken 2b49b23d41 Add trampoline support and move assembler prototypes
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, debug) (push) Failing after 24s
Builds / ExectOS (i686, release) (push) Failing after 22s
2025-09-19 19:07:27 +02:00
harraiken e7425de523 Drop C wrappers and switch to C++ API
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (i686, release) (push) Failing after 21s
2025-09-19 12:56:06 +02:00
harraiken 0a0fdffc46 Clean up kernel headers
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, debug) (push) Failing after 21s
Builds / ExectOS (i686, release) (push) Failing after 20s
2025-09-15 22:46:57 +02:00
harraiken 4592955da1 Migrate HL subsystem to C++
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 29s
Builds / ExectOS (i686, release) (push) Successful in 27s
2025-09-13 19:15:13 +02:00
harraiken c8dc2a1407 Migrate AR subsystem to C++
Builds / ExectOS (amd64, debug) (push) Failing after 24s
Builds / ExectOS (amd64, release) (push) Failing after 27s
Builds / ExectOS (i686, debug) (push) Failing after 24s
Builds / ExectOS (i686, release) (push) Failing after 24s
2025-09-08 15:29:13 +02:00
harraiken 6ee7243e04 Refactor APIC delivery mode handling and unify naming
Builds / ExectOS (amd64, debug) (push) Successful in 1m15s
Builds / ExectOS (amd64, release) (push) Successful in 25s
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (i686, debug) (push) Successful in 1m24s
2025-09-01 19:54:12 +02:00
harraiken d45cc5ffe5 Fix incorrect APIC delivery mode definitions
Builds / ExectOS (i686, release) (push) Failing after 28s
Builds / ExectOS (amd64, release) (push) Failing after 29s
Builds / ExectOS (amd64, debug) (push) Failing after 34s
Builds / ExectOS (i686, debug) (push) Failing after 32s
2025-09-01 19:32:29 +02:00
harraiken 9f6121e9b2 Map the physical page for trampoline code
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, debug) (push) Successful in 44s
Builds / ExectOS (amd64, debug) (push) Successful in 45s
2025-08-20 20:37:55 +02:00
harraiken ebae8c655c Expand CR4, MSR, and EFER register definitions
Builds / ExectOS (amd64, debug) (push) Successful in 24s
Builds / ExectOS (i686, debug) (push) Successful in 25s
Builds / ExectOS (amd64, release) (push) Successful in 42s
Builds / ExectOS (i686, release) (push) Successful in 41s
2025-08-19 23:59:58 +02:00
harraiken 1a0bc7f65f Update and correct CR4 bit definitions
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, release) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (amd64, debug) (push) Successful in 43s
2025-08-19 21:45:13 +02:00
harraiken 1dcd3fceed Define page map information structure for both supported architectures
Builds / ExectOS (amd64, debug) (push) Successful in 25s
Builds / ExectOS (i686, release) (push) Failing after 33s
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (amd64, release) (push) Successful in 34s
2025-08-16 20:08:12 +02:00
harraiken 22f81a106b Update forward declarations for PML2/PML3 types
Builds / ExectOS (amd64, debug) (push) Successful in 21s
Builds / ExectOS (i686, debug) (push) Failing after 20s
Builds / ExectOS (i686, release) (push) Failing after 34s
Builds / ExectOS (amd64, release) (push) Successful in 36s
2025-08-16 00:33:18 +02:00
harraiken 7e08dc286e Separate types for legacy (PML2) and PAE (PML3) paging
Builds / ExectOS (i686, debug) (push) Failing after 20s
Builds / ExectOS (amd64, debug) (push) Successful in 22s
Builds / ExectOS (amd64, release) (push) Successful in 36s
Builds / ExectOS (i686, release) (push) Failing after 32s
2025-08-16 00:29:20 +02:00
harraiken 560bd8b65e Update CPUID requests
Builds / ExectOS (amd64, debug) (push) Failing after 26s
Builds / ExectOS (amd64, release) (push) Failing after 20s
Builds / ExectOS (i686, release) (push) Failing after 25s
Builds / ExectOS (i686, debug) (push) Failing after 19s
2025-08-10 16:53:45 +02:00
harraiken 574582f977 Add forward declarations for CPUID feature enums
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (i686, release) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 34s
2025-08-10 16:36:32 +02:00
harraiken bb5deb10d5 Rename enumeration lists
Builds / ExectOS (amd64, debug) (push) Successful in 24s
Builds / ExectOS (i686, debug) (push) Successful in 23s
Builds / ExectOS (amd64, release) (push) Successful in 37s
Builds / ExectOS (i686, release) (push) Successful in 36s
2025-08-10 16:32:49 +02:00
harraiken a9a264252a Add enums for CPU feature flags used in CPUID detection
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (amd64, release) (push) Successful in 35s
2025-08-10 16:25:26 +02:00
harraiken 58c2092049 Revert latest changes
Builds / ExectOS (i686, release) (push) Failing after 22s
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (amd64, release) (push) Successful in 2m9s
Builds / ExectOS (amd64, debug) (push) Successful in 2m11s
2025-08-09 14:53:31 +02:00
harraiken 39d8f82caf Define MM_HARDWARE_POOL_PAGE_COUNT
Builds / ExectOS (amd64, debug) (push) Failing after 11s
Builds / ExectOS (amd64, release) (push) Failing after 9s
Builds / ExectOS (i686, release) (push) Failing after 8s
Builds / ExectOS (i686, debug) (push) Failing after 11s
2025-08-08 21:44:33 +02:00
belliash 7b8f4f15cc Add APIC Logical Destination Register (LDR) shifts and correct APIC delivery mode values
Builds / ExectOS (i686) (push) Successful in 6m22s
Builds / ExectOS (amd64) (push) Successful in 23s
2024-07-23 20:14:06 +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 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