* * SOURCE D'ANIMATION DHGR * MURYADEN II - ANIM 2 * * V-1.00 - UPDATE * 10/09/90 11H00 * ORG $6000 LST OFF AP = $00F9 X = $00FA DEP = $00FC ARR = $00FE CARAL = $1000 CARAH = $1080 GRAPL = $1130 GRAPH = $11F0 JSR $FC58 JSR $B000 LDA #$00 ;INITIALISATIONS STA AP STA X JSR M1 JSR ANIM1 STA $C000 STA $C00C STA $C051 STA $C054 JSR $FC58 RTS * ANIMATION * VARIANTE DES VARIABLES: * * X= NUMERO DE LA FORME * Y= COLONNE D'AFFICHAGE * A= NON UTILE AU PROGRAMME ANIM1 LDX #$00 LDY #$00 JSR AFFICHE ANIM2 LDX #$12 LDY #$22 JSR AFFICHE INC ANIM1+1 INC ANIM2+1 LDA ANIM1+1 CMP #$12 BNE RET LDA #$00 STA ANIM1+1 LDA #$12 STA ANIM2+1 * RETOUR RET JSR SCROLL LDA #$D0 JSR $FCA8 JSR SCROLL LDA #$D0 JSR $FCA8 LDA $C000 BPL ANIM1 BIT $C010 RTS BYTS HEX 0000 * * VOICI LE PROGRAMME * AFFICHE STY YVAL1+1 ;VALEUR COLONNE LDA WINL,X ;LADRES OF WINDOW DATA STA X LDA WINH,X ;HADRES OF WINDOW DATA STA X+1 LDY #$00 LDA (X),Y ;ADR MEM H STA ARR1+2 INY LDA (X),Y ;ADR MEM B STA ARR1+1 INY LDA (X),Y ;NOMBRE DE COLONNES STA BYTS LDX #$00 ;RECHERCHE CALCUL LDA #$00 STA BYTS+1 STA $C055 ;PASSAGE EN AUX LDA GRAPL,X ;DE L'ADRESSE STA ARR ;HAUTE ET BASSE LDA GRAPH,X ;DE LA LIGNE STA ARR+1 ;A AFFICHER YVAL1 LDY #$00 ;NOMBRE DE COLONNES ARR1 LDA $FFFF ;VALEUR A CHARGER STA (ARR),Y ;SAUVEGARDE DE LA VALEUR INC ARR1+1 ;TOUR SUIVANT LDA ARR1+1 ;LE CHARGE BNE ARR2 ;NON, SAUTE INC ARR1+2 ;OUI INCREMENTE ARR2 LDA BYTS+1 CMP BYTS BEQ FOLLOWX INC BYTS+1 LDA $C01C ;TEST LE BYTE DE PAGE 2 BMI MAIN ;PASSE EN MAIN STA $C055 ;PAGE 2 INY ;COLONNE SUIVANTE JMP ARR1 ;RETOUR MAIN STA $C054 ;PAGE 1 JMP ARR1 ;RETOUR FOLLOWX INX CPX #$1E ;EST-CE LA FIN?? BNE CALCUL ;NON, RECOMMENCE RTS ;C'EST LA FIN * TABLE DES ADRESSES DES DONNEES DE FENETRES WINL DFB H1,>H2,>H3,>H4,>H5,>H6 DFB >H7,>H8,>H9,>H10,>H11,>H12 DFB >H13,>H14,>H15,>H16,>H17,>H18 DFB >G1,>G2,>G3,>G4,>G5,>G6 DFB >G7,>G8,>G9,>G10,>G11,>G12 DFB >G13,>G14,>G15,>G16,>G17,>G18 * TABLE DES DONNEES DES FENETRES H1 HEX 70000C H2 HEX 71930C H3 HEX 73260C H4 HEX 74B90C H5 HEX 764C0C H6 HEX 77DF0C H7 HEX 79720C H8 HEX 7B050C H9 HEX 7C980C H10 HEX 7E2B0C H11 HEX 7FBE0C H12 HEX 81510C H13 HEX 82E40C H14 HEX 84770C H15 HEX 860A0C H16 HEX 879D0C H17 HEX 89300C H18 HEX 8AC30C G1 HEX 90000B G2 HEX 91740B G3 HEX 92E80B G4 HEX 945C0B G5 HEX 95D00B G6 HEX 97440B G7 HEX 98B80B G8 HEX 9A2C0B G9 HEX 9BA00B G10 HEX 9D140B G11 HEX 9E880B G12 HEX 9FFC0B G13 HEX A1700B G14 HEX A2E40B G15 HEX A4580B G16 HEX A5CC0B G17 HEX A7400B G18 HEX A8B40B * * AFFICHE UN TEXTE EN DHGR * HUM PETITE VARIANTE * V-1.00 - UPDATE 11/07/90 * M1 LDA #$00 STA DEP LDA #$16 STA DEP+1 RTS SCROLL JSR M5 BCC M3 JSR M1 RTS M3 INC DEP LDA DEP BNE M4 INC DEP+1 M4 LDX #$00 STA $C000 TOUR STA $C002 STA $C005 JSR LIT JSR ECR INX STA $C003 STA $C004 JSR LIT DEX JSR ECR INX INX CPX #$28 BNE TOUR STA $C001 STA $C002 STA $C004 RTS **** LIT LDA $23D0,X ;LIT LES PHA ;BITS A ECRIRE LDA $27D0,X PHA LDA $2BD0,X PHA LDA $2FD0,X PHA LDA $33D0,X PHA LDA $37D0,X PHA LDA $3BD0,X PHA LDA $3FD0,X PHA RTS ECR PLA ;ECRIT LES STA $3FD0,X ;BITS LUS PLA STA $3BD0,X PLA STA $37D0,X PLA STA $33D0,X PLA STA $2FD0,X PLA STA $2BD0,X PLA STA $27D0,X PLA STA $23D0,X RTS M5 LDY #$00 ;TEXTE LDA (DEP),Y ;RETOUR BEQ M6 ;SI 00 JSR M7 ;AFFICHE CLC RTS M6 SEC RTS * AFFICHE LE TEXTE M7 SEC ;SOUSTRAIT A0 SBC #$A0 ;POUR L'EQUIVALENCE TAX ;TABLE/CARACTERE LDA CARAL,X ;CARACTERES STA M9+1 ;CORRESPONDANT LDA CARAH,X ;ADRESSE BASSE STA M9+2 ;ET HAUTE LDX #$B8 M8 LDA GRAPL,X ;CHARGE LA LIGNE STA ARR ;D'ARRIVEE BASSE LDA GRAPH,X ;ET EVIDEMMENT STA ARR+1 ;HAUTE M9 LDA $FFFF ;AFFICHE LDY #$27 ;SUR LA COLONNE STA (ARR),Y ;YB INC M9+1 ;BYTE+1 LDA M9+1 BNE M10 INC M9+2 M10 INX ;LIGNE+1 CPX #$C0 BNE M8 RTS ;RETOUR