; http://www.cpcrulez.fr
;

;
; Routine de defilement de 365 couleurs (mode 2)
; (c) 90 Benjy pour N.D.C No 3
;
; Ca sert a rien mais c'est tres bO
;
         ORG  #a000                     ;Call &a000

         LD   bc,0
         CALL #bc38                     ;border 0
         LD   a,2
         CALL #bc0e                     ;mode 2
         LD   hl,#c000
         LD   de,#c001
         LD   bc,#3fff                  ;rempli ecran d'une trame cadrillee
         LD   (hl),#aa
         LDIR
;
; les 9 lignes precedentes sont facultatives dans le cas ou vous
; voulez essayer en mode 1
;
         DI                             ;stop interruptions
         LD   hl,(#39)                  ;detourne le RST #38
         LD   (phl+1),hl
         LD   hl,inter
         LD   (#39),hl
         EI                             ;ok interruption
;
wloop    EI
         HALT                           ;attend prochaine interrupt
         CALL #bb1b                     ;touche pressee ?
         JR   nc,wloop
;
         DI                             ;si oui, c'est la fin des haricots
         LD   hl,(phl+1)
         LD   (#39),hl
         EI
         RET                            ;bye ! Passe le bonjour a ta mere
;
inter    DI
         LD   b,#f5                     ;ou k'en est l'balayage ?
         IN   a,(c)
         RRA
         RET  nc                        ;s'il reste de la poussiere, attend.
;
         LD   hl,309                    ;attend un peu j'ai une envie pressante
tempo    DEC  hl
         LD   a,h
         OR   l                         ;ou sont les water ?
         JR   nz,tempo
         NOP
         NOP
;
         LD   ix,inks                   ;ix pointe son doigt muscle
         LD   hl,(depink)               ;sur les couleurs
         LD   b,0
;
iloop    LD   a,h                       ;on se passe de commentaire
         LD   (code+2),a
         LD   a,l
         LD   (code2+2),a
;
         PUSH bc
         LD   bc,#7f00
code     LD   a,(ix+0)
         OUT  (c),c
         OUT  (c),a                     ;envoie couleur Dadiou !
code2    LD   a,(ix+0)
         INC  c
         OUT  (c),c
         OUT  (c),a                     ;Encore !!!
         INC  l
         BIT  5,l
         RES  5,l
         JP   z,suite
         INC  h
         RES  5,h
         POP  bc
         NOP
         NOP
         DJNZ iloop
         JP   suite2
;
suite    INC  a
         RES  5,h
         POP  bc
         NOP
         NOP
         DJNZ iloop
;
suite2   LD   hl,(depink)
         INC  l
         BIT  5,l
         RES  5,l
         JR   z,fin
         INC  h
         RES  5,h
fin      LD   (depink),hl
         EI
phl      JP   #b941                     ;fin detournement, fait comme si.
;
depink   DEFW 0
;
; a vous de mettre vos couleurs
;
inks     DEFB #44,#55,#57,#53           ;bleu
         DEFB #57,#55,#44
         DEFB #5c,#4c,#4e,#4b,#4e,#4c   ;rouge
         DEFB #5c
         DEFB #58,#45,#4d,#4f           ;violet
         DEFB #4d,#45,#58
         DEFB #4c,#4e,#4a,#4b           ;jaune
         DEFB #4a,#4e,#4c
         DEFS 10,#44                    ;Fin de table