summaryrefslogtreecommitdiffstats
path: root/hw/ide.c
diff options
context:
space:
mode:
authoraurel322008-12-10 19:17:06 +0100
committeraurel322008-12-10 19:17:06 +0100
commit4fbfcd6d53cffc5cde141df7afa9045a4987b5cd (patch)
treef5fdbeb7e10d0ab7b1df1c4a6ccaf73f3c734cc3 /hw/ide.c
parenttarget-sh4: Add SH bit handling to TLB (diff)
downloadqemu-4fbfcd6d53cffc5cde141df7afa9045a4987b5cd.tar.gz
qemu-4fbfcd6d53cffc5cde141df7afa9045a4987b5cd.tar.xz
qemu-4fbfcd6d53cffc5cde141df7afa9045a4987b5cd.zip
IDE: Implement SEEK command
Signed-off-by: Justin Chevrier <theburner1@yahoo.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5972 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/ide.c')
-rw-r--r--hw/ide.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/hw/ide.c b/hw/ide.c
index 32cfe20dbb..69ab773e6b 100644
--- a/hw/ide.c
+++ b/hw/ide.c
@@ -2324,6 +2324,13 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val)
s->status = READY_STAT;
ide_set_irq(s);
break;
+ case WIN_SEEK:
+ if(s->is_cdrom)
+ goto abort_cmd;
+ /* XXX: Check that seek is within bounds */
+ s->status = READY_STAT | SEEK_STAT;
+ ide_set_irq(s);
+ break;
/* ATAPI commands */
case WIN_PIDENTIFY:
if (s->is_cdrom) {