Commit Graph
133 Commits
Author SHA1 Message Date
belliash 26d5118cea Add forward references to bit map related routines 2024-03-12 22:02:24 +01:00
belliash bb44caee31 Implement HlPutCharacter() routine 2024-03-10 17:02:30 +01:00
belliash f9714a79e4 Add support for writing floating point values 2024-02-22 23:39:11 +01:00
belliash 0c7cf6f6d3 Implement RtlInfiniteDouble() and RtlNanDouble() routines 2024-02-21 19:55:16 +01:00
belliash 4b2d8ded72 No parameters are expected, explicitly 2024-02-20 16:55:12 +01:00
belliash c70d2e2afa Routines with no prototype cannot use XTAPI calling convention 2024-02-20 16:37:57 +01:00
belliash 015faa53a0 XTAPI calling convention is not supported on variadic routines 2024-02-20 16:21:28 +01:00
belliash 00cca9a1c1 Add %U XTOS extension for UUID/GUID string argument support 2024-02-16 19:02:44 +01:00
belliash a1ec5e410d Refactor RtlpWriteWideStringValue() and RtlpWriteWideStringStringValue() routines 2024-02-16 17:03:10 +01:00
belliash 8dd0e70dd9 Implement printf-alike wide string formatting mechanism, currently without floating point numbers support 2024-02-15 23:01:13 +01:00
belliash 55fb9e2eb1 Implement RtlGetBaseExponent() routine for getting base(10) exponent of a given floating point value 2024-02-14 00:02:04 +01:00
belliash a852993842 Add missing forward references to math related routines 2024-02-13 16:25:41 +01:00
belliash 77bc796769 Implement HlClearApicErrors() and HlSendEoi() routines, change HlDisableLegacyPic() calling convention 2024-02-09 15:11:14 +01:00
belliash 73cd4bd4f2 Export runlevel related routines 2024-02-07 22:26:38 +01:00
belliash 0fc14f6f82 Export spinlock related routines 2024-02-07 22:19:34 +01:00
belliash 99abcd63d1 Implement basic kernel spinlock mechanism 2024-02-05 22:07:39 +01:00
belliash 7727888087 Implement ArFlushTlb() routine 2024-02-04 23:43:38 +01:00
belliash abdb9b25db Implement RtlAtomicBitTestAndSet() and RtlAtomicBitTestAndSet64() intrinsic routines 2024-02-04 22:34:22 +01:00
belliash 9ce841e957 Implement memory barriers 2024-02-04 22:10:37 +01:00
belliash dddd1eb183 Rename internal kernel headers to distinguish them easily from XTDK 2023-11-29 20:39:59 +01:00
belliash 59aa62916a Include architecture specific HAL headers 2023-11-29 20:15:12 +01:00
belliash 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
belliash f6c621c2a6 Basic processor initialization code 2023-11-28 22:31:39 +01:00
belliash d4ee87fd62 Fix function prototype 2023-11-28 15:39:32 +01:00
belliash d17b06a180 Register interrupt handlers once the APIC initialization is done 2023-11-28 14:20:23 +01:00
belliash e5adc31af7 Implement basic APIC support, including X2APIC 2023-11-27 22:38:15 +01:00
belliash bed49fa0ac Fix function prototypes using fastcall and stdcall calling convensions 2023-11-25 23:25:44 +01:00
belliash e245754d95 Add running level management support 2023-11-25 23:14:15 +01:00
belliash 1cb21a81dd Rename HlInitializeDisplay() to HlInitializeFrameBuffer() 2023-11-22 20:36:05 +01:00
belliash f28c870192 Implement KeHaltSystem() routine 2023-11-22 19:24:14 +01:00
belliash 1eecad21db Implement HlReadApicRegister() and HlWriteApicRegister() routines for basic APIC support 2023-11-20 15:26:03 +01:00
belliash 71d0608643 Implement ArGetStackPointer() routine 2023-11-19 00:09:16 +01:00
belliash ec4a0fcb70 Add missing KepRetireDpcList() routine forward reference 2023-11-15 23:19:20 +01:00
belliash d35dd4fce3 Save processor state during kernel initialization 2023-11-15 15:00:38 +01:00
belliash ccd0514416 Implement more CPU-related routines 2023-11-15 14:52:18 +01:00
belliash 1d9a79736a Allow to postpone thread startup 2023-11-11 16:30:53 +01:00
belliash 63f8dbc59b Initialize CPU power structures, idle process and idle thread 2023-11-02 23:07:11 +01:00
belliash 2621cb6d8a Turn atomic routines architecture independent 2023-10-29 21:43:05 +01:00
belliash 783a4a2aa0 Finish PoInitializeProcessorControlBlock() routine implementation 2023-10-29 20:14:10 +01:00
belliash a359c9b2e8 Keep only atomic routines 2023-10-29 18:22:11 +01:00
belliash 3f2baa5b50 Rename RtlInterlockedDecrementLongPtr() to follow routines naming convention 2023-10-29 12:21:19 +01:00
belliash cf7c467637 Implement RtlInterlockedExchangePointer() routine 2023-10-29 11:48:31 +01:00
belliash 6d63750fc2 Rename KepArchInitialize() routine to KepInitializeMachine() 2023-10-29 10:38:23 +01:00
belliash f05a262da2 Cleanup XTDK and XTOSKRNL headers 2023-10-29 09:58:47 +01:00
belliash 841a6b304b Cleanup KE subsystem headers 2023-10-29 09:14:46 +01:00
belliash 798e4c1d22 Cleanup MM subsystem headers 2023-10-29 00:52:05 +02:00
belliash 600c86949b Cleanup RTL subsystem headers 2023-10-29 00:14:01 +02:00
belliash 4ea54859f2 Add missing HL routine definitions 2023-10-28 23:36:21 +02:00
belliash ad15c55a39 Cleanup AR subsystem headers 2023-10-28 23:35:34 +02:00