English Amiga Board


Go Back   English Amiga Board > Coders > Coders. Asm / Hardware

 
 
Thread Tools
Old 22 December 2016, 15:06   #1
Emufr3ak
Registered User

 
Join Date: Mar 2016
Location: Thun / Switzerland
Posts: 23
Bsdsocket.Library

I'm playingwith the Idea to implement network support in the Mist AGA Core. I found some tutorial to Program the Mist board on Github (https://github.com/mist-devel/mist-b.../tutorials/soc) and I think it would be doable.

I'd prefer a Solution for which I don't have to write a new Driver for Amiga, but which simulates existing hardware instead.

I looked at different Options and i stumbled over bsdsocket.library from WinUAE. I had a look at some sources but I must admit i require some help. Basicallly I'm searching for the registers where the Ethernet Datastream is saved. Ideally they'd be saved on a fix point in memory. Alternatively I'd need a pointer to a fix point in memory to locate it using Verilog.

Maybe this is much more complicated. Then I'd try my look with the Mist implementation of something like plipbox. There are severe speed limitations with this option though.

Can someone with more insides point me in the right direction?

Many thanks
Emufr3ak is offline  
Old 23 December 2016, 12:46   #2
chaos
Registered User

chaos's Avatar
 
Join Date: Mar 2013
Location: Slovenia
Posts: 135
Hi,

nice to see people interested in minimig development, welcome!

I think you need to decide how you will connect the ethernet device to minimig/Amiga. IMO it is best to stick to standard Amiga interfaces - either Zorro-like expansion or PCMCIA (I would suggest Zorro). I already tried adding ethernet to the minimig using Zorro, but currently the problem is that the CPU interface is just barely working timing-wise, and it looks like adding another Zorro expansion pushed it over, so the core became very unstable. Rewriting the CPU interface is high on my TODO list, though.

For the driver - if you can find an existing NE2000-compatible card, you could reuse the driver and implement the NE2000 interface in Verilog (something like that is done for the mist ST core), if not, it is easier to write a new driver than trying to do a compatible layer in Verilog. I already looked, and it seems there are no NE2000-like Zorro cards with available drivers for Amiga.

The bsdsocket library in WinUAE is sort of an emulation using PC networking, so I don't think that approach is feasible, but maybe someone more knowledgeable than me can shed some light on this.

If you will need any help, feel free to ask here or on github, and I'll try to help as much as I can.
chaos is offline  
Old 23 December 2016, 13:57   #3
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 45
Posts: 23,662
Yeah, bsdsocket runs on top of Amiga network (sana2) driver. UAE bsdsocket is a special case where bsdsocket runs on top of host OS network API.

Latest WinUAE emulates most common Z2 NIC hardware, if you need IO mapping help between Amiga address space and NIC chip.

Ariadne II is NE2000 based (RTL8019 = NE2000 clone) Z2 board. (X-Surf too but driver uses ISA PNP to configure the chip)
Toni Wilen is online now  
Old 23 December 2016, 21:52   #4
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 3,929
Hydra/Amiganet and ADSG EB920 are also NE2000 lookalikes.
idrougge is offline  
Old 24 December 2016, 10:28   #5
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 45
Posts: 23,662
Quote:
Originally Posted by idrougge View Post
Hydra/Amiganet and ADSG EB920 are also NE2000 lookalikes.
Sort of, they are based on same NIC chipset. NE2000 adds buffer RAM + DMA/Reset ports.

Note that even if DP8390 based NICs appear simpler than NE2000, drivers expect exact behavior of DP8390, including quite long DP8390 datasheet documented initialization/self test sequence. Even single bit wrong: driver reports self test fault and refuses to work. (That took some time to emulate, especially loopback shortcuts that self test use to test CRC generator etc.. Lots of features that are not needed in normal operation.)

NE2000 drivers don't seem to bother with self tests. I guess because most of them are NE2000 "compatible", not compatible
Toni Wilen is online now  
Old 25 December 2016, 11:20   #6
Emufr3ak
Registered User

 
Join Date: Mar 2016
Location: Thun / Switzerland
Posts: 23
I had a look at the Zorro 2 specifications. Unfortunately I think they're beyond my skills. I think I'll stick to the Parallel Port using Plipbox. In a second version a new Interface similar to the parallel port could be created but without its speed limitations.

If someone else wants to have a go with the Zorro Interface even better
Emufr3ak is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Crosscompiling with bsdsocket.library ciVic Coders. General 6 05 January 2016 11:56
winuae bsdsocket.library clauddio support.WinUAE 5 21 July 2015 21:47
FS-UAE and Internet (bsdsocket.library) on Windows elowan support.FS-UAE 11 26 January 2013 20:37
Can't connect with bsdsocket.library error (WinUAE 2.5.0) arti support.WinUAE 12 13 December 2012 21:29
BSDSocket.library error with version 1.5+ Icreadence support.WinUAE 7 28 August 2008 04:16

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 20:21.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Page generated in 0.07085 seconds with 13 queries