CODINGAMSTAR ★ VIDÉO: Scrolling écran avec apports de nouveaux éléments graphiques ★

Initiation à L'Assembleur Amstar&CPC 29: Vidéo - Scrolling écran avec apports de nouveaux Elements Graphiques|Amstar&CPC)Coding Amstar

Après avoir disséqué la RAM vidéo, nous avions vu une première application utile dans bien des programmes pour des effets d'animation, irréalisables en Basic, les scrollings en tout sens de parties d'écran.

Cet effet était obtenu en déplaçant le contenu des cases mémoires aul gèrent directement l'affichage, la portion d'image qui disparaissait de la zone de scrolling d'un côté, réapparaissait à l'opposé. En faisant ainsi se déplacer une ou plusieurs parties d'écran (arbres, maisons, montagnes, spectateurs) réalisées avec un logiciel graphique, on obtenait des effets honorables qui, bien pensés, permettaient d'échapper à la tristesse graphique du Basic. Ce langage est en effet trop lent pour de telles utilisations. Mais toute chose ayant une fin, après avoir considéré nos arbres défilant imperturbablement, notre bel enthousiasme a fait place à une angoisse I Quand est-ce que l'on sort de la forêt ? Jamais content I Aussi pour ne pas finir par ressembler aux vaches qui regardent avec un certain fatalisme passer les trains, nous allons voir ensemble comment changer de paysage.

C'est, je crois, la première fois qu'un programme permettant cet effet vous est présenté. Il n'est pas trop long à saisir 5 Ko de Basic et deux routines de 441 octets au total, les réfractaires du clavier pourront toujours se procurer la disquette des programmes auprès de CPC.

La longueur au propos qui accompagne ces programmes est justifiée pour plusieurs raisons : Il nous faut voir, pour chaque étape, la procédure qui nécessite un travail précis pour un résultat final impeccable. La deuxième raison est que pour constituer le point de départ d'une réflexion enrichissante. on doit comprendre. du moins dans les grandes lignes, comment tout cela fonctionne. Un listing assembleur, même largement commenté n'est pas fort «parlant» pour le connaisseur, il l'est donc encore moins pour celui qui fait ses premiers pas dans ce langage.

QUELLES SOLUTIONS ?

• Les solutions sont comme toujours multiples, Elles sont liées au sens du scrolling voulu : haut-bas ? droite-gauche ? à la finesse du déplacement : exemple, dans un scrolling droite-gauche, on peut déplacer en une seule fols l'ensemble de points gérés par une case mémoire de la RAM vidéo ou ne se déplacer que de la valeur d'un de ces points. Toujours aussi le dilemme beauté du résultat ou vitesse d'exécution ultra rapide. On pourrait énumérer comme cela beaucoup de détails qui nous empêchent de proposer une solution standard. La première chose à faire est donc de définir ce que l'on voudrait faire avec notre programme. J'ai donc établi un protocole moyen : ni des routines prenant en compte tous les cas (trop importantes et surtout trop lentes), ni des routines qui ne prendraient en compte qu'un cas de figure et qui. figées dans leurs utilisations, n'amèneraient pas grand-chose à vos programmes. Ces routines appelables sous Basic sous forme de RSX admettront donc des valeurs variables, Il est évident que l'utilisateur, possédant un assembleur et n'ayant besoin que d'un cas de figure, inscrira directement dans le programme les valeurs désirées, afin d'éviter le passage de paramètres Basic à routine assembleur qui prend du temps. Toujours dans la même optique de gain de temps, le programme ne vérifie plus comme celui sur les scrollings la validité des paramètres transmis. Veillez donc, plus que jamais, à sauvegarder votre programme avant de tenter une exécution !

PROTOCOLE

• La seule chose que l'on puisse dire de manière certaine est que puisque lors des scrolllngs. une partie d'image va disparaître et une autre différente va apparaître à l'opposé, le contraire pouvant être demandé aussitôt, il va falloir disposer de toutes nos Images quelque part, La vitesse d'exécution étant essentielle, pas question d'un accès sur un support externe (disque ou à plus forte raison cassette), nos dessins doivent donc être conservés en mémoire vive, dans une partie protégée, sous forme de données numériques. Le premier travail sera donc de réaliser un petit utilitaire capable de coder nos dessins exécutés avec des logiciels graphiques. La façon dont ces valeurs numériques, représentant nos graphismes, seront agencées, dépendra du programme qui va s'en servir, ceci pour des raisons de rapidité et de facilité de traitement. Ce travail sera fait une fois pour toutes lors du codage des dessins destiné à les transformer en un fichier de type binaire Nous aurons l'occasion de revoir cela en détail.

Autres choix : la routine, aue nous emploierons ensuite, nous permettra desscrollings droite-gauche, par déplacement horizontal de la valeur
d'une case mémoire (pour rappel, la largeur d'un caractère en mode 2) ; chacun de ces déplacements faisant apparaître, bien sûr. de nouveaux graphismes. Pour permettre bien d'autres effets (voir programme 4 de démo), on pourra transmettre quatre paramètres qui Indiqueront à quel endroit sur l'écran apparaîtra la «fenêtre» d'affichage du dessin ainsi que sa largeur et hauteur. Nous pourrons ainsi, par exemple dans le cas d'un paysage, le faire apparaître et disparaître à l'horizon, le faire scroller style «montage russe» et pourquoi pas en sélectionnant une petite fenêtre d'affichage, montrer nos paysages semblant défiler par la fenêtre d'un wagon. Croyez-moi. bien employée, cette routine donnera un fameux cachet à vos propres réalisations.

POINTS ESSENTIELS

• Ce qui va suivre doit être parfaitement assimilé pour obtenir le résultat voulu. Ceux qui connaissent bien la structure de la RAM vidéo ou qui ont lu l'article sur les scrollings ne devraient rencontrer aucune difficulté. Par procédure, quand nous parlerons d'un «segment» de large, il s'agira d'un des 80 segments horizontaux qui composent une ligne horizontale à l'écran, chacun de ces segments étant géré par une case mémoire de la RAM vidéo. Quand nous parlerons d'une «ligne écran», il s'agira d'une des 200 lignes écran verticales. Les dessins préparés seront toujours appelés «bandeaux» et la zone de l'écran où Ils apparaîtront plus tard «fenêtre». Les coordonnées que nous appelons «x» et «y» qui permettent de préciser le coin supérieur gauche de la «fenêtre» sont prises en compte à partir du coin supérieur gauche de l'écran. Le petit schéma qui suit est assez clair ; «I» sera la largeur de la fenêtre et «h» sa hauteur. Il n'est pas inutile de rappeler que les échelles de valeurs ne sont pas 640-400 comme en Basic mais reflètent la réalité physique des cases mémoires de la RAM vidéo soit 1 à 80 cases en horizontal et 1 à 200 en vertical.

METHODE CHOISIE

• Il en existe plusieurs. Supposons un exemple simple : nous avons à l'écran un décor représentant des arLa solution que j'ai retenue, me semble avoir l'avantage d'une relative clarté. Les bandeaux, constituant tous les motifs du décor, vont être assemblés suivant un certain ordre (à voir) et un pointeur sera géré pour pointer sur tel ou tel endroit de cette "«banque» de décor ; suivant la demande Il avancera ou reculera pour trouver les données du dessin voulu ; un affichage COMPLET de tout le décor sera effectué, effaçant l'ancien. Cette façon de procéder évite aussi le désagrément souligné lors de l'article sur les scrollings par permutation du contenu des cases mémoires. Si on déplace par exemple une zone où l'on affiche et efface du texte ou bien si on gère le déplacement d'un sprite sur ce fond, on arrive au résultat suivant : notre programme situe toujours ces éléments à des coordonnées où Ils ne sont plus. Très ennuyeux ! Dans notre cas, il suffira après chaque scrol-ling de réinscrire tous ces éléments à leurs coordonnées.

Revenons à notre pointeur ; il est au début d'un dessin, il est facile alors de lui dire de prendre le nombre de données que nous désirons en largeur, puis après un certain pas de déplacement, le même nombre de valeurs et ainsi de suite. Facile alors de varier la dimension de la fenêtre d'affichage à l'écran.

UTILITAIRE DE CODAGE DES DESSINS CONSTITUANT LA BANQUE DE DECOR
ATTENTION !

a) Le logiciel graphique avec lequel vous allez concevoir vos graphismes doit obligatoirement vous permettre de positionner vos dessins contre le bord gauche.

b) Il doit permettre de générer une sauvegarde d'écran classique (17 Ko au catalogue) rechargeable par un simple LOAD «XXXX.XXX»,49152. Pas de dessin compilé donc ! Lorigraph, Strad Graph, OCP Studio conviennent parfaitement.

Vous pouvez composer autant de dessins que vous le voulez sous forme de bandeaux : seul Impératif, tous les bandeaux doivent avoir la même largeur (segments) et la même hauteur (lignes). La largeur doit faire un nombre de segments pleins ; l'idéal pour ne pas se tromper étant d'employer toute la largeur de l'écran (80 segments). TRUC : dans les trois logiciels précités, il suffit de passer en mode loupe : dans les modes 0, 1 et 2. un point tracé vaut toujours 1 ligne en vertical, en horizontal Consultez ce petit mémo :

Mode 2:8 points côte à côte forment un segment
Mode 1:4 points côte à côte forment un segment
Mode 0:2 points côte à côte forrment un segment

De toute façon, les erreurs à ce niveau ne seraient pas bien graves, elles se traduiraient soit par la perte d'un élément du décor, soit par la prise en compte, lors de l'opération de codage, d'une partie non dessinée Un peu de Jugeotte vous permettra vite de retrouver votre erreur.


Résultat approximatif au final:

Le plus simple est de prendre un modèle. Vous pourrez ainsi le réaliser en suivant les opérations pas à pas.
A l'aide d'un logiciel graphique, réalisez dans n'importe quel mode trois dessins de décors différents (arbres, maisons et barrières). Faites-les sur toute la largeur (80 segments) et sur 40 lignes écran de hauteur. Tracez une ligne horizontale de part et d'autre de ces 3 bandeaux pour bien les délimiter et faciliter ainsi ensuite l'opération de codage. Vous devriez avoir à peu près le résultat du schéma.

Sauvegardez-le sur disque ou cassette en le nommant IMAGE pour cette fois-cl seulement bien sûr.
Tapez maintenant le premier programme, sauvegardez-le en le nommant PROG1 puis lancez-le par RUN. Si tout va bien, il va se créer un fichier CODDEC.BIN sur le disque. Le programme va permettre au 2ème de coder plus rapidement les bandeaux.
Tapez maintenant le programme 2, sauvegardez toujours par précaution sous CODAGE par exemple, puis lancez-le. Si tout est OK, le programme vous demande :

a) Dans quel mode devra s'afficher l'écran portant les bandeaux : à vous de répondre.
b) Le nombre de bandeaux différents. dans notre exemple 3
c) La largeur = ici 80
d) Leur hauteur = 40
e) Nom de l'écran à charger (avec extension) = IMAGE puis le label dans votre cas.

Passé ce cap. le programme va nous redonner tous les paramètres II Indiquera aussi le total d'octets que représenteront nos dessins en mémoire vive, l'adresse conseillée pour charger plus tara en mémoire le fichier des dessins codés et le memory qui est cette adresse -1. Memory est destiné à empêcher l'écrasement des valeurs de nos dessins en préservant toute la zone d'adresses supérieure à sa valeur. Je signale que I ' adresse conseillée place les dessins immédiatement sous la routine ; cas idéal pour les programmes en Basic. Ce n'est pas une adresse obligée ; on peut charger ce fichier dans une adresse plus basse, une RSX nous permettra de le signaler à la routine principale. SI tout est OK, relevez sur une feuille toutes ces valeurs. Les plus avertis auront remarqué que nous avons 12800 octets (80x40x4) alors que nous aurions dû en avoir 9600 (80x40x3). L'explication est que le 1er bandeau sera codé deux fois Nous verrons plus tard. pour ceux que ça intéresse, dans quel but cela a été fait.


Vue agrandie pour placement du curseur de codage

SI tout marche bien, nous avons memory 29199 adresse de chargement conseillée = 29200. nombre de bandeaux différents 3, largeur 80 et hauteur 40. Occupation = 12800 octets.

En cas de problème, appuyez sur R et recommencez tout le processus ; autrement S pour suite. Introduisez la disquette portant le dessin, un catalogue sera édité pour vous permettre de vérifier. Votre dessin apparaît à l'écran. Les couleurs ne sont pas évi-
demment celles que vous avez choi-slesà la création,aucune Importance. Les valeurs qui sont relevées au codage Indiquent les stylos qui gèrent les points lumineux par la couleur. En affectant, dans votre programme, les bonnes couleurs aux stylos, tout redeviendra normal.
Maintenant, à l'aide des flèches haut et bas, amenez le petit trait clignotant (coin gauche haut de l'écran) au début du 1er bandeau juste sous le filet de repérage.

Appuyez sur la barre d'espace, un son et un clignotement du border Indiqueront que le 1er bandeau a été codé. Il l'a été deux fois mais AUTOMATIQUEMENT. n'appuyez donc pas une deuxième fois sur la barre d'espace.

Passez au deuxième puis au troisième bandeau en vous plaçant toujours juste sous le filet de repérage avant de presser la barre d'espace.
Une fols le nombre de bandeaux donné au début (3) atteint, le programme passe automatiquement à la suite. Si nous avions eu six bandeaux à coder et que la suite eût été sur une autre page-écran, un appui sur la lettre A (autre dessin) nous aurait permis d'aller la chercher.
Dans notre cas, c'est terminé, le programme aemande sous quel nom on désire la sauvegarde du dessin codé. Veillez à la présence d'une dis-
quette, entrez le nom (nommer le DESSIN 1 , on s'y retrouvera mieux par la suite).

Pour éviter d'avoir des programmes fleuves à saisir et assurer le fonctionnement sur tous les types de machines, le programme ne possède que des sécurités minimum : empêchement de coder trop de bandeaux, affichage des catalogues avant load ou save. Un message vous rappelle d'insérer une disquette et vous pouvez en changer en cas d'erreur. Pour les éternels étourdis, en cas a erreur Interrompant de manière définitive le programme, refaites RUN, ce qui a été fait précédemment ne sera plus pris en compte et recommencez la procédure.

Voilà décrit notre utilitaire de codage ! A ce stade, nous possédons un fichier DESSIN 1 .BIN qui contient les données numériques représentant nos bandeaux.

DESSOUS DE TABLE

• Ces explications sont pour ceux qui voudraient savoir comment la routine principale procède et comment ont été codés les dessins. Ceux qui ne sont pas Intéressés, si. si, il y en a plus qu'on ne croit, peuvent passer directement au paragraphe suivant : syntaxe et fonctionnement des RSX. Ce paragraphe est surtout destiné à montrer une des manières de résoudre un problème donné et donc de vous permettre de réfléchir pour trouver d'autres solutions : plus rapide, moins gourmand en mémoire vive, pourrait-on compiler les dessins ?

Dans le cas présent, le dessin a été codé de cette manière : on relève le contenu des 80 cases mémoire constituant la 1 ère ligne horizontale du bandeau 1 et on les Inscrit en mémoire vive à partir de l'adresse 10000. Arrivé en 10079, on saute 240 adresses qui permettront de coder la 1ère ligne du deuxième bandeau, celle du troisième et encore une fols celle du premier ; on inscrit alors les valeurs de la 2ème ligne du bandeau, on repasse 240 adresses, troisième ligne du premier bandeau... et ainsi de suite pour les 40 lignes constituant la hauteur de notre bandeau.
Nous allons nous servir dans la routine principale d'un pointeur (POINTE) qui voyagera sur les 240 adresses contenant les premières lignes des trois bandeaux. Au départ, ce pointeur est positionné sur l'adresse où sera chargé le dessin. On va la supposer à 10000, vous pourrez ainsi suivre les mouvements du pointeur sur le graphisme qui vient d'être présenté pour le codage. Si nous demandons l'affichage d'une «fenêtre» de 40 de large, 40 valeurs seront lues à partir du pointeur (10000 à 10039) et seront transférées dans les cases mémoires de la RAM vidéo. Notre pointeur ne bouge pas lui. c'est un registre incrémenté qui est arrivé en fin d'opération prêt à lire l'adresse 10040 ; or, la suite du dessin (2ème ligne de notre deuxième bandeau) est en 10320 ! Il suffira d'ajouter à la valeur du registre : 320 moins la largeur d'affichage (NEWPAS dans le programme assembleur) pour retrouver la suite de nos données dans notre cas 10040 (320-40) = 10320.

Venons-en maintenant au pourquoi du codage supplémentaire du 1er bandeau. Sur le graphisme précédent, vous voyez inscrit LG et LD, ce sont des adresses situées sur la première ligne des codages des trois bandeaux : elles Indiquent la limite gauche et la limite droite que notre pointeur ne doit pas passer.


Au final, la représentation de notre codage donne ceci :

En commençant, par exemple, notre pointeur est à 10000. il peut avancer en 10001 et lire 80 valeurs (10001 à 10080). On réussirait ainsi à admettre un élément graphique de la 1ère ligne du deuxième bandeau ; pas de problème. Mais si nous avions voulu scroller dans l'autre sens, notre scrol-llng étant cyclique, il faudrait lire la dernière valeur du 3ème bandeau et les 79 premières valeurs du premier bandeau, mais notre pointeur passant de 10000 à 9999 ne trouve plus de valeurs du tout. Dans ce cas, franchissement de la limite gauche, notre pointeur sera ramené à l'adresse LD, regardez sur le graphique ; là, il pourra reprendre la dernière valeur du troisième bandeau et Immédiatement après les 79 autres du premier bandeau. Voilà l'utilité du codage supplémentaire du premier bandeau, Il nous épargne une gymnastique du pointeur qui trouve les valeurs voulues à la suite.

Dans l'autre cas, le pointeur monte et quand il arrive à la valeur de LD, ça commence à sentir le roussi, s'il continue. Il aura bientôt besoin d'admettre une valeur de la première ligne du deuxième bandeau ; alors on le ramène à LG où , continuant par exemple à monter. Il trouvera les valeurs voulues. Essayez de suivre le trafic sur le graphique. Comme dirait l'autre : tant qu'on n'a pas compris, on n'y comprend rien !
Il est possible de supprimer ce codage supplémentaire du 1er bandeau qui nous fait perdre des octets mais le test nécessaire pour savoir si l'on arrive au bout des données doit être effectué au cours du déplacement des octets à chaque nouvelle adresse pour savoir s'il faut aller chercher la
suite des valeurs ailleurs ; donc gain de place mais perte en rapidité d'exécution, Ce choix dépend uniquement des caractéristiques voulues de votre programme utilisateur.

SYNTAXE ET FONCTIONNEMENT DES RSX

• Tapez le programme 3, sauvegardez, puis lancez-le. Il va créer sur la disquette un fichier binaire : SCROL-DEC.BIN. Nous avons maintenant tous les éléments pour commencer. Détaillons la procédure. On doit commencer par placer memory et charger notre fichier DESSIN1 .BIN en mémoire vive. Les valeurs employées seront celles notées lors du codage ; elles positionnent le fichier DESSIN! juste sous la routine, c'est ce qu'il nous faut en Basic.

10 Memory 29199
20 Load"DESSIN1.BIN", 29200

maintenant, installons la routine principale

30 Load"SCROLDEC.BIN", 42000

et initialisons les RSX

40 CALL 42000

Nous disposons de 5 RSX ; voyons-les en détail, deux d'entre elles ont une très grande Importance : |RENS, X, X, X et |PARAM. X, X, X, X. |RENS doit être employé en premier. Il passe une fois pour toutes l'adresse où est chargé le dessin, le nombre de bandeaux et la largeur de ceux-ci :

50 |RENS, 29200 3,80

|PARAM, x, y, l, h est à employer maintenant et à d'autres moments quand on désirera changer les paramètres de la fenêtre d'affichage. On pourrait demander (voir schéma dans POINTS ESSENTIELS) :

60 |PARAM, 20, 80, 40, 40

Voilà, à partir de là, donnez bien sûr le mode dans lequel vous avez conçu vos graphismes et développez vos applications ; vous disposez pour cela de trois RSX très simples.

|DECOR Affiche le décor sans scrolllng latéral à la position usuelle du pointeur
|DECORD Admet un nouvel élément du décor à droite
|DECORG Effet inverse bien sûr Le programme 4 vous fera comprendre aisément tout cela.

Rien de vraiment difficile, mais il faut beaucoup de rigueur. Pour les premiers essais, suivez l'article pas à pas en exécutant vos bandeaux, sauvegardes et chargements aux valeurs indiquées. Réussissez d'abord cela, ensuite vous ferez ce que vous voudrez. Croyez-moi, le plus dur est bien de réussir de beaux graphismes. Le meilleur des programmes ou des logiciels graphiques ne changera jamais rien de ce point de vue.

TRUCS ET ASTUCES

• On suppose que vous êtes arrivé sans embûches au programme 4. Une fois celui-ci lancé, vous verrez quel-ques-unes des possibilités offertes. Dans la partie signalée en REM montée et descente. Il faut une astuce lors de la création du dessin, la première ligne de chaque bandeau doit être laissée à la couleur du fond. C' est elle qui permettra de ne pas voir une ligne de l'ancien décor lors de la descente.
Pour l'utilisation de ces effets, on ne peut en dire plus, tout dépendra de votre Imagination. Employez ces effets à bon escient. Inutile de faire monter et descendre en tous sens un pâté de maisons ou des arbres ; en revanche s'il s'agit d'un fond de ciel avec des oiseaux par exemple, la modification de paramètres de façon aléatoire permettra de simuler un vol.
A propos de ces paramètres choisis de façon aléatoire, comme dans les autres utilisations d'ailleurs, pensez bien à tout et sauvegardez toujours vos programmes avant d'en tenter l'exécution. Le programme ne peut pas prendre en compte toutes les étourderies style scrolllng dans une fenêtre d'affichage de 1 de largeur I Ou encore à partir de 60 (x) fenêtre de 40 (I) ou de 190 (y) fenêtre de 30 (h). Un petit truc utile. X +1 ne doit pas excéder 81 et y + h 201.

Dans le programme 4 vous remarquerez l'Importance du rapport grandeur de la fenêtre d'affichage et beauté du scrolling. Plus la zone est grande, plus on doit ralentir le scrolllng qui donnera autrement l'effet d'une Image «hachée», boucle de temporisation ou emploi d'un chronomètre permettront en Jouant sur leurs valeurs d'arriver à l'affichage correct. On ne peut pas avancer de valeurs puisque le dessin lul-même
Influe sur elles, une ligne oblique supportera mieux une cassure qu'une ligne verticale et un motif Jaune sur fond noir par exemple aura tendance à laisser une trace visuelle en persistant à l'affichage.

Vous pourrez même constater dans vos propres essais que suivant la position verticale de la fenêtre, les effets sont plus ou moins beaux. A vous de combiner tout cela.

Pour ceux qui ont parfaitement suivi le développement, l'utilisation multiple de IRENS est même possible, vous pouvez en changer la valeur qui indique l'adresse ou est chargé le dessin, forçant ainsi le pointeur à se rendre à une autre adresse en lui faisant croire que c'est le début du premier bandeau.

A travers tous ces propos, nous avons vu que la routine miracle, hélas pour les débutants, n'existait pas. Toutes les solutions pour arriver à une optimisation en temps et longueur de programme passent par l'assembleur ; une utilisation dans une procédure bien spécifique avec des paramètres uniques éviterait bien des calculs qui ralentissent l'exécution. De plus, on s'aperçoit dans notre utilisation combien les Impératifs de marche à suivre sont contraignants pour une mlnl routine de 306 octets. Il serait presque Impossible d'aborder, dans le cadre d ' un tel article, des solutions plus complexes ; tout au moins en essayant d'en faire comprendre le fonctionnement, ce qui est fondamental pour faire progresser le débutant.

Il reste encore à souligner le fait que l'on peut en préférant le scrol-ling haut bas disposer d'un déplacement plus fin puisqu'on peut facilement travailler au 1/200ème de la hauteur. Cette décision amène un codage des dessins différent. Essayez d'y réfléchir, ce sera un excellent exercice ; et pourquoi pas un scrolling en oblique; cela vous évitera l'achat d'un casse-tête chinois.
Bon travail !

AMSTAR&CPC n°29

★ ANNÉE: ???
★ AUTEUR: Guy Poli

Page précédente : Initiation à L'Assembleur Amstar&CPC 28: Vidéo - Sprites - Technique des Masques (Amstar&CPC)
★ AMSTRAD CPC ★ DOWNLOAD ★

Other platform tool:
» coding  ASTR29-scrolling  ecran  avec  apports  de  nouveaux  elements  graphiques    ASTRDATE: 2012-05-29
DL: 8 fois
TYPE: PDF
SIZE: 636Ko
NOTE: 4 pages/PDFlib v1.6

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » Initiation à L'Assembleur Amstar&CPC 37
» Coding » Initiation à L'Assembleur Amstar&CPC 39
» Coding » Initiation à L'Assembleur Amstar&CPC 38
» Coding » Initiation à L'Assembleur Amstar&CPC 28: Vidéo - Pour Quelques Effets Visuels de Plus (Amstar&CPC)
» Coding » Initiation à L'Assembleur Amstar&CPC 28: Vidéo - Sprites - Technique des Masques (Amstar&CPC)
» Coding » Basic Reduction du Code Basic (Amstar&CPC)

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.75-desktop/c
Page créée en 054 millisecondes et consultée 599 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.