aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-12-10 18:17:06 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-12-10 18:17:06 +0000
commit4fbfcd6d53cffc5cde141df7afa9045a4987b5cd (patch)
treef5fdbeb7e10d0ab7b1df1c4a6ccaf73f3c734cc3 /hw
parenteeda67786ccfb1016d8bd5977821bc5175ae862a (diff)
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')
-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) {