Not sure if anyone else will follow suite, but I'm setting this up for releases and general discussion about UzeboxUI Apps/Games. Nothing about development of UzeboxUI or any of that(there is already discussions), just a container for any little games, WIP, complete game, demos, or just ideas/comments.
Edit-Just attaching the basic requirements to start tinkering
New UzeboxUI Apps
New UzeboxUI Apps
- Attachments
-
- uui-build-tools.zip
- (82.39 KiB) Downloaded 55 times
Last edited by D3thAdd3r on Sat Feb 25, 2023 4:56 am, edited 1 time in total.
Reason: attached build tools(feel free to edit with more up to date versions, thanks)
Reason: attached build tools(feel free to edit with more up to date versions, thanks)
Re: New UzeboxUI Apps
It seems worth mentioning this one since it is reasonably fun to tinker with for a bit, just to see the CPU player go, and hey it is literally in a VM window you can drag around AFAIK this is the first(hopefully of many) UzeboxUI Game Applications.
Features:
*beginner friendly, simple to understand complete game
*play against your friends(change level at title screen to "2PVS")
*play against 3 levels of CPU opponent(CPU1 = random, CPU2 = some mistakes, CPU3 = perfect(let me know, it's a bug if you can beat it!)
Eh, that's all on this one, binaries are included.
If you want to modify/compile you will need python, as well as evmcomp from ry755's github: https://github.com/ry755/UzeboxUI Then you can call build.sh under Linux. I haven't tried building it under Windows but if someone does lets put it in the first post. Like all Apps, you will also need to put the following line in your uzeboxui.txt so it shows up in the Apps(that is TTT and 5 spaces):
Features:
*beginner friendly, simple to understand complete game
*play against your friends(change level at title screen to "2PVS")
*play against 3 levels of CPU opponent(CPU1 = random, CPU2 = some mistakes, CPU3 = perfect(let me know, it's a bug if you can beat it!)
Eh, that's all on this one, binaries are included.
If you want to modify/compile you will need python, as well as evmcomp from ry755's github: https://github.com/ry755/UzeboxUI Then you can call build.sh under Linux. I haven't tried building it under Windows but if someone does lets put it in the first post. Like all Apps, you will also need to put the following line in your uzeboxui.txt so it shows up in the Apps(that is TTT and 5 spaces):
Code: Select all
[TicTacToe](TTT BIN);
- Attachments
-
- uui-tictactoe-final.zip
- (4.12 KiB) Downloaded 63 times
Re: New UzeboxUI Apps
Awesome, thanks for doing this!! Hopefully we'll see some more UzeboxUI apps from others too
I should probably explain about the jump_to_main.py thing. EmbedVM applications' `main()` function doesn't always begin at address 0, so what that python script does is parse the generated header file and insert an unconditional jump to `main()` at address 0, then immediately after it inserts the number of 512 byte sectors that UzeboxUI needs to load. That's why all UzeboxUI applications must start with something like this:
As for building on Windows, I recommend using Windows Subsystem for Linux (WSL).
I should probably explain about the jump_to_main.py thing. EmbedVM applications' `main()` function doesn't always begin at address 0, so what that python script does is parse the generated header file and insert an unconditional jump to `main()` at address 0, then immediately after it inserts the number of 512 byte sectors that UzeboxUI needs to load. That's why all UzeboxUI applications must start with something like this:
Code: Select all
array8u jump[3]; // empty space so a jump instruction can be inserted by the build script
array8u size[1]; // empty space so the number of sectors can be inserted by the build script
Re: New UzeboxUI Apps
Good idea, WSL is really handy.
I didn't dig into the code enough to know for sure, though being 16 bit, is the 3K limit completely arbitrary to allow lots of apps or something else?
I didn't dig into the code enough to know for sure, though being 16 bit, is the 3K limit completely arbitrary to allow lots of apps or something else?
Re: New UzeboxUI Apps
Yep that's exactly it, perhaps it's a bit overkill but it's designed to allow up to 10 windows open at a time, each with their own VM. Since it's been a while since I last worked on it the exact details are a bit fuzzy, but iirc 32KB of one of the SPI RAM banks is used to store the VMs' memory (though effectively only 30KB is used since 10 VMs * 3KB).