Commit Graph

201 Commits

Author SHA1 Message Date
Ry
d3c75a7c9c sh: Add rdnext command
This command redirects the IO stream for the next command to the
specified file or named stream
2023-03-31 16:32:00 -07:00
Ry
958e6348f7 launcher: Launch applications from the current disk 2023-03-31 00:32:02 -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
861031ea6c terminal: Use launch_fxf_from_disk 2023-03-23 00:37:39 -07:00
Ry
201336ad31 serial: Use launch_fxf_from_disk 2023-03-23 00:37:16 -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
22c8e1f820 bg: Use data.strz for the filename 2023-03-22 16:36:25 -07:00
Ry
4e0ab3a75d sh/launch: Use ryfs_open directly instead of open for now 2023-03-20 17:32:14 -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
76d669bfda Makefile: Add clean target 2023-03-15 17:02:55 -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
6253b60762 sh: Fix inverted condition in the disk command 2023-03-05 17:39:29 -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
6318fbb6f9 bg: Use the "current" disk id 2023-03-05 17:30:51 -08:00
Ry
f50463891a Actions: Upload romdisk.img 2023-03-04 23:37:41 -08:00
Ry
fb3eac0d98 terminal/task: Use the "current" disk id 2023-03-04 23:36:17 -08:00
Ry
ebbc2fa81e sh: Use the "current" disk id 2023-03-04 23:35:54 -08:00
Ry
31b19537c8 Build a minimal romdisk image 2023-03-04 23:35:34 -08:00
Ry
f99c3d63c1 kernel/main: Keep track of the "current disk" 2023-03-04 23:34:00 -08:00
Ry
63fe33cdc9 bootloader: Pass the boot disk id to the kernel 2023-03-04 21:29:12 -08:00
Ry
b51e17a4cf bootloader: Include magic bytes to show that this disk is bootable 2023-03-04 18:15:10 -08:00
Ry
8d3ef81cba terminal/text: Treat delete (ASCII 127) as backspace 2023-02-16 22:02:52 -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
8bfd66941d sh/dir: Show file sizes 2023-02-04 17:34:20 -08:00
Ry
6c4790cd5f sh/dir: Add a space between the file name and type, and show a header 2023-02-04 16:37:34 -08:00
Ry
f37c9b37bd sh: Move terminal control character consts to main.asm 2023-02-04 16:29:47 -08:00
Ry
36f76ed12d serial: Add missing ret to print_str_to_terminal 2023-02-04 16:19:09 -08:00
Ry
d4afc36f49 sh/help: Use const for setting the color 2023-02-04 16:15:47 -08:00
Ry
2688e8082d kernel/task: Add comment saying registers are not saved across yields 2023-02-02 16:21:29 -08:00
Ry
e83676567e
Merge pull request #15 from neuschaefer/dev
Serial terminal proof-of-concept
2023-02-02 02:07:43 -08:00
Ry
ec79dcf030
Merge pull request #14 from neuschaefer/dev
Make use of data.strz
2023-02-02 01:49:26 -08:00
jn
bef0aa9700 Add serial.fxf: Serial terminal 2023-02-02 04:08:18 +01:00
jn
d03d49ac44 Move scancode-to-ASCII conversion into the terminal 2023-02-02 04:07:57 +01: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
Ry
e1da81f314
Merge pull request #13 from neuschaefer/dev
Stream overhaul
2023-02-01 15:21:45 -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