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 » GFA-Basic TI68K » Bugs et suggestions » Plusieurs problèmes (22 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
Mortarion Ecrit le: Vendredi 25 mars 2005 à 08:25 Déconnecté(e)    Voir le profil de Mortarion Envoyer un email à Mortarion Envoyer un message privé à Mortarion  

Bon alors j'ai testé rapidement ton language ( qui est très bien ) et il y a plusieurs trucs bizarres :
- On a une erreur de compilation avec
blabla$=""

[Edit] Désolé j'avais pas vu le patch ... #neuneu#

- On a une erreur " Protected Memory Violation " quand on fait référence à un label inexistant dans le programme ( Bon d'accord faut le faire exprès quand même :) )

- Quand je fait
K=Ngetchx()
...
blabla$=Mki$(K)

ca marche pas, alors que :
K=Ngetchx()
...
blabla$=Right$(Mki$(K+256),1)

me donne enfin ce que je veux

- Un Print At(100,100)... plante la caltos en sortie de programme ( à vérifier )

Voila c'est tout pour l'instant. Manque plus qu'une fonction Text placé par pixel pasque la c'est vraiment nul :D
Et pis aussi une fonction rectangle plein noir ou blanc.

Bravo et bonne continuation !

-Edité le Vendredi 25 mars 2005 à 08:44 par Mortarion-
    
./Post n°1   Marquer comme non lu.
geogeo Ecrit le: Vendredi 25 mars 2005 à 16:07 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


- On a une erreur " Protected Memory Violation " quand on fait référence à un label inexistant dans le programme ( Bon d'accord faut le faire exprès quand même :) )


T'as un code parce que de mon côté ça marche.

- Quand je fait
K=Ngetchx()
...
blabla$=Mki$(K)

ca marche pas, alors que :
K=Ngetchx()
...
blabla$=Right$(Mki$(K+256),1)

me donne enfin ce que je veux


Tu veux obtenir quoi, un chiffre?

- Un Print At(100,100)... plante la caltos en sortie de programme ( à vérifier )


J'vais tester.

Voila c'est tout pour l'instant. Manque plus qu'une fonction Text placé par pixel pasque la c'est vraiment nul :D
Et pis aussi une fonction rectangle plein noir ou blanc.


Ca va arriver. :)

Sinon quel est le modèle de ta TI...
-Edité le Vendredi 25 mars 2005 à 18:19 par geogeo-
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°2   Marquer comme non lu.
Mortarion Ecrit le: Vendredi 25 mars 2005 à 16:53 Déconnecté(e)    Voir le profil de Mortarion Envoyer un email à Mortarion Envoyer un message privé à Mortarion  

Ma caltos : TI 89 AMS 2.08 avec Preos v0.64

Attention j'ai fais les tests sans le patch ( pas eu le temps )

Pour le label je viens de faire un test avec
Debut:
Cls
For I%=0 To 159
 For J%=0 To 99
  Plot I%,J%
  If J%=25 Then
    Goto Suite
  EndIf
  Next J%
Next I%

Fin:
Pause 15
Repeat 
Until RR_ESC


et Preos a intercepté un crash :(


Avec
K=Ngetchx()
...
blabla$=Mki$(K)

je veux obtenir le caractère de la touche qui a été pressée. C'est pour un jeu style motus où tu tape des lettres qui s'affichent à l'écran.


Ah oui et puis la répétition des touches est vraiment trop rapide, on est obligé de mettre des pauses pendant une boucle si on veut pas avoir 8 lettres pour 1 Ngetchx() :
Do
K%=Ngetchx()
...
Loop


Reste plus qu'a tester le patch ! :)

-Edité le Vendredi 25 mars 2005 à 16:54 par Mortarion-
-Edité le Vendredi 25 mars 2005 à 16:55 par Mortarion-
-Edité le Vendredi 25 mars 2005 à 16:55 par Mortarion-
    
./Post n°3   Marquer comme non lu.
Kevin Kofler Ecrit le: Vendredi 25 mars 2005 à 17:06 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  


C'est normal que Mki$(octet) ne marche pas, Mki$ travaille sur des entiers de 2 octets. Pour un octet, c'est Chr$ normalement. (Elle est déjà implémentée, cette fonction?)
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°4   Marquer comme non lu.
geogeo Ecrit le: Vendredi 25 mars 2005 à 18:13 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Bon pour le premier bug c'est very space car ça plante seulement quand Preos est installé! #confus#.

Pour ton problème de Mki$ c'est normal, Mki$ convertie un nombre en en chaîne de caractères sur 16 Bits soit 2 octets donc si ton nombre est inférieur à 256 tu obtiendras un caractère NULL+puis le bon octet. Il faut donc utiliser à la place Chr$.

Pour Ngetchx je viens de corriger le bug. :)

[EDIT] Après recompilation j'ai plus le premier bug!!! Même avec Preos installé. Moi rien comprendre, j'ai rien changé pourtant.


-Edité le Vendredi 25 mars 2005 à 18:15 par geogeo-
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°5   Marquer comme non lu.
Folco Ecrit le: Vendredi 25 mars 2005 à 19:10 Déconnecté(e)    Voir le profil de Folco Envoyer un email à Folco Envoyer un message privé à Folco  


Han un bug "aléatoire", ça risque de rester, de se reproduire plus tard, ...
il faudrait pouvoir faire un dump au moment du crash, mais c'est chôôô
<<< Kernel Extremist©®™ >>>
Pas la peine d'aller là plus d'une fois tous les six mois...

"Il faut apprendre pour savoir qu'il faut apprendre pour savoir."
    
./Post n°6   Marquer comme non lu.
Kevin Kofler Ecrit le: Vendredi 25 mars 2005 à 19:37 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  


Surtout qu'il écrit certainement n'importe où en mémoire. Avant, c'était par hasard quelque part dans la rangée "protégée", maintenant, c'est on ne sait pas où. :(
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°7   Marquer comme non lu.
geogeo Ecrit le: Samedi 26 mars 2005 à 13:08 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Ca a un rapport avec les labels, j'vais faire plusieurs tests bien sûr!
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°8   Marquer comme non lu.
geogeo Ecrit le: Dimanche 27 mars 2005 à 22:18 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Tous les problèmes que tu as signalé ont été corrigés. Même les labels...
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°9   Marquer comme non lu.
Dari Ecrit le: Lundi 28 mars 2005 à 11:47 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Petit conseil, peut-être qu'avec la 2.09 et PreOS 0.72 ça ira mieux :D
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°10   Marquer comme non lu.
Mortarion Ecrit le: Mardi 29 mars 2005 à 15:24 Déconnecté(e)    Voir le profil de Mortarion Envoyer un email à Mortarion Envoyer un message privé à Mortarion  

Ouais bon ca va pas le peine de me rappeller que je suis en retard :(

Sinon j'en ai un ptit nouveau pour la route :

Cls
Box 0,0,159,99
Box 1,0,4,3
Box 0,1,3,4

Get 5,0,9,4,Pic1$

Repeat
Until RR_ESC



C'est la ligne Get 5,0,9,4 qui entraine ( sans Preos ) Invalid Instruction suivi de Adress Error
Je ne comprend pas pourquoi ???
Y-a-t-il une taille minimale avec Get ?
    
./Post n°11   Marquer comme non lu.
geogeo Ecrit le: Mardi 29 mars 2005 à 18:48 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Euh ouai j'vais corriger ce bug, merci de me l'avoir signalé, ça sent un dbf foireux. :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°12   Marquer comme non lu.
geogeo Ecrit le: Mercredi 30 mars 2005 à 19:16 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Bon en regardant de plus près c'est un bug d'Extgraph.

Si quelq'un se sent d'attauq eà trouver une bonne solution:

|===|
|GET|
|===|
/*SpriteX8Get_R Source ExtGraph v2.0 bêta 4.0*/
_ExecCmd_Get_Copy:
    add.w     %d1,%d1
    move.w    %d1,%d4
    lsl.w    #4,%d4
    sub.w    %d1,%d4
  
    move.w    %d0,%d1
    lsr.w    #3,%d1
    add.w    %d1,%d4
  
    adda.w    %d4,%a3

    moveq.l   #30,%d2
    sub.w    %d5,%d2        |constant offset from the end of a line to the beginning of the next one
    subq.w    #2,%d5        |we need w-2 since first and last bytes are not in a loop
    
    and.w    #7,%d0        |shifting coeff
    jbeq    _ExecCmd_Get_Copy_2
  
    moveq.l   #8,%d3        |8-shift
    sub.w    %d0,%d3
  
    subq.w    #1,%d6

_ExecCmd_Get_Copy_0:
    move.b    (%a3)+,%d4        |first byte of the line
    lsl.b    %d0,%d4
    move.b    %d4,(%a0)
  
    move.w    %d5,%d1

_ExecCmd_Get_Copy_1:
    move.b    (%a3),%d4        |middle bytes
    lsr.b    %d3,%d4
    or.b    %d4,(%a0)+
  
    move.b    (%a3)+,%d4
    lsl.b    %d0,%d4
    move.b    %d4,(%a0)

    dbf    %d1,_ExecCmd_Get_Copy_1

    move.b    (%a3),%d4        |last byte of the line
    lsr.b    %d3,%d4
    or.b    %d4,(%a0)+
  
    adda.w    %d2,%a3
    dbf    %d6,_ExecCmd_Get_Copy_0
    jbra      TokensExec_EndTokenCmd

_ExecCmd_Get_Copy_2:            |loop if shift == 0
    addq.w    #1,%d5
    subq.w    #1,%d6
  
_ExecCmd_Get_Copy_3:
    move.w    %d5,%d1
  
_ExecCmd_Get_Copy_4:
    move.b    (%a3)+,(%a0)+
    dbf    %d1,_ExecCmd_Get_Copy_4

    adda.w    %d2,%a3
    dbf    %d6,_ExecCmd_Get_Copy_3
    jbra      TokensExec_EndTokenCmd
  
_ExecCmd_Get_lcd_mem:
    move.b    -59(%a5),%d0
    move.w    #TYPE_INTEGER,%d1
    lea.l     -60(%a5),%a2
    jbsr      TokensExec_ConvertType
    tst.w     %d7
    jbeq      _Exec_exit    
    
    movea.l   -56(%a5),%a3
    movea.l   (%a3),%a3
    jbra      _ExecCmd_Get_continue
    
ExecCmd_Get:
    jbsr      TokensExec_CNumArg
    cmpi.w    #6,%d6        |Trop d'arguments
    jbhi      _ERROR_too_arguments
    cmpi.w    #5,%d6        |Pas assez d'arguments
    jbcs      _ERROR_few_arguments
    
    movea.l   ptrEnd_ES(%PC),%a5      |Place la pile au début de la première données
    lea.l     -12(%a5),%a5
    
    |Coordonnée X0
    move.b    1(%a5),%d0
    move.w    #TYPE_INTEGER,%d1
    lea.l     (%a5),%a2
    jbsr      TokensExec_ConvertType
    tst.w     %d7
    jbeq      _Exec_exit
    
    |Coordonnée Y0
    move.b    -11(%a5),%d0
    move.w    #TYPE_INTEGER,%d1
    lea.l     -12(%a5),%a2
    jbsr      TokensExec_ConvertType
    tst.w     %d7
    jbeq      _Exec_exit
    
    |Coordonnée X1
    move.b    -23(%a5),%d0
    move.w    #TYPE_INTEGER,%d1
    lea.l     -24(%a5),%a2
    jbsr      TokensExec_ConvertType
    tst.w     %d7
    jbeq      _Exec_exit
    
    |Coordonnée Y1
    move.b    -35(%a5),%d0
    move.w    #TYPE_INTEGER,%d1
    lea.l     -36(%a5),%a2
    jbsr      TokensExec_ConvertType
    tst.w     %d7
    jbeq      _Exec_exit
    
    |Chaîne de caractères
    move.b    -48(%a5),%d0        |Opérande
    jbsr      TokensExec_CheckTableVar
    tst.w     %d7
    jbeq      _Exec_exit
    
    move.b    -47(%a5),%d0        |Type
    cmpi.b    #TYPE_STRING,%d0
    jbne      _ERROR_types_incompatible
        
    |Zone mémoire
    cmpi.w    #6,%d6
    movea.l   #LCD_MEM,%a3        |Zone mémoire par défaut
    jbeq      _ExecCmd_Get_lcd_mem
    
_ExecCmd_Get_continue:
    movea.l   4(%a5),%a0        |X0
    move.w    2(%a0),%d0
    movea.l   -8(%a5),%a0        |Y0
    move.w    2(%a0),%d1
    movea.l   -20(%a5),%a0        |X1
    move.w    2(%a0),%d2
    movea.l   -32(%a5),%a0        |Y1
    move.w    2(%a0),%d3
    
    |Taille des données en cctets
    move.w    %d2,%d4        |Taille du sprite en largeur = X1-X0
    sub.w     %d0,%d4
    move.w    %d3,%d6
    sub.w     %d1,%d6        |Taille du sprite en hauteur = Y1-Y0
    
    |Calcul de bytewidth
    move.w    %d4,%d3
    addi.w    #7,%d3
    asr.w     #3,%d3
    move.w    %d3,%d5
    muls.w    %d6,%d3
    jble      _ERROR_incorrect_arg
    
    |Sauvegarde X0 et Y0
    move.w    %d1,-(%SP)
    move.w    %d0,-(%SP)
    
    |Création de la chaîne de caractères
    addi.w    #4,%d3        |Taille header sprite
    lea.l     -48(%a5),%a2
    jbsr      TokensExec_NewString
    tst.w     %d7
    jbeq      _Exec_exit
    
    |Restaure coordonnées
    move.w    (%SP)+,%d0        |X0
    move.w    (%SP)+,%d1        |Y0
    
    |Gestion erreur
    tst.w     %d7
    jbeq      _Exec_exit
    
    |Header sprite
    move.w    %d4,(%a0)+        |Largeur
    move.w    %d6,(%a0)+            |Hauteur
    jbra      _ExecCmd_Get_Copy
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°13   Marquer comme non lu.
Mortarion Ecrit le: Jeudi 31 mars 2005 à 12:52 Déconnecté(e)    Voir le profil de Mortarion Envoyer un email à Mortarion Envoyer un message privé à Mortarion  

Désolé je peux pas t'aider j'y comprend pas grand chose :)
    
./Post n°14   Marquer comme non lu.
Folco Ecrit le: Jeudi 31 mars 2005 à 13:14 Déconnecté(e)    Voir le profil de Folco Envoyer un email à Folco Envoyer un message privé à Folco  


Superbe post, Mortarion!
<<< Kernel Extremist©®™ >>>
Pas la peine d'aller là plus d'une fois tous les six mois...

"Il faut apprendre pour savoir qu'il faut apprendre pour savoir."
    
./Post n°15   Marquer comme non lu.
geogeo Ecrit le: Jeudi 31 mars 2005 à 13:24 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


En regardant de plus près je risque de modifier énormément de choses dans cette fonction. :(
Si tu découvres encore des pbs Mortarion n'hésite pas!
Le temps me manque pour faire la prochaine release mais voici ce que j'annonce:
- Corrections de bugs divers.
- Meilleur gestion des chaînes de caractères.
- Instructions graphiques supplémentaires (ellipse, circle, remplissage de polygones....).
- Possibilité d'utiliser les procedures avec variables locales.
- Instruction Continue If.
- Optimisation sur les opérations de bases (auto-transtypage, opérations mathématiques).
- Optimisation des conditions.
- Instruction Case avec Switch.
- Meilleur affichage des erreurs.
- Et enfin développement de toutes les instructions de bases. Genre Put avec modes graphiques, Stop, Type...
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°16   Marquer comme non lu.
Kevin Kofler Ecrit le: Vendredi 1er avril 2005 à 00:36 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  


Martial Demolins :
Superbe post, Mortarion!

Il est plus utile que le tien.
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°17   Marquer comme non lu.
Mortarion Ecrit le: Vendredi 1er avril 2005 à 08:11 Déconnecté(e)    Voir le profil de Mortarion Envoyer un email à Mortarion Envoyer un message privé à Mortarion  

geogeo :
Si tu découvres encore des pbs Mortarion n'hésite pas!


Puisque t' en redemande ;) :

Cls
Box 0,0,16,16
Get 0,0,16,16,Boite$
Cls
Put 0,0,Boite$


Il manque une ligne de pixel en bas et une ligne à droite ( en fait pour avoir le rectangle en entier il faut faire Get 0,0,17,17,Boite$ )

- T'as pas mis d'info sur la fonction Put dans ton text "beta" du zip du genre Put x0,y0,data$,[mem]

- Comment déclarer un tableau de chaines de caractères ?

Voila c'est tout pour cette fois :D
    
./Post n°18   Marquer comme non lu.
geogeo Ecrit le: Vendredi 1er avril 2005 à 11:49 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


ouf petite erreur, ça va j'ai eu peur :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°19   Marquer comme non lu.
geogeo Ecrit le: Vendredi 1er avril 2005 à 11:52 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Normal que y a pas d'infos sur Put car à mes yeux elle est loin d'être terminée malgré quelle est énorme. Elle ne gère que 2 modes graphiques Or et Xor.

Sinon t'as raison faut que j'ajoute ça dans Beta.txt.

Sinon le prototype que tu deviens de donner est correct c'est bien:
Put X%,Y%,Data$[,Mem%]

Pour déclarer un tableau de chaînes de caractères, c'est pareil qu'un tableau d'entiers...

Dim A$(3,2)
A$(2,1)="toto"
Pour l'effacer

Erase ou Clr A$()
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
    
  :: Index » GFA-Basic TI68K » Bugs et suggestions » Plusieurs problèmes (22 réponse(s))
Pages : 1/2     « [1] 2 » »|

.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 49.19ms avec 18 requetes