! / 1494434289 0 0 0 942 ` 7ps2receiveps2receiveErrorreceivecountps2receivetimereceivedataps2receivecommandps2receivecommandflagscancodebufp1scancodebufp2scancodebufps2sendsendcountps2sendingsenddataCNHandlergetps2DMABUFdatakeyboard_rcvdatadma_readptps2statusprogressps2statuscountps2statusps2sendcomdataps2sendErrorps2sendcombyteps2commandshiftkeycheckps2shiftkey_aps2shiftkeylockkeycheckisShiftkeyisLockkeyreadscancodekeytypeps2scan2vktable2_jpps2scan2vktable2_enps2scan2vktable1_jpps2scan2vktable1_enps2keystatuskeycodebufp1keycodebufp2keycodebufT5Handlerps2initlockkeyps2readkeyvkeyvk2asc1_envk2asc2_envk2kana1vk2kana2vk2asc1_jpvk2asc2_jpshiftkeys__vector_dispatch_20__vector_dispatch_33ps2keyboard.o/ 1494434289 0 0 100666 32572 ` ELFLp4(!B0 @0@ @0$$ C, ` $!B! B$C@P0& B@T& 0 $$T$@$C$CC,`$c$ P$<c$ <c$$bc$<B$+b@<B$<BB0@ $C $$<CC<<C<@$<CB$B0 B,@C0`$<dB<dB]Ap@`@'lhDx|{7`@\XTPLHD@<840,($ d`<B @<cB0@< <<Cd@``\XTPLHD@<840,($ ``Alhp@p'A`@B'<<1&$!QD 0B$RPb ''B$B0C,`P'<(c$!bB@(XdD@P'@<<C<@$<C$<b<b0@$&bB@T&b0$c0!$$$'@T'$<b<b$<C<B<<b<b$n$'B0 @$b$'2$'`@T'$$<C<<C<@$<C'B0/@c0$b$$'c0$ b$ b$$'B$B0 @$$'@T'$B0 @c0$b$'@$''!0B0@<<C<@$<C $$ '0$-0,@$$($,@[$$!$ T!$@$\$$$, @$$$$ T!$$ $!$$c0'$C,c0%CpB0B0@B0B4 B0@B0B40B0@B0B4B0@B0B4'0$ ,@$$-v $'B0B8B0B8B0B8B0 B8B0@B0B8B0@B80$ $'0], @P`$[,@$$$+ D T!$$+ DT!$0, @!,@$p$$+ DT!$'!!X<%<$ $ $$C$CB$&(Hf iP $jb,t@ `$<<B$!bqB$!bq$<<B$!bqB$!bqX !  ! @ <B$!"BB0H@P! C!  !(<B$< ! @<B$!"BB08@B0 @T< ! <B$!B@CB$!B$BB$"b<B$b<B$bc0!#QB$< B$ bT<B$C !(< ']Ap@`@'d`Dx|{7`@TPLHD@<840,($ \X B0@ @B$B,@PB0@$ $b< <<C\@X`TPLHD@<840,($ ``Ad`p@h'A`@B'<B$<B$B0!<$$!E`B$D!E$<b<b@$<CU$<C<@$<C$<C<<b<b<b4<C$$B0@$<C$<C<<C$<C4<b1$<d<$|<d<$|<d$<d$<<<<b$ $B0@c0`$0$ $B0@c0$ '!CB$< B$b<B$:c|d0!$1B0D$0,D$Ac0$d@$d<<c$!CBc$!CB0,Pc0!c0 $d<<c$!CBc$!CB`<<c$!CBc$!CBd0D$D$0,Pc0!c0 $d<<c$!CBc$!CB`<<c$!CBc$!CB0,D$Ac0$d@$d<<c$!CBc$!CB0,Pc0!c0 $d<<c$!CBc$!CB`<<c$!CBc$!CBB0% $ >  : ;  : ; I 8  : ;  I: ; I : ; : ;I 8  : ; : ;I : ; I8 5I.? : ;' @ : ;I4: ;I.? : ;@ .? : ;' @ .? : ;@ : ;I : ;I .? : ;' I@ 4: ;I I.? : ;I@ 4: ;I.? : ;I@ I!I/ 4: ; I? < 4: ; I? < 4: ; @I? < !4: ; @I? < "4: ;I? < #4: ;I? < $4: ;@I? < %4: ;@I? < &!'&I(4: ; I?  )4: ; I?  *4: ;I?  GNU C 4.5.2 MPLAB XC32 v1.31 Compilerps2keyboard.cC:/PIC/MPLABX/32mx370f/ps2keyboard370f.Xunsigned intO@RTCOEPv#HALFSECQv#RTCSYNCRv#RTCWRENSv#RTCCLKONUv#RTSECSELVv#SIDLXv#ONZv#CAL[v #]Xw^v #Nk@__RTCCONbits_t`XgARPThv#AMASKiv#ALRMSYNCjv#PIVkv#CHIMElv#ALRMENmv#owpv #f(__RTCALRMbits_tr WAITEv# WAITMv# WAITBv# MODEv# MODE16v# INCMv# IRQMv# BUSYv# WAITE0v# WAITE1v# WAITM0v# WAITM1v# WAITM2v# WAITM3v# WAITB0v# WAITB1v# MODE0v# MODE1v# INCM0v# INCM1v# IRQM0v# IRQM1v#* wv # C? __PMMODEbits_t *  OSWEN v# SOSCEN v# UFRCEN v# CF v# SLPEN v# SLOCK v# ULOCK v# CLKLOCK v# NOSC v# COSC v# PLLMULT v # PBDIV v # PBDIVRDY v # SOSCRDY v # FRCDIV v# PLLODIV v# % NOSC0 v# NOSC1 v# NOSC2 v# COSC0 v# COSC1 v# COSC2 v# PLLMULT0 v# PLLMULT1 v# PLLMULT2 v # PBDIV0 v # PBDIV1 v # FRCDIV0 v# FRCDIV1 v# FRCDIV2 v# PLLODIV0 v# PLLODIV1 v# PLLODIV2 v# ? w v #  XZ% __OSCCONbits_t ?M  VECN v# SRIPLP v# __INTSTATbits_tQ o^ DMABUSY`v# SUSPENDav# ONcv#e wfv # ], __DMACONbits_th CRCCHv# CRCTYPv# CRCAPPv# CRCENv# PLENv# BITOv# WBOv# BYTOv# wv #  C __DCRCCONbits_t  RF0v# RF1v# RF2v# RF3v# RF4v# RF5v# RF6v#! w"v #  0  __PORTFbits_t$ long unsigned intlong intintcharshort unsigned intshort intsigned charlong long intUINTTvunsigned charlong long unsigned intN regP # clrQ # setR # invS # o REG_SETT PVI modeXI # staYI # txZI # rx[I #0 brg\I #@ UART_REGS] ps2receive,m data,vd.{ c/{ ps2sendumCNHandlerm cnstatvport vgetps2DMABUFdatamps2statusprogressm parityvc{ dummy ps2commandQm dQvnQ{ shiftkeycheckcm vkc{ Tc{ Uke, lockkeycheckm> vk{ isShiftkey mq vk{ isLockkey m vk{ readscancodeme0flag  d{ vk{ p{ T5Handlermps2init m`i ps2readkey^{ mkd, she{ shiftkeys{ m{   vkey , lockkey{ keytype{ RTCCONM  a*RTCCON5 kb c RTCALRMe !sv (RTCTIMEw RTCDATE   "T5CONm # "TMR5 "PR5 $ *PMMODE C"PMADDR "PMDIN2 "OSCCON  $ *OSCCONU X"SYSKEYJ  #I  #J  "INTSTATL  %R  "IPTMRS  "IFS0CLR  "IFS1CLR  "IEC0CLR  "IEC0SET  "IEC1CLR  "IEC1SET  "IPC5CLR  "IPC5SET  "IPC8CLR  "IPC8SET  #F "DMACON\ $i*DMACON ,#j #k %  # # # "DCRCXOR "DCH3CON # # # "DCH3SSA& "DCH3DSA* #. #2 #: #> "CHECONJ # # "PORTF $%*PORTF "LATFCLR9 "LATFSET: "CNCONFu # "CNSTATF ll&N uartReg_'a{  a b dve{ f { g h i{ j{ k{ l, mnopqrsuv w,  xy , z{  ')';'M'_'q'''#'#'(} )vkey~)lockkey{ )keytype{ RTCCONM  a*RTCCON5b c RTCALRMe !svRTCTIMEw RTCDATE   "T5CONm # "TMR5 "PR5 $ *PMMODE"PMADDR "PMDIN2 "OSCCON  $ *OSCCONU"SYSKEYJ  #I  #J  "INTSTATL  %R "IPTMRS  "IFS0CLR  "IFS1CLR  "IEC0CLR  "IEC0SET  "IEC1CLR  "IEC1SET  "IPC5CLR  "IPC5SET  "IPC8CLR  "IPC8SET  #F "DMACON\ $i*DMACON#j #k %# # # "DCRCXOR "DCH3CON # # # "DCH3SSA& "DCH3DSA* #. #2 #: #> "CHECONJ # # "PORTF $%*PORTF"LATFCLR9 "LATFSET: "CNCONFu # "CNSTATF uartReg_P'a(ag (b (dv(e{ (f(g (h (i{ (j{ (k{ (l, (m(n(o(p(q(r(s(u(v(w(x(y(z('(3'(J'(a'(x'(֏'('('*'*']T c:/pic/mplabx/32mx370f/ps2keyboard370f.xc:/program files (x86)/microchip/xc32/v1.31/pic32mx/include/procc:/program files (x86)/microchip/xc32/v1.31/pic32mx/includec:/program files (x86)/microchip/xc32/v1.31/pic32mx/include/peripheralps2keyboard.cp32mx370f512h.hgenerictypedefs.huart.hps2keyboard.h􈄄K=KHK=I>(>>K=A> ||>K=?QLKKHuKKKK=JKJKK=@K>KK?KKKLKK>L JyKNy=KKKK>N Dv HvqJ$(<=L ,t L, u====u==Kxtrpq{ywus Q1ZSAW2CXDE43 VFTR5NBHGY6MJU78KIO09LP adg`nbefhzkcmjiv[\]ol#%$-.('&",! 0123456789abcdefghijklmnopqrstuvwxyz*+-/:;,-./@[\]^\ !"#$%&'()ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789*+-./*+<=>?`{|}~_ ̱ʷ׾Ķû*+-/߰ ̧ʷ׾Ķûݯ0123456789*+-./ڤΡxtrpq{ywus Q1ZSAW2CXDE43 VFTR5NBHGY6MJU78KIO09LPۻ adg`nbefhzkcmjiv[\]ol#%$-.('&",! 0123456789abcdefghijklmnopqrstuvwxyz*+-/;=,-./`[\]' )!@#$%^&*(ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789*+-./:+<_>?~{|}" |   <0Pp\ P@AxD PLDD L DH X @`D P<Ph\ P@A DD l TXTtTTT|RRRSpSRRtHx4<R<d(44T`4Ua|RRD T( H T T [ [  ` S ` Sh p Sx S S` h ap x a a a  a  R  R 8 R8 $R hRpxRRRRR,R4<RDXR`hRpRRRRR$R_ ps2receive ps2send CNHandler getps2DMABUFdata, ps2statusprogress ps2command shiftkeycheck lockkeycheck> isShiftkeyq isLockkey readscancodeT5Handler2ps2init`ps2readkeyshiftkeysps2keystatusvkeylockkeykeytypeUkeyboard_rcvdataldma_readpt~ps2sendcomdataps2sendcombyteps2statusps2statuscountps2receivetimereceivecountreceivedatasendcountsenddata ps2sending2ps2receiveErrorDps2sendErrorVps2receivecommandhps2receivecommandflagzps2shiftkey_aps2shiftkeyscancodebufscancodebufp1scancodebufp2keycodebufkeycodebufp1keycodebufp2 ps2scan2vktable1_jp!ps2scan2vktable2_jp8vk2asc1_jpOvk2asc2_jpfvk2kana1}vk2kana2ps2scan2vktable1_enps2scan2vktable2_envk2asc1_envk2asc2_enk__RTCCONbits_t(__RTCALRMbits_tC__PMMODEbits_tX__OSCCONbits_t__INTSTATbits_t,__DMACONbits_t __DCRCCONbits_t __PORTFbits_to UINT REG_SETN UART_REGS<keycodebufp2RTCCONbitsRTCALRMbitskeyboard_rcvdataRTCCONCLRps2receivecommandps2shiftkey_aps2sendcomdataps2scan2vktable1_enps2sendErrorALRMTIMEsendcountDMACONSETscancodebufp1scancodebufp2RTCCONSETps2sendcombyteDCRCCONCLRDCH3ECONsenddataT5CONSET*DCRCCONps2scan2vktable2_enDCH3CONSETALRMDATEreceivecountps2receivetimeBMXCONCLRps2receiveErrorDCH3SSIZps2scan2vktable1_jpvk2asc2_enscancodebufreceivedataps2keystatusDCRCCONSETps2status*INTSTATDCRCDATADMACONCLRTRISFCLRvk2asc1_enkeycodebufp1DCH3DSIZvk2asc1_jpCNENFSETbreakflagINTSTATbitsdma_readpt*RTCALRMDCH3CSIZPORTFbitsDCRCCONbitsOSCCONbitsps2scan2vktable2_jpps2receivecommandflagps2sendingINTCONSETDCH3CONCLRPMMODEbitsDCH3DPTRkeycodebufvk2asc2_jpTRISFSETps2shiftkeyINTCONCLRvk2kana1vk2kana2DMACONbitsps2statuscountGCC: (Microchip Technology) 4.5.2 MPLAB XC32 v1.31 CompilerAgnu.symtab.strtab.shstrtab.rel.text.data.bss.reginfo.mdebug.abi32.debug_abbrev.rel.debug_info.rel.debug_line.rodata.rel.debug_frame.rel.debug_loc.rel.debug_pubnames.rel.debug_pubtypes.rel.debug_aranges.debug_str.comment.rel.vector_20.rel.vector_33.gnu.attributes4< h %p+p0pp9GpYpU vHip3ae } up6p>} ~ p@V ~pnC pF pG  pG=0$K=dK ,lK 4 otKKQ  `8?CJ@QpX_4fmD t( {   0< G@pex 4!(/6=/DD K*RMZ( aki p~x  S0< 5K /!)s19A4IQTY#aiqgy$n T]!$@_ .!E)819AIQ^Ya?iqQyw~n    #3@O[m @0%px6?P[Lm|4D ( X @ `'/ C W k     $+4<DMV_gql|      0 c:/pic/mplabx/32mx370f/ps2keyboard370f.x/ps2keyboard.c.LFB75L0.LFB76.LFB77.LFB78.LFB79.LFB80.LFB81.LFB82.LFB83.LFB84.LFB85.LFB86.LFB87.LFB88.LFB89.Ldebug_abbrev0.Ltext0.Letext0.Ldebug_line0.LFE75.LLST0.LLST1.LLST2.LFE76.LFE77.LLST3.LLST4.LFE78.LFE79.LLST5.LLST6.LLST7.LFE80.LLST8.LLST9.LFE81.LASF0.LLST10.LFE82.LLST11.LFE83.LLST12.LFE84.LLST13.LFE85.LLST14.LLST15.LLST16.LLST17.LLST18.LFE86.LFE87.LLST19.LFE88.LLST20.LFE89.LASF1.LASF4.LASF2.LASF3.LASF5.LASF6.LASF7.LASF8.LASF9.LASF10.LASF11.LASF12.LASF13.LASF14.LASF15.LASF16.LASF17.LASF18.LASF19.LASF20.LASF21.LASF22.LASF23.LASF24.LASF25.LASF26.LASF27.LASF28.LASF29.LASF30.LASF31.LASF32.LASF33.LASF34.LASF35.LASF36.LASF37.LASF38.LASF39.LASF40.LASF41.LASF42.LASF43.LASF44.LASF45.LASF46.LASF47.LASF48.LASF49.LASF50.LASF51.LASF52.LASF53.LASF54.LASF55.LASF56.LASF57.LASF58.LASF59.LASF60.LASF61.LASF62.LASF63.LASF64.LASF65.LASF66.LASF67.LASF68.LASF69.Lframe0.Ldebug_info0ps2receiveps2receiveErrorreceivecountps2receivetimereceivedataps2receivecommandps2receivecommandflagscancodebufp1scancodebufp2scancodebufps2sendPORTFsendcountTRISFSETps2sendingIEC1CLRIEC1SETDCH3CONSETsenddataLATFSETLATFCLRCNHandlerCNSTATFIFS1CLRgetps2DMABUFdataDCH3DPTRkeyboard_rcvdatadma_readptps2statusprogressps2statuscountps2statusDCH3CONCLRTRISFCLRps2sendcomdataps2sendErrorps2sendcombyteps2commandshiftkeycheckps2shiftkey_aps2shiftkeylockkeycheckisShiftkeyisLockkeyreadscancodekeytypeps2scan2vktable2_jpps2scan2vktable2_enps2scan2vktable1_jpps2scan2vktable1_enps2keystatuskeycodebufp1keycodebufp2keycodebufT5HandlerIFS0CLRps2initlockkeyT5CONPR5TMR5IPC5CLRIPC5SETIEC0CLRIEC0SETT5CONSETIPC8CLRIPC8SETCNENFSETCNCONFDCH3ECONDCH3SSADCH3DSADCH3SSIZDCH3DSIZDCH3CSIZDCH3CONDMACONSETps2readkeyvkeyvk2asc1_envk2asc2_envk2kana1vk2kana2vk2asc1_jpvk2asc2_jpshiftkeys__vector_dispatch_20__vector_dispatch_33,8<Xdpx  $048HT`dhlx| (,4(,048<@DLPXdhlpx|  $,0<@DHPX\dp$(,4DHTX`hlp  $L`dhltx|Php   , 8 p                         0 D T X ` P h p              <     0 @ H L P \  d t x                                $$(04<@HLPT\`hltx|  (,48<@DHLPT\dt \`Xp $4LPH` 0jnrp t           "  & !C  G "` #n $ %  & ' (  ) * +  $ ,9 -S W .l /  0 1  2 3 * 4 5 6 7(,8CG9[:tx;<=>!?;@HAfBlCDEFG@HlIzJKLuMNOPQRSTU0V>WLX~YZ[\]^_B`abcdefgh ij%k2l?mLnYofpsqrstuvwx yz/{A|S}e~w>'?<@IAgBmCDEFG7H^IlJKLbMNOPQRSTUV!W/XaYoZ}[\]^_ `Vacmbzcdefghij k!l.3m@EnRWodipv{qrstuvwx y"z/9{FP|]g}t~~a$(48tx      $(dh|