1

Nouveaus topics, nouveaux bugs, nouveaux rapports.

Historique:
v0.78: * Fix 'start' problem: Forget to add 'push_END_TAG' before calling run_script("main\start") in\
shell.asm.
* Tiny modifications of the BOOT code.
* Fix bug of ST_eraseHelp: forget it wasn't a void function !
* Fix bug of idle function on 89. I hope it works on 89 HW1 now.
* Fix bug of PopupClear.
* Fix bug of completion in case of low memory condition (FIXME: To check!).
* Fix bug of address error if the shell has to display the complete menu if "main\s".
* Fix bug of circular definition if you call an asm program like this "main\stdlib": Use SymFi\
ndPtr in FindSymPath.
* Allow '\' char if it is the last char of the directory in cd command.
* Fix bug of function strncmp: too many chars were compared.
* Improve speed of Find/Replace of side (And the previous fix, fix them).
* Change ABI of VATAddSpecialFile.
* FlashInit is not separated in FlashAddArchivedFiles & FlashCheck.
* FlashAddArchivedFiles now uses VATAddSpecialFile (Safier since this functions does a lot of \
check).
* Optimize a few the initialisation of all sector loops in flash.asm
* Fix bug of Popup in dialog, if you press ESC.
* Add QSort function (from tigcc sources). A little few change, too.
* VAT now uses qsort instead of bubble sort.
* Process: It uses LongWord to copy stack to buffer (Size Buffer increased of 2).
* SymMove checks if src name is inuse/archived/hidden before renaming it.
* Little change in dialog popups.
* Fix bug in StrToTokn.
* Add fopen/fclose/fread/fwrite/fgetc/fputc/rewind/ftell/fseek/fclearerr/fputs/fprintf/ferror/\
fflush/ungetc.
* Add stdin/stdout/stderr as stream.
* Add support of redirection: >, < and 2> work.

2

> * Add support of redirection: >, < and 2> work.
> Add fopen/fclose/fread/fwrite/fgetc/fputc/rewind/ftell/fseek/fclearerr/fputs/fprintf/ferror/fflush/ungetc.

Génial! Il maque plus que open, close, read, ... et system et on aura à peu près toutes les commandes indispensables pour se croire sous UNIX. Si GTC sort un jour, avec ce genre de truc ca serait le pied.
En tout cas "system" me servirait sans doute dans TIM. par exemple pour lancer les pedroms APPS, faire des setpath, changer les flags, ...
avatar

3

Uther: Ca serait bien que tu fasses un wrapper pour open, close, read, etc. Sachant que dans l'implantation actuelle, FILE *f = FILE_TAB[i] (stdin, stdout et stderr sont les nums 0,1,2). system sera ecrit (en fait un wrapper qui appelle la commande interne ShellExecuteCommand).

Je compte exporter:
tt_decompress, realloc, printf, fxxxxx, vcbprintf, qsort, switch, show_text, dialog, match, GetCursorKey, InputString, str2nbr (~atoul), system, ExecuteScript, completion, stdin/out/err, argc, argv.

Si vous avez des idees. Sachant qu'il ne me reste plus que 3Kb de libre dans la ROM grin

4

Arrrgh...
Pourquoi ajoutes-tu toutes ces fonctions qui ne sont pas dans AMS au lieu de compléter la table des fonctions qui sont dans AMS???
Les fonctions de stdio.h sont déjà dans tigcc.a, pas besoin de les refaire en ROM...
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

5

A bon. tigcclib supporte stdin, stdout, et stderr, et la redirection de ces canals dans ces programmes? Je savais pas grin Remarque ca me prend seulement 2.2Kb le tout. Pas tant que ca.
Plus serieusement, il ne me reste plus beaucoup de romcalls d'AMS 1.0x que je veux/ peux mettre.
Depechez-vous si votre romcall favorite n'est toujours pas dans PedroM.

6

Uther: Ca serait bien que tu fasses un wrapper pour open, close, read, etc. Sachant que dans l'implantation actuelle, FILE *f = FILE_TAB[i] (stdin, stdout et stderr sont les nums 0,1,2). system sera ecrit (en fait un wrapper qui appelle la commande interne ShellExecuteCommand).
Je vais voir ca alors. Même si pour moi open,close,read,... ne sont pas indispensable ca complèterai très bien le tout.
Pour system, si ca marche c'est génial.
Pourquoi ajoutes-tu toutes ces fonctions qui ne sont pas dans AMS au lieu de compléter la table des fonctions qui sont dans AMS??? Les fonctions de stdio.h sont déjà dans tigcc.a, pas besoin de les refaire en ROM...
Arretes, tu sais très bien pourquoi: AMS ne gère pas les flus donc les fonctions de tigcc.a ne sont que des adaptations dans les limites d'AMS. Ici le but c'est de faire vrai un système de flux.
avatar

7

Comment crois-tu que j'ecris les scipts: ShellExecuteCommand de chaque ligne #triso@triso.com#. Donc system ne posera aucun probleme.

8

Excuse j'ai jamis regaré très profondément dans le source je pensais que ca aurait posé problème de lancer ca en dehors de la ligne de commande.
avatar

9

Un portage de CC, vu que les source sont dispo, et qu'il ne fonctionne pas pour l'instant sur PedroM

10

Oui, mais il semblerait que GTC fonctionne, donc si c'est la cas, c'est plus simple d'attendre GTC.
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

11

Si vous voulez attendre encore un siècle, allez-y... roll
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

12

Ajout de la fonction system.
PS: pas vraiment, cf:
#define system(s) HomeExecute(s,0)
Contrairement a AMS HomeExecute calcule la vrai longuer de la chaine si on passe 0.

13

Bon j'ai testé rapidement hier sur ma 89:
- Après le premier flashage. Reboot en boucle pour cause de Heap Corompu et Memory juste après ou pendant le check de la flash. J'ai du remettre AMS(via la touche apps) puis remettre PedroM pour que ca marche.
La même chose m'est arrivée après 10 minutes d'utilisation. => reflashage sad
C'est peut être mon buggé de TISH qui a provoqué ca vu que c'est arrivé vite après que je l'installe

- les sripts start ne freezent plus mais :
-> "not a script" sous VTI TI89 -TI92+
-> "Protected Memory" sur ma TI 89
Bref c'est pas une grosse amélioration

- les fonctions que j'ai essayée retournent les messages d'erreur sur stdout et non stderr.
avatar

14

>Après le premier flashage. Reboot en boucle pour cause de Heap Corompu et Memory juste après ou pendant le check de la flash.
>J'ai du remettre AMS(via la touche apps) puis remettre PedroM pour que ca marche.
>La même chose m'est arrivée après 10 minutes d'utilisation. => reflashage
>C'est peut être mon buggé de TISH qui a provoqué ca vu que c'est arrivé vite après que je l'installe
Et la ca marche ? (tu me fais peur)... Essaye de faire un dump avec Vti la prochaine fois...

>- les sripts start ne freezent plus mais :
>-> "not a script" sous VTI TI89 -TI92+
>-> "Protected Memory" sur ma TI 89
>Bref c'est pas une grosse amélioration
Arg, je ferrais mieux de debugguer plus souvent les scripts moi miam

>- les fonctions que j'ai essayée retournent les messages d'erreur sur stdout et non stderr.
Normal. Elles appellent printf.

15

> Et la ca marche ? (tu me fais peur)... Essaye de faire un dump avec Vti la prochaine fois...
Ca m'a fait peur aussi. Pour le moment ca marche mais j'ai pas encore pu tester beaucoup
Je pouvais pas faire de dump vu que ca rebootait en boucle avant j'arriver a la ligne de commande sad C'etait sur real TI
avatar

16

Help. Envoyez moi des dumps qui font tout foirer...

17

Ajout de >>
Nouveau probleme: modifier la convention pour que la fonction interne affiche d'elle meme le retour chariot.

Correction du probleme de start (Fichier shell.asm / ShellStart / Cherche script / push_END_TAG detruit d0).

18

Uther: J'ai trouve l'origine du bug. PedroM 0.78 est incapable de booter si on a des fichiers archives dans d'autres folders que main. triso. Non rigolez pas. c'est corrige. J'ai aussi corrige quelques bugs potentiels des fonctions d'archivages. Et pis qqs autres bugs. Les messages d'erreurs sont affiches sur stderr, et les commandes doivent desormais retourner le \n final d'elles-meme.

19

Cool ce bug la me rassurait pas!
avatar

20

Ca serait possible d'avoir une 0.78b car j'ai pas vraiment envie de tester avec une version si instable.
avatar

21

Une 0.79a alors. Quoique, tu puisses simplement recompiler.

Edites VAT.asm
Tu as ca:
VATAddSpecialFile:
        pea     (a0)                            ; Add file to the system ?                          
        bsr     SymFindPtr                      ; If it was already add in the archive              
        move.l  a0,d0                           ; do not add it again                               
        bne.s   \Cont
                bsr     HeapGetHandle           ; Get an handle                                     
                move.w  d0,d3                   ; Save Handle                                       
                beq.s   \Cont                   ; Check success                                     
                bsr     SymAdd                  ; Add the file                                      
                bsr     DerefSym_Reg            ; Deref HSym                                        
                move.l  a0,d0                   ; Check success                                     
                beq.s   \Cont
                        move.w  d3,SYM_ENTRY.hVal(a0)           ; Save the handle                   
                        move.w  #SF_ARCHIVED,SYM_ENTRY.flags(a0); Set as archived                   
                        lsl.w   #2,d3                           ; x4 (size of an address)           
                        lea     HEAP_TABLE,a0                   ; Heap Table                        
                        move.l  a4,0(a0,d3.w)                   ; Save the addr of the handle       
\Cont   addq.l  #4,a7
        rts

Tu corriges en :
                bsr     HeapGetHandle           ; Get an handle                                     
                move.w  d0,d3                   ; Save Handle                                       
                beq.s   \Cont                   ; Check success                                     

                        lsl.w   #2,d0                           ; x4 (size of an address)           
                        lea     HEAP_TABLE,a0                   ; Heap Table                        
                        move.l  a4,0(a0,d0.w)                   ; Save the addr of the handle       

                bsr     SymAdd                  ; Add the file                                      
                bsr     DerefSym_Reg            ; Deref HSym                                        
                move.l  a0,d0                   ; Check success                                     
                beq.s   \Cont
                        move.w  d3,SYM_ENTRY.hVal(a0)           ; Save the handle                   
                        move.w  #SF_ARCHIVED,SYM_ENTRY.flags(a0); Set as archived                   


J'ai fait ca en 2 seconde. Verifie que ca marche surVti avant smile

22

Oui mais il me faudrait PreOS 0.68, du moins je pense que c'est a cause de ca qu'il me manque le fichier kheader.h qui semble remplacer de kernel.h qui avait aussi pausé des problèmes a gozil
avatar

23

Ok, ok.Faut que je me depeche de sortir preos 0.68 sad
Dans le pire cas, t'archives pas en dehors de main, et ca ira.

24

Pourquoi ne pas envoyer PreOs 0.68 aux bêta-testeurs de PedroM tout simplement?
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

25

J'oublie toujours triso. Faut que je le fasse.

26

Bug avec la fonction BitmapPut ou BitmapGet.
Seulement une ligne horizontal et une ligne vertiacal ne s'affiche pas, on dirait que Pedrom affiche que width-1 et heigth-1.
avatarla Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

27

La premiere version publique sera la 0.80 ?
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

28

geogeo: Tu peux me filer un test case. Je croyais avoir corrige cela sad
godzil: Il fut un temps ou c'etait prevu... Depuis mon retard et les bugs m'en font doute.

29

Un test case? Un screenshot? Le programme qui fait ça?
En tout cas je vais regarder dans les routines et voir ce qui cloche, ça doit être un truc tout bête.smile
avatarla Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

30

Un programme avec source.