Jump to content
IGNORED

Isolating causes of variations in behavior of different 7800 consoles


john_q_atari

Recommended Posts

@RevEng @batari @CPUWIZ (and anyone else that might have any thoughts or information on the topic)

 

Recently I acquired an AT84 7800 console that under a certain specific use case behaved as I desired when all of my other 7800 consoles misbehaved in a similar manner for that same particular use case.

 

I am aware that there were many different revisions of 7800 motherboards and no 2 7800 motherboards appear to use the same components. I am also aware that each 7800 might behave differently and that this has been seen time and again over the years as people try and develop hardware for the 7800. Excluding any incompatibilities in playing 2600 games or using 2600 hardware, have *ANY* causes of incompatibilities in the 7800 been identified? If so, what contributing factors have been identified?

 

In my case I suspected the memory was getting corrupted in my A1 unit which used a "C025233-002 REV A" motherboard and had the resistor modification done at the factory to the !WE pin of one of the sram chips. (this signal is common to both sram chip !WE pins). I theorized the change in memory from what was used in my AT84 unit and my A1 unit mentioned in this post was causing my issue. I proceeded to desolder the SRAM chips, add IC sockets in their place, remove the factory resistor mod to the !WE pin, repair the trace on the back of the board so that the !WE pin would be properly connected to U12 pins 3&4 since I removed the resistor, and then I took the sram chips that were in my AT84 unit (as that unit was functioning as I desired) out and placed them in my A1 unit. My A1 unit functioned normally as one might expect a 7800 to function, except I was still getting the same misbehavior for my specific use case. To me that proved the different memory chips were not the issue. Any further efforts on my part would require much greater commitments of time and energy so I wanted to reach out to anyone who might be able to provide any information that has been discovered to date on what specific factors cause variations in 7800 compatibility or any common characteristics shared by 7800s displaying "incompatibilities" compared to at least the majority of AT84 units. If in-depth engineering details of these causes have been covered in previous posts then links to them would be greatly appreciated. Thanks.

Link to comment
Share on other sites

Does your A1 unit have the timing circuit?

I believe it was established that the resistor on the RAM chip was used to compensate for the faster speed of the RAM chip.

I am only aware of two different motherboards used in NTSC 7800s.

 

Mitch

Link to comment
Share on other sites

28 minutes ago, Mitch said:

Does your A1 unit have the timing circuit?

I believe it was established that the resistor on the RAM chip was used to compensate for the faster speed of the RAM chip.

I am only aware of two different motherboards used in NTSC 7800s.

 

Mitch

 

Yes it has the timing circuit. Though one lead of C64 has been cut which as I understand it disables the circuit.

 

576251762_A1timingcircuit.thumb.jpg.43d24051520bdf05879ae130efa2822d.jpg

Link to comment
Share on other sites

13 hours ago, john_q_atari said:

@RevEng @batari @CPUWIZ (and anyone else that might have any thoughts or information on the topic)

 

Recently I acquired an AT84 7800 console that under a certain specific use case behaved as I desired when all of my other 7800 consoles misbehaved in a similar manner for that same particular use case.

 

In my case I suspected the memory was getting corrupted in my A1 unit which used a "C025233-002 REV A" motherboard and had the resistor modification done at the factory to the !WE pin of one of the sram chips. (this signal is common to both sram chip !WE pins). I theorized the change in memory from what was used in my AT84 unit and my A1 unit mentioned in this post was causing my issue. I proceeded to desolder the SRAM chips, add IC sockets in their place, remove the factory resistor mod to the !WE pin, repair the trace on the back of the board so that the !WE pin would be properly connected to U12 pins 3&4 since I removed the resistor, and then I took the sram chips that were in my AT84 unit (as that unit was functioning as I desired) out and placed them in my A1 unit. My A1 unit functioned normally as one might expect a 7800 to function, except I was still getting the same misbehavior for my specific use case. To me that proved the different memory chips were not the issue. Any further efforts on my part would require much greater commitments of time and energy so I wanted to reach out to anyone who might be able to provide any information that has been discovered to date on what specific factors cause variations in 7800 compatibility or any common characteristics shared by 7800s displaying "incompatibilities" compared to at least the majority of AT84 units. If in-depth engineering details of these causes have been covered in previous posts then links to them would be greatly appreciated. Thanks.

What are/is the issue that happens exactly? 

 

I've seen at least 3 different motherboard physical layouts. There is the original AT84 units that do not have the extra timing circuit at all or anyplace for it to go. Then there is the later Rev A boards that incorporated the extra timing circuit and was pretty much the only board used from then on throughout the rest of the life of the 7800. The 3rd revision, I think still has an A on it but the main ground and power traces down the middle terminate in different spots and I believe the jumpers for the BIOS chip size selection are in different places as well.

 

Aside from the resistor on the RAM, there are many other changes as well that seems to vary from board to board or specifically with whatever other components were installed. For instance, many of them are missing some of the resistors and capacitors that earlier AT84 units had. Some have the extra timing circuit, and then some later (Usually '88 made) units have the extra timing circuit silkscreened but the actual components weren't populated on the board and 0Ω resistors used as jumpers to bypass those parts of the circuits through the rest of the system.

 

Also, some of the earlier AT84 and other era units will have a banded ceramic cap that was factory bodged on the bottom of the mainboard off of pin 25 on the CPU (A15) to ground. This was to resolve some glitching that occurs in some games with Ballblazer and Pole Position II being the ones I've found it happens with most.

 

I also had a 7800 that was sent in to me that gave me all kinds of fits with odd flickering and ended up having to replace the main crystal in it before it stopped. Odd thing was that the crystal I removed from it, did NOT exhibit these issues on other 7800 boards I tried it with and I only found one crystal from 3 different donor 7800s that would eventually work with that 7800. I didn't have my counter at the time so I wasn't able to check them to see what might have actually been reading from them on the clock.

 

  • Like 2
Link to comment
Share on other sites

6 hours ago, -^CrossBow^- said:

I've seen at least 3 different motherboard physical layouts. 

:thumbsup:  Indeed there are 3 different NTSC motherboard layouts: NTSC C025233-001, NTSC C025233-002 (V1), NTSC C025233-002 (V2), and (at least) 1 for PAL: PAL C300633.

 

Below are example captures of each one of the respective motherboards in the spoilers below.

 

NTSC C025233-001:

Spoiler

1664085991_NTSCCO25233-001.thumb.jpg.d4970f7f8f4b802ce08297ede4ae3a93.jpg

 

NTSC C025233-002 (V1):

Spoiler

1937802684_NTSCCO25233-002_V1.thumb.jpg.44a6236a428fad38260c9fc81425b924.jpg

 

NTSC C025233-002 (V2):

Spoiler

1591121148_NTSCCO25233-002_V2.thumb.jpg.9b016a8ba66149cddb7e4832df033e4f.jpg

 

PAL C300633:

Spoiler

778576658_PALC300633.thumb.jpg.6f14d9bef1a2254ef48128516723b1ad.jpg

 

The major difference between the V1 and V2 of the  NTSC C025233-002 boards is easily seen on the right-hand side.

 

NTSC C025233-002 Version 1:

Spoiler

886257896_NTSCCO25233-002_V1.thumb.PNG.4435b25c0bea3f44f1ffe45c7a24f6fc.PNG

 

NTSC C025233-002 Version 2:

Spoiler

1234367694_NTSCCO25233-002_V2.thumb.PNG.58a311575822db1549cc015eeac45ca1.PNG

 

Of those three main NTSC motherboard layouts, there are definitely variants. 

 

@PacManPlus posted one variant:

Spoiler

1484164645_PacManPlus7800MotherboardVariant.thumb.jpg.85dd61200f4d82f82e350a6adf1435fc.jpg

 

While for the most part it is a NTSC C025233-002 (V2), check out the additions of W3, W4, W5, W6 jumpers to the upper left and right above the top color pot.

  • Like 1
Link to comment
Share on other sites

16 minutes ago, Trebor said:

 

@PacManPlus posted one variant:

  Hide contents

1484164645_PacManPlus7800MotherboardVariant.thumb.jpg.85dd61200f4d82f82e350a6adf1435fc.jpg

 

While for the most part it is a NTSC CO25233-002 (V2), check out the additions of W3, W4, W5, W6 jumpers to the upper left and right above the top color pot.

PMP's is actually the 3rd one I was thinking about. Notice how the ground trace in the center doesn't travel as far and stop basically at the TIA? I've seen maybe 3 or 4 of these pass through my hands of this variant. As well as most of the others I'd imagine minus PAL systems. Another change on PMPs revision is that the silkscreens for the components they weren't populating onto the board any have been removed. Such as Q4, some resistors and caps as well. And PMPs show an '88 code on one of the ICs so his is likely the last revision of the board that was used. Most these revisions also seem to use Goldstar branded RAM for the video on them by this time. Not there isn't a resistor on this RAM even though it is rated for 100ns speed? So other changes in the board or this specific Goldstar RAM didn't require it.

 

Unless the shells were swapped, PMPs might the latest made 7800 I've seen that still has the expansion port opening on the side of the bottom shell? Given his 7800 was assembled in the later half of '88, that had to be from a return unit as they weren't still using those shells by this time. Again, evidence of Atari just using whatever they had laying around. 

 

  • Like 1
Link to comment
Share on other sites

2 hours ago, -^CrossBow^- said:

PMP's is actually the 3rd one I was thinking about. Notice how the ground trace in the center doesn't travel as far and stop basically at the TIA? I've seen maybe 3 or 4 of these pass through my hands of this variant. As well as most of the others I'd imagine minus PAL systems. Another change on PMPs revision is that the silkscreens for the components they weren't populating onto the board any have been removed. Such as Q4, some resistors and caps as well. And PMPs show an '88 code on one of the ICs so his is likely the last revision of the board that was used. Most these revisions also seem to use Goldstar branded RAM for the video on them by this time. Not there isn't a resistor on this RAM even though it is rated for 100ns speed? So other changes in the board or this specific Goldstar RAM didn't require it.

 

Unless the shells were swapped, PMPs might the latest made 7800 I've seen that still has the expansion port opening on the side of the bottom shell? Given his 7800 was assembled in the later half of '88, that had to be from a return unit as they weren't still using those shells by this time. Again, evidence of Atari just using whatever they had laying around. 

 

Ah yes, I forgot about that third variant.

 

I believe there may be an earlier variant for the PAL 7800. At least someone told me they had an early PAL 7800 with a different motherboard. I have never actually seen a picture though.

 

Mitch

Link to comment
Share on other sites

On 7/5/2021 at 5:37 AM, Trebor said:

Have you tried running the 7800 hardware timing tests ROM from RevEng under the hardware facts thread?  An updated version is contained in Trebors 7800 ROM PROPack within the Utilities folder.  When running the tests, results should be consistent with what is stated.  If not, it may isolate where the console's difference(s) lies.

 

Thanks. I just ran the tests on both machines and the results matched exactly with each other and with the results shown on the youtube video.

Link to comment
Share on other sites

On 7/5/2021 at 9:02 AM, Trebor said:

:thumbsup:  Indeed there are 3 different NTSC motherboard layouts: NTSC C025233-001, NTSC C025233-002 (V1), NTSC C025233-002 (V2), and (at least) 1 for PAL: PAL C300633.

 

Below are example captures of each one of the respective motherboards in the spoilers below.

 

NTSC C025233-001:

  Hide contents

1664085991_NTSCCO25233-001.thumb.jpg.d4970f7f8f4b802ce08297ede4ae3a93.jpg

 

NTSC C025233-002 (V1):

  Reveal hidden contents

1937802684_NTSCCO25233-002_V1.thumb.jpg.44a6236a428fad38260c9fc81425b924.jpg

 

NTSC C025233-002 (V2):

  Reveal hidden contents

1591121148_NTSCCO25233-002_V2.thumb.jpg.9b016a8ba66149cddb7e4832df033e4f.jpg

 

PAL C300633:

  Reveal hidden contents

778576658_PALC300633.thumb.jpg.6f14d9bef1a2254ef48128516723b1ad.jpg

 

The major difference between the V1 and V2 of the  NTSC C025233-002 boards is easily seen on the right-hand side.

 

NTSC C025233-002 Version 1:

  Reveal hidden contents

886257896_NTSCCO25233-002_V1.thumb.PNG.4435b25c0bea3f44f1ffe45c7a24f6fc.PNG

 

NTSC C025233-002 Version 2:

  Reveal hidden contents

1234367694_NTSCCO25233-002_V2.thumb.PNG.58a311575822db1549cc015eeac45ca1.PNG

 

Of those three main NTSC motherboard layouts, there are definitely variants. 

 

@PacManPlus posted one variant:

  Reveal hidden contents

1484164645_PacManPlus7800MotherboardVariant.thumb.jpg.85dd61200f4d82f82e350a6adf1435fc.jpg

 

While for the most part it is a NTSC C025233-002 (V2), check out the additions of W3, W4, W5, W6 jumpers to the upper left and right above the top color pot.

 

The AT84 unit I have is the C025233-001 Rev A which looks identical to the picture you posted above for NTSC C025233-001

The A1 unit I have that is misbehaving looks identical to the picture you posted above for NTSC C025233-002 (V1)

 

Link to comment
Share on other sites

8 hours ago, john_q_atari said:

 

Thanks. I just ran the tests on both machines and the results matched exactly with each other and with the results shown on the youtube video.

I've asked this once before. What is the issue? What YT video?

 

Just read through stuff. I assume the video in question is the one showing the timing tests? What is the issue you are seeing then?

 

Link to comment
Share on other sites

Yes when I refer to video I refer to the timing test video Trebor linked to.

 

Sorry for not PMing you earlier. I didn't want to publicly disclose the specific issue I am having at this time. I will discuss it over PM. My purpose of this thread was to try and educate myself on previously known causes of why different 7800s behave differently, and maybe use that knowledge in my own debug of something, the details of which I did not want to publicly disclose. If I am able to determine the cause, then I will happily share what I did to resolve my issue and perhaps that knowledge might be useful to someone else. 

 

To that end, does anyone know if there are any other 7800 schematics out there other than the single hires schematic scanned in and posted on atariage?

Link to comment
Share on other sites

I only know of two schematics that exist for the 7800. Both of which can be found at Console5.com here:

 

https://console5.com/wiki/Atari_7800

 

I tend to use the newer ones that drawn up in 2003 and a scattered across a few pages vs all lumped together.

 

Link to comment
Share on other sites

Okay so I have a major update. I went to town on my 7800 consoles, and while I accidentally lifted some pads I managed not to do any damage that wasn't repairable. Here is what I learned:

 

motherboard version didn't matter

SRAM chips didn't matter

timing circuit didn't matter

 

The only thing that mattered was the 6502C cpu. The AT84 I had which didn't have any glitching/corruption had an NCR cpu.

 

2006999230_AT84-cpu(Copy).jpg.ae8a8b43ea1d4be00db2c5b6d4ce69f8.jpg

 

When I switched it with a Rockwell cpu the console started having glitching/corruption for my specific testcase.

 

1202451038_rockwell-cpu2(Copy).jpg.6a61651ea53444d88a70ea1b239a138d.jpg

 

My A1 unit with UAV and audio mods had a Rockwell cpu. When I switched that CPU for the NCR cpu in the AT84 unit then there was no glitching/corruption. In fact all my 7800s with Rockwell CPUs exhibit glitching/corruption for the specific testcase I was looking at.

 

1498754237_rockwell-cpu1(Copy).jpg.c0493bbde8633bcc59d29bb892f6c828.jpg        1969912076_rockwell-cpu3(Copy).jpg.2d13e70cffa664d46534fcb8240e073e.jpg

 

So what is it with Rockwell 6502Cs?

 

  • Like 3
Link to comment
Share on other sites

1 hour ago, john_q_atari said:

So what is it with Rockwell 6502Cs?

It's not just you.  This topic cropped up a few months ago in relation to compatibility issues with the Concerto - but some NCR-made SALLYs were also affected.

 

I don't recall there ever being a firm conclusion drawn as to what the issue was beyond some CPUs being touchier than others, but you may want to take a look at the part of the thread that was linked to.

Edited by x=usr(1536)
  • Like 1
Link to comment
Share on other sites

To bring both thread's together and unify the data we have:

 

An issue mentioned here isolated an NCR Sally as being the root cause of a console having issues with Concerto:

 

image.png.30c13517ce2ffd8796a00db00780eb8e.png

 

 

Recently, multiple Rockwell Sally's have been found to be the issue with console compatibility with the DragonFly:

 

1202451038_rockwell-cpu2(Copy).jpg.6a61651ea53444d88a70ea1b239a138d.jpg

 

rockwell-cpu1 (Copy).jpg

 

1969912076_rockwell-cpu3(Copy).jpg.2d13e70cffa664d46534fcb8240e073e.jpg

 

 

We also know the below NCR Sally works fine with (at least) Concerto:

 

image.png.6576bbe02d0cc4c4d62410071e94cd25.png

 

This NCR is known to work fine with (at least) DragonFly:

 

image.png.1fc466a60456ec77a5d590b9332a1c8d.png

 

What would be good to know is if the above (in)compatibilities are the same for DragonFly and Concerto, or is one version of Sally working fine with just one or the other.

:ponder:

 

Does either @john_q_atari or/and @RandomPerson own both carts?

  • Like 1
Link to comment
Share on other sites

Now that I think about it, I wonder if the Rockwell CPUs are the ones that I've seen with the factory cap bodged on the bottom of them? However, I did test this with an A3 I had that I was testing the DF issue on, and it wouldn't boot any games at all when I attached the cap on it. I need to find the pics of that 7800 to see which CPU it had, but it was definitely affected by this.

 

Still doesn't quite explain why a 7800 that was having issues with @john_q_atari's DF cart did not show the same glitching when using my DF cart with the same SDcard and roms though?

 

 

Link to comment
Share on other sites

6 hours ago, -^CrossBow^- said:

Still doesn't quite explain why a 7800 that was having issues with @john_q_atari's DF cart did not show the same glitching when using my DF cart with the same SDcard and roms though?

Possibly the difference maker could be the minor CPLD propagation delta times of 7ns and 10ns among DF's that the problematic Sally's are sensitive about, but we would need more data.

  • Like 1
Link to comment
Share on other sites

2 hours ago, Trebor said:

To bring both thread's together and unify the data we have:

 

An issue mentioned here isolated an NCR Sally as being the root cause of a console having issues with Concerto:

 

image.png.30c13517ce2ffd8796a00db00780eb8e.png

 

 

Recently, multiple Rockwell Sally's have been found to be the issue with console compatibility with the DragonFly:

 

1202451038_rockwell-cpu2(Copy).jpg.6a61651ea53444d88a70ea1b239a138d.jpg

 

rockwell-cpu1 (Copy).jpg

 

1969912076_rockwell-cpu3(Copy).jpg.2d13e70cffa664d46534fcb8240e073e.jpg

 

 

We also know the below NCR Sally works fine with (at least) Concerto:

 

image.png.6576bbe02d0cc4c4d62410071e94cd25.png

 

This NCR is known to work fine with (at least) DragonFly:

 

image.png.1fc466a60456ec77a5d590b9332a1c8d.png

 

What would be good to know is if the above (in)compatibilities are the same for DragonFly and Concerto, or is one version of Sally working fine with just one or the other.

:ponder:

 

Does either @john_q_atari or/and @RandomPerson own both carts?

I own both carts. I may have an older bios on my  concerto though. I will need to check.

  • Like 3
Link to comment
Share on other sites

A few items that may be worth consideration respecting SALLY:

 

https://en.wikipedia.org/wiki/MOS_Technology_6502#Bugs_and_quirks

"The NMOS 6502 family has a variety of undocumented instructions, which vary from one chip manufacturer to another."

 

http://wiki.nesdev.com/w/index.php/CPU_unofficial_opcodes
"Column +0B, on the other hand, has no extra cycles; everything completes during the next opcode's fetch. This causes instructions to have strange mixing properties. Some even differ based on analog effects"

 

There may be some value found towards the issue in this very recent article as well:

https://www.masswerk.at/nowgobang/2021/6502-illegal-opcodes

 

Thinking perhaps the difference we're seeing between Rockwell and NCR is a result of variations among manufacturers of the illegal opcodes having an influence here.  Subsequently, the variation within the same manufacture may be the result of differing analog effects (or conditions)..I.E.  Age of component(s), power (stability), console temperature/heat effect.  We know the latter impacts the palette at the very least.  It wouldn't come as a big surprise if there is slight, small impact on SALLY as well, that in some cases can tip the scales one way or another.

 

Hoping someone with more knowledge and insight into the subject and/or hardware-software programming can provide better clarity.

  • Like 1
Link to comment
Share on other sites

Mos of the chips that seem to work properly, with the one NCR exception that Trebor noted. Are from '84 or older. The Rockwell's are several years newer. However, I did find that one of the 7800s I worked on had an NCR from '88 in it and that one is working as that console belongs to one of the beta testers of the game. However, that same tester also has an early revision DF cart like myself.

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...