The shoutbox is currently out of service. Join us on Discord instead.
You can help CodeWalrus stay online by donating here.

TI-Planet's "Project Builder" with online CE C Compiler

Started by Adriweb, March 19, 2016, 05:04:02 am

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DJ Omnimaga

Hm interesting, I'm curious about which layout people will find easier to use.  Looks nice, by the way.

Snektron

Looks nice :)
I've been using the project builder for a day or so now, since i got fed up with the SDK (that damn makefile), and i've noticed a few bugs:

- my program's name different than output calculator name (the output calcualtor name is one i set earlier, but now the one displaying in the project builder has reset to (CPRGMCE).
- when building in asm view, the editor switches to c view but the view button stays on asm view.

also an idea i had was to make it possible to close files from the edtiro, and cleate some kind of file index in the project (that side view under "My projects")
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


Adriweb

It's not done yet, but CEmu integration is coming along nicely...
Co-founder & co-administrator of TI-Planet and Inspired-Lua

DJ Omnimaga

Nice :D. I wonder if this require the user to install CEmu or if it all runs online?

And how do ROM storage work?

Adriweb

It doesn't require anything (except a ROM provided by the user of course), as it's already a JS version of CEmu that's running, decently well.
It wouldn't replace using the real CEmu, as it's obviously better in terms of performance and debugging features, but this IDE-embedded CEmu is a huge aid for a fast-paced development process, because you definitely don't lose time each time you have to download, upload in CEmu manually, launch, etc.

Right now, ROM storage isn't implemented (as I was saying, it's not finished :P) but I'll probably go with a localStorage-based solution (client-side HTML5 stuff), it seems rather easy.
Co-founder & co-administrator of TI-Planet and Inspired-Lua

DJ Omnimaga

Is it possible to disable CEmu emulator in the project builder? That could be handy for those with slow computers who prefer to use the Project builder only to edit code and instead use a standalone copy of CEmu. I know that in SourceCoder 3 jsTIfied is paused while not in use, so it would be nice if CEmu did the same in this.

And yeah local ROM storage (on the user end) would be better for copyright reasons. :P

Adriweb

Yeah, the emulation is basically "opt-in", though right now this is due to having no local storage thing yet :P I'll try to think of something instead of auto-loading the emulation-related files.
Also, when you hide the sidebar, the emulator is paused, so as to decrease CPU usage.

Anyway, I've finished the most important things, so it's starting to work fine:


More minor changes are coming, probably mostly UI related, error handling, etc.
Co-founder & co-administrator of TI-Planet and Inspired-Lua

Unicorn

Awesome!

So, how soon till we can access it? I'm really in need of an online emulator right now. :)



??? ??? ??? ??? ???

Adriweb

Possibly today.

And as I was saying, performance isn't as good as the desktop CEmu, so it doesn't actually "replace" it, but it definitely allows for faster testing :P
Co-founder & co-administrator of TI-Planet and Inspired-Lua

DJ Omnimaga


Adriweb

No, the whole PB is definitely not made for such targets, at minimum for usable size reasons, let alone performance regarding emulation.

Minor updates:
- Reduced key sending delay a bit
- Fix "build" buttons-related issues and behaviour
- CEmu credits added

Todo:
- manual/auto emu start preference
- auto-pause when focus is lost
- localStorage stuff for client-side ROM saving
- probably display the CEmu console somewhere
- Maybe more debugging things on the CEmu side

I have noted an issue, though: when you leave the emu on for an extended period of time, it becomes very slow. I'm not sure why (memory leak, or something like that?), although it's not that big of a deal, you can basically refresh the page.


Edit: Hmm, I have fixed some more things (included stuff people reported recently), and didn't finish the todo list here :P
Oh well, tomorrow should definitely be good \o/
Co-founder & co-administrator of TI-Planet and Inspired-Lua

DJ Omnimaga

Hm I see. Also nice update. For the slowdowns I am sure this is a memory leak, but does it happen in all browsers?

Adriweb

Alright, it's publicly available now, though I haven't been able to locally save the ROM yet, because it's quite big, and when trying compression, it wasn't working reasonably well, so far :P
Lots of other improvements and fixes, though, on UI and perf.

Have fun :)
Co-founder & co-administrator of TI-Planet and Inspired-Lua

DJ Omnimaga

June 28, 2016, 12:56:08 am #43 Last Edit: June 28, 2016, 12:59:29 am by DJ Omnimaga
Yay! It works! Slow-ish to press keys but it works. Also nice idea to pause emulation when not focusing on the browser tab. Should be less resource-hungry that way.

Only issue, though, is that we can only send 1 file at a time. This could be annoying when sending a large hybrid BASIC game that requires sending 12 programs or so (Sprites v3.3 alone uses 6)


EDIT: Actually I just tried GalagACE and it runs like twice faster until you press keys, then it lags. But it's still very nice to have such emulation feature.

Adriweb

Regarding keypresses, I'm not sure what's causing the lag, but basically, once you know you have to click a tiny bit longer than just a normal click (so, you have to press and hold the button, but just shortly), it's fine :)
In fact, pressing keys that way, I have no lags, it's quite good. Where you can clearly see it's slower than the desktop CEmu is for "high"-FPS games.
But speed probably depends on the browser and computer, too.

Edit: yes, multiple file sending will come shortly, it should be easy.

Edit2: and yup, pausing emulation on visibility loss is quite a CPU-saving feature.
Co-founder & co-administrator of TI-Planet and Inspired-Lua

Powered by EzPortal