Oops. Forgot to close it. Oh well. [poll=p730][/poll] Alright. You decided that the Switch edition will run exclusively in direct mode. It will hide and pause itself when going in the editor or running a program (in the main interpreter). I may let it be changable, for further customization, but it will be done later, if I think of it again. BTW IDK exactly how to do layers, so I just stuck 2 sprites on top of each other. They do act like layers though. That way, the taskbar and the Whisker menu (XFCE4's start menu) are always on top. Also, I can pull off nice animations for the session close dialog or other interrupts with sprite commands instead.Poll will close on 20th July.oof
Dev/Bugreports for SKKBAUI
Root / Talk About Programs / [.]
CyberYoshi64Created:
My Twitter post
ーーーーーーーーーーー
I released the base with minor API from ミドリOS (It's not compatible with existing apps, since I changed the base a lot, such as function names and the method to draw apps.)
I still have a long way to go.
(This applies to the Switch edition)
I've modified the UI basement to chamge the way, apps are drawn.
About the double buffers from previous spoiler...
If I add these and apps take a full screen size, only 2 apps would be able to open.
With a small size of 64x64, it is theoratically possible to get ~24 apps open.
I kinda refuse to add a doublebuffer to apps, unless I get huge pushback or suggestions to add them.
Also, poll time yet again.
[poll=p733][/poll]
How does it work?
Basically, when an app is initializzed with AppInit(), it gets assigned its own playfield on the GRPs since there's a lot of room I don't need. The function GetNewWinPos() searches for empty space in the GRP to give to the app. Then, when the app gets to use the space I gave to it, I use 2 sprites to form the visible window on the screen. Sprite 1 is the window border which can be used to interact with the mouse and make collisions easier. Sprite 2 is the window canvas, basically the playfield of the app, which is displayed "inside" of sprite 1.Wouldn't it be slow as a snail?
No, by looking for spaces in chunk sizes, it will be much faster. This may be a mistake when very small apps are involved but I only bother to fix or mitigate this when the API is good enough for people to make their own apps.What are the advantages?
Transparent effects are possible. The apps can be optimized by letting them only render things they needs static, only once rather than constantly. (Of course they can still render everything constantly like the 3DS version.)What are the disadvantages?
When initializing or throwing away app processes, it will stop responsiveness of サカキバラUI for almost a second. Apps will be more likely given loading times, depending on internal or external resources they need, e.g. LOADV arrays, GCOPY data from GRP4, ... If all apps are taking more than 16ms total, they may be starting to flicker due to lack of double-buffer. (If I'd use double buffers, it'd cut the number of active apps at least in half)Bad news (yet again):
My 3DS SD card has been corrupted by my PC's own SD reader and thus, I lost all progress I had from the 0.3.7 update.
(Switch version is okay since it's stored on the Switch itself.)
I may not be able to bring out any updates to the 3DS version sadly, if it continues to happen.
I bought a new SD reader but who knows what will go wrong in the future.
RIP 3DS version foe now I guess
Bad news (yet again): My 3DS SD card has been corrupted by my PC's own SD reader and thus, I lost all progress I had from the 0.3.7 update. (Switch version is okay since it's stored on the Switch itself.) I may not be able to bring out any updates to the 3DS version sadly, if it continues to happen. I bought a new SD reader but who knows what will go wrong in the future. RIP 3DS version foe now I guessNOOOOOOOOOOOOOOOOOOOOOOOOOOOO (1 billion years later) OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
Bad news (yet again): My 3DS SD card has been corrupted by my PC's own SD reader and thus, I lost all progress I had from the 0.3.7 update. (Switch version is okay since it's stored on the Switch itself.) I may not be able to bring out any updates to the 3DS version sadly, if it continues to happen. I bought a new SD reader but who knows what will go wrong in the future. RIP 3DS version foe now I guessBefore you ran the test and formatted your SD yesterday, did you make a backup of the files on the SD?
I already told you but for those who werent there: Yes, I tried to back up my Sd card contents but unfortunately, my PC's SD reader corrupted most of the stuff before I had a chance basically....Before you ran the test and formatted your SD yesterday, did you make a backup of the files on the SD?
Oh man, it's been a month without activity on neither the Switch or the 3DS.
I'll promise that I am going to revive the project.
It's just that I'm currently working on quite a few projects
↑ I have to temporarily discontinue some.
EDIT: Those projects that have bold text will be kept in dev.
The other 2 are discontinued until further notice.
Listed
- サカキバラUI (3DS, Switch and Python) - Mr0H's jump'n'run adventure (Switch) - SB Download Station (3DS homebrew) - My websiteOh man, it's been a month without activity on neither the Switch or the 3DS. I'll promise that I am going to revive the project. It's just that I'm currently working on quite a few projects↑ I have to temporarily discontinue some. EDIT: Those projects that have bold text will be kept in dev. The other 2 are discontinued until further notice.Listed
- サカキバラUI (3DS, Switch and Python) - Mr0H's jump'n'run adventure (Switch) - SB Download Station (3DS homebrew) - My website
1. Yes, I have an unreleased build of "サカキバラUI: Python edition" which I developed during July, when I didn't have my Switch to develop the Switch edition instead.Wait, is there a Python version of Sakakibara UI?If youre struggling a bit on the homebrew project, you can take a break anytime you want.
Details
Uses: Python 2.7+ with Pygame Can: Spawn windows, close them, and change resolution of its viewport. Extra requirements (for now): nintendo_NTLG-DB font, M 1p+ font,Development was terminated? What does that mean?It's basically project discontinuation (as I announced before) but now I actually drop support for it and revival is quiet unlikely (or in this case never happening whatsoever). (My definition of discontinuation and termination are a bit misleading but that's how I'd say it) This thread can now be locked. (I would have appreciated to get to 30 pages, rather than 28, but that's how it is, unfortunately.)
Well, the thing is:
- 3DS: I kinda reached the limit of what I can let it do without it being unusable or too gimmicky.
- Switch: Having a mock OS being re-made into just a window environment which could break its boundaries to help a user with programming his own games/tools is not a good idea.
Ofc I could've began from scratch to only have this specific purpose but I ran out of possible solutions to actually do it. (Sounds dumb but I'm retarded anyway)
I will make a full mock OS before coming back to this project (for just the Switch) and revive it by taking the new "kernel" I implemented into CYMOS (my new project), since it is potentially suited better for use as a subprogram than the 3DS port was.
EDIT: I changed my mind about locking this thread. Don't do it yet.
If I really feel like never working on mock OSs or サカキバラUI, ever again, then this thread can be locked.
EDIT 2: Now I see why you didn't understand my terminology at first: I'm a native german speaker and the words "discontinue" and "terminate" have different meanings and/or translations:
discontinue - abbrechen (beenden) - abort (stop, discontinue)
terminate - beenden (vernichten) - stop (kill, terminate)
I'll be reviving this project but not in the current state. I'm thinking about remaking it entirely once again.
Sure, it will not be compatible with Midori OS anymore but it will be improving performance, API and theme customizability (i.e. bring back fancy glassy themes with next to no bottlenecks)
Although that project will be renamed to CYMOS as well.
It will also be compatible with SB BIG, although I may not try to make a Switch version.
"Some screenshots"
images
Showing off my taskbar, it's barebones ik but it works for now. Security options; yes, I got a LogonUI-like application working properly. Showing off the HSV color picker here, alongside window spam ^^'Spoiler
not that it matters too much, in that apps made for CYMOS will actually use it, besides maybe just the themes' settings... lmao.
Updated the task manager; now has some statistics, such as how much memory I'm wasting.
Also: API logs! For whatever reason! Note, it's not written to a slot or anything (I used up all of them already). Tho this is reserved for debug mode (besides the test mode for packages like Midori OS did).
Now to add settings and fine-tune other things and then I can publish another beta.