Welcome, Guest. Please login or register.

Author Topic: uIP/lwIP for Amiga OS  (Read 21961 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« on: November 09, 2007, 12:09:47 PM »
Very cool!! What are the system requirements?

Quote

Trev wrote:
running a built-in web server.


Are the web pages also built in? Or can you put them into the uIP directory?

Quote

lwIP is quite a bit more complicated, but it's a good candidate for a free and open source replacement for AmiTCP 4, Genesis, Miami, et al.


So, are you going to port that one as well?
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #1 on: November 09, 2007, 09:53:38 PM »
IMHO an interesting target platform is the A600, because it is much more diffiicult to expand than an A1200 or the big box Amigas, plus it also has a PCMCIA slot. This means, plain 68000, 1 MB RAM. ;) I´ll try it out on my 600 when I have a free minute.
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #2 on: November 11, 2007, 07:35:37 PM »
OK, I tried it on my stock A600, but I get a Software Failure. Error: 8000 0003 Task: 0005CAE0.

My A600 (like most of them) is OS 2.1 of course. I don´t know if that is the problem though. Any chance to debug this?
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #3 on: November 12, 2007, 06:06:35 PM »
I tried uIP on my A1200 and it works fine both with cnet.device and prism2.device (wireless).  8-)

How could one track down the problem on the A600? I tried SnoopDOS, but it does not show very much:

Quote

 7     [4] Shell Process  GetVar     work:uip/uip                Alias   Fail
 8     [4] Shell Process  FindVar    work:uip/uip                Alias   Fail
 9     [4] Shell Process  GetVar     _pchar                      Local   Fail
 10    [4] Shell Process  GetVar     _mchar                      Local   Fail
 11    [4] Shell Process  #EXAM_OBJE     63AE,    296C3          DH0     OK  
 12    [4] Shell Process  #PARENT        63AE                    DH0     Fail
 13    [4] Shell Process  #FREE_LOCK     63AE                    DH0     OK  
 14    [4] Shell Process  ChangeDir  DH0:                                    
 15    [4] Shell Process  Lock       work:uip/uip                Read    OK  
 16    [4] Shell Process  *Lock      work:uip/uip                Read    OK  
 17    [4] Shell Process  #LOC_OBJEC        0,    296FA, FFFFFFF DH1     OK  
 18    [4] Shell Process  #EXAM_OBJE     63AE,    17430          DH1     OK  
 19    [4] Shell Process  #FREE_LOCK     63AE                    DH1     OK  


Is there something like truss or strace for Amiga?
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #4 on: November 13, 2007, 08:26:43 AM »
Quote

Trev wrote:
All that said, you might want to verify you're using the correct SANA-II device on your A600, i.e. the 68000 one.


The device is correct since it works fine with AmiTCP 4.0 demo (except that it you can't do much with it without running out of memory).

Quote

I've modified the code quite a bit since I posted the binary, mostly to test things I'll be doing in lwIP (started on that, too).

Sounds great, I really appreciate your work. An open source stack for the Amiga (maybe for all Amiga/Amiga-like platforms one day) would be awesome.
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #5 on: November 14, 2007, 05:41:36 PM »
Quote

Trev wrote:

New executable, no optimization, slightly better output with error codes; and source code:


Still no luck on the A600. Unfortunately, no error message / debug output whatsoever, it simply crashes.

Quote

The base requirements should be a 68000, Exec V36, and a SANA-II ethernet device. It's small enough that it should run under any memory configuration.


68000 with 1MB, exec.library is V37.151.
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #6 on: November 16, 2007, 08:10:56 AM »
Thanks for your effort. I'll try the recompiled version this weekend and tell you how it works.
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #7 on: November 16, 2007, 07:18:30 PM »
Looks like we´re approaching an A600 compatible version!  :-)

The good news: uIP starts up on the A600, yay!
The bad news: I can´t ping it. Looks like it does not correctly use the MAC address of the host which is pinging. You can see the correct MAC of the host in the echo request ("received 102 bytes from ..."), but the reply seems faulty, it says "sending 42 bytes to: ff-ff-ff-ff-ff-ff", which obviously is not the correct MAC of the network card.

The new version works fine on the A1200, no such problem there. Any idea?
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #8 on: November 17, 2007, 07:38:47 PM »
OK, I'm back with more test results...

It looks like the problem is related to cnet.device (or my network card using it). I have to admit that I didn't try to ping the A1200 with cnet.device. After everything successfully worked with my WLAN card, I just checked if uIP also came up correctly with cnet.device -which was the case- and assumed the rest would work also. I didn't try any further because I had no network cable where my A1200 sits. No QA as it should be, I have to admit - shame on me...

Today, I network cabled the A1200 with cnet.device, fired up uIP, tried to ping it and voila: it has the same problem as the A600, it just keeps responding to ff-ff-ff-ff-ff-ff. :roll:

I can't check prism2.device on the A600, because it requires at least OS 3.0... Don't think I haven't tried it nevertheless... I usually don't trust READMEs :-D
But no luck, SetPrism2Defaults crashes the A600.

Quote

Trev wrote:

Does uIP continue to receive data after the "sending..." message, or does it hang? Does it respond to CTRL+C? If it responds to CTRL+C, then SANA-II I/O is hung. If it doesn't repond to CTRL+C, then uIP (or the system itself, if nothing responds) is hung.


It keeps receiving & responding, you can close it with CTRL+C, fire it up again, no problem. It just keeps replying to ff-ff-ff-ff-ff-ff... I can dump the traffic with tcpdump or something when I have time. Maybe some other user can check uIP with cnet.device in the meantime to verify if the problem is related to my card.
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #9 on: November 17, 2007, 09:26:04 PM »
Quote

Trev wrote:
Are you using the latest cnet.device from http://www.g-mb.de/cnet/index_e.html?

No, I had V1.9 beta1. I upgraded to 1.9 but it doesn't help.

Quote
Can you post a dump of the PCMCIA registers for the card?

How do I do that?

Quote

There's also an excellent support matrix at http://www.g-mb.de/pcmcia_e.html.

I know that matrix. I have a Fiberline FL-4680, I was the one who tested it with NetBSD  :-)
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #10 on: November 18, 2007, 03:43:52 PM »
Great job, it works!!! I tried both A1200 and A600, everything fine.

So what's next? Will we see a version that accepts , and as parameters? I've been wanting to have an A600 webserver sitting somewhere in the corner for a long time...  :-D
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #11 on: November 19, 2007, 08:43:53 AM »
Wow, that was quick. I'll test the new version tonight (I hope).

Quote

Trev wrote:
So, now we need to come up with some creative uses for uIP--something better than a silly test web server. A general purpose web server would be fun. One that uses the file system instead of pre-compiled files.


That would be great. Maybe the web server option could also be togglable?!

Quote

I'm still liking the idea of uIP in ROM or flash, but we'd need a SANA-II device that fits in with that scheme as well.


When you say "ROM" you mean Kickstart?! Sounds like a nice experiment. Might also be an option for the Minimig... But for most people (i.e. the classic users), a software solution will be just fine. I'm thinking of a command-line uIP as a tiny "all-in-one" solution and maybe lwIP as a full featured stack with config files that maybe later can be GUI manipulated...

Quote

with enough hacking, I'm sure a clock-port-enabled A500 could be up and running, too. Are there other ethernet options for the A500? ... Looks like there were a few sidecar-style adapters made, but that's no fun. And I guess parallel adapters are out. Serial-to-ethernet is an option, but those devices tend to be microprocessors and firmware that do all the IP work for you and wrap RS-232 or other standards. But with a little creative bridging....


Having all those questions of people in mind that are looking for a way to transfer their ADFs, an A500 version might be useful aswell. I have no idea which hardware could be used though (are there many A500 with clockport out there?)
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #12 on: November 19, 2007, 07:01:55 PM »
Tried the new version, what I can tell you already that it works on my A1200 with prism2.device.  :-)  Didn't try the A600 and cnet.device yet.

Quote

Trev wrote:

It could be, but it's the applications that make it useful.

I was hoping to be able 3rd party apps like ncftp, but that doesn't work (I assume that's the missing bsdsocket.library support you were talking about?). You said that you'd rather implement that in lwIP. What footprint does it have compared to uIP? Will it still work on lo-spec AMIGAs?

Quote

I'll put some work into optimizing performance first.


Hm... yeah, I noticed that my A1200 with 030/50 slows down to an almost unusable state when I run uIP.

Quote

I could add an option for multiple simultaneous receive requests, but dropped packets don't appear to be a problem yet.


I didn't test that long, but no dropped packets appeared in the stats.
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #13 on: November 21, 2007, 08:25:32 AM »
Quote

Trev wrote:
I move stuff back and forth between the PC and the Amiga using floppies.

Time for a good TCP/IP stack, huh?  :lol:
 

Offline Colani1200

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 707
    • Show all replies
Re: uIP 0.1.0 for Amiga OS 3.x
« Reply #14 on: November 21, 2007, 08:05:31 PM »
A600 and cnet.device works fine, but quite a few dropped packets...