New approach to the fabled NES ethernet adapter

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderators: B00daW, Moderators

User avatar
Wookie
Posts: 76
Joined: Sat Mar 01, 2008 5:06 pm
Location: Seattle, WA
Contact:

Post by Wookie »

Oh and the speed of using the Wiznet chip, even in indirect addressing mode would be much faster than the SPI Microchip part. The way the indirect addressing works is that there are four registers at the base of the MM I/O space in the Wiznet chip (thus only needed two address lines from the cart port in addition to A15 on the expansion port). When you want to read/write from/to a memory address in the Wiznet chip's memory space, you write the low byte of the address to the first base register, then you write the high byte of the address to the second base register, and then start reading/writing. If you set the "auto increment" flag in the third base register, the Wiznet chip has an internal address pointer that increments after each read/write.

So if you wanted to read 0x100 bytes from 0x0400 in the Wiznet memory, you set the auto increment flag in the third register and then write 0x00 to the first register, then write 0x04 to the second register, then do 256 reads from the Wiznet chip. The first read will return the byte at 0x0400 and cause the internal address pointer to increment. The second read will return the byte at 0x0401, and so on. Writing is the same way. You set up the address you want to write a block of data to and then you just write the data. I'd be interested to see if it would be possible to use the 2A03's DMA to move packets in and out of the Wiznet chip...that would be really cool.

Anyway, the coding wouldn't be hard at all. The Wiznet chip has tons of internal packet memory so the ISR for handling packet reception can just queue up a packet event in the global event loop and then return. Deferring the packet processing to the main game loop keeps the ISR small and allows for incremental processing to be done while the game keeps going.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Wookie wrote:When you want to read/write from/to a memory address in the Wiznet chip's memory space, you write the low byte of the address to the first base register, then you write the high byte of the address to the second base register, and then start reading/writing. If you set the "auto increment" flag in the third base register, the Wiznet chip has an internal address pointer that increments after each read/write.
Where have I heard this before?
User avatar
Wookie
Posts: 76
Joined: Sat Mar 01, 2008 5:06 pm
Location: Seattle, WA
Contact:

Post by Wookie »

Wookie wrote:I'd be interested to see if it would be possible to use the 2A03's DMA to move packets in and out of the Wiznet chip...that would be really cool.
Not possible. The DMA on the NES is for updating the PPU sprite ram quickly during the vblank. It is hard wired to write to $2004. It's not targetable.
User avatar
Wookie
Posts: 76
Joined: Sat Mar 01, 2008 5:06 pm
Location: Seattle, WA
Contact:

Post by Wookie »

Well, I'm getting farther with Sullins. They have an off-the-shelf part that is so close to what we need except that it is too thick to fit into expansion port. The expansion port opening only has room for a 0.375" thick card edge connector and their part is 0.470" thick. I'm working with them to see if they can adapt their existing part to be thinner. I'm also about to mail them an expansion port connector from my spare NES to get a quote from them.

They wanted quantity estimates and I asked them to give me a quote for quantities of 100, 500, and 1000. I have no idea what this will cost, but I won't be surprised if the 100 quantity order will be several thousand dollars or more, making the part a $20+/piece part. If that is the case, my plan is to contact retrousb.com and/or the sparkfun.com guys to see if they would do the initial buy and resell the parts through their site. I don't care how this thing gets made, I just want a legitimate part that I can use in my product.
User avatar
Wookie
Posts: 76
Joined: Sat Mar 01, 2008 5:06 pm
Location: Seattle, WA
Contact:

Post by Wookie »

I'm mailing the expansion port part and my handmade part that mates with it to the Sullins people this week. Their engineering is going take a look at it and see if they can make one.
User avatar
Wookie
Posts: 76
Joined: Sat Mar 01, 2008 5:06 pm
Location: Seattle, WA
Contact:

Post by Wookie »

So I got a quote back from Sullins. They want $5300 as a setup fee and then I assume there is a per-unit charge on top of that.

Unfortunately, I don't have that kind of cash laying around to throw at making a part for a NES expansion board.

If you guys have any ideas on how to pull together the funds, I'm all ears.

If we could put together an order for 1,000 units, then the startup fee is only $5.30 per unit and any per-unit cost on top of that gives us a total cost per unit. I'm guessing that the per-unit cost wouldn't be more than $10/unit with a 1,000 unit order, but still, that makes the total order $15K+. That makes things difficult.
User avatar
koitsu
Posts: 4203
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Post by koitsu »

I don't think the entire NESdev community as a whole has $5300, so I'd say go looking for another vendor, or ask Kevtris how he gets his PCBs made.
User avatar
Super-Hampster
Posts: 185
Joined: Fri May 12, 2006 4:40 pm

Post by Super-Hampster »

At this point I would work on getting a working prototype made with a hand made connector before I thought about investing so much in the final product.
hyarion
Posts: 164
Joined: Tue May 05, 2009 6:12 pm
Contact:

Post by hyarion »

an ISA (8 or 16bit) connector + a dremel should do the trick
User avatar
B00daW
Posts: 586
Joined: Thu Jan 03, 2008 1:48 pm

Post by B00daW »

I'm pretty sure a lot of people here are broke due to current economic conditions. If you can poll a realistic amount of resources from users here, get quotes from other manufacturers, you could probably haggle down the quote a little; but I'm not sure about significantly.
User avatar
Memblers
Site Admin
Posts: 3901
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Post by Memblers »

I don't think I can put more than $300 into it, and that barely puts a dent in it. Plus $10 - $15 per connector isn't too thrilling. I've always heard connectors were expensive, I never really looked into it though.

I while back I had an idea for a "backplane cart". Of course that absurd, but with some bus buffers and multiple edge connectors (standard ones), you could have multiple cartridges, software selectable. But anyways that's absurd, and hardware like that already exists (though rare).
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

daniela wrote:How can i split one Ethernet cable off a router connected to a modem?
A switch.
Can i attach another router to the cable off the previous router?
Yes, but a switch is probably more efficient.
timofonic
Posts: 2
Joined: Sun Jul 16, 2006 4:12 am

Post by timofonic »

Hello.

What about using WIZnet W5300)?
Supports hardwired TCP/IP protocols : TCP,UDP, ICMP, IPv4, ARP, IGMPv2, PPPoE, Ethernet
- Supports 8 independent SOCKETs simultaneously
- High network performance : Max 80Mbps
- Supports hybrid TCP/IP stack(software and hardware TCP/IP stack)
- IP Fragmentation is not supported
- Internal 128Kbytes memory for data communication(Internal TX/RX memory)
- More flexible allocation internal TX/RX memory according to application throughput
- Supports memory-to-memory DMA (only 16bit Data bus width & slave mode)
- Embedded 10BaseT/100BaseTX Ethernet PHY
- Supports auto negotiation (Full-duplex and half duplex)
- Supports auto MDI/MDIX(Crossover)
- Supports network Indicator LEDs (TX, RX, Full/Half duplex, Collision, Link, Speed)
- Supports a external PHY instead of the internal PHY
- Supports 16/8 bit data bus width
- Supports 2 host interface mode(Direct address mode & Indirect address mode)
- External 25MHz operation frequency (For internal PLL logic, period=40ns)
- Internal 150MHz core operation frequency (PLL_CLK, period=about 6.67ns)
- Network operation frequency (NIC_CLK : 25MHz(100BaseTX) or 2.5MHz(10BaseT))
- 3.3V operation with 5V I/O signal tolerance
- Embedded power regulator for 1.8V core operation
- 0.18 µm CMOS technology
- 100LQFP 14X14 Lead-Free Package
It's the bigger bro of WIZnet W5100, featuring both 8 and 16bit bus, more speed, better TCP engine.

A project like this could be amazing with an usb interface for HID and mass storage and a flexible ram based cart emulator plus some fpga or tiny ARM for mapper emulation. It could be quite nice for gaming and developmentp

Projects using wiznet chips:


Ethernet cartridge for MSX

Spectranet (ethernet for Sinclair ZX Spectrum)


Stuff interesting to get from Spectranet, for example.
A simple network file system (TNFS, Tiny Network Filesystem) designed for 8 bit systems.

Why not make a common network filesystem for all 8bit systems and some 16bit ones too? It could be amazing! :)[/url]
User avatar
Memblers
Site Admin
Posts: 3901
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Post by Memblers »

Well the MSX is lucky, because from what I recall it has 2 cartridge ports. Plus that system and the Spectrum being computers, already have other ways to load programs.

I think most of the interest here is about it being a separate expansion, allowing for cheaper cartridges to be made later rather than having an expensive single cartridge to be permanently stuck with.
yackerena
Posts: 1
Joined: Fri Dec 11, 2009 12:37 am

Post by yackerena »

What is the difference between the free ethernet cable free with the xbox 360 and the wireless network adapter? I am just wondering what is the difference between the Wireless network adapter which is quite expensive and the free ethernet cable that comes free with the xbox 360..They do the same thing right, but why is one so expensive than the other? If I am wrong and they do not do the same thing please tell me!
______________
indian matrimonial
Last edited by yackerena on Wed Dec 16, 2009 3:43 am, edited 1 time in total.
Post Reply