Commit Graph

92 Commits

Author SHA1 Message Date
22693a48d3
Rework trap handling assembly code 2024-04-23 15:07:08 +02:00
30a2cb9849
Update timers support 2024-04-21 13:57:55 +02:00
331c5bfeda
Rework initial timer support 2024-04-20 23:15:57 +02:00
51df6c3acb
Update trap handler to allow access to the registers 2024-04-19 16:54:55 +02:00
7193e698f1
Store page map level 2024-04-07 17:49:24 +02:00
e82c3cbf18
Fix function prototypes 2024-04-07 10:37:27 +02:00
04e22c127e
Initial memory manager initialization code 2024-04-07 10:26:12 +02:00
74b2c80869
RtlCountLeadingZeroes64() should take 64bit value 2024-03-23 00:36:59 +01:00
715f842445
Implement RtlClearSetBits(), RtlFindClearBits(), RtlFindSetBits() and RtlSetClearBits() routines 2024-03-22 18:53:30 +01:00
26d5118cea
Add forward references to bit map related routines 2024-03-12 22:02:24 +01:00
bb44caee31
Implement HlPutCharacter() routine 2024-03-10 17:02:30 +01:00
f9714a79e4
Add support for writing floating point values 2024-02-22 23:39:11 +01:00
0c7cf6f6d3
Implement RtlInfiniteDouble() and RtlNanDouble() routines 2024-02-21 19:55:16 +01:00
4b2d8ded72
No parameters are expected, explicitly 2024-02-20 16:55:12 +01:00
c70d2e2afa
Routines with no prototype cannot use XTAPI calling convention 2024-02-20 16:37:57 +01:00
015faa53a0
XTAPI calling convention is not supported on variadic routines 2024-02-20 16:21:28 +01:00
00cca9a1c1
Add %U XTOS extension for UUID/GUID string argument support 2024-02-16 19:02:44 +01:00
a1ec5e410d
Refactor RtlpWriteWideStringValue() and RtlpWriteWideStringStringValue() routines 2024-02-16 17:03:10 +01:00
8dd0e70dd9
Implement printf-alike wide string formatting mechanism, currently without floating point numbers support 2024-02-15 23:01:13 +01:00
55fb9e2eb1
Implement RtlGetBaseExponent() routine for getting base(10) exponent of a given floating point value 2024-02-14 00:02:04 +01:00
a852993842
Add missing forward references to math related routines 2024-02-13 16:25:41 +01:00
77bc796769
Implement HlClearApicErrors() and HlSendEoi() routines, change HlDisableLegacyPic() calling convention 2024-02-09 15:11:14 +01:00
73cd4bd4f2
Export runlevel related routines 2024-02-07 22:26:38 +01:00
0fc14f6f82
Export spinlock related routines 2024-02-07 22:19:34 +01:00
99abcd63d1
Implement basic kernel spinlock mechanism 2024-02-05 22:07:39 +01:00
7727888087
Implement ArFlushTlb() routine 2024-02-04 23:43:38 +01:00
abdb9b25db
Implement RtlAtomicBitTestAndSet() and RtlAtomicBitTestAndSet64() intrinsic routines 2024-02-04 22:34:22 +01:00
9ce841e957
Implement memory barriers 2024-02-04 22:10:37 +01:00
dddd1eb183
Rename internal kernel headers to distinguish them easily from XTDK 2023-11-29 20:39:59 +01:00
59aa62916a
Include architecture specific HAL headers 2023-11-29 20:15:12 +01:00
3800138f52
Move (A)PIC related forward references to arch-specific headers 2023-11-29 20:13:03 +01:00
Jozef Nagy
c8a54e602b
Disable legacy 8259 PIC before enabling APIC
Reviewed-on: xt-sys/exectos#5
Reviewed-by: Rafal Kupiec <belliash@noreply.codingworkshop.git>
Co-authored-by: Jozef Nagy <schkwve@gmail.com>
Co-committed-by: Jozef Nagy <schkwve@gmail.com>
2023-11-29 20:07:16 +01:00
f6c621c2a6
Basic processor initialization code 2023-11-28 22:31:39 +01:00
d4ee87fd62
Fix function prototype 2023-11-28 15:39:32 +01:00
d17b06a180
Register interrupt handlers once the APIC initialization is done 2023-11-28 14:20:23 +01:00
e5adc31af7
Implement basic APIC support, including X2APIC 2023-11-27 22:38:15 +01:00
bed49fa0ac
Fix function prototypes using fastcall and stdcall calling convensions 2023-11-25 23:25:44 +01:00
e245754d95
Add running level management support 2023-11-25 23:14:15 +01:00
1cb21a81dd
Rename HlInitializeDisplay() to HlInitializeFrameBuffer() 2023-11-22 20:36:05 +01:00
f28c870192
Implement KeHaltSystem() routine 2023-11-22 19:24:14 +01:00
1eecad21db
Implement HlReadApicRegister() and HlWriteApicRegister() routines for basic APIC support 2023-11-20 15:26:03 +01:00
71d0608643
Implement ArGetStackPointer() routine 2023-11-19 00:09:16 +01:00
ec4a0fcb70
Add missing KepRetireDpcList() routine forward reference 2023-11-15 23:19:20 +01:00
d35dd4fce3
Save processor state during kernel initialization 2023-11-15 15:00:38 +01:00
ccd0514416
Implement more CPU-related routines 2023-11-15 14:52:18 +01:00
1d9a79736a
Allow to postpone thread startup 2023-11-11 16:30:53 +01:00
63f8dbc59b
Initialize CPU power structures, idle process and idle thread 2023-11-02 23:07:11 +01:00
2621cb6d8a
Turn atomic routines architecture independent 2023-10-29 21:43:05 +01:00
783a4a2aa0
Finish PoInitializeProcessorControlBlock() routine implementation 2023-10-29 20:14:10 +01:00
a359c9b2e8
Keep only atomic routines 2023-10-29 18:22:11 +01:00