Code: Alles auswählen
dwStart=0 ;=bootsektor
dwCount=512 ;immer 512
*MemoryID = AllocateMemory(512)
hDevice = CreateFile_("\\.\A:",#GENERIC_READ|#GENERIC_WRITE , #FILE_SHARE_READ | #FILE_SHARE_WRITE, 0, #OPEN_EXISTING, 0, 0);
SetFilePointer_(hDevice, dwStart, 0, #FILE_BEGIN)
ReadFile_(hDevice,*MemoryID,dwCount,@dwBytes,0);
Debug dwbytes ;gelesen
seriennummer_offset = $27 ;FAT
;Volumeseriennummer: FF00-0001
PokeB(*MemoryID+seriennummer_offset+3,255)
PokeB(*MemoryID+seriennummer_offset+2,0)
PokeB(*MemoryID+seriennummer_offset+1,0)
PokeB(*MemoryID+seriennummer_offset,1)
SetFilePointer_(hDevice, dwStart, 0, #FILE_BEGIN)
WriteFile_(hDevice,*MemoryID,dwCount,@dwBytes,0);
Debug dwbytes ;geschrieben
CloseHandle_(hDevice)
FreeMemory(*MemoryID)