From a368741bf2508b7ca29d9ade73ec1b0f29ae2286 Mon Sep 17 00:00:00 2001 From: bellard Date: Thu, 7 Jul 2005 21:46:09 +0000 Subject: suppressed ppc ide hack - fixed read toc for Darwin/PPC git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1509 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/ide.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'hw/ide.c') diff --git a/hw/ide.c b/hw/ide.c index 31670a1607..f5fd028b82 100644 --- a/hw/ide.c +++ b/hw/ide.c @@ -1118,10 +1118,16 @@ static int cdrom_read_toc_raw(IDEState *s, uint8_t *buf, int msf, *q++ = 0; /* min */ *q++ = 0; /* sec */ *q++ = 0; /* frame */ - *q++ = 0; - *q++ = 0; - *q++ = 0; - *q++ = 0; + if (msf) { + *q++ = 0; + lba_to_msf(q, 0); + q += 3; + } else { + *q++ = 0; + *q++ = 0; + *q++ = 0; + *q++ = 0; + } len = q - buf; cpu_to_ube16(buf, len - 2); @@ -1488,11 +1494,6 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val) unit = (val >> 4) & 1; s = ide_if + unit; ide_if->cur_drive = s; -#ifdef TARGET_PPC - /* XXX: currently a workaround for Darwin/PPC. Need to check - the IDE spec to see if it is correct */ - ide_set_signature(s); -#endif break; default: case 7: -- cgit v1.2.3