|
From: | Fabrice Bellard |
Subject: | Re: [Qemu-devel] NE2000 problem found |
Date: | Wed, 09 Jun 2004 21:43:46 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 |
Mike Nordell wrote:
ne2000_asic_ioport_write: if (s->dcfg & 0x01) { /* 16 bit access */ + assert(s->rcnt >= 2); + assert(s->rsar + 2 <= s->stop); ne2000_mem_writew(s, s->rsar, val); s->rsar += 2; s->rcnt -= 2; } First assert triggered with: s->dcfg: 0x49 s->rcnt: 1 s->rsar: 0x4156 s->stop: 0xc000 What surprises me the most is that it's coming from an outb, not outw. Is this really correct, or is the ne2000 emulation perhaps missing a differentiation between 16- and 8-bit I/O?
It is correct : the size of the transfer is determined by dcfg, not by the width of the I/O instruction.
I'll add *readb/writeb locally, to see if things go better, and report findings/patch.
Can you tell me exactly in which case you have problems with NE2000 ?BTW, did someone find why Windows XP has security problems in QEMU ? It seems related to the networking (the Safe mode without networking works, but not the one with networking), but I don't have enough knowledge of Windows to go further.
Fabrice.
[Prev in Thread] | Current Thread | [Next in Thread] |