Match much of process.c

This commit is contained in:
gamemasterplc 2023-11-23 09:47:39 -06:00
parent 41f0ffb565
commit 015fbf39b1
5 changed files with 261 additions and 35 deletions

View file

@ -31,13 +31,13 @@ typedef struct process {
struct process *child;
struct process *parent;
struct process *next_child;
struct process *last_child;
struct process *first_child;
void *heap;
u16 exec;
u16 stat;
u16 prio;
s32 sleep_time;
void *base_sp;
u32 base_sp;
jmp_buf jump;
void (*dtor)(void);
void *user_data;

View file

@ -40,9 +40,20 @@ s32 HuMemUsedMemoryBlockGet(void *heap_ptr);
s32 HuMemMemoryAllocSizeGet(s32 size);
void HuMemHeapDump(void *heap_ptr, s16 status);
Process *HuPrcCreate(void (*func)(void), u16 prio, s32 stack_size, s32 extra_size);
void HuPrcInit(void);
Process *HuPrcCreate(void (*func)(void), u16 prio, u32 stack_size, s32 extra_size);
void HuPrcChildLink(Process *parent, Process *child);
void HuPrcChildUnlink(Process *process);
Process *HuPrcChildCreate(void (*func)(void), u16 prio, u32 stack_size, s32 extra_size, Process *parent);
void HuPrcChildWatch();
Process *HuPrcCurrentGet();
int HuPrcKill(Process *process);
void HuPrcChildKill(Process *process);
void HuPrcSleep(s32 time);
void HuPrcVSleep(void);
void HuPrcWakeup(Process *process);
void HuPrcDestructorSet2(Process *process, void (*func)(void));
void HuPrcDestructorSet(void (*func)(void));
void HuPrcCall(int tick);
#endif