home *** CD-ROM | disk | FTP | other *** search
/ Emulator Universe CD / emulatoruniversecd1998.iso / CPC / Utils / CPCtape / CPC2PCS.BAS < prev    next >
Encoding:
BASIC Source File  |  1997-04-05  |  1.6 KB  |  45 lines

  1. 10 MEMORY &1FFF:MODE 2:|TAPE.OUT:DEFINT a-z
  2. 20 CODE=&A000:TRACK=CODE+10:SECT=CODE+12:ADR=CODE+6:CHEKSUM=CODE+29
  3. 30 PRINT"CPC2PC (transfert part.) (c)1997 Stra
  4. 40 INPUT"Disk number ";discnumber
  5. 50 PRINT"Data or Vendor format ? ";
  6. 60 a$=UPPER$(INKEY$)
  7. 70 IF a$="D"THEN format=&C0:PRINT"DATA":GOTO 100
  8. 80 IF a$="V"THEN format=&40:PRINT"VENDOR":GOTO 100
  9. 90 GOTO 60
  10. 100 INPUT"Beginning track ";DEBT:DEBT=INT(DEBT/5)*5
  11. 110 INPUT"Ending track    ";FINT:FINT=INT(FINT/5)*5+4
  12. 120 PRINT"INSERT SOURCE DISK...":CALL &BB06 
  13. 130 a=0:WHILE 1
  14. 140 READ a:IF a=-1 THEN 210
  15. 150 POKE CODE,a
  16. 160 CODE=CODE+1
  17. 170 WEND
  18. 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
  19. 190 DATA &21,&5d,&00,&3e,&0a,&c3,&68,&bc:'speed write 2
  20. 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
  21. 210 CALL &A015 'speed write 2 (3600 bauds)
  22. 220 FOR PT=DEBT TO FINT STEP 5
  23. 230 file$="DISK"+HEX$(discnumber,2)+HEX$(pt,2)+".trk"
  24. 240 POKE &7A00,0:POKE &7A01,0:adresse=&2000
  25. 250 FOR P=PT TO PT+4
  26. 260 PRINT"Reading track : "p"/";
  27. 270 FOR S=format+1 TO format+9
  28. 280 PRINT" "HEX$(s);
  29. 290 POKE TRACK,P
  30. 300 POKE SECT,S
  31. 310 POKE ADR,ADRESSE MOD 256
  32. 320 POKE ADR+1,ADRESSE/256
  33. 330 CALL &A000 'lit le secteur
  34. 340 CALL CHEKSUM,adresse
  35. 350 adresse=adresse+512
  36. 360 NEXT
  37. 370 PRINT
  38. 380 NEXT
  39. 390 POKE &7A00,(NOT PEEK(&7A00))AND &FF
  40. 400 POKE &7A01,(NOT PEEK(&7A01))AND &FF
  41. 410 PRINT"Writing file : "file$
  42. 420 PRINT"Checksum = ";HEX$(PEEK(&7A01),2)+HEX$(PEEK(&7A00),2)
  43. 430 SAVE file$,b,&2000,&5A02
  44. 440 NEXT
  45.