home *** CD-ROM | disk | FTP | other *** search
- 10 MEMORY &1FFF:MODE 2:|TAPE.OUT:DEFINT a-z
- 20 CODE=&A000:TRACK=CODE+10:SECT=CODE+12:ADR=CODE+6:CHEKSUM=CODE+29
- 30 PRINT"CPC2PC (transfert part.) (c)1997 Stra
- 40 INPUT"Disk number ";discnumber
- 50 PRINT"Data or Vendor format ? ";
- 60 a$=UPPER$(INKEY$)
- 70 IF a$="D"THEN format=&C0:PRINT"DATA":GOTO 100
- 80 IF a$="V"THEN format=&40:PRINT"VENDOR":GOTO 100
- 90 GOTO 60
- 100 INPUT"Beginning track ";DEBT:DEBT=INT(DEBT/5)*5
- 110 INPUT"Ending track ";FINT:FINT=INT(FINT/5)*5+4
- 120 PRINT"INSERT SOURCE DISK...":CALL &BB06
- 130 a=0:WHILE 1
- 140 READ a:IF a=-1 THEN 210
- 150 POKE CODE,a
- 160 CODE=CODE+1
- 170 WEND
- 180 DATA &e,&7,&cd,&f,&b9,&21,0,&40,&11,0,0,&e,0,&cd,&66,&c6,&e,0,&c3,&f,&b9:'read sector
- 190 DATA &21,&5d,&00,&3e,&0a,&c3,&68,&bc:'speed write 2
- 200 DATA 1,&ff,0,&2a,0,&7a,&c5,&1a,&2f,&4f,&13,&1a,&2f,&47,&13,9,&c1,&b,&78,&fe,&ff,&20,&ef,&22,0,&7a,&c9,-1:'checksum
- 210 CALL &A015 'speed write 2 (3600 bauds)
- 220 FOR PT=DEBT TO FINT STEP 5
- 230 file$="DISK"+HEX$(discnumber,2)+HEX$(pt,2)+".trk"
- 240 POKE &7A00,0:POKE &7A01,0:adresse=&2000
- 250 FOR P=PT TO PT+4
- 260 PRINT"Reading track : "p"/";
- 270 FOR S=format+1 TO format+9
- 280 PRINT" "HEX$(s);
- 290 POKE TRACK,P
- 300 POKE SECT,S
- 310 POKE ADR,ADRESSE MOD 256
- 320 POKE ADR+1,ADRESSE/256
- 330 CALL &A000 'lit le secteur
- 340 CALL CHEKSUM,adresse
- 350 adresse=adresse+512
- 360 NEXT
- 370 PRINT
- 380 NEXT
- 390 POKE &7A00,(NOT PEEK(&7A00))AND &FF
- 400 POKE &7A01,(NOT PEEK(&7A01))AND &FF
- 410 PRINT"Writing file : "file$
- 420 PRINT"Checksum = ";HEX$(PEEK(&7A01),2)+HEX$(PEEK(&7A00),2)
- 430 SAVE file$,b,&2000,&5A02
- 440 NEXT
-