diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-07-07 21:46:09 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-07-07 21:46:09 +0000 |
commit | a368741bf2508b7ca29d9ade73ec1b0f29ae2286 (patch) | |
tree | e666b63af98e6e052c892de3c927de1d1b5ec01f /hw | |
parent | 61271e5c2d3eff4cc0c4845be291172c2015b6f1 (diff) |
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
Diffstat (limited to 'hw')
-rw-r--r-- | hw/ide.c | 19 |
1 files changed, 10 insertions, 9 deletions
@@ -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: |