summaryrefslogtreecommitdiff
path: root/src/user/include/pland
diff options
context:
space:
mode:
authorBenji Dial <benji6283@gmail.com>2021-02-16 20:38:53 -0500
committerBenji Dial <benji6283@gmail.com>2021-02-16 20:38:53 -0500
commit47513bd32c256c4f35e3a8ced7d9fd7e15903530 (patch)
treecafdf75d52a954814726e07445063c41bb6599f9 /src/user/include/pland
parentbd7facc4b5f53481dc85a15ba123361b2758655b (diff)
downloadportland-os-47513bd32c256c4f35e3a8ced7d9fd7e15903530.tar.gz
terminal application with ipc, shift+pause state dumper, hello world for terminal, meminfo popup program
Diffstat (limited to 'src/user/include/pland')
-rw-r--r--src/user/include/pland/pcrt.h1
-rw-r--r--src/user/include/pland/syscall.h20
2 files changed, 11 insertions, 10 deletions
diff --git a/src/user/include/pland/pcrt.h b/src/user/include/pland/pcrt.h
index 42158cd..795738e 100644
--- a/src/user/include/pland/pcrt.h
+++ b/src/user/include/pland/pcrt.h
@@ -17,5 +17,6 @@ void __pcrt_quit() __attribute__ ((noreturn));
extern _task_handle_t calling_task;
extern _task_handle_t stdio_task;
+extern _task_handle_t this_task;
#endif
diff --git a/src/user/include/pland/syscall.h b/src/user/include/pland/syscall.h
index 6d327d5..6870865 100644
--- a/src/user/include/pland/syscall.h
+++ b/src/user/include/pland/syscall.h
@@ -39,8 +39,8 @@ enum _scn {
_SCN_PAINT_WINDOW,
_SCN_GET_WIN_ACTION,
_SCN_WAIT_FOR_ACTION,
- _SCN_WAIT_IPC_SEND,
- _SCN_WAIT_FOR_ANY_IPC,
+ _SCN_WAIT_IPC_SENT,
+ _SCN_WAIT_ANY_IPC_SENT,
_SCN_FIND_UNREAD_IPC,
_SCN_WAIT_IPC_READ,
_SCN_IS_TASK_RUNNING
@@ -137,7 +137,7 @@ static inline uint32_t _ipc_send(_task_handle_t handle, uint32_t count, const vo
}
static inline uint32_t _ipc_read(_task_handle_t handle, uint32_t count, void *buffer) {
- return _sc3(_SCN_IPC_SEND, handle, count, (uint32_t)buffer);
+ return _sc3(_SCN_IPC_READ, handle, count, (uint32_t)buffer);
}
static inline void *_allocate_ram(uint32_t pages) {
@@ -184,11 +184,11 @@ static inline void _delete_window(_window_handle_t window) {
_sc1(_SCN_DELETE_WINDOW, (uint32_t)window);
}
-static inline void _resize_window(_window_handle_t window, uint16_t width, uint16_t height) {
- _sc3(_SCN_RESIZE_WINDOW, (uint32_t)window, width, height);
+static inline void _resize_window(_window_handle_t window, uint16_t width, uint16_t height, const void *pixel_buffer) {
+ _sc4(_SCN_RESIZE_WINDOW, (uint32_t)window, width, height, (uint32_t)pixel_buffer);
}
-static inline void _reassign_pixbuf(_window_handle_t window, void *pixel_buffer) {
+static inline void _reassign_pixbuf(_window_handle_t window, const void *pixel_buffer) {
_sc2(_SCN_REASSIGN_PIXBUF, (uint32_t)window, (uint32_t)pixel_buffer);
}
@@ -204,16 +204,16 @@ static inline void _wait_for_action() {
_sc0(_SCN_WAIT_FOR_ACTION);
}
-static inline void _wait_ipc_send(_task_handle_t sending_task) {
- _sc1(_SCN_WAIT_IPC_SEND, sending_task);
+static inline void _wait_ipc_sent(_task_handle_t sending_task) {
+ _sc1(_SCN_WAIT_IPC_SENT, sending_task);
}
static inline void _system_log(const char *sz) {
_sc1(_SCN_SYSTEM_LOG, (uint32_t)sz);
}
-static inline void _wait_for_any_ipc() {
- _sc0(_SCN_WAIT_FOR_ANY_IPC);
+static inline void _wait_for_any_ipc_sent() {
+ _sc0(_SCN_WAIT_ANY_IPC_SENT);
}
static inline _task_handle_t _find_unread_ipc() {