Merge pull request #479 from 86Box/feature/pcnet_final
Final, cleaned up AMD PCnet emulation.
This commit is contained in:
2753
src/network/net_pcnet.c
Normal file
2753
src/network/net_pcnet.c
Normal file
File diff suppressed because it is too large
Load Diff
35
src/network/net_pcnet.h
Normal file
35
src/network/net_pcnet.h
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
/*
|
||||||
|
* 86Box A hypervisor and IBM PC system emulator that specializes in
|
||||||
|
* running old operating systems and software designed for IBM
|
||||||
|
* PC systems and compatibles from 1981 through fairly recent
|
||||||
|
* system designs based on the PCI bus.
|
||||||
|
*
|
||||||
|
* Emulation of the AMD PCnet LANCE NIC controller for both the ISA
|
||||||
|
* and PCI buses.
|
||||||
|
*
|
||||||
|
* Version: @(#)net_pcnet.c 1.0.0 2019/11/09
|
||||||
|
*
|
||||||
|
* Authors: Miran Grca, <mgrca8@gmail.com>
|
||||||
|
* TheCollector1995, <mariogplayer@gmail.com>
|
||||||
|
* Antony T Curtis
|
||||||
|
*
|
||||||
|
* Copyright 2004-2019 Antony T Curtis
|
||||||
|
* Copyright 2016-2019 Miran Grca.
|
||||||
|
*/
|
||||||
|
#ifndef NET_PCNET_H
|
||||||
|
# define NET_PCNET_H
|
||||||
|
|
||||||
|
|
||||||
|
enum {
|
||||||
|
PCNET_NONE = 0,
|
||||||
|
PCNET_ISA = 1, /* 16-bit ISA */
|
||||||
|
PCNET_PCI = 2, /* 32-bit PCI */
|
||||||
|
PCNET_VLB = 3 /* 32-bit VLB */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
extern const device_t pcnet_isa_device;
|
||||||
|
extern const device_t pcnet_pci_device;
|
||||||
|
extern const device_t pcnet_vlb_device;
|
||||||
|
|
||||||
|
#endif /*NET_PCNET_H*/
|
@@ -12,7 +12,7 @@
|
|||||||
* it should be malloc'ed and then linked to the NETCARD def.
|
* it should be malloc'ed and then linked to the NETCARD def.
|
||||||
* Will be done later.
|
* Will be done later.
|
||||||
*
|
*
|
||||||
* Version: @(#)network.c 1.0.12 2019/11/14
|
* Version: @(#)network.c 1.0.13 2019/12/02
|
||||||
*
|
*
|
||||||
* Author: Fred N. van Kempen, <decwiz@yahoo.com>
|
* Author: Fred N. van Kempen, <decwiz@yahoo.com>
|
||||||
*
|
*
|
||||||
@@ -62,6 +62,7 @@
|
|||||||
#include "network.h"
|
#include "network.h"
|
||||||
#include "net_3c503.h"
|
#include "net_3c503.h"
|
||||||
#include "net_ne2000.h"
|
#include "net_ne2000.h"
|
||||||
|
#include "net_pcnet.h"
|
||||||
#include "net_wd8003.h"
|
#include "net_wd8003.h"
|
||||||
|
|
||||||
|
|
||||||
@@ -70,6 +71,8 @@ static netcard_t net_cards[] = {
|
|||||||
NULL },
|
NULL },
|
||||||
{ "[ISA] 3Com EtherLink II (3C503)","3c503", &threec503_device,
|
{ "[ISA] 3Com EtherLink II (3C503)","3c503", &threec503_device,
|
||||||
NULL },
|
NULL },
|
||||||
|
{ "[ISA] AMD PCnet-ISA", "pcnetisa", &pcnet_isa_device,
|
||||||
|
NULL },
|
||||||
{ "[ISA] Novell NE1000", "ne1k", &ne1000_device,
|
{ "[ISA] Novell NE1000", "ne1k", &ne1000_device,
|
||||||
NULL },
|
NULL },
|
||||||
{ "[ISA] Novell NE2000", "ne2k", &ne2000_device,
|
{ "[ISA] Novell NE2000", "ne2k", &ne2000_device,
|
||||||
@@ -88,8 +91,12 @@ static netcard_t net_cards[] = {
|
|||||||
NULL },
|
NULL },
|
||||||
{ "[MCA] Western Digital WD8003E/A", "wd8003ea", &wd8003ea_device,
|
{ "[MCA] Western Digital WD8003E/A", "wd8003ea", &wd8003ea_device,
|
||||||
NULL },
|
NULL },
|
||||||
|
{ "[PCI] AMD PCnet-PCI", "pcnetpci", &pcnet_pci_device,
|
||||||
|
NULL },
|
||||||
{ "[PCI] Realtek RTL8029AS", "ne2kpci", &rtl8029as_device,
|
{ "[PCI] Realtek RTL8029AS", "ne2kpci", &rtl8029as_device,
|
||||||
NULL },
|
NULL },
|
||||||
|
{ "[VLB] AMD PCnet-VL", "pcnetvlb", &pcnet_vlb_device,
|
||||||
|
NULL },
|
||||||
{ "", "", NULL,
|
{ "", "", NULL,
|
||||||
NULL }
|
NULL }
|
||||||
};
|
};
|
||||||
|
@@ -607,7 +607,7 @@ NETOBJ := network.o \
|
|||||||
sbuf.o tcp_output.o udp.o if.o mbuf.o slirp.o tcp_subr.o \
|
sbuf.o tcp_output.o udp.o if.o mbuf.o slirp.o tcp_subr.o \
|
||||||
net_dp8390.o \
|
net_dp8390.o \
|
||||||
net_3c503.o net_ne2000.o \
|
net_3c503.o net_ne2000.o \
|
||||||
net_wd8003.o
|
net_pcnet.o net_wd8003.o
|
||||||
|
|
||||||
PRINTOBJ := png.o prt_cpmap.o \
|
PRINTOBJ := png.o prt_cpmap.o \
|
||||||
prt_escp.o prt_text.o prt_ps.o
|
prt_escp.o prt_text.o prt_ps.o
|
||||||
|
@@ -613,7 +613,7 @@ NETOBJ := network.o \
|
|||||||
sbuf.o tcp_output.o udp.o if.o mbuf.o slirp.o tcp_subr.o \
|
sbuf.o tcp_output.o udp.o if.o mbuf.o slirp.o tcp_subr.o \
|
||||||
net_dp8390.o \
|
net_dp8390.o \
|
||||||
net_3c503.o net_ne2000.o \
|
net_3c503.o net_ne2000.o \
|
||||||
net_wd8003.o
|
net_pcnet.o net_wd8003.o
|
||||||
|
|
||||||
PRINTOBJ := png.o prt_cpmap.o \
|
PRINTOBJ := png.o prt_cpmap.o \
|
||||||
prt_escp.o prt_text.o prt_ps.o
|
prt_escp.o prt_text.o prt_ps.o
|
||||||
|
Reference in New Issue
Block a user