From 539c09c7039c5420ed1911c54677c86c370a8b33 Mon Sep 17 00:00:00 2001 From: sparky4 Date: Sat, 27 Jun 2015 17:37:32 -0500 Subject: [PATCH] input is funny wwww Signed-off-by: sparky4 --- 16.LIB | Bin 74240 -> 74752 bytes inputest.exe | Bin 29822 -> 36181 bytes src/inputest.c | 8 +++++++- src/lib/16_in.c | 14 +++++++++++--- src/lib/16_in.h | 6 ++++-- 5 files changed, 22 insertions(+), 6 deletions(-) diff --git a/16.LIB b/16.LIB index dd1d8950ab2c976f815062fd37d676ac27f8cdfd..a0c5426f61947cc04c79d84f4f0b4c6a68eaf9ed 100644 GIT binary patch delta 6602 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 delta 6266 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 diff --git a/inputest.exe b/inputest.exe index ca2b4194f120a86cb85b5b957c5e9f7bfde1b230..4e470c4d57947440fb38a45c4e6601b4c2703a1c 100644 GIT binary patch delta 18561 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 NvC@w?e%w4l{y!I;;z$4h delta 12231 zcmZ{K4_s46w*SoBdqWZ-Ao3?DBL74IK~PJjDuN*R2a!K2_y+<4K@<}ViD+Lfv5Msq zbluK&*LJ)6N_E@5)?cgD*QMHDrN-i)Rtvgot@gEAtzH^yt#&CQg?HwL0NQ=wbIrNm zb7tnuneUuA_r`y|O!_1|XVHp3A}vxO0sR&A_Y)2&5h_w66pWmoRQP%qt}Af$!xg|I z^aJQOk3gu{9iijyzn?R{jtWOGif@$!#m;42@SWi%#VW+xh4$>6+`J`Am*od3va`kS zw%sPZE&Iu?OGk>)?Wh|^N|0!8Nbdtt{Mg-kr{UBc>%*%SWt$>Oz@06~`tTaNnE*F$ zqb|GE?AdTBye{qrH2V8)zVik2YJ~9Gc%k7EU=2ZGg4os&6d|;2-_2udQj~zq9xcz1 zU9Ay~+pVOt2)cX9B3Ki`1<)Shk;ToL)W#!ocw>4W>vO>Nc|>NWnBr%ysEx5Eg+nJ1 ze6S<*F&itMSz_{-`E;#HwpnN@2#sbJ@L?sYtprg5Jcp@T>G3iNeM70lBH1B-o1j z#stOETU?|Y+@$yIjivtlQ(%^bNr9=`xHgD^Cv_wI4sbVE}yjetc%n!*NA zO5;J@kmlBy-V=@+;HD>>G^AnHCRwz1T<^FZX=nXGaGr;iO;gH22THKTf^6_7SZe1I zz8WR~MIO|(DZ*e`Wy-u7Dno6GP#IxOWGhRu%oXz}HZe`Nc?A1bbX&TiE1-%Zm9g=k z)?jOr5e7VE1A-HB|8-%)Z6=|Ak8MSbiHrLG8}%LtzW>fnOaBpY=6HlH349Qf zZh|8U37ff;`}?9=-#UQaT6{R}Y)Hgwr*K3=#A!_H+{@~|$4!dc*!Gp}lh^)%gCp)> z5gLDxD;(R+MSp$(-G6Ia(nau9+j81{??v3CxrFy#hOe*i-ml^7DxUg7%PIH0--3Jt zxAY?^k(aJ<+02j2y*rZ-+I9Q`FVuqZ{dWt@Gi;Yy4#ONjJTK&B=Qe%5>zgBUuB%({ ztg|7uOXF79?)C1Ui7XFo=c3QdKb(9v1oXGm9}vXkg6tNAj(8$zI$v-&^K3}AeDoFA zKmC-R@R&nx3skAeA#V$GrRHCg;bZVQj2HEbZf>d%{f z#dhf{o}TlZjh9f3S6D`zAl`=@*6z$=jJ__`@M4>EK@ih>#V_Ko#GgJw5cF845bxTG zdZi)e!+(hdBqIXZ13ERSzJWB*xqzmisb2Ed{XL)-Hv`s#FLOOFG{sNktdt);ed;YZKhz0Vn)(k zY|=LW49vWX#e{npcia5B@W^|*B1l?W6+dINYAXN{g5$FEU;WXFr-U(nGX;CD^h*EU zrvwq?74~gO?HF=2Bv$+35obf+-Ur(Tg?JpM88SoD zi)#g&nRonI1kv#?(CJmME`MYvNvFAAYFa!FpQQ6YeGZfIHrU-J8%?IC0JYIX*@n`154-ie!-j$)SnpIsHZeC_iTBWjO zD5X*rz2SF;yso4N{Cy@JRl-nT)StK9u0Op+f}%!xLFKsWSh=l-m{)A;!RCC>Nwzel zl&_?B{S!#6l1|hvC4G=5wBx1|a-<)%cp>TPgML3k`u%t!Ug}KxSFU(`@V>n>_Fqeb za-n;X6)5Hv$^ z0@E2W(+DDTLrjQTLBK+_EeX(9Vn%zNz%w8T*06L4yEBl`wwNH+@6DJLqVA%RvB`6K zaeS-2^C^^<_DvCv5=n zq?-p~a=9#PWO+Hrut86{sn{)Rw2(MX!*{cSh<*yP!p^~@fr#Sq8H#h*G()r>i6412U4mnk9Tg**+M^Y17~ACofTjO2t-!Jo%_p$vcLKA5PP&Z;MiY?Z4r90Y zu`MB!7EK-NwW!Z=M{Ji1D^_8gp~X|C)-~dn96#sHP$-Fsk8cH51x+EWWU{$|vocJE zK+zvSwqu}zxVklI3Q-gDSes@Fff$~WUcx~7^Oor?0+L?ob5?LRKP5~uU63~1g9;Az zg!zAL8YTHiO**dSH(lCQ*V@r}|8JvC-`}TmoUkQ<@t1L}(O}VWtK%B}B0tEj@hVun z4Hj?dL_ZiQNJ$*~nx~LiYFHz?bm3leI^;9v%3dV_?_d`+D@mf=lbO-qw3nO5Ozc z1G)Jd=|UfUd&<o?vfTAlM-YO7;&2OoRouHyn?!@QazN1eXz{qA;hQe z(l--=>Q?^*k1Vc?59iNIcO5@Ti+%#%zZdU8lSJ(JIxlyYfVOyv$K@6M7GLPfz{zF~ zsA^q|lcn2iW8Gsqd;x%9z!^19K}M3yzpk+7iT1-uXG5f`u>4G3(+xKl$ZkgAjAi-O zhibbV2}4b6&J;uo5e4xX{^VSE z;uVuJsb@fd+Z+V>Kkhc29N?##Mj|i6V^dHj%?cPB^*%{~lk}U!hoGI;6m4~ZGtNZ=31+m)|{9}wNP~wUwA&-l8X>&hpg-cQd65Cm%*i@{O!|E~xTOgDaV`kJ5 zGcSJa_{q9R!P#buGi?c3f*1tXle!{#Z`m|iLj7rrQiN}|p~X+(_y*bLFR6bJI~>>Z za^Q4t-`3M_RyAEt?64@Ld$*b0nfNP`=g%NHH@$QD0?x;G)t|4Ut<#h~*$>3K&dtxG zkNW$ifNsaFL$eaoIBJ_Y`4E|#6dQ0P8Zh@LjGKYI2d>oHKcfv6?3T- zKs|sa26{|#L*N_x5XEHrX-Y47hS1YHFm6sO*ViD9+s!S2d#x4U zgBBMs=G0*RL|XbtX11_=^J-&>sSNB|Iog!=`b>tV8VzQXv5K`$<|{dbM&PnqBUr&} z0cRJ?YLU@WQ=Vq5HKZCX1~b^EQN!F9Jmqdzmko?wPd(G4RxoUFRT+%7th|(&&f}|r zTV6zj&SjsNMQN3>bX{33sIB+~rpEa&o|ZcZ@}N<6iD`YF*;Hw$VD9~q()7>-)_8ta zrVjd_XEd$@Jd?i-jkIJhXa<`?Olq=CNq zE#_zG^2{YBb2$r8HvdR(13_A{xw?F5jcky^=MSGwW=V}XB`?wQe9wQhD~LpP zNg2e#XCN2_!}YXip8tgH_>tMli#-&)<+6PPj-{{68;j%Uk$DqG#{e(=&?J~ALN?d} z1pN<4M6t`8ewGsCQB}EmReXZ3(hysUN@)E24n|vkflS-T1;3$fF~1O&255U9I*|hh z=G6<+z1WHkqwQ|mw(yO|S?eXN9md)tt{zy^->}w){#WMXto<8ZuqbLJGk=7&T496C z+Q#7vHpJRjF_l?c0OM)7_x^9zzK`kWi$eYlZ3BfLWZLe7kq620C~bpiMAmO;dk}B` zKWQ5*Jkr~5X&WLG44=<%+J*{jE`y#7r)`+<{_s}AXdC|MfWv4z{;@WLw2gRFF-Y49 zk9PGN+D;srEgWMFCh}2*M}uhx8R7-9Y~WX#+?~9DpHw@M*w@ z;2!70;wm}%AKBhqCf3v4*}mKoc**%@b}XmI4fMsIIBpO3AuZ00;{L+5(4D!H`42gcrzN@LMLk`m<$M)vX#=G2D?@KCSHFE1S7wZev}u(Kf`~=(;xHv_-*_*JXI~3z}@6^bn22E z?gu`fKEEWAFBbL-;M+JqXD>g)ZwPCJeS-cz2>XP6v~$VCu>Hb#c;E+LX2Y)whlFto zeG&+l1WC}(0^yo)OQ6%1PUIpK%c*YZc=t#}zC!;pXz~^LbobK8uoa4}&JJz?SfqGX zq5lem3Ppti>2HE$R+#BmOQX5x6pd89Y!X+mXrPJ9V!Rp^?>gIAJ>VUXVn5xuEQUXz zXjdG1V_7)n4=c_p=;!&7bJ`U~H|F3eTxrl7fgtOCuYr&xdBTq*3cZ_tDhS;QZ#VrE z5WL;IfkXOPAo{uGg9xnpmOfQ5p09TMSxHL^X3V|@x~JW4EA^j&K;4!r^`C<9Iup)- zuw1zuev(1@iy#*(cPf$oDoAfD-)3k7PNF{*Oyqu6Vj8$S++&s(jIHbgRRgxsMa#n@ ziE5OJdHdKZvNWJ?1ZzPx66n!@FVmNoM@0Il#{WBOmQVCwg0;UYOtxM}JC}#lMX2g! zYyDcNrlM5Osq{J!;#C_|`eYEMs}`#C(I6zLl2k}P8>D0gC4rExN{5b+z6j*Ss%(|M zP!<-e^s5F0&?0>$+-!!9L2khB!Hv8dc@9`NKZ}YhG*LTLpF4dx2--%~XDa>cAiSvh zD~xymq_y;qfRNZv8+ergfhH)Bo5uLqq zW?&Pj{MGqtJv%Go)TwHHBM8&fDc}+9TsfQEB{XVPyL{daoiVMLstcp|V$CiMoen~| zrcp!ng-`LjG!Ha%U*RmjKWgr2^zN{=&S)-Z^ds0w0s{S|FfzGEljHeYm)F7DSESzv zhP>x|PyIR&ygd^<^=m=UdWHZ+^cE23dd{WAMG<_i=bt=jW6@Q9mFMp~sX;f9+v6EZ zU((ITA}Q zR8{Fpp-h6-XWXf#WO7v;oQ=>ebE3plQHuB}j{qAHKWzvYFiCh60h`spbL8wrS7I<4 zrag&x^W)fb+EEfPYS5iZgL!(wCh#PS{#r7TRC&+|t7A#62hCqS!FxL-hk@D7pO%KW zvmSK!>d?SY*c`)yP+MtUqg!870lkc;=T=Y0v#DEYBwkA6OZ}Fw2V-ywp;DMOL`+{| z0=wNqU8K)9RGM?m1}K*QFoX_)KMsNE>6L~`r|Eq!`fBOKx)VT*fxwkoOsh@n5dYZ_ zl(!@$bz$b>e8iu73|z7}8}abUaj@~~&E|5%pC5*-sjMnP{6B^egK;_p^xGjomtL1W zSGT6bP*zoLLVVkhrn;sY@$g>W)qO>|S!di>r2{fS-OOJe(m=6qHk!(ZYrh`S!mg@u z>hzUR{qr}6RGHPO>&uEWD-8gDKOD}kSf5n_CoX?#2sHxf)*8Xb(~n@428O{4ESH~P z$I5s9Qx`-d%7ayR2JaS^kHZDjSUxF@JyW`<0qdtrF;#4Yb!{AkVah;dhWS9!kQt!M zs|E(J$D0_c2O7Ib3p0`@gn|Jh==W^H6JV$b3UaQ;o8HlnC+?%DZ$%^t zA4QWZg2;?fw79}&@$cZ-R`y0tL(sYWuq$t1of87$z;5NA8XQdq)>i^2YsyQFhO!#O zuW{`aYOe?(Z;qljDEEuL&p5`O=`ufWVJ@ zT>;jyXGgPcwMDNlXWQ(eFU_lrP*sCo-X-+8%24u!AAP-YBKgjbwpaSA`UV}jTNx3U z>>38qTy1W}Kh3B$urRKr)HJ23`-m=udC05A}X) z^uUaDy7|)OV+z}{l_@kZ1mNBJ8sZ9#;mz% zix+_lcgE3kM!(TLk16M8ElbG+wJMnQ8MO(i!@6dBqMSWgbKb$O9-SC_uK_z#G01^G z*NpcLav9Y?PKO>tgX#I22{{{G@PPm9Bt_gCE>xbAjG+iLG%cM@4hkE5zsqz0qrv8Y zx*J1aM!9+Z;ziE0`QZ?pHwYVy6((aX_^WjJ3)IR=hwKaqL_G|1<`+4eP8kjxb#jUw z7I)fW){OBAaYaQZ4^U}jW-z%wgwSi|fEE95NI&EZ;?sfP1KCp^(B;X~u2crzu~Hy0 z5ux#5>Po5`YE6}97LdLW8dEbNbxG*J@cNp~21s#;r3{zxASd!&RyrL!(PUg#ZDyHf zWhgaT0_*01KhA9`D-pk75YUyuS;p7}4;;ffuQaX(KX~|E$+hWq03klpwUJ?|orhB9 zP*=LeKqh#{R$c;In9mwi)ai7o?8qz|)EOQNL_$2`t&d|_ddJqE@Bw$6#s*Nqw_m;!P%6!y=kOm+jE!Nh?xS%U*_swy!fG;`RX2AB-X5Ny~_ z21jtA(BUVc^l!D1WNH{~uhn{&hYj*&fUq>KHb83{gxSE(@&R$rhS8E*U%G#tmNbRY zwsp}l55aCAoykVdjg$pR16B{p>0uze9}cS0Mm;&)*Y!1(PnR=KSGrn2{Ra@ZxiXyQ zZkiamc2Hp`-&74H5~zl-LFj{Ux_47lU1d#)Sq^wI>|5Cb8QBa(oH%S;m=gq&WzbbF zJKX@Sj1XT0)EXqMa|+DIHN$OPA?X|fYt}?t%w_PF7|JuoDDbq$rFHfKOPB597~NbQ z5fM0HF#7C#)>lKD`9oN>#Z&SB2Nn_p6CPB)t1eIv3xf;eC7UUp(B zrR(Of(sLcuXV3_45qrV}aefWF8#c{1R9nnQ4V4-|LjW6nHCzN83xNOr2!2GuRSQER zTKBZBE*OQP{lpVl@qQABc60m58P)_o5WoSS35f$aRy{?wd{wqA=J%6!W(FTPBnSE@ zq!?Z<9LKF-!^=8&^DS#Xhr^H+3G4%5kpI&rLRGl~(0&rkH1K(cl^F7e$p5=@;0C^! z69o0Z0VtOt=vx9IMr@etvh*rU>^q{QTepnz*fNe;v1cTNUXzi(%SaVG55Z3jGIC2s zYGuTO9^5+0&p(*8V$V$Q6AD~xcb_2Cy2Zz1UNBR!=O%>4%FXx4$ZQ$$lab>xvQ$Pm z8ozavM_~wS#UgNmM9DUnLm9$Yae@#T;b9~5qyW|u7|Go5kC74iHy_jtlX_F0nA7@@ ztm|O~Ir3)hm0!pR6xCmC(MI8L)>$}Iya;WFs~WBoguQ!Vmos8-$=%7bdP_EcQ#SXO z$8MJqRvshymzYiPeS#=toqjy)oYl1meGJz-Lw+eglyy+mzVobB`K^2dwe7iQwH~v8 zNY0f%1T%)HDA{)ASrMzL)B3+4-+brCIt_&DS-1v5<9=Dz9T@W0A9fv2tOF)&$Y{?e( z$;b^EnFMG9Tqg*VhCXp1!he?nkSDB&LFf)#YPg*H>iuC6)W$F?C^??prd6iMH%mh4 zU$<%fE94tiUpTo2|1|)1BTuhw85Mm+)*S}T2{IaR$PoivWP8Oq%7+8?Yy+&1Wuvg8 z8xAtK*t7o$;v>)TfvjWaE4);ekwjQ`9!^z;%%(Y8ecWY$9i)((Waipsq)A4MfU?%_ zkXX6-Jy|Cor>Iy)7C}UK!VX4+oGaNNBkc4;=%UQwn=+CdLEE=$Jv`!B19qapy2%43 z$_OJm{O$@@t2{gB7Tz!G*a3u4jy#}4M%X!nPzXZ;y`iAt2|Hw*v}WJVPa&dz*%3f< zcFa<9VcJQPvOf)>S+3L!xlP6%z-1} O(2L@S952m9=zjr+t7}~V diff --git a/src/inputest.c b/src/inputest.c index 15a1b3a5..8d94fcd3 100644 --- a/src/inputest.c +++ b/src/inputest.c @@ -28,8 +28,14 @@ void main(int argc, char *argv[]) { ControlInfo control; + extern boolean Keyboard[NumCodes]; IN_Startup(); IN_Default(0,ctrl_Keyboard); - IN_ReadControl(0,&control); + while(!IN_qb(sc_Escape)) + { + IN_ReadControl(0,&control); +// printf("%u\n", Keyboard[sc_Escape]); + + } IN_Shutdown(); } diff --git a/src/lib/16_in.c b/src/lib/16_in.c index 0b2da7d8..28d79e71 100644 --- a/src/lib/16_in.c +++ b/src/lib/16_in.c @@ -38,7 +38,6 @@ #include "src/lib/16_in.h" // Internal routines - /////////////////////////////////////////////////////////////////////////// // // INL_KeyService() - Handles a keyboard interrupt (key up/down) @@ -48,8 +47,8 @@ void interrupt INL_KeyService(void) { static boolean special; - byte k,c, - temp; + byte k,c; + register byte temp; k = inp(0x60); // Get the scan code @@ -109,6 +108,9 @@ static boolean special; if (INL_KeyHook && !special) INL_KeyHook(); + #ifdef TESTKEYIN + printf("%c %x %u\n", c, k, Keyboard[k]); + #endif outp(0x20,0x20); } @@ -1189,3 +1191,9 @@ IN_UserInput(dword delay,boolean clear) } while (TimeCount - lasttime < delay); return(false); } + +boolean IN_qb(byte kee) +{ + if(Keyboard[kee]==true) return 1; + else return 0; +} diff --git a/src/lib/16_in.h b/src/lib/16_in.h index b37a9d5b..b39e1a5b 100644 --- a/src/lib/16_in.h +++ b/src/lib/16_in.h @@ -33,7 +33,8 @@ #define __DEBUG_InputMgr__ //++++#endif -#define DOMO +//#define DOMO +#define TESTKEYIN #define KeyInt 9 // The keyboard ISR number @@ -326,5 +327,6 @@ extern ScanCode IN_WaitForKey(void); extern word IN_GetJoyButtonsDB(word joy); -//static void interrupt INL_KeyService(void); +void interrupt INL_KeyService(void); +boolean IN_qb(byte kee); #endif -- 2.39.5