Commit Graph

244 Commits

Author SHA1 Message Date
4b2d8ded72
No parameters are expected, explicitly
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:55:12 +01:00
c70d2e2afa
Routines with no prototype cannot use XTAPI calling convention
All checks were successful
Builds / ExectOS (i686) (push) Successful in 30s
Builds / ExectOS (amd64) (push) Successful in 29s
2024-02-20 16:37:57 +01:00
83a976dd3a
Implement RtlCopyString() and RtlCopyWideString() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:25:16 +01:00
015faa53a0
XTAPI calling convention is not supported on variadic routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-02-20 16:21:28 +01:00
e409675f98
Always use RtlSetMemory() to fill a buffer with a specified pattern
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 23s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:16:32 +01:00
477e56e294
Move RtlFillMemory() routine to ntosdrv driver
Some checks failed
Builds / ExectOS (i686) (push) Failing after 42s
Builds / ExectOS (amd64) (push) Successful in 49s
2024-02-20 16:08:10 +01:00
246968045a
Use flags instead of dozen variables
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-18 13:37:17 +01:00
2dd4048416
Switch GUID specifier to %v and %V, thus allowing to write string with both lower and uppercase
All checks were successful
Builds / ExectOS (i686) (push) Successful in 36s
Builds / ExectOS (amd64) (push) Successful in 41s
2024-02-17 22:52:49 +01:00
df627aeb42
Turn %p format compliant with POSIX, add %P XTOS extension to print pointers uppercase
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-16 22:36:48 +01:00
109fd094ea
Fix NULL pointer
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 23s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-16 19:05:53 +01:00
00cca9a1c1
Add %U XTOS extension for UUID/GUID string argument support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-16 19:02:44 +01:00
edd18b1dea
Add %Z MSVC extension for ANSI/Unicode string argument support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 30s
2024-02-16 18:14:16 +01:00
a1ec5e410d
Refactor RtlpWriteWideStringValue() and RtlpWriteWideStringStringValue() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-16 17:03:10 +01:00
8dd0e70dd9
Implement printf-alike wide string formatting mechanism, currently without floating point numbers support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 30s
2024-02-15 23:01:13 +01:00
8a62a2b367
Switch calling convention to stdcall
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 59s
Builds / ExectOS (i686) (push) Successful in 56s
2024-02-14 14:53:32 +01:00
7e23484252
Implement RtlReverseWideString(), RtlTrimLeftWideString(), RtlTrimRightWideString() and RtlTrimWideString() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 19s
Builds / ExectOS (i686) (push) Successful in 20s
2024-02-14 14:46:34 +01:00
d964e4b408
Implement RtlConcatenateString(), RtlReverseString() and RtlTokenizeString() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 22s
Builds / ExectOS (i686) (push) Successful in 20s
2024-02-14 14:38:28 +01:00
55fb9e2eb1
Implement RtlGetBaseExponent() routine for getting base(10) exponent of a given floating point value
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 19s
2024-02-14 00:02:04 +01:00
cca2e65376
Rework 64-bit division routines to support i686 architecture
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 14s
2024-02-13 16:56:29 +01:00
a852993842
Add missing forward references to math related routines
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 19s
Builds / ExectOS (i686) (push) Failing after 16s
2024-02-13 16:25:41 +01:00
99bdd917d9
Add basic kernel math support
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Failing after 16s
2024-02-13 14:05:37 +01:00
77bc796769
Implement HlClearApicErrors() and HlSendEoi() routines, change HlDisableLegacyPic() calling convention
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 20s
2024-02-09 15:11:14 +01:00
73cd4bd4f2
Export runlevel related routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 20s
Builds / ExectOS (i686) (push) Successful in 18s
2024-02-07 22:26:38 +01:00
0fc14f6f82
Export spinlock related routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 21s
Builds / ExectOS (i686) (push) Successful in 20s
2024-02-07 22:19:34 +01:00
2d7309476a
Describe kernel executive layer
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 20s
Builds / ExectOS (i686) (push) Successful in 21s
2024-02-07 20:05:20 +01:00
18934ae79d
NTOS compatibility layer moved to 3rd party driver
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 19s
Builds / ExectOS (i686) (push) Successful in 19s
2024-02-07 17:50:01 +01:00
460ba7c857
Fix the filename used for exports
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 25s
2024-02-07 17:15:23 +01:00
99abcd63d1
Implement basic kernel spinlock mechanism
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-05 22:07:39 +01:00
7727888087
Implement ArFlushTlb() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s
2024-02-04 23:43:38 +01:00
abdb9b25db
Implement RtlAtomicBitTestAndSet() and RtlAtomicBitTestAndSet64() intrinsic routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-04 22:34:22 +01:00
9ce841e957
Implement memory barriers
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-04 22:10:37 +01:00
cd59c1e80d
Add missing routine description
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-31 16:23:05 +01:00
f0204bf448
Enable linker map for xtoskrnl
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-31 16:09:35 +01:00
8e61503de1
Implement RtlCompareGuids() kernel routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-31 16:08:06 +01:00
579b4dc970
Implement RtlTrimLeftString(), RtlTrimRightString() and RtlTrimString() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 5m31s
Builds / ExectOS (i686) (push) Successful in 27s
2023-12-09 20:18:02 +01:00
d7fbe531fd
Improvements in string and wide string support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
* Implement RtlCompareString(), RtlCompareStringInsensitive(), RtlCompareWideString() and RtlCompareWideStringInsensitive()
* Rename some routines t omatch naming conventions
* Switch to CHAR in string operations
2023-12-06 23:00:18 +01:00
1e696258c2
Initialize framebuffer and processor
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-29 22:49:15 +01:00
31b8cd8d3d
Update HlDisablePic() description
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-29 22:43:57 +01:00
dddd1eb183
Rename internal kernel headers to distinguish them easily from XTDK
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 25s
2023-11-29 20:39:59 +01:00
59aa62916a
Include architecture specific HAL headers
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-29 20:15:12 +01:00
3800138f52
Move (A)PIC related forward references to arch-specific headers
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 15s
2023-11-29 20:13:03 +01:00
Jozef Nagy
c8a54e602b
Disable legacy 8259 PIC before enabling APIC
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
Reviewed-on: #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
669b84a826
Add architecture related information to kernel startup string
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-29 18:32:03 +01:00
9aafa63617
Move CPU and PIC support into common for i686 and amd64 place
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 25s
2023-11-29 18:26:46 +01:00
f6c621c2a6
Basic processor initialization code
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 15s
2023-11-28 22:31:39 +01:00
d4ee87fd62
Fix function prototype
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 28s
2023-11-28 15:39:32 +01:00
d17b06a180
Register interrupt handlers once the APIC initialization is done
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 24s
2023-11-28 14:20:23 +01:00
e5adc31af7
Implement basic APIC support, including X2APIC
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-27 22:38:15 +01:00
e886baa0d8
Fix reading from and writting to APIC registers
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-26 16:57:40 +01:00
0e6844e2fa
Fix page fault on accessing initial thread frame
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 24s
2023-11-26 14:14:54 +01:00