Programmation sur Super Nintendo

Apprendre a programmer sur la SNES

a marqué ce sujet comme résolu.

Tout le monde se secoue ! :D

J'ai commencé (lundi 15 août 2016 à 18h21) la rédaction d'un tutoriel au doux nom de « Programmation sur Super Nintendo » et j'ai dans l'objectif de proposer en validation un texte aux petits oignons. Je fais donc appel à votre bonté sans limite pour dénicher le moindre pépin, que ce soit à propos du fond ou de la forme. Vous pourrez consulter la bêta à votre guise à l'adresse suivante :

Je précise que ce Tutoriel existe sur http://www.developpez.net mais que j'ai modifier a ma convenance.
J'ai aussi enlever les erreurs que j'avais écrite , j'espere que je pourrais au long terme rajouter les autres parties :
-Programmation Sonore
-Le Mode 7
-La gestions des différents plan et la transparence
-le HDMA

Merci !

+1 -1

Avant toute chose, un petit détail technique : ton tutoriel étant dans la catégorie « Programmation et algorithmique », les tags « informatique » et « programmation » sont inutiles.

Ceci étant dit, passons au contenu lui-même. Je ne vais pas y aller par quatre chemins, il est mauvais. J’ai un solide bagage en assembleur, et malgré cela, je trouve ton « cours » absolument imbitable. Arrivé au bout, je n’ai toujours aucune idée de comment programmer quoi que ce soit par mes propres moyens.

En particulier, une lacune cruelle de ta prose est que tu attends le dernier chapitre pour parler des outils nécessaires pour programmer. Et en fait, tu n’abordes même pas la question de comment exécuter ton code une fois qu’il est compilé.

En bref, j’aurais plus vite fait de chercher moi-même de la documentation sur la SNES que de démêler le merdier qu’est ton texte. Ceci étant dit sans méchanceté, bien entendu, je préfère juste être parfaitement honnête. :)

+2 -0

Ok merci c'est mon premier tutoriel ici donc je vais enlever mes tags inutile.

En particulier, une lacune cruelle de ta prose est que tu attends le dernier chapitre pour parler des outils nécessaires pour programmer. Et en fait, tu n’abordes même pas la question de comment exécuter ton code une fois qu’il est compilé.

Je suis peut être trop dedans mais avec un émulateur peut être ? ^^'

Ben a vrai dire je n'ai aucune idée de comment faire autrement , sans mettre la partie théorie en premier.
Ou alors je met un code et je dis attention il faut que tu sache ceci.

Après ce n'est pas une connaissance de l'assembleur qui est suffisant mais de savoir comment fonctionne la plupart des machines , c'est peut être moi mais je peux faire du code sur des machines qui ne possède aucune documentation (oui ça m'est arrivé je connaissais juste sa memory map) , juste parce que cette machine marche comme toute les autres ^^'.
La SNES ne marche guère différemment c'est de l'embarqué pur , juste a connaître ou est le code donc je n'ai qu'a expliqué les différents I/O de base.

En bref, j’aurais plus vite fait de chercher moi-même de la documentation sur la SNES que de démêler le merdier qu’est ton texte.

ça me rassure alors , donc je n'ai pas besoin d'en faire un tutoriel ;)

+0 -0

Sans être aussi brut que Dominus ci-dessus, c'est sur que de prime abord, on est perdu. Le sujet à l'air méga intéressant mais …

Tu balance des tableaux sans qu'on sache ce que c'est ni à quoi ils correspondent. Quand tu dis « Après ce n'est pas une connaissance de l'assembleur qui est suffisant mais de savoir comment fonctionne la plupart des machines » … Et bien part du principe que c'est pas courant de savoir comment fonctionne la plupart des machines à moins de bosser dans l’embarqué, comme tu le dis si bien, ce qui n'est pas un profil si courant parmi les lecteurs de ce site.

La plupart des cours de programation commencent effectivement par te balancer un code tout simple et brut en te disant « je met un code et je dis attention il faut que tu sache ceci. ». Ensuite, on construit des codes plus complexes, genre "réaliser une opération mathématique", "afficher un pixel à l'écran", "tracer des figures géométriques", "utiliser un sprite", et ainsi de suite, à chaque fois avec un exemple, etc. C'est un peu chiant comme approche, mais ça fonctionne. Si tu n'aime pas ça, fait le sous la forme d'une introduction générale à "comment fonctionne une machine", du coup, parce que c'est pas si évident que ça.

Il est évident que commencer par présenter les outils qui permettent au lecteur de tester lesdit codes me semble essentiels, sinon, c'est juste de la documentation technique qui s'adresse aux personnes sachant déjà de quoi il ressort (ce qui est très bien, mais après avoir présenté les bases qu'on sache de quoi on parle). Je me répète, mais pour quelqu'un qui est pas dans le domaine, on ne sais pas quoi faire.

c'est peut être moi mais je peux faire du code sur des machines qui ne possède aucune documentation (oui ça m'est arrivé je connaissais juste sa memory map)

Grand bien t'en fasse … Mais si on t'explique pas une fois un jour comment marche une machine, difficile de savoir comment fonctionne une autre (je me doute bien qu'il s'agit de mettre des machins dans des registres, mais ça n'explique pas tout). Le cours de Dominus est à la fois un très bon et un très mauvais exemple1, puisque le processeur de la NES est très probablement plus simple que l'intel, et que donc beaucoup de "difficultés" des processeurs Intels ne doivent pas exister avec la NES, et je vois donc mal mettre ce cours en prérequis (surtout que les processeurs intels n'ont pas directement la gestion de l'écran ou du son, par exemple :p )

TL;DR: prend nous (un peu) pour des cons, et ça passera beaucoup mieux ;)


  1. ceci n'est pas une attaque, j'ai bien aimé ledit cours :) 

+2 -0

Ok je vois , je pourrais faire une sorte introduction de comment marche la machine et le pourquoi du comment j'ai organisé les choses comme ceci ;)

Je peux présenter il est vrai quelque émulateur.

Pour te répondre oui le processeur de la NES est très simple , on peut le connaître de bout en bout en une semaine (il n'y a pas des masses d'instructions).

La plupart des cours de programation commencent effectivement par te balancer un code tout simple et brut en te disant « je met un code et je dis attention il faut que tu sache ceci. ». Ensuite, on construit des codes plus complexes, genre "réaliser une opération mathématique", "afficher un pixel à l'écran", "tracer des figures géométriques", "utiliser un sprite", et ainsi de suite, à chaque fois avec un exemple, etc. C'est un peu chiant comme approche, mais ça fonctionne.

Je l'aurais fait , mais a vrai dire afficher un pixel a l'écran sur SNES est tout sauf trivial , rien que l'initialisation de la SNES prend pas mal de ligne (et la t'as encore rien afficher :D ).

Donc je vais essayez de faire une introduction qui explique chaque partie , pourquoi on la lis et a quoi elle doit mener.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte