Hi,
recently I bought a DWL 650 wireless lan card and it turned out that it is using a new chipset which requires firmware download before the card is used. Before the firmware is downloaded it looks like as if the MAC address cannot be read, It appears as 00:00:...:00 like in your case. To be sure which chipset version your DWL 650 has, check Dlink webpage and see the cards Id on its backside.
If you have a revP version of the DWL 650 (or maybe for other version as well), you can try to to follow the links on
http://linux.junsun.net/intersil-prism/ -> (
http://www.netgate.com/support/prism_firmware/1.4.9.zip) to download the firmware. I think the developers are using here firmware from a prism chipset developement kit. I copied the firmware to the directory linux-wlan-ng-0.2.1-pre20/src/prism2 and renamed them so that they are all small characters. Than I did the make install. The script shared.prism2 seems to download the firmware image into the card, it obviously consists of two parts. I was afraid of breaking the card with a wrong firmware version, but it worked fine for me (Nevertheless I do not know, nor can guarantee, that yours will do as well).
After inserting the card messages appear that the code is now downloaded to the card. In my case that looks like this:
Mar 21 12:55:19 goethe kernel: prism2_cs: no version for "p80211netdev_rx" found: kernel tainted.
Mar 21 12:55:19 goethe kernel: prism2cs_init: prism2_cs.o: 0.2.1-pre20 Loaded
Mar 21 12:55:19 goethe kernel: prism2cs_init: dev_info is: prism2_cs
Mar 21 12:55:19 goethe wland[2244]: wland daemon init successful
Mar 21 12:55:19 goethe wland[2244]: netlink socket opened and bound successfully
Mar 21 12:55:19 goethe kernel: prism2_cs: index 0x01: Vcc 5.0, irq 11, io 0x0200-0x027f
Mar 21 12:55:23 goethe kernel: Writing 2330 bytes to ram @0x7e0000
Mar 21 12:55:23 goethe kernel: Writing 2486 bytes to ram @0x7e0a00
Mar 21 12:55:23 goethe kernel: Writing 2 bytes to ram @0x7e17fe
Mar 21 12:55:23 goethe kernel: PDA Read from 0x007f0000 in EXTDS space.
Mar 21 12:55:25 goethe kernel: Writing 2330 bytes to ram @0x7e0000
Mar 21 12:55:25 goethe kernel: Writing 2486 bytes to ram @0x7e0a00
Mar 21 12:55:25 goethe kernel: Writing 2 bytes to ram @0x7e17fe
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e1800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e2800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e3800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e4800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e5800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e6800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e7800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e8800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7e9800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7ea800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7eb800
Mar 21 12:55:25 goethe kernel: Writing 2458 bytes to ram @0x7ec800
Mar 21 12:55:25 goethe kernel: Writing 4096 bytes to ram @0x7f0800
Mar 21 12:55:25 goethe kernel: Writing 118 bytes to ram @0x7f1800
Mar 21 12:55:25 goethe kernel: Writing 3304 bytes to ram @0x7fe000
Mar 21 12:55:25 goethe kernel: ident: nic h/w: id=0x801d 1.0.0
Mar 21 12:55:25 goethe kernel: ident: pri f/w: id=0x15 1.1.0
Mar 21 12:55:25 goethe kernel: ident: sta f/w: id=0x1f 1.4.9
Mar 21 12:55:25 goethe kernel: MFI:SUP:role=0x00:id=0x01:var=0x01:b/t=1/1
Mar 21 12:55:25 goethe kernel: CFI:SUP:role=0x00:id=0x02:var=0x02:b/t=1/1
Mar 21 12:55:25 goethe kernel: PRI:SUP:role=0x00:id=0x03:var=0x01:b/t=4/4
Mar 21 12:55:25 goethe kernel: STA:SUP:role=0x00:id=0x04:var=0x01:b/t=1/9
Mar 21 12:55:25 goethe kernel: PRI-CFI:ACT:role=0x01:id=0x02:var=0x02:b/t=1/1
Mar 21 12:55:25 goethe kernel: STA-CFI:ACT:role=0x01:id=0x02:var=0x02:b/t=1/1
Mar 21 12:55:25 goethe kernel: STA-MFI:ACT:role=0x01:id=0x01:var=0x01:b/t=1/1
Mar 21 12:55:25 goethe kernel: Prism2 card SN: 111111111111
Mar 21 12:55:31 goethe kernel: p80211knetdev_hard_start_xmit: Tx attempt prior to association, frame dropped.
Mar 21 12:55:31 goethe kernel: p80211knetdev_hard_start_xmit: Tx attempt prior to association, frame dropped.
Mar 21 12:55:31 goethe kernel: linkstatus=ASSOCFAIL (unhandled)
Mar 21 12:55:32 goethe kernel: NET: Registered protocol family 17
Mar 21 12:55:32 goethe kernel: p80211knetdev_hard_start_xmit: Tx attempt prior to association, frame dropped.
Mar 21 12:55:32 goethe kernel: p80211knetdev_hard_start_xmit: Tx attempt prior to association, frame dropped.
Mar 21 12:55:32 goethe kernel: linkstatus=CONNECTED
Now my card shows up with the correct MAC address:
wlan0 Link encap:Ethernet HWaddr 00:0D:88:57:9B:26
inet addr:192.168.0.101 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20d:88ff:fe57:9b26/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9016 errors:0 dropped:0 overruns:0 frame:0
TX packets:12342 errors:0 dropped:4 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11611351 (11.0 MiB) TX bytes:495625 (484.0 KiB)
Interrupt:11 Base address:0x200
Frank