[comp.sys.amiga] A2000/B2000 Transformer Keyboard Fix

lee@sed170.HAC.COM (jhlee@hac2arpa.hac.com) (12/14/88)

The Problem
--- -------
	After I purchased my B2000, I tried to run the Amiga Transformer
(I know, I know.  Why?  :-) and promptly found my keyboard locked up, as
did many other people on the net.  The general conclusion was that
Transformer assumed a great deal and that minor differences between the
A1000 and A/B2000 caused it to lock up.  (From now on I'll call the
Amiga 2000 an A2000 regardless of whether it's actually an A2000 or B2000.
It gets confusing, you know.)

The Discovery
--- ---------
	That never sat well with me since Transformer ran fine on other
people's A2000's.  I suspected the keyboard, since I have a narrow function
key caps (but 2 Amiga keys, no C= key) keyboard and the A2000 in the store
on which Transformer ran fine had the newer wide function key keyboard.
However, I didn't confirm my suspicion until my roommate purchased a new
A2000 with the wide keycaps.  I decided to try his keyboard on my A2000
and Surprise! Transformer didn't lock up my keyboard.  After a poking
around with an oscilloscope, I discovered the problem:  Transformer was
sending too short a handshake pulse back to the keyboard.  For details
about the keyboard, see appendix H in the A&W Amiga Hardware Reference
Manual.  The specs say that the handshake pulse must be at least 75
microseconds long.  I found that Transformer sends a 40 microsecond pulse
for regular keys and only a 20(!) microsecond pulse for the left & right
Amiga keys.  For comparison, AmigaDos sends a 200+ microsecond pulse.  The
newer keyboards are more tolerant than the keyboard model I have, I guess.

The Solution
--- --------
	The proper solution is to patch Transformer to send the proper
handshake pulse.  However, since I don't have the source nor do I feel like
disassembling it, I came up with a hardware fix for the keyboard.  A bonus
is that other programs that have the same problem should be fixed by this
as well.  Only owners of A/B2000 keyboards with narrow function keys and
can't run Transformer should implement this fix.  It won't interfere with
normal operation of the keyboard.  Only programs that sent too short a
handshake pulse will have their pulses stretched for them.

****************************** WARNING ***********************************
Do this ONLY if you feel confident enough to open your keyboard (thus
voiding any warrantee you might still have), construct the circuit, and
solder to your keyboard.  As always, you do this at your own risk.
**************************************************************************

The Circuit
--- -------
	The schematic is posted separately as an uuencoded DPaint picture
file.  Basically, circuit stretches the handshake pulse on the keyboard
data line (KDAT) from the computer without touching the data pulses from
the keyboard.  A 74LS74 flip-flop is used as an negative-going edge-
detector to trigger a 555 timer to force KDAT low via a 74LS03 quad open-
collector NAND gate for at least 150 microseconds.  However, keyboard data
must not be stretched so a negative pulse on the keyboard clock line
(KCLK) resets the 555.  Any negative pulse generated by the keyboard is
accompanied by a pulse on KCLK centered in the KDAT pulse while a pulse
generated by the computer is not accompanied by a KCLK pulse.  Thus, only
the handshake pulse form the computer is stretched.  This circuit is made
simple by both KDAT and KCLK being open-collector driven lines so I cam
simply "wire-or" the 555 onto KDAT.

NOTES:
1.  It's okay to substitute equivalent packages if for some reason you
  can't get the ones I chose.  Be sure to use LS parts only, and *do not*
  substitute a 74xx00 or any other quad positive NAND package that's not
  open-collector like the 74xx03.  The circuit draws 10 mA or less, so
  there should be no problem powering it from the keyboard's power.
2.  Don't try to use a negative-edge triggered FF like a 74LS76 instead
  of the 74LS74 with an inverter on the clock input.  KDAT has some
  overshoot on it and the downward edge on the overshoot is enough to
  trigger the 74LS76 incorrectly (I know--I tried it.)  The inverter acts
  as a buffer for the 74LS74 and cleans up the KDAT signal.
3.  Be sure to properly terminate unused inputs to ground or +5 as
  appropriate, such as those of the unused half of the 74LS74 (not shown
  on schematics) and those of the unused quarter of the 74LS03 (that does
  appear).  Otherwise they'll act as antennae and cause gates to flip
  randomly.  The /PRE and /CLR inputs go to +5, and the CLK and D inputs
  of the 74LS74 go to ground.
4.  Use power bypass capacitors as close to the power pins of IC's as
  possible.  I used two 0.1uf caps, one each for the 555 and 74LS74.
5.  Keep leads from the board as short as possible.  Besides being nice
  to neighbors and not spraying EM radiation all over their TV's, you
  don't want any extra parasitic capacitance on the lines.

	I wired the circuit up on a piece of perfboard, opened up my
keyboard and soldered it to the connecter on the underside (PC trace side)
of the keyboard.  My keyboard has a six pin in-line connector with pin 3
cut off.  The pins are as follows:

	Pin		Function
	 1 (left-most)	 Ground
	 2		 +5 from computer
	 3		 (None, keyed pin)
	 4		 Ground
	 5		 KCLK
	 6 (right-most)	 KDAT

Make sure your keyboard is the same.  If not, you'll have to use an
oscilloscope and multimeter to figure it out.  I mounted the board with
some double sided foam on the underside of the PC board where there was
plenty of space.

Epilogue
--------
	The circuits works fine for me and for the first time since I bought
my B2000 I can run Transformer (please, no flames for wanting to.  :-).  As
I said before, it draws only about 10mA and won't interfere with any program
that works within the keyboard specs while fixing programs that don't.
Enjoy!

-------------------------------------------------------------------------------
Raining CATS and DOGS?  Join the RATS: Remote Amiga Teleconferencing System
	+--------+			John Lee
	| HUGHES |
	+--------+			ARPAnet: jhlee@hac2arpa.hac.com	
	Hughes Aircraft Company
The above opinions are those of the user and not of those of this machine.

lee@sed170.HAC.COM (jhlee@hac2arpa.hac.com) (12/14/88)

The following is the schematic of the circuit to fix your A/B2000 keyboard
so that Transformer will run.  See the text in the article labeled Part 1
for a description.  After unshar'ing it, uudecode the two files to create
the DPaint file and its icon.  Happy fixing!

-------------------------------------------------------------------------------
Raining CATS and DOGS?  Join the RATS: Remote Amiga Teleconferencing System
	+--------+			John Lee
	| HUGHES |
	+--------+			ARPAnet: jhlee@hac2arpa.hac.com	
	Hughes Aircraft Company
The above opinions are those of the user and not of those of this machine.
-------------------------------------------------------------------------------
#	This is a shell archive.
#	Remove everything above and including the cut line.
#	Then run the rest of the file through sh.
#----cut here-----cut here-----cut here-----cut here----#
#!/bin/sh
# shar:	Shell Archiver
#	Run the following text with /bin/sh to create:
#	kbfschem.uue
#	kbfschemi.uue
# This archive created: Tue Dec 13 19:12:41 1988
# By:	jhlee@hac2arpa.hac.com (John H. Lee)
cat << \SHAR_EOF > kbfschem.uue

begin 644 KB_Fix_Schem
M1D]230``'#!)3$)-0DU(1````!0"@`#(``````0"`0````H+`H``R$--05``D
M```P\/#P````P```\&```)``,/`0``#P(,#0\`#`H`#PD%``\,"@\.``P,#`P
M@("`0$!`0U).1P````@```JJ``$/#T-23D<````(```*J@`!`P=#4DY'````@
M"```"JH``0``0U).1P````@```JJ``$``$)/1%D``!N0L0"Q`+$`L0"Q`+$`C
ML0"Q``8!@`&````#_L,$P`Y@``[]``_@!F```.`.``X!@```#^&`_@`+.```N
M`X`X```9@``\_0`$!@\`SP_L`+$`L0"Q``$#P/T```;^9@1@!F``!OT`"&`&I
M8```8`8`!OT``09@_0`+&````8`8```9@``8_0`%#AF!F9F`[0"Q`+$`L0`[Q
M`\9C@[/``&;FYN`&P\9FP\/.PV`&8\?#8^;#QF.'P[`&`X8P```;&8`!CQL?_
M`!F``!@/#P``!@&#&9F`[0"Q`+$`L0`Z!F=QAF!@`<?GY^`'AF9G9F!G9N`'S
MX&9FY@=@9L&&9F`'@8-@```=F8`!F9V9@!^``!@9F8``!@<&#P_L`+$`L0"QV
M`"D'YK&&8>`#!V=G8`;'YF9F8>9F8`9AYF9CQF'G@89F8`8!@<```!F9@!G^4
MF0Z`&8``&)^?@``&#`P9F8#M`+$`L0"Q``8,-C&#QF`&_F8$8`9F`\;^9@(&W
M8`;^9@!@_F8-P89CP`8!@V```!F/`!G^F0Z`&88`&9@8!@`&&9@9F8#M`+$`*
ML0"Q`#H,-C/,8[`'X\/#P`YCP8/#P[\#L`9CMF.WSF.^8\9L8`\#QC````\&'
M``\/.9F`&88`/X\/!@`?G[`/#^P`L0"Q`+$`_@`!!\#Y```'\0`!!\#Z```<2
M]0``#.8`L0"Q`+$``'_?_P#\U0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"QE
M`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`V
ML0"Q`+$`L0"Q`+$`L0"Q`/@``#_!_P#X_`"Q`+$`L0#X```@P0``"/P`L0"Q%
M`+$`^```(,$```C\`+$`L0"Q`/@``"#!```(_`"Q`+$`L0#X```@P0``"/P`N
ML0"Q`+$`^```(,$```C\`+$`L0"Q`/@``"#!```(_`"Q`+$`L0#X```@P0``,
M"/P`L0"Q`+$`^```(,$```C\`+$`L0"Q`/@``"#!```(_`"Q`+$`L0#X``,@2
M``!_SO\`^/@```C\`+$`L0"Q`/@``R```$#.```(^```"/P`L0"Q`+$`^``#.
M(```0,X```CX```(_`"Q`+$`L0#X``,@``!`S@``"/@```C\`+$`L0"Q`/@`]
M`R```$#.```(^```"/P`L0"Q`+$`^``#(```0,X```CX```(_`"Q`+$`L0#X`
M``,@``!`\0`*`8`SP`/PYX'C\.#T``%X0?X_^P``"/@```C\`+$`L0"Q`/@`5
M`R```$#V``$!^/X`"@.`9F`#,>,#,S'@]``!,&/^,/L```CX```(_`"Q`+$`9
ML0#X``,@``!`]@`!88#^``H!@,!@`#-C`X`S8/0``3!W_C[[```(^```"/P`0
ML0"Q`+$`^``#(```0/8``6'P_@`*`8&!P`!F8P'`9F#T``$P?_X#^P``"/@`Q
M``C\`+$`L0"Q`/@``R```$#W``(!^!C^``H!@P,``,?S$'#'\/0``3%K_@/[)
M```(^```"/P`L0"Q`+$`^``#(```0/8``6`8_@`*`88&8`#`8S,PP&#T``$SD
M8_XS^P``"/@```C\`+$`L0"Q`/@``R```$#V``%AF/X`"@?L!^``P/?QX,#P+
M]``!?V/^'OL```CX```(_`"Q`+$`L0#X``,@``!`]0``\-L```CX```(_`"Q5
M`+$`L0#X``,@``!`S@``"/@```C\`+$`L0"Q`/@``R```$#R```?]?\`_/L`Y
M``/T_P*```CX```(_`"Q`+$`L0#X``,@``!`]@``!_X``!#U```$^P```O0`?
M`H``"/@```C\`+$`L0"Q`/@``R```$#V``0:P```$/4```3[```"]``"@``(,
M^```"/P`L0"Q`+$`^``#(```0/8`!6(P```1\/8```3[```"]``"@``(^```E
M"/P`L0"Q`+$`^``#(```0/8```+^``$0V/8```3[```"]``"@``(^```"/P`"
ML0"Q`+$`^``#(```0/8`!0^````0S/8```3[```"]``(@``(```!___P_@``\
M"/P`L0"Q`+$`^``#(```0/8```_^_P'PS/8```3[``$"'_[_`(#Y``B```@`.
M``$```[^```(_`"Q`+$`L0#X``,@``!`]@`%#X```!#,]@``!/L```+T``R`<
M``@```$```&````(_`"Q`+$`L0#X``,@``!`^0``?_[_!(```!#8]P`!X`3[T
M``0"'[\?C_P`"0'#,_"```@`!__^``-````(_`"Q`+$`L0#X``,@``!`^0`(`
M0```#X```!'P^``"`;`$^P`%`A:9AAF`_0`0`V,RT(``"``$`0`.`"?@``C\J
M`+$`L0"Q`/@``R```$#Y``-````"_@``$/<``@,8!/L`!`(&&88P_``0!C,P=
MP(``/@`?`0`Q@!@0``C\`+$`L0"Q`/@``R```$#Y``-````"_@``$/<`!0,8,
M!```#_[_!?X&'P8S@/T``P8S,,#\_P<!`,!@&!__^/P`L0"Q`+$`^``#(```5
M0/D`!T!CF`(#',`0]P`%`Q@$```(_@`%`@8;!C&`_0`.!C,PP(``/@`?`0`QO
M@!@0^@"Q`+$`L0#X``,@``!`^@`(`<#AF`X'#,`0]P`%`;`$```(_@`%`@89:
MAAF`_0`$`V,PP(#^``8$`0`.`"?@^@"Q`+$`L0#X``,@``!`^@`(#@!AL'`#0
M#8`0]@`$\`0```C^``4"#SC?CX#]``0!P?'@@/X``0?__@``0/D`L0"Q`+$`P
M^``#(```0/H`"`'P8>`/@P\`$/8`!!@$```(_@```O0``(#]``0!```!@/D`.
ML0"Q`+$`^``#(```0/D`!PYAL`!S#8`0]0`#!```"/X```+T``"`_0`#`0``6
M#O@`L0"Q`+$`^``#(```0/H`"`'P89@/@PS`$/4``P0```C^```"]```@/T`#
M`P'___#X`+$`L0"Q`/@`$R```$```?__\```#@'[F'`/W,`0]0`#!```"/X`F
M``+T``"`\`"Q`+$`L0#X`!,@``!```$```X```'P```/@```$/4``P0```C^%
M```"]```@/``L0"Q`+$`^``,(```0``!```!@```#OX`!W```!``'GAS^0`#W
M!```"/X```+T``"`\`"Q`+$`L0`.`<WP,/P!@```(```0`?__@`.0```<```>
M`X```!P`,S`S^0`#!```"/X```+T``"`\`"Q`+$`L0`8`,S8>+0`<```(```L
M0`0!``X`)^``0````OX`!!.`8#`V^0`#!```"/X```+T``"`\`"Q`+$`L0`@6
M`-C,>#``#@``^```0!\!`#&`&!``0```#X```!!P8#`\^0`#!```"/X```+TB
M``"`\`"Q`+$`L0`&`/#,S#```?K_!0$`P&`8'_G_!/`,8#$V^0`#!```"/X`=
M``+T``"`\`"Q`+$`L0`=`-C,_#``#@``^```0!\!`#&`&!``0```#X```!!PT
M_C/Y``,$```(_@```O0``(#P`+$`L0"Q``8`S-F&,`!P_``)0`0!``X`)^``@
M0/L`!!.`'G]S^0`#!```"/X```+X``0'P_'@@/X`_P/^``!^^0"Q`+$`L0`&/
M`<WQAG@!@/P``D`'__X``T```$#[```<]P`%!_P$```(_@```O@`!`-@PS"`W
M_@#_`P,`8!A@^0"Q`+$`L0#U``E```$```&```!`^P``$/4``P0```C^```"V
M^``-`S##@(``?``,S,`8&'SY`+$`L0"Q`/4`!4```0``#OX``$#[```0]@`$3
MX`0```C^``$"#_W_`.#^``,#,,'`_?__S`/__GX&^0"Q`+$`L0#U``5```'_>
M__#^``!`^P``$/<`!0&P!```"/X```+X``T#,,!P@`!\`,S,`!@8!OD`L0"Q^
M`+$`]0``0/D``$#[```0]P`%`Q@$```(_@`&`@_/X\_GX/X`#0-@PS"``!``;
M,#``8!AF^0"Q`+$`L0#U``!`^0``0/L``!#W``4#&`?___C^``$"!OYF`66@(
M_@`)!\/QX(``$``P,/X``#SY`+$`L0"Q`/4``$#Y``!`^P``$/<``@,8!/L`D
M!@(&9@<&`8#Z``*``!#R`+$`L0"Q`/4`!4```?__\/X``$#[```0_O\`@/L`]
M`@&P!/T`"`___@?'@X>!@/H``H``$/(`L0"Q`+$`]0`%0``!```._@``0/L`T
M`!#V``'P!/T`"`@``@;&`.8!@/H`!8``$``#\/4`L0"Q`+$`]0`)0``!```!'
M@```0/L``Q`\\'[Y``$8!/T``P@``@;^9@%A@/X`"0/S-^"``!```9CU`+$`'
ML0"Q`/4``D`'__X``T```$#[``,09F`S^```!/T`"`@``@X_X\_CP/X`"0+3P
M,S"``!```9CU`+$`L0"Q`/4`"4`$`0`.`"?@`$#[``,0P&`S^```!/T``@@`0
M`OL`#`>88`##,S"``'P``?#U`+$`L0"Q`/4`"4`?`0`Q@!@0`?#[``,0P&`^W
M^```!/T``@@``OL`#`S88`##\^#___P``;#U`+$`L0"Q`/4`!W__`0#`8!@?K
M^?\#\,!B-O@```3]``((``+[``P8#,``PS-@@`!\``&8]0"Q`+$`L0#T``@?!
M`0`Q@!@0`?#[``,09F8S^```!/T``@@``OL`#!@,P`##,S"``!```XSU`+$`S
ML0"Q`/0`!@0!``X`)^#Y``00//YQ@/D```3]``((``+[``D8!X`!XS<8@``0:
M\@"Q`+$`L0#T``$'__X``$#X```0]0``!/T``@@``OL``@S'@/T``H``$/(`9
ML0"Q`+$`\P`$`0```8#X```0]0``!/T``@@``OL``0>#_``"@``0\@"Q`+$`^
ML0#S``,!```.]P``$/4```3]``((``+T``*``!#R`+$`L0"Q`/,``P'___#WF
M```0]0``!/T``@@``O0``H``$/(`L0"Q`+$`Y0``'_7_`/S]``((``/T_P*`0
M`!#R`+$`L0"Q`-,```CX```@^@``$/(`L0"Q`+$`TP``"/@``"#Z```0\@"QW
M`+$`L0#3```(^```(/H``!#R`+$`L0"Q`-,```CX```@^@``$/(`L0"Q`+$`F
MTP``"/@`"B```8`/X```$``/]`"Q`+$`L0#3```(^0`,/__@`X`&8``?__`9A
M@/4`L0"Q`+$`TP``"/8``@&&9OP``##T`+$`L0"Q`-,```CV``,!AF>`_0``Z
M,/0`L0"Q`+$`TP``"/D`"S__X`&&9@``'__P,/0`L0"Q`+$`TP``"/@`!"`!>
M@89F_@`#$``9@/4`L0"Q`+$`TP``"/@`!"`!A^.__@`"$``/]`"Q`+$`L0#3Y
M```(^```(/H``!#R`+$`L0"Q`-,```CX```@^@``$/(`L0"Q`+$`!0',>>',I
M`]D```CX```@^@``$/(`L0"Q`+$`!@#,S,#,`.#:```(^```(/H``!#R`+$`\
ML0"Q``8`V8#`V``<V@``"/@``"#Z```0\@"Q`+$`L0`&`/&`P/```]K_`/CXQ
M```@^@``$/(`L0"Q`+$`!@#9@,38`!S0``#X^@``$/(`L0"Q`+$```#]S`$`G
MX-``^?\`\/(`L0"Q`+$`!0',>?W,`\\``/CJ`+$`L0"Q`,D``"#J`+$`L0"Q>
M`/,``P'___#;```@Z@"Q`+$`L0#S``,!```.VP``(.H`L0"Q`+$`\P`$`0``2
M`8#=``(?_\#K`+$`L0"Q`/0``0?__@`,0````9C'#\`,QY_?!M``L0"Q`+$`J
M]``1!`$`#@`GX``#',V+0`S,S,V#Z0`!`?[J`+$`L0"Q`/0`$A\!`#&`&!``O
M!A[8PP`,S@P,P8#1`+$`L0"Q`/8`%`/__P$`P&`8'@`&&]C#``S'#PS!@.D`,
M`##J`+$`L0"Q`/8`%`(`'P$`,8`8$``&&=C#``S!S`S!@-$`L0"Q`+$`]@`3_
M`@`$`0`.`"?@``,8S8,`#,S,S8/0`+$`L0"Q`/8``P(`!__^``Q````!F,<'0
M@`?'G]\&T`"Q`+$`L0#V``<"```!```!@,0`L0"Q`+$`]@`&`@```0``#L,`=
ML0"Q`+$`]@`&`@```?__\,,`L0"Q`+$`]P`"`?_\O@"Q`+$`L0"Q`+$`L0"Q@
M`/8``1_@O@"Q`+$`L0#@``(___[5`+$`L0"Q`/8```/L``,@``'`U@"Q`+$`.
ML0#@``,@```P_``&&`,<`'X<\/X\Y0"Q`+$`L0#A``0/X```"/P`!C@&/`!F7
M/&#^9N4`L0"Q`+$`X``2(`'`!/P``'X`&`QL``9L8'!N!N4`L0"Q`+$`X``$K
M(`8P`P+]`/\8!\P`#,Q@.'X<Y0"Q`+$`L0#@``4@&`P#`\#^``D8,/X`&/YBX
M#G8&Y0"Q`+$`L0#@``X@!C`#`@``?@`88`P`&`S]9N4`L0"Q`+$`X``$(`'`1
M!/S]``9^P!X`&![^_CSE`+$`L0"Q`.$`!`_@```(U@"Q`+$`L0#@``,@```P]
MU@"Q`+$`L0#@``,@``'`U@"Q`+$`L0#@``(___[5`+$`L0"Q`+$`L0"Q`+$`@
ML0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"QG
M`+$`L0"Q`+$`L0#_```__@`"`X`/^P``./D`"P(X``(`!@`&`#\`#_X``QR&U
M'X_[``$?@/X``P.`/P#^#P@Y@````X`/``#]#_\``S^```"Q`+$`L0#_``<9K
M@````8`9@/P``!CY``@&&``&``X`#AG^F0>````G#A@9@/P```;]``0!@!F`I
M&?Z9"(````&`&8``&?Z9!8``&8```+$`L0"Q`/\`2AF`#Q\-@#``#SL/``\;#
M#P^/'P`/CP`/FP\/@`8`!@\9CS``'X``!A\;@!F/@```!@`9CX\-@!F?@8&;+
MFP`/'PV`,!^`&YN!F8`9F/X`L0"Q`+$`_P`A'P`!F9N`,``!G9F`&9V9F!F9K
M@!@9@`8=@88`!@`&/]\_\/T`!08!GX`=V/X`&P8`&9@9FX`?``<''YX``9F;T
M@#```!^?AP^`&9[^`+$`L0"Q`/\`(1L`!YF9@#``!YF?@!@9F8\?F8`/&8`&N
M&8>&``8`!@\;#S#]``4&`9V`&L_^`!L&`!F/'YF`&P`!@9V;``>9F8`P```=$
MG8&!@!F8_@"Q`+$`L0#_`!H9@!F9F8`9@!F8&``9F9F!F!F``9F`!IF9AH#^3
M!@`9_ID5@!^```89F8`8P88```8`&8&8&8`9G_V9$8`9F9F`&9^&&9F9@P`9A
MF`8``+$`L0"Q`/\`(3C`#MF.P`\`#OP/``\YCQ\/&8`?#P`#.8[#`!^&'X`X[
MP`_]`!$?CP\`&-\&```?@`[?#P[`.,#^#P@Y@`[9CL`/``;^#P8.``[\!@``!
ML0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"QG
M`+$`L0"Q`+$`L0"Q`+$`L0#,``#P_@`!8YC]``)@`"#S`+$`L0"Q`,T``0&8J
M_@`!X9C[``!@\P"Q`+$`L0#_``D_```"```\!@`"_0`!/"#^GP"`_@`!/PS]D
M```&^0`"/W@>_C\`&/L``!C^``MAL`.P\/C@^/CSL/CV`+$`L0"Q`/\`"AF`)
M``8``!@```8&_@`$&#&8&!C]```M_```#/D``BTP,_XP``S[``]P`?@`8>`!I
MV9F`88!AF=F`]@"Q`+$`L0#_``H9CSL/CX`8#@^/AOX`!!@[GQ\?_0`1#!PS>
M'G8`&!X>/@`S'QX`##!@_CX`!OL``,#^``MAL`&9^/!@\&&9F/#V`+$`L0"QF
M`/\`"1\!G888`!@&&`;]``$8/_Z!%8``/P`,##NS.P`8,P,S`#,P,P`,,&#^Y
M`P`&_``!`9C^``MAF`&!@!A@&&F9@!CV`+$`L0"Q`/\`"1@'F88/`!B&#P;];
M``$8M?Z!`(#^`/\,#S6_,P`8,`\S`#,>/P`,,6#^`P`&_``0`?@```'[F`/`F
M\?#Q\##SP?#V`+$`L0"Q`/\`"A@9F`:!@!F&`8:&_@`!&;'^F0"`_@#_#`0Q"
ML#``#/XS!0`S`S``#/PS``S@`+$`L0"Q`/\`"CP._`,?`#^/'P,&_@`$/[&/J
M#P_]`/\>#C&>>``&'AVS`!V^'@`>?_T>`!C@`+$`L0"Q`+$`L0"Q`+$`S``$1
M\`!@`'#[``%@(/,`L0"Q`+$`S0`%`9@`X`#8^@``8/,`L0"Q`+$`\0`%'X<\=
M#Q^'_@`(/@`_C@8``#^.[P`/`;@`89C``/#S</#PX/CSL/4`L0"Q`+$`\0`%U
M&8\8&9F/_@`#&P`9AOX``1F&[P`/`?@`89G@`9@9F!F88&&9V/4`L0"Q`+$`@
M\0`%`9L8'`&;_@`*&8`8!@XW`!@&#S?Q``\!V`!AF,`!@'F8>8!@89F8]0"Q_
M`+$`L0#Q`!0#,Q@.`S,`'X`9GYX&!AF`'@89F8#R``\!F&!AF,`!F9GQF9A@1
M:9F`]0"Q`+$`L0#Q`!0&/YB#AC^````9@!@&!AF`&`89F8#Q``[P8?CMX`#P?
M[8#L\/`P\\#U`+$`L0"Q`/$`!08#&9F&`_X`"AL`&`8&'P`8!AF?Z0`!`\#OV
M`+$`L0"Q`/$`$P8'OX\&!X```#X`/`\/&``\#P\8U0"Q`+$`L0#C```\_0``E
M/-4`L0"Q`+$`S0`.`_```&``(````_``X`#P_0`!8"#^``#P_@"Q`+$`L0#QC
M``(?ASS^#_X`!`X```.`^@#_#O\```+^``,QAC&^_@`!`9C]``A@```!F`&PZ
M`9C\``1@```!F/X`L0"Q`+$`\0`-&8\8&9F9@```&P```8#Z`/\&_P``!OX`*
M`SF/.9O^`!<!F/#XX/CX\[`!F`&@`P#S</#PX/CSL`/]`+$`L0"Q`/$`%@&;9
M&!P;@8```#&9CPV`#S</'P`/#P8&_@\ACSL`/8\]F8````'QF8!A@&&9V`'P=
M`=@#`!F8&9A@89G8`_T`L0"Q`+$`\0`.`S,8#A^'`!^`,9F!FX`9_IDIGYF9S
MA@89F889G8`WF;>9@````;'X\&#P89F8`;`#<`,`>9AY@&!AF9@#_0"Q`+$`;
ML0#Q`#P&/YB#G8&````QF8>9@!F9GYF`&!F&!A^8!AF9@#.?LYF````!F8`8L
M8!AIF8`!F`,P`9F9\9F88&F9@`&8_@"Q`+$`L0#Q``(&`QG^F1J````;&9F93
M@!F?&!F`&9F&!A@9AIF8`#&P\9O^`!@#C/'P\?`P\\`#C`'8`/#M@.SP\##SZ
MP`#P_@"Q`+$`L0#Q``4&![^/#P_^``D/#L[.P`\8#QF`^P\'`P\\`#&P\;[O=
M``$#P/8`L0"Q`+$`Z``!`8#]```\T0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`<
8L0"Q`+$`L0"Q`+$`L0"Q`+$`L0"Q`+$`,
``
end
size 7224
SHAR_EOF
cat << \SHAR_EOF > kbfschemi.uue

begin 644 KB_Fix_Schem.info
MXQ```0``````?0!*`#H`%``$``,``0#`@V@`````````````````````````\
M````!,$`P(-``,!_*(````"````````````````````````````Z`!0``@`!`
MNU`#`````````````````'________^`8````````8!@``?___^!@&``0!__+
MP`&`8`+@`````8!@`V`"``@!@&`+^`<`7@&`8`'\`X"?@8!@``X'PO_A@&`-?
MKP7@%_F`8"$O@\!7^8!@)?\?),?Y@&"7^FZ('_F`8![\[#M;^8!@5?^Z59_Y]
M@&#O______F`8````````8!_________@```````````_________\"`````7
M````0)________Y`F```````!D"8```````&0)@!``````9`F`2`!```!D"8Q
M!(`(`"`&0)@?#`P!8`9`F#_^'XT`!D"8__]_W^@&0)O______P9`G_______'
MAD"?_______^0)________Y`G________D"?_______^0)________Y`@```^
M`````$#_________P`````Y$4&%I;G0Z1%!A:6YT``````@````.1DE,1519D
(4$4]24Q"30#_U
``
end
size 458
SHAR_EOF
#	End of shell archive
exit 0