Message-Id: <199603181055.FAA26717@delorie.com> Date: Mon, 18 Mar 96 12:54:11 LIT From: Martynas Kunigelis Subject: mkkdb (v3?) To: DJGPP mailing list Well, well.. Here I am again, with my cursed _mkkbd_. On Saturday I found a KILLER bug: I was checking some variable after popping the original DS off the stack. What an asshole... Anyway, here's the final version (I *do* hope so). More bugs fixed + docs updated. Write me if it works, so I can ask DJ to upload it to SimTel. P.S.: for those who don't what's it all about, `mkkbd.zip' is a set of files illustrating keyboard interrupt handling under DJGPP 2.00. Regards, Martynas Kunigelis BEGIN----------------------CUT HERE-------------------------- begin 644 mkkbd.zip M4$L#!!0``@`(`%B1$HB32R"]@+AA26L(.P"D8*T6JU6H6V7[29MM]7=GEGS]7NJ;$\F"3P@ M'(^KZM2I4Y=WEMZ\?WMU14/D$)_0.PY\%,E0;[E@\A45OF2RS AT TQ!9-L5U,[ MDNG[X$W14/+KU2V/N3>A)-LE#F'H$S6F*YU\.W0EASG$]EGV]&E&GQL;9Z^1 MJL"\,X'7*UC0Z`?"'V2<\SLNX9U*3[O&)-["C?SL["W3SJ:&;,KHDI+!WYVG M]2IP['T7;6Z=32-5/I#I1G(^1L)S:5I3,Q4&F9:4CY06'!L\^J%NLO5JO?HP M4NV-HYV)<)L$PB[8!$Q"434XVJ?K;!Y,&#>4#_I=;/R.Y)^08KN8D(8P&7SB M(B%H*TDW,)6,'[+%80.LQ2WRFNG!V_6J-,ELJ+9;&"0R1<%(!\'@M0ZF1:WD M"XI($0S` M0`!"OR0=M31`Y'>=LIM AT W_HI++"5GB?*4#(A7DQ2\"A//E05!Y$#K.)0-"A< M AT B?P/_2"4PI[0/0"*DGDG1]<21'2B]4H7P;JF,NH/FR$<,JMC9-8&@.:!-:; MJP^7%'LN;&4+F/H.1F92T*[ACF(:RE$0R=?"MA8?C(CZ\.\9;4VP)G?(22C] MF:JA*\01".?"X1O1.WU9U)`U1^?B8NL=XCF6(H2]5FY:T_]S]NSYOR_I]!0. M$2.84=C-1Z1<.5-'N"L5;%>O5T2"$^`FFN%G$KV82N_U``?#6.#%TDM2F*FJ M7Q841^K)I!0L1,HJ"-0KTMN+"_)]LJW]AA!5\"V9&(<6P3<3[^RXU4\!$A`F M1XIZZM"=&9??4)V609@;T$O1=H5J=8>AH7K0WHTL AT A[5C0(&/UT]5Z!5]M$0 M=X2IAF^$F(4RZ9=:P.+=YH"L>T2I_T4_:$C1CM\_"9I]<\CG)5=F<'=A[YI2 M'1TTRV4E.F=<.BW996KT@`[;V71\HE3(HS7.?IMT'?P`%H#PB@,BM5%A="R#`M-I M AT A"3M+2$"YR&`!&C[![M+NVH(P6P3\_D166LDXQG%%MORX.J8)KRC`-$02X/ M0%PW`R23#B:+JO)1>?%P([\1S07=&MGH@?)V!W93-0]5OR(L"=I@# M]Q($GOVGA9>)+(+6=0,W*#XP/VKC'V0NLIDSCSSG^!VU9O0W="%1L2ZF\N\' MA^XN2`%FQR<;NLT;*>I&\ZF.3XA3D:F:9ZDASO?!P.,!'%7D#P$=GV3T$4M) M1KLZLYW(9*K;.&,5?9H<13SH!/$89"_B"^>B;C68/R[AB997T]8N*QK&YC@< M?:*NH2]E8GT'(94V8$&ZD::UR:;4PP-1EPF]YW!>MGB%`0<%8D^/`K7U&$KL M'-:'3LTKS.9-E=RZ AT 5B^5?[P8 M9^XD(?5\L)L2/?WOI[-?M;?EZ3F\,&N1X0 AT EOLFMCU*L/)2`J:->'%TL]XN. MK)(3^CXJ%Y?SSE6YZJ`T4PK(W6.S3===<1&RFQ`8I1-+C'WO M%`PU['HYK":<'-/=5:>,3$>,UFV]:C'IK5CF0XWSX:W'&>AD]NG9Z1S.K.4& MB3AKI'(UQ AT E^&>'1NR>9TO-:P AT 0(+9012OM AT 0AH[7(M_#)VMV=- M^C]#FR+/;4_"I)G]G= M"YOYZ^2%^QLVW?+H/HRC#6OT^UUV>E:OU6N?HB4/PB7SINK-P)3MH3?VTJ/I MH8B'<'0W>C?86SS&VTWV6Z^%STFXYNQ(.6*OZ8B0!]$R&[L__K2*_22*0[9X M\-?L]_[BO3_^XZ]&LW=[40R,>,+*GV)@.BWBWC+V[S\<&O$H.7Y:1<')A7#Z M*#BT:KS:A#@VXG'VHO=3Z!6\CV6OARZ,?6.-"_;VT3III?]823JPTO[U%A/2 M/[Q@]9@6! M<-XEZ)5X50T)])HH]E6)8E^;*/9UB6+?&Z+8=TX4^TZ(8E^3*/:UB&)?739& MNIHK]K6)8E_5<%6[6!G[*JZME^?%OC*Y*NSK$,6^0U&;V%N,)YJ;*_8=.+KLC'/% MOC_)-6/?'T2QKT(4^WXGBGT'HK:PKT$4^\Z(8E_%G,FE8M^AZ0ISL6^Y59EB M7UO>XLKU3["OKXGFQKV/)BEHH]E5DRRGG8E^M(>X&]M6:HF)? MK24J]M7:HF)?K2,J]M6Z AT K8K[]]S4;&OUA,5^VI]45N5W9`$Q;[&?*:;RG2O MG&I]@_=.>]?I*EB7UW5W'(N]K7D8?[< MD"KVM2>CL5MH<.B\EIY]?Z<:5C[YA\(KJGP^F]=&H1VI\GJ'@F+?B>&H=OX^ MZF#?H:J7Y^U4^S8$/:]H4]!>]MPG/N7'Y6/^F_AL__X78^GCI/@OPN[)\1]0 M2P,$%``"``@`58]R(-?\C3NN!@``/Q(```H```!K97EB;V%R9"YSS5C;;MPV M$'U6@/S#P*F1&+"5=9*ZR18HFJ9-$:3)0Y,"?5M0$G>7-B4*(K47?WW/D-3- MWDW3/'4#;%:\#(K7?5Y+$JU;FX:4I?#P(SE;#TOJW42FIES^GRU:NKIY=73V?/ M[ZZ6%Z50>CYL2_MM/V_*],:UJ7;AF"1)ETK+Y.0FWCRU)[T#F)J MIPQ^GLW[?6&6%HM%<;VJZT4FK%R(HD`D[,$%A5T(K83M[==MIE5.R[;*V;I% MT`JR^S(SV@[GK+3)A*9%Y^%"5>,Q!FM)6:4T9 MD"FTE AT 7)C6SVY%0)B!-.8(37G%19/&VDEDAS<1=QW0?C29)KQ4[4K5WKY%2* MW?BIZ)^VR6DQ8.$/(PKZ]1.<<6MB/A3"";(X+W>FZ<&0[9V/P-45(K#+7B;) M(RK-9DO?%6U9[L_IE(_K;EQ81&UKFB*9W7,5&_T64 AT ZG+-DZ&TI@`%9&GOTI MX9D#X6TN*D_A96-*ZF)/M6F<1VY;PV=)4W`$OU65)=_!ZQD[J.-9&<[2?)8? M8)=YS0]+#,4P.6F=W_ARV&BENTTFR'C"R\\"M*+/;Q@/I);$D.`$8M0[MDCM0*9)ROT$C7-E7G=0[!P^GG1W"=)->53+I81PY%!U[G M-Y79`DY>^X:@4+Y6M3^*1P>5S4WE#.#7W(W897]QT]P-A6E=C*%?&:.8]5$\ MNLH''T_/CMAZ- AT NI_C_`;'@*TK?-X5PA>I+IG=R#W)#R0Y*\SZ7$. MF$N1,,+U=5DS%^9FB8TA!_ AT Y#T1/9MT8+^D`?T!99%7,>SGJ?9P*ZU@;D!Z: M3#[9&%6<_=@O>(.5M*1W8JZAB$`AHT5RMZDG6L01YT, MF AT 5RW4DX#OAHMN-L6+$)$F'TN.W:>-WG)/!B*"]W6!B174XTM#:D#@V*[Z98 M<2!KLI'\=-V",U!`SPP$NT^25WF^S;/9"W^;6`TXN77I0;^)16=0BMDK+,WT MO2N&DL'Q[AD8AP.SNW&P=23/OZMXYQZ!'N'L]JCTK4I9N93>/2Y]AVE!"EPO MM)6C`+;0\[LM%FYA'=7U]5&VSG M*H8^S)22FP`[#=R];BZ6W''U',IO?^,/`J>%&\@0$A)+3J#J)$1P"S@^BT%Z MK/1$JY_@\[2.A,QQ6&K#F8P1C1Y-KW*:L_-YR'_2D_->NS34XP-H&*'I^S&: M["$TC:#3UTG7HNW:-7 AT _0;*]-? M0X9C:K=]KH6[PPR_X_]88X[6E`D[KF:7D1U<.R*VCU>/PZ\673_NZ\!1XJ.? MY_>5C3*M)>A9*R>L[W7:<[^'7R_3_YWM0^W\-])_"XQ[>DGHO,"]ZT:50,:& M6Q1/4!!5[FHMJAXH$_A/>[S0AWZ%Q!YBTM14?&^>3RC\16-,Y*/FNC?MP=X+ MO-G8^FR2D5L@]\#;SR`5T>ON;R AT G;PS>9Q$E+W\9ZE_AE6 AT CK&'\$;IWO/ZB MP>`:NU2[\*>:K#$WLD)AQ/M*)=,T/0GF+N AT C;WJ'J]-'J'"L;D`4$L#!!0``@`(`'2.<2#4^;&F M#0,``,P&```)````97AA;7!L92YCA53O3]LP$/V\2OP/CT[0!$&Z3=,^E&VH M AT TU4*@-1)H0V!&[B-%Y3&]E.NV[:_[YSDC8)HJ-2?SEW[]Z]>^?NWE8+>[A* MA(&9L33%@U83S68PB5H8T`>L0F8X[J=\.59,1W=!T$&W AT 7/F)">O]7Z0^D($Z8QSN*8Z^_OWMX>N@"@NX>!(T5*$0^L`*@Q M&:5<@[XHDX=3Q$J#:ZVTZ95<`!'#6\LHI+">[[OSO"!(2B%M[+5/+LX&1>X/ MV?8/BX?\%X4?O"[^_G5X[L-M5,_3C+E(+Z>7S&XY.!U^N M?.SN%MS+UX;HRS+:]P^;3?5IZDN506=2"CG!M9"1^LWW<3[JOH%R:B^AG!\P MRU(K+#-3%W<^.H*W[$J_M[EI$S)))7;"]GXYY888^48XXRI+`H3,;<":/GD_ M(:M AT H;(TRD,62D^1R8B8$$E'+:?H]&K`_PA-U1H=7K`4GL0 M\93F-QL+R=R>Y68OX%9&*KWYZA;;']!9=DAM-,]N.G5W$8U\6QJ^=49V,U>9 M-CR=\]*LC6F5[7JK\50#(BA9F`/'CGB?B)\0\9KWB'C-Q!O=AS;*5)H;S([JCN^1^QW1(BWI AT N2S?:-FK*[:\6:N)5_VERO"\O[R[?U!+`0(4`!0` M`@`(`%B1&%M<&QE+F-02P4& 2``````4`!0`2`0``J!,````` ` end END------------------------CUT HERE--------------------------