forked from AbleOS/ableos
18 lines
444 B
Plaintext
18 lines
444 B
Plaintext
|
request_page := fn(page_count: u8): ^u8 {
|
||
|
msg := "\{00}\{01}xxxxxxxx\0";
|
||
|
msg_page_count := msg + 1;
|
||
|
*msg_page_count = page_count;
|
||
|
return @eca(^u8, 3, 2, msg, 12);
|
||
|
}
|
||
|
|
||
|
release_page := fn(ptr: ^u8, page_count: u8): void {
|
||
|
msg := "\{01}\{00}xxxxxxxx\0";
|
||
|
|
||
|
msg_page_count := msg + 1;
|
||
|
*msg_page_count = page_count;
|
||
|
|
||
|
msg_ptr := @as(^^u8, @bitcast(msg+2));
|
||
|
*msg_ptr = ptr;
|
||
|
|
||
|
return @eca(void, 3, 2, msg, 12);
|
||
|
}
|