From a12957e06974e0ee39cafb07dbcd7656f172c7ad Mon Sep 17 00:00:00 2001 From: kieron Date: Sun, 29 Apr 2018 18:04:40 +0000 Subject: [PATCH] git-svn-id: https://spexeah.com:8443/svn/Asuro@598 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/asuro.ppu | Bin 1130 -> 1130 bytes lib/kernel.ppu | Bin 4932 -> 4932 bytes lib/libpconsole.a | Bin 212114 -> 212114 bytes lib/libpmultiboot.a | Bin 29980 -> 29980 bytes lib/libpsystem.a | Bin 184436 -> 184436 bytes lib/serial.ppu | Bin 3092 -> 3052 bytes lib/strings.ppu | Bin 5426 -> 5426 bytes lib/terminal.ppu | Bin 10788 -> 10788 bytes run.sh | 4 ++-- src/driver/interface/serial.pas | 14 ++++++++------ src/include/asuro.pas | 4 ++-- src/include/strings.pas | 2 +- src/kernel.pas | 2 +- src/terminal.pas | 20 ++++++++++---------- 17 files changed, 24 insertions(+), 22 deletions(-) diff --git a/Asuro.iso b/Asuro.iso index b0aca9975c3735cb2c8271f988f910de50fe7e20..96ee98471edb09aa64f221753fc1d945aceb9768 100644 GIT binary patch delta 19260 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
S!07A-T4%uYIR{*9jq5C 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 delta 9374 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 delta 9374 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 delta 13 UcmX@2c0_GL0Fyk^#-L9^03*W$-v9sr diff --git a/lib/libpconsole.a b/lib/libpconsole.a index da57e37d7b18e61fd6eb81d6f2d2f44fb1dab4be..8b16abd31f7e9bc1f83f55392878f769cd0c5cb5 100644 GIT binary patch delta 2760 zcmZ`*e@vBC7~Xq;E8@L`id`BCS0Zx+bip7sLUTlfaG{tkVHMzP)lkvNhE5$iM`}sH znH+05en^_Ac;zH7q0!YgCrLzZ(I%yg8M&}_v23E$I^XwQ?m1tp|IYLNc%Jv1^SL;xA6V}?Oz{ROasb^w>?fQZ)k9?SC*zX1Ch%b*EB>IXKyNI19MeQ>j2K;XRTPj@h z*bW2gB;JMnfqqKr9E#_GiQN{zg$-mw4v$UQ;A5z|NFsRq;>9!k5gi$Kg8YDbb6vbJ zd%G%-`;|nrX*`EJUfwJ%{N$>BiL`uLm>tT!YkZ1&k(IArlQF!kBvmT%^KZmS)KNBS z?8ewRY+A46?cH)!Zk2D@TB;!LjzJ}Ic-MW2Sk_r^(Zt<0o>zUuFdOW){U4a&4B&k= zHR?@N)HN$1w4!b$8wdgqPitr}!u0LkK6F&d@sl65D>*!&RnS&7*Q>M%t%qd-y?rQ$ zJ3lE@lBjL}O71=3l0o`CQcsS^lZjxNQ@hr2II zMuDtAtD3FU(G^H1&n>0xvn=d1BNiUzDOR|=xq_>%kGsF@kXF9^(k00yu3d}q@HemY zC^5_XSNLvIw4I$FzPdHo-)Y=AG%DMaJ4e*gtfOtpY4D1==Yi&p1<`pSA@rH!aXfGA zQ7J=*ce!Y~D}>+twMCZ1o5p(-RC!nFKvo+GF5W%SB?AOW5&!wGMrpw&0HyO;TMtQR z?o}idMF&(XaplwhC$7mh6~{ckfE}Nk36B_g2CfK)d6GvvL%e5)ozjG&PK#`EbVoy~ zgq^V}!u*A>S~}4a4~cTFFgO`@ORqi>cqbLyirD$35Tk_Te{D<+7A%7+O4#H&$OPP( z0cG+EP#CR%VOgNG8;Yl=TS+Yb3|0d@Z3(93p-*5!KIAF{Sr=d~pt}H+{=vPgVMHNF zs}Rb9z=8us@V1gH974VLb!d}DZ3M8q6qKh*tFpt)X9XtGma_K`f`vVM0A{oG+rY_g z^gtB5kpTsrFG4u5AIhM`-?*rkf!8-cxm3g9?b@ldZ-y<3QABnsdg44X!H}A4gE=Uq z)+o_}LOCw2{?1*d^55G7)y4%eZJsb;A6$?Fg~9c(V4A5+-|n#HLsPB!pKBM9H#Ut$ zw2)}JY?h6sAB0%32xg8M5XPd;WA%*Pt(X(R^S^GTIY zQ8OcpoyyR|u=#N_J`rceXA{i$3#S?PE}Ft9_|*#V$0buPO{x?})BJ~_momQ0?7zRl z><`ME^6O_mGwG>Ci5s7EB&8&$IFq%XLE}pDT)rzo@$0wE*EV9=2)Ltw49N*(qD6DC zXBAQAi#g6f4s+asK#VISzVDs!I0U>#4iwAr6<@EbK63GPRBqBezQR(H|EsXZB>_gS Jpy<&N@(-qoQZ4`h delta 2760 zcmZ`*e@vBC7~Xq;E8@L`id`BCS0ZyHbj2VsLUTlfaG{tkaTVZf)liYi22LD0M`}sH znH+05en^_Ac;zH7q0!Ygr)flP(I%yg8M&Z#v23E$I^XwQ?m1tp|IYLNc%Jv1^S2|X6Sh4p7aHjho(L|Q&A$O`4&wLV3?$ck65%NSl#lq?nbxi{h@>MR*C zc4O=uwro`L_H4Z-x5~Fx7AweGHK0Te?Yu7$%RB=vny|~pb88M8W`o_f?*lWO0sLxh zt$GvX^({&WEw5k2`h&p3QyUwNFnxPt2aiZOe&VAJC5Oki3EJwG29-9x?T}2MV+XUj z^OFK4iQ4w9;@;yf8KmDM_0)T4#Jg5r>TXr!ox^j1XMTD_nzU=8p609E(XCkdP|pR) zD3BFsb&Hicx&!It*=4k2mW7>S#KNOIg$kE9M{w0&RBM`W9F=dfCub);Q64PIXVJkZ?HAUZE3gg$dDj^~a( zDrM-P$ zdo>9~(E&9|TV8`cX!XrkWfy={Tp5)Qa5bxPxhcuz6(;}N3-O-RN zVOOk*FmEBOkxuk1f&@8N7@P>Zq*osayps%WMeN)%h*3iFzBZ-?^OwUFC2Vp7WB~3+ zhZ1=OD2!IXuuM?e4aL*bqa+r725W$xvINu8&?hiH4{{WO%=0i8(47xT|KOfAFsu-y zmJ4M;V8Q-%@V1gH974VDb!eAHZ3M8i7?h_G=eGHeBJvxp7kxit3 z4$^kmke!6hYSd{6l~E`j=)V=OXcXl!M^Ww##Va~R8D-5Y8t0XZa6uj=6IJBnJD1^< zk|+9kfudRWEtDy6?f|$HxcfTPDsa(Fs4<2~o7@QOy9Hy0oQ~O$7vj2Z!#TrtRKys< zC{`hWeZRq<#!(vSB7DS`?oJ7az~SHF*1zcPuz~v!O-D0A+3Y-WlGSCAa2hr*oPGZQ zDwt~mw&_T+QiPz%`R&rRyFFj<&>t>nphB;=uIl_!9Bd0J5J&SQ>tTdUdho@Q5G!ldE`J~#X zsF{()PG#s}*z&j;ACEKRGx28ph0}~LFPXw9_|*#V$CN3TCRL0hss6*zOBr8o_TOJ= z_6KE5`Sr7(x%jCi37emEEKW*Hawcj&gT|HQx_noH;@5ARuWiJ#39u@k49W>)qD8Z@ zcQsMwi#bk1HgnvDK#VIOzVDs!I0U>#_7}?W6<@DwK63GPRBX{bzQU3c|EsX3lmMew JQ1s|9`3E!pQ(^!B diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index a1f4e3fda946f0cedb5ef8f3f9af1742f532634a..c6665ba96a12b6289900e634cd2d6a9530d2e690 100644 GIT binary patch delta 490 zcmbR9igC^>#tCvP7G{QK8vRP3U?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*7T0Ba?Q5C8xG delta 490 zcmbR9igC^>#tCvPW|n3~8vRP3U?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*7T0H%(KP5=M^ diff --git a/lib/libpsystem.a b/lib/libpsystem.a index 3f538b4141f25c02a87ee51aaeecf5d303b337fd..cfce1c014ccae994eb168df830db0391118de153 100644 GIT binary patch delta 3980 zcmZu!eNdD|7@y~r02S~q6DdEsEQ?65(-O=aA}dSFycvtZZ$i#=5WSi-HOJIy#4@Aa za;K8I(yWNoT;)+wJU>W4M9MTXGMaH}YUrXFbsVy(XW!kudtZ+GYk$9e_P6_d?6dD( z4E4Sk>RmoKVRZJ0?5~Ebxy2foA#Xabz2$Nb3-OS*-Y{3)ktXMYokgsC671ns!#Y44 zoH6vM-ncf~yXa02{YH!$Im$OuC`*ZfIZ=rWHftbc@nBA)TxbS66}4)NqL^zb%rOt- z9XC7jQ+Qc!v)s(0`GLGoVhefs_;j$WLJxi?t%M%Ymz9yHx`?+=*b+l#`-CRbwJe1< zPij&t$Y!VCX7ZN5$qc`i%75_Jf;&gLWb>${AQyN?eya*WOTi5?TBg{`Kf@+u`e(?! zGG`tH_lP(pPk@y2=4d5PKr6Kr6r16abHX$8i=>`>`+|L7K3bA0^FXsaTvDxkYAG1U z_b)sfL+1X4SA~ac{gaT)n-#K28;)Xct);Hs*@o&dbbD5%eUIm4}@O>Tryb62x+cwMa59ryGpWH&>FWGDhf7|9* z_(iG`Oi$$*s}L`I+M>!zCNY6~DtF3ASpM)xRf4P+3Db5c$UW6wSI{6Qyew$WE?f@+c;|MX&c4Ue^eKDbZY~cf1a})E&azUUC;5{dD~jiKqm5+e^C_6 zJ8Jaj6D|Z)R4v%>n}*a&ip)@?i5Ir3nihSeh=(FuRaPum^|u|GRe#HiTYgD3A0F)V z0x!R!izV3EOJzpIFN=r&ZFHVHYj+F8sAA?yf<{pzcs2oakpw%7k$Am%_(KTbjlDqi zI3_S7+`!6TgH-nJT<~+>6A8d3e+;G9=EOB8(fz9Xf{ZP?++gd9#H*Ym-L+h+*36kH zZZ^mbUz#n`LacrOl(Ih8gG`378WM97DeMEn?cpCAXV`SFN&}= z6FyTB7nl*YVvM_P2ddz1UBPW$y@~J)Ye#5^;T*kZ$EfI@MCv_VJE0i8_rk|I%Y+%> zMsaB{?LNIm=vq$_dhWMnOL4vjH79QCILvz(+LR#q7r=EB;Un$Ta$^pAu@VNDz73o3 zk;fq-`+!xStj~0K3@iN5PX(0TS!|jDgA=Tl&V(2vu?DL?GNb}umG%*7Ds8I=Pm(tO9Yv$PGObq8!MGd`72`Ei5jN~dyQkoY6oV7t(te^ z^K0NBxJGr^-ntpMcdc_3;Rd9eqHZY$U)RSGLocwl3UFi1o6w+gLx-Ht{@Vz3)>B*2 zCm9>xhI-p1(quHlWQ?irIWQw!ha{`FBt_L3kcN88)GcsasZxjnY|`f{F6p1@*on3j zK$_UB3rfUkYL(MN!VT!#5#5f;Tva^MkP;$t`$V;_AN1AeEX~@hcM_z|5)J3E9f#m+ ztMHZ_)HX~^AWei+eH9+lLL2I|5fbSTYCEBXwjS3uQivwBQ28k>RQruKLLwbPu5(K0 z%=g+x3ekiX3jeHyB0p&(B+?<2_p1_0yr6BQ5KSnd>UPx((ffzCAudDKF@5vQ$5;M> z?J^DmGJ>Z?pw08{BrNTK8gR*vJKOaLUeT%_T-K^cq+RyXKMq-fmMosR3WwuM9@`QO z*|jmPhoNsAk#@;IvSB|dK`A-Dr$Lf&m)P&tk}LZ}C5g04p1#f@Nl;2w_Y;!xL(b-S zc#xKi42Vh+X_tKHCWjSMe0NloNQdaqF-}p!QZ(^iA=xb(+oY%{kq*&orZ`0j%edxVmxO;#5pj)6SI2ZMJa}4Em`E*LIFI7Gcy?4+ zU`AM;Hos7uHZECYq$+j8+^8s#N|fH*B0OJWsP6#*8A16uP`$u73asoIBSrq(5w@Mr zIBW?v$+zj$v&NBboT3*^y-ks&(fx_kt-*Tnd@Bvdi$_?#cx>HnV<>u77@Oi<6MvAg v^Ce@7Ah$52jbjg=VlpQ7Z>4in*4;O!Ii= zIkP@1iLc4HAUCsUemwK@*g{?~A{8vF(C{CnmCz&ljxzF;vJ7UPJ8&zexmL>5E zW2@8(vf1yqnQZb`nc;QG{Ad3OaHmU`Y#vo-X8^Cys!<`R&VE2f%M^S0r`m)}|5UkG z&uJ&Y-8W9j6CkC`nOeyc&`Q5 zEOkC``Kcy+GU+&U01scY>X73|9&^pA8VYM$zGU?=a6j2N7|hcV(#%NF82-&WYGsVN z@opT|Y(pIN$i_Ho#O63^7E=_@ETr(~e5}KtS!fS`?RFXdPAyvSZ+B4m^S9f=U%NdP zevzsK)3f`MRfyMjRjaa+Nlf6L-TP%EEPr^UC_&bXgek=ea!-j@*0TSAs!XDqsoJW} z&gJV5tCLfZbItXKYpgnc^~mX_@?c$qQtNiOIi4;B^W{?IfSkIc(xdL*XkJ&gyD@dI zJdR4LilaJz8%Op2K8||&qK)FISJlNGSW^M!Usr5LOTBux@i|_-W?L&7$Y}o7Z;E1> zXN(Sf)b)Uhss$^4*N}Qit{I9{@titU)1r^$@=#=_%8CVxZrY()bW>j3g4?S3@L+=% zc)?v=EWw7BDl;m6y?FTFO6R$I9jt~JmB(C(P$_BzFDHO5l3+s~60bK8e+mJ7uqCJ- z#{_1CD_FrgNM;|-0zdanOaL~18_a8y9@m^i_bX`&GPdY)gRLtPuX2ub*D|bHGp8lF zSr<2aWmZoPvGPtZkG1XyG8w|ETg*wMu-}R~i1Q!R5Q9BHmM(@K235O)RK+X2$iKgJV?6K}Pz5*X3hwplO@wE7qOXP+PS<7ZFICr)!XfUo-O1zW~(BWno6R(keQ9 zGzh1_HOOk%v1btJ+Nh*wECzK;1le4j!YbYOS16aVmdCaeHBJ-u8ppy_4$KH!HSfkH ztKlTL`ZwC%x*2%*9p@^-6-YNl-BJv`r;j6sUSPF_;KrjHp+e<`4mpSYw*|_qr?#+l zbFAD9<+e$r$!Lbj7?VG8U`DtMNmg%3imEdp4fU4EJK&sBr4R+!*e_LFQg`XtiMA9# zn%J%jO2lbWk<&xM73eFDZbxOVDjsP_2@$!SSfc9(eMfbcrXSWj2~uZ?hO=4mDfq@J zyu~NA4HFYc6CqV!IcK%dhB9r0L^_0O&nuyw=d_I!q6sZj@PigQ@trn8A{|1mD@y3n zPufNb(S#NX|Eh%|zi1;Q(jk<2LkTszu5F|cO(>y~I@Ju(`=_=cE=|@kee=x0xBrHH zG7bVVf)_=g&1>#NoL3J=!6iTLY}X@rSF3(uuv8lXilJQWos(jnSouv3(<6m2#{h&Jv_=z3O*W(V^RjB7@_MEq-lh-+NB>ZfSou9Ks}L~7xj*%a4BGor!* zGs5z;SvlggamgYhRjC_hMMa5JqV(qG;Yu6~W4F#3w`fP2mx6~_N@Q7q8_ diff --git a/lib/serial.ppu b/lib/serial.ppu index a457114c71c96a750fd339189f56ea16ad1bd438..0a12661725c315830a7b6e1746292dd02eca90e3 100644 GIT binary patch delta 451 zcmbOt@kU%WARyGx*p#K2k%5`vK!6g%5pD(s)1nu~st(8axF^aQGhN`A7_@@v7URS} z8zvuPe96no%FMvPzz!xkCck5n-u#w{n~~9S^H1i<%zVFqaxn0ZVe%|?6IOOc1_sW_ zm)V2F zkT9eE2B1+eqhr;C7>|El>U_;n|q#cqWP9Q^A!+;_YlTUCY>v==vLVz?E#D@$_ zze~V+fqaHIB)v(DlP9ofaF+pvDnP=FhLd|ZQ!EUnAnssf$c8E|0n!M=%D{#J!j1_b~B diff --git a/lib/terminal.ppu b/lib/terminal.ppu index 835dc11099a8ec36456474df372dd6348a3f474e..e5a5401b419e2030521edfe31f5de3c5a5268ad8 100644 GIT binary patch delta 26 icmZ1yvLs|e2-9nhiD5f9L>7Ou*({Ntxmk>nPZI!@!wLQX delta 26 icmZ1yvLs|e2$K-w#IPM4%`vGFm#)k`v{{UiPZI!)r3y0u diff --git a/run.sh b/run.sh index bb67c08e..e7caf8a6 100755 --- a/run.sh +++ b/run.sh @@ -8,11 +8,11 @@ echo " " echo "Running Asaro..." if [ "$1" = "-d" ] then - qemu-system-i386 -s -S -cdrom Asuro.iso& + qemu-system-i386 -serial pty -s -S -cdrom Asuro.iso& sleep 1 gdb -ex "target remote localhost:1234" else - qemu-system-i386 -monitor stdio -cdrom Asuro.iso + qemu-system-i386 -serial pty -monitor stdio -cdrom Asuro.iso fi if [ $? -ne 0 ] diff --git a/src/driver/interface/serial.pas b/src/driver/interface/serial.pas index 8d0942d1..4978e5cf 100644 --- a/src/driver/interface/serial.pas +++ b/src/driver/interface/serial.pas @@ -20,9 +20,9 @@ implementation uses console; -procedure hook(); +procedure IRQ_Hook(); begin - console.writestringln('SERIAL ISR FIRED!'); + end; procedure initPort(PORT : uint16); @@ -42,8 +42,6 @@ begin initPort(COM2); initPort(COM3); initPort(COM4); - isrmanager.registerISR(32 + 3, @Hook); - isrmanager.registerISR(32 + 4, @Hook); end; function serial_received(PORT : uint16) : uint32; @@ -63,7 +61,9 @@ var begin receive:= 0; _timeout:= timeout; - while (serial_received(PORT) = 0) do begin end; + while (serial_received(PORT) = 0) AND (_timeout > 0) do begin + dec(_timeout); + end; if _timeout <> 0 then begin receive:= inb(PORT); end; @@ -76,7 +76,9 @@ var begin send:= false; _timeout:= timeout; - while (is_transmit_empty(PORT) = 0) do begin end; + while (is_transmit_empty(PORT) = 0) and (_timeout > 0) do begin + dec(_timeout); + end; if _timeout <> 0 then begin outb(PORT, data); send:= true; diff --git a/src/include/asuro.pas b/src/include/asuro.pas index 5a4bc7db..97a8ec7b 100644 --- a/src/include/asuro.pas +++ b/src/include/asuro.pas @@ -3,11 +3,11 @@ unit asuro; interface const - VERSION = '1.0.0-594a'; + VERSION = '1.0.0-596a'; VERSION_MAJOR = '1'; VERSION_MINOR = '0'; VERSION_SUB = '0'; - REVISION = '594'; + REVISION = '596'; RELEASE = 'a'; implementation diff --git a/src/include/strings.pas b/src/include/strings.pas index 2e477913..322593d6 100644 --- a/src/include/strings.pas +++ b/src/include/strings.pas @@ -12,7 +12,7 @@ unit strings; interface uses - util, + util, lmemorymanager, lists; diff --git a/src/kernel.pas b/src/kernel.pas index 91727b7b..0e80bf69 100644 --- a/src/kernel.pas +++ b/src/kernel.pas @@ -154,7 +154,7 @@ begin { Console Init } console.init(); - serial.init(); + //serial.init(); { Call Tracer } tracer.init(); diff --git a/src/terminal.pas b/src/terminal.pas index 0cd47ec8..77fa1299 100644 --- a/src/terminal.pas +++ b/src/terminal.pas @@ -377,16 +377,16 @@ var begin success:= true; - success:= success AND Serial.Send(uint8('H'), COM1, 100000); - success:= success AND Serial.Send(uint8('E'), COM1, 100000); - success:= success AND Serial.Send(uint8('L'), COM1, 100000); - success:= success AND Serial.Send(uint8('L'), COM1, 100000); - success:= success AND Serial.Send(uint8('O'), COM1, 100000); - success:= success AND Serial.Send(uint8('W'), COM1, 100000); - success:= success AND Serial.Send(uint8('O'), COM1, 100000); - success:= success AND Serial.Send(uint8('R'), COM1, 100000); - success:= success AND Serial.Send(uint8('L'), COM1, 100000); - success:= success AND Serial.Send(uint8('D'), COM1, 100000); + success:= success AND Serial.Send(COM1, uint8('H'), 100000); + success:= success AND Serial.Send(COM1, uint8('E'), 100000); + success:= success AND Serial.Send(COM1, uint8('L'), 100000); + success:= success AND Serial.Send(COM1, uint8('L'), 100000); + success:= success AND Serial.Send(COM1, uint8('O'), 100000); + success:= success AND Serial.Send(COM1, uint8('W'), 100000); + success:= success AND Serial.Send(COM1, uint8('O'), 100000); + success:= success AND Serial.Send(COM1, uint8('R'), 100000); + success:= success AND Serial.Send(COM1, uint8('L'), 100000); + success:= success AND Serial.Send(COM1, uint8('D'), 100000); if success then begin console.writestringlnWND('Send Success!', TERMINAL_HWND); end else begin