replace nob with ms' build, move disk creation to build.bat, major comment cleanup, remove old and stupid tests, overhaul interrupt management with per-CPU vector allocation, affinity migration and safe teardown, add proper IOAPIC routing and PCI MSI/MSI-X/INTx support, migrate drivers to the new interrupt API, integrate ACPICA with a proper OS services layer, move ACPI firmware events, power button handling and S5 shutdown into acpi.sys, add parallel driver startup and atomic publication, replace PnP arrays with dynamic lists, redesign service startup again to be asynchronous, add delayed startup mode for services, allow omitting keys in services.ini, fix acpi ec deferred work handling, fix kernel threads having garbage exit code.
This commit is contained in:
1 parent
d36f19509c
commit
36eef8f58d
696 files changed
+147281
-7530
No files matched your search
@@ -39,7 +39,6 @@ static inline void PutPixelRaw(int32_t x, int32_t y, uint32_t color) {
|
||||
gFb[y * gStride + x] = color;
|
||||
}
|
||||
|
||||
// Implements the screen Flush Rows operation.
|
||||
static void ScreenFlushRows(int startY, int rows) {
|
||||
if (!gBackbuffer || rows <= 0)
|
||||
return;
|
||||
@@ -73,12 +72,10 @@ static void ScreenClear(uint32_t color) {
|
||||
gCursorX = 0; gCursorY = 0;
|
||||
}
|
||||
|
||||
// Implements the screen Put Pixel operation.
|
||||
static void ScreenPutPixel(int32_t x, int32_t y, uint32_t color) {
|
||||
PutPixelRaw(x, y, color);
|
||||
}
|
||||
|
||||
// Implements the screen Blit operation.
|
||||
static void ScreenBlit(int32_t x, int32_t y, int32_t w, int32_t h, const uint32_t* pixels) {
|
||||
// Calculate clipping bounds.
|
||||
int startX = (x < 0) ? 0 : x;
|
||||
@@ -111,10 +108,8 @@ static void ScreenBlit(int32_t x, int32_t y, int32_t w, int32_t h, const uint32_
|
||||
}
|
||||
}
|
||||
|
||||
// Implements the screen Get Size operation.
|
||||
static void ScreenGetSize(int* w, int* h) { *w = gWidth; *h = gHeight; }
|
||||
|
||||
// Implements the screen Get Framebuffer operation.
|
||||
static KSTATUS ScreenGetFramebuffer(HAL_FRAMEBUFFER_INFO* outInfo) {
|
||||
if (!outInfo || !gFb || gWidth <= 0 || gHeight <= 0 || gStride <= 0)
|
||||
return NTLSTATUS_INVALID_PARAMETER;
|
||||
@@ -127,7 +122,6 @@ static KSTATUS ScreenGetFramebuffer(HAL_FRAMEBUFFER_INFO* outInfo) {
|
||||
return NTLSTATUS_SUCCESS;
|
||||
}
|
||||
|
||||
// Implements the screen Scroll operation.
|
||||
static void ScreenScroll(int32_t lines) {
|
||||
if (lines <= 0)
|
||||
return;
|
||||
@@ -153,7 +147,6 @@ static void ScreenScroll(int32_t lines) {
|
||||
ScreenFlushRows(0, gHeight);
|
||||
}
|
||||
|
||||
// Implements the screen Put Char operation.
|
||||
static void ScreenPutChar(char c, int32_t x, int32_t y, uint32_t fg, uint32_t bg) {
|
||||
const uint8_t* glyph = Font8x16 + ((uint8_t)c * 16);
|
||||
for (int32_t row = 0; row < 16; row++) {
|
||||
@@ -165,7 +158,6 @@ static void ScreenPutChar(char c, int32_t x, int32_t y, uint32_t fg, uint32_t bg
|
||||
}
|
||||
}
|
||||
|
||||
// Implements the screen Print Char operation.
|
||||
static void ScreenPrintChar(char c, uint32_t fg, uint32_t bg) {
|
||||
int cols = gWidth / FONT_W;
|
||||
int rows = gHeight / FONT_H;
|
||||
|
||||
Reference in new issue
Block a user