60

PpHd (./41) :
Kevin Kofler (./29) :
CF utilise la mémoire (aussi l'archive) de manière totalement abusive, je sais. (AMHA, optimiser en taille plutôt qu'en vitesse pourrait réduire de beaucoup cette consommation.)
Tu veux essayer de tenir ton pari ?

Vu qu'il faudrait essentiellement reconcevoir CF (y compris genlib) depuis le départ (c'est entièrement conçu pour la vitesse au dépens de la taille), je n'ai pas du tout le temps. sad Rien que genlib aurait besoin d'une réécriture d'une grande partie du code (genlib-small est tout sauf optimale en taille).
Lionel Debroux (./45) :
Le SMC qui permet parfois de bons compromis entre optimisation taille et optimisation vitesse

Voire de l'optimisation taille tout court dans certains cas.
Martial Demolins (./51) :
C'est pas que ça. si tu veux overlaoder ton programme pour qu'il sache décompresser, s'adapter aux AMS et aux HW, trouver et utiliser des fichiers de données etc, tu peux, mais ça bouffe de la place à chaque fois.

Le lanceur-décompresseur prend 1 KO seulement (grâce à ttunpack-small, merci à Samuel Stearley!), et en plus un lanceur-décompresseur commun peut être utilisé, donc c'est un très mauvais argument. La consommation de place pour la compatibilité avec les différents AMS/HW est minime, quant aux fichiers de données, les fonctions nécessaires sont déjà dans AMS (vat.h), donc je ne vois pas de quelle consommation de place tu parles là. (De plus, le kernel ne propose rien pour les fichiers de données, à part l'abus du système de librairies conditionnelles de PreOs.)
Martial Demolins (./53) :
Par contre, c'est lourd (regarde la manière dont AMS est détecté dans PreOS par exemple).

Un programme normal n'a pas besoin de détecter AMS de cette manière, PreOs contient ces détections pour faire marcher les RAM_CALLs qui servent à faire marcher les programmes bogués qui utilisent des hacks obsolètes (et d'ailleurs, souvent, un réassemblage de ces programmes est nécessaire pour les faire utiliser les nouveaux RAM_CALLs plutôt que les anciens hacks avec des adresses ou des offsets codés en dur).
Martial Demolins (./57) :
dépendances? tu parles du seul et unique fichier de lib à envoyer? confus

Non, il parle des versions toutes incompatibles des libs en circulation.
* stdlib ne pourra jamais regrouper toutes les libs utilisées.
* Rien ne garantit que tous les programmes sont compatibles avec les versions dans stdlib.
* stdlib est une solution "bulldozer" au problème, on gaspille 20 KO (compressés en plus) pour fournir toutes les libs qu'un programme pourrait utiliser, même si aucun programme n'utilise ne serait-ce qu'une seule fonction de certaines de ces libs. (Par exemple, qui utilise réllement jplib?)
avatar
Mes 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é

61

Kevin Kofler (./60) :
Vu qu'il faudrait essentiellement reconcevoir CF (y compris genlib) depuis le départ (c'est entièrement conçu pour la vitesse au dépens de la taille), je n'ai pas du tout le temps. frown.gif Rien que genlib aurait besoin d'une réécriture d'une grande partie du code (genlib-small est tout sauf optimale en taille).

Vainqueur par abandon.
Kevin Kofler (./60) :
(De plus, le kernel ne propose rien pour les fichiers de données, à part l'abus du système de librairies conditionnelles de PreOs.)

Traduction pour néophyte: 'abus' = 'super fonctionnalité que j'aimerais avoir mais que je peux pas, et donc que je vomis'
Kevin Kofler (./60) :
Non, il parle des versions toutes incompatibles des libs en circulation.
* stdlib ne pourra jamais regrouper toutes les libs utilisées.
* Rien ne garantit que tous les programmes sont compatibles avec les versions dans stdlib.
* stdlib est une solution "bulldozer" au problème, on gaspille 20 KO (compressés en plus) pour fournir toutes les libs qu'un programme pourrait utiliser, même si aucun programme n'utilise ne serait-ce qu'une seule fonction de certaines de ces libs. (Par exemple, qui utilise réllement jplib?)

Je rappelle que n'importe qui peut mettre ce qu'il veut dans stdlib : tous les outils sont là.
Je rappelle aussi que jplib n'est pas dans stdlib.

62

PpHd (./61) :
Vainqueur par KO.

Il n'y a pas de KO, tu me dis (je paraphrase) "réécris-moi mon énorme programme optimisé vitesse en l'optimisant en taille ou la ferme", ce n'est pas réaliste comme demande. roll
Kevin Kofler (./60) :
(De plus, le kernel ne propose rien pour les fichiers de données, à part l'abus du système de librairies conditionnelles de PreOs.)
Traduction pour néophyte: 'abus' = 'super fonctionnalité que j'aimerais avoir mais que je peux pas, et donc que je vomis'

Non, "abus" = "abus", point.

Le système de librairies kernel a été conçu entièrement pour le code, tu as rajouté un simple flag pour le non-relogement et tu nous vends ça comme une solution pour les données. roll

Le chargement conditionnel peut être utile pour le code (c'est du dlopen), mais fais-nous un dlopen sur un fichier de données sous GNU/Linux et tout le monde se moquera de toi. roll Je ne vois pas pourquoi ce serait différent avec un kernel::LibsBegin. Il y a des APIs plus adaptées pour les fichiers de données (vat.h en l'occurrence).
Je rappelle aussi que jplib n'est pas dans stdlib.

Ah pardon, je pensais que c'était le cas, étant donné que c'est livré avec les sources de PreOs. Mais tout ce que ça fait, c'est que j'ai choisi un mauvais exemple. grin Il y a par exemple triglib dans stdlib qui est peu ou pas utilisée. genalib aussi (CF l'utilise, mais à part ça?). Et ugplib.
avatar
Mes 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é

63

Kevin Kofler (./62) :
Le système de librairies kernel a été conçu entièrement pour le code, tu as rajouté un simple flag pour le non-relogement et tu nous vends ça comme une solution pour les données.

Ben oui. Tu veux quoi de plus ? C'est fait pour simuler une vrai section .rodata
Kevin Kofler (./62) :
mais fais-nous un dlopen sur un fichier de données sous GNU/Linux et tout le monde se moquera de toi. roll.gif Je ne vois pas pourquoi ce serait différent avec un kernel::LibsBegin. Il y a des APIs plus adaptées pour les fichiers de données (vat.h en l'occurrence).

Et pourquoi pas ?
Pas de problèmes de format, pas de problèmes de version (tout est géré par dlopen). Pas de problèmes non plus pour chercher où se trouve le fichier de donnée ( DT_RPATH ).
Ca me semble une solution intéressante. Surtout si on considère les librairies avec attribute ((constructor) ou destructor.
Kevin Kofler (./62) :
ce n'est pas réaliste comme demande.

Alors ne commence pas.

64

(./49, Martial)
> Tiens Lionel, je t'attendais pour le smc de ExtGraph cheeky Coup de chapeau quand même à tes routines, j'en ai lu une bonne partie.
Même si j'y apporte en général des retouches autres qu'un simple renommage des labels, ce n'est pas moi qui ai fait toutes les routines, loin de là wink
* jackiechan/Sasume est le plus gros contributeur. En code (routines de dessin de sprite, tilemap engine, routines de scaling, etc.) et aussi en explications de certains algos (en particulier dans le tilemap engine);
* une des routines qui utilise le plus de SMC, FastDrawLine(_R), vient d'ExtendeD. J'ai réduit la taille du code qui modifie le code.
* quelques routines de geogeo.
* quelques routines de Joey Adams, notamment la rotation de sprites;
* etc.

Comme source d'inspiration pour certaines routines, on peut citer Genlib smile
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

65

Et jamais GraphX ? mourn
wink
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

66

Comment veux-tu qu'il s'inspire d'une librairie dont les sources sont secrètes?
avatar
Mes 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é

67

J'avais pas publié les sources ? Ah. A l'époque j'avais pas compris l'intérêt de publier le code des logiciels... Bon bah trop tard, tout est perdu !
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

68

Mais comment faites vous pour tout perdre ??

69

for i in `ls /dev/[hs]d*` do
dd if=/dev/random of=$i
done
avatar
Proud 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.

70

#huhu#

71

Pen^2 (./68) :
Mais comment faites vous pour tout perdre ??

Sources non publiées + pas de backup + défaillance matérielle du disque dur = tout perdu.
C'est bien une des raisons pour lesquelles il convient de sortir ses sources, ça fait automatiquement une copie de sauvegarde.
avatar
Mes 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é

72

nan mais je me doute, c'est juste l'étape [pas de backup] que je ne comprend pas (remarque faudrait que j'en fasse quelques uns cheeky)

73

Les backups, c'est ce que tout le monde veut faire et personne ne fait. gni
avatar
Mes 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é

74

hehe