19417
UTILITY -> Other
© _Public_Domain_ (2024)
 
 
 
7 Fontes De Caracteres
7 Runes De Caracteres
cpc
 
 

NOTICE / MANUAL

TXT (1)

NOTICE TEXTE n° 1 (5.58 Ko)

; POUR LES 2 LIGNES MAJ JUIN 2024 ; RETROPOKE - PHILIPPE MOULIN # ; RSX |RUNE, fonte, @chaine$ ; # ; ####################################################################################### QUATRE_OCTETS EQU #BDF7 ; QUATRES OCTETS POUR VECTEUR RSX #BCD1 # COPIE_SYMBOL EQU #BE00 ; ZONE DE TRANFERT POUR MATRICE 255 # ; ####################################################################################### ; ####################################################################################### ORG #A500 ; DEBUT #A500 FIN #A598 152 OCTETS # FIXE_RSX ; IMPLANTATION DES RSX # LD BC, ADR_NOM_RSX ; 'BC' POINTE SUR 2 OCTETS ADR. NOM RSX # LD HL, QUATRE_OCTETS ; 'HL' POINTE SUR 4 OCTETS DE LIBRE # JP #BCD1 ; VECTEUR QUI FIXE LES RSX # NOM_RSX STR "RUNE" ; |FONTE, FONTE, @A$ |FONTE, PADY # DB 00 ; LA LISTE DOIT FINIR PAR UN OCTET ZERO # ADR_NOM_RSX DW NOM_RSX ; POINTE SUR L'ADRESSE DES NOMS DES RSX # ; COMME IL N'Y A QU'UNE COMMANDE RSX, IL N'EST PAS BESOIN DE CODE 'JP RSX_RUNE' # ; ####################################################################################### ; ####################################################################################### RSX_RUNE ; |RUNE, fonte (de 0 a 127), @chaine$ # DEC A ; VERIFIER LE NOMBRE DE PARAMETRE # DEC A ; SI LE NOMBRE DE PARAMETRE N'EST PAS # RET NZ ; CORRECT, ON ARRETE LA PROCEDURE # EX HL, DE ; 'HL'= ADR. DU DESCRIPTEUR DE CHAINE # LD A, (HL) ; 'A'= NOMBRE DE CARACTERE DE LA CHAINE # OR A ; SI LA CHAINE EST VIDE ON SORT # RET Z ; # LD B, A ; 'B' SERA UTILISE POUR DECOMPTER LA # INC HL ; LONGUEUR DE LA CHAINE # LD E, (HL) ; # INC HL ; # LD D, (HL) ; 'DE' POINTE SUR LE PREMIER CARACTERE # ; # FAIRE_TOUTE_LA_CHAINE ; # PUSH DE ; 'DE' POINTE SUR LA CHAINE # PUSH BC ; 'B'= LONHUEUR DE LA CHAINE # LD A, (DE) ; 'A'= CARACTERE DANS LA CHAINE # LD DE, COPIE_SYMBOL ; 'DE' POINTE SUR UN TABLE DE 8 OCTETS # PUSH DE ; DE #BE00 A #BE07 (LIBRE) # CALL #BBA5 ; VECTEUR ADR DU CARACTERE DANS 'HL' # CALL #B906 ; ACTIVER LA MEMOIRE ROM POUR LA LIRE # LD BC, 8 ; 'BC'= NOMBRE D'OCTET A RECUPERER # LDIR ; TRANSFERER LES 8 OCTETS DU CARACTERE # CALL #B90C ; FERMER LA MEMOIRE ROM # XOR A ; 'A'= 0 # DEC A ; EQUIVAUT A ('A' = 255) # CALL #BBA5 ; RECHERCHE L'EMPLACEMENT DU CARAC. 255 # PUSH HL ; 'HL' POINTE SUR L'ADRESSE MATRICE 255 # POP IY ; ET LA TRANSFERER DANS 'IY' # POP HL ; 'HL' POINTE SUR LA TABLE RESERVEE # LD B, 8 ; 'B'= 8 LIGNE PAR CARACTERE # LD D, B ; 'D' SERVIRA A TESTER SI PAIR/IMPAIR # ; # FAIRE_8OCTETS ; UN CARACTERE CONTIENT 8 LIGNES # LD C, (IX + 2) ; 'C' INDICATEUR DE LA OU DES FONTES # LD A, (HL) ; CHOISIE EN PARAMETRE # LD E, A ; # FONTE_1 ; FONTE 1 (GRELOTTE) # DEC C ; TESTER SI PARAMETRE FONTE ( = 1) # JR NZ, FONTE_2 ; NON, ON PASSE A LA FONTE SUIVANTE # BIT 0, B ; TESTER LES LIGNES PAIRS POUR DECALAGE # JR Z, FONTE_2 ; NON # SRL A ; OUI ON DECALE LA LIGNE VERS LA DROITE # ; # FONTE_2 ; FONTE 2 (BIDASSE) # DEC C ; TESTER SI PARAMETRE FONTE ( = 2) # JR NZ, FONTE_3 ; NON # AND #EF ; SUPPRIMER LE PIXEL DU MILIEU # ; # FONTE_3 ; FONTE 3 (DISNEYGE) # DEC C ; TESTER SI PARAMETRE FONTE ( = 3) # JR NZ, FONTE_4 ; NON # SRL E ; OUI, ALORS ENLEVER 1/2 VALEUR # DEC D ; TOUTES LES 3 LIGNES # BIT 2, D ; # JR NZ, FONTE_3_NON ; NON # OR E ; # JR FONTE_4 ; ET ON POURSUIT # ; # FONTE_3_NON ; NON # AND E ; # ; # FONTE_4 ; FONTE 4 (LARADINE) # DEC C ; TESTER SI PARAMETRE FONTE ( = 4) # JR NZ, FONTE_5 ; NON # SRL E ; # AND E ; # ; # FONTE_5 ; FONTE 5 (GROSTAS) # DEC C ; TESTER SI PARAMETRE FONTE ( = 5) # JR NZ, FONTE_6 ; NON # SRL E ; # OR E ; # ; # FONTE_6 ; FONTE 6 (MABOULE) # DEC C ; TESTER SI PARAMETRE FONTE ( = 6) # JR NZ, FONTE_7 ; NON # SRL E ; # DEC D ; # BIT 2, D ; # JR NZ, FONTE_6_NON ; NON # AND E ; # JR FONTE_7 ; # ; # FONTE_6_NON ; # OR E ; # ; # FONTE_7 ; FONTE 7 (FAUXFILET) # DEC C ; TESTER SI PARAMETRE FONTE ( = 7) # JR NZ, FONTE_FIN ; NON # BIT 0, B ; REGARDER LES LIGNES SONT PAIRS # JR Z, FONTE_7_NON ; NON LIGNE IMPAIR # AND #AA ; APPLIQUER UN FILTRE # JR FONTE_FIN ; ET POURSUIVRE # ; # FONTE_7_NON ; LIGNE PAIR # AND #55 ; APPLIQUER UN FILTRE OPPOSE # ; # FONTE_FIN ; # LD (IY), A ; INSCRIRE VALEUR DANS LA MATRICDE 255 # INC IY ; ON REMET LES POINTEURS A JOUR # INC HL ; # DJNZ, FAIRE_8OCTETS ; ET ON BOUCLE SUR LES 8 LIGNES # XOR A ; AFFICHER LE CARACTERE 255 # DEC A ; EQUIVALENT LD A, 255 ('A'=0 'A'=255) # CALL #BB5A ; VECTEUR AFFICHE 'A' CHR$(255) # POP BC ; ON RECUPERE LE NOMBRE DE CARACTERE # POP DE ; AINSI QUE LA POSITON DANS LA CHAINE # INC DE ; ON PASSE AU SUIVANT # DJNZ, FAIRE_TOUTE_LA_CHAINE ; ET ON RECOMMENCE JUSQU'AU DERNIER # RET ; CARACTERE DE LA CHAINE # ; ####################################################################################### FIN ; #98
 



Goto Top
CPC-POWER/CPCSOFTS, programming by Kukulcan © 2007-2024 all rights reserved.
Reproduction forbidden without any express authorization. All the game titles used belong to their respective owners.
Hébergement Web, Mail et serveurs de jeux haute performance