Amiga.org
Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: Sutty100 on August 15, 2012, 07:23:38 PM
-
So...I gave up trying to connect my Amiga through WiFi, no messing about with passwords etc much simpler! Or so I thought. I have installed the driver and then easynet all supplied by amigakit. When I connect my router lights up an orange light for the Ethernet port the amiga is on. I think orange means 100Mbs so that's a good sign. Although no flickering for activity.
I can't ping the router and I thought I was at the same stage as last time (very stuck)
However I did by chance see the ip address pop up on the connected devices list! It didn't have a device name but it was the correct IP and on the correct Ethernet port it did disappear again though quite quickly.
Any ideas of things to try?
-
Established it shows up in the device list of the router while the amiga is pinging the router. The ping fails however.
-
* Setup a unix PC as a DHCP server with some Ethernet MAC / IP / high level decoder
* See if link is established in both directions
If you get ethernet frames in both directions and received then you have come far. The next step is to make sure ARP tables contain the correct IP. Then you can try out UDP (like NFS) or TCP (like FTP). DNS (using UDP) is quite convinient too (check /etc/resolv.conf).
How does it show up in the device list? as MAC address or IP? I think you could investigate if the Amiga IP stack is setup correctly.
-
Is the router configured for MAC filtering or limited number of IP addresses to assign?
Does another new wireless device that has never used a connection on your router get an IP address - do you have a friend with a phone/laptop etc who could try?
-
I use good old AmiTCP on my A1200 under OS3.x. As it doesn't support DHCP, what I did was to reserve an IP address for it on the router (using the PCMCIA NIC's MAC address) and gave that IP address to AmiTCP's manual configuration. It's proven to be totally reliable over the last few years.
-
Time to write a new TCP stack for Amiga? ;)
Last time I checked all existing stacks has serious, but different flaws..
-
Time to write a new TCP stack for Amiga? ;)
Last time I checked all existing stacks has serious, but different flaws..
Still awaiting Roadshow.
-
According to quick read of the thread "Roadshow for 68K -Needs your support! (http://www.amiga.org/forums/showthread.php?t=54141)" it seems to not happen. And will only be in binary form..
What is needed is something that works for KS1.3 with 68000 and better so it works on stock A500. Source should be included as well with a free license. Modularly based such that many cards can be supported and different types of protocols (arp/MAC, IP, DHCP, TCP, DNS).
The flaws:
* MiamiTCP - no DHCP
* Genesis - bugs, but 30% faster than MiamiTCP, requires MUI
* AmiTCP
* SANA - can't deal with promiscuous mode (broadcast problems too?)
etc..
Oh and you can't fix anything because the source is closed. And if you do fix.. can distribute due license. Author contact is lost in space..
-
What is needed is something that works for KS1.3 with 68000 and better so it works on stock A500.
That's unrealistic for most modern stacks. Miami needs more than 512k with a GUI. Genesis looks like it can do with closer to 256k. The 68000 does not have as good of code density as the 68020+. A useful TCP/IP program is needed on top of that like a browser. Miami will run with 2.x if you choose an older more basic GUI. Genesis probably needs 3.x for Reaction or MUI. A 68000 with <1MB and KS1.3 is barbaric. Please upgrade if you want to run anything besides games.
* Genesis - bugs, but 30% faster than MiamiTCP, requires MUI
Genesis works with Reaction or MUI. The AmigaOS 3.9 version uses Reaction as default. Although AmigaOS 3.9 requires a 68020+, it looks like Genesis is compiled for the 68000 and can use the 68000 AmiTCP kernel. There is a lot of compiler fluff in the main Genesis program. I have a working modified version for the 68020+ that saves about 15k in program size and I haven't even optimized in the 68020+ integer multiplication and division yet. It would probably be possible to save 40k as the optimization is poor. What bugs do you know about? There are 2 bugs directly attributed to Genesis here:
http://lilliput.amiga-projects.net/Abugs.htm
Bug ID=2 turned out to be a Genesis icon format not completely supported by AmigaOS 3.9. The easy fix is loading the Genesis icons into Icon Edit and converting them to normal glow icons. Bug ID=4 looks like the normal behavior of Genesis as intended. Neither are bugs in the programs of Genesis. I did find some very suspicious code in a function starting at $148b0. It looks like this:
lab_148b0:
link a5,#0
move.l d2,-(sp)
move.l (8,a5),d2
jsr lab_232
move.l d2,-(sp)
jsr lab_23a
nop
dc.w 0,$4e55 ;this would be an ori.b #$55,d0 but it's obviously not
dc.w 0 ;this would also be the start of a ori.b with the next function used as the data
lab_148cc:
link a5,#0
move.l d2,-(sp)
...
This function would likely result in a crash (illegal instruction, illegal address or similar) or at least trashed memory as it falls into the next function with the wrong offset. It's strange how such code could be produced by a compiler. I created a fix in my modified Genesis program although I haven't figured out what causes this function to be executed yet. It is called (jsr) from 4 places in the program. Any other known bugs?
-
Genesis / prism device connects first availlable unsecured wlan by defaul.
I'ven't changed that. I use my amigas through my nokia lumia's hot spot, it does nat so I just need to give IP manually from correct IP range 192.168.33.0
Lumia ofcourse supports secure connections, but turning it off takes just 5 seconds.
-
That's unrealistic for most modern stacks. Miami needs more than 512k with a GUI. Genesis looks like it can do with closer to 256k. The 68000 does not have as good of code density as the 68020+. A useful TCP/IP program is needed on top of that like a browser. Miami will run with 2.x if you choose an older more basic GUI. Genesis probably needs 3.x for Reaction or MUI. A 68000 with <1MB and KS1.3 is barbaric. Please upgrade if you want to run anything besides games.
A lot of things can be done with 68000 + 1 MB. But you have to skip the fancy GUI stuff and the upgrade hysteria. Using different binaries for 68000 and 68020 is also common and thus solves the code density problem.
A useful TCP/IP program may be Telnet and FTP, and definitely distributed filesystem(s).
Point is being able to use the same software foundation for all Amiga models. That reduces the number of source code modules to keep track of.
Genesis works with Reaction or MUI. The AmigaOS 3.9 version uses Reaction as default. Although AmigaOS 3.9 requires a 68020+, it looks like Genesis is compiled for the 68000 and can use the 68000 AmiTCP kernel. There is a lot of compiler fluff in the main Genesis program. I have a working modified version for the 68020+ that saves about 15k in program size and I haven't even optimized in the 68020+ integer multiplication and division yet. It would probably be possible to save 40k as the optimization is poor. What bugs do you know about?
MUI seems overkill for basic connectivity. And the bugs I read about on eabime (or something alike it).
I did find some very suspicious code in a function starting at $148b0. It looks like this:
lab_148b0:
link a5,#0
move.l d2,-(sp)
move.l (8,a5),d2
jsr lab_232
move.l d2,-(sp)
jsr lab_23a
nop
dc.w 0,$4e55 ;this would be an ori.b #$55,d0 but it's obviously not
dc.w 0 ;this would also be the start of a ori.b with the next function used as the data
lab_148cc:
link a5,#0
move.l d2,-(sp)
...
This function would likely result in a crash (illegal instruction, illegal address or similar) or at least trashed memory as it falls into the next function with the wrong offset. It's strange how such code could be produced by a compiler. I created a fix in my modified Genesis program although I haven't figured out what causes this function to be executed yet. It is called (jsr) from 4 places in the program. Any other known bugs?
Personally I prefer to have the source code and fix things there rather than to rely on magic binary changes to fix things.
A basic network package would be configured using textfiles. Provide connectivity using driver layer, MAC to IP mapping via ARP, IP routing, and UDP/TCP. Then DHCP and WLAN configuration can be available as applications. Such that Telnet/FTP works. Anything else would be optional.
-
A lot of things can be done with 68000 + 1 MB. But you have to skip the fancy GUI stuff and the upgrade hysteria. Using different binaries for 68000 and 68020 is also common and thus solves the code density problem.
A useful TCP/IP program may be Telnet and FTP, and definitely distributed filesystem(s).
I wouldn't call AmigaOS 3.x + MUI/Reaction, a 68020+ and a couple of MB of ram upgrade hysteria. Most people would call it spartan. Most Amiga users that want TCP/IP want to use a browser and need more than what a basic Amiga 500 offers.
MUI seems overkill for basic connectivity. And the bugs I read about on eabime (or something alike it).
Thanks. I will search EAB. I also forgot about this AmiTCP/Genesis fix which I have been using for a long time:
http://aminet.net/comm/tcp/AmiTCP_PacketFix.lha
Point is being able to use the same software foundation for all Amiga models. That reduces the number of source code modules to keep track of.
Personally I prefer to have the source code and fix things there rather than to rely on magic binary changes to fix things.
I wish these things too but wishing accomplishes nothing.
A basic network package would be configured using textfiles. Provide connectivity using driver layer, MAC to IP mapping via ARP, IP routing, and UDP/TCP. Then DHCP and WLAN configuration can be available as applications. Such that Telnet/FTP works. Anything else would be optional.
I think most users would like a GUI. It would be nice to be able to skip the GUI and edit the text files but that is for advanced users. The GUI should do the input filtering IMO. If you don't want a GUI, AmiTCP is all you need.
-
Wasn't AmiTCP a port of the BSD stack? How feasible is it to do a modern port from the current (or at least a newer) source tree? What would the requirements likely be to run such a port? I can't imagine the basic TCP/IP source has bloated that much - although of course I could very easily be wrong!
-
There's a TCP stack for Commodore 64..
-
These Amiga's were designed in an era when networking was done over a modem; I (and a few others) feel lucky that I can connect my Amiga to my home network, print to network printers, connect to the Internet and even use a semi-modern browser. Compare oranges to oranges, try networking an IBM PC/XT to the internet and use a browser. In my hands, I had to have a 386 with windows 3.1 just to pretend to surf over dial up until 1995 when the rest of the tech came together to make it a common task.