10 September 2009, 10:43 | #1 |
Linux snob
Join Date: Sep 2008
Location: Monkey Island
Posts: 997
|
Ethernet card hardware emulation
Is CDROM (ISO9660) support or networking planned for WinUAE sometime?
What would be the best strategy for implementing CDROM: IDE, SCSI or something else? How about networking? There could a tap-device to the outside. But what bus should that be attached to? |
10 September 2009, 11:16 | #2 | |||
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Quote:
(btw, cdrom logical format, ISO9660, has nothing to do with emulation) Quote:
Quote:
|
|||
10 September 2009, 12:05 | #3 |
Thalion Webshrine
Join Date: Jan 2004
Location: Oxford
Posts: 14,331
|
PCMCIA would probably be 3COM 3C589?
There are also AmigaOS drivers with source code. http://aminet.net/package/driver/net/3c589 Last edited by alexh; 10 September 2009 at 12:15. |
10 September 2009, 12:10 | #4 | |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Quote:
EDIT: the point I am making: I am only going to emulate single network card in hardware. It MUST be common one that is supported by every Amiga compatible OS. |
|
10 September 2009, 12:15 | #5 |
Thalion Webshrine
Join Date: Jan 2004
Location: Oxford
Posts: 14,331
|
Z2 would perhaps be AMD Am7990 (A2065, AE2000 & Ariadne I) or Realtek RTL8019AS (Ariadne II & X-Surf)?
There are linux drivers & AmigaOS drivers for both. http://www.kneuro.net/cgi-bin/lxr/ht...iadne.c?a=m68k http://www.kneuro.net/cgi-bin/lxr/ht...adne2.c?a=m68k http://www.kneuro.net/cgi-bin/lxr/ht...a2065.c?a=m68k Last edited by alexh; 10 September 2009 at 12:20. |
10 September 2009, 14:40 | #6 | |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Quote:
Final confirmation needed: Does all Amiga compatible operating systems, all AmigaOS TCP/IP stacks support A2065? (emulated Z2 card in non-Z2 slot Amiga is not a problem and won't cause any problems) EDIT: does any m68k Linux distribution support net install? (without cdrom) |
|
10 September 2009, 14:59 | #7 | |
Registered User
Join Date: Jan 2002
Location: Germany
Posts: 6,985
|
Quote:
Miami also supports it natively (z2-am7990.mni). |
|
10 September 2009, 15:36 | #8 | |
Registered User
Join Date: Aug 2009
Location: UK
Posts: 23
|
Quote:
Source code is available too, of course. |
|
10 September 2009, 19:35 | #9 | ||
Linux snob
Join Date: Sep 2008
Location: Monkey Island
Posts: 997
|
Quote:
Quote:
EDIT: Yes, I see. Just wanted to distinguish it from CDTV and CD32. |
||
10 September 2009, 20:27 | #10 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Great, A2065 it is (someday or soon. not sure yet )
|
12 September 2009, 10:59 | #11 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
We may have a problem.. Does A2065 drivers accept user configured MAC address? Default / "ROM" MAC seems to be 00:08:01:xx:xx:xx where last three xx's are autoconfig last 3 serial number bytes.
Solution 1: driver must accept real MAC address (same as real card or nothing will work) but this is something user should not need to do. I think manually entered MAC address was something you were never ever allowed to do at that time... (at least officially) Solution 2: examine all sent and received packets and replace "fake" MACs with real MACs and vice versa. There shouldn't be too many different ethernet packet types (at least packets that Amiga software uses) that need adjustments but this would be usual megaboring programming task.. (but it would be also completely transparent) |
12 September 2009, 17:43 | #12 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
A2065 emulation done, that was (too) easy and simple task, biggest problem was MAC translation for DHCP support (Ethernet frames, ARP and DHCP only supported in MAC translation)
http://www.winuae.net/files/b/winuae.zip Add "a2065=<mac or name of physical device, check the log for names>" to config file. (XX:XX:XX:XX:XX:XX format) No gui support yet. WinPCap required (uses same interface as uaenet) Emulated device's MAC (only visible to emulation) is always 00:80:01:xx:yy:zz where xx:yy:zz are last 3 numbers of real physical device's MAC. Not supported: multicast (always dropped), loopback tests, most error condications (checksums, collisions, other receive/send related errors) can never happen (who cares?) Do not ask, do not touch if you don't know how to configure Amiga and/or Linux networking. Do not ask about winpcap either. |
12 September 2009, 20:56 | #13 |
Linux snob
Join Date: Sep 2008
Location: Monkey Island
Posts: 997
|
Please tell me you didn't do this in one afternoon.
Things get a little complicated, now. Maybe I'll have to install XP in VirtualBox before testing networking. Wine seems not to work correctly for networking, or maybe I'm just acting stupid? I'll see... |
12 September 2009, 21:16 | #14 | |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Few days of datasheet reading and other research, 2 days of coding. I said it was too easy
Quote:
btw, second NIC only for Amiga emulation is recommended, two OS's accessing same card can cause interesting problems.. (especially if using DHCP) Also make sure Windows IPv4 and IPv6 are both disabled in second card. |
|
13 September 2009, 00:34 | #15 |
Registered User
Join Date: Aug 2001
Location: Connecticut USA
Posts: 617
|
A2065 emulation & MAC addresses
Toni - here's a little background information on MAC addresses.
IEEE assigns MAC addresses. The first three bytes are the manufacturer number, 00:80:01 is probably AMD's number. The manufacturer sets the last three bytes, and they must be unique for *every* device the manufacturer makes. If they make more than 16million devices, they need to get a new manufaturer number from IEEE. This is so that every single MAC of every device on your network is different. Ethernet switches make switching decisions based on a frame's destination MAC address, and constantly build a list on each port of every source MAC address seen at that frame. Needless to say, if you have devices on different ports with the same MAC address, you will have serious network problems. This is also why nobody in their right mind exposes a NIC's ability to choose a new MAC address to the user. Your proposed solution (00:80:01:XX:XX:XX on emulated side only) seems like the best compromise between compatibility and network safety. Edit: Just saw that last part of your last post. That would definitely solve the problem. It is probably best to pass the real MAC address thru to the Amiga side, as I would be pissed if my network software was lying to me about the MAC address. Add-in 10/100/1000 NIC's are incredibly cheap, anyways. Last edited by Shadowfire; 13 September 2009 at 00:43. |
13 September 2009, 09:20 | #16 |
Linux snob
Join Date: Sep 2008
Location: Monkey Island
Posts: 997
|
Well, if nobody intends to build a WinUAE<->WinUAE network, then one fixed MAC-Address would be sufficient.
We might take it from the Ethernet card I stored in a box in my basement. |
13 September 2009, 09:57 | #17 | |||
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Quote:
Quote:
Quote:
Hmm.. I guess using 00:80:01:XX:XX:XX in outside world would work if nic is set to promiscuos mode, not that it would solve any mac collision problems, user could have networked Amiga with real A2065 and there is only 16M mac adress space Better have collisions inside emulation only than in outside world where it can cause major problems. and after all, this is emulation, better keep emulation as compatible as possible, including mac address |
|||
13 September 2009, 14:30 | #18 |
Linux snob
Join Date: Sep 2008
Location: Monkey Island
Posts: 997
|
I'm not quite sure on the design of ethernet emulation. You take packages from inside WinUAE and copy them 1:1 on a real NIC?
Why don't you do something like qemu: dump the traffic to a software TAP device so the user can bridge that to his NIC, if neccessary? |
13 September 2009, 15:24 | #19 | |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,502
|
Quote:
EDIT: it was due to complex configuration and lack of promiscuous mode support (receive all packets, not just those that matches MAC or broadcast) Last edited by Toni Wilen; 13 September 2009 at 20:00. |
|
13 September 2009, 20:36 | #20 |
Linux snob
Join Date: Sep 2008
Location: Monkey Island
Posts: 997
|
Did a bit of googling and found that WinPcap seems a cool choice for Windows. It can use the loopback device instead of a real NIC, too. It's just that I'm used to TAP.
I'm certainly not going to install another NIC. I got a laptop. Here's my plan: Setup two virtual machines in VirtualBox, connected via private/virtual network. One has Windows, WinUAE and WinPcap, the other runs Linux. Installing emulated NICs is less problematic. Maybe that will result in a WinUAE network. Last edited by gilgamesh; 13 September 2009 at 20:46. |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
PCMCIA ethernet card on the A1200 | Fabie | support.Hardware | 12 | 20 November 2019 16:10 |
wanted: Amiga Ethernet Card | plasmar | MarketPlace | 1 | 07 April 2008 08:26 |
Hydra ZII ethernet card | jhaifley | support.Hardware | 11 | 06 October 2006 09:52 |
[Wanted] Ethernet network card | berthos | MarketPlace | 0 | 14 April 2006 12:09 |
Ethernet card | Frootloop | project.SPS (was CAPS) | 8 | 10 August 2003 23:54 |
|
|