Commit Graph

90 Commits

Author SHA1 Message Date
mebibytedraco
d46b21a965 Handle case where there is no active window 2023-07-24 23:36:33 -04:00
Ry
98843d46dc
Merge pull request #24 from mebibytedraco/new_window-swap
Swap if new window is below active window
2023-07-16 16:51:35 -07:00
mebibytedraco
519096a6e8 Swap if new window is below active window 2023-07-16 16:59:52 -04:00
mebibytedraco
84c3eabdbc Remove window before choosing new active window 2023-07-16 12:46:35 -04:00
Ry
e28c2c3cdc
Merge pull request #21 from mebibytedraco/fix-active-window-priority
Swap top window when destroying a window
2023-07-14 17:53:27 -07:00
mebibytedraco
1f025dd55e Swap top window when destroying a window 2023-07-14 20:02:07 -04:00
mebibytedraco
e2d824fc1b Remove extra stack items in launch_fxf_from_disk 2023-07-14 13:52:06 -04:00
Ry
b3d9a4a6eb kernel/fxf: Free memory used by binary if relocation fails 2023-07-13 23:58:59 -07:00
Ry
50ea28fc7e kernel/vfs: Only allow :ofb0 - :ofb31 2023-07-13 21:21:16 -07:00
Ry
ca802706f4 kernel/vfs: Named streams for all disks and overlay framebuffers 2023-07-13 16:05:17 -07:00
Ry
b6ab015acb kernel/fxf: Bail out if the FXF could not be relocated 2023-07-13 15:02:19 -07:00
TalonFox
aa60133fe0
Improve window dragging and add fetcher animation
Signed-off-by: TalonFox <105325988+TalonFox@users.noreply.github.com>
2023-07-12 12:41:11 -05:00
Ry
df9e7eb311 Fetcher: Initial commit
This commit includes needed kernel changes and additions.
2023-07-12 00:00:08 -07:00
Ry
460b0be997 kernel/allocator: FINALLY fix a long-standing bug with memory freeing
This fixes issue #7
2023-07-11 23:37:11 -07:00
Ry
6a9dc85d81 all: Fix incorrect/old file struct size
Surprised this didn't cause more issues :p
2023-07-11 15:54:08 -07:00
Ry
012511bf5f kernel: Add launch_fxf_from_open_file 2023-07-10 17:59:21 -07:00
Ry
3870289252 kernel/vfs: Add :serial named stream 2023-04-02 13:08:55 -07:00
Ry
8bea7c39b4 kernel + sh: Another stream overhaul
Certain streams can now be opened by name by prefixing the name
with a colon (':'). The only supported named stream at the moment
is :fb, which streams to/from the background framebuffer.

A new syscall called `get_size` was also added, which should be used
instead of `ryfs_get_size`. This new syscall supports getting the size
of streams.
2023-03-30 22:18:23 -07:00
Ry
fa693c71a7 all: Increase file struct size to 32 bytes for both files and streams 2023-03-30 21:46:24 -07:00
Ry
b6cde81d2b kernel/vfs: Support seeking in streams 2023-03-30 18:14:16 -07:00
Ry
713e447d7d kernel/window: Use consts for the window title bar colors 2023-03-30 15:48:05 -07:00
Ry
a72dbae40b kernel/window/messagebox: Fix incorrect comment 2023-03-30 15:47:04 -07:00
Ry
f67dfbff23 kernel/fxf/launch: Remove unneeded push 2023-03-23 00:38:22 -07:00
Ry
e0b53d5454 kernel/fxf/launch: Tell the caller if an error occurred 2023-03-23 00:20:11 -07:00
Ry
a484da1526 kernel/fxf/launch: Don't always show error message (oops) 2023-03-23 00:16:53 -07:00
Ry
7d877618a1 kernel/fxf/launch: Show an error message if memory allocation fails
```
You are fucked.
[ OK ]
```
2023-03-22 22:44:14 -07:00
Ry
59c688fc87 kernel/fxf/launch: Specify disk ID, and fix issue with argument passing 2023-03-22 22:25:55 -07:00
Ry
8103ec8bcd kernel/fxf and launcher: Add and use launch_fxf_from_disk syscall 2023-03-22 22:18:33 -07:00
Ry
60a322ca53 kernel+apps: Use a more standard filename format (8.3 with no spaces) 2023-03-15 17:53:45 -07:00
Ry
189f54dac4 Bump version to 0.2.0 2023-03-06 18:11:17 -08:00
Ry
f47892c133 kernel/main: Add a fox32rom API version check 2023-03-06 17:29:06 -08:00
Ry
f7752e7c08 kernel/main: Only set rsp if we aren't running under an existing kernel 2023-03-05 17:36:30 -08:00
Ry
f99c3d63c1 kernel/main: Keep track of the "current disk" 2023-03-04 23:34:00 -08:00
Ry
9aca4e2e57 kernel/vfs: Update outdated comment 2023-02-08 16:05:08 -08:00
Ry
2ed47446a0 kernel/task: Add save_state_and_yield_task 2023-02-07 16:27:23 -08:00
Ry
b919faaeb4 kernel/window: Update outdated comment 2023-02-06 23:57:50 -08:00
Ry
2688e8082d kernel/task: Add comment saying registers are not saved across yields 2023-02-02 16:21:29 -08:00
jn
ffdda5eaca Make use of data.strz
The filesystem image is the same before and after this commit:

$ sha256sum fox32os-orig.img fox32os.img
abc77bd6310b8eb6bcde0a8a442ca8bab071307a6cf5155ea606578435f77d27  fox32os-orig.img
abc77bd6310b8eb6bcde0a8a442ca8bab071307a6cf5155ea606578435f77d27  fox32os.img


The conversion was performed with a few sed commands:

find -name '*.asm' | xargs sed -i -e 's/data.str \("[^"]*"\) data.8 0$/data.strz \1/g'
find -name '*.asm' | xargs sed -i -e 's/data.str \("[^"]*"\) data.8 0 /data.strz \1 /g'
find -name '*.asm' | xargs sed -i -e 's/data.str \("[^"]*"\) data.8 0x00 /data.strz \1 /g'
2023-02-02 03:03:07 +01:00
Ry
5708227a61 kernel/main: Detect if disk 1 is a valid FXF binary before running it 2023-02-01 15:43:21 -08:00
jn
8fe903a9ff kernel/vfs: Don't ignore buffer length in read(stream) 2023-02-02 00:00:37 +01:00
jn
73eee3e599 kernel/vfs: Don't ignore buffer length in write(stream) 2023-02-02 00:00:37 +01:00
jn
205e00dc08 Add file type check to parse_fxf_binary 2023-02-01 20:07:09 +01:00
Ry
75a10ffdc3 kernel: Show an error if running on top of an existing kernel 2023-01-25 18:13:45 -08:00
Ry
0c3a0afc5f kernel: Make get_active_window_struct return 0 if no active window 2023-01-24 17:18:12 -08:00
Ry
cba8b52677 kernel: Add get_active_window_struct 2023-01-24 17:10:48 -08:00
Ry
70cecc8667 kernel: Always show the menu bar, even if the active window has none 2023-01-24 17:09:34 -08:00
Ry
2a4b5bef9b kernel: Implement basic messageboxes 2023-01-22 13:47:55 -08:00
Ry
9e256a7e3c sh: Move to an application outside of the kernel
Fixes issue #3
2023-01-21 00:17:10 -08:00
Ry
c043316fa1 Implement RYFS write support in the VFS 2023-01-20 18:53:16 -08:00
Ry
e577446e55 Don't attempt to relocate if none are required
Fixes issue #4
2023-01-20 18:25:15 -08:00