Esempio n. 1
0
File: hio.c Progetto: eltoder/libxmp
uint32 hio_read24l(HIO_HANDLE *h)
{
	switch (HIO_HANDLE_TYPE(h)) {
	case HIO_HANDLE_TYPE_FILE:
		return read24l(h->handle.file); 
	case HIO_HANDLE_TYPE_MEMORY:
		return mread24l(h->handle.mem); 
	default:
		return 0;
	}
}
Esempio n. 2
0
File: hio.c Progetto: kacmem/zxtune
uint32 hio_read24l(HIO_HANDLE *h)
{
	if (HIO_HANDLE_TYPE(h) == HIO_HANDLE_TYPE_FILE) {
		return read24l(h->f); 
	} else {
		ptrdiff_t can_read = CAN_READ(h);
		if (can_read >= 3) {
			uint32 n = readmem24l(h->start + h->pos);
			h->pos += 3;
			return n;
		} else {
			h->pos += can_read;
			return EOF;
		}
	}
}