π
<-
Chat plein-écran
[^]

ICE Compiler

Assembleur, Axe, C/C++, ICE...

Re: ICE Compiler

Message non lude Adriweb » 11 Aoû 2016, 19:34

Interesting stuff :)

Maybe there could be some options somewhere, to let the user choose if optimization (which could take time) happens or not. Could be useful for quick programming, vs. a release build.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.3%
 
Messages: 14617
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: ICE Compiler

Message non lude PT_ » 20 Aoû 2016, 20:12

Thanks! :D

Adriweb: compiling happens within 1/20 of a second, so it wouldn't matter, and everyone wants a smaller program :)

GUI almost done:

Image
Age of CEmpires I - In progress!
40%
Avatar de l’utilisateur
PT_Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 57.2%
 
Messages: 259
Inscription: 09 Fév 2016, 23:06
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: ICE Compiler

Message non lude Adriweb » 20 Aoû 2016, 20:14

That's impressively fast :)
But it might get slower with optimization enabled? :P
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.3%
 
Messages: 14617
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: ICE Compiler

Message non lude PT_ » 20 Aoû 2016, 20:16

Adriweb a écrit:That's impressively fast :)
But it might get slower with optimization enabled? :P

Yes, 1/19 s instead of 1/20 s :troll:
Age of CEmpires I - In progress!
40%
Avatar de l’utilisateur
PT_Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 57.2%
 
Messages: 259
Inscription: 09 Fév 2016, 23:06
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: ICE Compiler

Message non lude PT_ » 23 Aoû 2016, 15:06

Another big problem is fixed: custom tokens. Now it finally works fine!

Image

The code is so complicated you don't want to see it :P
I had 2 possibilities: either locating the hooks at a fixed point in RAM, or create my own appvar, and insert them. I chose the last option, because compiled ICE programs can use all the RAM, and I suffer what will happen when one accidentally overwrites the hooks. So, each time I start ICE, it checks if it exists, remove it if necessary and create an appvar with the hooks in it. Then it archives it, so it's a bit harder to delete it, and if you delete it from the memory management, it still exists. The main problem is, that you now don't know what the starting memory of the hooks is, for relative jumps/whatever. So yeah, it seems I fixed it, and I'm pretty happy with it ^^ :D

Now that I have fixed the main structure, is it pretty easy to add new tokens.
Age of CEmpires I - In progress!
40%
Avatar de l’utilisateur
PT_Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 57.2%
 
Messages: 259
Inscription: 09 Fév 2016, 23:06
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: ICE Compiler

Message non lude Epharius » 23 Aoû 2016, 20:22

Waw, it seems you worked hard while I was tanning on the beach :p

By the way, which "token addresses" do you use? I mean 'Disp_'=DEh, but TileMap('=? ? And do you allow a plain Basic program to use those tokens? What happens if you execute a basic program which contains ICE tokens using the basic interpreter?

Good luck ;)
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 7.1%
 
Messages: 1110
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

Re: ICE Compiler

Message non lude PT_ » 24 Aoû 2016, 09:12

Epharius a écrit:Waw, it seems you worked hard while I was tanning on the beach :p

By the way, which "token addresses" do you use? I mean 'Disp_'=DEh, but TileMap('=? ? And do you allow a plain Basic program to use those tokens? What happens if you execute a basic program which contains ICE tokens using the basic interpreter?

Good luck ;)

The tokens are replacements of accented letters, which are BB 3F for example. The accented letters are not accessable in the Catalog or somewhere else, so if you press [TRACE] in the program editor, a menu will open with all my tokens. Because the BASIC interpreter still thinks it is Á, or Î etc, you will only get an syntax error - nothing wrong :P
Age of CEmpires I - In progress!
40%
Avatar de l’utilisateur
PT_Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 57.2%
 
Messages: 259
Inscription: 09 Fév 2016, 23:06
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: ICE Compiler

Message non lude Adriweb » 24 Aoû 2016, 12:17

PT_ a écrit:The tokens are replacements of accented letters, which are BB 3F for example. The accented letters are not accessable in the Catalog or somewhere else

They definitely are when you enable another language - another catalog item appears, at the top, with lots of extra symbols/tokens.
Using accented letter may prove annoying for users of the 83 Premium CE since French is by default.
Although I'm tempted to say that the ones who are active coders will probably understand that it's better to do so without another language enabled, since it's just better.

PT_ a écrit:so if you press [TRACE] in the program editor, a menu will open with all my tokens.

Hmm, but what if you want to put the TRACE token? :P Though I guess you can fetch it in the catalog.
Did you look at how to do it the Omnicalc's way? (showing your menu when
prgm
is pressed twice)
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.3%
 
Messages: 14617
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: ICE Compiler

Message non lude PT_ » 24 Aoû 2016, 23:16

Adriweb a écrit:They definitely are when you enable another language - another catalog item appears, at the top, with lots of extra symbols/tokens.
Using accented letter may prove annoying for users of the 83 Premium CE since French is by default.
Although I'm tempted to say that the ones who are active coders will probably understand that it's better to do so without another language enabled, since it's just better.
Hmm, that's true, although not many people use another language, outside of the 83+CE ofcourse; maybe I need to replace them with other non-used tokens; I will fix it!

Adriweb a écrit:Hmm, but what if you want to put the TRACE token? :P Though I guess you can fetch it in the catalog.
Did you look at how to do it the Omnicalc's way? (showing your menu when
prgm
is pressed twice)

I've really never, never, never, NEVER seen the Trace token before, in any program. And yes, it's still accessable in the Catalog. That given, I think it's easier to remember than twice [PRGM], which is also harder to code, because it needs to remember that [PRGM] is being pressed.

EDIT: what about this?
Image
Age of CEmpires I - In progress!
40%
Avatar de l’utilisateur
PT_Programmeur
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 57.2%
 
Messages: 259
Inscription: 09 Fév 2016, 23:06
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: ICE Compiler

Message non lude Epharius » 25 Aoû 2016, 13:36

Well, you just have to check whether you're in the [prgm] menu or not. If so, you display your menu. Else, you let the calculator do its job ;)
(have a look at "menuCurrent")
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 7.1%
 
Messages: 1110
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

PrécédenteSuivante

Retourner vers Langages alternatifs

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 45 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1363 utilisateurs:
>1349 invités
>9 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)