Changed a lot of files. Summary: profiler support; "SafeFunction"; UnlockDeadLock kernel config; Code optimization & more

This commit is contained in:
Alex
2022-11-28 08:25:37 +02:00
parent 2fba834d41
commit 0289054900
62 changed files with 1462 additions and 558 deletions

View File

@ -14,6 +14,7 @@ enum DriverReturnCode
NOT_ACCEPTED,
INVALID_KERNEL_API,
DEVICE_NOT_SUPPORTED,
SYSTEM_NOT_SUPPORTED,
KERNEL_API_VERSION_NOT_SUPPORTED
};
@ -22,7 +23,8 @@ enum DriverBindType
BIND_NULL,
BIND_INTERRUPT,
BIND_PROCESS,
BIND_PCI
BIND_PCI,
BIND_INPUT
};
struct KernelAPI
@ -80,7 +82,7 @@ struct KernelAPI
void (*WriteSector)(unsigned int DriverID, unsigned long Sector, unsigned char *Data, unsigned int SectorCount, unsigned char Port);
} AHCI;
} Disk;
} Commmand;
} Command;
} __attribute__((packed));
@ -95,7 +97,8 @@ enum CallbackReason
BindReason,
UnbindReason,
InterruptReason,
ProcessReason
ProcessReason,
InputReason,
};
struct KernelCallback
@ -130,6 +133,22 @@ struct KernelCallback
} Fetch;
} DiskCallback;
struct
{
struct
{
unsigned long X;
unsigned long Y;
unsigned long Z;
struct
{
bool Left;
bool Right;
bool Middle;
} Buttons;
} Mouse;
} InputCallback;
struct
{
unsigned char Vector;