diff --git a/src/0000Boot/0000Kernel.BIN.C b/src/0000Boot/0000Kernel.BIN.C index 379617ad..a7fb2499 100755 Binary files a/src/0000Boot/0000Kernel.BIN.C and b/src/0000Boot/0000Kernel.BIN.C differ diff --git a/src/Compiler/Compiler.BIN b/src/Compiler/Compiler.BIN index 62102d7e..8c14510f 100755 Binary files a/src/Compiler/Compiler.BIN and b/src/Compiler/Compiler.BIN differ diff --git a/src/Kernel.BIN.C b/src/Kernel.BIN.C index befb0ece..a526cb8d 100755 Binary files a/src/Kernel.BIN.C and b/src/Kernel.BIN.C differ diff --git a/src/Kernel/KMain.CC b/src/Kernel/KMain.CC index 837a7f71..abf94adb 100755 --- a/src/Kernel/KMain.CC +++ b/src/Kernel/KMain.CC @@ -130,8 +130,15 @@ U0 TimersInit() } } -U0 Reboot() +U0 Reboot(Bool format_ramdisks=FALSE) {//Hardware reset. + if (format_ramdisks) + { + if (DriveIsWritable('A')) + Format('A',,FALSE,FSt_REDSEA); + if (DriveIsWritable('B')) + Format('B',,FALSE,FSt_REDSEA); + } CLI if (mp_count>1) MPHalt; diff --git a/src/Kernel/Kernel.MAP b/src/Kernel/Kernel.MAP index c1863af5..9d5be988 100755 --- a/src/Kernel/Kernel.MAP +++ b/src/Kernel/Kernel.MAP @@ -1380,7 +1380,7 @@ $LK,"BDF_READ_ONLY",A="FL:::/Kernel/KernelA.HH,2613"$ $LK,"ISOT_BOOT_RECORD",A="FL:::/Kernel/KernelA.HH,2464"$ $LK,"DCF_JUST_MIRROR",A="FL:::/Kernel/KernelA.HH,3578"$ $LK,"FSt_UNKNOWN",A="FL:::/Kernel/KernelA.HH,2665"$ -$LK,"KMain",A="FL:::/Kernel/KMain.CC,146",BI=294$ +$LK,"KMain",A="FL:::/Kernel/KMain.CC,153",BI=294$ $LK,"sys_cache_line_width",A="FL:::/Kernel/KernelB.HH,277"$ $LK,"XchgI64",A="FL:::/Kernel/KernelB.HH,268"$ $LK,"SC_CURSOR_DOWN",A="FL:::/Kernel/KernelA.HH,3510"$ @@ -1397,7 +1397,7 @@ $LK,"ATAReadNativeMax",A="FL:::/Kernel/BlkDev/DiskATA.CC,194",BI=296$ $LK,"BOOT_SRC_ROM",A="FL:::/Kernel/KernelA.HH,3842"$ $LK,"MEM_FREE_PAG_HASH_SIZE",A="FL:::/Kernel/KernelA.HH,2837"$ $LK,"RLF_AUTO_COMPLETE",A="FL:::/Kernel/KernelA.HH,492"$ -$LK,"SYS_KERNEL_END",A="FL:::/Kernel/KMain.CC,242"$ +$LK,"SYS_KERNEL_END",A="FL:::/Kernel/KMain.CC,249"$ $LK,"TakeExcept",A="FL:::/Kernel/KExcept.CC,42"$ $LK,"_MALLOC",A="FL:::/Kernel/Memory/MAllocFree.CC,5"$ $LK,"CHashDefineStr",A="FL:::/Kernel/KernelA.HH,829"$ @@ -2898,8 +2898,7 @@ fff+f_fffwf}fff  ""2CFHTVv{((<@@V CGCGcGmGpGxGGGGGGGGGGG HH'H5H?H?H?HOH $nNNNOOO+OHOaO~OOOOO"P$P(P @XXY6Y>YCYVYcYiYlY}Y 0 ,;Bzz666TWZnv}'1999;;@_et!'+/6<CIPV]cjpw}П(3>>HLWfqqqqqqqr rr!r#r#r#rJrhLJ̇܇ .:EKVYaD<I66Jft`*>11111111222'252=2=2h2222222Z&1@L`--55AU]]ovvPwwwwwxxxxx'x.x_x{x|xx0;i;iQidivi|iii<al"x"x0xAxIxMxYx^xbxhx8gq4444455555\&:Km1LX9p9pYpfpkpwppppppppp,16͑ԑב ,COcltՒ!36666B  HX`X`x``````````` aaaa4a@a@a[amaaaaaaaaaaabb:bbIbTbkbobxb}b}bbbbbbbbbbbL <{`  GK2u2uAu^udu!l‘‘֑%)8KQXgju’ʒԒ$7=ɓԓ(4?FLS\_"=================>>>>>$>)>,>/>2>5><><><><><>J>#   $vvvvvvvww#w5w:w@wEw\wew}wwwwwwwwwwwwwwww xxxBxBxQxSxYxaxsxxxxxxxxxxxxy -y yyy#y9yNy]ylywyyyyyyyyyyyyyyyyyyiz%,{{&@@H`mrw|ĐՐ -2BGOmmr",9CQ_nnŒÒӒߒ@@GNSZcdmr-'(mmmm nnn(è).DQZ_ةة(0CScs̪Ѫ٪٪ު'6FVf)4XXXXXXXXX*p !sssssstt$tZtctltxt+  %.NSlss46BXn !!)3?Ukw,8uF F T c m ~     -80:+NZgqv.,YYYYYYY/0 }}}}}}}}0,8? +y yyy#y9yNy]ylywyyyyyyyyyyyyyyyyyyiz%,{{&ĐɐΐӐ 7DMRW\zeʑБڑߑ0ejtݒ  '>GNZfu'(mmmm nnn(è).DQZ_ةة(0CScs̪Ѫ٪٪ު'6FVf)4XXXXXXXXX*p !sssssstt$tZtctltxt+  %.NSlss46BXn !!)3?Ukw,8uF F T c m ~     -80:+NZgqv.,YYYYYYY/0 }}}}}}}}0,8?    @@ -2913,7 +2912,7 @@ y yyy#y9yNy]ylywyyyy 0BJkҋ,.?KWlsg&X*<SSd|Ú"NU^dkqv|›h@8D4AAKiUyvv5MTTUUcnz|jfVVVVVVVVVVVWW,W,W/W4W>W>WHWKWaWyWuWWWWWWWWWWWXXEXEXYXmXtXzX}XXXXXnYkpYpYYYYYYYYYY ZZZ7Z7ZNZPZPZgZiZiZyZyZZZZZlVz"''4J\dl~ mDNZZZZ[[&[J[n[v[[[[[[[[[[\\4\6\6\W\Y\Y\i\i\q\t\y\\\\\\\]](]*]*]K]P]P]`]`]m]p]u]]]]]]]]]]^^^#^&^^n`AU '07<M^pty{o"""""""""" #/#<#G#Y#n########## $$)$>$R$Z$$$$$$$$$ %(%>%P%P%|%%%%p0 HHHHHHHHqH_mBBBBBBBBBBBr\Qd$7@EJZggmxsc((((((())/)8)L)s)))))))))*!*(*3*8*M*tx%%008::ADPu0 zzvLZi-;=R]cxwx5LLLLLL MMM,M:MBMHMKMUMx.osTsTTTTTTTT UU!U2U=ULUWUsUsUwUUUUUUUUUUUUUUUUUUV VV0VXViVtVtVVVVVVVVVVVVVVWy,07z 133>Bfq ""CEEWW__k{$"/eq|<7BÓӓړܓ},HHHIIII~, . ..(./.1.<;;;;;;$<J<Q<X<]<i<Du-/@GLQXjjl, -HHHHHHHh@BBBBCC7CFCWC`CtCCCCCCCCDD7D7H7K7[7s7}777777777777777788888888"8'8*828D88p΢ޢ++1:CENWYYbqss|ʣϣϣۣ .288888888888888899 999#9)9,9.999?9E9N9N9V9_9e9n9n9n9n9t9|999L**8;GQWdxxŘ8ak          , 4lllllllll )-t2¬¬Ҭެ CR_sjǭʭҭh &>[Kpp~*:p+ $2Aa~>L[haw4:CCL[hϯܯܯ$(-::HPbh@ #9>@<@K"&+7<@DN<SShWwб$:F\rzzɲββ(/Q9[================>>>>!>+>9>>>M>T>V>V>V>\>nnwz#::Qe 8A^A^W^`^j^u^~^^^l 7SHSHqHtH|HHHHHHHHHHII I1I?IIIIIWI47@;;0;L;N;Y;[;[;c;7U[I[IIIIIIIIIIIIIJ +HHHHHHHh@BBBBCC7CFCWC`CtCCCCCCCCDD7D7H7K7[7s7}777777777777777788888888"8'8*828D88p΢ޢ++1:CENWYYbqss|ʣϣϣۣ .288888888888888899 999#9)9,9.999?9E9N9N9V9_9e9n9n9n9n9t9|999L**8;GQWdxxŘ8ak          , 4lllllllll )-t2¬¬Ҭެ CR_sjǭʭҭh &>[Kpp~*:p+ $2Aa~>L[haw4:CCL[hϯܯܯ$(-::HPbh\"+===>MV\`dz<@K"&+7<@DN<SShWwб$:F\rzzɲββ(/Q9[================>>>>!>+>9>>>M>T>V>V>V>\>nnwz#::Qe 8A^A^W^`^j^u^~^^^l 7SHSHqHtH|HHHHHHHHHHII I1I?IIIIIWI47@;;0;L;N;Y;[;[;c;7U[I[IIIIIIIIIIIIIJ JJJJJ7JEJVJpJ~JJJJhq¤Ҥ٤''IIIRTT]__hjjsuu~ۥ*//88==FSXXaux}}s4b|b|p|r|w|z|}||| ^^^^^0[cSNSN\NjNpNNNNN(]]]^^^^p));AANZw      D1`1`E`W`^`b`e`p`x````&,17:HTWZfktyh    +OiiX=O3<@D\r.5DKTTný0""6u|lXo"00<CHKQT\aafiko< "++24477777788!8;Yŋ΋׋ $-6VVXhns @`n`nhntnnnnnnnn1o1o]ozoooooooooooo$p?pMpopppppppppppppppqqq!q(q6qEq}qqqqqs8!/FJJOOU<5@ } }"}1}8}=}H}]}`}e}q}^+ diff --git a/src/Kernel/KernelC.HH b/src/Kernel/KernelC.HH index e30cacec..3d7d3c6e 100755 --- a/src/Kernel/KernelC.HH +++ b/src/Kernel/KernelC.HH @@ -11,7 +11,7 @@ public extern U8 *rev_bits_table,*set_bits_table; #help_index "Boot" #help_file "::/Doc/Boot" -public extern U0 Reboot(); +public extern U0 Reboot(Bool format_ramdisks=FALSE); #help_index "Call" public argpop extern I64 CallStackGrow(I64 stack_size_threshold,I64 stack_size, diff --git a/src/Tmp/MyDistro.iso b/src/Tmp/MyDistro.iso index de55fc5d..3b5ffd39 100755 Binary files a/src/Tmp/MyDistro.iso and b/src/Tmp/MyDistro.iso differ