CodeWalrus

Featured Member Projects => CEmu, C SDK & Libraries (TI-84+CE) => Topic started by: Adriweb on March 19, 2016, 05:04:02 am

Title: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 19, 2016, 05:04:02 am
Since its beginning, TI-Planet has promoted programming, especially on TI calculators, through many news, program features and reviews, tutorials, contests etc.
We are now proud to launch, in beta, a new online platform (online so as to be more easily accessible), to push even further this programming promotional effort. This online tool is called the "Project Builder" (PB).
(https://i.imgur.com/R6dj0kO.png) (https://i.imgur.com/L6ZSBrV.png)

What's the "Project Builder"?
Simply put, it's a "subsite" of TI-Planet, that offers a simplified interface through a set of tools ("modules"), such as an IDE, for creating, by oneself or with other people, content like programs, for calculators.

The modular architecture of the PB allows for multiple types of projects themselves possibly containing several elements. For now, the PB is still very young, and the only "ready" project type / module is the C compiler for the CE calculators (TI-84 Plus CE and TI-83 Premium CE), on which we will give more details in the next section.
In fact, we had already told you a bit about the PB and its C Compiler some time ago (https://tiplanet.org/forum/viewtopic.php?f=10&t=17279) (September 2015!) in another topic, so it might not be much of a surprise ;)

Moreover, in the future, we can imagine other modules like:
Let's go back in a little more detail on the reference above, creating things "with other people". Indeed, the PB has social / multi-user features:
(https://i.imgur.com/59PwEbAt.png) (https://i.imgur.com/59PwEbA.png)   (https://i.imgur.com/kTZxFTkt.png) (https://i.imgur.com/kTZxFTk.png)

We hope that these efforts will help popularize programming among high school and university students, providing a simple yet comprehensive platform :)

We are also glad to announce that the Project Builder is open-source, and even free as in freedom (GPLv3), to enable the contribution in the spirit of the community - it is designed in such a way that its operation is not locked on a specific site infrastructure. We encourage (and thank in advance) anyone interested in contributing and helping in general, adding things, fixing bugs, etc. A link to the code is available at the bottom of this article.


The C Compiler for the CE calculators - a module of the PB
This isn't new - since the release of the CE calculators series in 2015, their new more powerful hardware (eZ80 CPU, faster than the Z80, more RAM, etc.) allows much more interesting things than on prior models, including indeed "native" C programming, much more attractive than assembly, and often used on PC or other platforms.
The Project Builder thus has a "CE C compiler" module, whose back-end is based on the toolchain work by "MateoConLechuga" (who we thank very much).

Features:
Relative to the back-end (compiler)
Relative to the front-end (user interface)
Specific to CE calculators
(https://i.imgur.com/qwVpqPst.png) (https://i.imgur.com/qwVpqPs.png) (https://i.imgur.com/8S4XvvAt.png) (https://i.imgur.com/8S4XvvA.png) (https://i.imgur.com/VIDS9MZt.png) (https://i.imgur.com/VIDS9MZ.png) (https://i.imgur.com/oXgRjwdt.png) (https://i.imgur.com/oXgRjwd.png)  (https://i.imgur.com/tXKHUpqt.png) (https://i.imgur.com/tXKHUpq.png)

Features planned for the future...:
In addition to various improvements on the GUI for a better user experience, the following are on the TODO list:
(click to show/hide)


Links
_________
Via TI-Planet.org: https://tiplanet.org/forum/viewtopic.php?f=41&t=18118
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 19, 2016, 05:53:26 am
Glad to see this come to fruition. :) The share tools and multi-user edits are a nice touch as well. I personally won't be using C but I know that some people here might find this handy.

By the way, since it's open-source, does it mean that anyone could put the folders on his web server and it would run almost on the fly?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 19, 2016, 05:54:47 am
By the way, since it's open-source, does it mean that anyone could put the folders on his web server and it would run almost on the fly?
Almost, yes - there has to be some server-side setup for the modules requiring advanced back-ends (like the C one...) for things like wine setup if the server is linux-based, etc.

There'll probably be some kind of readme explaining the basics
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 19, 2016, 06:03:16 am
Cool, thanks. :) Would it pose a risk of slowing down the rest of the server stuff if RAM is limited? (as an example, CW hosting only has 1 GB of RAM and a single-core CPU)

Also will CEmu integration in the future require an online version of CEmu to be made or will the project builder simply ask permission to open CEmu on the computer after specifying the directory the emulator is in (and letting the user change the setting)?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 19, 2016, 06:07:35 am
Cool, thanks. :) Would it pose a risk of slowing down the rest of the server stuff if RAM is limited? (as an example, CW hosting only has 1 GB of RAM and a single-core CPU)
Well, in theory yes, but it shouldn't be too bad either. That said... 1 GB of RAM and a single-core CPU isn't much :(

Also will CEmu integration in the future require an online version of CEmu to be made
Yes, I'm currently looking at an online CEmu version for the PB, but it's still very early, and doesn't even actually work right now under normal conditions. It'll require a bit of time :P

will the project builder simply ask permission to open CEmu on the computer after specifying the directory the emulator is in (and letting the user change the setting)?
This is also an idea I had, but isn't developed yet either.
Somewhat related is TI-Planet's desktop client that could act as a "bridge" between the Project Builder and a connected calculator on your computer, so that you may be able to directly send the programs to it.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 19, 2016, 06:18:27 am
My main concern about requiring CEmu to be online to work with project Builder is if the host decides to provide the ROM files on emulator launch or kept a copy of the user ROM on the server rather than doing like jsTIfied and requiring the user to supply his own calculator ROM himself. Because TI might not like that, plus it would be hard for us to link directly to the emulator since ROM links are against CW rules. >.<
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 19, 2016, 06:20:09 am
My main concern about requiring CEmu to be online to work with project Builder is if the host decides to provide the ROM files on emulator launch rather than doing like jsTIfied and requiring the user to supply his own calculator ROM himself. Because if the online CEmu launched with ROMs hosted on the server then not only linking to it would be against the rules of most forums, but also Texas Instruments would not like that (they already shut down TI-Emulation a few years ago).
Yes, obviously the users will have to provide their own ROM :)
The good thing is that it can be saved locally in the browser's localStorage.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 19, 2016, 06:21:26 am
That's good to hear then. :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Jkolade936 on March 21, 2016, 01:48:18 pm
So, if I have a CE ROM, I can basically use CEmu anywhere?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 21, 2016, 05:02:49 pm
It obviously won't be a full-blwon CEmu-desktop alternative, but rather some kind of "just the things" to get it working on online IDEs, for instance.
Also, I have some unexpected work this week so I won't be working on that as soon as I've had hoped :P
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Jkolade936 on March 21, 2016, 05:28:39 pm
Does the keyboard-keypad connection work? I kept trying to use WabbitEmu's keyboard controls for the virtual calculator in CEmu(the build that @alberthrocks gave me), and when I found that I had to click each key individually, I got kinda irked.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: MateoConLechuga on March 21, 2016, 06:46:39 pm
Um, of course it works? Click on the screen if you need to, and change the keyboard bindings to WabbitEmu in the settings if you really want to. The CEmu keybindings are a lot easier and make more sense once you get used to them.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 21, 2016, 07:27:26 pm
The CEmu keybindings are a lot easier and make more sense once you get used to them.
That's unless you used PindurTI and/or WabbitEmu for 11 years straight :P

It obviously won't be a full-blwon CEmu-desktop alternative, but rather some kind of "just the things" to get it working on online IDEs, for instance.
Also, I have some unexpected work this week so I won't be working on that as soon as I've had hoped :P
What would be cool is if clicking compile launched your game in CEmu, like TIEmu does :D
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Lionel Debroux on March 21, 2016, 07:50:08 pm
Quote
What would be cool is if clicking compile launched your game in CEmu, like TIEmu does :D
Indeed, from a user's POV, this kind of functionality is cool, and I've obviously leveraged it myself in the past.
From a maintainer's POV, it's less cool, in that it requires multiple completely different code paths for implementing the same functionality across multiple OS, because there's no portable standard: OLE on Windows, D-Bus on Linux, I don't know what on MacOS X, etc. :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 21, 2016, 08:06:43 pm
Yeah I understand, plus having to write different code for each browser so that people aren't forced to use 1 specific browser <_<
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 21, 2016, 09:37:21 pm
There was/is one idea that involves CEmu making a web server on localhost, to/from which the web CEmu can talk to (simple ajax requests). That way, it can send commands etc. to it, effectively making an "easy" bridge between online IDEs and native CEmu.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Jkolade936 on March 21, 2016, 09:51:58 pm
Um, of course it works? Click on the screen if you need to, and change the keyboard bindings to WabbitEmu in the settings if you really want to. The CEmu keybindings are a lot easier and make more sense once you get used to them.
It doesn't work in the build @alberthrocks gave me. :-/
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: MateoConLechuga on March 21, 2016, 10:31:34 pm
Did you click on the LCD screen.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Jkolade936 on March 21, 2016, 10:40:30 pm
Did you click on the LCD screen.
Yes. Still nothing. I can't even type numbers using the keyboard.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 22, 2016, 05:18:36 am
There was/is one idea that involves CEmu making a web server on localhost, to/from which the web CEmu can talk to (simple ajax requests). That way, it can send commands etc. to it, effectively making an "easy" bridge between online IDEs and native CEmu.
Would that require the user to install extra stuff such as Apache for that, or would CEmu do that for him?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 22, 2016, 04:27:34 pm
There was/is one idea that involves CEmu making a web server on localhost, to/from which the web CEmu can talk to (simple ajax requests). That way, it can send commands etc. to it, effectively making an "easy" bridge between online IDEs and native CEmu.
Would that require the user to install extra stuff such as Apache for that, or would CEmu do that for him?
No, CEmu would do things by itself - it doesn't have to be any kind of file-serving complicated thing at all. Simple I/O requests would work, I suppose. I bet there are libs to do this simply enough.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 22, 2016, 06:43:36 pm
I see. That's good, then. :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 23, 2016, 02:59:57 am
I've added a way to see the generated ASM code, it can be useful sometimes :)

(https://i.imgur.com/HKA78tJ.png) (https://i.imgur.com/T7mD1xL.png)

I'll probably improve it though, so as to integrate it better in the actual editor, which will make sense later for debugging purposes.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 23, 2016, 03:02:17 am
Nice idea. Although not many people will use ASM on the CE, this could be handy when debugging or for people who wants to grab some ASM routines. What about the ability to show hexadecimal assembly form? THat could be handy if someone wants to grab some routines for use in BASIC (via the Asm() command)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 23, 2016, 03:05:00 am
I thought about it, but it may be much harder, the way it's done :P (ZDS doesn't expose it directly)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 23, 2016, 03:07:42 am
Ah, I didn't know that. Shame. I would have thought that most assemblers or ASM IDE's showed the hexadecimal equivalent of english mnemonics.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 23, 2016, 03:08:28 am
Oh wait, I might be lying.
There is an .lst keeping option. Let me look it up and I'll edit the post

Edit: yeah, it's possible ( https://i.imgur.com/F15HrQ6.png ) but looks like a pain (to parse etc.) for not a big advantage... MAybe when I have time to spare after finishing the todolist :P
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 24, 2016, 04:51:30 am
People have been bugging me about a dark theme, so here it is :D (commit (https://github.com/TI-Planet/Project-Builder/commit/99176a5)):

https://gfycat.com/AmazingEarnestHyracotherium

(no GUI toggle yet, nor saving its state)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 24, 2016, 05:24:40 am
Nice job. I also like it. At least it's not pitch black like some people do so it's still nice to look at in dark mode. :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 24, 2016, 08:11:31 pm
(Update:)
I've done that differently now, taking into account the line numbers, and thus making things much easier and reliable (and much more useful for the future debugging features).
(https://i.imgur.com/PaFfjS9t.png) (https://i.imgur.com/PaFfjS9.png)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 25, 2016, 06:49:26 am
Hm interesting, I'm curious about which layout people will find easier to use.  Looks nice, by the way.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Snektron on March 25, 2016, 01:54:23 pm
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")
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 24, 2016, 10:38:11 pm
It's not done yet, but CEmu integration is coming along nicely...
(https://i.imgur.com/i7qMRnZ.png)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 25, 2016, 02:13:15 pm
Nice :D. I wonder if this require the user to install CEmu or if it all runs online?

And how do ROM storage work?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 25, 2016, 02:19:24 pm
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.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 26, 2016, 06:24:10 am
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
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 26, 2016, 12:05:36 pm
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:
https://www.youtube.com/watch?v=hTBDJDyjq0I

More minor changes are coming, probably mostly UI related, error handling, etc.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Unicorn on June 26, 2016, 03:27:44 pm
Awesome!

So, how soon till we can access it? I'm really in need of an online emulator right now. :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 26, 2016, 03:40:12 pm
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
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 26, 2016, 06:03:23 pm
Will the emu be compatible with Android and iOS?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 26, 2016, 06:18:08 pm
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/
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 26, 2016, 10:31:13 pm
Hm I see. Also nice update. For the slowdowns I am sure this is a memory leak, but does it happen in all browsers?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 27, 2016, 11:25:05 pm
Alright, it's publicly available now (https://tiplanet.org/pb/), 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 :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 28, 2016, 12:56:08 am
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.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 28, 2016, 12:58:09 am
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.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 28, 2016, 01:00:13 am
I edited my post above btw (I tried GalagACE). The key lag sometimes also involves keys not responding at all during the game.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 28, 2016, 01:03:59 am
Yeah I'm not sure how you're trying but for instance, due to how the key-down/up events are lazily handled right now, I can't it make it work by tapping on my laptop's trackpad (because of the two events being too close, I guess), I have to actually click.
I suppose keys can get stuck, that way, thus making the user think something's frozen or something (and possibly also adding to the slowness in certain cases)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 28, 2016, 03:38:18 am
I actually didn't know if keyboard controls were implemented or not, because I tried and they didn't work. I wonder if implementing those would be possible, though? By the way I use Opera 36 (for some reasons I just realized my auto-update stopped working long ago because they're at version 38 now).
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Ivoah on June 28, 2016, 04:17:50 pm
I can't wait for the emulator to become a part of PB publicly! I know I've been too lazy to try to set up the CE toolchain, and having everything in one spot that doesn't even need to be installed will be awesome. Who knows, it might even convince me to try making something in C for the CE.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 28, 2016, 04:18:51 pm
It's there already :)

Today's updates so far:
- Auto-save/load user config regarding the layout (dark/light theme, sidebars visibility)
- Multiple file transfers working
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Ivoah on June 28, 2016, 04:20:22 pm
It's there already :)

Today's updates so far:
- Auto-save/load user config regarding the layout (dark/light theme, sidebars visibility)
- Multiple file transfers working
I guess looking stupid is what I get for not checking things before posting :) Nice job getting it public so fast. I just saw that you started working on it a few days ago, with your screenshot in #cemu-dev
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 28, 2016, 04:21:14 pm
UI is hard, that's what I spent most of the time on the past few days :(
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Ivoah on June 28, 2016, 04:22:24 pm
UI is hard, that's what I spent most of the time on the past few days :(
Everything looks great! I especially like how it types out the program name for you
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 28, 2016, 05:05:32 pm
yep, like in CEmu's autotester and program launching feature on right-click (in the var list)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 28, 2016, 09:12:50 pm
You now have a screenshot button on top of the screen when you mouse over it:
(https://i.imgur.com/35ATOZR.png)

I've also fixed some file sending stuff (well, it worked already, but everything is now "disabled" until it finishes, kind of)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on June 29, 2016, 03:40:07 pm
Update today
- Some cleanup
- Support of file renaming (finally) :
(https://i.imgur.com/HOPQT9D.png)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on June 29, 2016, 07:12:19 pm
Good addition. In TokenIDE I kinda get annoyed about how the only way to rename a program is to copy the code in a new one like on the real calc <_<
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on July 01, 2016, 08:29:48 pm
Update:
- UI / CSS improvements
- Chopped off a few pixels here and there, so more things are visible now, on small laptops, for instance.
- Creating (and deleting) a file doesn't change the page anymore (thus killing the emu) ; the new content is loaded in dynamically
- Automatic local Saving/Loading of the emu ROM (and to avoid starting the emulator for nothing, it will pause itself right after loading the saved ROM)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on July 03, 2016, 04:30:16 pm
I like the dynamic content loading idea. :D
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on October 29, 2016, 11:00:14 am
Some of the updates to TI-Planet's Project Builder (https://tiplanet.org/pb) of the past few days:
In no specific order, thanks to Runer112, Mateo, Jacobly, and others for testing and feedback.

Here's a screenshot showing the latest state of things, running a FileIO demo (https://github.com/CE-Programming/toolchain/blob/master/CEdev/examples/library_examples/fileio/demo_4/src/main.c) that returns a list of a number's prime factors (Ans->prgm->Ans) :)
(https://i.imgur.com/90QM808.png) (https://i.imgur.com/cI45OyK.png)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on December 07, 2016, 07:54:56 pm
That is great Adriweb. Sorry I am late to reply x.x

Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on December 07, 2016, 07:59:08 pm
Thanks.

Speaking of which, I should probably take some time to update the libs...
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on February 23, 2017, 07:09:50 pm
Some of the recent updates:

The real-time collaboration is now much more reliable

Fancy CSS notifications instead of raw JS alerts

Better browser compatibility

Keybindings shown when pressing Ctrl-H or clicking on the [?] button

Bottom pane now collapsible:
(https://zippy.gfycat.com/ElegantEasygoingAphid.gif)

There is now an interactive code outline sidebar:
(https://i.imgur.com/BOEBXC5.png)

As usual, thanks to everyone who gave feedback on all this, especially Mateo and Jacobly :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 11, 2017, 07:59:00 am
Looks very good @Adriweb . For project collaborations, is it possible to have a small shoutbox (Facebook-style) open at any time while the above screen is open?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: MateoConLechuga on March 11, 2017, 08:36:18 am
Looks very good @Adriweb . For project collaborations, is it possible to have a small shoutbox (Facebook-style) open at any time while the above screen is open?
Yes with shared project it is always enabled ;)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 11, 2017, 08:40:44 am
That's good. Can we also add/remove people or do they join on their own like IRC channels when a project is made public?
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 11, 2017, 10:50:43 am
( Thanks :) )

Looks very good @Adriweb . For project collaborations, is it possible to have a small shoutbox (Facebook-style) open at any time while the above screen is open?
Yes with shared project it is always enabled ;)
Technically, there's a toggle but it's in the DB side only, not visible yet. So for now indeed, it's always enabled for shared projects.

That's good. Can we also add/remove people or do they join on their own like IRC channels when a project is made public?
No restrictions, like a public IRC chan. Might change in the future, idk :P
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 12, 2017, 04:25:40 pm
Yeah my concern was more if an undesirable person  joins your project or something :P
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 12, 2017, 04:27:42 pm
Technically for now you're responsible for keeping your non-predicatable unique link safe and shared among trusted peers :P
In the future, I'll add a more fine-grained sharing feature where you can choose which tiplanet account(s) can read and/or write. Basically like google drive documents.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 13, 2017, 08:08:50 pm
Ah ok, by public project I thought the project was publicly listed to everyone by default like the default Youtube upload options.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 17, 2017, 07:21:43 pm
ASM is now much better :) (thanks, @Runer112, especially)
(https://i.imgur.com/4ooqtH4.png)

Before the end of the week, I shall look into supporting debug logging from the online emulator, so we can actually have the debug print feature working on the PB as well, making bugfinding/tracing easier :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on March 18, 2017, 07:27:49 pm
Debugging things have landed  8) (printing, for now)

(https://i.imgur.com/YwRVSE4.png)

(Eventually, CEmu messages will go into their own console, but for now, it's using the browser's JS one)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Alvajoy123 on March 22, 2017, 11:48:43 pm
i HAVE ONE PROBLEM HOW DO YOU DOWNLOAD THE ROM IMAGE
AND WHERE DO YOU GET IT  THANK YOU AND MAY YOU PLEASE HELP  ???
 
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: MateoConLechuga on March 22, 2017, 11:51:22 pm
i HAVE ONE PROBLEM HOW DO YOU DOWNLOAD THE ROM IMAGE
AND WHERE DO YOU GET IT  THANK YOU AND MAY YOU PLEASE HELP  ???
Download CEmu and create a rom image:

http://104.238.135.171:8080/CEmu/master/latest/CEmu64.exe
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 23, 2017, 12:07:32 am
Hi, yeah I think the only way to get a ROM is to dump one from your calculator using MateoC's advice. Also please don't use all-caps letters when posting, as it's much harder to read. Welcome to the forums, though!
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Alvajoy123 on March 23, 2017, 12:41:30 am
I am new to asm programing am a basic programer and i just want to how to use this platform
 ??? ??? ??? ???
can you please teach me how to asm program
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: MateoConLechuga on March 23, 2017, 01:03:36 am
I am new to asm programing am a basic programer and i just want to how to use this platform
 ??? ??? ??? ???
can you please teach me how to asm program
No.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 23, 2017, 01:09:48 am
This tool is for C programming for the most part. Also, have ytou done any programming during your lifetime before? Because if you only did TI-BASIC, then jumping straight to ez80 ASM might be next to impossible, as the "Learn ASM in 28 days" tutorial states at the beginning. It's really better to climb the ladder from the bottom and experiment with small TI-BASIC examples such as the ones in the TI manual then work your way up.

Otherwise, if you have a lot of experience in programming, then we can guide you to tutorials you will need and help you if you don't understand something, but it will require you a considerable amount of patience (which, however, is worth it, because making softwares can be fun and good learning experience).
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: p2 on March 23, 2017, 01:03:28 pm
Hey there @Alvajoy123 :)
I had wo work with ASM for a few months myself and it was really super hard even for me and I do programming in various languages since years.
ASM is really the hardest thing there is to programming.
You might want to do easier stuff first, like DJ mentioned :)

can you please teach me how to asm program
No.
not very friendly nor helpful there Mateo <_<
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Snektron on March 23, 2017, 08:53:55 pm
Assembly isn't really that hard, but you have to think a bit different than you would with high level programming. If
you find a good tutorial is definitely learnable ;)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Alvajoy123 on March 24, 2017, 02:34:17 am
Can you make tutorial video on how to use it and can you make it export files  :thumbsup:
looking good by the way :thumbsup:   :love:
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on March 24, 2017, 08:54:25 pm
Assembly isn't really that hard, but you have to think a bit different than you would with high level programming. If
you find a good tutorial is definitely learnable ;)
I never managed to learn ASM successfully even after three attempts <_<
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on April 03, 2017, 11:17:32 am
A quick&dirty experimental integration of jacobly's LLVM eZ80 backend has been done yesterday evening:

(https://i.imgur.com/bxqjDN3.png)

It will obviously be better eventually, but for now it's good enough to try/debug stuff :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on April 03, 2017, 04:24:28 pm
This looks nice Adriweb :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on April 03, 2017, 04:41:40 pm
Thanks, but in theory, all the credit goes to jacobly's rather extraordinary work :)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on April 07, 2017, 10:36:25 pm
LLVM view updated, now diffing with ZDS (left, and llvm on the right)
Note that clang gets called with -Oz for now.
(Also, yes that means you can write some C++17 for you 84+CE, because why not...)

(https://i.imgur.com/QxeWMbk.png)
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on May 16, 2017, 01:03:36 am
Difference checking is definitively a great addition. I know websites already exist for that but when I am trying to figure out why a similar piece of code works and the other copy doesn't, it's annoying to have to try to find the diff checker site URL again and again when you are trying to concentrate on debugging <_<
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: Adriweb on May 16, 2017, 04:40:35 pm
Well, for now it is only comparing ZDS to LLVM, but some versioning ideas have been in my mind for quite a while, so if I ever implement something related to that (probably through git, if so), then yep, diff between versions would be there.
Title: Re: TI-Planet's "Project Builder" with online CE C Compiler
Post by: DJ Omnimaga on May 17, 2017, 11:44:31 pm
Ah ok. I wonder if it can detect weird whitespace characters? (like the ones generated by earlier HP Prime connectivity kit or emulator versions)