|
||||||||||||||||||||||||||||||||||||||||||||
|
Livres assembleur, SoundTracker Attaquons courageusement par une lettre "kolossale", qu'il m'a fallu pour raison d'encombrement, amputer copieusement. 1. Possédant un Amiga 500 (et lisant Commodore Revue) depuis quelques mois, j'ai décidé dernièrement, à la faveur d'une amélioration de ma situation financière, de me mettre à la programmation en assembleur et en langage compilé sur Amiga. Je me suis donc procuré Draco, langage du domaine public dont le coût est infiniment moins cher que le prix scandaleux d'un langage C du commerce, et je vais bientôt le compléter par un assembleur (probablement Devpac 2), et je me trouve actuellement confronté au problème du choix des livres... Je vous demanderai donc de bien vouloir me conseiller, notamment sur un livre pour apprendre l'assembleur, sachant que j'ai un peu pratiqué l'assembleur Z80, et que j'ai donc besoin d'un ouvrage très complet, plus que d'un ouvrage d'initiation. 2. De plus, je voudrai des précisions sur les Amiga ROM Kernel Manual, c'est-à-dire les différents tomes, ce dont ils parlent et leurs prix approximatifs : habitant en province, je ne pourrai les consulter qu'en me rendant à Paris, et n'ayant ni l'occasion, ni le temps, je ne peux m'en rendre compte par moi-même. En fait, je m'étais même (sic !) rabattu sur la Bible de l'Amiga, ne pensant jamais arriver à les trouver, avant d'avoir lu dans votre numéro de juillet-août 1990 qu'ils sont disponibles chez MAD. 3. Étant aussi intéressé par la numérisation de sons et la musique sur Amiga, je vous demanderai si vous connaissez un moyen de se procurer la dernière version de SoundTracker (c'est-à-dire au moins la 2.4, puisque vous l'avez décrite dans un article ; je n'en possède malheureusement qu'une vieille version incomplète) [...] À propos de musique, ce serait sympa de me dire comment déconnecter, par exemple en assembleur, le filtre passe-bas, dans la mesure où les auteurs de la Bible de l'Amiga ne semblent pas savoir que c'est possible, ni d'ailleurs qu'il est lié à la diode d'alimentation... 4. Savez-vous où je pourrai me procurer ARexx et les commandes ARP (je suppose que ça doit se trouver sur les disquettes du domaine public, encore faut-il savoir lesquelles !) [...] Je dois vous féliciter pour vos tests, très complets et surtout pour les articles de l'ANT sur les applications du Blitter, qui ont le mérite de combler un grave manque : la plupart des livres techniques du commerce ne traitent que de l'utilisation théorique du matériel ou des langages, et il est donc très pratique de trouver dans votre revue des exemples (bien que je n'ai pas encore d'assembleur sur Amiga, je connais l'importance des exemples et je garde toutes vos revues en prévision...). 5. Excusez-moi si je ne retourne pas votre sondage, mais je ne sais pas si j'aurai le temps de le photocopier, et je ne veux pas mutiler mon journal... [Laurent Dudouet]. Réponse Je vais d'abord répondre à une question qui n'est finalement pas posée, mais je pense que certaines précisions peuvent être utiles. Il s'agit des langages compilés. On peut certes considérer comme élevé le prix d'un compilateur C du commerce car sortir 2500 FF (pour un Lattice C 5.04 [the best]) n'est pas à la portée de toutes les bourses. Mais si l'on considère que le Lattice C 5.04 comprend un excellent éditeur de texte multifenêtre qui permet la compilation depuis l'éditeur, que le compilateur ne comporte pas de bogues (en tout cas je n'en ai pas vu) et est capable de produire un code objet très optimisé, que l'on dispose d'un débogueur avec des options remarquables, enfin que l'environnement de développement comporte une multitude de programmes utilitaires, dont un macro-assembleur, une version revue et corrigée de Blink et qu'une documentation très complète (deux classeurs) est fournie et enfin qu'un suivi client sérieux est assuré par Lattice, il devient possible de dire qu'à ce prix-là c'est donné. En ce qui concerne Draco (Fred Fish #76, #77, #201), il faut rendre hommage à son développeur qui a conçu un excellent langage et un très bon compilateur. Celui-ci dispose d'ailleurs d'une bibliothèque mathématique très intéressante qui permet de faire des calculs sur les nombres complexes. Mais considérez quand même que le langage des systèmes multitâches est le langage C (le système d'exploitation d'Unix est écrit en C, c'est quand même une référence). Considérez également que Draco a d'abord été conçu pour des ordinateurs utilisant le système d'exploitation CP/M et qu'il n'a été que beaucoup plus tard adapté sur Amiga. Considérez enfin que Draco n'obéit à aucun standard contrairement au C. Ceci dit, il existe des compilateurs C dans le domaine public. Je n'ai aucune idée de leur valeur car je ne les ai pas essayés. Renseignez-vous auprès de Hermes Diffusion, 123, rue Desandrouins, 3 cour Lannoy 59220 Denain. Si vous achetez un assembleur, n'hésitez pas : choisissez Devpac 2. C'est incontestablement le meilleur macro-assembleur existant à ce jour. Pour débuter en assembleur, je vous conseille deux livres : Le Livre Du Langage Machine de Micro-Application. Ce livre a le gros avantage de présenter de petits programmes dans l'environnement Amiga. Pour un livre complet sur le 68000, je vous recommande Mise En Oeuvre du 68000 aux éditions Sybex. Pour les Amiga ROM Kernel Manual, il existe trois volumes :
À propos de SoundTracker : la seule version commercialisée est la première (développée par les Allemands Karsten et Obarski). Toutes les autres sont des contrefaçons exceptées bien sûr Oktalyzer (le "SoundTracker 8 voix") qui n'est pour l'instant commercialisé qu'en Allemagne. On ne peut se procurer SoundTracker 2.4 que "sous le manteau". Toutes les versions entre l'original et la version 2.4 sont boguées : elles plantent lamentablement sur un clavier français. Par contre, la version 2.4 plante à l'utilisation de la Preset List. Il existe une version nommée "Noise SoundTracker", ultérieure à la version 2.4 qui ne plante pas sur la Preset List. A se procurer sous le manteau également. Soyons sympa. En fait, le filtre passe bas n'est pas relié à la diode d'alimentation. De par le brochage du CIA A, c'est le bit 1 dudit CIA A qui bascule à la fois l'état de la diode d'alimentation et l'état du filtre passe bas. Cela peut être réalisé en assembleur de la façon suivante :
ARexx est la version Amiga du langage Rexx. Vous pouvez vous procurer l'original également chez MAD pour le prix de 379 FF. Ce prix est ridicule si l'on considère le potentiel d'ARexx. Il existe effectivement un langage Rexx pour Amiga dans le domaine public. De même les commandes ARP et la arp.library sont du domaine public. Renseignez-vous à l'adresse donnée plus haut. Amiga 2000 et carte PC Je vous écris pour voir si votre réputation est à la hauteur de mes pensées. Voici donc les quelques problèmes dont je suis la victime. 1. Tout d'abord, il faut vous dire que je possède un Amiga 2000B muni d'une carte AT286 (un peu lente). Il se trouve que j'ai un mal fou à trouver un lecteur 5"1/4 pour AT (formatage 1,2 Mo). Pour les programmes qui tournent sur PC, un lecteur c'est un peu court, n'est-ce pas ? (NDLR : certes mais finalement que voulez-vous savoir ?) 2. D'autre part, j'aimerais savoir si vous pourriez m'indiquer un modèle de disque dur pour y mettre mes fichiers PC ainsi que ceux d'Amiga ; ou au minimum ceux de PC ? 3. Une dernière chose : il me semble que vous avez fait une petite erreur dans le n°90 de Commodore Revue, dans la rubrique périphériques (pages bleues), entre les extensions mémoire A2058-2 et A2058-8 (NDLR : ????) [Martial]. Réponse Un disque dur n'est finalement ni plus ni moins qu'une grosse disquette à accès rapide. On y met ce que l'on veut à condition de le formater et de le partitionner convenablement. Un disque dur est toujours vendu avec des utilitaires destinés à cet effet. Ce que vous souhaiter est faisable avec n'importe quel disque dur. Je ne pense pas que nous ayons fait une erreur car tout bien considéré, le n°90 n'est pas encore près de paraître... Fenêtre RAW, liste Copper Ça ne fait pas longtemps que je vous lis car ça ne fait pas longtemps que je vous connais. Néanmoins, je trouve votre revue super, notamment l'ANT. Comme j'ai raté une bonne partie de l'initiation à l'assembleur, je me permets de poser quelques questions. Qu'est-ce qu'une fenêtre RAW ? J'ai essayé d'en appeler une par NEWSHELL RAW:0/0/640/200, mais je n'arrive pas à entrer de données. Ensuite, qu'est-ce qu'une liste Copper ? Je voudrais également savoir s'il est possible d'ouvrir un écran de la même manière qu'une fenêtre avec la fonction Open de la dos.library, et si oui, comment préciser la résolution et la profondeur ? Dans un autre domaine, j'ai reçu récemment un petit-fils de SoundTracker qui permet de faire de la musique 8 voix. Comment est-ce possible puisque l'Amiga n'en a que quatre ? [Frédéric Delacroix]. Réponse "CON:" est un périphérique logique permettant de gérer les entrées/sorties utilisées par les fenêtre CLI. "NEWCON:" est un périphérique logique plus performant utilisé par les fenêtres Shell. "RAW:", quant à lui, est un périphérique logique rudimentaire ("raw" veut dire "cru" en anglais) qui offre au programmeur la possibilité de gérer les entrées/sorties comme bon lui semble avec un programme de son cru (si j'ose dire). Ouvrir "de l'extérieur" une fenêtre RAW: comme vous l'avez fait n'a aucun intérêt : puisque les I/O ne sont pas gérées, vous ne pouvez même y écrire EndCli pour la fermer... Le Copper est un processeur graphique qui fonctionne indépendamment du 68000. La liste d'instructions qu'il exécute s'appelle la liste Copper. Cette exécution est synchronisée avec le balayage écran. Ouvrir un écran avec la dos.library n'est pas possible. C'est du ressort d'intuition.library, à moins que vous ne vouliez construire votre écran vous-même entièrement auquel cas il faut utiliser la graphics.library. Vous parlez sans doute d'Oktalyzer ? Ce logiciel n'est commercialisé pour l'instant qu'en Allemagne. Il n'y a effectivement que 4 voix sur l'Amiga. Mais il est possible en additionnant deux à deux les courbes sonores avant de les jouer d'obtenir "l'effet 8 voix" d'Oktalyzer.
|