Amiga 2000 stopped working... (FIXED)

General hardware issues and troubleshooting etc

Moderators: terriblefire, Terriblefire Moderator

User avatar
stephen_usher
Site sponsor
Site sponsor
Posts: 7380
Joined: 13 Nov 2017 19:19
Location: Oxford, UK.

Re: Amiga 2000 stopped working...

Post by stephen_usher »

On the transceivers. We can forget the CPU for the time being.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
Kepler
Posts: 67
Joined: 05 Feb 2024 19:09

Re: Amiga 2000 stopped working...

Post by Kepler »

stephen_usher wrote: 16 Jun 2024 22:10
Kepler wrote: 16 Jun 2024 21:43 Is there a way to test the two 74LS245 bus buffers to determine if they are working correctly, other than removing them from the board?
If you look at the datasheet for the 245 you'll be able to see which pins tally for each bus, e.g. Pin 2 and Pin 18 are one pair. You can check each side to see if the two sets of data look similar. You can also check Pin 1 to see if that's going up and down as that specifies which direction the data is flowing through the chip. (If it's not going up and down then there's likely a problem with what's driving that signal.)

Each 245 is communicating 8 bits, so that's half the bus.

Anyway, first things first, 'scope each of the pins to see if one has less data flowing than all the rest would be my next plan (and checking that Pin 1 is toggling).
I can confirm that pin 1 is definitely not toggling. It remains high.
User avatar
stephen_usher
Site sponsor
Site sponsor
Posts: 7380
Joined: 13 Nov 2017 19:19
Location: Oxford, UK.

Re: Amiga 2000 stopped working...

Post by stephen_usher »

How about pin 19 (/OE Output Enable)? If this isn't being driven then nothing will get through.

Pin 1 being high means that data should be passing from the CPU to the rest of the system, if pin 19 is low.

Have a look at the datasheet: https://www.futurlec.com/74LS/74LS245.shtml
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
terriblefire
Admin sponsor
Admin sponsor
Posts: 5686
Joined: 28 Aug 2017 22:56
Location: Glasgow, UK

Re: Amiga 2000 stopped working...

Post by terriblefire »

I wouldnt expect anything to hit those bus buffers with the issue you have. Both DiagROM and Kickstart arent managing to execute enough code to start hitting the chipset. If you arent seeing anything on the serial port with DiagROM there is no point in looking at the 245s. It should spam the serial port whilst running completely out of ROM.

I will reiterate. I think you have either an address bus fault or data bus fault. Probably address bus fault causing code to be executed in the wrong part of the rom.

Without a logic analyser this is going be very tedious to find.

We know the DiagROM ROM is fine because it works on another board.
———
"It is not necessarily a supply voltage at no load, but the amount of current it can provide when touched that
indicates how much hurting you shall receive."
terriblefire
Admin sponsor
Admin sponsor
Posts: 5686
Joined: 28 Aug 2017 22:56
Location: Glasgow, UK

Re: Amiga 2000 stopped working...

Post by terriblefire »

So that you can both see whats supposed to happen... When the amiga resets the ROM is mapped at address 0 until the CIA bit that assert OVL is changed.

Code: Select all

ROM:00F80000 ; Segment type: Pure code
ROM:00F80000 ; segment "ROM"
ROM:00F80000                 move.b  (a4),-(a0)
ROM:00F80002                 jmp     loc_F800D2
ROM:00F80002 ; ---------------------------------------------------------------------------
ROM:00F80008                 dc.l unk_F89CBA
ROM:00F8000C                 dc.l unk_F89CCE
ROM:00F80010                 dc.l unk_F89CE2
ROM:00F80014                 dc.l unk_F89CF6
ROM:00F80018                 dc.l unk_F89D0A
ROM:00F8001C                 dc.l unk_F89D1E
ROM:00F80020                 dc.l unk_F89D32
ROM:00F80024                 dc.l unk_F89D46
ROM:00F80028                 dc.l unk_F89D5A
ROM:00F8002C aIhol6u6uAB1u1u:dc.b 'IHOL : :6U6U,A,B1U1U5767U,U,8181 1 0    HILO: : U6U6A,B,U1U1757'
ROM:00F8002C                 dc.b '6,U,U18181 0     $VER: DiagROM Amiga Diagnostic by John Hertell'
ROM:00F8002C                 dc.b '. www.diagrom.com 2023-09-07',$A
ROM:00F8002C                 dc.b '- V1.3',0
ROM:00F800CE                 dc.b   0
ROM:00F800CF                 dc.b   0
ROM:00F800D0                 dc.b   0
ROM:00F800D1                 dc.b   0
ROM:00F800D2 ; ---------------------------------------------------------------------------
ROM:00F800D2
ROM:00F800D2 loc_F800D2:                             ; CODE XREF: ROM:00F80002↑j
ROM:00F800D2                 clr.l   d0
ROM:00F800D4                 clr.l   d1
ROM:00F800D6                 clr.l   d2
ROM:00F800D8                 clr.l   d3
ROM:00F800DA                 clr.l   d4
ROM:00F800DC                 clr.l   d6
ROM:00F800DE                 clr.l   d7
ROM:00F800E0                 movea.l d0,a0
ROM:00F800E2                 nop
ROM:00F800E4                 lea     (0).l,a1
ROM:00F800EA                 lea     (0).l,a2
ROM:00F800F0                 lea     (0).l,a3
ROM:00F800F6                 lea     (0).l,a4
ROM:00F800FC                 lea     (0).l,a5
ROM:00F80102                 lea     (0).l,a6
ROM:00F80108                 lea     ($400).l,sp
ROM:00F8010E                 move.b  #$FF,($BFE200).l
As you can see what happens is the machine is supposed to execute a jump to 0xf800d2. I am 99.9% convinced this isnt happening and that some other random code is being executed resulting in a double fault. The same pattern happens for both Kickstart and DiagROM. The fact Kickstart gets further is a red herring. its likely just hit a random bit of code in the ROM that loops.

EDIT: The reason i'm convinced of this is because the bus cycle that would hit the CIAs $BFExxx, are over 1us and the ROM cycles are 200->300ns. There was no significant difference in bus cycle on the traces you showed. So its not even got to 0xF8010E. So its gone off the rails before that.
———
"It is not necessarily a supply voltage at no load, but the amount of current it can provide when touched that
indicates how much hurting you shall receive."
User avatar
stephen_usher
Site sponsor
Site sponsor
Posts: 7380
Joined: 13 Nov 2017 19:19
Location: Oxford, UK.

Re: Amiga 2000 stopped working...

Post by stephen_usher »

@terriblefire I guess the next thing to look at will be the address lines and data lines at the CPU vs. the ROM?

Maybe not only continuity between the lines at each end but a check for shorts between them?

Possibly look at the signals with an oscilloscope to see if any look "wrong"?

I agree that without a logic analyser at this point it gets tricky.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
Kepler
Posts: 67
Joined: 05 Feb 2024 19:09

Re: Amiga 2000 stopped working...

Post by Kepler »

I assume that a logic analyser is different than a logic probe?
User avatar
stephen_usher
Site sponsor
Site sponsor
Posts: 7380
Joined: 13 Nov 2017 19:19
Location: Oxford, UK.

Re: Amiga 2000 stopped working...

Post by stephen_usher »

Yes, it's something which records the high/low states of a number of signals and can present them as a graph with the time on the X axis and each of the signals next to each other so that you can see their respective timing.

Here's an example of an output:

IMG_3637.JPG
You do not have the required permissions to view the files attached to this post.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
User avatar
stephen_usher
Site sponsor
Site sponsor
Posts: 7380
Joined: 13 Nov 2017 19:19
Location: Oxford, UK.

Re: Amiga 2000 stopped working...

Post by stephen_usher »

So, looking at the schematics, the only things on the CPU data bus are the CPU, ROM, the two 8520 (U300 & U301), U801 (clock chip) and the latches/transceivers. Unfortunately the address bus goes everywhere so harder to isolate.

I think one of the first things tried was swapping the 8520 chips.

Hmm....

I take it that you've looked at the address and data bus signals at the CPU to see if any look strange?
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
Kepler
Posts: 67
Joined: 05 Feb 2024 19:09

Re: Amiga 2000 stopped working...

Post by Kepler »

Yes. D2 (CPU pin 3) is the only address line that is low. The others all have activity on them. That doesn't seem correct.

Return to “AMIGA HARDWARE HELP”

Who is online

Users browsing this forum: ClaudeBot and 4 guests