diff options
Diffstat (limited to 'Bootloaders/Incomplete/MassStorage/Lib')
-rw-r--r-- | Bootloaders/Incomplete/MassStorage/Lib/SCSI.c | 7 | ||||
-rw-r--r-- | Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.c | 6 | ||||
-rw-r--r-- | Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h | 2 |
3 files changed, 6 insertions, 9 deletions
diff --git a/Bootloaders/Incomplete/MassStorage/Lib/SCSI.c b/Bootloaders/Incomplete/MassStorage/Lib/SCSI.c index a79a4688a..154fe4885 100644 --- a/Bootloaders/Incomplete/MassStorage/Lib/SCSI.c +++ b/Bootloaders/Incomplete/MassStorage/Lib/SCSI.c @@ -307,11 +307,8 @@ static bool SCSI_Command_ReadWrite_10(USB_ClassInfo_MS_Device_t* const MSInterfa */ static bool SCSI_Command_ModeSense_6(USB_ClassInfo_MS_Device_t* const MSInterfaceInfo) { - /* Send an empty header response with the Write Protect flag status */ - Endpoint_Write_8(0x00); - Endpoint_Write_8(0x00); - Endpoint_Write_8(0x00); - Endpoint_Write_8(0x00); + /* Send an empty header response indicating Write Protect flag is off */ + Endpoint_Write_32_LE(0); Endpoint_ClearIN(); /* Update the bytes transferred counter and succeed the command */ diff --git a/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.c b/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.c index 85f274bfa..96dfc555c 100644 --- a/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.c +++ b/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.c @@ -51,8 +51,6 @@ static const FATBootBlock_t BootBlock = .VolumeSerialNumber = 0x12345678, .VolumeLabel = "LUFA BOOT ", .FilesystemIdentifier = "FAT12 ", - .BootstrapProgram = {0}, - .MagicSignature = 0xAA55, }; static FATDirectoryEntry_t FirmwareFileEntry = @@ -138,6 +136,10 @@ static void ReadBlock(const uint16_t BlockNumber) { case 0: /* Block 0: Boot block sector */ memcpy(BlockBuffer, &BootBlock, sizeof(FATBootBlock_t)); + + /* Add the magic signature to the end of the block */ + BlockBuffer[SECTOR_SIZE_BYTES - 2] = 0x55; + BlockBuffer[SECTOR_SIZE_BYTES - 1] = 0xAA; break; case 1: /* Block 1: First FAT12 cluster chain copy */ diff --git a/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h b/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h index 98ea5cdd9..fe8d770b8 100644 --- a/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h +++ b/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h @@ -72,8 +72,6 @@ uint32_t VolumeSerialNumber; uint8_t VolumeLabel[11]; uint8_t FilesystemIdentifier[8]; - uint8_t BootstrapProgram[448]; - uint16_t MagicSignature; } FATBootBlock_t; typedef struct |