programs: Add Uxn emulator #272
Reference in New Issue
Block a user
Delete Branch "iyzsong/kolibrios:main"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
To build this, a zig compiler (tested: 0.14.1) is needed, run
zig build --release=fast.It will download https://github.com/chmod222/zuxn when building.
Hello!
You can configure associations to run
.romfiles in this config:https://git.kolibrios.org/KolibriOS/kolibrios/src/branch/main/data/common/settings/assoc.ini
Also, you probably would like to configure icons for
.romfiles and additional associations (for some file managers), using config files in this folder:https://git.kolibrios.org/KolibriOS/kolibrios/src/branch/main/data/common/File%20Managers
All available icons and numbers can be found in
/sys/@reshareapp,ICONS16/Wsection.603f643f67toa826c724eeAdd association and icon for
.romfiles, thanks.Also implement the file device (without stat op), and remove the MPL-2.0 license file (which I think should be in the root folder so that each program don't need to store its own).
a826c724eeto24d245c09b24d245c09bto3633516f62Hi!
Wanted to test it and realized that emulator itself isn't included in image auto-build yet.
To include it, you need to use KolibriOS TUP build system:
Tupfile.luato emulator source code folder.data/Tupfile.luafile.You can get an example in this commit and adapt it to your Zig building pipeline:
2d9007da32Hi, it seems tup doesn't want to work with
zig build, which will download 3rd deps and manage some cache itself.May I commit the built binary into the repo?
Yep, if tup can't work with Zig - binary is okay.
3633516f62to6fba27b780OK, now I commit the built binary.
Your project can be in a separate repo with autobuild. While building the OS, main workflow can just download an artifact from your CI
@iyzsong hi, and sorry for late response!
I finally tested your emulator, and have some feedback.
Overall, it works pretty fine, but there are some small problems:
Is it possible to fix them?
When creating a window, you can set a flag to start drawing coords from window client area (don't overlap borders), and call a separate function to get header height of current skin, and adapt your rendering accordingly.
No problem.
Yes, full screen is not supported, it only render at 1x/2x/3x. The weird you see is due to screen is too small for the left editor, run it at 1080p will show the correct border.
I think that's skin drawing, I created the window with skinned, no fill and and relative coordinates. change to another skin show this, which i think is correct:
Oh, got it!
I tried to run KOS with bigger screen resolution, and now this problem is also gone.
Thus, I suppose, all is okay with this PR.
Thank you for your response!