UK Vintage Radio Repair and Restoration Powered By Google Custom Search Vintage Radio and TV Service Data

Go Back   UK Vintage Radio Repair and Restoration Discussion Forum > Specific Vintage Equipment > Vintage Computers

Notices

Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment.

Reply
 
Thread Tools
Old 29th Aug 2023, 12:08 am   #101
ortek_service
Octode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,196
Default Re: Commodore 8050 dual disk drive

Well that could mean it is sensing a pin is not connected properly, so could be getting upset if pin 20 is being disconnected and not have a 'dummy-load' resistor in its place.
- I presume if it knows a device is 'missing' then it must be doing current measurement checks on all the pins (and not just the supply), although it would be helpful if it had mentioned which pin(s) it thought there was a problem with (like the Dataman / Elnec programmers do)
Unless it is trying to read an ID-code, but again most programmers would normally tell you the mis-matched codes / give you option to ignore / not do the check.

So I would think it should be possible to read these with it, to get a standard binary / Intel Hex etc. file.
- Would probably need to write some (maybe python etc) code to reformat the ASCII-Hex text file with <CR> / <LF> etc, cut from the Arduino output, into something more-standard as would probably struggle to find any hex-editors that would be able to import this directly.


Quote:
Originally Posted by ScottishColin View Post
When I try to read it I get the message "Load failed. Device missing or faulty" and it doesn't attmpt any further action.

Colin.

Quote:
Originally Posted by ortek_service View Post
Quote:
Originally Posted by ScottishColin View Post
OK - that didn't work with my STAG but attached is the output via PUTTY from the Arduino sketch.

Colin.
When you say your Stag didn't work, what exactly was the symptoms?

Did it actually let you read the ROM, or did it give an error message?
- As it was trying to be 'too-clever' and doing some pin-checks etc that you couldn't make it ignore?
(With Dataman's etc. I've just connected, via 10k resistors yo ground, any pins that it is expecting to be connected to the selected-IC (but adapter I'm using isn't connecting these to the IC)

Otherwise, was it just reading all FF's etc?
- I would have expected that if you'd pulled-up (after isolating from programmer socket) the active-high CS1 pin (20) to the IC's Vcc (Pin24), via a suitable resistor (or probably even directly connected), then there shouldn't really be much to stop it outputting the data of the address that is being selected on the address lines.
ortek_service is offline   Reply With Quote
Old 29th Aug 2023, 12:16 am   #102
ortek_service
Octode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,196
Default Re: Commodore 8050 dual disk drive

Quote:
Originally Posted by ScottishColin View Post
>>

With everything back in the drive unit, I now get four flashes which isn't valid according to the manual.

Having said that, here's a link to a thread elsewhere where they say (last post) that the 8050 isn't as per the manual (but don't say what it actually is)

http://forum.6502.org/viewtopic.php?f=3&t=4285

I have 2 x 6532s on the way from Cricklewood and will see if that helps. I also have the RRIOT chip replacement PCB coming too so all hope is not lost I think.

In the meantime, I'll do some continuity checking as per post #68.

If there's anything else I can check with any other ICs with my scope or meter, I'm not giving up yet. There's a part of me that thinks the basics are OK - as in something has detected an error at least and is trying to work as designed. I hope.

Colin.
>>
>>
I was a little confused how the original 3-flash (Lower of the two in Memory ROM) fault, became 4-flashes
- Before the faulty 2114's were replaced (But maybe if RAM was Intermittent, then maybe parts of it that needed to be working for it to do the checksumming / H/W-checks OK).

However, with good 2114's fitted, does it now not give any error-flashes / a completely-different code?
ortek_service is offline   Reply With Quote
Old 29th Aug 2023, 12:32 am   #103
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,089
Default Re: Commodore 8050 dual disk drive

Quote:
Would probably need to write some (maybe python etc) code to reformat the ASCII-Hex text file with <CR> / <LF> etc, cut from the Arduino output, into something more-standard
It's really a solved problem Owen, the ROMs were read using an Arduino which, among other things, produced the 16-bit checksums of the two ROMs under investigation.

It was then possible to load the matching .bin files for these ROMs from online sources into a hex editor and observe that the .bin files had the same checksums as the ROM readouts produced by the Arduino.

The same Arduino sketch can also, alternatively, output the code as Intel Hex code which can be cut from the Arduino serial monitor, pasted into a plain text editor and saved as a file which can then be loaded by the majority of EPROM programmers.

I agree it is odd that the simple trick of pulling the active-high CS pin high with a resistor did not allow the STAG programmer to read out the ROMs, but maybe it is so clever that it first deactivates the CS signal to the device in the socket and checks to make sure that its outputs are tristate under those conditions.
SiriusHardware is offline   Reply With Quote
Old 29th Aug 2023, 12:34 am   #104
ortek_service
Octode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,196
Default Re: Commodore 8050 dual disk drive

Quote:
Originally Posted by SiriusHardware View Post
Quote:
Either fit a known-good set of RAMs or test the ones you removed, it should be possible to produce a 2114 tester using the Arduino.
It probably won't surprise you to know that there is already a ready-baked 2114 tester 'sketch' (program) for Arduino. Unusually for Arduino it goes straight 'to the metal' (that is, it drives the underlying AVR micro directly for speed reasons) and will probably only run as written on an Arduino UNO.

https://github.com/Danjovic/2114-Tester

However, Colin already has two very good 2114 testers in the form of his two PETs in which the 2114 video RAMs are socketed. That should be quite a good stress test for them.

If Colin has the Arduino Mega version, then Chris has provided a 2114-Tester variant for that http://theoddys.com/acorn/developmen...14_tester.html

And so can make one of these shields on a bit of prototyping-board at very-little cost - mainly the ZIP socket, but many cheap copies of original ones now obtainable.

Having a more-modern dedicated tester like this, does mean you don't need to rely on having a working vintage computer to open-up (Or lift the bonnet of with a PET), that might get damaged if using its IC sockets too much (especially with previously soldered pins).
It may also allow more-extensive checks / reporting of errors, and with the right software should also be able to test a variety of Digital Memory / Logic IC's with it, as well as read contents of - especially with a large-enough socket - as a more universal IC Tester (Which I believe people have been working on as an open-source low-cost alternative to proprietary systems that may no longer be available / supported)
ortek_service is offline   Reply With Quote
Old 29th Aug 2023, 4:41 am   #105
TonyDuell
Dekatron
 
Join Date: Jun 2015
Location: Biggin Hill, London, UK.
Posts: 5,066
Default Re: Commodore 8050 dual disk drive

I am confused as to where we are now :

Is the digital PCB working correctly with no flash codes?

Which drive doesn't spin. When you unsoldered that diode on the analogue board, which drive runs continuously? The one that seems to work or the one that wouldn't spin before?
TonyDuell is offline   Reply With Quote
Old 29th Aug 2023, 8:01 am   #106
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,089
Default Re: Commodore 8050 dual disk drive

As I understand it, with CR26 disconnected the motor of the drive which works spins, so I have asked Colin now to try doing the same thing with CR22, the equivalent diode in the motor control output circuit of the 'other' drive.
SiriusHardware is offline   Reply With Quote
Old 29th Aug 2023, 11:04 am   #107
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

Apologies - a summary is required.

1. I have replaced most of the white sockets
2. I have checked the contets of the two ROM chips and they are OK
3. I have tested the 6502s and 6522 OK
4. After removing, testing and replacing two of the 2114s, the unit no longer flashes any error codes and the left hand of the two drives (Drive 1) works correctly
5. The right hand disk drive (Drive 0) does not spin up when a disk is inserted nor do any PET commands work correctly for that drive
6. The right hand drive has the analog PCB attached to it
7. The right hand drive is marked as Drive 0 on the front of the case
8. Both floppy disk motos spin correctly when 9v is applied directly to the motors

I think that's it - there is some confusion here over which is Drive 0 and which is Drive 1 - it appears that Commodore in their wisdom have put them the 'wrong' way round ie Drive 1 on the left, Drive 0 on the right. This is also true of the 4040 disk drive unit I have. So connector P5 connects to Drive 1 on the left which works, connector P8 connects to Drive 0 on the irght which does not.

Hope this helps.

Colin.
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 11:08 am   #108
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

Not that I'm going to do this, but in theory would this be useable with an IC test clip so chips didn't need to be de-soldered?

Colin.

Quote:
Originally Posted by ortek_service View Post
Quote:
Originally Posted by SiriusHardware View Post
Quote:
Either fit a known-good set of RAMs or test the ones you removed, it should be possible to produce a 2114 tester using the Arduino.
It probably won't surprise you to know that there is already a ready-baked 2114 tester 'sketch' (program) for Arduino. Unusually for Arduino it goes straight 'to the metal' (that is, it drives the underlying AVR micro directly for speed reasons) and will probably only run as written on an Arduino UNO.

https://github.com/Danjovic/2114-Tester

However, Colin already has two very good 2114 testers in the form of his two PETs in which the 2114 video RAMs are socketed. That should be quite a good stress test for them.

If Colin has the Arduino Mega version, then Chris has provided a 2114-Tester variant for that http://theoddys.com/acorn/developmen...14_tester.html

And so can make one of these shields on a bit of prototyping-board at very-little cost - mainly the ZIP socket, but many cheap copies of original ones now obtainable.

Having a more-modern dedicated tester like this, does mean you don't need to rely on having a working vintage computer to open-up (Or lift the bonnet of with a PET), that might get damaged if using its IC sockets too much (especially with previously soldered pins).
It may also allow more-extensive checks / reporting of errors, and with the right software should also be able to test a variety of Digital Memory / Logic IC's with it, as well as read contents of - especially with a large-enough socket - as a more universal IC Tester (Which I believe people have been working on as an open-source low-cost alternative to proprietary systems that may no longer be available / supported)
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 11:09 am   #109
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,089
Default Re: Commodore 8050 dual disk drive

OK, thanks for the summary. Can you reinstate CR26 and lift one end of CR22 to see if that makes drive 0's motor run continually?

Quote:
Not that I'm going to do this, but in theory would this be useable with an IC test clip so chips didn't need to be de-soldered?
Unfortunately no, Owen is suggesting a kind of Arduino based retro-chip mega-tester which caters for a wide variety of chips, but for the most part you would still need to disentangle the chips in question from all of the other chips connected to them - or in other words remove them - before being able to test them properly.

There is another method, which is to insert a tester into the socket where the CPU would normally live and use its capabilities to emulate the signals of the CPU to send out test signals to various parts of the system under test. While it can be done and there have been expensive commercially made testers for just this sort of purpose, some of which Owen has discussed in some detail in the past, making one (or programming an Arduino Mega to be one) is not trivial.

Last edited by SiriusHardware; 29th Aug 2023 at 11:16 am.
SiriusHardware is offline   Reply With Quote
Old 29th Aug 2023, 11:10 am   #110
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

This device has been giving different flashes at different times, but you;re right now; having replaced 2 of the 2114s, there's no flashes and therefore the digital PCB thinks all is good.

See post 107 for a summary re the right hand drive (Drive 0) not working however.

Colin.


Quote:
Originally Posted by ortek_service View Post
Quote:
Originally Posted by ScottishColin View Post
>>

With everything back in the drive unit, I now get four flashes which isn't valid according to the manual.

Having said that, here's a link to a thread elsewhere where they say (last post) that the 8050 isn't as per the manual (but don't say what it actually is)

http://forum.6502.org/viewtopic.php?f=3&t=4285

I have 2 x 6532s on the way from Cricklewood and will see if that helps. I also have the RRIOT chip replacement PCB coming too so all hope is not lost I think.

In the meantime, I'll do some continuity checking as per post #68.

If there's anything else I can check with any other ICs with my scope or meter, I'm not giving up yet. There's a part of me that thinks the basics are OK - as in something has detected an error at least and is trying to work as designed. I hope.

Colin.
>>
>>
I was a little confused how the original 3-flash (Lower of the two in Memory ROM) fault, became 4-flashes
- Before the faulty 2114's were replaced (But maybe if RAM was Intermittent, then maybe parts of it that needed to be working for it to do the checksumming / H/W-checks OK).

However, with good 2114's fitted, does it now not give any error-flashes / a completely-different code?
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 11:14 am   #111
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

I more often than not do what I'm told, but this time I'm interested in how you know to pull CR26 or CR22 and what effect that should have? Perhaps this may dive too deep into electronics for me, but I'd like to understand how you know to work on those specific diodes?

Colin.


Quote:
Originally Posted by SiriusHardware View Post
As I understand it, with CR26 disconnected the motor of the drive which works spins, so I have asked Colin now to try doing the same thing with CR22, the equivalent diode in the motor control output circuit of the 'other' drive.
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 11:54 am   #112
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,089
Default Re: Commodore 8050 dual disk drive

In normal circumstances the signal which comes from the preceding logic (U11 pins 8 and 6 respectively) tells the motor control circuit to be 'on' or 'off'.

When the controlling logic wants the motor to be 'off' it outputs a logic 0 'pulldown' via CR26 / (CR22) which turns off Q1 (Q2) and turns off the motor. When the controlling logic wants the motor to be 'on' it outputs a logic '1', allowing the base of Q1 (Q2) to rise to a level which turns the transistor on, thereby turning on the motor. By disconnecting the diode we separate the digital part of the circuit from the analogue 'output' part, this allows the motor output stage to turn on regardless of the logic state coming out of U11.

If, with the diode removed, the motor does turn on and run at the right speed, the 'analogue' part of the motor control circuit is working and the problem lies with the signals coming through the digital control circuit.

If, on the other hand, the motor does not run with the diode removed, then there is a problem with the 'analogue' part of the motor control circuit.
SiriusHardware is offline   Reply With Quote
Old 29th Aug 2023, 12:30 pm   #113
TonyDuell
Dekatron
 
Join Date: Jun 2015
Location: Biggin Hill, London, UK.
Posts: 5,066
Default Re: Commodore 8050 dual disk drive

OK, I will try to explain why I picked that diode as a first check. I'll relate my explanation to the non-working drive control circuit which is the lower half of page 13 in the PDF.

The drive motor connnects between pins 1 and 4 of P8. The component that controls the motor is the power darlington transistor Q2. You can think of this as being ust an npn transistor with a high current gain. Now as usual, if Q2 has no current flowing into the base, there is no current flowing in the collector. So no motor current, the motor does not run. If there is base current, then current can flow through the collector-emitter crcuit. Using conventional current (flowing +ve to -ve), the current comes from the 12V power supply via L6 (which is simply to filter noise and can be ignored for the moment),through the motor, then though the collector-emitter circuit of Q2, trhough R69 (1 ohm, it has a much lower resistance than R67 + R68, so carries almost all the current) and back to the power supply on the ground rail.

So the next thing to consider is where Q2 gets its base current from. What can pass a current from a point at a positive voltage to the base. The answer is R65 from the output of the op-amp U17. This op-amp compares the voltages at its 2 inputs.

Pin2 ('-ve' or invertining input) is the voltage across C30. The tachogenerator in the motor produce an AC voltage, the faster the motor turns, the higher the voltage. This is rectified by CR24 and smoothed by C30. The faster the motor turns, the higher the voltage on pin 2 of the op-amp

Pin 3 ('+ve' or non-inverting input) of the op-amp comes from the sliding contact ('wiper') of R61. Now CR25 is a so-called zener diode. It has the property that when it is connected up with R59 across the power supply, the voltage across it will be constant. So the voltage across R61 is also constant. And thus the voltage on pin 3 of the op-amp can be set to a particular voltage by adusting R61 and it will remain at that value.

So this is the motor speed control circuit. When the motor is going too slowly the op-amp provides a current to Q2's base via R65, the motor speeds up, When the motor is going too fast, there is less current into Q2, so it slows down.

Now consider the other components on Q2's base. We can ignore R66 in this explanation. Firstly, Q4, another transistor. If current flows into its base then it will 'steal' the base current from Q2, and run it to earth. Thus slowing/stopping the motor. Its base current is produced by the voltage drop across R69 effectively. R69, as I said earlier, carries the motor current from the emitter of Q2 back to the power supply. If the motor is drawing too much current, then Q4 will act to reduce Q2's base current and thus Q2 will reduce the motor current.

Now finally we get to CR22. It connects to the output of the OR gate U11c (pin 8 of that chip). If U11c's output is low, a logical 0, then the current that would have flowed into Q2's base will instead flow via CR22 into the OR gate output. Q2 gets no current, the motor can't run. If U11c's output is high, a logical 1, then CR22 is reverse biased and can carry no current. The current therefore flows into Q2's base, the motor runs and the speed is controlled as above.

U11c is an OR gate. It's output is a 1 (motor runs) if either or both of the inputs are 1. Pin 10 comes from the inverter U10e (pin 10) which inverts the motor-on signal from the digital board. P7 pin 3 (I think, the printing isn't clear).So the digital board makes that pin low, the motor runs. The circuitry connected to pin 9 of U11 is essentially a timer triggered by the disk insert swtch which causes the motor to run when you put a disk in to help centralised it on the spindle.

So that's why removing CR22 is useful. It separates the motor speed control circuit from the digital stuff that is suppose to stop the motor. By seeing if the motor runs without it we can see which part of the circuit to look at next

As to how I homed in on one diode on one of the boards, the simple answer is, I'm afraid, that I've been doing this sort of thing for over 40 years. It did not take me long to work out which page of the circuit was the motor controller. Then I spotted how it worked. Then I thought a good idea was to split it in half, to test the speed control circuit and the digital bit separately. So remove the diode that links them.
TonyDuell is offline   Reply With Quote
Old 29th Aug 2023, 12:33 pm   #114
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

With CR26 and CR22 lifted, both drives run continuously.

With just CR22 lifted, the non-working right-hand drive (Drive 0) runs continuously.

Colin.

Quote:
Originally Posted by SiriusHardware View Post
OK, thanks for the summary. Can you reinstate CR26 and lift one end of CR22 to see if that makes drive 0's motor run continually?

Quote:
Not that I'm going to do this, but in theory would this be useable with an IC test clip so chips didn't need to be de-soldered?
Unfortunately no, Owen is suggesting a kind of Arduino based retro-chip mega-tester which caters for a wide variety of chips, but for the most part you would still need to disentangle the chips in question from all of the other chips connected to them - or in other words remove them - before being able to test them properly.

There is another method, which is to insert a tester into the socket where the CPU would normally live and use its capabilities to emulate the signals of the CPU to send out test signals to various parts of the system under test. While it can be done and there have been expensive commercially made testers for just this sort of purpose, some of which Owen has discussed in some detail in the past, making one (or programming an Arduino Mega to be one) is not trivial.
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 12:35 pm   #115
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

I'll read through posts 112 and 113 thanks.

fyi, and this may mean nothing, one of the chips has previously been removed/socketed - U7.

Colin.
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 12:38 pm   #116
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,089
Default Re: Commodore 8050 dual disk drive

You can reinstate CR26 to restore normal operation of the working drive.

I'll step back for now and let Tony walk you through the process of finding out what's going on with the logic side of things.
SiriusHardware is offline   Reply With Quote
Old 29th Aug 2023, 12:39 pm   #117
TonyDuell
Dekatron
 
Join Date: Jun 2015
Location: Biggin Hill, London, UK.
Posts: 5,066
Default Re: Commodore 8050 dual disk drive

Right. So the fault is in the digital circuitry which suprises me.

I assume you don't have a logic probe. In which case use a DC voltmeter to measure the voltages on pins 10 and 11 of U10 (74LS14) and pins 8,9,10 of U11(74LS32) both with the thing 'idle' and when excuting a command from the PET that should access that drive.
TonyDuell is offline   Reply With Quote
Old 29th Aug 2023, 12:43 pm   #118
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,089
Default Re: Commodore 8050 dual disk drive

Back just briefly: Tony, Colin does have a dual-input DSO which he knows his way around.
SiriusHardware is offline   Reply With Quote
Old 29th Aug 2023, 1:07 pm   #119
ScottishColin
Octode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,604
Default Re: Commodore 8050 dual disk drive

Using my meter, I get:

Idle
U10/10 - 0.19V
U10/11 - 4.9V

U11/8 - 0.4V
U11/9 - 0.15V
U11/10 - 0.19V

'Finding it hard to get 'active' readings as it fails fast.

Would my scope be of more use?

Colin.

Quote:
Originally Posted by TonyDuell View Post
Right. So the fault is in the digital circuitry which suprises me.

I assume you don't have a logic probe. In which case use a DC voltmeter to measure the voltages on pins 10 and 11 of U10 (74LS14) and pins 8,9,10 of U11(74LS32) both with the thing 'idle' and when excuting a command from the PET that should access that drive.
ScottishColin is offline   Reply With Quote
Old 29th Aug 2023, 3:59 pm   #120
TonyDuell
Dekatron
 
Join Date: Jun 2015
Location: Biggin Hill, London, UK.
Posts: 5,066
Default Re: Commodore 8050 dual disk drive

Those look fine for the 'idle' readings.

You can try using the 'scope. What should happen is as follows :

The digital PCB will make U10/11 go low (to less than 0.8V). U10/10 should then go high (above 2.4V). U11/10 will do the same as they are connected. U11/8 should also go high.

I am not sure if you can trigger the 'scope on those but you can try.
TonyDuell is offline   Reply With Quote
Reply

Thread Tools



All times are GMT +1. The time now is 10:36 pm.


All information and advice on this forum is subject to the WARNING AND DISCLAIMER located at https://www.vintage-radio.net/rules.html.
Failure to heed this warning may result in death or serious injury to yourself and/or others.


Powered by vBulletin®
Copyright ©2000 - 2023, vBulletin Solutions, Inc.
Copyright ©2002 - 2023, Paul Stenning.