My Project
Loading...
Searching...
No Matches
mtstatus.h
Go to the documentation of this file.
1/*
2 * PROJECT: MatanelOS Kernel
3 * LICENSE: GPLv3
4 * PURPOSE: MTStatus definitions per subsystem or kernel wide. (STATUS RETURNS)
5 */
6
7#ifndef MTSTATUS_H
8#define MTSTATUS_H
9
10#include <stdint.h>
11
12typedef int32_t MTSTATUS;
13
15#define MT_SUCCEEDED(Status) ((Status) >= 0)
16#define MT_FAILURE(Status) ((Status) < 0)
17
18//
19// ==========================
20// GENERAL MTSTATUS
21// ==========================
22#define MT_SUCCESS ((MTSTATUS)0x00000000L)
23#define MT_NOT_IMPLEMENTED ((MTSTATUS)0xC0000001L)
24#define MT_INVALID_PARAM ((MTSTATUS)0xC0000002L)
25#define MT_INVALID_STATE ((MTSTATUS)0xC0000003L)
26#define MT_ACCESS_DENIED ((MTSTATUS)0xC0000004L)
27#define MT_TIMEOUT ((MTSTATUS)0xC0000005L)
28#define MT_UNSUPPORTED_OP ((MTSTATUS)0xC0000006L)
29#define MT_ALREADY_EXISTS ((MTSTATUS)0xC0000007L)
30#define MT_NOT_FOUND ((MTSTATUS)0xC0000008L)
31#define MT_GENERAL_FAILURE ((MTSTATUS)0xC0000009L)
32#define MT_NO_RESOURCES ((MTSTATUS)0xC0000010L)
33#define MT_INVALID_CHECK ((MTSTATUS)0xC0000011L)
34#define MT_TYPE_MISMATCH ((MTSTATUS)0xC0000012L)
35#define MT_OBJECT_DELETED ((MTSTATUS)0xC0000013L)
36#define MT_INVALID_HANDLE ((MTSTATUS)0xC0000014L)
37
38//
39// ==========================
40// MEMORY MTSTATUS
41// ==========================
42#define MT_NO_MEMORY ((MTSTATUS)0xC1000001L)
43#define MT_MEMORY_LIMIT ((MTSTATUS)0xC1000002L)
44#define MT_PAGE_FAULT_ERROR ((MTSTATUS)0xC1000003L)
45#define MT_HEAP_CORRUPTION ((MTSTATUS)0xC1000004L)
46#define MT_INVALID_ADDRESS ((MTSTATUS)0xC1000005L)
47#define MT_CONFLICTING_ADDRESSES ((MTSTATUS)0xC1000006L)
48
49//
50// ==========================
51// VIRTUAL FILESYSTEM MTSTATUS
52// ==========================
53#define MT_IO_ERROR ((MTSTATUS)0xC2000001L)
54#define MT_VFS_CORRUPTED ((MTSTATUS)0xC2000002L)
55#define MT_VFS_READ_ONLY ((MTSTATUS)0xC2000003L)
56#define MT_VFS_NO_SPACE ((MTSTATUS)0xC2000004L)
57#define MT_VFS_PERMISSION_DENIED ((MTSTATUS)0xC2000005L)
58#define MT_VFS_INITIALIZATION_FAILURE ((MTSTATUS)0xC2000006L)
59#define MT_VFS_GENERAL_FAILURE ((MTSTATUS)0xC2000007L)
60
61//
62// ==========================
63// FAT32-specific MTSTATUS
64// ==========================
65#define MT_FAT32_CLUSTERS_FULL ((MTSTATUS)0xC2010001L) // No free clusters left
66#define MT_FAT32_INVALID_CLUSTER ((MTSTATUS)0xC2010002L) // Invalid cluster reference
67#define MT_FAT32_DIR_FULL ((MTSTATUS)0xC2010003L) // Directory has no free entries
68#define MT_FAT32_FILE_NOT_FOUND ((MTSTATUS)0xC2010004L)
69#define MT_FAT32_PATH_TOO_LONG ((MTSTATUS)0xC2010005L)
70#define MT_FAT32_INVALID_FILENAME ((MTSTATUS)0xC2010006L)
71#define MT_FAT32_EOF ((MTSTATUS)0xC2010007L) // End of file reached
72#define MT_FAT32_DIRECTORY_ALREADY_EXISTS ((MTSTATUS)0xC2010008L) // The specified directory already exists in the path.
73#define MT_FAT32_PARENT_PATH_NOT_FOUND ((MTSTATUS)0xC2010009L) // The directory's parent path has not been found.
74#define MT_FAT32_PARENT_PATH_NOT_DIR ((MTSTATUS)0xC2010010L) // The directory's parent path is not a directory.
75#define MT_FAT32_INVALID_WRITE_MODE ((MTSTATUS)0xC2010011L) // The write mode given to the function is invalid. (Not in FAT32_WRITE_MODE enum)
76#define MT_FAT32_CLUSTER_NOT_FOUND ((MTSTATUS)0xC2010012L) // The directory's / file cluster couldn't have been found.
77#define MT_FAT32_CLUSTER_GENERAL_FAILURE ((MTSTATUS)0xC2010013L) // General failure on a cluster operation.
78#define MT_FAT32_DIRECTORY_NOT_FOUND ((MTSTATUS)0xC2010014L) // FAT32 Directory not found.
79#define MT_FAT32_FILENAME_TOO_LONG ((MTSTATUS)0xC2010015L) // FAT32 Filename too long..
80
81//
82// ==========================
83// DRIVER / DEVICE MTSTATUS
84// ==========================
85#define MT_DEVICE_NOT_READY ((MTSTATUS)0xC3000001L)
86#define MT_DEVICE_ERROR ((MTSTATUS)0xC3000002L)
87#define MT_DEVICE_TIMEOUT ((MTSTATUS)0xC3000003L)
88#define MT_DEVICE_UNSUPPORTED ((MTSTATUS)0xC3000004L)
89#define MT_AHCI_INIT_FAILED ((MTSTATUS)0xC3010001L)
90#define MT_AHCI_PORT_FAILURE ((MTSTATUS)0xC3010002L)
91#define MT_AHCI_READ_FAILURE ((MTSTATUS)0xC3010003L)
92#define MT_AHCI_WRITE_FAILURE ((MTSTATUS)0xC3010004L)
93#define MT_AHCI_TIMEOUT ((MTSTATUS)0xC3010005L)
94#define MT_AHCI_GENERAL_FAILURE ((MTSTATUS)0xC3010006L)
95
96//
97// ==========================
98// THREAD / SCHEDULER MTSTATUS
99// ==========================
100#define MT_THREAD_NOT_FOUND ((MTSTATUS)0xC4000001L)
101#define MT_THREAD_CREATION_FAILURE ((MTSTATUS)0xC4000002L)
102#define MT_SCHEDULER_ERROR ((MTSTATUS)0xC4000003L)
103#define MT_INVALID_IRQL ((MTSTATUS)0xC4000004L)
104
105//
106// ==========================
107// MUTEX MTSTATUS
108// ==========================
109#define MT_MUTEX_ALREADY_OWNED ((MTSTATUS)0xC5000001L)
110#define MT_MUTEX_NOT_OWNED ((MTSTATUS)0xC5000002L)
111#define MT_INVALID_LOCK ((MTSTATUS)0xC500003L)
112
113//
114// ==========================
115// EVENT MTSTATUS
116// ==========================
117#define MT_EVENT_ALREADY_SIGNALED ((MTSTATUS)0xC6000001L)
118
119//
120// ==========================
121// PROCESS MTSTATUS
122// ==========================
123#define MT_PROCESS_IS_TERMINATING ((MTSTATUS)0xC7000000L)
124
125//
126// ==========================
127// EXCEPTION MTSTATUSES
128// ==========================
129#define MT_ACCESS_VIOLATION ((MTSTATUS)0xC8000000L)
130#define MT_GUARD_PAGE_VIOLATION ((MTSTATUS)0xC8000001L)
131
132#endif // MTSTATUS_H
int32_t MTSTATUS
Definition mtstatus.h:12