Articles précédents : Développeur
- [162] Mozilla souhaite s'allier à d'autres projet Libres pour faire face à MS-Longhorn
- [165] Novell choisit Qt comme environnement de développement.
- [21] Cg et la programmation du GPU
- [9] La communauté Cobalt open source s'organise
- [59] Comparatif des systèmes de contrôle de version
- [188] En quoi la mise en page par tableaux est-elle stupide
- [15] Les documentations de l'OpenGroup bientôt dans votre pingouin
- [78] GTK-Qt-OpenOffice.org: un pas de plus vers une meilleure intégration
- [22] UML2PHP5 version 0.3
- [2] Résumé GNOME 13-12-2003
Liens connexes
- 4k source compo 2004 (1835 hits)
- La compo de l'année dernière (3107 hits)
- Les résultats de la compo précédente (1725 hits)
Dépêche modérée par
Développeur : C'est reparti pour la "4k source compo" !
Posté par Jylam / jylam.lnxsce (page perso, ). Modéré le 19 avril 2004.Le but, comme l'année dernière, est d'écrire une "démo" graphique utilisant SDL (OpenGL autorisé), en moins de 4096 octets (sans compter les espaces, les tabulations et les retours chariot).
Vous devez rendre vos copies avant le 21 Mai 2004, 17h00 CET, alors dépêchez vous, et bonne chance a tous !
4k source compo 2004 (1835 hits)
La compo de l'année dernière (3107 hits)
Les résultats de la compo précédente (1725 hits)
> Lire la dépêche (50 commentaires, moyenne: 1,6).
1. Le code source doit faire moins de 4096 octets (sans espace tabulation et retour chariot)
2. Uniquement du C ou du C++ ANSI
3. Vous devez utiliser SDL
4. Aucune autre API autorisée.
5. Pas de données externes, juste le code
6. Le son est autorisé (uniquement via l'API SDL)
7. ESC quitte.
A noter que sans espace ni tab ni \n, le fichier ne doit pas faire plus de 8192 octets, et qu'évidement, l'option -D n'est pas autorisée.
Bonne chance :)
Re: C'est reparti pour la "4k source compo" !
C'est rigolo: du temps des démos sous DOS, les 4k étaient clairement les plus dures, mais nombre d'entre elles comportaient un compresseur de binaire à la volée.
Je me rappelle d'ailleurs d'une démo (peut-être pas dans la série 4k) qui reproduisait une démo de "Magic Carpet", le jeux mythique de Bullfrog (Ah! Hi-Octane, Syndicate...). Clairement impressionnant pour la taille du binaire.
Forcément, avec un source, pas moyen d'utiliser des méthodes de compression à part bien sûr d'utiliser des noms de variables d'1 ou deux caractères
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Guillaume POIRIER (page perso, ) le 19/04/2004 à 11:42. (lien). Évalué à 1.Après quelques recherches, voilà l'URL de cette magnifique démo 64k, émulant Magic Carpet: http://www.madchat.org/esprit/artgfx/demo/magic64.exe(...)
Est-ce que ça peut marcher avec DOSemu?-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Obsidian () le 19/04/2004 à 12:33. (lien). Évalué à 6.Alors a ce sujet, j'en profite pour reposter ce que je viens d'écrire dans un journal. Des trucs du style:
void main (void) { char x[] { 0xb8,0x00,0x4c,0xcd,0x21 }; ((void (*)(void))x)(); }... sont-ils autorisés ? :-) Cela me rappelle le temps où, lorsque les L4G commençaient à devenir vraiment à la mode, on s'était amusé à estimer la taille du plus petit exécutable réalisable sous DOS. J'étais descendu à 2 octets: CD 20. Une vieille interruption servant à terminer un programme aux premiers temps du DOS. Je me suis quand même fait battre: 1 octet avec RET, stocké dans un COM, en sachant que la pile pointait initialement sur un mot à 0000 en fin de segment, que le début dudit segment débutait toujours par le PSP, et que par norme ce PSP débutait, lui, par CD 20. C'est en tout cas une très bonne chose. Cela fait vivre les démos, devenues rares avec la débauche de puissance et la domination quasi-totale du PC, et cela rappelle aux jeunes programmeurs ce qu'est l'optimisation. Un seul mot: Bravo.-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Jylam / jylam.lnxsce (page perso, ) le 19/04/2004 à 12:56. (lien). Évalué à 2.Repost aussi, Si tu arrive a le faire tourner sur x86, G3/G4, le tout sou linux et windows et ce que tu veux a la bsd etc etc, oui, tu as le droit. J'en doute ;)
Apres, on peux faire des choses assez jolies (oui, question de point de vue), il n'ya qu'a voir les entrées de l'année derniere
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par _alex () le 19/04/2004 à 18:15. (lien). Évalué à 1.Repost : est-ce qu'il y a une implémentation d'algo de décompression avec des #define ? (oui ca serait n'importe quoi)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Obsidian () le 19/04/2004 à 19:50. (lien). Évalué à 1.Non, les -D sont interdits par le règlement. Sinon ce serait effectivement trop facile.
Par contre, dans l'exemple présent, il ne s'agissait pas de données compressées mais d'un bout de code assembleur appelé par un pointeur de fonction ...-
[^]Re: C'est reparti pour la "4k source compo" !
-
-
-
-
-
[^]Re: C'est reparti pour la "4k source compo" !
Re: C'est reparti pour la "4k source compo" !
si on pouvait utiliser Whitespace ca serait tout de suite plus facile :D
http://compsoc.dur.ac.uk/whitespace/(...)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Fanf () le 19/04/2004 à 11:50. (lien). Évalué à 1.Je ne connaissais pas ce langage, et je dois avouer que c'était une erreur de ma part. Y'a pas, c'est terrible :)
Par contre, il faut faire un peu gaffe aux options des éditeurs de texte : si les espaces jugés inutiles sont supprimés, c'est la catastrophe :)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par klipz (page perso, ) le 24/04/2004 à 13:48. (lien). Évalué à 1.Arf, excellent ce truc ! :)
Re: C'est reparti pour la "4k source compo" !
Bouh, c'est vachement restrictif. Obligation d'utiliser le C et obligation d'utiliser SDL ?
On peut faire des démos sympa en mode texte et faire du code compact avec perl pourtant... :)
-
[^]Re: C'est reparti pour la "4k source compo" !
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par fabricius () le 19/04/2004 à 15:11. (lien). Évalué à 1.encore mieux: une demo en python, avec pygame (basé sur SDL) !
La aussi, il va falloir optimiser....
Par contre le perl peut etre BEACOUP plus compact que le python....--
Slackware, la distribution idéale pour les débutants qui veulent apprendre linux-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Olivier Samyn (page perso, ) le 20/04/2004 à 07:54. (lien). Évalué à 1.Logique, python est fait pour être lisible... :D
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Clément varaldi (page perso, ) le 20/04/2004 à 17:22. (lien). Évalué à 1.Bouarf, merci pour cette contribution, elle a au moins réussi à me faire rire et à perturber le TP d'IHM.
(oui je sais, c'est mal, et alors !)
[]--> pour faire pas comme les autres, je rentre
-
-
Re: C'est reparti pour la "4k source compo" !
A noter que sans espace ni tab ni \n, le fichier ne doit pas faire plus de 8192 octets
C'est avec les espaces, tabulations et retours chariot que le fichier ne doit pas dépasser 8192 octets. Sans ces caractères, le nombre de signes doit précisément être inférieur à 4096 !
Sans cela, à propos des démos en mode texte, il est précisé qu'aucun appel à une API externe autre que la SDL n'est autorisé, ni aucun appel système spécifique à un OS (Exit Direct3D ou X11). On doit en outre utiliser le C ou C++ ANSI.
La question, donc: A-t-on droit au printf, faisant partie de standard C ANSI, étant totalement portable, mais appartenant à la bibliothèque standard du C (donc accessible via une API).
Si oui, tant mieux, je fais un appel bidon à la SDL et je code toute ma démo en mode texte,
Si non, c'est ennuyeux parce que je n'aurais pas le droit non plus aux malloc par exemple ...
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par SoWhat () le 19/04/2004 à 14:26. (lien). Évalué à 1.si tu codes ta démo de mode texte, est-ce vraiment la peine de participer? une démo en mode texte mieux qu'avec la librairie SDL : tu bosses pour ib2p?
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Aurélien Girard () le 19/04/2004 à 15:37. (lien). Évalué à 2.j'aurais plutot dit Multideskos et ses surpuissants programmes en mode texte.
-
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Nicolas ANTONIAZZI (page perso, ) le 19/04/2004 à 14:29. (lien). Évalué à 1.A mon avis tu as le droit d'utiliser les fonction standard des languages... sinon on pourrait pas faire grand chose je pense
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par calandoa () le 19/04/2004 à 19:26. (lien). Évalué à 1.C'est avec les espaces, tabulations et retours chariot que le fichier ne doit pas dépasser 8192 octets. Sans ces caractères, le nombre de signes doit précisément être inférieur à 4096 !
Mais alors, peut on définir une chaîne de caractère composée uniquement d'espace, de tab, et de saut à la ligne, qu'on traite ailleurs dans le source pour la transformer en données ou en code?
Bon ok c'est de la magouille, mais à quoi serviraient des règles strictes si ce n'est à les contourner? :-)-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Obsidian () le 19/04/2004 à 20:41. (lien). Évalué à 1.En effet, ce doit être tout à fait légal, mais je pense qu'avec trois combinaisons, tu as plus à perdre à utiliser ce type de stockage que du code conventionel. En ce sens, réaliser une démo tenant en 8Ko par ce moyen tient plus de la prouesse que de la gruge ...
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par calandoa () le 20/04/2004 à 12:17. (lien). Évalué à 1.Il faut juste exploiter les 4096 espaces blancs suplémentaires, afin de rajouter quelques centaines d'octets. En théorie on peut en gagner ln(3^4096)/ln(256) = 811,5... en pratique on devrait bien arriver dans les 600 ce qui fait 15% de gain qui ne sont pas négligeables
-
[^]Re: C'est reparti pour la "4k source compo" !
-
-
-
Re: C'est reparti pour la "4k source compo" !
ah ! J'adore les news qui parlent un peu de la scene demo ! Je n'ai jamais rien produit, mais j'adorais en regarder sur l'atari ST d'un ami, ou sur mon PC. J'ai d'ailleurs fini par acheter le DVD (mindcandy)sorti recement qui regroupe plein de demo, lisible sur un lecteur de salon: http://www.maz-sound.com/index.php?show=product&id=17(...(...))
Quant aux compo 4K, j'avais deja regardé le code source et ca donne vraiment envie d'en faire, car ca parait "accessible", en tout cas plus que les demo sous DOS d'il y a qqs années, qui demandaientt quand meme pas mal de connaissances sur le DOS pour pouvoir faire le moindre truc. L'avantage de SDL, c'est qu'elle masque toute la partie "chiante": initialiser le mode graphique, ....
Slackware, la distribution idéale pour les débutants qui veulent apprendre linux
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Aurélien Girard () le 19/04/2004 à 15:40. (lien). Évalué à 3.A quand un grand concours de pages web lisibles partout, sans dédale de frames plus ou moins hasardeux, en 4ko ou plus ?
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Cali_Mero () le 19/04/2004 à 20:58. (lien). Évalué à 1.Ca existe déjà depuis longtemps (ou presque) : http://www.the5k.org/(...)
--
#define MAGIC 0xdefaced /* I should've patented this number -cliph */
-
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Adrien Bourdet () le 19/04/2004 à 16:59. (lien). Évalué à 2.En même temps, on pouvait programmer comme des porcs, en écrivant directement à l'adresse 0xA000:0
Je me souviens de deux démos qui faisaient 254 et 255 octets de binaire (.com), le tout était en pur assembleur, utilisant les fonctions du processeur arithmétique, et pour gagner un octet le gars avait commenté les instructions de retour au mode texte :).
Allez, une petite pensée pour les Assembly, Triton (merci pour FastTrackerII).
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par _alex () le 19/04/2004 à 18:20. (lien). Évalué à 2.Fut un temps, avec un pote on avait fait un concours du plus petit tetris en assembleur fonctionnait sous DOS -> 283 octets dans un .com .
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Eric Boulat () le 19/04/2004 à 20:15. (lien). Évalué à 1.Celui là au moins il doit passer sous dosbox !
-
[^]Re: C'est reparti pour la "4k source compo" !
-
-
Re: C'est reparti pour la "4k source compo" !
Perso, au temps de mon vieux 486, il y avait une demo 4k qui s'appelait "MARS", reproduisant un paysage en relief dans lequel on pouvait meme se balader avec la souris. Halucinant !
Cette facon d'essayer de gagner le moindre octet de code pour un resultat de plus en plus beau m'a toujours épaté.
A quand une competition kernel 4K ? ;-)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par jcs (page perso, ) le 19/04/2004 à 15:56. (lien). Évalué à 1.A quand une competition kernel 4K ? ;-)
Ou encore un demo dans les 512 octets du MBR ? :o)-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Adrien Bourdet () le 19/04/2004 à 17:01. (lien). Évalué à 1.Regarde mon post précédent : 256 octets :)
Personnelement, je n'ai écrit que sur les MBR d'une disquette, où la première instruction commence à une adresse bizarre, au lieu du 0x100 pour les fichiers .com de DOS (oui, ça date un peu)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par pasBill pasGates () le 19/04/2004 à 18:33. (lien). Évalué à 1.Sur Amiga il y avait bcp de demos qui tenaient dans le bootblock : 1 Ko, et ils faisaient des trucs vraiment impressionants avec ca.
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Silence (page perso, ) le 21/04/2004 à 07:38. (lien). Évalué à 1.Genre clignoter les leds du voyant d'alim et de du lecteur de D7... jamais compris comment ils fesaient... :^)
--
^d^c
-
-
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Guillaume POIRIER (page perso, ) le 19/04/2004 à 16:02. (lien). Évalué à 2.Perso, au temps de mon vieux 486, il y avait une demo 4k qui s'appelait "MARS", reproduisant un paysage en relief dans lequel on pouvait meme se balader avec la souris. Halucinant !
C'est pas celle-ci?
ftp://x2ftp.oulu.fi/pub/msdos/programming/misc/mars.lzh(...)
et le source:
http://www.programmersheaven.com/d/click.aspx?ID=F15222&AltURL=(...)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par _alex () le 19/04/2004 à 18:25. (lien). Évalué à 2.Je me rapelle aussi d'une démo de 4k qui commencait par une page blanche et un crayon qui dessinait une maison. Puis le crayon colloriait le tout. Puis le tout commeçait à s'animer en 3D... avec un peu de musique en fond...
Ca me rapelle aussi la kyrielles de gestionnaire de mémoire étendues sous DOS (mode flat, les Eclipse OS, les DOS4GW, etc...)
Il y avait aussi le magazine imphobia avec son lot de petites astuces pour optimiser ses algo.-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par daggett () le 19/04/2004 à 19:03. (lien). Évalué à 2.C'est probablement l'intro "paper" par psychic-links. Mais c'est une 64k, pas une 4k :) Sa page sur pouet.net avec un screenshot: http://www.pouet.net/prod.php?which=75(...) -- mais en ce moment le site est down... le screenshot direct: http://www.pouet.net/screenshots/75.jpg(...)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par klipz (page perso, ) le 24/04/2004 à 13:54. (lien). Évalué à 1.Yeees, "Paper" était vraiment trop terrible !!! C'est une de mes 64k préférée.
Pour les 4k, il y a avait aussi "Space" de Riot (si je me souviens bien), avec du son de fou (il générait ses samples, puis faisait mumuse avec) et des petites n'étoiles en 3D dans tous les sens... Je bavais à chaque fois que je la regardais, et je n'ai jamais compris comment le gars faisait tenir tout ça là-dedans !!!
-
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Eric Boulat () le 19/04/2004 à 20:18. (lien). Évalué à 1.Moi je me souviens d'une démo de 4 ko sous dos avec une musique et un paysage mélangeant terre et montagne en 3d et puis avec un recul de caméra, le paysage devient le globe terrestre tournant sur son axe. C'était trés impressionnant pour une si petite démo !
-
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Alexandre Beraud () le 23/04/2004 à 08:12. (lien). Évalué à 1.Oui cette demo martienne m'a toujours laisse perplexe. Y avait aussi une texture de ciel, et ca speedait a mort sur de vieux PCs. En fait je n'ai jamais completement cru aux 4k de cette demo. Je pense encore que j'etais victime d'un complot d'informaticiens mafieux qui avaient installe un rootkit sur tous les ordinateurs que j'utilisais pour que la taille apparente du fichier soit de 4k.
Re: C'est reparti pour la "4k source compo" !
Dans le genre qui arrache, il y a ça : http://www.theprodukkt.com/(...)
Nécessite Windows et DirectX9.0 (désolé :P).
Pour ceux qui peuvent pas le lancer, il y a des copies d'écran.
C'est un FPS et ça tient dans... 96kb :)
-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par BiBite () le 19/04/2004 à 19:07. (lien). Évalué à 1.Il me semble qu'à l'époque de l'Amiga et de l'Atari, le terme "4k" des démosportait non pas sur la taille du source,
mais sur celle du code binaire...
je me trompe ?-
[^]Re: C'est reparti pour la "4k source compo" !
Posté par Axioplase Ashi (page perso, ) le 19/04/2004 à 21:02. (lien). Évalué à 1.nonon, tu as raison :)
-
La news précédente
Pour info, et pour éviter de faire les mêmes commentaires :) la news de la compo de 2003: http://linuxfr.org/2003/02/07/11291.html(...)
Re: C'est reparti pour la "4k source compo" !
Sinon, dans les incontournables, y'a tube http://www.pouet.net/prod.php?which=3397(...) qui est un executable de 256 octets
chapeau
[+] Re: C'est reparti pour la "4k source compo" !
Ils appellent ça du "C" ? Ils abusent tellement des #define de façon tordue que le code est complètement illisible!



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.