ppgrainbow Posted February 27, 2013 Posted February 27, 2013 Okay, I recently set up a Windows 95 OSR2 VM under Bochs 2.6 with 64 MB of system memory allocated to the VM.I installed the OS and applied the updates associated with it, including Internet Explorer 5.5 and I already have the NE2000 network card emulation set up.But for some reason, even if I have networking setup under Bochs, the network card in the VM doesn't work. The networking is set to DHCP mode and Bochs is failing to detect a IP address and a subnet mask (using winipcfg). The IP configuration is reading:IP address: 0.0.0.0Subnet Mask: 0.0.0.0Default Gateway: (none)DHCP Server: 255.255.255.255When I go to Network options in the Control Panel, I end up having to set the IP address configuration manually as follows:IP address: 10.0.2.40Subnet Mask: 255.255.255.0Default Gateway: 10.0.2.2DHCP Server: 10.0.2.2And still, it doesn't work.I can't even browse the internet using Internet Explorer at all...all I get is a "This page cannot be displayed".I enabled the logs to see what could be the problem here and this is what I found and the logs have to do with the NE2K device.The full version of the logs can be found here: Here's a snippet:00000252000e[NE2K ] device not ready to receive data00006048000e[NE2K ] device not ready to receive data00078624000e[NE2K ] device not ready to receive data00091476000e[NE2K ] device not ready to receive data00100044000e[NE2K ] device not ready to receive data00105840000e[NE2K ] device not ready to receive data00125748000e[NE2K ] device not ready to receive data00137844000e[NE2K ] device not ready to receive data00152208000e[NE2K ] device not ready to receive data00172872000e[NE2K ] device not ready to receive data00208908000e[NE2K ] device not ready to receive data00230580000e[NE2K ] device not ready to receive data00235620174e[NE2K ] DCR write, loopback mode selected00235620174i[NE2K ] DCR write - AR set ???00235620201i[NE2K ] RCR write, monitor bit set!00235774446i[NE2K ] TCR write, loop mode 1 not supported00238339581i[NE2K ] TCR write, loop mode 1 not supported00238339724i[NE2K ] Physical address set to b0:c4:20:00:00:0101387833607i[NE2K ] TCR write, loop mode 1 not supportedHere's the current configuration of what the Windows 95 Bochs VM looks like: Is there any way to get networking working properly under Bochs? I already installed the latest version of WINPCAP and configured Bochs with the Novell 2000 compatible adapter settings that niclister.exe showed me, but it turns out that NE2000 is not properly initalised.
LoneCrusader Posted February 27, 2013 Posted February 27, 2013 (edited) Windows 95 OSR2 supports, but does not install the TCP/IP protocol by default, so it does not know how to to obtain a DHCP address. You have to add the protocol to the Network options screen during the install. You should be able to add it manually in the Network Control Panel. Edited February 27, 2013 by LoneCrusader
ppgrainbow Posted February 27, 2013 Author Posted February 27, 2013 (edited) Windows 95 OSR2 supports, but does not install the TCP/IP protocol by default, so it does not know how to to obtain a DHCP address. You have to add the protocol to the Network options screen during the install. You should be able to add it manually in the Network Control Panel.Thank you for telling me. The TCP/IP protocol has already been installed and it still failed to obtain a DHCP address. Instead, I had to enter the IP address manually and for some reason, Windows 95 networking still doesn't work under Bochs.I did a search for "TCR write, loop mode x not supported" and networking related problems in Bochs and it turns out that users are seriously having a hard time getting networking working properly under Bochs.The VM was setup on the Windows Vista Home Premium host OS, btw.Update: I ran the Bochs Debugger (bochsdbg.exe), entered "info device 'ne2k'" in regards to the state of the NE2000 card and this is what I found. The data below is pretty complicated and hard to decipher:NE2K registers, page 0----------------------CR (Command register): stop=0 start=1 tx_packet=0 rdma_cmd=4 pgsel=0PSTART = Page start register = 4cPSTOP = Page stop register = c0Local DMA address = 00 00BNRY = Boundary Pointer = 0xa0TSR (Transmit Status Register), read-only: tx_ok=1 reserved=0 collided=0 aborted=0 no_carrier=0 fifo_ur=0 cd_hbeat=0 ow_coll=0TPSR = Transmit Page Start = 0x46NCR = Number of Collisions Register (read-only) = 0x00TBCR1,TBCR0 = Transmit Byte Count = 00 f3FIFO = 00ISR (Interrupt Status Register): pkt_rx=0 pkt_tx=0 rx_err=0 tx_err=0 overwrite=0 cnt_oflow=0 rdma_done=0 reset=0CRDA1,0 = Current remote DMA address = a0 4eRSAR1,0 = Remote start address = a0 04RCBR1,0 = Remote byte count = 00RSR (Receive Status Register), read-only: rx_ok=1 bad_crc=0 bad_falign=0 fifo_or=0 rx_missed=0 rx_mbit=1 rx_disabled=0 deferred=0RCR (Receive Configuration Register): errors_ok=0 runts_ok=0 broadcast=1 multicast=1 promisc=0 monitor=0 reserved=0CNTR0 = Tally Counter 0 (Frame alignment errors) = 00TCR (Transmit Configuration Register): crc_disable=0 loop_cntl=0 ext_stoptx=0 coll_prio=0 reserved=0CNTR1 = Tally Counter 1 (CRC Errors) = 00DCR (Data Configuration Register): wdsize=1 endian=0 longaddr=0 loop=1 auto_rx=0 fifo_size=2CNTR2 = Tally Counter 2 (Missed Packet Errors) = 00IMR (Interrupt Mask Register) rx_inte=1 tx_inte=1 rxerr_inte=0 txerr_inte=1 overw_inte=1 cofl_inte=0 rdma_inte=0 reserved=0----------------------NE2K registers, page 1----------------------CR (Command register): stop=0 start=1 tx_packet=0 rdma_cmd=4 pgsel=0MAC address registers are located at page 1, registers 1-6.The MAC address is b0:c4:20:00:00:01Current page is 0xa1MAR0-7 (Multicast address registers 0-7) are set to:00 41 00 80 00 00 00 00MAR0 is listed first.----------------------NE2K registers, page 2----------------------CR (Command register): stop=0 start=1 tx_packet=0 rdma_cmd=4 pgsel=0Remote Next Packet Pointer = 00TPSR = Transmit Page Start = 0x46Local Next Packet Pointer = 00Address Counter= 00 00IMR (Interrupt Mask Register):RCR (Receive Configuration Register): errors_ok=0 runts_ok=0 broadcast=1 multicast=1 promisc=0 monitor=0 reserved=0TCR (Transmit Configuration Register): crc_disable=0 loop_cntl=0 ext_stoptx=0 coll_prio=0 reserved=0DCR (Data Configuration Register): wdsize=1 endian=0 longaddr=0 loop=1 auto_rx=0 fifo_size=2IMR (Interrupt Mask Register) rx_inte=1 tx_inte=1 rxerr_inte=0 txerr_inte=1 overw_inte=1 cofl_inte=0 rdma_inte=0 reserved=0----------------------I'm starting to see a lot of zeroes on all of the NE2k registers and I find that either the card is configured incorrectly or something could be wrong with the NE2K card itself. Edited February 27, 2013 by ppgrainbow
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now