IDE ATA IDENTIFY WORD 106 The code at line 202 in hw/ide/core.c (https://git.qemu.org/?p=qemu.git;a=blob;f=hw/ide/core.c;#l201) hard codes bit 13 set. However, get_physical_block_exp() can and may return 0, which is a valid response. If get_physical_block_exp() does return zero, bit 13 should not be set. ATAPI8 states (Section 7.17.7.73): "Bit 13 of word 106 shall be set to one to indicate that the device has more than one logical sector per physical sector" and gives the examples: Bits (3:0): 0 = 2^0 = 1 logical sector per physical sector Bits (3:0): 1 = 2^1 = 2 logical sector per physical sector Bits (3:0): 2 = 2^2 = 4 logical sector per physical sector Bits (3:0): 3 = 2^3 = 8 logical sector per physical sector Therefore, if bit 13 is set, bits 3:0 must be greater than zero. If get_physical_block_exp() returns zero then there is a 1:1 ratio and bit 13 must be 0. Just my opinion. Thanks, Ben