Repair help: OSI 600

ianoid
Posts: 27
Joined: Mon Dec 23, 2013 12:40 am

Re: Repair help: OSI 600

Post by ianoid »

It could have happened that I left the power on, but fortunately that wasn’t it.

I will admit I did put a RAM chip in the wrong way earlier, but after fixing that, the chip and computer still worked.

This change to black screen seemed somewhat random.

Any suggestions for troubleshooting a black screen for this 600?
ianoid
Posts: 27
Joined: Mon Dec 23, 2013 12:40 am

Re: Repair help: OSI 600

Post by ianoid »

OK, so I did some RAM swapping on the board (the original board I posted about that has nothing in the expansion area) and found a RAM chip that was stopping the computer from starting up. Now I have it fully operational, as best I can tell, showing 7423 RAM, which is very exciting. It is sn144134

Thanks to everyone for all their help.

Now, on to the second board.

This board I tried replacing all the RAM (or swapping most of it out since I was short maybe 4 new 2114s). It remains stuck at D/C/W/M? Although it does respond to “-“ giving me a “0000 00” at the top of the screen that does not respond to anything. When I put certain RAM in U31, it showed “0000 05” or “0000 0F”. Those were bad chips. Since I had no luck with the new RAM I just put all the old RAM back, except for the one at U40 that members here had me swap out, which got me from a garbled screen to the nice D/C/W/M screen.

Note that when I push most keys, the screen flickers in response, but doesn’t follow other commands, so I’m guessing the keyboard is at least partially working, although of course that could still be the problem. I will go through some earlier steps to check on caps lock when I have time. Unless someone knows that the keyboard responding to “-“ obviates the need.

Just doing what I could easily, I swapped out all the ROMs U9-U13 individually with the working board, as well as a few other chips like the 6502 just to see if I could get anywhere. I am stuck at this screen. Also note that this board is configured to not require break on boot up.

Something I noticed about the power supply I am using from a Challenger case, is that when it is powered off, it only slowly loses power. After 10 or 15 seconds, it could still put out 1-2V, so now I am disconnecting the PS every time I mess with the board.

Not sure if all this information is useful, just trying to provide as much as I can. What to do next to get this guy working?

Ian
Klyball
Posts: 233
Joined: Tue Dec 09, 2014 12:53 am

Re: Repair help: OSI 600

Post by Klyball »

Try checking if the caps lock is working. If not short it and try
Replica 600 Rev D:8K,CEGMON
Replica 610 Rev B: 24k,MPI B-51 with Custom Data separator D-13
510 on the bench/replica 582 backplane/replica 470a /replica 555/original 570B/2 x Shugart 851
Ongoing : 630 ,620 ,510,542c,custom 590,SA1200,592,594,596,598
ianoid
Posts: 27
Joined: Mon Dec 23, 2013 12:40 am

Re: Repair help: OSI 600

Post by ianoid »

Thanks. I do believe Caps Lock works since I get a signal change on pin 2 of U4 when I change Caps Lock. At least mechanically it works.

Anything else I should try replacing to get past the D/C/W/M? Screen? I went through nearly all the RAM again and it hasn’t changed.

Does anyone know what that “=/-“ key means specifically, when it gives me the 0000 00 screen? It seems like if I slot bad RAM it changes. Is it a RAM test? Again, “=/-“ is the only key that does anything with this unit.
bxdanny
Posts: 335
Joined: Thu Apr 16, 2015 2:27 pm
Location: Bronx, NY USA

Re: Repair help: OSI 600

Post by bxdanny »

The -/= key can generate either $2D (-), $3D (=), or $4D (M), depending on the state of the shift-lock and shift keys. With the Control key down, it can also generate $ED. You are probably entering the Monitor because it is generating $4D (an "M"). If the Shift Lock is working, check both Shift keys, and the Control key too. But the only way it SHOULD generate $4D ("M") is if the Shift Lock is not engaged.
No current OSI hardware
Former programmer for Dwo Quong Fok Lok Sow and Orion Software Associates
Former owner of C1P MF (original version) and C2-8P DF (502-based)
Mark
Posts: 297
Joined: Tue Sep 16, 2008 6:04 am
Location: Madison, WI
Contact:

Re: Repair help: OSI 600

Post by Mark »

I just verified this with WinOSI.
When the C1P Shift-lock is not depressed, the "=/-" returns 'M'.
The 0000 00 display is the OSI ROM Monitor showing you the RAM value at $0000

Your Shift-Lock key is not being detected as set by the ROM keypoller routine at $FD00.
The fact that the =/- key is detected means that row 6 is being selected, and column 3 is being read.
Shift-lock is at row 0, column 0. It is the only key in column 0. Bit 0 is not being read by the CPU for some reason. Perhaps row select is not working or column read not working, or the key is bad - too much resistance?

Since SHIFT-LOCK is not detected, you should be be able to press LEFT or RIGHT SHIFT keys while pressing keys on the keyboard (as long as Row 0 select is functional). SHIFT-1 will produce "1" SHIFT-A will produce A. You should be able to check keys 0-9 A-F,G . and / and <RETURN> in the ROM monitor.

If none of those keys work U2 74LS75 pin 16 is bad or the diode D3 is open (row select fail).
If only SHIFT-LOCK is broken then U4 74LS125 is bad. (column read fail).


If that all works then to see all key presses try this (assuming caps-lock is off/non-functional)
After RESET, HOLD left shift down and enter the following keys:
LeftShift+M -> you should see "0000 00"
Now while holding lShift enter: / 2 0 <RETURN> B A <RETURN> F F <RETURN> 2 0 <RETURN> 2 D <RETURN> B F <RETURN> 4 C <RETURN> 0 0 <RETURN> 0 0 <RETURN> . 0 0 0 0 G

Now every key you press should be echoed to the screen. This program can be restarted by 'W' at D/C/W/M? or entering ROM monitor and pressing 'G'

Of course if you can do that, then holding SHIFT down at the D/C/W/M? prompt while entering responses should let you boot BASIC.

For reference:

Code: Select all

OSI keyboard table
Rows selected by writing to $DF00, Columns read from $DF00 
C2/C4 series has noninverted values (bit set when key pressed)
C1/Superboard has inverted values, bit cleared when key pressed.

     7    6    5    4    3    2    1    0 (READ)
 -----------------------------------------
 7- 1/!  2/"  3/#  4/$  5/%  6/&  7/'

 6- 8/(  9/)  0/@  :/*   -/=  rub

 5- ./>   L    O    lf   cr
 
 4-  W    E    R    T    Y    U    I
 					 
 3-  S    D    F    G    H    J    K
 
 2-  X    C    V    B    N    M   ,/<

 1-  Q    A    Z   spc   //?  ;/+  P
 
 0- rpt  ctl  esc            lsh  rsh  caps
 |
 V
(WRITE)
Good Luck!
-Mark
ianoid
Posts: 27
Joined: Mon Dec 23, 2013 12:40 am

Re: Repair help: OSI 600

Post by ianoid »

OK, fantastic. I replaced the 74125 chip at U4 and the keyboard works quite a lot better. Thanks so much for the help! I’m able to use BASIC aside from the residual keyboard issues.

The keyboard has a lot of bounce issues. In case I have the terminology wrong, I mean that when I hit certain keys, the computer outputs multiple key presses instead of just one. Is this typically mechanical? It effects certain keys more often.

And many keys have intermittent issues.

Break, Rub Out, Line Feed and Escape do nothing for the most part. Are there mods or possible expansions this board could have installed that make Break non-functional?

When I have shift lock depressed, I get different responses using the right shift, compared to when shift lock is up.

So for example, when shift lock is down: left shift and A make a “Q”, whereas right shift and A do nothing. Left shift and S make a “c”, whereas right shift and S make an “S”.

When shift lock is up, Return makes a “-“. ”<“ makes an “L”. Right shift “<“ makes a “<“. And all number keys make letters. For example 1,2,3 make QRS.Line feed makes a “*”. And right shift does not capitalize letters at all.

Does this sound like a specific issue? Any advice is appreciated.
bxdanny
Posts: 335
Joined: Thu Apr 16, 2015 2:27 pm
Location: Bronx, NY USA

Re: Repair help: OSI 600

Post by bxdanny »

The differences between left and right shift, and the unexpected characters generated when shift lock is up, are normal. That's how the system works. OSI's keyboard polling routine was not the best, which is one reason that replacement ROMs like CEGMON were offered, and OSI ultimately wrote a new keyboard polling routine of their own, which was incorporated into OS-65D 3.3. As for the key bounce problem, it sounds like dirty contacts within the key switches are causing contact to be made, broken, and made again. Whether or how the switches can be cleaned, I don't know.

P.S. You can use the short ML program Mark gave to verify that all keys, including Rubout, Line Feed, and Escape, are working. They do nothing in BASIC immediate mode. Or use this BASIC equivalent (which also prints the ASCII values of the keys):

10 POKE 11,0:POKE 12,253
20 X=USR(X):C=PEEK(531)
30 PRINT C;TAB(5);CHR$(C)
40 GOTO 20

Use Control-C to end the program. BTW, I still have no idea what the Repeat key was ever intended to do. It never had any effect on keys repeating.
No current OSI hardware
Former programmer for Dwo Quong Fok Lok Sow and Orion Software Associates
Former owner of C1P MF (original version) and C2-8P DF (502-based)
ianoid
Posts: 27
Joined: Mon Dec 23, 2013 12:40 am

Re: Repair help: OSI 600

Post by ianoid »

That basic program works great although it took me forever to type it in because of the bounce issue.

I would be happy to service the keyboard if I understood better how the key caps were structured. I’d like to take them apart but I’m in no position to break one since I doubt there are suitable replacements readily available. Or are there? Does anyone know the make of the key caps on these 600 boards?

Once disassembled, key caps can be cleaned or the contacts bent to reduce the bounce. I’d be ok desoldering the really annoying ones, but I won’t bother unless I know I can get into them without much risk of damaging them.

Lastly, is it normal for break to do nothing for some of these boards? This one has some extra chips, so I’m not sure if break is disabled or non-functional. This unit auto-boots to the prompt, whereas the other unit that I got working required break on start up to get the prompt.

Thanks again to everyone who has helped out with this project. It has been a thrill to get these boards working.
dave
Site Admin
Posts: 717
Joined: Tue Sep 09, 2008 5:24 am

Re: Repair help: OSI 600

Post by dave »

The keys are futaba MD-4PCS, and although they are no longer manufactured, you can still buy new old stock from Electronic Surplus:

https://www.electronicsurplus.com/futab ... kage-of-20

The URL still says package of 20, but they are only selling packs of 10 now.
Post Reply