Il fut un temps où tout le monde nous bassinait avec les démo. Et je te balance des Rasters qui passent derrière le logo que voici, et t'entends la zic que j'ai pompée dans Pénétrator, et... Pour les musiques, on ne peut rien pour vous, les logos non plus. Par contre, les Rasters... Vous savez, ces rouleaux de printemps qui fleurissent à tout va dans les démo et qui constituent la tuyauterie de ces dernières aux côtés des scrollings ? Pour les quelques ignares qui pensent encore qu'on fait les Rasters avec des sprites, je n'ai à dire que deux mots: ce sont des changements de couleurs sous interruption (zut, ça en fait 8). Imaginez, votre fond est de la couleur 0, le logo est de couleur 1. Au moment précis où le balais passe au-dessus de l'écran, je change la couleur de l'encre 0 et la mets, disons à 26 (blanc). Quelques lignes plus bas, je remets cette encre à 0 (pourquoi pas ). Et va ainsi le monde. Sans faire aucune modif. dans la structure de l'écran et sans changer son contenu, je viens de faire apparaître une bande blanche en haut de l'écran. Je me repose deux secondes, et un peu plus tard je remets ça. Avec une petite différence, car je change l'encre 0 en 26 ; un peu plus tard que la fois passée, ce qui fera descendre mon rouleau. Ainsi, on aura l'animation en va et vient d'un tube qui s'affiche sur tout ce qui est de la couleur du fond (n'y voyez surtout pas de mauvaises pensées de ma part). POUR UN NOTE DE PLUS Voilà le résultat d'une telle opération vue par l'œil pétillant de notre cher Rubi. Il ne vous reste plus qu'à modifier ce programme pour changer d'autres encres (la 1 par exemple) pour donner l'impression que le Raster passe également sur la couleur 1. Ce qui, bien amené, peut donner l'impression d'un rouleu qui tourne autour d'un logo ou d'autres choses, si vous le préférez. Le tout n'étant qu'une question de tempo. Ah ! le tempo, quelle chianterie ! Then Big Rouleau Raster ; RUBI_DOUILLE (c) 1990 ; ; Version WinAPE ORG &A000 ;---------------------------------- ;- Creation de la table de Tempos - ;---------------------------------- DI LD BC,40 ; 40 Couleurs LD HL,8 ; Tout ceci est tres complique XOR A ; et Pas tres interessent LD (QWE+1),A ; a commenter INC A ; je boude na LD (QWE_1+1),A LD IX,TABLE BOUC_1: LD (IX+0),L LD (IX+1),H QWE: LD A,0 INC A LD (QWE+1),A CP 4 JR NZ,QWE_1 XOR A LD (QWE+1),A LD A,(QWE+1) INC A LD (QWE_1+1),A QWE_1: LD A,1 LD (IX+2),A LD DE,9 ADD HL,DE INC IX INC IX INC IX DEC BC LD A,B OR C JR NZ, BOUC_1 LD (IX+0),0 LD (IX+1) ,0 ; ;---------------------------- ;- Configure nos Interrupts - ;---------------------------- ; LD HL,(&38) ; C'est classique LD (INTER) ,HL LD HL,&C9FB ; EI RET en &38 LD (&38) ,HL ; ;------------------ ;- Inltlallsation - ;------------------ ; LD HL ,TABLE ; La table des tempos au debut LD (ATABLE),HL LD A,&23 ; On commence de haut en bas LD (INC1),A ; En placant des INC HL LD (INC2),A LD (INC3),A EI ; ;--------------------- ;- Boucle principale - ;--------------------- ; BOUCLE: LD B,&F5 ;Attendre synchro SYNC: IN A,(C) RRA JR NC,SYNC HALT ; ;-------------------------------------------- ;- Determine le plan, la posItion et le sens ;-------------------------------------------- ; CALL SENS HALT ; ;-------------------- ;- Envoie du Raster - ;-------------------- ; CALL COULEUR ; 1 er HALT CALL COULEUR ; 2 eme HALT CALL COULEUR ; 3 eme HALT CALL COULEUR ; 4 eme ; ;------------------------- ;- Test la touche ESPACE - ;------------------------- ; LD BC,&F40E OUT (C),C LD BC,&F6C0 OUT (C),C LD BC,&F792 OUT (C), C LD BC,&F645 OUT (C) ,C LD B,&F4 IN A, (C) LD BC,&F782 OUT (C) ,C LD BC,&F609 OUT (C),C RLA JP C,BOUCLE ; Si pas de touche on continu ; ;--------------------------------------- ;- Restitution de la configuration CPC - ;--------------------------------------- ; LD HL, (INTER) LD (&38) , HL EI RET ; ;------------------- ;- SOUS-PROGRAMMES - ;------------------- ; COULEUR: LD B,3 ; petite tempo SYNC1: DJNZ SYNC1 ; ;-------------------------------------- ;- Tempo fixant la posItion du Raster - ;-------------------------------------- ; TEMPO: LD DE,1 SYNC2: DEC DE LD A,D OR E JR NZ,SYNC2 TEMPO1: LD B,1 SYNC3: DJNZ SYNC3 LD HL,M1 COLOR: ; envoie des couleurs LD A, (HL) CP &FF JR NZ,COLOR1 LD BC,&7F01 OUT (C), C LD A,&4B OUT (C),A RET COLOR1: LD BC,&7F10 LD DE,&100 OUT (C), E OUT (C), A OUT (C), C OUT (C), A PEN: OUT (C), D ; Du pen 1 ou pas? OUT (C), A LD B,5 COLOR2: DJNZ COLOR2 ;NOP INC HL JR COLOR SENS: LD HL, (ATABLE) INC1: INC HL ; De haut en bas INC HL INC2: INC HL ; De bas en haut DEC HL INC3: INC HL PUSH HL LD E, (HL) INC HL LD D, (HL) INC HL LD B, (HL) POP HL LD A,D OR E JR NZ,SENS_1 LD A, (INC1) ; Inverse le sens de deplacement XOR 8 LD (INC1),A LD (INC2),A LD (INC3),A LD A,(PEN+1) ; Decide de l'affichage du PEN ; XOR 8 LD (PEN+1) ,A JR SENS SENS_1: LD (ATABLE),HL ; Envoie des parametres la position LD (TEMPO+1),DE LD A,B LD (TEMPO1+1),A RET ; INTER DEFW 0 ATABLE DEFW TABLE ; U0 EQU 11+64 ; Definition du Raster U1 EQU 19+64 U2 EQU 23+64 U3 EQU 21+64 M1: DEFB &54 DEFB U3,U2,U1 DEFB U1,U0,U1,U1 DEFB U2,U3 DEFB &54 DEFB &FF DEFB 0 DEFW 0 TABLE: ; Prevoir 40 octetsRUBI, ACPC n°24 Mars 1990, p60-61 ★ AMSTRAD CPC ★ DOWNLOAD ★ |
|
CPCrulez[Content Management System] v8.7-desktop/c Page créée en 250 millisecondes et consultée 2508 foisL'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. |
|
|