Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Betas et WIPs » Le TI-BASIC comme langage de scripts (107 réponse(s))
./REPRISE DU POST PRECEDENT (post n°57)   Marquer comme non lu.
andoh_wilfried Ecrit le: Mardi 5 juillet 2005 à 11:34 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

Allez, je vais être bon joueur et faire un petit essai avant de dire que c'est trop difficile à utiliser.

Je vais tenter une adaptation minimaliste que quelque fonction de la Librairie 'MyLib' histoire de voir les avantage qu'on peu en tirer surtout du point de vue graphique.

apparemment l'jout d'extension à l'air simple.
mais je dit toujours que mieux vaut des commmentaires que rien du tout.
    
./Post n°58   Marquer comme non lu.
FpgForce Ecrit le: Mardi 5 juillet 2005 à 14:00 Déconnecté(e)    Voir le profil de FpgForce Envoyer un email à FpgForce Envoyer un message privé à FpgForce  

andoh_wilfried> C'est super simple a utiliser Tibasext, moi j'ai eu aucun problème, pas besoin de doc ni de commentaires, l'exemple et le source suffisent amplement je trouve ^^
    
./Post n°59   Marquer comme non lu.
andoh_wilfried Ecrit le: Mardi 5 juillet 2005 à 14:27 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

c'est vrai qu'en relisant seulement TiBasic Ext avant de lire Spread89, ça semble très simple à utiliser.
il ya juste à initialiser les bloc
EXTENSIONS
DEFINE_EXTENSION(..)
ENDEXTENSIONS

EXT_ENTRIES
DEFINE_EXT_ENTRY(...)
ENDEXT_ENTRIES

BASEXTFRAME(..)
DEFINE_EXT_STRINGS(..)
ENDFRAME


j'espère que question vitesse on s'y retrouve.

C'est une idée de génie ce truc K.K.
Si la rapidité est au rdv, alors on ne fera des librairie basic qu'avec ce soft.
Je me vois déjà en train de scripter 'MyLiB' ce soir àprès ma partie de basket-ball
    
./Post n°60   Marquer comme non lu.
Lionel Debroux Ecrit le: Mardi 5 juillet 2005 à 14:30 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> Si la rapidité est au rdv [...]
Ben, la rapidité est moins au rendez-vous dans un truc contenant du TI-BASIC que dans un truc fait en pur C/ASM.
-Edité le Mardi 5 juillet 2005 à 14:31 par Lionel Debroux-
Lionel Debroux - membre de TICT.
    
./Post n°61   Marquer comme non lu.
Jfg Ecrit le: Mardi 5 juillet 2005 à 15:01 Déconnecté(e)    Voir le profil de Jfg Envoyer un email à Jfg Visiter le site WEB de Jfg Envoyer un message privé à Jfg  


le script en basic s'exécute à la vitesse du basic.
Kill Mario
    
./Post n°62   Marquer comme non lu.
andoh_wilfried Ecrit le: Mardi 5 juillet 2005 à 16:03 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

mais les fonctions C sont exécuté comme si on appelait des fonctions natives du TiOS.
Dans ce cas je laisse le basic s'oqp du passage des arguments ( je passe des noms de variable en arguments pour augmenter la rapidité par rapport au Ti Basic : c'st en quelque sorte une indirection ).
Ensuite les fonction de la Lib feront le reste. les appel sont proche du Style de Vertel.

Je veux juste étendre un peu
- les fonctions graphiques
- la gestion des listes/matrix
- la gestion du clavier
- la gestion des fichier

... (confert MyLib sur Yaro Section Projet et Softawre )
    
./Post n°63   Marquer comme non lu.
andoh_wilfried Ecrit le: Mardi 5 juillet 2005 à 16:37 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

A vous entendre, il faudrait pas attendre grand chose de ce truc, du moins en terme de vitesse. C'est très claire.
En fait la vocation de ce software est de permettre d'étendre les fonctionnalité du Ti Basic.
Eh ben, vais donc pas me se gener pour changer quelques truc au Ti-Basic. Du moins tout ce qui fait sa lenteur.

C'est 3 fois rien : je vais me borné aux fonctions graphiques pour effectué un Test.
Si c'est pas très concluant, je laisse tombé.
-Edité le Mardi 5 juillet 2005 à 20:20 par andoh_wilfried-
    
./Post n°64   Marquer comme non lu.
Jfg Ecrit le: Mardi 5 juillet 2005 à 20:35 Déconnecté(e)    Voir le profil de Jfg Envoyer un email à Jfg Visiter le site WEB de Jfg Envoyer un message privé à Jfg  


Je ne pense pas qu'il sert juste à étendre le basic, il pourrait servir pour scripter un RPG (où le besoin de vitesse n'est pas très grand.)
Kill Mario
    
./Post n°65   Marquer comme non lu.
andoh_wilfried Ecrit le: Mardi 5 juillet 2005 à 20:39 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

Oui, en gros tout programme qui ne nécessite pas une très grande vitesse.
et qui veux laisser à l'utilisateur le soin de faire lui-même sa sauce :
- Shell
- Editeur de Texte
- Viewer de je ne sais quoi
- ............
    
./Post n°66   Marquer comme non lu.
geogeo Ecrit le: Mardi 5 juillet 2005 à 20:52 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


En parlant de Ti-Basic faut que je te pique ton code FpgForce pour Gfa-Basic. :D
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°67   Marquer comme non lu.
Kevin Kofler Ecrit le: Mercredi 6 juillet 2005 à 02:52 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Attention, le problème de ma méthode pour un truc comme MyLib est que ça ne marche que si le programme BASIC est appelé à l'intérieur du programme ASM. Si tu veux permettre de lancer le programme BASIC directement comme pour FLib et Vertel, il faut installer un TSR.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°68   Marquer comme non lu.
andoh_wilfried Ecrit le: Mercredi 6 juillet 2005 à 09:04 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

En fait je modifie MyLiB pour qu'il convienne au format exigé par BasicExtend.
Ce qui fait que je l'ai renommé 'ExtLib'

Ensuite j'appelle les prog basic comme suis :
ExtLib( "Prog1", "Prog2", ... )

c'est juste histoire de faire un Test rapide avec les fonction graphique.




Si j'ai bien compris ce dont tu parles, en laissant MyLib comme il est à l'origine,
Si je veux faire en sorte que les Extensions Basic fonctionnent lorsque j'appelle la fonction
'expr' , il faut installer un TSR.

Peut-être que ça pourraît m'intéresser. je vais me remettre bientôt au codage du Parser/Tokénéiseur pour MyLiB, alors si tu pouvais être plus explicite
    
./Post n°69   Marquer comme non lu.
andoh_wilfried Ecrit le: Jeudi 7 juillet 2005 à 00:49 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

Je viens d'éclater la boucle de gestion des arguments des des appel de fonction de MyLiB
pour le Gerer en appel de fonction individuel au lieu de faire appel à un Switch..Case.

j'ai les résultats des 1er test de l'adaptation des fonctions graphiques de la Lib.
C'est amusant de voir comment on ajoute de nouvelle fonction au TiOS.

je vérifie que la gestion des arguments ( listes/Matrix ) et des tag_spéciaux like Vertel fonctionne bien.
    
./Post n°70   Marquer comme non lu.
andoh_wilfried Ecrit le: Jeudi 7 juillet 2005 à 01:32 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

Au fait K.K. tu permets que je reprenne les routines de saisie clavier de ton spread89 pour la librairie inspirée de 'tibasext'. et peut-être celle des boîtes de dialogues aussi.

je me fait une version test de 'ExtBasic'.
'ça sonne sonne mieux que 'ExtLib'.
tu permets aussi que j'utlise ce nom pour la Librairie pour le basic.

Il y aura à peu près toutes les fonctions intéressantes de MyLiB.
    
./Post n°71   Marquer comme non lu.
Kevin Kofler Ecrit le: Jeudi 7 juillet 2005 à 02:32 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


andoh_wilfried :
Au fait K.K. tu permets que je reprenne les routines de saisie clavier de ton spread89 pour la librairie inspirée de 'tibasext'. et peut-être celle des boîtes de dialogues aussi.

Oui. (Mets quand-même quelque part que ces routines sont de moi. ;) Mais sinon c'est OK.)
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°72   Marquer comme non lu.
andoh_wilfried Ecrit le: Jeudi 7 juillet 2005 à 12:12 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

K.K. : ok merci, ça me fait du travail en moins.

J'ai un bug que je n'arrive pas à comprendre.
ça doit être tellement évident que je n'arrive plus à le voir à force d'avoir le nez là-dedans :( .
voici les extensions :


/******************************************************
======================================================
             tibasext
======================================================
******************************************************/

EXTENSIONS
  DEFINE_EXTENSION(0)
  DEFINE_EXTENSION(1)
  DEFINE_EXTENSION(2)
  DEFINE_EXTENSION(3)
  DEFINE_EXTENSION(4)
  DEFINE_EXTENSION(5)
ENDEXTENSIONS

EXT_ENTRIES
  DEFINE_EXT_ENTRY(BE_Clrs, APP_EXT_PROGRAM)
  DEFINE_EXT_ENTRY(BE_Line, APP_EXT_PROGRAM)
  DEFINE_EXT_ENTRY(BE_Rect, APP_EXT_PROGRAM)
  DEFINE_EXT_ENTRY(BE_Wait, APP_EXT_PROGRAM)
  DEFINE_EXT_ENTRY(BE_Waitkey, APP_EXT_FUNCTION)
  DEFINE_EXT_ENTRY(BE_Ellipse, APP_EXT_PROGRAM)
ENDEXT_ENTRIES

BASEXTFRAME("ExtLib", 6)
  DEFINE_EXT_STRINGS( 0, "clrs", "Clear the screen" )
  DEFINE_EXT_STRINGS( 1, "lines", "Draw a line")
  DEFINE_EXT_STRINGS( 2, "rect", "Draw a rectangle" )
  DEFINE_EXT_STRINGS( 3, "wait", "Wait a time" )
  DEFINE_EXT_STRINGS( 4, "waitkey", "Wait a key" )
  DEFINE_EXT_STRINGS( 5, "ellipse", "Draw an ellipse" )
ENDFRAME



les prototypes

/******************************************************
======================================================
            FN_Calls
======================================================
******************************************************/
void FN_Line(void);
void FN_Rect(void);
void FN_Ellipse(void);
void FN_Wait(void);

/******************************************************
======================================================
            BE_Calls
======================================================
******************************************************/
void BE_Clrs(void);
void BE_Line(void);
void BE_Rect(void);
void BE_Ellipse(void);
void BE_Wait(void);
void BE_Waitkey(void);



le code des extensions basic

#include "Header.h"

void BE_Clrs(void)
{
  clrscr();
}
//************************************************************************************

//************************************************************************************
void BE_Line(void)
{
  ExecFunc( FN_Line, 5 );
}
//************************************************************************************
void BE_Rect(void)
{
  ExecFunc( FN_Rect, 6 );
}
//************************************************************************************
void BE_Ellipse(void)
{
  ExecFunc( FN_Ellipse, 6 );
}
//************************************************************************************
void BE_Wait(void)
{
  ExecFunc( FN_Wait, 1 );
}
//************************************************************************************
void BE_Waitkey(void)
{
  push_shortint( ngetchx() );
}



et poutant lorsque j'appelle 'ellipse' il me dit : 'Program not found'
alors que toutes les autres fonctions marchent.


-Edité le Jeudi 7 juillet 2005 à 12:13 par andoh_wilfried-
-Edité le Jeudi 7 juillet 2005 à 12:15 par andoh_wilfried-
-Edité le Jeudi 7 juillet 2005 à 12:35 par andoh_wilfried-
-Edité le Jeudi 7 juillet 2005 à 12:49 par andoh_wilfried-
-Edité le Jeudi 7 juillet 2005 à 13:57 par andoh_wilfried-
    
./Post n°73   Marquer comme non lu.
LionelA Ecrit le: Jeudi 7 juillet 2005 à 14:22 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Il y a une histoire d'ordre alphabetique si je me souviens bien :)
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°74   Marquer comme non lu.
andoh_wilfried Ecrit le: Jeudi 7 juillet 2005 à 14:48 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

Merci LionelA. je commençais à décourager d'autant que je n'ai aucun Warning dans mon projet.
je vais essayer d'ordonner mes fonctions pour voir.
-Edité le Jeudi 7 juillet 2005 à 14:49 par andoh_wilfried-
    
./Post n°75   Marquer comme non lu.
LionelA Ecrit le: Jeudi 7 juillet 2005 à 14:51 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


voila c'est bien ca :)
http://www.tigen.org/pws/forum/index.php?action=sujet&forum=5&cat=20&topic=1485&page=1#19
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°76   Marquer comme non lu.
andoh_wilfried Ecrit le: Jeudi 7 juillet 2005 à 15:08 Déconnecté(e)    Voir le profil de andoh_wilfried Envoyer un email à andoh_wilfried Envoyer un message privé à andoh_wilfried  

En effet je commence à croire qu'il faut une doc à ce truc.
On croit pouvoir l'utiliser facilement une fois télécharger, alors qu'il faut s'attendre à des surprise de ce genre.
K.K devrait faire une selection dans le Topic pour faire une FAQ, le temps d'écrire la DOC.

Moi je trouve que ce truc est une superbe idée.
D'ici ce soir j'aurai complètement parasité le TiOS d'une bonne 100taine de fonctions de MyLiB.

Si j'ai bien compris ce truc peut aussi appeler des fonctions situées dans un autre programme ASM autre que le programme appellant.
    
  :: Index » Forum Ti68K » Betas et WIPs » Le TI-BASIC comme langage de scripts (107 réponse(s))
Pages : 4/6     « 1 2 3 [4] 5 6 » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 37.32ms avec 18 requetes