Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.sys.apple2.programmer > #1773 > unrolled thread
| Started by | D Finnigan <dog_cow@macgui.com> |
|---|---|
| First post | 2015-07-20 21:19 +0000 |
| Last post | 2015-08-10 14:32 +0000 |
| Articles | 10 — 4 participants |
Back to article view | Back to comp.sys.apple2.programmer
Uthernet II W5100 auto-increment D Finnigan <dog_cow@macgui.com> - 2015-07-20 21:19 +0000
Re: Uthernet II W5100 auto-increment David Schmenk <dschmenk@gmail.com> - 2015-07-20 21:46 -0700
Re: Uthernet II W5100 auto-increment D Finnigan <dog_cow@macgui.com> - 2015-07-21 23:40 +0000
Re: Uthernet II W5100 auto-increment David Schmenk <dschmenk@gmail.com> - 2015-07-29 06:41 -0700
Re: Uthernet II W5100 auto-increment D Finnigan <dog_cow@macgui.com> - 2015-07-30 20:35 +0000
Re: Uthernet II W5100 auto-increment ol.sc@web.de (Oliver Schmidt) - 2015-08-01 14:01 +0000
Re: Uthernet II W5100 auto-increment D Finnigan <dog_cow@macgui.com> - 2015-08-04 23:21 +0000
Re: Uthernet II W5100 auto-increment ol.sc@web.de (Oliver Schmidt) - 2015-08-09 14:27 +0000
Re: Uthernet II W5100 auto-increment spectrumdaddy@nospam.com (Ewen) - 2015-08-10 07:43 +0100
Re: Uthernet II W5100 auto-increment D Finnigan <dog_cow@macgui.com> - 2015-08-10 14:32 +0000
| From | D Finnigan <dog_cow@macgui.com> |
|---|---|
| Date | 2015-07-20 21:19 +0000 |
| Subject | Uthernet II W5100 auto-increment |
| Message-ID | <dog_cow-1437427269@macgui.com> |
I can't get auto-increment for addresses in the W5100 to work. I'm using $03 as the Mode byte. Anyone know? This is really quite a setback! -- ]DF$ The Marina IP stack for Apple II-- http://marina.a2hq.com/
[toc] | [next] | [standalone]
| From | David Schmenk <dschmenk@gmail.com> |
|---|---|
| Date | 2015-07-20 21:46 -0700 |
| Message-ID | <14c20f7e-fc62-46d2-a440-b9f9c3f9bdd3@googlegroups.com> |
| In reply to | #1773 |
On Monday, 20 July 2015 14:21:11 UTC-7, D Finnigan wrote: > I can't get auto-increment for addresses in the W5100 to work. I'm using $03 > as the Mode byte. Anyone know? This is really quite a setback! > > -- > ]DF$ > The Marina IP stack for Apple II-- > http://marina.a2hq.com/ I couldn't get it stable on my home-brew Wiznet card, but I figured it was because of my wiring mess. To get around it, I set the register address before every read/write. Not what I wanted, but it works. Perhaps I did something wrong as well - I use mode $03. Dave...
[toc] | [prev] | [next] | [standalone]
| From | D Finnigan <dog_cow@macgui.com> |
|---|---|
| Date | 2015-07-21 23:40 +0000 |
| Message-ID | <dog_cow-1437522089@macgui.com> |
| In reply to | #1774 |
David Schmenk wrote: > On Monday, 20 July 2015 14:21:11 UTC-7, D Finnigan wrote: >> I can't get auto-increment for addresses in the W5100 to work. I'm using >> $03 >> as the Mode byte. Anyone know? This is really quite a setback! >> > > I couldn't get it stable on my home-brew Wiznet card, but I figured it was > because of my wiring mess. To get around it, I set the register address > before every read/write. Not what I wanted, but it works. That's what the Contiki/ ip65 driver is doing. I am *not* happy about this. :-( I was hoping to get my driver for Marina completed this past weekend, but I stopped when I found I could not get auto-increment to work. -- ]DF$ The Marina IP stack for Apple II-- http://marina.a2hq.com/
[toc] | [prev] | [next] | [standalone]
| From | David Schmenk <dschmenk@gmail.com> |
|---|---|
| Date | 2015-07-29 06:41 -0700 |
| Message-ID | <56f3be4e-10c5-4821-8f02-cad1ee4f5b54@googlegroups.com> |
| In reply to | #1775 |
Does this look familiar? I've not found a hardware solution, but I'm still looking at it. http://wizwiki.net/forum/viewtopic.php?t=110 Dave... On Tuesday, 21 July 2015 16:41:31 UTC-7, D Finnigan wrote: > David Schmenk wrote: > > On Monday, 20 July 2015 14:21:11 UTC-7, D Finnigan wrote: > >> I can't get auto-increment for addresses in the W5100 to work. I'm using > >> $03 > >> as the Mode byte. Anyone know? This is really quite a setback! > >> > > > > I couldn't get it stable on my home-brew Wiznet card, but I figured it was > > because of my wiring mess. To get around it, I set the register address > > before every read/write. Not what I wanted, but it works. > > That's what the Contiki/ ip65 driver is doing. > > I am *not* happy about this. :-( > > I was hoping to get my driver for Marina completed this past weekend, but I > stopped when I found I could not get auto-increment to work. > > -- > ]DF$ > The Marina IP stack for Apple II-- > http://marina.a2hq.com/
[toc] | [prev] | [next] | [standalone]
| From | D Finnigan <dog_cow@macgui.com> |
|---|---|
| Date | 2015-07-30 20:35 +0000 |
| Message-ID | <dog_cow-1438288633@macgui.com> |
| In reply to | #1778 |
David Schmenk wrote: > Does this look familiar? I've not found a hardware solution, but I'm still > looking at it. > > http://wizwiki.net/forum/viewtopic.php?t=110 > Eh, thanks for giving me a new angle to think about... About a year ago (!) I had a basic receive routine working for this thing, so I must have had auto-increment working then. But the odd thing is that I cribbed that code to write the driver for Marina (which currently doesn't have receive since I want the send function written and debugged first) so I'm at a loss as to what's going on. I think (hope?) this is going to be like my last thread with the old Uthernet, where I had my own problem resolved with more tinkering in my code. I sincerely hope this is not a hardware limitation of the Uthernet II, because if it is, we are in BIG trouble. -- ]DF$ The Marina IP stack for Apple II-- http://marina.a2hq.com/
[toc] | [prev] | [next] | [standalone]
| From | ol.sc@web.de (Oliver Schmidt) |
|---|---|
| Date | 2015-08-01 14:01 +0000 |
| Message-ID | <mpijf9$7p9$1@news.albasani.net> |
| In reply to | #1775 |
Hi David, >>> I can't get auto-increment for addresses in the W5100 to work. I'm using >>> $03 >>> as the Mode byte. Anyone know? This is really quite a setback! Mode $03 is correct - and auto-increment is supposed to work. >> I couldn't get it stable on my home-brew Wiznet card, but I figured it was >> because of my wiring mess. To get around it, I set the register address >> before every read/write. Not what I wanted, but it works. Getting auto-increment to work correctly seems to be much harder with the W5100 than with the CS8900A or the LAN91C96. I know of two prototpyes for the C64 both suffering from auto-increment not fully working too. One was even a professionally produced PCB: http://www.forum64.de/wbb3/index.php?page=Attachment&attachmentID=36052&thumbnail=1&embedded=1 >That's what the Contiki/ ip65 driver is doing. Certainly not ! I have no idea how anybody could come to that conclusion ?!? The Contiki / IP65 driver is fully speed-optimized and as such precalculates W5100 buffer wraparounds and partial page transfers in order to end up in tight loops for the actual data transfer. Here's the loop for writing data to the W5100. The "sta data" writes to the W5100 and triggers the auto-increment: : lda (ptr),y sta data iny bne :- inc ptr+1 dex bpl :- rts BTW: There's no need for comments telling me that I could spare one cycle by replacing the indirect zeropage addressing with self modifying code. I already know that ;-) Some additional notes: - Right after verifying that I could successfully initialize the W5100 one of my first test programs was an explicit auto-increment stress test. It writes 8kB of a pattern to the W5100 buffer, reads it back and compares it with the original pattern. - The Contiki / IP65 driver uses auto-increment not only for the actual data transfer but also for programming the W5100. I.e. setting the MAC address in the W5100 looks like this: ldx #$00 ldy #$09 jsr set_addr : lda mac,x sta data inx cpx #$06 bcc :- Or setting two consecutive socket specific registers looks like this: ldy #$00 jsr set_addrsocket0 lda #$44 sta data lda #$01 sta data To summarize: Glenn and I were from the beginning in agreement that a fully working auto-increment is a must-have for the Uthernet II. If he wouldn't have managed to get it working reliably we wouldn't have continued with the W5100! > I am *not* happy about this. :-( > >I was hoping to get my driver for Marina completed this past weekend, but I >stopped when I found I could not get auto-increment to work. Something about your hardware and/or software setup has an issue. By the way: The Contiki / IP65 driver for the W5100 is fully speed-optimized and uses the W5100 in the 'MAC raw mode' bypassing its builtin TCP/IP stack. The goal of this driver is to use the W5100 a drop-in replacement for the CS8900A (and LAN91C96) - and being as fast as those drivers. I additionally wrote a fully size-optimized driver using the W5100 in 'UDP mode': https://github.com/oliverschmidt/ip65/blob/master/supplement/w5100_udp.s That driver makes even more use of the auto-increment for W5100 programming. Every comment "; -> addr is already set" means that auto-increment was used to get/set consecutive W5100 registers. Regards, Oliver
[toc] | [prev] | [next] | [standalone]
| From | D Finnigan <dog_cow@macgui.com> |
|---|---|
| Date | 2015-08-04 23:21 +0000 |
| Message-ID | <dog_cow-1438730607@macgui.com> |
| In reply to | #1781 |
Oliver Schmidt wrote: > > To summarize: Glenn and I were from the beginning in agreement that a > fully working auto-increment is a must-have for the Uthernet II. If he > wouldn't have managed to get it working reliably we wouldn't have > continued with the W5100! > So the Uthernet II cards that he sent out back in March 2014 should have a working auto-increment? That's what I'm using to test. -- ]DF$ The Marina IP stack for Apple II-- http://marina.a2hq.com/
[toc] | [prev] | [next] | [standalone]
| From | ol.sc@web.de (Oliver Schmidt) |
|---|---|
| Date | 2015-08-09 14:27 +0000 |
| Message-ID | <mq7o14$9q7$1@news.albasani.net> |
| In reply to | #1784 |
Hi David, >So the Uthernet II cards that he sent out back in March 2014 should have a >working auto-increment? That's what I'm using to test. I have no insight what cards were sent to whom when. I suggest to get in touch with Glenn via PM. What I can tell you is: - Working auto-increment is considered an obligatory feature for Uthernet II. - Both Uthernet II prototypes Glenn sent to me have working auto-increment. - All drivers I implemented fully rely on auto-increment so every tester providing positive feedback implies that auto-increment fully works for him. Regards, Oliver
[toc] | [prev] | [next] | [standalone]
| From | spectrumdaddy@nospam.com (Ewen) |
|---|---|
| Date | 2015-08-10 07:43 +0100 |
| Message-ID | <1m8xh9q.11fawnga49bgsN%spectrumdaddy@nospam.com> |
| In reply to | #1785 |
Oliver Schmidt <ol.sc@web.de> wrote: > - All drivers I implemented fully rely on auto-increment so every > tester providing positive feedback implies that auto-increment fully > works for him. And simply to confirm what Oliver reports, the auto-increment is also used with the U2 Link Layer for Marinetti, which you can get from my web site. The LL works for me, and I have had no reports from any of the other testers that it doesn't work. Even on the first U2 beta card that I was sent, which had timing issues with some computers, auto-increment worked just fine. Cheers - Ewen http://www.speccie.co.uk
[toc] | [prev] | [next] | [standalone]
| From | D Finnigan <dog_cow@macgui.com> |
|---|---|
| Date | 2015-08-10 14:32 +0000 |
| Message-ID | <dog_cow-1439217226@macgui.com> |
| In reply to | #1790 |
Ewen wrote: > Oliver Schmidt <ol.sc@web.de> wrote: > >> - All drivers I implemented fully rely on auto-increment so every >> tester providing positive feedback implies that auto-increment fully >> works for him. > > And simply to confirm what Oliver reports, the auto-increment is also > used with the U2 Link Layer for Marinetti, which you can get from my web > site. The LL works for me, and I have had no reports from any of the > other testers that it doesn't work. Yes, your LL worked for me on the IIgs. > > Even on the first U2 beta card that I was sent, which had timing issues > with some computers, auto-increment worked just fine. That's what I've got. I'll look over my code, then. Thanks everyone.
[toc] | [prev] | [standalone]
Back to top | Article view | comp.sys.apple2.programmer
csiph-web