1.I konw that the io base is between 0x280 and 0x380,you can configure it in virtual machine.
Code: Select all
#define NE_NOVELL_NIC_OFFSET 0x00
#define NE_NOVELL_ASIC_OFFSET 0x10
unsigned short asic_addr; // ASIC I/O bus address
unsigned short nic_addr; // NIC (DP8390) I/O bus address
iobase=0x280;
ne->iobase = iobase;
ne->nic_addr = ne->iobase + NE_NOVELL_NIC_OFFSET;
ne->asic_addr = ne->iobase + NE_NOVELL_ASIC_OFFSET;
2.and there are pages of registers ,using ps0(=0 or 1) and ps1(=0 or 1) to address them,but i see the code like this:
Code: Select all
_outp(ne->nic_addr + NE_P0_CR, NE_CR_RD2 | NE_CR_STA);
................
................
_outp(ne->nic_addr + NE_P1_CURR, ne->next_pkt);
thank you in advance