CODINGSOURCES ★ CODING Source &053 - Sampler : Enregistrement / Restitution d'une source sonore branchee sur le port K7 ★

Sampler (enregistrement / restitution d'une source sonore branchee sur le port K7)Coding Sources

;
;
; * SAMPLER * AMELIORATION PAR FREDERIC BELLEC 03-90
; ; 105 OCTETS RELOGEABLES
;
; CALL &A000,Type,Adresse,Longueur
;
; https://cpcrulez.fr
;
ORG #a000
CP 3 ;3 param}tres?
RET nz ;si non retour basic
LD l,(ix+2) ; HL=Adresse
LD h,(ix+3) ; DE=longueur
LD a,(ix+4) ; Type
CP 1 ;si TYPE=1 alors ENREGISTREMENT
JR z,record
CP 0 ;si TYPE=0 alors RESTITUTION
JR z,play
RET ;retour BASIC sinon
; -------------------------------
; ; ENREGISTREMENT
; -------------------------------
record DI
LD b,#f5 ;port B
lis LD c,8 ;8 bits @ lire
;
read_ IN a,(c) ;lecture {tat cassette
SLA a ;etat 0 ou 1 ?
RL (hl) ;mettre en m{moire le flag C
tp2 LD a,11 ;mettre tempo {ventuellement
wait2 DEC a
JR nz,wait2
DEC c ;prochain bit
JR nz,read ;on continue pour les bits suivants
;
INC hl ;adresse suivante
DEC de ;un autre octet?
LD a,e
OR d
JR nz,lis ;si oui on continue
EI
RET ;retour Basic
; -------------------------------
; ; RESTITUTION
; -------------------------------
play DI
cont LD c,8 ;8 bits par octet
;
; SORTIE D'UN OCTET SUR CANAL B
;
sortie PUSH de
LD e,(hl) ;octet @ sortir
next SLA e ;tester bit de gauche
LD a,0
JR nc,outreg
LD a,15 ;volume maximum
outreg LD b,#f4 ;port A
LD d,9 ;registre 9 (Volume) du PSG
OUT (c),d ;selectionner ce registre
LD d,a ;volume a sortir
LD b,#f6 ;port C
IN a,(c)
OR #c0
OUT (c),a ;cette manipulation de bits a pour but
AND #3f ;de preserver l'etat du port C
OUT (c),a ;afin de garder le moteur K7
LD b,#f4 ;en marche, entre autres
OUT (c),d ;volume
LD b,#f6
LD d,a
OR #80
OUT (c),a
OUT (c),d
;
DEC c
JR nz,next
POP de
;
INC hl
DEC de
LD a,d
OR e
JR nz,cont
EI
RET

★ ANNÉE: 1990
★ AUTEUR: FREDERIC BELLEC

★ AMSTRAD CPC ★ DOWNLOAD ★

Other platform tools:
» coding  src53  samplerDATE: 1970-01-01
DL: 70
TYPE: ASM
SiZE: 4Ko
NOTE:

» coding  src53  samplerDATE: 2013-08-28
DL: 432
TYPE: text
SiZE: 3Ko
NOTE:

» SamplerDATE: 2008-01-06
DL: 327
TYPE: ZIP
SiZE: 23Ko
NOTE: 42 Cyls
.HFE: Χ

Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 240 millisecondes et consultée 2159 fois

L'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.