English Amiga Board


Go Back   English Amiga Board > Support > support.Hardware

 
 
Thread Tools
Old 11 September 2020, 02:52   #1
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Amiga 1200 runing on 1 Memory SMD

I need to debug some memory chips. Can the Amiga 1200 run with only 1 memory chip, if so - which location must the single chip be in (if any)?


Thank you.
rjd324 is offline  
Old 11 September 2020, 14:49   #2
Krashan
Hardware Designer

 
Join Date: Aug 2018
Location: Bialystok/Poland
Age: 47
Posts: 83
It can't. A1200 has either 256k×16 bit memory chips (so it needs at least two to run, with 1 MB chip RAM then) or 512k×8 (in this case four chips are needed).
Krashan is offline  
Old 14 September 2020, 13:29   #3
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Hi Krashan, thanks for the response. I have no idea what the reason is for this. Tell me to RTFM for sure, but I am wondering if you could explain why it needs all the memory chips. Is there something in the ROM code that tests that all 2MB are there?

What is the best way to find a misbehaving memory chip? You need to replace all 4 of them (if you have 4) and then swap one out one by one? I know that you can use DiagRom to test, but the issue is an immediate green screen with 10 flashing LEDs.

Thanks.
rjd324 is offline  
Old 14 September 2020, 13:30   #4
Jope
-
Jope's Avatar
 
Join Date: Jul 2003
Location: Helsinki / Finland
Age: 40
Posts: 8,302
The machine has a 32bit bus, hence there must be some RAM for each bit of the bus when it is being accessed.
Jope is offline  
Old 14 September 2020, 16:28   #5
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 5,103
DiagROM will get you some output even when Kickstart fails to start with a green screen and flashing LED. Basically, the 32-bit bus is spread across multiple chips, so as Jope says, you need at least enough chips present to cover the full width of the bus, otherwise you'll be missing e.g. two bytes from every 32-bit longword. If you don't have the full width, code or data can't possibly use it. DiagROM can still run, but it won't be able to set up a screen for output in this case. Instead, you can get the output via the serial port, and the output there will give you some clues as to where the error lies. Between the pattern of the failures DiagROM reports and the relevant A1200 schematics, you can decipher which chip might be faulty, with the proviso that something else might be wrong, such as a data line shorted to ground, damaged PCB track etc.
Daedalus is offline  
Old 14 September 2020, 17:44   #6
Krashan
Hardware Designer

 
Join Date: Aug 2018
Location: Bialystok/Poland
Age: 47
Posts: 83
Quote:
Originally Posted by rjd324 View Post
I am wondering if you could explain why it needs all the memory chips. Is there something in the ROM code that tests that all 2MB are there?
68020 processor has 32-bit data bus. It means it can read/write 4 bytes at once. This bus physically is just 32 wires. Older A1200s (rev 1D) have four chips of 16-bit data bus (256k × 16 bits). Two of them are the first 1 MB, other two are second 1 MB. This is because Commodore planned to sell low budget A1200 with only 1 MB chip RAM, extendable to 2 MB with a module. So 1D mainboard can run with 2 chips out of 4. Why 2? Because half of the data bus is connected to one chip, other half to the second. In other words, one chip stores bytes with addresses 0, 1, 4, 5, 8, 9..., the second one stores bytes 2, 3, 6, 7, 10, 11... Any access of 32-bit size (and also some 16-bit accesses) reads from two memory chips simultaneously.

When rev 2B mainboard has been designed, it has been clear, that nobody wants cost reduced A1200 with 1 MB chip RAM. Then possibility to only mount 2 chips out of 4 was not needed. Therefore designers used 4 chips with 8-bit data bus (512k × 8 bits). I guess they were cheaper or easier to obtain. This means that one 32-bit access reads from 4 chips at once. Bytes are interleaved as follows:
chip A: 0, 4, 8, 12, 16...
chip B: 1, 5, 9, 13, 17...
chip C: 2, 6, 10, 14, 18...
chip D: 3, 7, 11, 15, 19...
Because of this in 2B A1200 all the four chips have to be present and working.
Krashan is offline  
Old 14 September 2020, 19:45   #7
nogginthenog
Amigan

 
Join Date: Feb 2012
Location: London
Posts: 1,050
Quote:
Originally Posted by Daedalus View Post
DiagROM will get you some output even when Kickstart fails to start with a green screen and flashing LED. Basically, the 32-bit bus is spread across multiple chips, so as Jope says, you need at least enough chips present to cover the full width of the bus, otherwise you'll be missing e.g. two bytes from every 32-bit longword.
I discovered something about DiagROM recently.
If you look at the LO / HI images with a hex editor you will see Chucky has helpfully added in some text:
Code:
LO: U6B,U176,U180   OL :6U,B1U67U,81 0
HI: U6A,U175,U181   IH :6U,A1U57U,81 1
U175/U176 is for an A4000, not sure about the others.
nogginthenog is online now  
Old 14 September 2020, 20:26   #8
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Thanks guys
rjd324 is offline  
Old 14 September 2020, 20:30   #9
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
So what I am seeing is. 3.1 kickstart is green screen. 10 flash led on keyboard. Restart loop. Does same again. If I use diagrom then I get red/green screen and nothing.

Anyone can point me in the right direction as to what to check?
rjd324 is offline  
Old 15 September 2020, 04:06   #10
Vypr
Registered User

Vypr's Avatar
 
Join Date: Dec 2016
Location: East Kilbride, Scotland
Posts: 333
Quote:
Originally Posted by rjd324 View Post
So what I am seeing is. 3.1 kickstart is green screen. 10 flash led on keyboard. Restart loop. Does same again. If I use diagrom then I get red/green screen and nothing.

Anyone can point me in the right direction as to what to check?
Red/green flashes on the screen indicate problems accessing RAM, if you connect the serial port to your PL you should get text output of the RAM test
Vypr is offline  
Old 19 September 2020, 19:48   #11
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Code:
Amiga DiagROM V1.2 - 13-Aug-19  - By John (Chucky/The Gang) Hertell

'????   ????????Code $ff - Start of ROM, CPU Seems somewhat alive
    Checking status of mousebuttons for different startups:

    Set all Interrupt enablebits (INTENA $dff09a) to Disabled: Done
    Set all Interrupt requestbits (INTREQ $dff09c) to Disabled: Done
    Set all DMA enablebits (DMACON $dff096) to Disabled: Done

Testing if OVL is working: OK
- Parallel Code $fe - Test UDS/LDS line
  - Test of writing word $FFFF to $400 OK
  - Test of writing word $00FF to $400 FAILED
  - Test of writing word $FF00 to $400 OK
  - Test of writing word $0000 to $400 FAILED
  - Test of writing byte (even) $ff to $400 OK
  - Test of writing byte (odd) $ff to $401 OK
Followed by all the reading/writing failures (as in.. all of them fail) and then:

Code:
NO Chipmem detected
- Parallel Code $fc - Trying to find some fastmem (as no chipmem found)
- Parallel Code $fb - Memorydetection done
- Parallel Code $80 - NO Chipmem detected
- NO MEMORY FOUND - HALTING SYSTEM
This could still be a lot of things? A bad trace, bad memory chip, bad ROM socket?
rjd324 is offline  
Old 21 September 2020, 17:28   #12
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
So, I am just wondering what to check here. I guess I should check all traces that end up at the memory chips? As in, start from the memory chip pin and work my way back to make sure I have continuity using PCBExplorer to help.

Would that be a start?
rjd324 is offline  
Old 22 September 2020, 00:59   #13
cpiac64
Registered User
cpiac64's Avatar
 
Join Date: Apr 2010
Location: Italy
Posts: 1,011
verify all connections ram to ram
i repaired a board with some trace corroded from leakage
cpiac64 is offline  
Old 22 December 2020, 14:06   #14
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Hi all.

I have used PCB explorer for the 2B motherboard and all the traces seem to be going from each 4 memory chips to their destinations with continuity.

To recap, I am seeing a green screen with 10 power LED flashes and then a reset: loop.

I used a logic probe and the only anomaly that I see is that DRD28, unlike all other DRD that read "1" until reset where they go "0"/"PULSE" and repeat, shows nothing on "0" and nothing on "1" but will "PULSE" at the same time as all others.

I have no knowledge, but perhaps this seems suspicious?

Regards.
rjd324 is offline  
Old 22 December 2020, 17:10   #15
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Update.
I also have another 2B motherboard. I used the probe on the "good" motherboard's DRD28 before switching on the power. Once the power is switched on the signal is immediately "1" whereas on the "broken" motherboard there is no LED on the logic probe for "1" or "0".

At this point I am thinking that U16 memory chip is either bad or one of the chips on that path (Alice, Paula, Lisa).

--

I just wanted someone else's opinion before perhaps trying to swap out the U16 with a different chip from the other board.
rjd324 is offline  
Old 22 December 2020, 22:01   #16
cpiac64
Registered User
cpiac64's Avatar
 
Join Date: Apr 2010
Location: Italy
Posts: 1,011
test it with Logica diagnostic
cpiac64 is offline  
Old 16 January 2021, 20:25   #17
rjd324
Registered User

rjd324's Avatar
 
Join Date: May 2020
Location: NE / UK
Posts: 91
Okay, got to the bottom of this one.

Things I will never forget: if you get a problem like this, it is always good to press down on certain chips to see if you get a result. In this case, pressing down on Budgie fixed things. I reflowed the left side of budgie since that was data line 28 and, sure enough, it works.

Seems to always be a budgie issue for me with 1200s.

There is probably reasoning for this happening to me though. I had this board in a towered amiga with a mediator + a blizzard 1260 with a massive heatsink. It means that the blizzard is resting against the tower and at a slight angle (I tried to mitigate the issue by using slightly longer standoff screws on the side of the mboard on the expansion slot side). On top of that, I was inserting and removing cards often from the mediator board. Since the budgie is in the middle of the board then I imagine it takes a lot of the stress.

Anyway, thanks for all the help. I could not be bothered to get the oscilli out, but the logic probe gave some good hints as to where the problem lay.

PS:

Another thing I learned. Just because you have continuity between two end points, it don't mean everything is a-okay because by pressing down on a leg of a flat-package type IC with the needle of the multimeter you can make a contact which shows that there is continuity!

Another saved Amiga 2B motherboard, recapped and timing fixes applied.

Last edited by rjd324; 06 February 2021 at 03:19.
rjd324 is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Amiga 1200, Virtual Memory? Amicol Amiga scene 21 20 February 2014 20:37
Blizzard Turbo Memory - SMD memory chips doesn't work sanjyuubi Hardware mods 5 26 May 2010 16:40
Problem with runing Dopus 4.16 under WinUAE olesio support.WinUAE 4 06 December 2009 17:44
What memory upgrades would you recommend for an amiga 1200? dword New to Emulation or Amiga scene 13 24 November 2008 11:50
amiga 1200 and memory sink support.Hardware 8 04 February 2007 20:40

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 19:06.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.
Page generated in 0.12833 seconds with 13 queries