Image Map Image Map
Page 1 of 12 1234511 ... LastLast
Results 1 to 10 of 111

Thread: Feeling lucky, is the 3c509B compatible with 8088 using NE1000 drivers?

  1. #1

    Default Feeling lucky, is the 3c509B compatible with 8088 using NE1000 drivers?

    This probably been discussed many times, the 3c509B will work in a 286 8-bit ISA slot however the driver require 286.
    I did try it with NE1000.com driver and it will load i have no idea if it connects with the actual board though, it even will load brutmans? tcpdrv.exe, ipxodi.com and lsl.com.

    But i do not manage to connect and ping my D-link router unfortunatly i lack twisted pair to try connect another computer directly.
    So i was thinking maybe someone more knowledgable can try a 3c509b in a 8088 and see if the driver actually connect with card.

    There is many of us 8088, 8086 owners who lack a NIC and a 3c509b in NE1000 mode maybe an easy way to get them up on internet.
    But does it really work, the drivers loaded and configured for sure, but i can not reach the router.
    I use NE1000.COM version 11.5.3
    JT

  2. #2

    Default

    Quote Originally Posted by JT64 View Post
    This probably been discussed many times, the 3c509B will work in a 286 8-bit ISA slot however the driver require 286.
    I did try it with NE1000.com driver and it will load i have no idea if it connects with the actual board though, it even will load brutmans? tcpdrv.exe, ipxodi.com and lsl.com.

    But i do not manage to connect and ping my D-link router unfortunatly i lack twisted pair to try connect another computer directly.
    So i was thinking maybe someone more knowledgable can try a 3c509b in a 8088 and see if the driver actually connect with card.

    There is many of us 8088, 8086 owners who lack a NIC and a 3c509b in NE1000 mode maybe an easy way to get them up on internet.
    But does it really work, the drivers loaded and configured for sure, but i can not reach the router.
    I use NE1000.COM version 11.5.3
    JT
    Can a packet driver load without a compatible NIC in the computer?

  3. #3

    Default

    Tried the NE1000.COM version 11.5.3 packet driver with a 3c509B. It loads but reports a wrong MAC address and mTCP can't access to the network.

  4. #4

    Default

    It's not going to work.

    Think of a packet driver as the device driver for the Ethernet card. It has to match the Ethernet card, or at least be in the same "family" of chipset that the Ethernet card uses to have a chance. You don't expect a Tseng Labs VGA card to use the driver from an S9 video card, do you?

    The 3Com 3C509B (Etherlink III) is a good card, but it is not an NE1000 or an NE2000.

    If a packet driver loads it might find some piece of hardware willing to talk to it at the I/O ports it is using. Most Ethernet cards for older machines just use I/O ports and an IRQ. Just because you got a MAC address doesn't mean it worked, or that it is even talking to an Ethernet card.

    Compare the MAC address reported by the packet driver to the MAC address printed on the card. If you can't find a sticker on the card with the MAC address then the MAC address reported by the packet driver should at least match the range assigned to the manufacturer of the card. All Ethernet cards have unique addresses, assigned by a central entity. Here is a link to a web site that allows you to look them up:

    http://standards.ieee.org/develop/re...ui/public.html

    The key is the first three octets of the MAC address. Those should match in the manufacturer database. For example, a card that starts with "00-01-01" belongs to 3Com. (If you search for 3Com you will find they have many different assignments, as they have sold a boatload of cards over the years.)

    Even with the correct I/O ports selected you have to ensure that the IRQ is chosen correctly, or you will be able to send but not receive packets.

  5. #5

    Default

    I know this is a little off topic, but will the ne2000 work in an 8 bit slot and a v20?
    -Marcoguy

  6. #6

    Default

    So if I understand, we must use the 3c509.com packet driver but it only works in 286+ machines. Why this requirement? Does it use protected mode?

  7. #7
    Join Date
    Oct 2011
    Location
    Durham, Durham, United Kingdom
    Posts
    108

    Default

    My guess is that it uses assembly instructions not present in the 8080/8086 isa.

  8. #8

    Default

    The ASM source code of the 3c509.com packet driver is available inside this zip file: http://www.crynwr.com/drivers/3c509116.zip

  9. #9
    Join Date
    Oct 2011
    Location
    Durham, Durham, United Kingdom
    Posts
    108

    Default

    In that case it could probably be modified to work (by someone more knowledgeable on x86 assembly than me!) on 8086.

  10. #10

    Default

    I see that the driver has different input routines for 286 and 386:

    Code:
    	cmp	is_386,0
    	jne	io_input_386
    io_input_286:
    	push	cx
    	shr	cx,1
    	rep	insw
    	pop	cx
    	jnc	io_input_286_1		;go if the count was even.
    	insb				;get that last byte.
    	in	al,dx			;and get the pad byte.
    	test	cx,2			;even number of words?
    	jne	io_input_done		;no.
    	in	ax,dx			;yes, get the pad word.
    	jmp	short io_input_done
    io_input_286_1:
    	test	cx,2			;odd number of words?
    	je	io_input_done		;no.
    	in	ax,dx			;yes, get the pad word.
    	jmp	short io_input_done
    
    io_input_386:
    	.386
    	push	eax
    	push	cx			;first, get all the full words.
    	shr	cx,2
    	rep	insd
    	pop	cx
    	test	cx,3			;even number of dwords?
    	je	io_input_386_one_byte	;yes.
    	in	eax,dx			;no, get the partial word.
    	test	cx,2			;a full word to be stored?
    	je	io_input_386_one_word
    	stosw				;yes, store it,
    	shr	eax,16			;and move over by a word.
    io_input_386_one_word:
    
    	test	cx,1			;a full byte to be stored?
    	je	io_input_386_one_byte
    	stosb				;yes, store it.
    io_input_386_one_byte:
    	pop	eax
    	.286
    
    io_input_done:
    Maybe if someone implements a specific 8088 input routine...

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •