Commit Graph

211 Commits (main)

Author SHA1 Message Date
Ry b41e1dc3de launcher: Remove for now 2022-12-26 19:01:22 -08:00
Ry 3eff04b8a2 shell: Update `disk` command 2022-12-26 18:26:27 -08:00
Ry f0c7d0be79 bg: Initial commit 2022-12-25 22:00:17 -08:00
Ry 455a909255 kernel: Fix clicking menu item when different window is directly under 2022-12-25 14:51:36 -08:00
Ry fddfd78829 kernel: Make sure the event manager task starts when running disk 1 2022-12-25 13:54:45 -08:00
Ry 3b813afa72 kernel: Window manager now manages the menu bar per-window 2022-12-24 22:51:43 -08:00
Ry b71d10ab63 kernel: Ensure new_window doesn't clobber r0 2022-12-24 01:29:00 -08:00
Ry a68e584c82 kernel: A more complete window manager implementation
It's currently pretty buggy, but at least it's better than what we
had before :P
2022-12-23 22:26:16 -08:00
Ry c6919d4168 shell: Add `clear` command 2022-11-25 17:21:28 -08:00
Ry c321e54cfb shell: Redraw the line when needed 2022-11-25 17:20:57 -08:00
Ry 7f6eeb10c7 terminal: Only draw the line upon LF or when requested 2022-11-25 17:20:03 -08:00
Ry 8b977f9f9e terminal: Add various "control characters" 2022-11-21 21:43:58 -08:00
Ry 399ad8c7bb shell: Use hex const for the cursor 2022-11-21 21:32:06 -08:00
Ry c0ea6192e2 Don't hardcode /bin/bash in the build script 2022-11-21 21:30:56 -08:00
Ry 250da95d76 Initialize the memory allocator with a correct bottom of memory 2022-10-27 23:08:18 -07:00
Ry a7064075e7 Build the kernel as an FXF binary and boot using the new boot mechanism 2022-10-27 22:49:55 -07:00
Ry cc40cce81b shell: Prefix an FXF binary with * to not suspend the shell 2022-10-16 18:47:11 -07:00
Ry 6de1a5f6df Only start a terminal instance on boot, instead of Launcher 2022-10-14 21:35:15 -07:00
Ry 2997fb7c85 launcher: Add "Quit Launcher" menu item 2022-10-14 21:34:51 -07:00
Ry ce094891ce launcher: Don't disable overlays on startup 2022-10-14 21:09:30 -07:00
Ry 06798d3be2 Increase shell input buffer size to 512 characters
Because reasons.
2022-10-14 17:15:24 -07:00
Ry 3cd4341986 Add shell task and terminal application 2022-10-14 16:53:41 -07:00
Ry 75eb29613b Implement a basic VFS layer with "streams" 2022-10-14 16:39:40 -07:00
Ry 453e7f0e65 Make window titles semi-transparent 2022-10-05 21:02:56 -07:00
Ry 9512c40747 Prevent windows from being moved off-screen 2022-10-05 17:18:14 -07:00
Ry 4f1ae864aa Add screenshot to the README 2022-10-05 16:26:11 -07:00
Ry d62518b5eb barclock: Draw a leading zero if the minute is less than 10 2022-10-05 16:20:50 -07:00
Ry 89ee1342fe Start working on a very basic window manager 2022-10-05 16:15:36 -07:00
Ry fecf74b652 Ignore wallpaper files 2022-09-09 16:39:40 -07:00
Ry 7b113056f7 barclock: Initial commit 2022-09-09 16:39:08 -07:00
Ry ee2103eda5 Allow starting multiple FXF binaries at startup 2022-09-09 16:37:13 -07:00
Ry b3c9c83c86 meta: Update ryfs tool to 0.5 2022-08-29 16:16:33 -07:00
Ry 81ac508a60 launcher: initial commit 2022-08-28 22:23:54 -07:00
Ry 021b1970ca meta: Update ryfs tool to version 0.4 2022-08-11 18:28:11 -07:00
Ry cf627052ff Add `is_task_id_used` 2022-08-11 17:35:13 -07:00
Ry 0439b67d14 Prepare for the 1st release 2022-07-31 17:27:39 -07:00
Ry 9aac5dff10 Make the new_task info comments a bit more clear 2022-06-25 16:32:32 -07:00
Ry 887ebc4553 Add get_current_task_id 2022-06-24 17:40:52 -07:00
Ry df95829e83 Add more spacing between the jump tables 2022-06-24 17:24:08 -07:00
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