From 4b1596675c8671d0dae2641686b919ee936745c2 Mon Sep 17 00:00:00 2001 From: kieron Date: Wed, 11 Apr 2018 15:16:01 +0000 Subject: [PATCH] git-svn-id: https://spexeah.com:8443/svn/Asuro@493 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c --- Asuro.iso | Bin 5124096 -> 5124096 bytes bin/kernel.bin | Bin 69860 -> 69860 bytes iso/boot/asuro.bin | Bin 69860 -> 69860 bytes lib/libpconsole.a | Bin 102784 -> 102784 bytes lib/libpmultiboot.a | Bin 29056 -> 29056 bytes lib/libpsystem.a | Bin 184408 -> 184408 bytes lib/util.ppu | Bin 9339 -> 9295 bytes src/include/util.pas | 34 ++++++++++++++++++++++------------ 8 files changed, 22 insertions(+), 12 deletions(-) diff --git a/Asuro.iso b/Asuro.iso index 3544c29a06f883ce6abb5f3b3662c00ffb08a4ca..495096aae0f696ec0deb00c13d5c4724e8629bbc 100644 GIT binary patch delta 11262 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 P{uYtH=n^g~MqBc4T|jHO delta 11498 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 diff --git a/bin/kernel.bin b/bin/kernel.bin index 3225887c5006ffea9496cdec54b607334c37d068..86672054a4ffa772dbd7742177a27365ceccb6ef 100755 GIT binary patch delta 1549 zcmZWpeN0nV6n_s(?NFdFghGgW%SuCF8r@8o44C0VF=5&T32wk5+bnD{SO{NR#z2e1 zM^lE}@|g(~T;@!+5If}wW_wEsAL=p^{GRhyaP}>()cWpr}Q}Y$Zr0?&7WkgE= zCfx~^=%D53*ny5%bhv0CI##*4Xk}t35GN9W4rRe|jg`-X>_`^;6` zZV+hk@t&35TFeFF6cDBNF=Y%>T=WNYe29+o9*qT9jE|J%-^~X|_2{1g2d!~4W{TFD zDzpmYs0!Qq=SL2y!}wV8pfx_q0twP-%xe7$bkCqwjQQ(GBGHBCgGzBTWDdKIsb#}O z6*tJ!AyP#yZM^*lW9I~eByjXPNwGW^p7p1X%QbkpvGjBDv89<;kxgy!QKMLE3M-TY zRl+UJoPb)hV(e&@2IUx|^|ag%;be3UfM{{z_hKk9zvn zF}zvvCsVpsLF0NDYmh7a#c1ukV(0JGKhl+MQq{gSVh1W@Kd$fw83Bc&RRwdla#iBh zQ~#B4&}#CqU8~GOg&87ryd2XDRm=ypLFTj|I_u(PL}OX&O30T04^KPIbX6 zV`S#?u3k zVTTzp-cdnsBD|_-mx@vAawpv2XAI^DZw7{P?<2-w(EP+P%5Nt7J2%JFAg>8|hyTSB z;lY9DZX{f8H0k00Fp4;0h2U zyApH2#Dm>8x+VnF`#KcJtRdQ0Kf$i=-FfJ|0#vHhdKlq-y|l z4^eh+-{4%^Zy>4NdlI=Oh`TWUgbnE210VhD7|cO|!&Lc;srJVIDh!M++w9$?%DM(j zXaS%hGThUrbpY#^0Lo_pl3~1P@hyO~R)8RU(6=c-7z_t}sSh9y{yu1BJ%9`y&?|V` zzugCTMFP0m4v_F3z)}mq%vS)KG5{Oa=&22XGh5b<@X5D~k;0H?_!r1cYkbsc3|zvq z^)JBJi(6VV0(no8xPD!D$z9*qd*h_{>)lAlZHE4)z;lDs`^YTIQwRdbwWaV;Noj>8 zB|>&Z;hRSi!NqZTTecOTAw2fW10TPI<1m<0dZe_hx^(OL8or13%W@5A{P?-RlYOoZ IUd_+`4gK{tk^lez delta 1787 zcmZWpeQZ-z6n}4YrNIGZ>KJ3+4o{yhplrqed*O z1NLl6fIGG^BG7@K;VX23$0Yiak^vGUh9y?ykHw*09D~A`EI7HI({>AL|M*S7ld#n72M&!C+`(z@-LCP!dLhe zy9%f?gUTIlWpW|+Jgs-ofI6J zz|q@eY10cCtNt3%#{5ZbE=w( zYH?eW@e}B0kMZl|^g z(^$cL&;YDK_gJ)Xup=7&kg-F!txofH*u7>n(KSaI>qe^5zKB80Mz~Szs`gJ2n`$&6h zj&BH*n&BSE_rbx0?!nS=KHp^GMyR8TQ^nzlLR4Ki6t@MI5341HBpp&qva3~SV{Lxm zNetfd2Q2h6Re)M506lyIy6^!wv|Mf?7wt4bu|&mZF0d)=B0e+xEmwc_-!!P@!)j#n zd~J}d-aBP($Dmna~Mb_o;EDp-)GfJLg-+Z`(7MzoB{`o60`#N$nm|COA?Z# zz(4e?XKYuh24Q?-bl#UE3ocMTd@&O2uwn0opkLx`Jf1J^xtu z=z1!7r>!V221>05{ZqmqkBz!JyWk#_M+2T~flWRCt8l1eFnpy=Hu~IuLi}a`I$ei3 z9q|E-y$ev^3s4N#i*EcKpmaCDG(1o*1+c*7pl=-n$iu&Zt(yUK*a7_+r~TUifK3Cq z)(lXz0U%`;K>sm-Tm>MEHI8kX1U)y5ws7DZ#)xgw41N(A49(1HLdOy8?c^x>0F+_F}{U2^S%E7Uy_vv diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin index 3225887c5006ffea9496cdec54b607334c37d068..86672054a4ffa772dbd7742177a27365ceccb6ef 100755 GIT binary patch delta 1549 zcmZWpeN0nV6n_s(?NFdFghGgW%SuCF8r@8o44C0VF=5&T32wk5+bnD{SO{NR#z2e1 zM^lE}@|g(~T;@!+5If}wW_wEsAL=p^{GRhyaP}>()cWpr}Q}Y$Zr0?&7WkgE= zCfx~^=%D53*ny5%bhv0CI##*4Xk}t35GN9W4rRe|jg`-X>_`^;6` zZV+hk@t&35TFeFF6cDBNF=Y%>T=WNYe29+o9*qT9jE|J%-^~X|_2{1g2d!~4W{TFD zDzpmYs0!Qq=SL2y!}wV8pfx_q0twP-%xe7$bkCqwjQQ(GBGHBCgGzBTWDdKIsb#}O z6*tJ!AyP#yZM^*lW9I~eByjXPNwGW^p7p1X%QbkpvGjBDv89<;kxgy!QKMLE3M-TY zRl+UJoPb)hV(e&@2IUx|^|ag%;be3UfM{{z_hKk9zvn zF}zvvCsVpsLF0NDYmh7a#c1ukV(0JGKhl+MQq{gSVh1W@Kd$fw83Bc&RRwdla#iBh zQ~#B4&}#CqU8~GOg&87ryd2XDRm=ypLFTj|I_u(PL}OX&O30T04^KPIbX6 zV`S#?u3k zVTTzp-cdnsBD|_-mx@vAawpv2XAI^DZw7{P?<2-w(EP+P%5Nt7J2%JFAg>8|hyTSB z;lY9DZX{f8H0k00Fp4;0h2U zyApH2#Dm>8x+VnF`#KcJtRdQ0Kf$i=-FfJ|0#vHhdKlq-y|l z4^eh+-{4%^Zy>4NdlI=Oh`TWUgbnE210VhD7|cO|!&Lc;srJVIDh!M++w9$?%DM(j zXaS%hGThUrbpY#^0Lo_pl3~1P@hyO~R)8RU(6=c-7z_t}sSh9y{yu1BJ%9`y&?|V` zzugCTMFP0m4v_F3z)}mq%vS)KG5{Oa=&22XGh5b<@X5D~k;0H?_!r1cYkbsc3|zvq z^)JBJi(6VV0(no8xPD!D$z9*qd*h_{>)lAlZHE4)z;lDs`^YTIQwRdbwWaV;Noj>8 zB|>&Z;hRSi!NqZTTecOTAw2fW10TPI<1m<0dZe_hx^(OL8or13%W@5A{P?-RlYOoZ IUd_+`4gK{tk^lez delta 1787 zcmZWpeQZ-z6n}4YrNIGZ>KJ3+4o{yhplrqed*O z1NLl6fIGG^BG7@K;VX23$0Yiak^vGUh9y?ykHw*09D~A`EI7HI({>AL|M*S7ld#n72M&!C+`(z@-LCP!dLhe zy9%f?gUTIlWpW|+Jgs-ofI6J zz|q@eY10cCtNt3%#{5ZbE=w( zYH?eW@e}B0kMZl|^g z(^$cL&;YDK_gJ)Xup=7&kg-F!txofH*u7>n(KSaI>qe^5zKB80Mz~Szs`gJ2n`$&6h zj&BH*n&BSE_rbx0?!nS=KHp^GMyR8TQ^nzlLR4Ki6t@MI5341HBpp&qva3~SV{Lxm zNetfd2Q2h6Re)M506lyIy6^!wv|Mf?7wt4bu|&mZF0d)=B0e+xEmwc_-!!P@!)j#n zd~J}d-aBP($Dmna~Mb_o;EDp-)GfJLg-+Z`(7MzoB{`o60`#N$nm|COA?Z# zz(4e?XKYuh24Q?-bl#UE3ocMTd@&O2uwn0opkLx`Jf1J^xtu z=z1!7r>!V221>05{ZqmqkBz!JyWk#_M+2T~flWRCt8l1eFnpy=Hu~IuLi}a`I$ei3 z9q|E-y$ev^3s4N#i*EcKpmaCDG(1o*1+c*7pl=-n$iu&Zt(yUK*a7_+r~TUifK3Cq z)(lXz0U%`;K>sm-Tm>MEHI8kX1U)y5ws7DZ#)xgw41N(A49(1HLdOy8?c^x>0F+_F}{U2^S%E7Uy_vv diff --git a/lib/libpconsole.a b/lib/libpconsole.a index 3c604337cee128325acbf33f3227e4fdd0230603..43b7dfd3b594eb3cb48d259f5b43bfb0c7a0dbee 100644 GIT binary patch delta 1395 zcmZXUe@IhN6vw$sm%15h@g@cSD$rEs+FT=0v;GK_mncX^tR^ZHRw&UQk`k5>xwFpzz1{9ezi*(Am2uB=V9jgy3CxYAqQuT<2j074_ zd$^ri21F{ITBL*5jF5H4jTEt1oT;lv*&X5>qHv3{R&CP^&j4fdyvFccLqoqcUx4%Rrxs(d$ugoKR`PB=&)!^^CmBtTV*^{xCle#@x+mr=2`^V4%mVq%; zA$kvW7y|C!T%+L@wY#a1e*Zd;g5*Uz^fj7^2v3Jmh+6U+;NwUDrT9mY4t-;9k=7c- zTGa&COi=i^0y#UU^Z3b?OLi7EXYU~09a=_oV?oc|;C=B2X%nvmq^-ZX#3&bQ{P;ks{wN)NhpONxs>Fko~@AWu#tiEFrhqGz2+vlr*rx3$k*P_aW@Dl8n;i=maXc nYUFh%8AQwXwUW*f=1}&v$i}H|{E5!z@epIuV3KD&H1a$Oqrin#hJ@Xsa;k|G^iD}e5FT%qk_mFPQ z*+x`#^d};*U>MPE5vB>tDA%Y|EyAR&0YxS(BAv7?!7=-gj@5_NlR@qQsd_|1Mgomz zJlsyL{UVi4FVTVPMo2&FMv7P<)1jQK&^(tF~#HXMnMJL1TEXAtRxWYK*Yz z2%;3p`5KwJ+g~D*oJxfYR~L}Icy=t@qUAb6f@P%`s@o1$l-j_!N;uPAo0$Zl7rr7#iU+tEF^c>Gz59;IB8&m7i8roA3)e+BWXp6(Fs&? n*2o(UGJuxvYbBk9%%SXSiH%d;_*0$N;~~a`!7R^s$UEIXfiVKk diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index 9812dbb071dc8e126bff614c9c538ed9dbd9b166..65475f96f6058d4feb18bf06f65fc5475bf1c303 100644 GIT binary patch delta 510 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 diff --git a/lib/util.ppu b/lib/util.ppu index 99159254b13d165af3a14119065135843792c64e..06790fd28a0fdba094ea93748f3484b774841a89 100644 GIT binary patch delta 272 zcmezEao$5QARyGx*p#K2k%5`vK!6g1x(WlsqNj5s%Ug`j`7tmslucCBW@1&F=(mbZ znS+6WQE>7?W|7T8jHlTq%X0`%&SvJGoWRVz*@$DMIIkExPy-Z5O@1M7%&H6&QJt)y z5Fx0IB&QE#TTH&IU@xiwRPBf);|gT^0cD&8!;wUzf$WsYhKkOU&nQStHc_%*)S4`- zC=F)mOfFOm7S#iqvmQyuW*~ddOBq0# diff --git a/src/include/util.pas b/src/include/util.pas index 0f04146d..e0a365a6 100644 --- a/src/include/util.pas +++ b/src/include/util.pas @@ -265,6 +265,8 @@ end; procedure BSOD(fault : pchar; info : pchar); var trace : pchar; + i : uint32; + z : uint32; begin if not BSOD_ENABLE then exit; @@ -291,25 +293,33 @@ begin console.writestringln(' '); console.writestringln(' Asuro encountered an error and your computer is now a teapot.'); console.writestringln(' '); - console.writestringln(' Your data is almost certainly safe. Probably.'); - console.writestringln(' '); - console.writestringln(' The fault could have been caused by one or more of the following: '); - console.writestringln(' - The fluxonium controller malfunctioning.'); - console.writestringln(' - A devlopers inability to handle faults correctly.'); - console.writestringln(' - Spilt coffee.'); - console.writestringln(' - Monkeys inside the PC Case.'); - console.writestringln(' - Something you did.'); + console.writestringln(' Your data is almost certainly safe.'); console.writestringln(' '); console.writestringln(' Details of the fault (for those boring enough to read) are as follows: '); console.writestringln(' '); - console.writestring(' Fault ID: '); + console.writestring(' Fault ID: '); console.writestringln(fault); console.writestring(' Fault Info: '); console.writestringln(info); - console.writestring(' Faulting Module: '); - trace:= tracer.get_last_trace; - if trace <> nil then console.writestringln(tracer.get_last_trace) else console.writestringln('Unknown'); console.writestringln(' '); + console.writestring(' Call Stack: '); + trace:= tracer.get_last_trace; + if trace <> nil then begin + console.writestring('[-0] '); + console.writestringln(trace); + for i:=1 to 6 do begin + trace:= tracer.get_trace_N(i); + if trace <> nil then begin + console.writestring(' ['); + console.writestring('-'); + console.writeint(i); + console.writestring('] '); + console.writestringln(trace); + end; + end; + end else begin + console.writestringln('Unknown.') + end; halt_and_catch_fire(); end;