Commit Graph

211 Commits

Author SHA1 Message Date
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
Ry
d94611a250
Merge pull request #12 from neuschaefer/dev
Misc.
2023-02-01 14:55:21 -08:00
jn
46f44cdf30 Makefile: simplify fox32os.img rule 2023-02-01 23:41:30 +01:00
jn
c9457baa42 Let users provide their own startup.cfg without pain
Users can now edit base_image/startup.cfg without git paying attention
to it. Typing `make` and using the default works, too.
2023-02-01 23:41:30 +01:00
jn
38ccc043c1 Add fox32os convenience script
It invokes the fox32 emulator with fox32os.img in the first disk slot.
2023-02-01 23:41:30 +01:00
Ry
9c55c79d85
Merge pull request #11 from neuschaefer/dev
Add file type check to parse_fxf_binary
2023-02-01 13:41:08 -08:00
jn
205e00dc08 Add file type check to parse_fxf_binary 2023-02-01 20:07:09 +01:00
Ry
5b355a34b9 sh: help should list commands in alphabetical order 2023-01-31 22:38:14 -08:00
Ry
652c3b70c2 sh: Make help have a little bit of color 2023-01-31 22:03:40 -08:00
Ry
cae9ffdd28 terminal: Support multiple colors 2023-01-31 22:03:24 -08:00
Ry
2a8eb5b267 sh: Properly handle dir on an empty disk
Fixes issue #8.
2023-01-30 14:16:59 -08:00
Ry
01fd9a5eac
Merge pull request #10 from neuschaefer/dev
sh: Add shutdown command
2023-01-30 13:06:31 -08:00
jn
5641fc6987 sh: Add shutdown command 2023-01-30 18:56:50 +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
94a6a734a4 Update screenshot 2023-01-24 17:22:39 -08:00
Ry
650c2f8ce5 Run barclock on startup 2023-01-24 17:19:48 -08:00
Ry
d8c0874b7c barclock: Fix crash when there is no active window 2023-01-24 17:19:17 -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
cf5850b668 barclock: Show active window title in the menu bar 2023-01-24 17:11:14 -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
c3b68946f5 launcher: Initial commit 2023-01-24 17:08:55 -08:00
Ry
2a4b5bef9b kernel: Implement basic messageboxes 2023-01-22 13:47:55 -08:00
Ry
5e961c5c73
Merge pull request #6 from neuschaefer/main
Makefile: Declare all dependencies
2023-01-21 15:22:06 -08:00
jn
a0d1a78c1c Makefile: Declare all dependencies
Test with:

  find -name '*.asm' | while read f; do echo $f && touch $f && make | grep 'fox32asm 0.' || break; done

If the last line of output is a filename, that means this file isn't tracked as
a dependency.
2023-01-21 12:00:09 +01:00
Ry
9e256a7e3c sh: Move to an application outside of the kernel
Fixes issue #3
2023-01-21 00:17:10 -08:00
Ry
9a0208fe96 terminal: Ignore CTRL key presses 2023-01-20 23:30:43 -08:00
Ry
3901d490d0 Add note about prebuilt images to the README 2023-01-20 19:03:03 -08:00
Ry
9eba47b2bb Update screenshot 2023-01-20 18:58:00 -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
Ry
634e9ca5b3 Ignore bootloader.bin 2023-01-20 18:14:17 -08:00
Ry
b84cbb1863
Merge pull request #5 from neuschaefer/main
Makefile and GitHub CI
2023-01-20 18:04:51 -08:00
jn
0345affebe Add GitHub CI configuration 2023-01-21 01:41:58 +01:00
jn
b9fc96b161 Replace build.sh with a Makefile 2023-01-20 15:48:53 +01:00
Ry
aad731da31 foxpaint: Add a very basic color picker window using button widgets 2023-01-18 17:55:12 -08:00
Ry
d072478152 New bottom bar style 2022-12-29 12:02:03 -08:00
Ry
1e6e925d08 kernel: Don't crash when all windows are closed 2022-12-28 00:05:15 -08:00
Ry
1d70da41a9 foxpaint: Initial commit 2022-12-27 18:10:58 -08:00
Ry
8ac2d2c0d4 kernel: Add a very basic GUI widget system 2022-12-27 18:01:55 -08:00
Ry
5c1a000e24 Move user applications into applications directory 2022-12-26 19:05:27 -08:00