Pl2 CORRIG 3.DOC/fr
Jump to navigation
Jump to search
------------------------- CORRECTIONS des EXERCICES sur les LineAs ------------------------- 1) Exercice nr°1: -------------- Voilà le listing du corrigé. Je pense que cet exercice ne vous a pas posé beaucoup de problèmes , regardez attentivement ce listing, il ne comporte aucune difficulté. TEXT INCLUDE "LINEQU.L" ;les EQUs INCLUDE "INIT_TOS.L" ;Setblock INCLUDE "MACROS.L" ;Les macros SETBLOCK ;Initialisation ;On recherche l'adresse du Tableau interne pour les LineAs DC.W $A000 ;retour dans a0 de l'adresse ;du tableau interne ;On dépose les adresses des tableaux du VDI dans le tableau interne move.l #CONTROL,ticontrol(a0) move.l #INTIN,tiintin(a0) move.l #PTSIN,tiptsin(a0) move.l #INTOUT,tiintout(a0) move.l #PTSOUT,tiptsout(a0) PRINTLINE SOURIS ;texte WAIT ;attente lea INTIN,a6 ;adresse de INTIN dans a6 move #0,6(a6) ;0 dans intin+6 (couleur du ;masque) move #1,8(a6) ;1 dans intin+8 (couleur du ;premier plan) lea DONNEES,a5 ;adresse de 'DONNEES' dans a5 move #31,d0 ;31 dans d0 adda.l #10,a6 ;incrémente a6 de 10 unités: ;a6 pointe donc sur intin+10 BOUCLE move (a5)+,(a6)+ ;on dépose les données dans ;le tableau INTIN pointé par ;a6 dbf d0,BOUCLE ;on boucle 32 fois pour les ;32 données (16 mots pour le ;masque et 16 mots pour le ;premier plan) DC.W $A00B ;TRANSFORM MOUSE move #0,intin ;compteur=0 DC.W $A009 ;SHOW MOUSE PRINTLINE MESSAGE ;texte WAIT ;attente TERM ;fin DATA SOURIS DC.B 27,'E','Je change la forme du curseur de la' DC.B ' souris ...',0 MESSAGE DC.B 27,'E','Bougez la SOURIS SVP ...',7,0 DONNEES DC.W %0000001110000000 ;les 16 données (MOTS) DC.W %0000011111000000 ;du MASQUE DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000111111100000 DC.W %0000011111000000 DC.W %0000001110000000 DC.W %0000011111000000 DC.W %0000111111100000 DC.W %0000011111000000 DC.W %0000001110000000 DC.W %0000000000000000 ;les 16 données (MOTS) DC.W %0000001110000000 ;du PREMIER PLAN DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000011111000000 DC.W %0000001110000000 DC.W %0000000000000000 DC.W %0000001110000000 DC.W %0000011111000000 DC.W %0000001110000000 DC.W %0000000000000000 BSS INCLUDE "TABLEAU.L" ;le tableau du VDI END 2) Exercice nr°2: -------------- Là encore, aucune difficulté majeure... Il fallait juste faire attention à bien utiliser des coordonnées graphiques qui correspondent à la résolution utilisée. (OX)=640 de 0 à 339 (OY)=200 de 0 à 199 (MOYENNE résolution) TEXT INCLUDE "LINEQU.L" ;les EQUs INCLUDE "INIT_TOS.L" ;Setblock INCLUDE "MACROS.L" ;Les macros SETBLOCK ;initialisation DC.W $A000 ;on demande l'adresse du T.I. et movea.l a0,a5 ;on la pose dans a5 car a0 risque ;d'ètre modifié par nos MACROS... ; On dépose les adresses des tableaux du VDI move.l #CONTROL,ticontrol(a0) move.l #INTIN,tiintin(a0) move.l #PTSIN,tiptsin(a0) move.l #INTOUT,tiintout(a0) move.l #PTSOUT,tiptsout(a0) PRINTLINE CADRE ;texte WAIT ;attente DC.W $A00A ;HIDE MOUSE CCONOUT #27 ;ESC CCONOUT #'E' ;+ 'E' = efface l'écran move #1,_fg_bp_1(a5) move #1,_fg_bp_2(a5) ;couleur=%11=3 move #0,_wrt_mode(a5) ;Write mode AND move #1,_patmsk(a5) ;1+1=2 données pour le PAT move.l #LIGNE,_patptr(a5) ;en 'LIGNE' se trouve ;le nouveau PAT move #%1111111111111111,_ln_mask(a5) ;ligne PLEINE move #0,d5 ;0 dans d5 move #22,d6 ;22 dans d6 BOUCLE move #0,_x1(a5) ;_x1=0 move d5,_y1(a5) ;_y1=d5 move #630,_x2(a5) ;_x2=630 move d5,_y1(a5) ;_y2=d5 add #9,d5 ;on ajoute 9 à d5 DC.W $A004 ;et on trace la H-LINE dbf d6,BOUCLE ;on recommence 23 fois move #0,d5 ;0 dans d5 move #42,d6 ;42 dans d6 LOOP move d5,_x1(a5) ;_x1=d5 move #0,_y1(a5) ;_y1=0 move d5,_x2(a5) ;_x2=d5 move #197,_y2(a5) ;_y2=197 add #15,d5 ;on ajoute 15 à d5 DC.W $A003 ;et on trace la LINE dbf d6,LOOP ;on recommence 43 fois WAIT ;attente TERM ;fin DATA LIGNE DC.W %1111111111111111 ;le PAT (Nombre PAIRE DC.W %1111111111111111 ;de MOTS) CADRE DC.B 27,'E','Je vais tracer un quadrillage ...' DC.B 13,10,'Fonctions LINE et H-LINE :',0 BSS INCLUDE "TABLEAU.L" ;le Tableau du VDI END 3) Exercice nr°3: -------------- Voilà le listing du programme qui trace un rectangle avec un PAT redéfini après avoir chargé le programme de quadrillage précédent. TEXT INCLUDE "LINEQU.L" ;les EQUs INCLUDE "INIT_TOS.L" ;Setblock INCLUDE "MACROS.L" ;Les MACROS SETBLOCK ;initialisation PRINTLINE CADRE ;texte WAIT ;attente PEXEC NUL,ZERO,PRG,#0 ;on charge le programme dont ;le nom est en 'PRG' en mode ;0 et sans paramètres. DC.W $A000 ;On recherche l'adresse du T.I. movea.l a0,a5 ;On sauve cette adresse car elle ;risque d'ètre effacée par une ;de nos MACRO si elle utilise ce ;registre... ; On pose les adresses des tableaux du VDI dans le T.I. move.l #CONTROL,ticontrol(a0) move.l #INTIN,tiintin(a0) move.l #PTSIN,tiptsin(a0) move.l #INTOUT,tiintout(a0) move.l #PTSOUT,tiptsout(a0) move #1,_fg_bp_1(a5) move #0,_fg_bp_2(a5) ;Couleur=%01=1 move #0,_wrt_mode(a5) ;Write mode AND move #7,_patmsk(a5) ;7+1=8 données pour le PAT move.l #FILL,_patptr(a5) ;Le nouveau PAT est en ;'FILL' ;les coordonnées du rectangle move #129,_x1(a5) ;_x1=129 move #24,_y1(a5) ;_y1=24 move #496,_x2(a5) ;_x2=496 move #183,_y2(a5) ;_y2=183 DC.W $A005 ;FILLED RECTANGLE WAIT ;attente TERM ;fin DATA FILL DC.W %0111111111111110 ;le PAT (Nombre PAIRE de DC.W %0100000000000010 ;MOTS) DC.W %0101000000001010 DC.W %0101111111111010 DC.W %0101000000001010 DC.W %0100000000000010 DC.W %0111111111111110 DC.W %0000000000000000 CADRE DC.B 27,'E','Je vais tracer un carré avec $A005 ' DC.B 'après avoir chargé CADRE.PRG ',0 NUL DC.B 0 ;Pas d'environnement et de ZERO DC.B 0 ;ligne de commande PRG DC.B 'A:\CADRE.PRG',0 ;le NOM du prg à charger BSS INCLUDE "TABLEAU.L" ;le Tableau du VDI END 4) Exercice nr° 4: --------------- Voilà le listing du programme qui affiche le SPRITE. Il fallait faire attention à bien utiliser UNDRAW SPRITE à chaque fois pour pouvoir réafficher le SPRITE à d'autres coordonnées. Il fallait aussi fournir TOUS les paramètres dont les routines DRAW SPRITE et UNDRAW SPRITE ont besoin pour obtenir un résultat correct. J'ai choisit ,pour la forme de mon SPRITE, un sigle ATARI et mes intitiales :L-P .(C'est pas très original, je le reconnais...) J'utilise aussi la macro instruction VSYNC pour synchroniser nos éditions graphiques:le programme en est fortement ralenti mais le clignotement des affichages du SPRITE disparait... TEXT INCLUDE "LINEQU.L" ;Les EQUs INCLUDE "INIT_TOS.L" ;Setblock INCLUDE "MACROS.L" ;les MACROS SETBLOCK ;initialisation DC.W $A000 ;adresse du T.I. dans a0 et movea.l a0,a5 ;dans a5 pour éviter de la ;perdre si une MACRO utilise ;le registre a0... ; On pose les adresses des Tableaux du VDI dans le T.I. move.l #CONTROL,ticontrol(a0) move.l #INTIN,tiintin(a0) move.l #PTSIN,tiptsin(a0) move.l #INTOUT,tiintout(a0) move.l #PTSOUT,tiptsout(a0) PRINTLINE PIX ;texte WAIT ;attente DC.W $A00A ;HIDE MOUSE CCONOUT #27 ;ESC CCONOUT #'E' ;+'E' = effacer l'écran move #0,_wrt_mode(a5) ;Write mode AND move.l #BLOC,a0 ;Adresse du bloc de définition ;du SPRITE dans a0 move.l #SAUVE,a2 ;Adresse du Tampon de sauvegarde ;dans a2 (128 octets pour la moy- ;enne résolution) ; Le SPRITE va d'abord de la gauche vers la droite (coordonnée X dans d0 et coordonnée Y dans d1) move #10,X ;1 MOT=10 en 'X' BBB add #1,X ;On ajoute 1 en 'X' move X,d0 ;On pose le MOT de 'X' dans d0 move #100,d1 ;On pose 100 dans d1 move.l #BLOC,a0 ;L'adresse du bloc dans a0 cmpi #620,d0 ;A-t-on d0=620 ? beq DEUX ;si OUI, va en 'DEUX' move.l #SAUVE,a2 ;Sinon pose l'adresse du Tampon ;de sauvegarde du sprite dans a2 DC.W $A00C ;et UNDRAW SPRITE move.l #BLOC,a0 ;L'adresse du bloc dans a0 move.l #SAUVE,a2 ;L'adresse du tampon dans a2 DC.W $A00D ;et DRAW SPRITE VSYNC ;On synchronise jmp BBB ;et on recommence en 'BBB' ; Puis le SPRITE revient de la droite vers la gauche. DEUX sub #1,X ;on retranche 1 en 'X' move X,d0 ;on pose le mot de 'X' dans d0 move #100,d1 ;on pose 100 dans d1 move.l #BLOC,a0 ;L'adresse du bloc dans a0 cmpi #10,d0 ;A-t-on d0=10 ? beq FIN ;Si OUI, alors va en 'FIN' move.l #SAUVE,a2 ;Sinon adresse du tampon dans a2 DC.W $A00C ;et UNDRAW SPRITE move.l #BLOC,a0 ;L'adresse du bloc dans a0 move.l #SAUVE,a2 ;L'adresse du tampon dans a2 DC.W $A00D ;et DRAW SPRITE VSYNC ;On synchronise jmp DEUX ;et on recommence en 'DEUX' FIN WAIT ;attente TERM ;fin DATA ;Le bloc de définition du SPRITE: BLOC DC.W 0 ;X du point chaud DC.W 0 ;Y du point chaud DC.W 0 ;Format VDI DC.W 0 ;Couleur du MASQUE DC.W 1 ;Couleur du premier plan DC.W 0 ;pas de masque DC.W %0000000000000000 ;1° ligne du 1° plan DC.W 0 ;pas de masque DC.W %0000110110110000 ;2° ligne du 1° plan DC.W 0 ;pas de masque DC.W %0000110110110000 DC.W 0 DC.W %0000110110110000 DC.W 0 DC.W %0001100110011000 DC.W 0 DC.W %0011000110001100 DC.W 0 DC.W %0011000110001100 DC.W 0 DC.W %0110000110000110 DC.W 0 DC.W %0110000110000110 DC.W 0 DC.W %0000000000000000 DC.W 0 DC.W %0011000001111100 DC.W 0 DC.W %0011000001101100 DC.W 0 DC.W %0011000001111000 DC.W 0 DC.W %0011000001100000 DC.W 0 DC.W %0011111001100000 DC.W 0 ;pas de MASQUE DC.W %0000000000000000 ;16 ° ligne du 1° plan PIX DC.B 27,'E','Je vais faire bouger un SPRITE avec ' DC.B '$A00D',0 BSS X DS.W 1 ;on réserve un MOT en 'X' SAUVE DS.B 128 ;le TAMPON pour le SPRITE ( MOYENNE ;résolution) INCLUDE "TABLEAU.L" ;le tableau du VDI END 5) Exercice nr°5: -------------- Voilà le listing du programme qui affiche les points de différente couleur sur l'écran. TEXT INCLUDE "LINEQU.L" ;les EQUs INCLUDE "INIT_TOS.L" ;Setblock INCLUDE "MACROS.L" ;les MACROS ; Je teste d'obord si on est dans la bonne résolution: GETREZ ;on demande la Résolution tst d0 ;A-t-on résolution=0 (BASSE) beq OK ;Si Oui va en 'OK' PRINTLINE MOYENNE ;sinon message WAIT ;attente TERM ;et fin OK SETBLOCK ;initialise DC.W $A000 ;adresse du T.I. dans a0 ; On pose les adresses des tableaux du VDI dans le T.I. move.l #CONTROL,ticontrol(a0) move.l #INTIN,tiintin(a0) move.l #PTSIN,tiptsin(a0) move.l #INTOUT,tiintout(a0) move.l #PTSOUT,tiptsout(a0) DC.W $A00A ;HIDE MOUSE PRINTLINE MESSAGE ;texte WAIT ;attente CCONOUT #27 ;ESC CCONOUT #'E' ;+'E' = effacer l'écran ; Je définit une MACRO INSTRUCTION nommée POINT qui admet 3 paramètres ; et qui permet d'éditer un point à l'écran gràce à la routine $A001 POINT MACRO $\1,$\2,$\3 ;macro à 3 paramètres move \1,ptsin ;\1=coordonnée X move \2,ptsin+2 ;\2=coordonnée Y move \3,intin ;\3=couleur DC.W $A001 ;PUT PIXEL ENDM ;fin de la macro ; Ici je vais afficher tous les points de l'écran et je leurs donne une ; couleur grƒce au nombre aléatoire que me donne RANDOM dans d0. ; Pour ne pas obtenir un nombre trop grand avec RANDOM, je masque le ; nombre de d0 avec le nombre maximum de chiffres dont j'ai besoin. ; On obtient ainsi un nombre compris entre 0 et la valeur du masque ; (Voir le chapitre sur le BIOS et l'XBIOS à la fonction RANDOM ...) ; Si d0=0 (couleur 0), je recommence le test avec RANDOM car la couleur ; du bord ne doit pas changer. move #319,d5 ;319 dans d5 move #1,d0 ;1 dans d0 PALETTE NOUVEAU ;on change la PALETTE une ;première fois LOOP move #199,d6 ;199 dans d6 BOUCLE POINT d5,d6,d0 ;POINT aux coordonnées ;(d5,d6) et avec la couleur ;contenue dans d0 ENCORE RANDOM ;Nombre aléatoire en retour ;dans d0 and.l #15,d0 ;on masque les 4 bits de plus ;faible poids de d0 :15=%1111 tst d0 ;A-t-on d0=0 ? beq ENCORE ;Si oui, on recommence dbf d6,BOUCLE ;on boucle d6 fois en BOUCLE dbf d5,LOOP ;on boucle d5 fois en LOOP ; Maintenant on fait varier la valeur de la palette des couleurs: ; On a crée un vecteur qui contient les adresses des palettes. ; (En 'VECTEUR') ; On prend une de ces adresses et on change la palette (Je n'utilise pas ; la MACRO PALETTE que nous avons crée car elle attend un LABEL comme pa- ; ramètre.) puis on recommence avec l'adresse de la palette suivante... ; J'utilise aussi INKEY pour tester si on enfonce une touche et si tel ; est le cas, le programme se termine. ICI move #14,d6 ;14 dans d6 lea VECTEUR,a6 ;adresse de 'VECTEUR' dans a6 CHANGE move.l (a6)+,-(sp) ;on pose le L-M pointé par a6 ;(une adresse pour la palette) ;dans -(SP) move #6,-(sp) ;Code 6 (PALETTE) trap #14 ;du BIOS addq.l #6,sp ;et on repositionne SP INKEY ;je teste une touche au vol tst d0 ;d0=0 ? (Si=0,pas de touche) bne RETOUR ;Si NON (1 touche a été en- ;foncée) on va en 'RETOUR' dbf d6,CHANGE ;Sinon boucle en 'CHANGE' jmp ICI ;puis va en 'ICI' RETOUR CCONOUT #27 ;ESC CCONOUT #'E' ;+'E' = effacer l'écran PALETTE ANCIEN ;On remet l'ancienne PALETTE TERM ;et on quitte le prg DATA ; Les données définissant les palettes qu'on affiche sucessivement pour ; obtenir une rotation des couleurs. ; A chaque palette, on fait une rotation d'une couleur vers la droite... ; La couleur 0 ne change jamais pour éviter d'obtenir un clignotement du ; bord de l'écran (Couleur 0) NOUVEAU DC.W $000,$027,$037,$027,$017,$016,$006,$015 DC.W $014,$036,$025,$005,$004,$014,$007,$003 UN DC.W $000,$007,$027,$037,$027,$017,$016,$006 DC.W $014,$015,$036,$025,$005,$004,$014,$007 DEUX DC.W $000,$003,$007,$027,$037,$027,$017,$016 DC.W $006,$015,$014,$036,$025,$005,$004,$014 TROIS DC.W $000,$007,$003,$007,$027,$037,$027,$017 DC.W $016,$006,$015,$014,$036,$025,$005,$004 QUATRE DC.W $000,$014,$007,$003,$007,$027,$037,$027 DC.W $017,$016,$006,$015,$014,$036,$025,$005 CINQ DC.W $000,$004,$014,$007,$003,$007,$027,$037 DC.W $027,$017,$016,$006,$015,$014,$036,$025 SIX DC.W $000,$005,$004,$014,$007,$003,$007,$027 DC.W $037,$027,$017,$016,$006,$015,$014,$036 SEPT DC.W $000,$025,$005,$004,$014,$007,$003,$014 DC.W $007,$027,$037,$027,$017,$016,$006,$015 HUIT DC.W $000,$036,$025,$005,$004,$014,$007,$003 DC.W $014,$007,$027,$037,$027,$017,$016,$006 NEUF DC.W $000,$015,$036,$025,$005,$004,$014,$007 DC.W $003,$014,$007,$027,$037,$027,$017,$016 DIX DC.W $000,$006,$015,$036,$025,$005,$004,$014 DC.W $07,$003,$014,$007,$027,$037,$027,$017 ONZE DC.W $000,$016,$006,$015,$036,$025,$005,$004 DC.W $014,$007,$003,$014,$007,$027,$037,$027 DOUZE DC.W $000,$017,$016,$006,$015,$036,$025,$005 DC.W $004,$014,$007,$003,$014,$007,$027,$037 TREIZE DC.W $000,$027,$017,$016,$006,$015,$036,$025 DC.W $005,$004,$014,$007,$003,$014,$007,$027 QUATORZE DC.W $000,$037,$027,$017,$016,$006,$015,$036 DC.W $025,$005,$004,$014,$007,$003,$014,$007 ; Le vecteur qui pointe sur les adresses des différentes palettes VECTEUR DC.L NOUVEAU,UN,DEUX,TROIS,QUATRE,CINQ,SIX,SEPT DC.L HUIT,NEUF,DIX,ONZE,DOUZE,TREIZE,QUATORZE ; L'ancienne palette ANCIEN DC.W $777,$500,$070,$000,$000,$000,$000,$000 DC.W $000,$000,$000,$000,$000,$000,$000,$000 MESSAGE DC.B 27,'E',174,' Image brouillée ',175,':avec la' DC.B ' fonction',13,10,'$A001 et RANDOM pour les' DC.B 'couleurs ...',13,10,13,10,'(Une touche pour' DC.B 'Quitter)',0 MOYENNE DC.B 27,'E','ATTENTION, Ce programme ne marche ' DC.B 'qu',39,'en BASSE RESOLUTION !',13,10,'Il faut ' DC.B 'changer la résolution grace au BUREAU GEM...',7,0 BSS INCLUDE "TABLEAU.L" ;le tableau du VDI END 6) Exercice nr°6: -------------- Voilà le corrigé du programme qui affiche les losanges sans puis avec le CLIPPING... TEXT INCLUDE "LINEQU.L" ;Les EQUs INCLUDE "INIT_TOS.L" ;Setblock INCLUDE "MACROS.L" ;Les MACROS SETBLOCK ;initialisation DC.W $A000 ;adresse du T.I. dans a0 movea.l a0,a5 ;je la sauve au cas o— ... ; On pose les adresses des tableaux du VDI dans le T.I. move.l #CONTROL,ticontrol(a0) move.l #INTIN,tiintin(a0) move.l #PTSIN,tiptsin(a0) move.l #INTOUT,tiintout(a0) move.l #PTSOUT,tiptsout(a0) PRINTLINE UN ;texte WAIT ;attente DC.W $A00A ;HIDE MOUSE CCONOUT #27 ;ESC CCONOUT #'E' ;+'E' = effacer l'écran move #0,_fg_bp_1(a5) move #1,_fg_bp_2(a5) ;couleur %10=2 move #0,_wrt_mode(a5) ;Write mode AND move #1,_patmsk(a5) ;2 données pour le PAT move.l #PAT,_patptr(a5) ;en 'PAT' move #4,sptsin ;4 sommets (losange) move #0,_clip(a5) ;PAS de CLIPPING jsr TRACER ;et on trace le losange WAIT ;attente PRINTLINE DEUX ;texte WAIT ;attente CCONOUT #27 ;ESC CCONOUT #'E' ;+'E' = effacer l'écran move #1,_clip(a5) ;AVEC CLIPPING ; Les coordonnées du CADRE DU CLIPPING sont: (0,0)-(320,190) move #0,_xmn_clip(a5) move #0,_ymn_clip(a5) move #320,_xmx_clip(a5) move #190,_ymx_clip(a5) jsr TRACER ;et on trace le losange WAIT ;attente TERM ;fin ; Ici on trace le losange avec FILLED POLYGONE: ; Coordonnées du POLYGONE dans PTSIN: (320,10)-(570,100)-(320,190)- ; (70,100) et on boucle avec (320,10) TRACER move #320,ptsin move #10,ptsin+2 move #570,ptsin+4 move #100,ptsin+6 move #320,ptsin+8 move #190,ptsin+10 move #70,ptsin+12 move #100,ptsin+14 move #320,ptsin+16 move #10,ptsin+18 ; Ici on apelle FILLED POLYGONE pour chaque ligne HORIZONTALE du losange: de Y=10 à Y=190 (car notre losange n'est définit qu'entre ces lignes) move #9,d6 ;9 dans d6 BOUCLE add #1,d6 ;on ajoute 1 à d6 move d6,_y1(a5) ;on pose d6 dans _y1 DC.W $A006 ;FILLED POLYGONE cmpi #190,d6 ;A-t-on d6=190 ? bne BOUCLE ;Si NON alors recommence en BOUCLE rts ;RETOUR du SOUS-PROGRAMME DATA PAT DC.W %1111111111111110 ;le PAT (Nombre PAIRE DC.W %0000000000000000 ;de MOTS) UN DC.B 27,'E','Je trace un POLYGONE avec $A006 :',0 DEUX DC.B 27,'E','Je trace le mème POLYGONE en utilisant ' DC.B 'le CLIPPING',0 BSS INCLUDE "TABLEAU.L" ;Le tableau du VDI END ------------------ Voilà pour la correction des exercices sur les LineAs... Les listings de ces 6 programmes ainsi que les programmes exécutables se trouvent bien entendu sur cette disquette dans les fichiers: 1) TRANSMOU.L & TRANSMOU.PRG 2) CADRE .L & CADRE .PRG 3) RECTANGL.L & RECTANGL.PRG 4) SPRITE .L & SPRITE .PRG 5) POINT .L & POINT .PRG 6) POLYGONE.L & POLYGONE.PRG PIECHOCKI Laurent 8,Impasse Bellevue Suite dans le fichier: INTERRUP.DOC 57980 TENTELING ------------
Back to ASM_Tutorial