π
<-

Présentation PB: Project Builder avec compilateur C en ligne

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 17 Mar 2017, 20:15

Parsing/affichage ASM amélioré selon les conseils de Runer112 :

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 18 Mar 2017, 20:21

Adriweb wrote:
Wistaro wrote:Je sais pas si c'est possible, mais pourrait-on pouvoir indiquer quelques chose dans la console pour faire du debuggage?
Du genre void print2Console( char* msg)
ou void printUInt2Console( uint8_t var, uint8_t size)
?

En fait c'est déjà faisable avec les fonctions de debug de la toolchain et sur le vrai CEmu.
Par exemple, ce code ira afficher la string dans la console de l'émulateur:
Code: Select all
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <tice.h>

#undef NDEBUG
#include <assert.h>
#include <debug.h>

void main(void) {
    pgrm_CleanUp();

    dbg_sprintf(dbgout, "This is the start of a CEmu debugging test\n");

    while(!os_GetCSC());
    pgrm_CleanUp();
}

Cf. l'exemple plus complet ici pour gérer les breakpoint directement à partir du code en lui-même: https://github.com/CE-Programming/toolc ... src/main.c


Cependant, la version JS de CEmu, utilisée sur le PB donc, n'a pas l'air de gérer ça (si ca fait partie des choses de debugging, et logiquement oui, alors c'est normal, j'ai désactivé tout ça puisque ça sert globalement à rien tant qu'il n'y a pas de débuggeur dans le PB). Il faudrait que je vois si je peux activer uniquement cette feature de debugging en console...


C'est désormais intégré !

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Wistaro » 19 Mar 2017, 19:28

Excellent, merci beaucoup! :)
Nouveau sur le site, ClaudeBot [spider] ? Avant de poster sur le chat et sur le forum, n'oublie pas de lire les règles. En cas de problème, tu peux m'envoyer un message, je réponds rapidement.

Liens utiles:
Image
Découvre mes programmes et mon site!
User avatar
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.4%
 
Posts: 3183
Images: 37
Joined: 25 Feb 2013, 16:21
Location: Toulouse
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingénieur en électronique
YouTube: Wistaro
Twitter: Wistaro
GitHub: Wistaro

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 03 Apr 2017, 12:13

Une mini-intégration expérimentale de la compilation avec LLVM a été rapidement effectuée, hier soir :

Image

Ce sera bien sûr mieux dans le futur, mais pour le moment, pour tester rapidement, c'est déja pas mal :P

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 07 Apr 2017, 23:40

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...)

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Online

Re: Présentation du Project Builder avec compilateur C en li

Unread postby TheMachine02 » 08 Apr 2017, 14:33

Joli :#top#: Et je suis content de constater que le code généré par llvm est bien plus optimisé :p
User avatar
TheMachine02Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 29.7%
 
Posts: 342
Images: 0
Joined: 16 Jan 2013, 18:27
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Médecine

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 16 Apr 2017, 17:20

Il devrait bientôt y avoir une popup (modal) de configuration du projet :
Image

Je compte aussi implémenter le fait de pouvoir donner des arguments à clang (du genre "-W -Wall -Wextra -O2" etc.) quand on choisit la compilation expérimentale par LLVM)

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 22 Apr 2017, 17:42

(Je devrais certes essayer d'avancer sur cette fameuse configuration plus fine du projet et d'autres choses liées, mais je viens juste signaler que la version de LLVM proposée en test a été mise à jour. En fait, elle l'est globalement à chaque fois (le jour même, en gros) que jacobly la fait évoluer, mais histoire de vous notifier ici au moins une fois... ;) Entre autre, des stack frames plus grosses sont mieux gérées, tout comme les flottants)

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 28 May 2017, 23:16

Des améliorations ont été faites au Project Builder, pendant ce long weekend (et je remercie particulièrement jacobly pour le temps passé à débugger des trucs avec moi :P) :

  • "Refonte" (relativement mineure, mais pas non plus triviale) de l'architecture du backend eZ80_native pour mieux permettre l'utilisation de la toolchain upstream directement.
    Le PB utilise donc la dernière version de la toolchain et des libs, tout en gardant la compatibilité pour les anciens projets.
  • Début du support des fichiers .cpp/.hpp, qui peuvent pour l'instant se compiler uniquement, et bien sûr seulement avec LLVM (pas buildés avec le linker ZDS etc. pour le moment).
    Attention, pas de lib standard C++... Mais donc écrire des classes, templates etc. (bref la syntaxe C++) à la main sans utiliser des trucs de la STL, par exemple, ça fonctionne.
  • More generic and reliable dirty check (pour le lancement des build)
  • Fix ctags getter when refreshing after saving files
  • Fix modal line numbers and refresh
  • Possibilité d'afficher l'output de la compilation LLVM uniquement (au lieu d'uniquement un diff avec l'output ZDS)
  • Meilleurs tooltips bootstrap
  • Mise en place d'une protection contre la création de nouveaux fichiers d'implémentation (c/cpp/asm) qui ont le même nom que d'autres fichiers d'implem avec extension différente, ça créait des conflits sinon (exemple, création de test.asm si un test.c existait déjà)



(Ca va venir prochainement sur le repo github public)
Over the past few days, I've been able to work on some Project Builder upgrades (and I want to particularly thank jacobly for the time he spent with me debugging some things :P) :

  • "Refactor" (relatively minor, but not trivial either) of the eZ80_native backend architecture to better allow for a more direct usage of the upstream toolchain.
    The PB now uses the latest toolchain and libs versions, while keeping compatibility for/with the old and existing projects.
  • Initial support of .cpp/.hpp files, which may be compiled only right now, and of course only with LLVM (they're not built, there's no ZDS linker involved, at least for now).
    Warning, there's no C++ std lib support, but you way write classes, templates etc. (well, anything related to the C++ syntax itself), but without using the STL, for example.
  • More generic and reliable dirty check (for launching builds)
  • Fix ctags getter when refreshing after saving files
  • Fix modal line numbers and refresh
  • New feature to display the LLVM unfiltered output alone as well, instead of only having a ZDS+LLVM diff view.
  • Better bootstrap tooltips
  • Feature to disallow creating implementation files with the same "common name" (i.e. you can't create a test.asm file if a test.c existed, as this would conflict later on during the build)



(Will be available soon on the public github repo)

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 02 Jun 2017, 01:01

Mais, mais, que-vois-je ?

Image

Hé oui, ça y est, le support de build C/C++ avec le backend LLVM-ez80 de jacobly a été intégré sur le Project Builder (en alpha) !
What's that? C++ you say? LLVM-based building and not just asm-viewing?

Image

That's right, C/C++ building support through jacobly's LLVM-ez80 backend is now available on TI-Planet's Project Builder (in alpha) !

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14738
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

PreviousNext

Return to News TI-z80 (TI-73, 76, 80, 81, 82, 83, 84, 85, 86)

Who is online

Users browsing this forum: ClaudeBot [spider] and 8 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
663 utilisateurs:
>621 invités
>35 membres
>7 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)