From 76754d34df2897d9b697873becc3e07b9f64b244 Mon Sep 17 00:00:00 2001 From: kieron <kieron@6dbc8c32-bb84-406f-8558-d1cf31a0ab0c> Date: Sat, 14 Apr 2018 15:25:03 +0000 Subject: [PATCH] git-svn-id: https://spexeah.com:8443/svn/Asuro@524 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c --- Asuro.iso | Bin 5210112 -> 5210112 bytes bin/kernel.bin | Bin 155876 -> 155876 bytes iso/boot/asuro.bin | Bin 155876 -> 155876 bytes lib/RTC.ppu | Bin 0 -> 2046 bytes lib/kernel.ppu | Bin 6012 -> 6051 bytes lib/libpconsole.a | Bin 108386 -> 108386 bytes lib/libpmultiboot.a | Bin 29980 -> 29980 bytes lib/libpsystem.a | Bin 184436 -> 184436 bytes lib/terminal.ppu | Bin 9257 -> 9257 bytes src/driver/timers/RTC.pas | 108 ++++++++++++++++++++++++++++++++++++++ src/kernel.pas | 9 +++- src/stub/stub.asm | 6 +-- 12 files changed, 119 insertions(+), 4 deletions(-) create mode 100644 lib/RTC.ppu create mode 100644 src/driver/timers/RTC.pas diff --git a/Asuro.iso b/Asuro.iso index 6ff1c82429f854aa291465e32fc3006889191354..077a3923dec69a181b5a78a7d7381738222af1ae 100644 GIT binary patch delta 9142 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 delta 9147 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 diff --git a/bin/kernel.bin b/bin/kernel.bin index 5ac127e5eb4ed6705160d2ebbd50cab34f58e3c4..7eb6ab498f9237dc26ec52f60118200da50b570c 100755 GIT binary patch delta 22545 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 delta 21859 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 VgqC606zg4|&AC}QmU!#e{|C+szsLXp diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin index 5ac127e5eb4ed6705160d2ebbd50cab34f58e3c4..7eb6ab498f9237dc26ec52f60118200da50b570c 100755 GIT binary patch delta 22545 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 delta 21859 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 VgqC606zg4|&AC}QmU!#e{|C+szsLXp diff --git a/lib/RTC.ppu b/lib/RTC.ppu new file mode 100644 index 0000000000000000000000000000000000000000..beb95f5aad4a7742cc5177cfd27d43dae15f20f5 GIT binary patch literal 2046 zcmbtU&1+LZ5Z~G4<t6E7wDGH{A2o^+6-0Uw6x0?iSR0a*Qbj_v4~=b;HZKu+6Z{Jl zJqe;04}u2~Pbzv8@gP0)<WW3%mTHtZzj^Piv4R8~*xA|N{&seDXLhsMsl!J`!Z%5U z)SK+ETD6tBJ)L@Q*T1etl~S9zLBiaKLb<{zv8I4^1JgERhZak2W@zR7B#=<VU3Tlv z!ky~_hqiD1at~Dda<$@C=N(Hg^&NZBy9O*?c54fzO6iJIYhL^G^GPK(4mjMXm*=0p zdbslW=#d)$;@rrxuuWC7-HUM~HebH92&{yFAjF}wM%0R8qOnxbtmrP$Idrs<SV!_R z`NG)54z?*_!Lvmw%A*jQ;r}#9{q_|iCGPtycvhZf3?ur3Xf_4<w}bw6u-o^VXa|F> zlHy#84v97g;&s6`fr||R5dL%DfdKbz^M|DV0?r`T8t!Z#4sj4zATQa76-G;Sr%+yS z1m#moS`=333nc5c@ua05z|`O1S$_vR4J#F4ZRZ`XpIKK?JZAA2;`#GzkBRi#6Xi;y z?l7~<FcTh$?^CH^ZaRgv)|qOf#=LIB+vf8SqvsLFwx=CuZnm_nsK+pO`%ENoCpVo! zp@l}l>NTtbj6rZBZ(r1&HBqh9uPW*@yb+LCaI#(8bP5kEJmZvViuw)hID-&eh!<WD zTlOiZQg76F<Ah<J28~7D1NXW)&6+Z}fGoE_3NUP3M*C$3v!-vg^hF*N0Z^{XPXI;v z@fF9<jTdmff8`SEAi4=nl3|hzBQrDv6dwyeauVkQ0wY@gCowZgnL&br4~2gMOBQXB zDP*MWU*XwancX0>h*Z88#<vMR2z&r$Tg6f=A(IZndqCKPFDGg$nv&j@49;<bEOC<v zl6`E2%aw9n(Pr<iNV%Y}P!oqD1j8L-RrC`<k$DQV2KXAV49<CrTOfB~XwFr?yvG1u z-%DZ;L90dgdGY}WG>EMsI)<dBi+tmT*?9_aP|6_2M{wrLWAxEZD(M*$pMy<<ak*r+ zhNY77#i{J*iNYAyR56>IJe?cM=hNwvlapu1PMqsJz!~_?fd2y9`0^TkN2UIjiSNLs zy{6RT2+)hJ^FYLhU+lOq)Hx;lS;x}w=heudSMsDj@Wg(h;8i5cZn3dA%YP{Iii@@C nm73%7Z{=SasZ}Q7!=fbKM8xBom`QzP6hckxNO>8oQ`GteVjRhD literal 0 HcmV?d00001 diff --git a/lib/kernel.ppu b/lib/kernel.ppu index f989a41db80981560abb566b863e4d7b2657d526..c2f0f176594bd6c6456b7502a6d1cbefd9b00a48 100644 GIT binary patch delta 656 zcmZWm&1(}u6rY#Rja{-$n{8FvE^T9C8<QBdhxDRYiiZs$loY8#!zSG%Lp!_6W($5C zMD!qfusRSBJ@|Dg=s}_$#e)Z-LeYZ<|B6DvQxCogh6*0`H}m^=Gw;nFWMAbb%jM<# z*}1?SAb#?>JVkDf5_0d!Md{OS=2wXjQh79)3!WeUapmp1<(EF$zf@Uxe0l6!*!%sH z@B2Q$ba&f-I{-<ZmNZClEpR*(^kLo1;Wo`5Ncu<y2oMPf-h&^IUaG*q2S&QS$hHqI z@HYcD;3-eZMl^wu5UWwEVH3#nj;tvsPztjeGn%w6v@dcR65T!dg?~1N7K~4cW3f8| zxlj=I<d~4vX~f_<GpHr1UJpKmIesqILEMQIm6Pa(Y16V@bB&;u9HKDKw}w`uv*?5z z!!=l&pmczS&Ktv5qo@8gbiO-GVTBjstC1`kfW58o=W#8P6YQE`Uy+>_?7CokaZSl1 z3pbi|d&72xHlb?D8KKn<wW3PF;UCrax02|{34L*?v{<ZCi+b27^d<yy7uPXywwgke zJd-&s+g``Sz~97uTt&;E&LAH3OqWs1*r?WR#tdt%%1q?qndkczTUa5opr#R3^S_c> z+s4Pz`}q#$Cwln|;t_k(b2hz&mLW##XP#k3{0UGCh{`3`a9Xt9u9$6)T1|qJmPWIG E0HZCAp8x;= delta 555 zcmZ3i|3^<TARyGx*p#K2k%5`vK!6fMh&ThoVa98xG8nmi{TLV+f+s5KvzmHejGDVK zbP>~JcIJ(YN}G2wH?lCQPPXQdXH=W4&mzUf$^=xZfnaJ)p3UJcro+g<$iTtK05lqi z85zK;EG9o>5!)=pxsr*|e)1mfD#lrp&3O{}lz~dva+5Oi(()M?4JI$+k>^(d3bE%V z<tC<QCWFMT@MtqCZ{l6ZEG!9>VH8yYlC0UeiJ5sI+0z33j3$$#1*ZYYPl7)D>LA^j z>3R7@sVNLVF<+rfM$5_Dh2r=$fii3biA9OI#SB0pW#LRlugSf_(R|v-5?+(P0VN_P zCy2yx>H;Mgfo_PHd|X7HQxC+e0P)@fdHNt;C5R_3D$j2K<gurvC+Fwn7lFiFfntUr zu_T08v1le^{^Yx&TRc^PGCV5Yu0ejTKJl4(nI%AnGO_{%f#KEyq-8)XQ8ggRQIeWl zkddFC4OGDmRnY~cb-*e#Cf^d16S0IzOaMxNJjp1kHJL|T+QJJaF%2jo2bKWo<H|2B hDJU&*&PW6~6{cnmPz@+D7)326$BT;sU0N!x2LK%_aFGB2 diff --git a/lib/libpconsole.a b/lib/libpconsole.a index 417d4a1361960d4505ad5a797de17dac9a05c74e..cacf436a4b51a9a406279938fd9a0e53ef2510bf 100644 GIT binary patch delta 1624 zcmZvcT}TvB6vw&Sx|xkO=Aw&=4289Vxx0$)ZjtOmMCA$#3Dy=?D)nIKvLspfVDv#! z$iOW|mW&lfh$tv;F-H3^4}}|;?1MoR*kBT@1j=GzU>~y|Gked_+x-9Mch5QZo_l9$ z-m)}r;j1m~#wMr7^L$r1ll#O0ww!b@KeyyG39t($I_4`|HUn+DsIi%~@v3_uKE$yF zG%waJ&^%5|og%As6TnmE{8*{mLAEqZ(ms)0;|9$jGSYGvG-&rmX$afBe&RgXL3<?X z6M;T^=n2qD8-wuh1%~*J-T=v!wg)tbqdq^Dn`I&f#%T`AE<X{E`)QUioijiyK^f>+ zR}5$+sO~P>^MX!HLg(QkHmr8aVFnk@TQPr`#oXRX>?o)uvwiJgp|k%D$j*l2K(7xb zz}%FpLxuF*E?r-?&{_#rBf{SiL6N}NBaqbYJ&Z^Y2LY70zd=Jd)};<85~4j4oA?Oy zvq>}PE-?jjuwgaF<6*ES{xm^rtTNNn5E*}&M?%R8a`ROMy@brfszKQ`d5(_bHMt${ zdtXc%--c<Q$Z^=NGPeoh8wo4OYyWUWe<Xa$M#es^=trh%98pr__ToCy29RbV$~T<} zC2i#4*OaE!NBho%&m_0!coIrl^!j|NhkW@ysj)b%ldHNWe98>i-#_$NhTZxL>e5Z9 ztNsEl)tZoQ2ucy^K^}aqq(&IAqSw+k3!2q-l?h7T!aOdixZX@Q++LCoXPwScqjSz` zbowfc&R`{Ux=qfZd|M}LjBSl_d0ukvHnugfCm+t7zEE6`^y5#Dqtxwf7;tc$tGTf$ z``1nXE~OF&>ei1tXN)4@^8r*QEV|J#fw!SveENzNb30jK*o9VD*Z=YqwIDxzrKIqF z!~i4GihAp{3#3-U&i+>EL?60Em&d*`v-GDQ#U0w!$@K1V8)|0vI3VhKltx6fWcmlN C3h1Z+ delta 1624 zcmZvcT}TvB6vw&Sx|xkO=Aw&=4289Vxx0$HZjtOmMCA$#3Dy=?D)nIKvLspfVDv#! z$iOW|mW&lfh$tv;F-H3^4}}|;?1MoR*kBT@1j=GzU>~y|Gked_+x-9Mch5QZo_l9$ z-m)}r;j1lfPm|Z<e!i=m$$jDgTTVKdpIdU81lR==9rKkfn}N1n)Y#10c-1`+AL7^o znip#qXdWk~PLb8R3E(Mneyr5(AX^$HX`jfhaf4<M8FAkQ4cfg?8p3w3pEwV8&>o5U zM4-<edIGf4#vnX=fg!%5H$ZZw?EwwqsLzk(W|@eAahk)j%TL7Pewrmr=M2zFPzE~I z6$4rcs=JH!yr2`4(0RCs4Xd4Un8AhfR?J^!F}Jr8I|^#aY+pNA=<I(3va{hh(CdQ< zFgNAuP$50HOV^hzv{r)Ei12qrP$V$+2qd+84<i!9K>#K0Z_p5qb*Tf2glLb%CO!iF zY|;$6OH9EWY*@|lco?jSKTXgYtIYH?M8;p{kx;UN+<a9*FCjCrYEX7fo}=S<O>W2g z-WQX`w_(~RavZj+%x!}BM#2j6+CLo89|@nbk+DxJ`jM#`N0bz~y||9F0i>CT@=a$# zNgH|iHKl3w(Y`a`Gs*2ao`jMXy*{7nAz!{vYAjCc<f^U-pE3jX_YXamVYmK*x^xrj zs=q)>wI-w+f>MNfPz%0RQX`C5(Q9d&1<h)^$^<2EVIG%MTyG{DZZFA)vrcEJ(K%-| zI(-#JXRs1F-6rQyzO9or#<oVeJTEzS8{3-LlMiQ3Uns6e`thg7QR?wF3^+K>)!f*W z{p+TGmr{uXb?e8SGe(i{`2Z>t7Cq>gz}rwSK7GZCxt**q>_RK7>wkHQ+{jN~DJi@k zF~EqlqTYJ#0;!d-v%gh3(T8r)<*~2KEdA+6affzwGQGEW3^lWR91!(AN+Tj#GW`Pq Coa`b1 diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index 7d661d6e822bb21fb00112fea285db8a84c51008..8356ded6cb276eba8224a16d0c50d2eeb2d34312 100644 GIT binary patch delta 548 zcmbR9igC^>#tAZP=0?T_78V<od|08($qGhdo4Z(lF(dOAa2{Yn@WnUR^1MdjxAK2S z;)`uwz`31ivcD)NOpk!I#O5;5Ul?lmE%fsB6%0*{j3Mp-TMpJNF9+AGU<9;KQHybN zzWhf<n28WUX(U&QZ{Dh+iNqJ%{7d}^5?^BT9c=+Lz9!@3wdVYjWmtqZtLg4z<TC|2 z2jQB{3Px&38pJjynXZ5Z(`Er{xM4uHA;h36Ca%o|_Q&9^4DgfK9OB3ZGh}mu%QhH$ zGAK;^yd@bY=gSLhj`h3@*94LH0}HIp0e(twO`yo>3p|0sFA9CY4-1wA7xB&csfloT e5dUpPH=GaB4-Q}Ne5CLd+gy;38o|Cr=a~RuVU)oD delta 548 zcmbR9igC^>#tAZPX6DA0=4Km}d|08($qGhdo4Z(lF(dOAa2{Yn@WnUR^1MdjxAK2S z;)`uwz`31ivcD)NOpk!I#O5;5Ul?lmE%fsB6%0*{j3Mp-TMpJNF9+AGU<9;KQHybN zzWhf<n28WUX(U&QZ{Dh+iNqJ%{7d}^5?^BT9c=+Lz9!@3wdVYjWmtqZtLg4z<TC|2 z2jQB{3Px&38pJjynXZ5Z(`Er{xM4uHA;h36Ca%o|_Q&9^4DgfK9OB3ZGh}mu%QhH$ zGAK;^yd@bY=gSLhj`h3@*94LH0}HIp0e(twO`yo>3p|0sFA9CY4-1wA7xB&csfloT e5dUpPH=GaB4-Q}Ne5CLd+gy;38o|Cr=a~Sl-j(+N diff --git a/lib/libpsystem.a b/lib/libpsystem.a index 5525f9231914f702d532019f09ae7f1a95d28176..8a6cbf07d836b294599669a8fbbf24848e6dff0c 100644 GIT binary patch delta 4350 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 AYXATM delta 4350 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 BdyW7A diff --git a/lib/terminal.ppu b/lib/terminal.ppu index cc406b73df1d51559930a9e6a1e3781b6e68abdd..721fe605f6918dbaa8083175228fa2d7ed5ce75a 100644 GIT binary patch delta 13 UcmZ4KvC?Bg2or1E#<0uE03}uhDF6Tf delta 13 UcmZ4KvC?Bg2vb_@#<0uE04J9Pi2wiq diff --git a/src/driver/timers/RTC.pas b/src/driver/timers/RTC.pas new file mode 100644 index 00000000..bfb25987 --- /dev/null +++ b/src/driver/timers/RTC.pas @@ -0,0 +1,108 @@ +unit RTC; + +interface + +uses + console, isrmanager, util; + +type + TDateTime = record + Seconds : uint8; + Minutes : uint8; + Hours : uint8; + Weekday : uint8; + Day : uint8; + Month : uint8; + Year : uint8; + Century : uint8; + end; + +var + DateTime : TDateTime; + +procedure init; + +implementation + +function is_update_in_progress : boolean; +var + bin : uint8; + +begin + outb($70, $0A); + io_wait(); + bin:= inb($71); + is_update_in_progress:= (bin AND ($1 SHL 7)) <> 0; +end; + +procedure update(); +begin + outb($70, $0C); // select register C + io_wait(); + inb($71); + console.writestringln('RTC Update'); + while not is_update_in_progress do begin + end; + while is_update_in_progress do begin + end; + outb($70, $00); + io_wait(); + DateTime.Seconds:= inb($71); + io_wait(); + outb($70, $02); + io_wait(); + DateTime.Minutes:= inb($71); + io_wait(); + outb($70, $04); + io_wait(); + DateTime.Hours:= inb($71); + io_wait(); + outb($70, $06); + io_wait(); + DateTime.Weekday:= inb($71); + io_wait(); + outb($70, $07); + io_wait(); + DateTime.Day:= inb($71); + io_wait(); + outb($70, $08); + io_wait(); + DateTime.Month:= inb($71); + io_wait(); + outb($70, $09); + io_wait(); + DateTime.Year:= inb($71); + io_wait(); + outb($70, $32); + io_wait(); + DateTime.Century:= inb($71); + io_wait(); +end; + +procedure init; +var + prev : uint8; + +begin + CLI; + //setup RTC + outb($70, $8A); + io_wait(); + outb($71, $20); + io_wait(); + + //enable ints + outb($70, $8B); + io_wait(); + prev:= inb($71); + io_wait(); + outb($70, $8B); + io_wait(); + outb($71, prev OR $40); + STI; + outb($70, $00); + isrmanager.registerISR(32 + 8, @update); + //TMR_0_ISR.hook(uint32(@update)); +end; + +end. \ No newline at end of file diff --git a/src/kernel.pas b/src/kernel.pas index 09261fac..816688eb 100644 --- a/src/kernel.pas +++ b/src/kernel.pas @@ -43,7 +43,8 @@ uses fat32, isrmanager, faults, - fonts; + fonts, + RTC; procedure kmain(mbinfo: Pmultiboot_info_t; mbmagic: uint32); stdcall; @@ -230,6 +231,8 @@ begin storagemanagement.init(); tracer.pop_trace; + //RTC.init(); + { Hook Timer for Ticks } tracer.push_trace('kmain.TMR'); STI; @@ -274,6 +277,10 @@ begin console.writestringln('Press any key to boot in to Asuro Terminal...'); tracer.pop_trace; + writeint(DateTime.Hours); + writestring(':'); + writeintln(DateTime.Minutes); + tracer.push_trace('kmain.KEYHOOK'); keyboard.hook(@temphook); tracer.pop_trace; diff --git a/src/stub/stub.asm b/src/stub/stub.asm index 32e991aa..4c695127 100644 --- a/src/stub/stub.asm +++ b/src/stub/stub.asm @@ -36,8 +36,8 @@ MULTIBOOT_HEADER_CHECKSUM equ -(MULTIBOOT_HEADER_MAGIC + MULTIBOOT_HEA ; Kernel stack size ; KERNEL_STACKSIZE equ 0x4000 -KERNEL_VIRTUAL_BASE equ 0xC0000000 -KERNEL_PAGE_NUMBER equ (KERNEL_VIRTUAL_BASE >> 22) +KERNEL_VIRTUAL_BASE equ 0xC0000000 +KERNEL_PAGE_NUMBER equ (KERNEL_VIRTUAL_BASE >> 22) section .data align 0x1000 @@ -90,7 +90,7 @@ _loader: jmp ecx kstart: - mov dword [BootPageDirectory], 0 + mov dword [BootPageDirectory], 0 invlpg [0] mov esp, KERNEL_STACK+KERNEL_STACKSIZE ;Create kernel stack push eax ;Multiboot magic number