VOGONS


First post, by walterg74

User metadata
Rank Member
Rank
Member

Hi folks, was testing out a P4 "system" I was given today, consisting in an Asrock Motherboard, a socket 775 3Ghz P4, and 512MB of RAM.

While I will not be using onboard video later on, I did just hook that up to see if it powered on, booted up, etc.

I noticed that after powering up, I saw all garbage on the screen...

I tried connecting a PCI card to it, and the display was fine.

I was suggested that RAM might be the issue. I removed one of the two DIMMs, and went back to onboard video, and the screen was fine! I removed that DIMM and inserted the other one, and again, screen was also fine! I inserted both of them back but reversed (the one originally in socket 1 in socket 2 and viceversa), and once again, the screen was fine!!

Went back to their original positions, and wouldn't you know it, back to garbage on the screen... 😐

So.. what the heck is going on? First I thought maybe one of the DIMMs is bad in the memory area used for video, but then why would both work standalone?

This doesn't make any sense???

Reply 1 of 19, by skitters

User metadata
Rank Member
Rank
Member

I'd run memtest on the RAM while using the PCI card for video.
It sounds to me like one of the RAM sticks might have a bad spot, and that bad spot was what the onboard video was using.

Reply 2 of 19, by walterg74

User metadata
Rank Member
Rank
Member
skitters wrote:

I'd run memtest on the RAM while using the PCI card for video.
It sounds to me like one of the RAM sticks might have a bad spot, and that bad spot was what the onboard video was using.

Yes, that’s what I thought, but it boots up fine with either stick by itself...

Reply 3 of 19, by Koltoroc

User metadata
Rank Member
Rank
Member
walterg74 wrote:

Yes, that’s what I thought, but it boots up fine with either stick by itself...

That is not an indicator for ram being fine or not. to be certain you have to run a test programm like memtest86.

Reply 4 of 19, by walterg74

User metadata
Rank Member
Rank
Member
Koltoroc wrote:
walterg74 wrote:

Yes, that’s what I thought, but it boots up fine with either stick by itself...

That is not an indicator for ram being fine or not. to be certain you have to run a test programm like memtest86.

I know, and I know the proper test is with memtest, and I will do that, but it doesn’t make sense that if one of the sticks is bad in the needed area, that it would work anyway used on its own.

Reply 5 of 19, by Koltoroc

User metadata
Rank Member
Rank
Member

why? The memory layout will be different when you use 2 sticks vs one. Also when you switch modules the layout will be the same, but the actual physical locations will be different. In this particular case it is indicative, that a certain region on 1 specific module has issues and that location coincides with the frame buffer when used in a specific pairing.

The reason that a broken module "works" in those other situation is because the damaged segment is not in direct use (by critical software) when run in the other configurations.

Remember, memory is generally not tested at all at boot on modern(ish) systems, because the amount of memory makes this prohibitively slow. You will find broken memory only when it causes problems, or when you specifically use software to test for it.

Reply 6 of 19, by walterg74

User metadata
Rank Member
Rank
Member
Koltoroc wrote:

why? The memory layout will be different when you use 2 sticks vs one. Also when you switch modules the layout will be the same, but the actual physical locations will be different. In this particular case it is indicative, that a certain region on 1 specific module has issues and that location coincides with the frame buffer when used in a specific pairing.

The reason that a broken module "works" in those other situation is because the damaged segment is not in direct use (by critical software) when run in the other configurations.

Remember, memory is generally not tested at all at boot on modern(ish) systems, because the amount of memory makes this prohibitively slow. You will find broken memory only when it causes problems, or when you specifically use software to test for it.

Hmm I think either you didn’t understand what the issue is, or I did not explain it correctly, or I am not understanding something...

Let’s say each stick on its own to extremely simplify has 10 positions, A0 to A9 on one, and B0 to B9 on the other.

The area that video uses/addresses will be the same regardless of your configuration (it would use the same addresses)

Again to simplify, lets say video uses 4 positions, 0 to 3.

Now there are two possibilities. With 2 sticks you have 20 positions total, 0 to 19, and they can either be distributed one after the other (A0 to A9 matching 0 to 9 and B0 to B9 matching 10 to 19) or interleaved, like A0, B0,A1,B1,etc..

If one of the sticks has part of its contents damaged that matches the use video makes of it, it doesn’t matter which way this worls because when you put it on its own it should fail. And it doesn’t...

Also just in case, this is not loading anything, this is just on power up, maybe even just going to the bios setup, so this is not a random crash, this is specifically the memory used for the onboard video.

Reply 7 of 19, by walterg74

User metadata
Rank Member
Rank
Member
Koltoroc wrote:

Also when you switch modules the layout will be the same, but the actual physical locations will be different.

Wait what? What do you mean with physical locations? Chips are all made the same, from low to high addresses and accesed the same way. If you have one stick and the cpu needs to access the first say 100 bytes, if you put another stick in it’s place it will also select its first 100 bytes...

Reply 8 of 19, by Koltoroc

User metadata
Rank Member
Rank
Member

modern shared memory video chips have no fixed location or sizefor the video memory. Size is either reserved in bios or dynamically changed depending on what is needed. Socket 775 are new enough for that already to be a thing. So the memory used and therefore the locations in the memory map will change when you change memory sizes.

Reply 9 of 19, by walterg74

User metadata
Rank Member
Rank
Member
Koltoroc wrote:

modern shared memory video chips have no fixed location or sizefor the video memory. Size is either reserved in bios or dynamically changed depending on what is needed. Socket 775 are new enough for that already to be a thing. So the memory used and therefore the locations in the memory map will change when you change memory sizes.

That.. doesn’t make sense, are you sure? If me ory locations aren’t expected, how do legacy operating systems still work fine..?

Reply 10 of 19, by Koltoroc

User metadata
Rank Member
Rank
Member

the framebuffer is independent from dos/legacy memory. In DOS It is accessed by a 64 or 128k window in the upper memory area where memory pages from the actual framebuffer will be copied to and from.

Reply 11 of 19, by walterg74

User metadata
Rank Member
Rank
Member
Koltoroc wrote:

the framebuffer is independent from dos/legacy memory. In DOS It is accessed by a 64 or 128k window in the upper memory area where memory pages from the actual framebuffer will be copied to and from.

Ok, fone but on post you’re still using legscy methods to display the text on the screen.

Reply 13 of 19, by cyclone3d

User metadata
Rank l33t++
Rank
l33t++

So LGA775 is going to have a dual channel (interleaved) memory setup. This IS why you are getting corruption when both sticks are installed in a specific physical arrangement.

The bad part of the one stick of RAM IS being accessed BECAUSE of the dual channel operation.

The layout of the RAM addresses is different then in single channel mode as you have found out by using a single stick at a time.

Yamaha modified setupds and drivers
Yamaha XG repository
YMF7x4 Guide
Aopen AW744L II SB-LINK

Reply 14 of 19, by walterg74

User metadata
Rank Member
Rank
Member
cyclone3d wrote:

So LGA775 is going to have a dual channel (interleaved) memory setup. This IS why you are getting corruption when both sticks are installed in a specific physical arrangement.

The bad part of the one stick of RAM IS being accessed BECAUSE of the dual channel operation.

The layout of the RAM addresses is different then in single channel mode as you have found out by using a single stick at a time.

I understand interleaving (I think), and how the arrangement would be different, but I guess I’m having a hard time visualizing how this would explain the issue. In my mind if with a single stick you use address space “X”, with 2 sticks you use half in size of each and interleaved, but area is the same (just up to X/2 on each stick) but maybe that’s not accurate? Maybe with a graphical representation it would be easier to see.

Reply 15 of 19, by tayyare

User metadata
Rank Oldbie
Rank
Oldbie
walterg74 wrote:

...or I am not understanding something...

Yes 😊

GA-6VTXE PIII 1.4+512MB
Geforce4 Ti 4200 64MB
Diamond Monster 3D 12MB SLI
SB AWE64 PNP+32MB
120GB IDE Samsung/80GB IDE Seagate/146GB SCSI Compaq/73GB SCSI IBM
Adaptec AHA29160
3com 3C905B-TX
Gotek+CF Reader
MSDOS 6.22+Win 3.11/95 OSR2.1/98SE/ME/2000

Reply 17 of 19, by dionb

User metadata
Rank l33t++
Rank
l33t++
walterg74 wrote:

[...]

I understand interleaving (I think), and how the arrangement would be different, but I guess I’m having a hard time visualizing how this would explain the issue. In my mind if with a single stick you use address space “X”, with 2 sticks you use half in size of each and interleaved, but area is the same (just up to X/2 on each stick) but maybe that’s not accurate? Maybe with a graphical representation it would be easier to see.

Look, instead of over-analyzing the theoretical side of things based on insufficient data, it would be far more productive just to run memtest on these things.

That should clear up whether the DIMMs themselves work or not. I'd say it's highly likely at least one will give you errors, but it's also possible the DIMMs are clean and the IGP is faulty or some RAM/UMA setting in BIOS is way out, or the CPU is flaky, or it could even be a PSU issue. Once it's clear what's actually failing it's relatively easy to figure out why you were seeing the symptoms you were seeing before actually testing.

Reply 18 of 19, by Jasin Natael

User metadata
Rank Oldbie
Rank
Oldbie

cyclone3d is correct. I'ts because it's DDR.
I have had this happen before.
Run memtest and identify the stick, if that doesn't help newer versions of PC Check can even identify the the stick/slot location of the error.