Embedded hosts, mass-storage functions 261—263
Embedded hosts, mass-storage host chip 267—269
Embedded hosts, noncompliant devices 263—266
Embedded hosts, On-The-Go (OTG) devices 260
Embedded hosts, required functions 6
Embedded hosts, software for 267
Embedded hosts, USBwiz 267—269
Endian, little 47 168
Endpoint descriptors 53—54
Endpoints, buffer descriptors, PICMicro 40—43
Endpoints, communications, bulk, description 31—32
Endpoints, communications, bulk, endpoint zero, maximum packet size 47
Endpoints, communications, bulk, number of 51
Endpoints, communications, bulk, PIC18F4550 microcontroller 39—43
Endpoints, communications, bulk, preparing to send data 64—66
Endpoints, communications, bulk, receiving data 67
Endpoints, communications, bulk, sending data 63—64
Endpoints, communications, bulk, sending the CSW 67—68
Endpoints, communications, bulk, transfer management 69—72
Enumeration 28 260—261
EraseCluster function 224
Erasing, clusters 224
Erasing, flash memory 11 14
Erasing, hard drives 11
Erasing, mass-storage devices 11
error checking 29—30
error codes 33 113
Error Correcting Code (ECC) 15
Executable code section, MBR 169
extended partitions 170—172
EZ-HOST 266—267
FAT12 file system 167 185—186
FAT16 file system (see also FAT32; file systems)
FAT16 file system, BIOS parameter block (BPB) 177—179
FAT16 file system, boot code 179
FAT16 file system, boot directory region 180
FAT16 file system, boot sector 176 178—179
FAT16 file system, boot signature 179
FAT16 file system, file allocation table region 179—180
FAT16 file system, file and directory data region 180
FAT16 file system, formatting 175—176
FAT16 file system, media structure 167
FAT16 file system, reserved region 176
Fat32 file system (see also FAT16; file systems)
FAT32 File System Specification 168
FAT32 file system, backup boot sector 184
FAT32 file system, BIOS parameter block (BPB) 181—184
FAT32 file system, boot sector 181—184
FAT32 file system, file allocation table region 184—185
FAT32 file system, file and directory data region 185
FAT32 file system, FSInfo structure 184
FAT32 file system, reserved region 181—184
FATfindEmptyCluster function 198—199
FATread function 192—193
FATReadQueued function 197—198
FATwrite function 194—195
FAT_erase_cluster_chain function 240241
fclose function 257—258
FDMP (flexible disk mode page) 144
fees see licensing.
File allocation table region, FAT16 179—180
File allocation table region, FAT32 184—185
File and directory data region, FAT16 180
File and directory data region, FAT32 185
File entries, directories 202—205
File information, file allocation table (FAT) 191
File Systems (see also FAT16; FAT32)
File systems, cluster chains 188—190
File systems, cluster sizes 185—186
File systems, file allocation table (FAT), data clusters 188—190
File systems, file allocation table (FAT), description 188—190
File systems, file allocation table (FAT), DISK structure 190
File systems, file allocation table (FAT), file information 191
File systems, file allocation table (FAT), FILE structure 191
File systems, file allocation table (FAT), finding empty clusters 198—199
File systems, file allocation table (FAT), finding next file cluster 195—196
File systems, file allocation table (FAT), logical block address (LBA), getting 192
File systems, file allocation table (FAT), reading from 192—193 197—198
File systems, file allocation table (FAT), sequential reads 197—198
File systems, file allocation table (FAT), volume information 190
File systems, file allocation table (FAT), writing to 194—195
File systems, hardware solution 186—187
File systems, media structure 167
File systems, selecting 185—187
File-backed USB storage gadget (FSG) driver 38
File-name field, directories 202
FILEallocate_new_cluster function 227
FILECreateHeadCluster function 225
FILEerase function 241—243
FILEfind function 231—233
FILEget_next_cluster function 195—196
FILEopen function 243—246 250—257
Files, accessing from USB devices 25
files, closing 257—258
Files, clusters, allocating 226—227
Files, clusters, erasing 224
Files, clusters, reserving 225
files, creating 238—239
Files, creating directory entries 234—235
files, deleting 239—243
files, finding 231—233
Files, finding available entries 235—238
files, getting information about 228—231
files, opening 243—246
files, reading from 246—250
Files, writing to 250—257
Fill_File_Object function 228—231
FindEmptyEntries function 235—238
Firmware-controlled ports, SPI 86
First-cluster entry, directories 205
Fixed-format sense data 137
Flash drives, AutoPlay and 77
Flash drives, caching 146
Flash drives, description 3—10
Flash drives, enumerating 260—261
Flash drives, power 30
Flash drives, removable media and 12 139
Flash drives, SCSI commands 132 141 261—263
Flash drives, USBwiz and 269
Flash memory, accessing 9
Flash memory, considerations for using 15—16
Flash memory, controllers supporting 37—38
Flash memory, data reliability 15
Flash memory, definition 13
Flash memory, disadvantages of 14
Flash memory, erasing 11 14
Flash memory, error correcting code (ECC) 15
Flash memory, extending life of 14—15
Flash memory, Multi-level Cell (MLC) 14
Flash memory, NAND flash 14
Flash memory, New SLC 14
Flash memory, NOR flash 14
Flash memory, Old Single-level Cell (SLC) 14
Flash memory, options for 15—16
Flash memory, read/write page size 11
Flash memory, technology 14
Flash memory, verifying read data 15
Flash memory, wear leveling 14—15
Flash-memory cards, as mass-storage devices 7—8
Flash-memory cards, chip-select input 80
Flash-memory cards, clock lines 80
Flash-memory cards, configuring 83—85 88—89
Flash-memory cards, configuring the SPI port 88—89
Flash-memory cards, data lines 80
Flash-memory cards, data transfer, default states 86
Flash-memory cards, data transfer, reading a byte 91—92
Flash-memory cards, data transfer, registers 87—88
Flash-memory cards, data transfer, SPI on PIC18F4550 86—88
Flash-memory cards, data transfer, writing a byte 89—91
Flash-memory cards, definition 5
| Flash-memory cards, example circuit 80—83
Flash-memory cards, firmware-controlled ports 86
Flash-memory cards, host programming 83—86
Flash-memory cards, interface 79—83
Flash-memory cards, Serial Peripheral Interface (SPI) 79—83
Flash-memory cards, signals and power 80
Flash-memory cards, types 5
Flexible disk mode page (FDMP) 144
Floppy drives, bInterfaceSubClass code 52
Floppy drives, FAT12 and 167
Floppy drives, interrupt transfers and 32
Floppy drives, specifications 46 53 132
Format command, Windows 176
FORMAT UNIT command 148—149
Formatting, device storage 148—149
Formatting, FAT16 file system 175—176
Formatting, media 166—168
fread function 247—250
Freescale Semiconductor 79
FSG (file-backed USB storage gadget) driver 38
FSInfo structure, FAT32 file system 184
Functions, Cache_File_Entry 212—217
Functions, Cluster2Sector 192
Functions, CreateFileEntry 238—239
Functions, CreateFirstCluster 226
Functions, CSDRead 116—118
Functions, Delayms 125—126
Functions, DetectSDCard 108
Functions, DOS 8.3 file names 210—211
Functions, EraseCluster 224
Functions, FATfindEmptyCluster 198—199
Functions, FATread 192—193 (see also FATReadQueued function)
Functions, FATReadQueued 197—198 (see also FATread function)
Functions, FATwrite 194—195
Functions, FAT_erase_cluster_chain 240—241
Functions, fclose 257—258
Functions, FILEallocate_new_cluster 227
Functions, FILECreateHeadCluster 225
Functions, FILEerase 241—243
Functions, FILEfind 231—233
Functions, FILEget_next_cluster 195—196
Functions, FILEopen 243—246 250—257
Functions, Fill_File_Object 228—231
Functions, FindEmptyEntries 235—238
Functions, fread 247—250
Functions, fwrite 251—257
Functions, IncrementTimeStamp 220—222
Functions, IsMeaningfulCBW 59—60
Functions, IsValidCBW 59
Functions, IsWriteProtected 125
Functions, LFNChecksum 209—210
Functions, LoadDirAttrib 217—219
Functions, MediaInitialize 126—129
Functions, memcopypgm2ram 142
Functions, MSDCommandHandler 160—161
Functions, MSDDataIn 64—66
Functions, MSDDataOut 67
Functions, MSDInquiryHandler 142
Functions, MSDModeSenseHandler 145
Functions, MSDReadHandler 149—153
Functions, MSDRequestSenseHandler 147
Functions, MSDTestUnitReadyHandler 148
Functions, MSDWriteHandler 155—158
Functions, OpenSPI 126—129
Functions, PopulateEntries 234—235
Functions, PrepareCSWData 62
Functions, ProcessIO 69—72
Functions, RAMread 192—193 247—250
Functions, RAMwrite 194—195
Functions, ReadMedia 91
Functions, ReadSPI 91
Functions, ResetSenseData 138
Functions, SectorRead 118—120
Functions, SectorWrite 120—123
Functions, SendCSW 67—68
Functions, SendData 63—64
Functions, SendSDCCmd 113—118 121—123
Functions, Socketlnitialize 108
Functions, USBDriverService 63
Functions, WriteSPI 90
Functions, Write_File_Entry 219—220
fwrite function 251—257
Get Max LUN request 46
GHI Electronics 267
Global Engineering Documents 132
handshake packets 32—33
Hard drives, as mass-storage devices 8
Hard drives, ATA with Packet Interface (ATAPI) hard drives, interface 13
Hard drives, capacity 8—9
Hard drives, controllers 38
Hard drives, cost effectiveness 8
Hard drives, cylinders 8—9
Hard drives, definition 5
Hard drives, drive mechanisms 8—9
Hard drives, erasing data 11
Hard drives, heads 8—9
Hard drives, interfaces 13
Hard drives, Parallel AT Attachment (ATA) interface 13
Hard drives, physical description 8—9
Hard drives, platters 8—9
Hard drives, sectors 8—9
Hard drives, technology 13
Hard reset 163
Hardware interface, mass-storage 12
Hardware requirements, devices 4—5
Heads, hard drive 8—9
Hirose connectors 107
Hosts, and devices 26—27
Hosts, bus traffic management 29
Hosts, connecting to 27
Hosts, data exchange 30
Hosts, definition 3 26
Hosts, device detection see enumeration
Hosts, device power 28
Hosts, embedded see embedded hosts
Hosts, enumeration 28
Hosts, error checking 29
Hosts, flash-memory cards, accessing 83—86
Hosts, master 3
Hosts, media change detection 162—163
Hosts, MultiMediaCard-bus 18
hosts, multiple 3—4
Hosts, responsibilities 27—29
Hosts, SPI interface 18
Hosts, UNIT ATTENTION condition 161162
I/O cards 16
IConfiguration field 50
IDE (Integrated Drive Electronics) interface see Parallel AT Attachment (ATA) interface
IdProduct field 48
IdVendor field 48
IInterface field 53
IManufacturer field 48
INCITS Technical Committee 132
IncrementTimeStamp function 220—222
Index, MultiMediaCard command 94
Informational exception control mode page 144
INQUIRY command 139—142 262 265
Interface descriptor 51—53
Interrupt transfers 32
Intoto 267
IProduct field 49
ISerialNumber field 49
IsMeaningfulCBW function 59—60
Isochronous transfers 32
ISP1583 Hi-Speed Universal Serial Bus peripheral 38
IsValidCBW function 59
IsWriteProtected function 125
JumpDrive see flash drives.
Jungo Ltd. 38 267
LFNChecksum function 209—210
|