func: static void ide_transfer_stop(IDEState *s) s -> end_transfer_func = ide_transfer_stop; s -> data_ptr = s -> io_buffer; s -> data_end = s -> io_buffer; s -> status &= ~DRQ_STAT; buffered_pio_reset ( s ); static inline buffered_pio_reset(IDEState *s) struct pio_buffer * piobuf ; if ( ( unsigned ) s -> drive_serial - 1 < 2 )  piobuf = & buffered_pio_page -> pio [ PIO_BUFFER_IDE_PRIMARY ]; if ( ( unsigned ) s -> drive_serial - 3 < 2 )  piobuf = & buffered_pio_page -> pio [ PIO_BUFFER_IDE_SECONDARY ]; buffered_pio_flush ( piobuf ); static inline buffered_pio_flush(struct pio_buffer *piobuf) IDEState * s = piobuf -> opaque ; uint32_t pointer = piobuf -> pointer ; if ( s != NULL && pointer > 0 )  __buffered_pio_flush ( piobuf , s , pointer ); static inline __buffered_pio_flush(struct pio_buffer *piobuf, IDEState *s, uint32_t pointer) uint8_t * buf = ( uint8_t * ) buffered_pio_page + piobuf -> page_offset ; memcpy ( s -> data_ptr , buf , pointer ); s -> data_ptr += pointer; 