Ce qui est marrant c'est que c'est toujours pareil avec les hobbys/passions, que ce soit le groupe de jazz, le cercle poésie, théâtre, ou l'asso locale de poterie !
Il y aura toujours ceux qui cherchent à se vider la tête du boulot et à se faire plaisir, a se challenger eux même sur des défis techniques sans avoir de pression. Et toujours ceux qui au contraire veulent plaire à une audience, faire quelque chose qui se veut "pro" avec des projets un peu commerciaux et vont bien souvent chercher à manipuler les premiers à entrer dans leurs projets...
Moi forcemment je vais davantage m'intéresser aux homebrews bien soignés auxquels je peux jouer. Et je vais moins apprécier les démos et autres projets dont l'intérêt est uniquement le défi technique, principalement car je n'ai pas la connaissance necessaire pour apprécier le travail technique qui est derrière. Donc des que je vois des programmeurs qui s'intéressent à la Jag ou autres consoles de prédilection j'ai naturellement envie de les voir plancher sur des projets concrets avec sortie physique.
Mais je réalise aussi que c'est une vision très égoïste. Mon père est dans un groupe de jazz et il se trouve nettement dans la première catégorie du dessus, content d'aller à la répétition toutes les semaines depuis plus de 20 ans pour peaufiner ses solos, mais bien saoulé de voir d'autres dans le groupe pousser pour sortir des CD, faire des 'morceaux qui plaisent' ou plus de concerts...
Donc bien sûr qu'il faut qu'il y ait les 2 dans des communautés comme ici ou AtariAge, et c'est important d'avoir un environnement ou chacun peut se sentir à l'aise et encouragé positivemment dans ses projets quels qu'ils soient.

MK !
Collectionneur, retrogamer.
Enfin, un peu moins maintenant.
Belle analyse MetalKnuckles ! Et ouais c'est bien d'avoir un peu de tout dans une communauté de passionnés.
Perso je fais plutôt parti du premier groupe, mais j'essaye lentement de passer dans le second. Et c'est dur !!! Donc je respecte énormément ceux qui arrivent à sortir un produit fini sur leur temps libre !
dilinger Le 01/01/2023 à 01:08Edité par dilinger le 03/01/2023 à 04:23 Bonjour.
Oui, cette expérimentation stupide continue. Quelques points pour ceux que cela intéresse.
1. Toujours en C / 68000.
2. John Carmack est brillant, tourner vers l'avenir avec son code, mais cela impacte les vieux processeurs (sic). Alors, j'ai transformer une partie du code a utiliser des shorts, ou bytes, a la place de int 32 bits qui ne faisaient pas de sens au vu des valeurs maximales possible. Il devrait y avoir encore de la marge de ce cote la.
3. Modifications dans les CVars, John Carmack est brillant mais il a base ce système sur les floats, toutes les variables CVars qu'elles soient utilisable comme bool, int ou float, sont en float. Alors, j'ai transforme le système pour les distinguer les unes des autres. Ca fait gagner du cycle mais aussi clarifie les calculs.
4. Améliorations de mes outils pour manipuler les fichiers et datas de Quake II et les adapter aux modifications apportées dans l'engin
-- BSP handler.
-- CVars handler.
-- MD2 handler.
-- SP2 handler
-- WAL handler.
-- PCX handler.
5. Ca déborde toujours en mémoire a qui mieux mieux.
6. Tentative d'utiliser LLVM (68k) et Vbcc, pour le moment la meilleure option est gcc 5.5.0
Cool ! Tu penses que c'est possible de passer le gros du jeu sur Tom ?
C'est quoi le problème de déborder en RAM ? Pourquoi ça passe avec le 68k et pas Tom ? Déborder dans quel sens ? Ça devrait faire planter non ?
On peut avoir quelques infos du coup ? Merci.
Ah oui je vois.
Ben c'est sûr que pour un jeu PC ça n'a pas de sens qu'il tourne sur une machine qui ne peut pas faire tourner la map la plus grande. Et puis à l'époque c'était courant d'éviter autant que possible l'allocation dynamique. Non seulement ça évite tous les problèmes liés à ça (fragmentation, bugs et impacts de performance subtils et imprévisibles…) et au final c'est passablement plus économe en pratique, du moins dans le "pire des cas". Bref facile à déboguer, à optimiser et à comprendre si tu vas au-dessus des limites. Aujourd'hui bien sûr les gains sont négligeables et les performances sont imprévisibles de toute façon, en plus les OS modernes (hors desktop) n'aiment pas les processus qui consomment beaucoup de mémoire, donc on regarde ça différemment.
Du coup y a aucune chance de jamais faire tourner ça sur Tom ? Genre faire en sorte que sa mémoire locale soit un "cache" ?
Je connais pas du tout, mais Tom n'a vraiment pas accès à la RAM principale ? Je me doute que 2-3 ko c'est pas assez pour mettre grand-chose en matière de logique du jeu, à part des routines de rendu bien spécifiques ? Mais peut-être que ça resterait plus rapide si le code était exécuté depuis la RAM mais par Tom ?
J'ai lu quelques part que oui, on peut faire tourner Tom dans la ram principale. Je me souviens que quelqu'un avait fait un benchmark a ce sujet.
Je n'ai pas de compilateur gpu/dsp qui tourne sur Windows, ce que j'ai pu trouver tourne sous dos.
Je préfères passer mon temps sur la réduction de l'usage de la ram et d'éliminer les floats. Trouver aussi le soucis avec le binaire coff et pourquoi ca ne passe pas sur BigPEmu.
Brunni, heu, l'allocation dynamique est a proscrire, meme de nos jours!

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.
Merci pour ces informations pertinentes et aussi merci a SCPCD pour ses benchs.
Sans oublier le reste de mes librairies qui se rajouterait a la taille du code du risc. Je ne penses pas que les "efforts" a mettre tom en ram en vaille la peine.
En parlant de ram, voici un aperçu de l'occupation rom et ram pour une de mes maps de tests.
En rom, nous avons approximativement:
Le code occupe 800KB avec Microwindows, et 550KB sans Microwindows.
Le data occupe 1.2MB tout compris, mais 1MB sans Microwindows.
En ram, nous avons approximativement:
La bss occupe 1.2MB, il reste donc moins de 800KB pour le heap et le stack, plus une petite portion pour du data transférer dans la ram.
La bss, et le data, peuvent changer selon les besoins de la map. Il me reste aussi pas mal d'optims a mettre en place pour réduire la bss.
Microwindows est condamner a disparaitre des que le double buffering vidéo sera en place.