ukVac.com Homepage
Forum Home Forum Home > Technical > Tech, Maintenance & Repairs
  New Posts New Posts RSS Feed - Troubleshooting ABI Boardmaster 4000
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Skin:


Troubleshooting ABI Boardmaster 4000

 Post Reply Post Reply Page  123 13>
Author
Message
 Rating: Topic Rating: 1 Votes, Average 5.00  Topic Search Topic Search  Topic Options Topic Options
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Topic: Troubleshooting ABI Boardmaster 4000
    Posted: 02 Aug 2011 at 4:09pm
Some months ago I picked up a job lot of dead/partially working ABI Boardmaster 4000s. I already had one which was an older BM4K model with a reflective LCD screen but these are the newer models which have a backlit LCD.

My original ABI reported self-test faults on power up which was suspected by the seller as being related to the PSU. The unit still works fine so I was happy with it, but I'd had no luck fixing the fault and ABI weren't any help so when I had the chance to pick up some more units I figured it was a good time to try swapping assemblies from each until I can isolate the parts triggering the self test failures, as the fail codes don't give any clues that I can determine.

So this thread is about the examination and hopeful fix of as many of these ABIs as I can.

My plan is to take the 4 devices that I have, record the self-test errors and then swap sub-assemblies over until I can alter the fault codes. My theory is that if I can swap e.g. a PSU and change or stop a fault code, then I'll know that is a good PSU so it can be swapped into another unit to see whether that unit's fault is PSU related. Well, that's the plan ;)

So first step is to categorise the units and their faults. I've got one out on loan which I'm going to have to call back in at some point (sorry Rob ) but I'll record the units and their faults below.
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 02 Aug 2011 at 4:40pm
Here is my first exemplar. This is ABI #1 and is fully working according to the self test.

I'm going to open it up in a minute and measure the PSU outputs to see how many and what voltages. Once I've done that, I'll remove the PSU (or remove the rest if the PSU is too tricky to remove) and label it up as "#1 working" and then try it in a unit which reports self test failure. I figure it makes sense to swap in a known good PSU as if the other units have faulty PSUs then they could potentially toast the logic board. Doubtful, as all bar one have some degree of functionality but better safe than sorry.

Unit #1 - main view



Unit #1 - screen view



At some point I'll also make sure they're all running the latest ROMs, although I think 3.10 is the most recent I have.
Back to Top
Equites View Drop Down
Senior Members
Senior Members
Avatar
Chief Sheesher®

Joined: 28 Jun 2010
Location: Warrington
Status: Offline
Points: 22314

Feedback: 5
Post Options Post Options   Thanks (3) Thanks(3)   Quote Equites Quote  Post ReplyReply Direct Link To This Post Posted: 02 Aug 2011 at 5:33pm
Cool - this will be interesting, seem to be fixing more ABI's than PCBs at the moment don't we lol.
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 02 Aug 2011 at 10:22pm
OK. I've opened this one up and am separating all the parts so I can swap them into self test failing units.

Pics and explanations of what they are follow:

Back panel of the ABI showing input ports.
Back panel of the ABI

Disassembly step 1 - there are four of these screws, a pair each side. In this picture note the banana sockets (red & black) for powering the unit under test (aka UUT).



Followed by a pair of longer screws holding the back panel down:


When you disconnect the cables running from the bottom mounted boards to the top mounted, this is what you see inside. This is the top half of the unit.

Bear in mind this is upside down so underneath all this is the LCD screen and the keyboard is facing the desktop.



This is a shot of the insides of the bottom of the unit. The daughter-board on the middle right which is unlabelled is the video display driver PCB. At the top of the picture you can see the connectors for the in-circuit test leads as well as the 5VDC/GND connections for the UUT. At this point I think the main CPU is a Z80, but a later image suggests I may be wrong. Will have to remove the label to confirm.



This is the PLCC in the socket to the right of the timekeeper ram. The part number indicates it's an MPU which is designed to interface to intel 80xx or Motorola 68xx CPUs which is why I'm now doubting the main CPU is a Z80, as Hitachi make a 64180 designed for the Z80.



Floppy drive controller on the logic board from the base of the machine.



And the object of my immediate focus - the UUT (Unit under test - the PCB you're doing in-circuit testing on) PSU. I've got indications at least one ABI has a dead UUT PSU, but as they're basically an iron core transformer, a thyristor (to stop a dead short?) and a voltage regulator I'm not sure they're really dead. I will be checking out the fuse on my other units, and I'm also investigating a pair of wires which leads from this to the logic board - perhaps it's a voltage sense device which has failed causing the UUT PSU to report bad?



So that's about it for tonight. It took some finagling to get everything out and record where it should be reconnected to, but tomorrow I'm going to measure the UUT PSU output on a failing machine and see if I can do anything about it by swapping this working part in.


Edited by trm - 02 Aug 2011 at 10:26pm
Back to Top
Macro View Drop Down
Senior Members
Senior Members
Avatar

Joined: 13 May 1999
Location: Norfolk, UK
Status: Offline
Points: 3349

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote Macro Quote  Post ReplyReply Direct Link To This Post Posted: 03 Aug 2011 at 11:21pm
you could always dissassemble the code and see what gives what errors ... 
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 04 Aug 2011 at 10:15pm
Funnily enough Macro that was pretty much the conclusion I reached on IRC last night after talking to PaulS and some of the other guys. I figure it should be reasonably easy to find the self-test, plus I can trigger it from the menu so I could LA capture or Fluke the box to get a hit on the self-test code address and then work from there. I also figure providing as close to complete a list of self-test codes and their causes will have more widespread benefit to people who have dodgy ABIs but don't have enough spares to try substitution based fault finding.

I just need to determine which CPU it is - for some reason Z80 is stuck in my head but the Hitachi chip is a Moto 68xx/intel 80xx compatible version and what appears to be the main CPU (gated to the program ROMs, got a local xtal, some local SRAM) has been ground down so I can't ID it.

I'd like to run the ROMs through some kind of analyser which guesstimates what architecture they're for but I've not found anything yet. I really hope the main code doesn't execute on the Hitachi chip as my IDA Pro doesn't have that as a target. The text seems to follow intel endianness so I'm going to check out the candidate chips and see which match up which will hopefully narrow things down.

Been out today doing stuff so no progress, but I'll be reporting the latest updates tomorrow.
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 07 Aug 2011 at 8:47pm
OK. Had a bit more time to spend on this so I took a working but self-test failing logic board and fitted it to a known good PSU, keyboard, floppy and IO board. Power up and nothing happens apart from the backlight illuminating.

Before writing this off completely I realised that I'd left in the video driver board which controls the LCD and plugs into the logic board. The suss logic board is set up to drive an older LCD model whereas the rest of the donor parts are set up for a newer LCD so I'm just about to swap the video board making the franken-unit a completely known-good unit with a suspect logic board. If that fails then it's time to buy some more cables and make up a longer set so I can operate the unit in two halves and get access to the gubbins whilst it's running.

Does anybody know which CPU this thing runs on? I thought the ROMs for the BM4k were also usable in the DIT24 which is a Z80 machine, so I've assumed this is Z80 too. However, I can't get any kind of meaningful disassembly
Back to Top
G-man View Drop Down
User
User
Avatar

Joined: 13 Apr 1999
Location: United Kingdom
Status: Offline
Points: 472

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote G-man Quote  Post ReplyReply Direct Link To This Post Posted: 07 Aug 2011 at 8:52pm
The BM4K roms can run on the DDS machine but I didn't think they could on the DIT's.

Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 07 Aug 2011 at 9:04pm
Ahh. Thanks Graham - that's probably where I got confused.

I've only positively identified a single CPU which is the Hitatchi 64180 so I'm going to poke around and see if I can find a manual for this and some info on the opcodes.

You got any idea what CPU is in your DDS machine (if you still have it)?
Back to Top
Macro View Drop Down
Senior Members
Senior Members
Avatar

Joined: 13 May 1999
Location: Norfolk, UK
Status: Offline
Points: 3349

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote Macro Quote  Post ReplyReply Direct Link To This Post Posted: 07 Aug 2011 at 10:40pm
I'll have a look and see if I can detect anything in there

well, having a look at the code, it's a extended version of the Z80, most likely (from the picture you posted above!) is the Hitachi HD64180 - which is a z80 variant that supports more memory, and more program code.

had a quick look at the code and it makes sense in that format.

n.b  the R or Z doesn't change the internal code it runs, just changes the way it interfaces to the outside world to make it easier to control chips designed for use with Z80 based architecture or 68xx architecture.

I presume some of the memory fetch logic etc. changes.

e.g.
0000 f3        di     
0001 c33b00    jp      003bh

003b 31f0ff    ld      sp,0fff0h
003e 3efe      ld      a,0feh
0040 ed393a    out0    (3ah),a          ; Z180 instruction
0043 3eb0      ld      a,0b0h
0045 ed3938    out0    (38h),a          ; Z180 instruction
0048 3e24      ld      a,24h
004a ed3939    out0    (39h),a          ; Z180 instruction
004d c300e0    jp      0e000h



Edited by Macro - 07 Aug 2011 at 11:25pm
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 08 Aug 2011 at 4:03pm
Thank you Macro

Just had another run through IDA and it's making much more sense. Well, relatively speaking as I prefer Moto syntax.

Off to find the self test strings and then work backwards. What I'd give for an lea #error_codes,a0.

Now for some probing to see where each IO port routes to.

Thanks for the help Obi-wan.

Edited by trm - 08 Aug 2011 at 4:09pm
Back to Top
Macro View Drop Down
Senior Members
Senior Members
Avatar

Joined: 13 May 1999
Location: Norfolk, UK
Status: Offline
Points: 3349

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote Macro Quote  Post ReplyReply Direct Link To This Post Posted: 08 Aug 2011 at 8:45pm
ok, stuff that may help

MPU INTERNAL I/O ADDRESSES
ADDRESS FUNCTION
00 hex ASCI Control Register A Ch 0
01 hex ASCI Control Register A Ch 1
02 hex ASCI Control Register B Ch 0
03 hex ASCI Control Register B Ch 1
04 hex ASCI Status Register Ch 0
05 hex ASCI Status Register Ch 1
06 hex ASCI Transmit Data Register Ch 0
07 hex ASCI Transmit Data Register Ch 1
08 hex ASCI Receive Data Register Ch 0
09 hex ASCI Receive Data Register Ch 1
0C hex Timer Data Register Ch 0 low byte
0D hex Timer Data Register Ch 0 High byte
0E hex Reload Register Ch 0 Low byte
0F hex Reload Register Ch 1 High byte
10 hex Timer Control Register
0A hex CSI/O Control Register
0B hex CSI/O Transmit/Receive Data Register
14 hex Timer Data Register Ch 1 low byte
15 hex Timer Data Register Ch 1 high byte
16 hex Reload Register Ch 1 low byte
17 hex Reload Register Ch 1 high byte
18 hex Free Running Counter
20 hex DMA Source Address Register Ch 0 low byte
21 hex DMA Source Address Register Ch 0 high byte
22 hex DMA Source Address Register Ch 0 bank byte
23 hex DMA Destination Address Register Ch 0 low byte
24 hex DMA Destination Address Register Ch 0 high byte
25 hex DMA Destination Address Register Ch 0 bank byte
26 hex DMA Byte Count Register Ch 0 low byte
27 hex DMA Byte Count Register Ch 0 high byte
28 hex DMA Memory Address Register Ch 1 low byte
29 hex DMA Memory Address Register Ch 1 high byte
2A hex DMA Memory Address Register Ch 1 bank byte
2B hex DMA I/O Address Register Ch 1 low byte
2C hex DMA I/O Address Register Ch 1 high byte
2E hex DMA Byte Count Register Ch 1 low byte
2F hex DMA Byte Count Register Ch 1 high byte
30 hex DMA Status Register
31 hex DMA Mode Register
32 hex DMA/WAIT Control Register
33 hex IL Register ( Interrupt Vector Low )
34 hex INT/TRAP Control Register
36 hex Refresh control Register
38 hex MMU Common Base Register
39 hex MMU Bank Base Register
3A hex MMU Common/Bank Area Register
3E hex Operation Mode Control Register
3F hex I/O Control Register

so, from the bit I posted, it is conveniently setting up the memory map and banking (which you may need to decode to work out where jp 0e000h is going to end up!)

CBAR = FE, which I think makes the bank from E000-EFFF, below E000 would be common, and above F000 would also be common. the next bits select which bank to page in - don't toally understand that yet, so can't help!

Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 12 Aug 2011 at 5:05pm
That data has been very useful, thanks Mike :) At the moment my disassembly is mixed between IDA and a paper notebook so I need to condense it all into IDA.

As a quick test I'm just burning some EPROMS containing a slightly modified version of firmware 3.10. There are 10 instances of the string "self test" in the ROM, so I've modded the strings to indicate which instance they are and I'm hoping from that it'll give me a good clue as to which address is accessed for the error display so I can focus on the subs which access that particular string address.

Here's hoping there's no checksumming

I'll also be placing an order for the few parts I don't have to allow me to make a full set of long cables so I can lay the two halves of the ABI back to back and have the unit running decased which I can't effectively do at the moment.
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 12 Aug 2011 at 7:07pm
Originally posted by trm trm wrote:

OK. Had a bit more time to spend on this so I took a working but self-test failing logic board and fitted it to a known good PSU, keyboard, floppy and IO board. Power up and nothing happens apart from the backlight illuminating.


I needed to reassemble a working unit so that I could try out my modified ROMs, so I thought I'd have one more reseat of the connectors in my Franken-unit before nicking the known good bits to get the original exemplar working. Lo and behold - it powers up with my working logic board and the suspect upper half parts (PSU, screen, keypad, IO board) and passes self test!!!!!11

Given that the only parts from the known-good machine are the logic board and display output card it suggests that the self test fault lies in one of those two components, so I'm going to swap the display output card and to bring this down to one variable and hopefully tie it to the logic board.

Back to Top
guddler View Drop Down
Senior Member
Senior Member
Avatar
Busting vectors like it's 1982!

5 Years of Supporting ukvac.com!

5 Years of Supporting ukvac.com!



Joined: 24 Sep 2000
Location: W.Somerset
Status: Offline
Points: 59702

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote guddler Quote  Post ReplyReply Direct Link To This Post Posted: 13 Aug 2011 at 11:40am
Would the display output card even be likely to cause a self test fault???
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 13 Aug 2011 at 11:57am
I wouldn't have thought so either, but I'm not making any assumptions about these as every time I do, it bites me on the ass :)
Back to Top
Macro View Drop Down
Senior Members
Senior Members
Avatar

Joined: 13 May 1999
Location: Norfolk, UK
Status: Offline
Points: 3349

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote Macro Quote  Post ReplyReply Direct Link To This Post Posted: 14 Aug 2011 at 10:12pm
well, mine probably needs some surgery now - made a nice 'pop' noise when I used it Thursday, and although it still seems to work fine, it has that nice burning component smell when on, so need to track down what went pop and replace it.

since it still passes self test, hopefully something common - like one of the diodes in the bridge.
Back to Top
trm View Drop Down
Senior Members
Senior Members
Avatar
Who loves you, and who do you love?

Joined: 24 Jan 2008
Location: USSR
Status: Offline
Points: 5740

Feedback: 5
Post Options Post Options   Thanks (0) Thanks(0)   Quote trm Quote  Post ReplyReply Direct Link To This Post Posted: 15 Aug 2011 at 10:10pm
Back to hardware testing today and relay K15 is giving me a duff reading on pins 2 & 3 which are the coil for the electromagnet which activates the reed switch. All the other (49 relays) show a resistance of ~ 400R on the coil where as this appears to be open circuit!

Could be a complete red herring and K15 is just wired differently, so I'm about to dissect another logic board to see what K15 reads. Fingers crossed!

ETA: I just happened to have another window open which listed my error message which I thought I'd uploaded.

The error code is: P 15/1 59,60,61,58,63,K15

Which has unsurprisingly made me a bit more confident about the dodgy coil resistance of K15 relay Tomorrow's first job will be to substitute!
Back to Top
shep View Drop Down
Senior Member
Senior Member
Avatar

Joined: 12 Apr 2011
Status: Offline
Points: 10560

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote shep Quote  Post ReplyReply Direct Link To This Post Posted: 17 Aug 2011 at 6:17pm
What's the going rate for one of these? There's one on eBay but it's not cheap.
Back to Top
Macro View Drop Down
Senior Members
Senior Members
Avatar

Joined: 13 May 1999
Location: Norfolk, UK
Status: Offline
Points: 3349

Feedback: 5
Post Options Post Options   Thanks (1) Thanks(1)   Quote Macro Quote  Post ReplyReply Direct Link To This Post Posted: 17 Aug 2011 at 10:24pm
used to be £1000 or so, but there was a glut of them a while back and you could get them for £120-£150

been a little scarce since, so it would seem the price is wandering back up

there was an ABI 8000 a while back, that was £1000+, probably worth it if you do enough repairs ...
Back to Top
 Post Reply Post Reply Page  123 13>
  Share Topic   

Forum Jump Forum Permissions View Drop Down



This page was generated in 0.906 seconds.