Commit Graph

22 Commits

Author SHA1 Message Date
Ry
04761c1a07 Add stack block pointer to each task
This allows the stack block to automatically be freed when the task
ends.
2022-06-24 16:37:43 -07:00
Ry
606ec0283e Set the heap allocator's MEMORY_TOP to 64KB below the stack 2022-06-24 16:14:46 -07:00
Ry
bf1e28e625 Initialize the stack pointer instead of relying on fox32rom to do it 2022-06-24 16:14:06 -07:00
Ry
0d57361f66 Allow tasks to not free their memory when they end 2022-06-23 16:38:05 -07:00
Ry
d1d2df0d74 Change scheduler starvation panic message 2022-06-23 15:43:36 -07:00
Ry
309ac8cd15 Use the memory allocator for tasks' code memory 2022-06-23 15:18:21 -07:00
Ry
9d510e51b7 Introduce new memory allocator, now with the ability to free memory!!
This is a super simple linked list memory allocator, written with
lots of help from my friend hyenasky.
2022-06-23 00:30:59 -07:00
Ry
70fd0823dd Ensure we reserve room on the stack before starting the first task
Not 100% sure if this is actually needed, but this is just to make
sure that the following call to new_task doesn't get its return
address overwritten
2022-06-23 00:21:00 -07:00
Ry
68eb3777b0 vulpine: Remove for now 2022-06-21 19:40:09 -07:00
Ry
2dbe318538 Load disk 1's contents as an FXF binary if startup.cfg is invalid 2022-06-21 19:38:45 -07:00
Ry
30f8ec6d81 Remove unused extern and global tables from FXF 2022-06-21 19:05:34 -07:00
Ry
f6c41797f8 Replace .gitmodules after repo move 2022-06-21 18:36:30 -07:00
Ry
a4d0e2f09e Add .gitignore 2022-06-21 00:11:26 -07:00
Ry
6510580d1e fox32os: Rename "build" folder to "meta" in build.sh 2022-05-21 17:23:10 -07:00
Ry
4eecef4ff2 fox32os: Rename "build" folder to "meta" 2022-05-21 17:18:45 -07:00
Ry
3237db9aac fox32os: Don't mark task 0 as unused when yielding for the first time 2022-05-21 17:04:39 -07:00
Ry
1da623ce18 vulpine: Initial commit 2022-05-21 17:00:50 -07:00
Ry
995b01dfd2 fox32os: Implement multitasking and add a jump table for applications 2022-05-21 16:55:56 -07:00
Ry
6ae69cede7 fox32os: Show startup.cfg error in the status bar 2022-05-19 16:37:49 -07:00
Ry
975c8156e5 fox32os: Fix build.sh 2022-05-19 14:55:20 -07:00
Ry
5c9934f690 fox32os: Add README 2022-05-19 14:34:03 -07:00
Ry
19af24b8a4 fox32os: Initial commit 2022-05-19 14:15:40 -07:00