; http://www.cpcrulez.fr
;

;
;        TRANSFERT DISK FORMATE 40 SUR LECTEUR 80
;
         ORG  #A000
;
;
         XOR  A
         LD   (PISTE),A
         LD   (PISTE2),A
         LD   B,5
         LD   A,(SECTEUR)
         LD   C,A
TOTAL    PUSH BC
         LD   A,(PISTE2)
         LD   D,A
         LD   B,8
         LD   HL,#A00
CONTLI   PUSH BC
         CALL LIREPIST
         POP  BC
         LD   A,(SECTEUR)
         LD   C,A
         DJNZ CONTLI
         LD   A,D
         LD   (PISTE2),A
         LD   HL,#A00
         LD   B,8
         LD   A,(PISTE)
         LD   D,A
CONTSA   PUSH BC
         CALL SAUVPIST
         POP  BC
         LD   A,(SECTEUR)
         LD   C,A
         DJNZ CONTSA
         LD   A,D
         LD   (PISTE),A
         POP  BC
         DJNZ TOTAL
KACOU    LD   A,2
         CALL #BC0E
         LD   HL,MESS1
         CALL AFFICHE
         CALL #BB06
         CP   "O"
         JR   Z,GLOC
         CP   "o"
         JR   Z,GLOC
         LD   HL,MESS2
         CALL AFFICHE
         CALL #BB06
         RST  0
GLOC
         LD   HL,MESS3
         CALL AFFICHE
GLOC2    CALL #BB06
         CP   "1"
         JR   Z,BLOUF
         CP   "2"
         JP   Z,#A000
         LD   A,7
         CALL #BB5A
         JR   GLOC2
BLOUF
         XOR  A
         LD   (PISTE),A
         LD   (PISTE2),A
         LD   B,5
         LD   A,(SECTEUR)
         LD   C,A
TOTAL1   PUSH BC
         LD   A,(PISTE2)
         LD   D,A
         LD   B,8
         LD   HL,#A00
CONTLI1  PUSH BC
         CALL LIPI
         POP  BC
         LD   A,(SECTEUR)
         LD   C,A
         DJNZ CONTLI1
         LD   A,D
         LD   (PISTE2),A
         LD   HL,#A00
         LD   B,8
         LD   A,(PISTE)
         LD   D,A
CONTSA1  PUSH BC
         CALL SAUPI2
         POP  BC
         LD   A,(SECTEUR)
         LD   C,A
         DJNZ CONTSA1
         LD   A,D
         LD   (PISTE),A
         POP  BC
         DJNZ TOTAL1
         JP   KACOU
;
AFFICHE
         LD   A,(HL)
         OR   A
         RET  Z
         CALL #BB5A
         INC  HL
         JR   AFFICHE
;
LIREPIST
         PUSH BC
         LD   C,7
         CALL #B90F
         POP  BC
         LD   B,9
         LD   E,1
;
SUITEL   PUSH HL
         PUSH DE
         PUSH BC
         CALL LIREAUX
         POP  BC
         POP  DE
         POP  HL
         INC  H
         INC  H
         INC  C
         DJNZ SUITEL
         CALL #B903
         INC  D
         INC  D
         RET
;
LIREAUX  DI
         CALL #C976
         LD   A,#66
         LD   B,#10
         LD   (#BE62),HL
         LD   H,A
         LD   L,C
         LD   (#BE74),HL
         LD   C,B
         LD   HL,SUITE
         JP   #C6FF
SUITE
         LD   A,D
         SRL  A
         LD   D,A
         JP   #C67C
;
;
SAUPI2
         LD   E,1
         JR   SA3
SAUVPIST
         LD   E,0
SA3      LD   B,9
CONTSAU  PUSH BC
         PUSH DE
         PUSH HL
         RST  #18
         DEFW SAUV
         POP  HL
         INC  H
         INC  H
         POP  DE
         POP  BC
         INC  C
         DJNZ CONTSAU
         INC  D
         RET
LIPI
         LD   E,0
         LD   B,9
LIPI1    PUSH HL
         PUSH DE
         PUSH BC
         RST  #18
         DEFW LOAD
         POP  BC
         POP  DE
         POP  HL
         INC  C
         INC  H
         INC  H
         DJNZ LIPI1
         INC  D
         RET
;
SAUV     DEFW #C64E
         DEFB 7
LOAD     DEFW #C666
         DEFB 7
PISTE    DEFB 0
PISTE2   DEFB 0
SECTEUR  DEFB #C1
MESS1    DEFM C'est fini les Enfants !!
         DEFB #0D,#0A,#0A
         DEFM Acore une fois ??? gaa ?!
         DEFM ?
         DEFB 0
MESS2    DEFB #0D,#0A,#0A
         DEFM Gn'au Revoir et a demain
         DEFB 32
         DEFM si on veut bien !
         DEFB 0
MESS3    DEFB #0D,#0A,#0A
         DEFM Gneu veux des nouvelles d
         DEFM isquettes !
         DEFB #0D,#0A,#0A
         DEFM Puis appuyez avec vos p
         DEFM etits Petons sur le c
         DEFM lavier :
         DEFB #0D,#0A,#0A
         DEFM (1) TRANSFERT A ==> B
         DEFB #0D,#0A
         DEFM (2) TRANSFERT B ==> A
         DEFB 0