Y en avait vraiment marre de voir les Malibus, Logon et les autres faire des scrollings dans tous les sens, alors qu'on en était resté à nos bêtes scrollings horizontaux. Voilà-t-y pas que le grand Rubi de tous les temps se fâche et nous donne sa version des choses.
Vous avez devant vos yeux un petit bijou sorti des mains agiles de notre maître à tous, le grand Rubi. Et que fait ce bijou? Je vous le demande ma petite dame! Eh bien, il affiche un scrolling en D-I-A-G-O-N-A-L-E, et en ayant toujours la main sous Basic. Si ça, ce n'est pas des Rubidouilles comme on les aime, appelez-moi proute. Vous avez le source (pour les grosse têtes) et le chargeur Basic. Le scrolling s'active par un CALL &9000 et se désactive par un CALL &9003. Le texte commence en &9129 et se finit par un zéro. Ne vous affolez surtout pas si le Basic ne répond pas au quart de tour, et encore moins s'il ne répond pas du tout. Dans ce cas, Activez le scrolling et réactivez-le après que l'instruction rebelle aura été exécute. CE N'EST PAS TOUT Le maître Rubi nous promet, le mois prochain, des scrollings en vague et en cercle. Une fois le principe assimilé, vous serez capable de faire n'importe quel scrolling (chiche. celui qui en fait un en noeud pap...). Scrolard de porc ; Source compatible avec l'assembleur de WinAPE ; ORG &9000 T_CARAC equ &7000 T_TABLE equ &7800 ; ; Prendre les fontes des caracteres ; JP QON ; scrolling active JP QOFF ; scrolling desactive QON: XOR A CALL &BBA5 CALL &B906 PUSH AF LD DE,T_CARAC LD BC,8*256 LDIR POP AF CALL &B90C ; NB EQU 15 LI EQU 110 ; Calcul d'une pente CALL PENTE LD HL,NOM ; Le message au debut svp LD (OFNOM),HL ; ; On recconfigure les interuptions du CPC ; D_INT: DI LD HL, (&39) INC HL LD (QINT) ,HL LD (HL),&C3 LD DE, INT INC HL LD (HL),E INC HL LD (HL),D INC HL LD (D_INT3+1) ,HL LD DE,&33 ADD HL,DE LD (D_INT2+1),HL RET ; PENTE: LD HL,&0C000+12 LD B,LI PENTE0: CALL RBC26 DJNZ PENTE0 LD B,8 LD IX,T_TABLE PENTE1: PUSH HL LD C,NB PENTE2: LD (IX+0),L LD (IX+1),H INC IX INC IX INC HL CALL RBC26 DEC C JR NZ,PENTE2 POP HL CALL RBC26 DJNZ PENTE1 LD HL,NB-1*2+T_TABLE LD A,(HL) INC HL LD H,(HL) LD L,A LD (OFSET),HL RET ; INT: PUSH AF PUSH BC PUSH HL PUSH DE LD BC,#7F8D OUT (C),C CALL INTA POP DE POP HL POP BC POP AF EX AF,AF' D_INT2: JP C,0 D_INT3: JP 0 ; INTA: LD B,&F5 IN A, (C) RRA JR C,INTE0 KL: LD A, 7 INC A LD (KL+1),A CP 1 JR Z,INTE1 CP 2 JR Z,INTE1 CP 3 JR Z,INTE1 CP 4 JR Z,INTE2 RET ; INTE0: XOR A LD (KL+1) ,A LD HL,T_TABLE JR SPRG1 INTE1: LD HL, (THL) SPRG1: LD B,2 SPRG1_1: LD C,NB-1 LD E, (HL) INC HL LD D, (HL) INC HL SPRG1_2: PUSH HL LD A, (HL) INC HL LD H, (HL) LD L,A LD A, (HL) LD (DE), A EX DE ,HL POP HL INC HL INC HL DEC C JR NZ,SPRG1_2 DJNZ SPRG1_1 LD (THL) ,HL RET ; INTE2: SPRG2: ; Envoie du caractere LD HL, (OFNOM) D A, (HL) OR A JR NZ,SPRG2_1 LD HL ,NOM LD A, (HL) SPRG2_1: LD C,A LD A, (FLAG) XOR &FF LD (FLAG) ,A CALL NZ,SPRG2_4 LD DE, (FLAG1) LD HL, (OFSET) LD B,8 SPRG2_2: LD A, (DE) LD C,A LD A, (FLAG) OR A LD A,&0F JP Z,SPRG2_3 LD A,&F0 SPRG2_3: AND C LD (HL) ,A INC DE CALL RBC26 DJNZ SPRG2_2 RET ; SPRG2_4: INC HL LD (OFNOM) ,HL LD L,C LD H,0 ADD HL ,HL ADD HL ,HL ADD HL ,HL LD DE,T_CARAC ADD HL ,DE LD (FLAG1) ,HL RET ; QOFF: DI LD HL, (QINT) LD (HL), &08 INC HL LD (HL), #38 INC HL LD (HL),#33 RET ; RBC26: LD A,H DD A,#08 LD H,A AND #38 RET NZ USH DE LD DE,&C050 ADD HL ,DE POP DE RET ; ; FLAG DEFB 0 FLAG1 DEFW 0 OFSET DEFW 0 OFNOM DEFW 0 THL DEFW 0 QINT DEFW 0 ; NOM DB "BONJOUR, A TOI DEFM ,LISEZ 100%" DB 0 Scrolard de porc, ACPC n°19 , Octobre 1989, p89-91
| ★ AMSTRAD CPC ★ DOWNLOAD ★ |
CPCrulez[Content Management System] v8.732-desktop/c Page créée en 260 millisecondes et consultée 2540 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. |
|
|
|