83a976dd3a
Implement RtlCopyString() and RtlCopyWideString() routines
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
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-02-20 16:21:28 +01:00
477e56e294
Move RtlFillMemory() routine to ntosdrv driver
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
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
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
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
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
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
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
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
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
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
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
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
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
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 14s
2024-02-13 16:56:29 +01:00
99bdd917d9
Add basic kernel math support
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Failing after 16s
2024-02-13 14:05:37 +01:00
abdb9b25db
Implement RtlAtomicBitTestAndSet() and RtlAtomicBitTestAndSet64() intrinsic routines
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-04 22:34:22 +01:00
cd59c1e80d
Add missing routine description
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-31 16:23:05 +01:00
8e61503de1
Implement RtlCompareGuids() kernel routine
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
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
...
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
12f946c92d
Fixes to I/O registers related routines
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 31s
2023-11-19 00:39:52 +01:00
2621cb6d8a
Turn atomic routines architecture independent
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Failing after 14s
2023-10-29 21:43:05 +01:00
a359c9b2e8
Keep only atomic routines
Builds / ExectOS (amd64) (push) Successful in 31s
Builds / ExectOS (i686) (push) Successful in 29s
2023-10-29 18:22:11 +01:00
3f2baa5b50
Rename RtlInterlockedDecrementLongPtr() to follow routines naming convention
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2023-10-29 12:21:19 +01:00
cf7c467637
Implement RtlInterlockedExchangePointer() routine
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 27s
2023-10-29 11:48:31 +01:00
f549ca54a1
Implement I/O registers related routines
ci/woodpecker/push/build Pipeline was successful
2023-04-05 00:04:11 +02:00
4073b1589d
Rename endian conversion routines to match naming convention
ci/woodpecker/push/build Pipeline was successful
2023-04-04 21:02:14 +02:00
1f8026db2f
Implement RtlInterlockedCompareExchangePointer() and RtlInterlockedDecrementLongPtr() atomic routines
ci/woodpecker/push/build Pipeline was successful
2023-03-17 18:06:53 +01:00
2f1c5a22a5
Add __C_specific_handler() and _except_handler3() stubs allowing to use '__try {} __except() {}' (SEH) constructions
ci/woodpecker/push/build Pipeline was successful
2023-02-25 23:01:13 +01:00
d427ca20fb
Always include xtos.h in kernel sources
ci/woodpecker/push/build Pipeline was successful
2023-02-20 00:21:52 +01:00
b1c2b209e3
Implement RtlGetStackLimits() routine
ci/woodpecker/push/build Pipeline was successful
2023-02-15 20:12:58 +01:00
050f24f877
Implement routines for atomically work with linked lists
ci/woodpecker/push/build Pipeline was successful
2023-02-13 22:36:03 +01:00
9e5fb84412
More routines for performing atomic bitwise AND/OR/XOR operations
ci/woodpecker/push/build Pipeline was successful
2023-02-12 23:11:23 +01:00
5a86d61b78
Implement routines for performing atomic operations
ci/woodpecker/push/build Pipeline was successful
2023-02-12 22:46:58 +01:00
d8c68ed003
Add endian conversion routines
ci/woodpecker/push/build Pipeline was successful
2023-02-08 16:33:57 +01:00
bffb93b58c
Add missing calling convention
ci/woodpecker/push/build Pipeline was successful
2022-12-27 22:05:46 +01:00
8f3a4aef60
Code formatting
ci/woodpecker/push/build Pipeline was successful
2022-12-23 22:27:08 +01:00
b275caf161
Implement RtlRemoveEntryList() routine
ci/woodpecker/push/build Pipeline was successful
2022-11-28 23:00:20 +01:00
b1c08e4a9f
Implement RtlStringLength() and RtlStringToWideString() routines
ci/woodpecker/push/build Pipeline was successful
2022-10-25 23:45:12 +02:00
6a0a1eab23
Add missing IN/OUT indicators
ci/woodpecker/push/build Pipeline was successful
2022-10-02 14:09:29 +02:00
6c6e5fe70a
Implement RtlListLoop() routine for detecting loops in linked lists
ci/woodpecker/push/build Pipeline was successful
2022-09-27 19:30:19 +02:00
67acacf528
Use SIZE_T for length limiter
ci/woodpecker/push/build Pipeline was successful
2022-09-26 23:02:38 +02:00
a0f359bcf7
Implement RtlWideStringConcatenate() routine
ci/woodpecker/push/build Pipeline was successful
2022-09-26 17:26:00 +02:00
c7f53e193a
Implement RtlWideStringLength() routine
ci/woodpecker/push/build Pipeline was successful
2022-09-26 16:53:58 +02:00
41f1aee6e3
Implemented RtlCompareMemory() for better compatibility with NT and made use of it in RtlSameMemory(), implemented RtlFillMemory(), RtlMoveMemory(), RtlSetMemory() and RtlZeroMemory() as well
ci/woodpecker/push/build Pipeline was successful
2022-09-06 17:51:44 +02:00
d56b10f252
Various fixes to the existing routines:
...
ci/woodpecker/push/build Pipeline was successful
* Export RtlWideStringTokenize()
* Allow to compare whole strings in RtlWideStringCompare() when no length specified
* RtlSameMemory() returns boolean now
* Source bytes can be constant value in RtlCopyMemory()
2022-09-05 15:17:12 +02:00
a7d07e7ecb
Integrate xtklib with the kernel
ci/woodpecker/push/build Pipeline was successful
2022-08-30 23:23:02 +02:00