;       https://cpcrulez.fr
;

;       (c) Logon System 1992
;       DMA Sound Example
;       Longshot pour A100%
;

        ORG #A000
        DI
;
;       Délockage Asic
;
        CALL DELOCK
;
;       Connexion I/O Page
;
        LD      BC,#7FB8
        OUT     ( C) , C
;
;       Init Adr DMA Sound
;
        LD      HL,SNDLIST
        LD      (#6C00),HL
;
;       Pause Reg = (255+1)x64 ,us
;       Soit 0.016384 seconde
;
        LD      A,255
        LD      (#6C02),A
;
;       DMA contrôle ON !!
;
        LD      A,1
        LD      (#6C0F),A
;
;       Déconnexion I/O Page
;
        LD      Bc,#7FA0
        OUT     ( C),C

;
;       Fin programme
;
        EI
        RET
;
;       Programme Sound
;
SNDLIST:
;
;       Init Freq Canal A (R0)
        DEFW #0055
;
;       ctrl Son canal A On
;
        DEFW #073E
;
;       Repeat 60 Fois
        DEFW #203C ;
;
;       Volume A = 15
        DEFW #080F
;
;       Attend 13x0.016384sec
;       Soit 0.212992 seconde
        DEFW #100D ;

;       Volume A = 0 (Son Off)
;
        DEFW #0800
;
;       Attend 600xO.016384sec
;       Soit 9.8304 secondes
        DEFW #1258
;
;       Loop Instruction
        DEFW #4001
;
;       stop DMA Liste
        DEFW #4020
;
;       Délockage de l'Asic
;
DELOCK:
        DI
        LD      E,17
        LD      HL,TABASIC
        LD      BC,#BC00
SASIC:
        LD      A, (HL)
        OUT     ( C) , A
        INC     HL
        DEC     E
        JR      NZ, SASIC
        RET
;
;       Séquence "secrète" Pfff!
;
TABASIC:
DEFB &ff,&00,&ff,&77,&b3,&51,&a8,&d4,&62,&39,&9c,&46,&2b,&15,&8a,&cd,&ee