hier für die Tüftler die mc_read-routine(512byte):

Code:
Sub Mc_read()
   Set Mcs

   Cmd(1) = &H51
   Cmd(2) = 0
   Cmd(3) = 0
   Cmd(4) = 0
   Cmd(5) = 0
   Cmd(6) = &HFF

   Shift Sector , Left , 9

   Tmp = Sector And &HFF000000
   Shift Tmp , Right , 24
   Cmd(2) = Tmp

   Tmp = Sector And &H00FF0000
   Shift Tmp , Right , 16
   Cmd(3) = Tmp

   Tmp = Sector And &H0000FF00
   Shift Tmp , Right , 8
   Cmd(4) = Tmp

Anfang3:
   Reset Mcs

   For A = 1 To 6
      Shiftout Mosi , Sck , Cmd(a) , 1 , 8 , 16
   Next

   For A = 1 To 8
      Reset Sck
      Waitus 10
      Set Sck
      Waitus 10
   Next

   Shiftin Miso , Sck , Din , 1 , 8 , 16
   If Din <> 0 Then
      Goto Anfang3
   End If
   Print Din

   For A = 1 To 16
      Reset Sck
      Waitus 10
      Set Sck
      Waitus 10
   Next

   Shiftin Miso , Sck , Din , 1 , 8 , 16
   If Din <> &HFE Then
      Goto Ende
   End If

   For A = 2 To 515
      Shiftin Miso , Sck , Din , 1 , 8 , 16
      Buffer(a) = Din
   Next

Ende:
   Waitms 5

   Set Mcs

End Sub