From 980b94b896a131086dfec2e8139dac047fa93096 Mon Sep 17 00:00:00 2001 From: kieron Date: Sun, 29 Apr 2018 14:52:36 +0000 Subject: [PATCH] git-svn-id: https://spexeah.com:8443/svn/Asuro@578 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c --- Asuro.iso | Bin 5222400 -> 5222400 bytes bin/kernel.bin | Bin 168164 -> 168164 bytes iso/boot/asuro.bin | Bin 168164 -> 168164 bytes lib/ACE.ppu | Bin 1319 -> 1319 bytes lib/BPE.ppu | Bin 1319 -> 1319 bytes lib/BTSSE.ppu | Bin 1341 -> 1341 bytes lib/CFE.ppu | Bin 1319 -> 1319 bytes lib/CSOE.ppu | Bin 1330 -> 1330 bytes lib/DBGE.ppu | Bin 1330 -> 1330 bytes lib/DBZ.ppu | Bin 1319 -> 1319 bytes lib/DFE.ppu | Bin 1319 -> 1319 bytes lib/E1000.ppu | Bin 15708 -> 15708 bytes lib/GPF.ppu | Bin 1428 -> 1428 bytes lib/IDE.ppu | Bin 10454 -> 10454 bytes lib/IDOE.ppu | Bin 1330 -> 1330 bytes lib/IOPE.ppu | Bin 1330 -> 1330 bytes lib/MCE.ppu | Bin 1319 -> 1319 bytes lib/NCE.ppu | Bin 1319 -> 1319 bytes lib/NMIE.ppu | Bin 1330 -> 1330 bytes lib/OOBE.ppu | Bin 1330 -> 1330 bytes lib/PCI.ppu | Bin 8132 -> 8132 bytes lib/PF.ppu | Bin 1308 -> 1308 bytes lib/PS2_KEYBOARD_ISR.ppu | Bin 2235 -> 2235 bytes lib/RTC.ppu | Bin 2075 -> 2075 bytes lib/SFE.ppu | Bin 1319 -> 1319 bytes lib/SNPE.ppu | Bin 1330 -> 1330 bytes lib/TMR_0_ISR.ppu | Bin 2144 -> 2144 bytes lib/UIE.ppu | Bin 1319 -> 1319 bytes lib/USB.ppu | Bin 3836 -> 3836 bytes lib/arp.ppu | Bin 3509 -> 3509 bytes lib/asuro.ppu | Bin 1130 -> 1130 bytes lib/console.ppu | Bin 47282 -> 47282 bytes lib/drivermanagement.ppu | Bin 8770 -> 8770 bytes lib/fat32.ppu | Bin 10916 -> 10916 bytes lib/idt.ppu | Bin 3079 -> 3079 bytes lib/ipv4.ppu | Bin 2978 -> 2978 bytes lib/irq.ppu | Bin 974 -> 974 bytes lib/isrmanager.ppu | Bin 58225 -> 58225 bytes lib/kernel.ppu | Bin 6051 -> 6051 bytes lib/keyboard.ppu | Bin 4501 -> 4501 bytes lib/libpconsole.a | Bin 212114 -> 212114 bytes lib/libpmultiboot.a | Bin 29980 -> 29980 bytes lib/libpsystem.a | Bin 184436 -> 184436 bytes lib/lists.ppu | Bin 4562 -> 4562 bytes lib/lmemorymanager.ppu | Bin 4183 -> 4183 bytes lib/mouse.ppu | Bin 4910 -> 4910 bytes lib/netutils.ppu | Bin 3902 -> 3902 bytes lib/pmemorymanager.ppu | Bin 4233 -> 4233 bytes lib/storagemanagement.ppu | Bin 8449 -> 8449 bytes lib/strings.ppu | Bin 5426 -> 5426 bytes lib/terminal.ppu | Bin 10508 -> 10332 bytes lib/tracer.ppu | Bin 2690 -> 2690 bytes lib/util.ppu | Bin 9759 -> 10057 bytes lib/vmemorymanager.ppu | Bin 6105 -> 6105 bytes src/driver/timers/RTC.pas | 26 +++++++++++++------------- src/include/asuro.pas | 4 ++-- src/include/util.pas | 7 +++++++ src/terminal.pas | 28 +++++++++++++--------------- 58 files changed, 35 insertions(+), 30 deletions(-) diff --git a/Asuro.iso b/Asuro.iso index 9256384a2925f70fbf5d118bd19bb8371baae45a..29f8af35a3411c7c3f8baf9f57873921b5a0fd3c 100644 GIT binary patch delta 28274 zcmbV#34Bb~+yC5=m5>PuK`ESo*2Wgp7Q|Ae6U7jrO$CRRHmNSO z+QvFp+G+?wH=$ZlOJl1;g3usJ&Hs7sopYph`o8by@AJF&ob&xY+j-7%w@H8Lr3Z}Z zaO8De>KD($!T0=ckV0&elH7T%Bqqro7-|6B$S955t1a9jK5 zjO@O(tBvb_hU@rJi){18aNmDq)tTe$Z&f{VHRgH4A^XezI}iV>;R4-oLELkOv)dhP zhXId1$Oq=xXn%fC8<^7vpARUz^`X|Nmvl&=mwQOlJ9eng^ZptXYH5xv6zHuf)b#cg z3gYxU+y?zc92V#;KdkBPI4p?MaafBp_=q5u`A4)^HXjlAyL%)A{WU!*;N~3FVtMbV zz~-%^n$5aJ0=-E^ZG0fR@DHbvS6^l5fas*`=))1ur|DWzM|AIhOkigEF>S~;i@3YT zw9o>M3(_?GxR$1M#|2?uIj)86@tr_##CMurx`;ceb5-97Y{q}D*_`&hz~(pKx5O3Y zOhwI@zKKJ`iRk=;=6v)Ig0cPb2W@OiL|n*^8aMPuf!-%NSNx+Ou)v=*fAUX)#BcdY z8ZG6#=T2&U zFrE_F9Ck{x`T8k=-icG1-UAUA|Fg!;_*r1{;Ln=PndLF+Ck~Hc!ExF4?+!>8qdrqJ>wGlW#=3Ze}03CIj_yz$>#;#`R2UV9eQ41zxxHPJINOW+)kY< zxgfCF?xJSXa#5hS{i0^G_@bb%Eq>Sfn)th5?Y;Z^YuZqj3T#d()of;oxJx?caY^8B z)FpjLE(!eod`Zh$l}NAuWlb;bvY_wBFL%H={}OQnuV@#8*RKfle%3kTRRK5rs-|ZX zap$gT>(b+zKyS=7Z5&pLxC=Vx@rOw74_!~hUC=p?>mt4Dx}J!;aJ{=WepH}0o$41! z5qDST%r^vjb8l#U|3Jh&yrIR?{H8!}{!NYhK*T+~sm0Q&OrZB#nWp!#h0v3@7xvi^v+$ar%mq( zJkPqPd4A`fpf_drs_%d`<>?GwoT!a)mB8lIs()O^m4SnYi?8F?sdb%143@oq42n=*c5N zU<3ZrY^MDs=+N=Mv<^KGas3}_i*nv$fxjb9aA9W_5RZH zA+MhzVaV&Vr04b4Uy(2@;w1?b$rwrc$E|Rs(fAR}RqMav_^!zxG{zeHSC#gn3 z2&B-c$53vRp3e=5t|8$-k!dwV5q?uc_j|R5NVmI-t~dFr}Zo+90Ap1Q87rih(bQ)jbkiekQ0Q}3@wEs@_*wRFGB zgzOoe-QXoMJjhEoyueE|1B<-$8CdQm3OTyA9`dx>BKDw@Ef=!Ub@X{MqmD?o(8*TR z5k=L!`0>XuhF6|I7^O|_^tG!v17n&}}gXeM%7)Jz(v4YgSm@^rI= zxBcWjv&ixtvu?S5peW=ifqKYm14Wjv2TIlNK|GTz**>S9f7waKHrLZ)Yc8^KuDL#} zZY@OYs1`bF6SC)=tXq(%Z^MK1zP%nK>f6a6y>EXB*#Rwec3w+SRNuGMqk14@`?u2B zd96fI6}8f%x-De;wAR^_)}omAx0c3eBONS?YI?A9q=oFCPBy5GNcYt?5&NK5K$1bLiE-3UWiEdZisHVQK)DU zObOK|*_)vv%U44Gu{+cnk{B14z2v@NvQBKL55VenB0HDb=@HgxFJi~H*9ZR1_M-SN zwb$dX*+HcHatGb=>JFmbo$Da=)CN9Gq&q!K_q$QZ-g2`39fi6bow^-Gll4YNJsYM@ zBHf9dblof=d(Fw3!iBowQoHK=_0WDp#otQEwQxNKuLx0QMn&l3o*p5J|73)&TP4(u z@2u-i>nzg!rt?3aWQGnNCVodvI(N~%jP4@p>CP^CmdR>bh=`B6d`y6pog&B1Jj65~;5`uU;bEvAy(d zFRPbmY<};h_t&Mj$nx;sy5;oVBHa_cr54q4TIa=ha;JvW7!4Nv_7JtInqZO zq)mV*5j!PHPkC09sB_n%bjzk_5j!#3xp;xCFL-!pEE&kbj&AkH(`cy?hR~?5$jr>X z`o6VU$lmR%=hqw~(w!TlvmXlCM=}4ry|DDlp7lU5E9b=OqqH$rG!ECDtXG^Ug0XRW z5>^Y@OL2O9rhcO2kL{-?e`P~V_`u`i3J#ccZXm^`MvRRBaOAVXF#b$A} zS=?+E06lCLPn)Ht%~H!|@v>QJ+bnf#7H^xyWV86#EOl*`dNzx%&EjXX)VEn0*ew1w zOGBHbki`ixgv{{GFv+bnHtmbNxa zh|Lmev$V5W+S@E0Y?d&arK8Q#$z}<+St4wf&NfRIo29GG(#>Y+ZnN~TS$f(mkv2;& zo29qS(#K|rvRR^SmcBMijLi~jv&7jf{cM)_eHM9z*?8>^$ygxIko-v10(q19+--v) z-`DI@poYPTuD)w9sMw@~-!mBKg**10ugWfxu_%Yw7s^S-xjA;v*W^m6ZnFypLrO-G zx4md-m2t51YU>co zLTo5v8xZ>tu|i5QU%+ydXIWSlXh@vCp5@fI4HezUX{ez_0J&?E+ZxBNBTZJwGkwD5Kw#&=i<*b7 zE@hJ~E98WFahJe=-E|>!Z)t&xxBX`tPX1aUk2IB(Rwt-ppRiIcG&b`C>lr2V>04ke zvNc!>g%fo^Goymix9t5gSk+axKF1iUFXX;qj3 z*=(-np&>ig>#Hi(Kf^j?8SC$7*k68Ao*)_bXObgt$zfMpA4Ade zaH5$&<(G2JNPG0#a+cBj?rDHew*{#xIMKv2knty2tGf(bZuy1W&6X#(h$($Ov$Pc!1G@+Y8VI`VI$BsS@AkW`mptv1v$FLh0<~0Io)`YKapJqGJ$Thu{?k z22&Zq%?SR)Kr;;okiH4A9WPw7hq!H!kJsJ;LF_W8sAdCQd&+)(gFGh8x_h0$Fd4?v zkZ*2gDoEMyVaSu{dmKz+ppj;9Fr9%lXc`Ce80bP@=3prUU1|C(I|$x zQ!@us8R$W4aWIF0p7a4MU_JU`2G)cn!9YWx(^D<_0|&zx=tb?>ZJB5?Lu=CyxM&sw z>(DjXWb84yo^=5yD;Q~_<2h(}w6?Tm|FIv>pe|Eu9Vn=~LJs_3kDyusOZK!E^?; zpr<*Q$G{-^EeA^(*phx~<*2EZ(^D(Do`X>gY)#WSn99IlI+cSt3~WPR>vYtUo`0(kL&F#vNsG8>G6Q?jT^!6}U~jtREi&i_Na9LP zRxmP(&f%ar#OX1bzQn;K2KJ>22h$lCLnAnt$G}+HjDw{NjH5NJ95sbHJ@upaVgJ=T z9L2zRTFSvx2Fmn%4(2dWq5C*k%)kVi%Rxgsr=$LK^_$PuFGCaQd@h>IzyWj|2eTOX z0v$kdeuVYgjdK-@OQJ0}Xm0OxIEdEaU=jld(?@Gqchea-gkI%f9s`Hc6C5mM;4qqR z<*2EH)65(CH4?Ho*J;CQ-@gLw>` zK&>1sW#B~m$}`l|$>}MD4&$Ox44g!xIGD=7$uxw6ISiaa>vOP}fv-@BgNAUYqp7q! z^V#}k=rno;Zu0b*pUlAN^biNL7&wD|o=KvMA&DC~S;5Fux|DoqV4OP{QGwtN}7nO-EF_*s1!6XKLK&Nmpoq=2FP!8rX@I%^%gQX1o zh_0|20!6*iPLJb^DW#BeiW@G)$Vc>T9D+h}i_$fWeK|>#>qtECL+p{Dx zbO$9|G?{^)(>FMn#lSD?kb~(A+)Z6L zn8(09^bR~j>WjLRfqUt1R*ssYou2m5BOHukpq=J%FqMHSeV2nd4BSs`94uyFKApuu zLtm$(ujuIIWbLo8e&acr%*bzOCk|#Y@BnQ>ihqUm>%qAS#ud;%;gMhOp*hCs;vl`q z!6XJAqQ^Oy&cH&thl6*Zc(}5f;W#BKghn1tIc&DddX-f`9G4KpE zaWIvECG;`8PtnIWhk-Z;BWLK2Mw~*(K-6{8_!lOL(kJsxM(s1FVM9d%wph0 zy7&z;>ntR3GAAn-SxSd+(5yH;UZTA@n8d)#v<(N-8F+>Iaxjm9SE&PD06AAI1FzAW zR*sqyoSy!mzi=>$f!ApP2U8hH>1Q0wVc-qAfrG^iyh)dE(9qxMsEkfq^6ajKq2+Wq z7foj1E!vlZSq!`luh0s9gZ1mrxeCTr&>9>xCpsP8rMJ^r5|S8rkDldVIs^ZthdG$X zz)Jch2TK`vpT1+|sA+)H(*wGkgHa58NK-kO%D^f*ii0@}d_?msTv ztm;A1F33@m#lH7~+}PN0H9X_ePd;=w=&n5uN1=gc!W~6^C0I~B+JTu!xLsDUNsZk= za!m%2N@a7i{wU=O0%|BqJ%PJS6`S->SCAS&qDtkjj7xfuzf0vsQVp{3lH5oNwy(b= zcQUp;0()K|^vyuugP7&&WjVQf1zyMcHiGw}hg=M5P&iNz zzH~U$SgfrMHyCnb=hiLAjB=rGK|>vi@LsH0ur~FXfCrty1=eA08VV#-6L6(942FZW zW)zJ@ei8DoK#dY|RhAnJfJ<(fubP9f4+?yZHFxshs=Uy{cd$=EMp14oS#V9hB*l`E zf5;hzQpQle@jnVD%42IPMDl_9MmsWYq^~qn! zRZc+YW$p4ebKn2~)l7bg%^kq@P>a!K659MM4NhI=z)AWYx^aFW)Edl!(+6vzd8-Oe z!7v|ajrXDUMJO>*xs~-r7&SU*2Oy)HK;J6S+NsZ=*$!5PS}d6g=DS#O| zgUFX4l5c{V-eUvAvnGz_<659Y;D(<*T@0riQ{c2`J7|8{4+0M5^2MEiI0rV!UMl-F z-i6II3*dANg3eFla+^AlYg7)gmbZrwY58!dr48sEa7GsbqVB*@ia7^2sJ=`5Y0xk3eioU!UQ(KETE2+eL?pxYOphUb2uHqq>rHKeWYU>0&Xm1W)WuO;r!@&~_G*Mp;<}=WjI@;-$QvJ&steNLD z|4u^`aHCg{oaeIq!Cb0NLBEIElE_=~%hry->m6u-lJ3-mfYt#w1R!1m4R{Jew;9#$ zwSn)IRxkWmxeeRRK?ZV?hxPiXsrB>+kaG6a2OR4?wKLFzK7nD-!Eqlj)Qeu{=o$u^ z=qU~^V4yGk20*kAUG>Y-4UI(Bjc!GzdOzQ2Ll)hJe%=iRm)by`fg1F)7y+%HM-kBa zdHxCXbA;AUWVOC*bFwgMw{R%6QOjna2QA^?>kRawg&drsgVxL_6a9jtLz$>A-2~vj z`qBkiH)=(udS6}wJl*PHNNcTL#USfwR=k!Mq`uN7Rj z(=(X>E;DAsBYC;;dPB0}k=)(78h(eMhluN`%v-JG+DmX@1OzQT>;j)$A*XPinTNZz zFYMO3N(YcoeR{J_nxF~1ALqUQ$ydO{0=@y~?*zmC3P^p9Tm+G7Y5P{!z^jJt@c{CE z+~fN?kJk^KfA62XRp(8dM}6L#eFpq*m27w{r*`%Sll1yVxU%APG|xCH{)W`1BDNW^Jj5aq%R)>=tOBuM#LS3QA?Dx53ZO576;=Sv zeE{qRCu%?}X9-}jh>b?995&(nie-RJKx`3WC5V|(E*-HQh#l6j<$&!$tQfI8O&8_P zBSsP14474|!0M@nkcBKY35?Sh;bu=y-{wH5JsY|oVGpY|bO&%tdp2}mLUWg-D=u{h zbCBq=DUhn6(co|aoakmuI%gW9^A&jg{PLB<}0T)k<(hi-P18G4v>Vqr(&!h!+L$S z1nXa8y{1}<^*pGn6l)(t?U~&LU>APv#r!m-lQl=Chm*YEi3R>gSD*WW~uPOxOA$q@-IlHYbjY6R50qAi?A)ODpm=D-34D?gfGxP;LlT&XCz%OR}ruXn1 zq$K0$S7@Us?nzW%Z$qvNZa>gA&;vkbF7V2z$T-_8bJ!Ed8Px*~9fQXn)r7UDP%9h6 zbKeJj1t9U!V2m-Xi)M@tCn=KBtln@mXP|kY)MHHL{42CeHrXgC9XcGj&&Di7)AL>i zKhANE+1bVVn8EyWB1PnZq=Yrt_c}ygm>J_wS8F2kreQsu^fD?fA{QZfG!rLJt{+4j zgh8!Q~2*l=Sn8(8umiS$MWV2D}Y>h?M_BPD5AWX&R*Bp+mIEhqWY!1Mt zmZ-25un0$kusRJjDslRyW&oCk*fPXQ5i5YDpku2M`vEXYzr3~4syvz z3-ZWV6y%jbl4>aKRzGl)QS@ZLCrJGHkv?LB76EoBL2pceu4feLF{ulo9^)rkVrL9Ka@8x`4!muAjM$# z0IzbCj)PsssL9=$089zAHM=jP+(MMop0)~5&IRSH^au*(F~P1VI2Z-Bhqa9;=%yLm zf^sXFoHxp~MY($DI2GmGHMzMcm(1j@W6Owgc;i52l=IN!1|ZYT$^^f~=5Jv21H6Nv zW)$?)1Y06wVsZpqyHF1A8)(&7kn5z${S8T>6xv#kXQJFHl*2m?S`7HV5}HN7A7=

{_L17ohfMXw9tY=VAL@Xsb!9VcUhQb`*LmJ*v0eO-d)$_6I)3^h_Sx^Q-YqpuO9q#4-71&^G!g zanb}L`zWnEwO1-}PjX}J^L>;k$y0NC%6nNalH{W_twvw3tHes673!;WdG;da6<_6{ zr~YopLU)r_{FFdxf_=50Qc}a3+z(dTtI!R48=l{89ERDbF2?5X*xZZFCD<&+=EvAv zj?IJEB-qTr<}Pfm#O4}oZpG%S*nAtC>#zwIID@(#o6DhD_L8~@>w{j!#$a^|Hl|~} zpPGyHu~_e+euVX5SZ}Xx$GU>`=IZBI?}hdH>Q1b8#ClD2Z#;=;q>MMJ@nlmYrM;A6 zKh{WTE!F!5WhTQ#9)A8f77Dc>o)`m^AmfpEdvJhK;bAR>L}c94Q?U_@-M9t;1E3{i z1p=paKugCw1PXOPOUOh7cIkkYlA#FX>VTG%7zE%~Lugb>OD6>2t{8#!Rtzu@kr_Io zrN;z7Su*fievH@}3@t4~m48Dk7Ft@4{=iljXlYq0!B#M|v^;%>twzw&GW9jKyr8ug zU48+r^v9AnsozSOiD_HWN(q(B_C2kXIZ^{HZCP+LoADPUZiQCC)b$QlA~1Dn!OB9n zsC5b$nsNi*`ru18X>Lt*2SP6bq!wT;5o(!nPv}rYen4a))(lb24Ai`vwC|uSZd#0R zIfdZNOCS5rzMz&Oa1H>tv92V?J18NwDiJE2fU3mNLFwD9*lvPb#{@tR9zqoEVClo1 zaD53I*{Oj3NRq>pmhQpGcbY&}hbi;@vc5GHz>Sev&C@FZ8KrbN@$aZCXyT+|85OlA zHYkWbI0;vqCF9BG9hJ|#BEXc|4egB_M<#SqDx?xJEL@3kPeiQQSn__j@`p5<*dmnU z(gl*#SqXNZj8vbOiM2CO3rI>A<)TDMTvz2Zv>J6&hFi;`!G$dWP93+wX~%9jk#FEs z7vBeN833oMZqT!OFG20;C^&gGhUQRs=A$Q|xAdK(a2hrSPRX4C3qdRO(LgSkVh@%p z`$HV1pq;-CYU+pB?0CiD$m?mK-@&BYE%j)!48S?9^0#q;lW?C1k8Oz4^}jnDD@*8m zAp5ki?9^_F))-Afx+?)D73owoeOS{Z!@Dcp%wYvEIK@cq-VfAyjlyOc7^T)x%R{Nd)Eux!pqtr(^AU<-hHUe=aqv-t-)0xIfc6n2~j$R77C?Z=^Vg!aW1(Qpo()uCh5 ztU+XLjMBUIG}K>_r|mwaxGz9zdJ-8Ft86odCy~doN-Oun7{?EZ zBsfk9G}hQc`p3aNMC^NHVVu&{`0i%1J5C9c&XTKfN*`mJ&7@^NCB@ir3t7`o2@g3B zx*5x1i8$0!v|SFfM>WHc!Pf`~V0kh!F4*2h%K9lU)%>$Nz;Rh>Wg;08uLQy0FfE8z zLXE*)$;a`E+341l9E(>%yxMewo1%vkH%8Hc?+{14;%D^eM(WE-3uBG$q^GQmHZJc< zHp$8x(oPbfC<#&u7C|IaQ9Qka-+}eN9$jY?)6D*4tD?kq^cw(?4qKP$*HEi$%=D|R zRW@h(`Dm4#ReoMjS-Bp2lj-L{{1cS+Mz@VbPEZa>yGX76N+;=e(!0MBAYCS-`YVcY zV`uVlf2BpOr5nK2QP?;VBFO3f$}-7JMkFe8OiAH@A4{(6?9 z*VX~QJP~tbAjvN%0rp1&6tg64C5;9u@!f(UoUNrFhr?s-ucm^nSFx6ZHHtOE8K{+O z*jcDmU=4-oVX|qU(ynzE>{Z;l+#XuFF}J-|ZqDtbl{qTDqM&2fl3N3nr^c~wlUqs3 z*jh8-vx3f4k`aTHM@^zYnojHssCGA9_7+4O_e2-DNM;U(zm7{HUk+9xqjGU;hy=;Z zF%_9}D>D~Y9WR7m>kkC|eX!%?uY;Pp8Jq6ML9#AL7G^Ci4^Vd?mK{w(hA5Fkl7E9$ ztVzB5K1iYF(!&98?W37+|DS&tjg+E7Bt8gYlNyhJ;2L;T;WuI06KyG2%5$SGG4}i+ zN{VC*U1M)P48k?uA4tZ(s5FnQLgl`2mCHD)8j_&i1?xp+{;DUof_0`g*70p~M$xi! zX|-UG9jl@7XPGDbX$M>=UR2t7nLtLL<(pd*<8UR?_-1PoHC&nP9)#Miy~zII%3IP^ zqF9vH4HFTIk90WnFKCvqC3tBsfV;2^i*gkA@ezvIeVQiKlguBXGz;C(6Ve(Gl$jRf zvh=V=^?s^ZDCY)z{)bRg^ODG+5lUS6UcCX__Xoj~p%5m<*aI+(D$37?T7D@Pp&&y4 zBt1qdjoizTAK!zF8mYWsT-t+tHd1Nj<}nDsKggMpFzLN|kmjS5_U=K5P3lgDk5Wc7 zSOm+uT7d8w6IhtkMWdAMZZ7bR4(jtpE3f$njjIbEF5yHkK@8se3h9)uAgVCpIYtS# zcKZjLQsip-KD@x;u9_hHt#zTEAIl}a#oi#XAFspkzNmL?m>`Lqe_!K4hu(h*y&cL4 z8xWXrxD_h!mP{$C$&m79Ny?iADI{-<;#sHJHB*6yp)fyUJcJraipD5y-JLE@a9X(PPYkqJ@;iLq<7E+kS~jHIMyuR3=fn^ zYnJC=vD37xMxGaKeib5&01-73<*qaMGS{9lA0g9HW5}9hrKd5iG5Ic8X>5#-AlH+X4sL0vkV^u_ zDoq+|(JVt?Q$CNTDHwxjhK^O*cGRNL1crhDL~~&ui>452)uX8a0_rUCaS` zt28slhLf9Pl}4s@=wWv!=zb2=)E&fkoU$-HnZhoh*-nEGm1~9u1?)Fn2T04#Sb*|X zO&XQQLH6nNPUPS?#V@>a78o(j2Dlt1g^EqOYcB}&!WU!gZL_vNgx!Swp)TD+JjW|7 z{MvyIzJmGzro~ZLY#DNbNc4E+fE2W0f^xN6FhKB*y~)awrKKMD$}=bzp_Lm8;3Koc z73*a_&q2At_JD~>ZAl6yZBvw9?qMKCliHIRDazu}VdW4(DE+Pj^d}MsH5S>%5N>`F zZ~m|cau)_Zv|kCpT~Mv|cwgjvf1dGRSjIKnL`S1)dOJ{^tf`XtNy;R1!7WHy8dB>r zflB9Ahk;d^+>ZP-Ntx?DVGanSg_4BHN(9^_S|`IbXfer|tTchvfyqh(uf-^F2tNPQ z0ipIwla;HITRKAb$oH?nVD@cG%3o1J+*Tu&Lz+xg+Dg}mJXM)&U3t)Z-^qhFUDTS8 z*oT)_ez)|pw^YnVBICi*au4_n0WVWr;8pjpbj)_}u@bJ|@MX9v1*SLs3NI`D@Xj;KvS=+!P-W28w0fzm}e>Qa*^6l$p;Xtx(&(J8tJt73X=EXv$1ZXKQ|#&HxY|c zCs3*sEnI^dk0}_r-Q0pFxA3hdp7N*wPlDc;n;kv6{pp;7SMK3g~zEBM6RM#00I?s7y?>4`(v#NDG6%y zNo(K>;Z5o&)eC;&LCfLWI2dRNoc_ZY_*&Bs48#UIKic>)Oy0`*utE$AKpEhPY`e z$EW{OrGz$UMIO#jTDT{o+r=$O;7ld4mG?|-BdfC}rVfqK>vh+})TIx>BW!T~Yv7e= z$V`$wQ;D?pY6-a*9Tc$iu-Weo<6ZR`B@L(M^LJp z2Tfk+a2$0-F^N`!Mj;GW^;M=$Mq94{LqCE$&jXkc7+!qU0b_2=I7;Dfdk3Z}O}x?JJ5>p?db|pw;|nL+6Xr>-3)E7IqC7m{CAD5nnPkYA z_{7^>0)O18VepzdBgw^Ct;$FWn4AHTyb_h^hZ;+6LZe{+Bsixa-gcL`mu`m_B;_LEfZrK0VjmFY z;V5ecj{H7LY0yHKaY`($YCG5cs4E3MX=O>|r+R}loUJtRGdzOVfhXZgm0u3DS_vn3 zZt6cD@9(f?EngFE=e38gEbG{~QlbK^mGUuMpTwIEO)Y=O3;w-YZ zUR`LfH%D3ER&(qf%w;mX$tCMwRU$im2o_*swL9vHHAx*^0k>9BpbEEE?^l2egXB|? z7f81TIQ3q!*I20hU7KVrRMPjYR7RR$k&N1?g!}E83^{>+27?#=m-Y>Aa75U*Zd6Vg zr9?9CU1g?^JPj_e@GlJh*c~4aW&4A7l_Xc2J36El$2GhhYFCv4sDO(!< z+mMz_Ju33!Hl+bEZ&!Nw{aZ>iL}qSRqI?!i(*0nGd09XTwkw_fL&N=3rPWw827+2d zsDW*a5FFvZ#P*RYq3*{3i;V}&c`^`_4aqg0Azq?bJ zCk5i5qFpS}9+qeiOVpRi%H7K64JSYoS_a>q`kcvw62%vg7xpMtpMTQ}$i+R%J*g`> zxmW4qCUt=S%ZDEJm-fLky(bejk@cz)$D7IIimC*+e?vG+`-3Jq)xm zO81OyFFV<H3q<^h^ z6Ud^9jn(^yrPeJKkXeOFL?BxRd?$gagI&coPWf&2qlJo>vG>3Cf3`R18>zlWVrp=TR>v@X zdnOapQ6*9Okc>GBPo~gZcvK0f|8JA%4!9jhmBG*LWSTotuSjX$5!VPv8a{mC*&?_K zqlGwimgP{Yz*k_Kq!ht_CM&|8TLkYwoBdaZQ5_;6KHtH+z$jAlJEet`yrTVgioN}J z37?w&4_o`A-x3CRvUJO2;JJiNZCDda(FFn1rS1OkgY|!CPdcAaZe?A?@_$`>BF{pw(W5{Gy+d3+_I zWs^P7#Er?TX3)H}anr`mo;~(e6vqrEkzQ95x_TzPqFYL`FTR@axm)zVE#olb+`|%= zDweoZvBY_bC3?gXm+k^GwJag5<})+)kIE8Wdv^1Jsl*VlM7uKSemh~}|Mv*(fCnWu zLjQ-6_^*LT(1=8c2PasPvxHx9XziiS@}&@)%V1{-X|!sB|HF*d_$a4BER^U#c9sdwlBM$nXZwFjE9zrfu^egWq*q2e zftQ?Rva=lLEHUq>kOC#Sb1$JjxqB~Rrzg9*FR*|1XTpmvq&TNW(h8|60gnD~B*HPk KE>*qYu>U_Oo=Tbk delta 28451 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 X)oHm@84Je%I0nKo$Sze5uD1U_gc#q= diff --git a/bin/kernel.bin b/bin/kernel.bin index 836b67dd56a3170b906ae85aeb41043fb6619411..34e4b5849ce0f28b936a9f5607d68bbcc477a4ad 100755 GIT binary patch delta 18902 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 delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/DBGE.ppu b/lib/DBGE.ppu index f34c2fb764842efad9ec4d02e63c9c963b0c98ad..2c74b21345dcb78379c61bacdbcdc98ba93f5fe9 100644 GIT binary patch delta 19 bcmdnQwTWv&9>@Hd2b9-rOHA2Vwuc1(R6_`; delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/DBZ.ppu b/lib/DBZ.ppu index 00ba5f33347cb2a778fd100cd8e662dbe92e3e1f..4fdb170b011aa7cd7d4f4666787ca63c3ae7012a 100644 GIT binary patch delta 19 bcmZ3^wVZ204#)hN2b9-rOHA2VvY7<{QiBME delta 19 bcmZ3^wVZ204#&p53okvhGH%#dvY7<{SG)-K diff --git a/lib/DFE.ppu b/lib/DFE.ppu index 721e0f92933cc786e6bc3a7e908c93f5a0a5957c..9aa2de950672a3e79668741ad32dea9e36323755 100644 GIT binary patch delta 19 bcmZ3^wVZ204#)hN2b9-rOHA2VvY7<{QiBME delta 19 bcmZ3^wVZ204#&p53okvhGH%#dvY7<{SG)-K diff --git a/lib/E1000.ppu b/lib/E1000.ppu index f43ea68974aa3962f7039780f95e74dd00aa751c..6e5253a6a8baa776fe897c83c90da2325c5ffbd4 100644 GIT binary patch delta 21 dcmcapb*E~B7$e90nFo~DY)eepEXQbP0|0Pp2?_uJ delta 21 dcmcapb*E~B7$e8Vy$dfrvodbjEXQbP0|0gv348zm diff --git a/lib/GPF.ppu b/lib/GPF.ppu index 42b58ded3a4eafadaaf0402c673df2f2e885c972..3ad0b7ce06b78134c464bcbec253bc5cd23036b0 100644 GIT binary patch delta 19 bcmbQjJ%xKh4#)hN2b9-rOHA2VqQD9OPSgj_ delta 19 bcmbQjJ%xKh4#&p53okvhGH%#dqQD9OR1FA0 diff --git a/lib/IDE.ppu b/lib/IDE.ppu index 2f187c24b24446104df4280dd84ea93ebcbd0346..8072e4af0d856756cfa321ba69b18324bc7145d5 100644 GIT binary patch delta 19 bcmcZ>cr9>34#)hN2b9-rOHA2VlB59uVh;&K delta 19 bcmcZ>cr9>34#&p53okvhGH%#dlB59uXGjUQ diff --git a/lib/IDOE.ppu b/lib/IDOE.ppu index 2b7d1671a0ff6189756b15bd7ae0bd8d5d591a03..87941e6a5bf4233c3ecb42772274dcb9307abe87 100644 GIT binary patch delta 19 bcmdnQwTWv&9>@Hd2b9-rOHA2Vwuc1(R6_`; delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/IOPE.ppu b/lib/IOPE.ppu index 077ff261ac643eb483b277a0b98a31bdfd346ef8..56c4fb0fe2c2b25a94a296749fb017d4207f8d4b 100644 GIT binary patch delta 19 bcmdnQwTWv&9>@Hd2b9-rOHA2Vwuc1(R6_`; delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/MCE.ppu b/lib/MCE.ppu index 127444bdf1411c5385498c74ff1d3dd8c8cc57dd..6cca51bb4976e498167bcb2fc3664c6bd53a5ce8 100644 GIT binary patch delta 19 bcmZ3^wVZ204#)hN2b9-rOHA2VvY7<{QiBME delta 19 bcmZ3^wVZ204#&p53okvhGH%#dvY7<{SG)-K diff --git a/lib/NCE.ppu b/lib/NCE.ppu index 4686574c302e6ec4c52106ea0afe1444a62cfd73..0b60cadeffdf1bd0d5762d7c603fbd6c4478501c 100644 GIT binary patch delta 19 bcmZ3^wVZ204#)hN2b9-rOHA2VvY7<{QiBME delta 19 bcmZ3^wVZ204#&p53okvhGH%#dvY7<{SG)-K diff --git a/lib/NMIE.ppu b/lib/NMIE.ppu index c0ce4d29b9f45c4ee5a5e8644559a312e62da7ea..6e51783f9873ea19ae4e6f6a18b50f3e8f56fe50 100644 GIT binary patch delta 19 bcmdnQwTWv&9>@Hd2b9-rOHA2Vwuc1(R6_`; delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/OOBE.ppu b/lib/OOBE.ppu index 73080166671b051053d386e3c584adba12db2780..3ddef5f74d1acae45c8c04ab6eac0c971b0d55e1 100644 GIT binary patch delta 19 bcmdnQwTWv&9>@Hd2b9-rOHA2Vwuc1(R6_`; delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/PCI.ppu b/lib/PCI.ppu index 770f062cc1b346dafefe447dbc16445667479357..362d760ad8e9b19527707f4ab237275371ba6994 100644 GIT binary patch delta 19 bcmX?Nf5d)5J;(f+2b9-rOHA3=ZYvJ}UK0rP delta 19 bcmX?Nf5d)5J;%nq3okvhGH%$|ZYvJ}V@wHV diff --git a/lib/PF.ppu b/lib/PF.ppu index 15246c6d66097b2540f7f05a7ff17d12998a0f9f..25ec827d17a08ca3a751e609c24550c310eb0f6b 100644 GIT binary patch delta 19 bcmbQkHHT|L7RUUV2b9-rOHA2Vw2B1)P{Rmf delta 19 bcmbQkHHT|L7RScD3okvhGH%#dw2B1)Rs0Cl diff --git a/lib/PS2_KEYBOARD_ISR.ppu b/lib/PS2_KEYBOARD_ISR.ppu index e821abd27e18dcc046fbcb0501b6d4e992a50824..49d13d2e8de522f59578c6976242046fed268f6a 100644 GIT binary patch delta 19 bcmdljxLa^S8^`>a2b9-rOHA3=r^^8VR`UpL delta 19 bcmdljxLa^S8^^}I3okvhGH%$|r^^8VTr3FR diff --git a/lib/RTC.ppu b/lib/RTC.ppu index 62a5845b4a4a5c9736e7d9d79e140df580003b78..9e495da4301b323d368803cae41b3db14275858f 100644 GIT binary patch delta 25 hcmbO&Fk4`P7n9Gei9X&O^JgAVUb8JRW#jxBb^wBv3Z4J} delta 25 hcmbO&Fk4`P7t`!36MeinHtt<`>6w*r!^ZhF>;R1R3t0dF diff --git a/lib/SFE.ppu b/lib/SFE.ppu index 2579761cb6e4949c766abe23467bb547f6bbc6a4..97ec83ce36d36eab1005815fce23811ccc1e3fdb 100644 GIT binary patch delta 19 bcmZ3^wVZ204#)hN2b9-rOHA2VvY7<{QiBME delta 19 bcmZ3^wVZ204#&p53okvhGH%#dvY7<{SG)-K diff --git a/lib/SNPE.ppu b/lib/SNPE.ppu index 97fdef1279d026ccf6dea1f7c7f78dfaad8f5149..2fd7687a05a3d73d50bf69dc37fc2cca7492ea8c 100644 GIT binary patch delta 19 bcmdnQwTWv&9>@Hd2b9-rOHA2Vwuc1(R6_`; delta 19 bcmdnQwTWv&9>>PL3okvhGH%#dwuc1(S$qi^ diff --git a/lib/TMR_0_ISR.ppu b/lib/TMR_0_ISR.ppu index 8e2125152df61be207e1f4a4ffe0107aa837208e..0bef30cc6e7d1816c67f59e24ccbeca2581e06b2 100644 GIT binary patch delta 19 bcmaDL@IYWf1;_lE2b9-rOHA3=@PHivTzm;j delta 19 bcmaDL@IYWf1;@s{3okvhGH%$|@PHivVYLap diff --git a/lib/UIE.ppu b/lib/UIE.ppu index 2b28ba1d9af7eb5f66e1b647d405ff977311182c..62860a3522480c3181b5cdf4aa2779eb1eb17268 100644 GIT binary patch delta 19 bcmZ3^wVZ204#)hN2b9-rOHA2VvY7<{QiBME delta 19 bcmZ3^wVZ204#&p53okvhGH%#dvY7<{SG)-K diff --git a/lib/USB.ppu b/lib/USB.ppu index 186cf958a7020bcf0030871b9d432d2c78340b91..e7718f857d0e61603b3acfe51316257cc35cbc81 100644 GIT binary patch delta 19 bcmew(`$u-dM~?Y34=AtMmYA~fCo>-aXnYB| delta 19 bcmew(`$u-dM~;nq7hZa1W!$jwCo>-aZM6z3 diff --git a/lib/arp.ppu b/lib/arp.ppu index d4a253209d7c3a0a165137f1aa8efaa5462d258f..e837eb8356af8ef40cd3ea30b1c86e144b16e049 100644 GIT binary patch delta 19 bcmdlgy;XWbJ;(f+2b9-rOHA3=uEz@iR{scX delta 19 bcmdlgy;XWbJ;%nq3okvhGH%$|uEz@iTsR2d diff --git a/lib/asuro.ppu b/lib/asuro.ppu index d30b75a1f0e407d23c3c67c4117e4f086d8aef7e..795d5ce7613ddb83f252791c12e290c2d70979de 100644 GIT binary patch delta 38 ucmaFG@rq-D2*)?02&1)A%F8Fp7%_?6-WVXm#ArS_muWqt`DR&WUq%2I(F~;k delta 38 ucmaFG@rq-D2uI@C(_v>KTJKDhF=BGLwlP44iP3a&F4KBO)6KHXzKj4f)(yP? diff --git a/lib/console.ppu b/lib/console.ppu index 4f1d49f4bc24ce6d353c1e1bd7488477c62a1a0e..220b452bf622d699c83f9d5859f89923260853a5 100644 GIT binary patch delta 21 dcmdn=k!jOMrU@k+T^g|>Yqlk(Y^*Wc0RV0E3A_LR delta 21 dcmdn=k!jOMrU@k+iswC!KeIA!*jQt>0|0Z93Pb<^ diff --git a/lib/drivermanagement.ppu b/lib/drivermanagement.ppu index 051647e41d3da8c4c87d4dc30bc079c3e4289fd0..b78f1bf1da292b98182dfab3462d4483b6dde35a 100644 GIT binary patch delta 19 bcmX@)a>!-EEROjz4=AtMmYA|}(E>#PVF(G8 delta 19 bcmX@)a>!-EERKzP7hZa1W!$iF(E>#PWqyoOy&jvPo@Y+ delta 19 bcmZpdXqT9f!?AJi!b{Jrj2kwVOy&jvRNn}? diff --git a/lib/ipv4.ppu b/lib/ipv4.ppu index 2f3137b65c43170f73656451cd9f69ef952aae1d..3d38bc8295b46734a43221ac3a9d8f7df8ee8b7a 100644 GIT binary patch delta 19 bcmZ1^zDRsRBgg!i2b9-rOHA3=Daj20Q^5!< delta 19 bcmZ1^zDRsRBge+Q3okvhGH%$|Daj20So#Q_ diff --git a/lib/irq.ppu b/lib/irq.ppu index 761d27bae00d3695333160d5e3937cd95ba49da6..62d0c84df536aa5d51d994f126e0c8d562ef360d 100644 GIT binary patch delta 19 bcmX@devW-Y4#)hN2b9-rOHA2V62%MvR^|wE delta 19 bcmX@devW-Y4#&p53okvhGH%#d62%MvTptMK diff --git a/lib/isrmanager.ppu b/lib/isrmanager.ppu index f9575fd701b26b6c86c10dd8a32c6aacd505c666..717571c4daef390587daef3ba56bbb11bb8519e4 100644 GIT binary patch delta 21 fcmV+w0P6qo#sl%j1CX!?pP9fTthQlfvADV7fZ+@S delta 21 fcmV+w0P6qo#sl%j1CX!?vAv delta 24 gcmbQLJXLu@7w5*k3okvhGHzg)e2_FYa5nUN~gZzMcb6vbB zyIK{<{YoO*I+nv7FK>|+etcEGL|Q&A$`0k;LZ6~uWW}r3WehJ}n<5qY**D@P>M9*E zc4O=uHg8b!c5b~Ux5~FxmMF+uGoVBcZF?XQ%Q_7%nz-G@^Xd;8W`o_f`vWta2K-7x zgL)I?O>IgDEpJ-Mt_FdJr|sKkgz4M6v;VM^+rwOy9PTgUnoRB=z~K-L%uF5WxdBLf7<8vgTNEz*Lm07~bxjy{sk z+^a|^iVmn(;>xD}Ph6{QGLCtE0XsfF9Ue3C3|t-#vn7vqhIro&wbF#5PK#`EbjLu7 zgxzr}!u)x#S~}4)9}?wUVekUjF1`9l;N28(D`IC;Ayx^=|Js-uELaMcm9UBRkO^3u z0j2T^P#CR%VOgNG8;Yl=S4k}X3|0d@X$hufp-*8#KIAF{S?3@M&|LsZ|KQHmFsu-y zl?!D-V8N?v;B6&YID~rf>(C*M+6Z7-2`EpMR%Mr&&k9VWrLy<;f`vV|2WGMjRp4Yd z`yiU#%z%RK7a<(j52euVZ(P*Nz#AK(Ose5fwRS3$*L=^@2&Ludh zov>WyL2CN~26Z^0cyPRDG>3-R5z;jCdhB4P|- z6sr)x{@>tF<0y@E5kBHecP|Nuz~SHF*1zcPvVjK>Lq{`1+01-$f;DE7a2hr{oPGZg zDwt~=s`RUo^80SXMHD%INFh7^Gy(SvV)2V{iLfJt*!+2R{DzP*scXlDSMGdeSos6E{8WNJ?Ii>`c;r28}DpbNQ|W#jjtLuWiJ#1+b=o49W>)qD6DC zZxvDIi#bj~4s+awK#VUUzVDs!I0U>#_7uzU6<@DwK63GPRBYBgzQU3h{8wQuO9G5u JLD8ebL#pp6V{sOz@+3Q$?fxl?fQbQjCz=-+3yADh_8$qAo_|Gxrm)7M(;Nq2K;W`TPj@h z*iHlLB;JL+fqqKr99+Z$6S^&a3+u~-EFPP*$;VK6kwo&=rAue{BRbN?gZzMcvt7I} zbB8LB{gp(tVJwR~UfwD#{B(Y=L|Q&A%naq;H9keX$ck65%NSm=E?Fw_^KZmS)KM~G z?8ewRY}u&f?JMh-TjgcjiWTJDIiN%i?Y=J&%Qy=zny|;lbE=LRW`o^!-~%(90sLBZ zwR#ifwT(&$Ew5e8`hvj2Qw|?C!u0LkIdWXe@zWo*Dmgs9Slds zJ3lE@lBn&#YVJMdl0o`CQctaiM!sw1rS2w0-Z?x6c*dv4rAfOc>S?&f9bJl*4|QLZ zi~?DKRyJCxqbrb3o?A{^!!4|h5etv@6e(QZY{6A~jk~|>kXF9q(k00yu3d}q@Hema zC^0L0SNU#Jw4I$F?cWyc?=d$&ghz}#1D8j@T*;%IA>OmYE@?thr$sh7x?><& z!p>L~VeUdGkWTb0f&@8N7`zzvNUuH;IGzk{MeO`?n6HH7er-$*=By`ysab)hfpti9a^MO8v!gW2IZ;Js_ZcHS%HbPMyIjJ zCK5wegxgr^A&3==VCI+sVJzkxti#lL=mJR>)~Hs;M6x8RN;r(-tcg}Bb!aNe+;5HW@@ zid6_;?{Dy@ag;{72p{pKyO#w-;_&Zq>tA%^Y~Vh`(9!fzHY=B$VKtc~f`-kFVBbH0 z3g()C?fTV7`NOy2GK!o(q>vqdnuNOsvG~QfLf8pHZ2mkuenZHZ)V1Sa5P9Ikj%ZSh zDbq=_#Ov_|D>jx^(KQBxR&p2avbR+>!K!_#ctG%_FE^GKyn zQ8OcpoyyR|u<>y-J{4!iXXDNI3#S=hSu%xD@T(QzkISZ9np824r1%d*FJ)|n*?)hP z*&mcX<=4-CX5v#z5;i~SNK9IsbqfGAJjIi5AVm zo_wOr7jv{j7IWN&K#VISzVDs!I0U>#4i?Gr6<@D@AGvrtDz@kzUtvj$|EsY2WdTO7 Jpy<(I@()~8QIY@v diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index 5ad48dd12950efd6e5b122d991b23f62a4a5d48f..9bd552c8eb61b993ba84729afdcd7e5e478ee33b 100644 GIT binary patch delta 490 zcmbR9igC^>#tCvPW)|iK8vRP3U?ke%kTUE5-Jh9Ec)Q`b=5}WU63!(5d87Hqb=btRYBD7gecON64DbNWB z7i?BA(ts-$+ni*&3KA5X1+1aQ09l3*BdVCVHW%2RfVwKcPhxY3BL_tD<^-1=P-8$o z_w$xyoSZK&usPQADpWZ{_#Y%dHV62rAlcd%cnXPE6#9rC;_(C*@y+?E$xt~E?`=je Yl1gyMdFR7JPHb~QK5}&V7M*7T0BKW+4gdfE delta 490 zcmbR9igC^>#tCvPre?-w8vRP3U?ke%kTUE5-Jh9Ec)Q`b=5}WU63!(5d87Hqb=btRYBD7gecON64DbNWB z7i?BA(ts-$+ni*&3KA5X1+1aQ09l3*BdVCVHW%2RfVwKcPhxY3BL_tD<^-1=P-8$o z_w$xyoSZK&usPQADpWZ{_#Y%dHV62rAlcd%cnXPE6#9rC;_(C*@y+?E$xt~E?`=je Yl1gyMdFR7JPHb~QK5}&V7M*7T07{pL?*IS* diff --git a/lib/libpsystem.a b/lib/libpsystem.a index 83fa072b2e9d22e946634e1b8ce300b4a47a9312..662bc26ebafa7690e0dda89784d3224cc9a61f8d 100644 GIT binary patch delta 3980 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 diff --git a/lib/lists.ppu b/lib/lists.ppu index e80f07443a44c89ab7750cea24af98b8b73ad9a1..a83d8f82ac843af0e854fe7dc2c389132e841682 100644 GIT binary patch delta 19 bcmcbld`Wr2e2y-SSdlf`5>qxV*A@f-R0RkC delta 19 bcmcbld`Wr2d=AC)9>WPt}O@vS)&Mu diff --git a/lib/lmemorymanager.ppu b/lib/lmemorymanager.ppu index ec6bd60c4f313dba12ab3936dc3e464794ecca21..e440e2f27cb1e88d7ec3ae1404f14453f1e94d5d 100644 GIT binary patch delta 19 bcmcbva9v?S6GxXutjL;ei76Yq&hi5QQ>X}P delta 19 bcmcbva9v?S6Nln?kK@m*j2kv~o#h7rSw;x* diff --git a/lib/mouse.ppu b/lib/mouse.ppu index 9814917bf5ad109d2d63ecbe608954a4609b02c1..5e8b2a27cefcfad254e2b9faaece5d2d12ce716f 100644 GIT binary patch delta 19 bcmZ3dwoYxrbdLEm4=AtMmYA|}e!ma^S=b2+ delta 19 bcmZ3dwoYxrbdHUC7hZa1W!$iFe!ma^Ul9p? diff --git a/lib/netutils.ppu b/lib/netutils.ppu index e870f95ed0731a9f3069dde8d9ff90ce85ed96bd..f5257f6bd0974a1f34a638be0ae4f80bde2255a8 100644 GIT binary patch delta 19 bcmdldw@+?DC&&Dm2b9-rOHA1~aV;MJT2cua delta 19 bcmdldw@+?DC&$LU3okvhGH%#7aV;MJUyBKg diff --git a/lib/pmemorymanager.ppu b/lib/pmemorymanager.ppu index 8ef6b1dd9eb4177f31e663c0a2bdf9bfe9c12a26..b8c8666bc84d5cee0416989e4a86f240c7cccbf6 100644 GIT binary patch delta 19 acmeBF>{Oi4#L=Y@E3#%=V#>y@|NH<+HV6U$ delta 19 acmeBF>{Oi4#G!cJw<)Ch_I diff --git a/lib/storagemanagement.ppu b/lib/storagemanagement.ppu index 4741d7185083474f29256fab02e852910e10109a..e9237dfba5b0d3fb44b7f160c204daf1b20ba8e8 100644 GIT binary patch delta 19 bcmZp4YIK^=!7+d40p&H@5>qx#C{zFdRu2ff delta 19 bcmZp4YIK^=!Lf1g!b{Jrj2kviC{zFdTSy5l diff --git a/lib/strings.ppu b/lib/strings.ppu index ceeea445c53488935d5799e9be8d3a810396204b..8460b2a52dae7400d49d23bd80cae3b9ff4d6c9f 100644 GIT binary patch delta 19 bcmdm_wMlD22}hSktjL;ei76Xvwut}$PO%6E delta 19 bcmdm_wMlD235Vi&kK@m*j2kxAY!d+hR8I(w diff --git a/lib/terminal.ppu b/lib/terminal.ppu index 3861e0ebe6c744ceef441945a7a3b6b172d9b38c..08c21936a95ea91e22e3edcb5bebaa33610f5309 100644 GIT binary patch delta 231 zcmeAPx)UH95D;o;Y|7Hi$iU2SAV7)1M1z6hv29rSFX1Chxf5m0nS^go3`^mdKl6a{ znr(?G6A$@td^3tLT05n@e6kp08Kc$aUdC)7By%R;)zAk3W`X-KoylU1WsI*j_cC^K2s^McGcYiCf=M4R={q@)OK!3!*T=~h zSmY)@VB^CttbpZpPxt^96bs1vl#m@(M9JOtw;XW|Cu^{83SO z@+4(@M$gHYl${xaCX1;=1IZ#4HAbJwGgX`!(rW**>X_c_aa6KIdd*EoDxF3J{@j!Wv)*5&CueP z%NL$TjAyg71G#9fr>{4}nSgGR~b)rI(K|gM&aY|yBQUg=*qE~ZM4@@mU{Wd<0 z1?FQmKk`4-upP#YR74lPsU}#3grQjXxUeV!E3@m72(- zmEu&NPIdPTKGFGPsz2S`mr7t_ZDT*TM@0E^HEd^84h#(oYW9_ukl5~|@8r=_YNT-8 zmwMW~fw9+#GZjxUe-_t*NnaiR4V6WnXFiH%ql-)&HYUwi_+OeQdmp8-b6d&B=(pAW18i5j(6844S+}C$P2K|Z8Le|m0Ik9PP+s5dT70;)$xk7?VyOLkw%k{9-=sOrI z4(5hO3oi+3(VT9HDi*l-UC*O7ILLxWYMUN2MKWd0kDH6$s9Y$SlK4GG$eZz2I&hj?TgHK95h zz+xoflV%cbCpi!8%)77R5pM_R3adm3t3_s%G)W@|h5TRHAi^fuMH7ojGKXh=rYBpTJ0R+_k^f+OiUIkeum zBoenDh)a<11Bs{~CGLk1i6Dab;~v5}G~rvjduptm{qA?I=iT4__R6|ev455?8l4{= zGtRJ?gkE$;{o-p#h%*-t-g{L%X5(BT#D)&vFkR$AN5wJPb>{z4Jysg5IBiz&Z<-P7 z4S!;y-i?qklg6{lgj;Vzr^P}uvBc=0*{Vh{L8q9EIsH!= zO50Xy!z0!;sP5BAYvE7tq-}VSexI^&uJ0%E<3zttbO8tYf1s1-$oN19uxY?&dXJXO zE_#mf1H0$}^!961j$8J>s5`Mx$tAKTS_cgws!ANq+Cy{|6LU_{9em6=Ps4EB@tT0$ z&bmNQwm5VU>j?Qv+6c2R*5(Gp0tK!tCX-VVgsR|a4GZJGe z>yq8Xs;`_kgRRXdzd$113(XRiN2du=l5hoL9tW+$I@T8K_Jn8yE_%GQ8BbZ;@WbPx z?QnTrv=b55y{Pg!BL{m+dSuDk`W8WctMjVXo@FY%qy_CRRuZPa#BkLt( z_=41heBW@off`@9^)45XdqDQFtcFRIbEXIyk?i;((;Sr+u$mg1>f-T6K_ip=3G+WB zSBfN$*Dq^qUM(nWRNLdF7aY*>^@g9uSd0Us)Oazgv8lN_t7e6uyx#abE&f%HIsOF> zdEDCMMrz|9>2($%`llho>cnGzx@{M)?UCzz{yzIF6hGU2DeoL&f82}{fl@`DiL)u_ z9Q(^XNdCn26m*;YL-UScsWP0&vlQ}@{aZ7-gQfP7jJ~9xZ|wE>9xS8LcpY#+7b>JY zlm#7F5Gr)Z{Vn9)lcR+FRBi5*XVIR|s3IjXm;EB_&n-fGz(j?Jgd8}Wo2Sl-v0a@_ v&yVn1=9-53riQw>pn{&gbn_zFOIWSJ`SWJXiq+QFHuDydc5d1c931)y)W+)3 diff --git a/lib/vmemorymanager.ppu b/lib/vmemorymanager.ppu index 400d3c9c514cd8ac12b6f16bd28ea4e7387f8696..17d3900bf6bed754f368057400c0cd2af4247a1d 100644 GIT binary patch delta 19 acmcbqe^Y-#6GxXutjL;ei76Yq{KWxO`Un;P delta 19 bcmcbqe^Y-#6Nln?kK@m*j2kv~`HKSpT9^o) diff --git a/src/driver/timers/RTC.pas b/src/driver/timers/RTC.pas index ece4b65a..3c53aef3 100644 --- a/src/driver/timers/RTC.pas +++ b/src/driver/timers/RTC.pas @@ -37,9 +37,9 @@ end; procedure update(); begin - outb($70, $0C); // select register C - io_wait(); - inb($71); + //outb($70, $0C); // select register C + //io_wait(); + //inb($71); //console.writestringln('RTC Update'); //while not is_update_in_progress do begin //end; @@ -47,35 +47,35 @@ begin //end; outb($70, $00); io_wait(); - DateTime.Seconds:= inb($71); + DateTime.Seconds:= BCDToUint8(inb($71)); io_wait(); outb($70, $02); io_wait(); - DateTime.Minutes:= inb($71); + DateTime.Minutes:= BCDToUint8(inb($71)); io_wait(); outb($70, $04); io_wait(); - DateTime.Hours:= inb($71); + DateTime.Hours:= BCDToUint8(inb($71)); io_wait(); outb($70, $06); io_wait(); - DateTime.Weekday:= inb($71); + DateTime.Weekday:= BCDToUint8(inb($71)); io_wait(); outb($70, $07); io_wait(); - DateTime.Day:= inb($71); + DateTime.Day:= BCDToUint8(inb($71)); io_wait(); outb($70, $08); io_wait(); - DateTime.Month:= inb($71); + DateTime.Month:= BCDToUint8(inb($71)); io_wait(); outb($70, $09); io_wait(); - DateTime.Year:= inb($71); + DateTime.Year:= BCDToUint8(inb($71)); io_wait(); outb($70, $32); io_wait(); - DateTime.Century:= inb($71); + DateTime.Century:= BCDToUint8(inb($71)); io_wait(); end; @@ -92,7 +92,7 @@ begin io_wait(); //enable ints - outb($70, $8B); + {outb($70, $8B); io_wait(); prev:= inb($71); io_wait(); @@ -101,7 +101,7 @@ begin outb($71, prev OR $40); STI; outb($70, $00); - inb($71); + inb($71);} //isrmanager.registerISR(32 + 8, @update); TMR_0_ISR.hook(uint32(@update)); diff --git a/src/include/asuro.pas b/src/include/asuro.pas index cd6cee98..59125c67 100644 --- a/src/include/asuro.pas +++ b/src/include/asuro.pas @@ -3,11 +3,11 @@ unit asuro; interface const - VERSION = '1.0.0-575a'; + VERSION = '1.0.0-577a'; VERSION_MAJOR = '1'; VERSION_MINOR = '0'; VERSION_SUB = '0'; - REVISION = '575'; + REVISION = '577'; RELEASE = 'a'; implementation diff --git a/src/include/util.pas b/src/include/util.pas index 4456b33a..f879945e 100644 --- a/src/include/util.pas +++ b/src/include/util.pas @@ -45,6 +45,8 @@ procedure halt_and_dont_catch_fire(); procedure BSOD(fault : pchar; info : pchar); procedure psleep(t : uint16); +function BCDToUint8(bcd : uint8) : uint8; + var endptr : uint32; external name '__end'; stack : uint32; external name 'KERNEL_STACK'; @@ -296,6 +298,11 @@ begin getByte:= (i AND mask) SHR (8*index); end; +function BCDToUint8(bcd : uint8) : uint8; +begin + BCDToUint8:= ((bcd SHR 4) * 10) + (bcd AND $0F); +end; + procedure BSOD(fault : pchar; info : pchar); var trace : pchar; diff --git a/src/terminal.pas b/src/terminal.pas index 14afdd21..523f9672 100644 --- a/src/terminal.pas +++ b/src/terminal.pas @@ -252,22 +252,20 @@ end; procedure printTime(Params : PParamList); begin - writeStringWND('Seconds: ', TERMINAL_HWND); + writeIntWND(DateTime.Day, TERMINAL_HWND); + writeStringWND('/', TERMINAL_HWND); + writeIntWND(DateTime.Month, TERMINAL_HWND); + writeStringWND('/', TERMINAL_HWND); + writeIntWND(DateTime.Century, TERMINAL_HWND); + writeIntWND(DateTime.Year, TERMINAL_HWND); + writeStringWND(' ', TERMINAL_HWND); + writeIntWND(DateTime.Hours, TERMINAL_HWND); + writeStringWND(':', TERMINAL_HWND); + writeIntWND(DateTime.Minutes, TERMINAL_HWND); + writeStringWND(':', TERMINAL_HWND); writeIntlnWND(DateTime.Seconds, TERMINAL_HWND); - writeStringWND('Minutes: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Minutes, TERMINAL_HWND); - writeStringWND('Hours: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Hours, TERMINAL_HWND); - writeStringWND('Weekday: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Weekday, TERMINAL_HWND); - writeStringWND('Day: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Day, TERMINAL_HWND); - writeStringWND('Month: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Month, TERMINAL_HWND); - writeStringWND('Year: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Year, TERMINAL_HWND); - writeStringWND('Century: ', TERMINAL_HWND); - writeIntlnWND(DateTime.Century, TERMINAL_HWND); + //writeStringWND('Weekday: ', TERMINAL_HWND); + //writeIntlnWND(DateTime.Weekday, TERMINAL_HWND); end; procedure registerCommand(command : pchar; method : TCommandMethod; description : pchar);