VOGONS


Reply 120 of 200, by superfury

User metadata
Rank l33t++
Rank
l33t++

Weirdly enough, the VDIAG app keeps saying that the power-on reset is faulty somehow?
I see it performing some accesses to registers 38-3B, but that seems after the VSS still is detected faulty?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 121 of 200, by superfury

User metadata
Rank l33t++
Rank
l33t++

Although the VDIAG test program still doesn't agree with my emulation regarding the VSS state (unknown why this is), I've released the app with what I've got so far (seeing as it's otherwise fully running without visible issues).

Still need to go after the remaining issues, though (VDIAG's issue if I can even find it, the other being the weird issue with Windows 95 dialing a wrong phone number (ATDT; instead of ATDT0)).

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 122 of 200, by mkarcher

User metadata
Rank l33t
Rank
l33t
ALEKS wrote on 2021-04-14, 16:46:

In addition, my 80386DX project PCB has the LA17-LA19 (16-bit) signals hardwired to the SA17-SA19 (8-bit) signals. But the video card works OK with other PCs, up to Pentium 233 MHz (that's the fastest one that I have).
I haven't checked it out but I think most other 16-bit ISA systems have these address lines hardwired together. But without actually having verified this information, I might be wrong here.

The ISA standard however says that the LAxx address lines are latchable and are valid when BALE is high. The SAxx lines are latched when BALE switches to low. But from my knowledge 17, 18, 19, either LA or SA, perform the same function.

The main difference between the SA and LA lines is the timing. For compatibility with the PC/XT bus, the SA lines have to stay valid over the whole ISA cycle. The 80286 on the other hand will output the address of the next cycle already half a cycle *before* the next cycle starts. The idea is to parallelize decoding of the address of the next cycle and performing data transfer for the previous cycle. So the unlatched address signals provide the address earlier, but don't necessarily stay valid over the cycle.

In the case of 16-bit ISA, a card has to signal whether it is 16-bit capable by pulling MEMCS16# low. To accommodate for 0WS memory expansion on the ISA bus, MEMCS16# is sampled quite early, actually before SAx is guaranteed to be valid. So you *need* to use LA23-LA17 to generate MEMCS16# fast enough.

Reply 123 of 200, by root42

User metadata
Rank l33t
Rank
l33t

My PCBs came back with the RAM and GPU soldered. Looks pretty good! Will start soldering the rest in a couple of days..

54BC1349-3803-4E63-9F8D-4C2381963EFB.jpeg
Filename
54BC1349-3803-4E63-9F8D-4C2381963EFB.jpeg
File size
1.57 MiB
Views
1712 views
File license
CC-BY-4.0

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 124 of 200, by ALEKS

User metadata
Rank Newbie
Rank
Newbie

Looks great already. Don't forget about increasing of RA2 and RA3 to reduce artifacts in certain old games.

TX486DLC / 40 MHz | 32 Mb RAM | 16-bit ISA Backplane | Tseng Labs ET4000/W32i 2 Mb | I/O Interface | Audio Interface | PC Speaker Driver | Signal View Interface
3.5" & 5.25" FDD | 4 x 512 Mb CF | HP 82341D Interface | Intel EtherExpress 16

Reply 125 of 200, by root42

User metadata
Rank l33t
Rank
l33t
ALEKS wrote on 2021-05-30, 16:40:

Looks great already. Don't forget about increasing of RA2 and RA3 to reduce artifacts in certain old games.

Yes, I have all the parts here now, including the uprated RA2 and RA3. Currently divyying up the parts for the other dosreloaded members who took part in the order. Sometime in the next 2 weeks I will assemble my first full card then.

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 126 of 200, by root42

User metadata
Rank l33t
Rank
l33t
ALEKS wrote on 2021-05-30, 16:40:

Looks great already. Don't forget about increasing of RA2 and RA3 to reduce artifacts in certain old games.

PS: What exactly do the RA2 and RA3 do? And are the artifacts merely visual (e.g. due to the RAMDAC getting wonky data) or are the actual RAM contents corrupted then?

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 127 of 200, by ALEKS

User metadata
Rank Newbie
Rank
Newbie

Video DRAM (and other DRAM as well) have /RAS and /CAS lines that are used to constantly refresh the contents of the memory cells. The tracks between the memory controller and the individual memory chips act like high-speed transmission lines. Furthermore, memory chips row and column strobe signals can be connected in parallel (such as the case of EXCELGRAPH and many other designs). DRAM chips have a specific capacitive loading rating so you somehow need to calculate and take into consideration the distributed capacitance and inductance of that transmission line.

Long story short, using dampening series resistors will reduce undershoot (viewable on a high-speed oscilloscope screen) of the /RAS and /CAS signals. Also the resistors will minimize signal reflections and will improve overall stability of the DRAM system.

Now the fact is that these dampening resistors should be between 10 R to 33 R or whatever small value results from the calculus.
Apparently the ISSI memories that I used, don't like values so small. And I haven't investigated why. I do have a high-speed 500 MHz bandwidth oscilloscope but I wasn't really interested into what's happening there. Once I experimentally found out that increasing these values by a 10th order and seeing everything works fine, I lost interest into troubleshooting the initial design (where I used 33 R resistors).

The artifacts are described as merely entire groups of pixel data that gets corrupted. The CRT screen will either ignite these pixels all white or they will have random colors based on the corrupted memory data.
Once I increased the dampening resistors to about 60 R, the artifacts were present only on repetitive vertical lines of the CRT screen.
Going even further to about 150 R, the artifacts reduced drastically and appeared only in certain cases, with games that had weird timings or weird video RAM control techniques.

Take this video for instance, at time 2.25 where DOOM demo begins, the CRT randomly ignites yellow pixels. In fact they are not that randomly ignited. They are part of the memory bank controlled by /CAS2, /CAS3, /CAS6, /CAS7, and /RASB signals and they appear on individual parallel vertical lines on the CRT -- even though that is not visible at the first glance.

There are some other games such as Duke Nukem 2 or Commander Keen (all series) that present weird faulty pixels but only in the High Scores and the Main Menu screens.
Otherwise they're good to go.

Even though the datasheet specifies DRAM speeds of 50 ns or better, in the end, I believe the ET4000/W32i controller was not meant to be used with DRAM chips that fast (35 ns). Or I overlooked the ISSI datasheet (honestly I haven't inspected the timing diagrams anyway, I was mainly interested into the physical connections and if I am able to drastically reduce chip count to still have 2 Mb of memory in interleave mode).

Hope this sheds some light.

TX486DLC / 40 MHz | 32 Mb RAM | 16-bit ISA Backplane | Tseng Labs ET4000/W32i 2 Mb | I/O Interface | Audio Interface | PC Speaker Driver | Signal View Interface
3.5" & 5.25" FDD | 4 x 512 Mb CF | HP 82341D Interface | Intel EtherExpress 16

Reply 128 of 200, by pentiumspeed

User metadata
Rank l33t
Rank
l33t

On the one I had ET4000 PCI card, had 4bit 45ns drams and one of them was bad. Also make sure the chips are not fake.

I had one partial bad dram that shows up when I was scrolling long bookmarks as horizonal bar of non-active artifacts appears instantly atop current image, replaced all the dram fixed it as I don't want to hunt down which one.

You probably have this issue too. Might need to source new memory chips from non-chinese sellers again.

Cheers,

Great Northern aka Canada.

Reply 129 of 200, by root42

User metadata
Rank l33t
Rank
l33t

A friend on the dosreloaded forum assembled his card and has some glitches. Any ideas what they are caused by? Is this a faulty RAM IC? Or are the RAS/CAS resistors still too low a value?

EDIT: Or maybe a cold solder joint on RAM/ET4000?

C7340783-049C-4CE2-ABFA-EF4950FBFF67.jpeg
Filename
C7340783-049C-4CE2-ABFA-EF4950FBFF67.jpeg
File size
403.62 KiB
Views
1521 views
File license
CC-BY-4.0

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 130 of 200, by ALEKS

User metadata
Rank Newbie
Rank
Newbie

That looks strange and indeed very similar to what I was experiencing with /RAS and /CAS small value resistors. I would say, from my experiments, this resembles to a 60R resistor pack.
Solder joints should be very finely done (not with big blobs of solder) and thoroughly cleaned of any remaining flux. The same for all IC pins, including the ET4000/W32i and the RAM chips. I have used no-clean flux paste and then used high purity acetone to clean all SMD IC pins. Flux between SMD IC pins might cause weird behaviour on high-speed transmission lines.
Can your friend experiment with 270R (lower than 330R) resistors instead?

This is clearly a RAM issue and if I were to start debugging it, I would look in the leftmost part of the card (RAM ICs, SIP resistor packs, ET4000/W32i chip).
The colours appear to be good so it is clearly not a RAMDAC or analogue VGA section issue. The screen is not garbled so the ISA bus appears to be correctly interfaced to the ET4000/W32i controller.

This is part of the fun of building and debugging DIY designs.

TX486DLC / 40 MHz | 32 Mb RAM | 16-bit ISA Backplane | Tseng Labs ET4000/W32i 2 Mb | I/O Interface | Audio Interface | PC Speaker Driver | Signal View Interface
3.5" & 5.25" FDD | 4 x 512 Mb CF | HP 82341D Interface | Intel EtherExpress 16

Reply 131 of 200, by root42

User metadata
Rank l33t
Rank
l33t

Thanks for the hints. We will see if it's the 330R resistors once my card is finished. If I have the same problem, I would suspect that 270R or 300R might improve the situation!

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 132 of 200, by ALEKS

User metadata
Rank Newbie
Rank
Newbie

One additional question though. Does your friend also experience 80 x 25 text-mode font tearing as well? Either in standard DOS prompt or RAM manipulating software such as Dos Navigator?
I would say he does, but you can check that, to be sure.
My assumption is based on the fact that when I was experiencing similar issues, I also had garbled text-mode. Furthermore VDIAG.EXE would not render anything correctly.

TX486DLC / 40 MHz | 32 Mb RAM | 16-bit ISA Backplane | Tseng Labs ET4000/W32i 2 Mb | I/O Interface | Audio Interface | PC Speaker Driver | Signal View Interface
3.5" & 5.25" FDD | 4 x 512 Mb CF | HP 82341D Interface | Intel EtherExpress 16

Reply 133 of 200, by root42

User metadata
Rank l33t
Rank
l33t

My card is finished and it works in text modes and CGA color and B&W modes. It fails in EGA, VGA and SVGA modes. Also accelerated Win3.1 is broken. I have attached a bunch of screenshot.

Attachments

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 134 of 200, by root42

User metadata
Rank l33t
Rank
l33t

More screenshots, showing okay CGA screens and broken VGA and SVGA stuff.

Attachments

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 136 of 200, by root42

User metadata
Rank l33t
Rank
l33t
pan069 wrote on 2021-06-20, 20:47:
root42 wrote on 2021-06-20, 20:00:

More screenshots, showing okay CGA screens and broken VGA and SVGA stuff.

Problem with memory?

According to Aleks it's a problem with the RAS/CAS resistor networks. Touching them from the solderside makes the problem much worse. So do I need a lower or higher value...? 😀

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 137 of 200, by ALEKS

User metadata
Rank Newbie
Rank
Newbie

Yes it is bad DRAM timing as the refresh signals don't arrive cleanly to the chips. I left you a PM a couple of minutes ago.
You need to go lower if the artifacts intensify.

In my initial case (starting with my original 22R calculation -- which induced very ugly artifacts -- and then experimentally going up) touching the pins helped by improving the image by cleaning up horizontal erratic pixels.

By the way, on a stable card, touching the solderside of either RA2 or RA3 should have little to no interference.

TX486DLC / 40 MHz | 32 Mb RAM | 16-bit ISA Backplane | Tseng Labs ET4000/W32i 2 Mb | I/O Interface | Audio Interface | PC Speaker Driver | Signal View Interface
3.5" & 5.25" FDD | 4 x 512 Mb CF | HP 82341D Interface | Intel EtherExpress 16

Reply 138 of 200, by ltning

User metadata
Rank Member
Rank
Member

For those of us who are only qualified to drool over the work the real heroes here are doing .. what are the odds of being able to buy one of these cards at some point?
It'll surely be cheaper than the recent scouring of eBay for decent ISA VGA cards .. ;-)

The Floppy Museum - on a floppy, on a 286: http://floppy.museum
286-24/4MB/ET4kW32/GUS+SBPro2
386DX-40/20MB/CL5434 ISA/GUSExtreme
486BL-100/32MB/ET4kW32p VLB/GUSPnP/AWELegacy

~ love over gold ~

Reply 139 of 200, by ALEKS

User metadata
Rank Newbie
Rank
Newbie

My initial prototype is well out of discussion, I guess. For its price you could buy two good ISA cards on eBay.

However, root42 has built one with a cheaper PCB after the original schematic. When we manage to get it stable, he would be able to tell the final cost.

TX486DLC / 40 MHz | 32 Mb RAM | 16-bit ISA Backplane | Tseng Labs ET4000/W32i 2 Mb | I/O Interface | Audio Interface | PC Speaker Driver | Signal View Interface
3.5" & 5.25" FDD | 4 x 512 Mb CF | HP 82341D Interface | Intel EtherExpress 16