cdromw32.inc 1013 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. uses wincd;
  2. Function ReadCDTOC(Device : String; Var CDTOC : Array of TTocEntry) : Integer;
  3. Var
  4. Toc : TToc;
  5. I,Res : Integer;
  6. begin
  7. Res:=ReadTOC(Device,TOC);
  8. If Res<0 then
  9. Result:=Res
  10. else
  11. begin
  12. If Res>High(CDTOC)+1 then
  13. Result:=-2
  14. else
  15. begin
  16. Result:=0;
  17. For I:=TOC.FirstTrack to Toc.LastTrack do
  18. begin
  19. With CDTOC[Result],TOC.TocTrack[Result] do
  20. begin
  21. min:=Addr[1];
  22. sec:=Addr[2];
  23. frame:=Addr[3]; // ?? tocentry.cdte_addr.msf.frame;
  24. inc(frame,min*60*75);
  25. inc(frame,sec*75);
  26. end;
  27. Inc(Result);
  28. end;
  29. // Lead out
  30. With CDTOC[Result],TOC.TocTrack[Result] do
  31. begin
  32. min:=Addr[1];
  33. sec:=Addr[2];
  34. frame:=Addr[3]; // ?? tocentry.cdte_addr.msf.frame;
  35. inc(frame,min*60*75);
  36. inc(frame,sec*75);
  37. end;
  38. end;
  39. end;
  40. end;
  41. Function GetCDRomDevices(Var Devices : Array of string) : Integer;
  42. begin
  43. Result:=enumcddrives(Devices);
  44. end;