4068 lines
195 KiB
HTML
4068 lines
195 KiB
HTML
<html>
|
||
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
|
||
<meta name=Generator content="Microsoft Word 14 (filtered)">
|
||
|
||
<style>
|
||
<!--
|
||
/* Font Definitions */
|
||
@font-face
|
||
{font-family:Wingdings;
|
||
panose-1:5 0 0 0 0 0 0 0 0 0;}
|
||
@font-face
|
||
{font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
panose-1:2 1 6 0 3 1 1 1 1 1;}
|
||
@font-face
|
||
{font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
panose-1:2 1 6 9 6 1 1 1 1 1;}
|
||
@font-face
|
||
{font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
panose-1:2 1 6 9 6 1 1 1 1 1;}
|
||
@font-face
|
||
{font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD>;}
|
||
@font-face
|
||
{font-family:"\@<40><><EFBFBD><EFBFBD>";
|
||
panose-1:2 1 6 9 6 1 1 1 1 1;}
|
||
@font-face
|
||
{font-family:"\@<40><><EFBFBD><EFBFBD>";
|
||
panose-1:2 1 6 0 3 1 1 1 1 1;}
|
||
@font-face
|
||
{font-family:"\@<40><><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD>μ<EFBFBD><CEBC><EFBFBD>";}
|
||
/* Style Definitions */
|
||
p.MsoNormal, li.MsoNormal, div.MsoNormal
|
||
{margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
h1
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 1 Char";
|
||
margin-top:17.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:16.5pt;
|
||
margin-left:7.2pt;
|
||
text-align:center;
|
||
text-indent:-7.2pt;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
h2
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 2 Char";
|
||
margin-top:13.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:13.0pt;
|
||
margin-left:0cm;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:0cm;
|
||
page-break-after:avoid;
|
||
font-size:16.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
h3
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 3 Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:0cm;
|
||
page-break-after:avoid;
|
||
font-size:14.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
h4
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 4 Char";
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:28.8pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-28.8pt;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
h5
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 5 Char";
|
||
margin-top:14.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:14.5pt;
|
||
margin-left:36.0pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-36.0pt;
|
||
line-height:156%;
|
||
page-break-after:avoid;
|
||
font-size:14.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
h6
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 6 Char";
|
||
margin-top:12.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:3.2pt;
|
||
margin-left:43.2pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-43.2pt;
|
||
line-height:133%;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 7 Char";
|
||
margin-top:12.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:3.2pt;
|
||
margin-left:50.4pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-50.4pt;
|
||
line-height:133%;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 8 Char";
|
||
margin-top:12.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:3.2pt;
|
||
margin-left:57.6pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-72.0pt;
|
||
line-height:133%;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.MsoHeading9, li.MsoHeading9, div.MsoHeading9
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> 9 Char";
|
||
margin-top:12.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:3.2pt;
|
||
margin-left:64.8pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-79.2pt;
|
||
line-height:133%;
|
||
page-break-after:avoid;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.MsoIndex1, li.MsoIndex1, div.MsoIndex1
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:10.5pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex2, li.MsoIndex2, div.MsoIndex2
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex3, li.MsoIndex3, div.MsoIndex3
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:31.5pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex4, li.MsoIndex4, div.MsoIndex4
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:42.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex5, li.MsoIndex5, div.MsoIndex5
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:52.5pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex6, li.MsoIndex6, div.MsoIndex6
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:63.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex7, li.MsoIndex7, div.MsoIndex7
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:73.5pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex8, li.MsoIndex8, div.MsoIndex8
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:84.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndex9, li.MsoIndex9, div.MsoIndex9
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:94.5pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-10.5pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc1, li.MsoToc1, div.MsoToc1
|
||
{margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.MsoToc2, li.MsoToc2, div.MsoToc2
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc3, li.MsoToc3, div.MsoToc3
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:42.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc4, li.MsoToc4, div.MsoToc4
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:31.5pt;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc5, li.MsoToc5, div.MsoToc5
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:42.0pt;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc6, li.MsoToc6, div.MsoToc6
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:52.5pt;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc7, li.MsoToc7, div.MsoToc7
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:63.0pt;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc8, li.MsoToc8, div.MsoToc8
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:73.5pt;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoToc9, li.MsoToc9, div.MsoToc9
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:84.0pt;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoFootnoteText, li.MsoFootnoteText, div.MsoFootnoteText
|
||
{mso-style-link:"<22><>ע<EFBFBD>ı<EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
layout-grid-mode:char;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoCommentText, li.MsoCommentText, div.MsoCommentText
|
||
{mso-style-link:"<22><>ע<EFBFBD><D7A2><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoHeader, li.MsoHeader, div.MsoHeader
|
||
{mso-style-link:"ҳü Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
layout-grid-mode:char;
|
||
border:none;
|
||
padding:0cm;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoFooter, li.MsoFooter, div.MsoFooter
|
||
{mso-style-link:"ҳ<><D2B3> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
layout-grid-mode:char;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoIndexHeading, li.MsoIndexHeading, div.MsoIndexHeading
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ\,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ1\,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ2";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoCaption, li.MsoCaption, div.MsoCaption
|
||
{margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.MsoTof, li.MsoTof, div.MsoTof
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:42.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.MsoFootnoteReference
|
||
{vertical-align:super;}
|
||
p.MsoList, li.MsoList, div.MsoList
|
||
{margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoList2, li.MsoList2, div.MsoList2
|
||
{margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoList4, li.MsoList4, div.MsoList4
|
||
{margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoDate, li.MsoDate, div.MsoDate
|
||
{mso-style-link:"<22><><EFBFBD><EFBFBD> Char";
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:5.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
a:link, span.MsoHyperlink
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
||
color:blue;
|
||
text-decoration:underline;}
|
||
a:visited, span.MsoHyperlinkFollowed
|
||
{color:purple;
|
||
text-decoration:underline;}
|
||
p
|
||
{mso-style-name:"<22><>ͨ\(<28><>վ\)\,<2C><>ͨ \(Web\)\,<2C><>ͨ \(Web\)1\,<2C><>ͨ \(Web\)2\,<2C><>ͨ \(Web\)3";
|
||
margin-right:0cm;
|
||
margin-left:0cm;
|
||
font-size:12.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
pre
|
||
{mso-style-name:"HTML Ԥ<><D4A4><EFBFBD>ʽ\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>1\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>2\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>3";
|
||
mso-style-link:"HTML Ԥ<><D4A4><EFBFBD>ʽ Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD> Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>1 Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>2 Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>3 Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:12.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
tt
|
||
{font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.MsoCommentSubject, li.MsoCommentSubject, div.MsoCommentSubject
|
||
{mso-style-link:"<22><>ע<EFBFBD><D7A2><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
|
||
{mso-style-link:"<22><>ע<EFBFBD><D7A2><EFBFBD>ı<EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.1, li.1, div.1
|
||
{mso-style-name:<EFBFBD><EFBFBD>ʽ1;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a, li.a, div.a
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:10.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a0, li.a0, div.a0
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>;
|
||
mso-style-link:"ͼ˵<CDBC><CBB5> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char0
|
||
{mso-style-name:"ͼ˵<CDBC><CBB5> Char";
|
||
mso-style-link:ͼ˵<EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.0, li.0, div.0
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:36.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.10, li.10, div.10
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:18.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.11, li.11, div.11
|
||
{mso-style-name:<EFBFBD>DZ<EFBFBD><EFBFBD><EFBFBD>1;
|
||
margin-top:7.8pt;
|
||
margin-right:0cm;
|
||
margin-bottom:7.8pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.a1, li.a1, div.a1
|
||
{mso-style-name:<EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3CharChar, li.3CharChar, div.3CharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharCharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.post, li.post, div.post
|
||
{mso-style-name:<EFBFBD>ʼ<EFBFBD>post;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:right;
|
||
line-height:11.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3, li.3, div.3
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar1CharCharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char1 Char Char Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar1CharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char1 Char Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char, li.5Char, div.5Char
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35> Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35> Char Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.5CharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35> Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35> Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5CharChar0, li.5CharChar0, div.5CharChar0
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char Char Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.5CharCharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char0, li.5Char0, div.5Char0
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5, li.5, div.5
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
layout-grid-mode:char;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.2, li.2, div.2
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:10.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.20, li.20, div.20
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.21, li.21, div.21
|
||
{mso-style-name:<EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3CharCharCharCharChar, li.3CharCharCharCharChar, div.3CharCharCharCharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char Char Char Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharCharCharCharCharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char Char Char Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char Char Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a2, li.a2, div.a2
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.110, li.110, div.110
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> 1 + <20><><EFBFBD><EFBFBD>1";
|
||
margin-right:0cm;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
span.1Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 1 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 1";
|
||
font-weight:bold;}
|
||
p.22, li.22, div.22
|
||
{mso-style-name:"<22><>ʽ <20>б<EFBFBD> 2 + <20><><EFBFBD><EFBFBD>";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.23, li.23, div.23
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.50, li.50, div.50
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.111, li.111, div.111
|
||
{mso-style-name:<EFBFBD><EFBFBD>ʽ11;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.12, li.12, div.12
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:10.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.13, li.13, div.13
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.01, li.01, div.01
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>01;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:36.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.112, li.112, div.112
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>11;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:18.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.113, li.113, div.113
|
||
{mso-style-name:<EFBFBD>DZ<EFBFBD><EFBFBD><EFBFBD>11;
|
||
margin-top:7.8pt;
|
||
margin-right:0cm;
|
||
margin-bottom:7.8pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.14, li.14, div.14
|
||
{mso-style-name:<EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3Char1, li.3Char1, div.3Char1
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char1";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.post1, li.post1, div.post1
|
||
{mso-style-name:<EFBFBD>ʼ<EFBFBD>post1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:right;
|
||
line-height:11.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.31, li.31, div.31
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>31;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char1, li.5Char1, div.5Char1
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35> Char1";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5CharChar1, li.5CharChar1, div.5CharChar1
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char Char1";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char10, li.5Char10, div.5Char10
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char1";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.51, li.51, div.51
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.120, li.120, div.120
|
||
{mso-style-name:<EFBFBD><EFBFBD>ʽ12;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.02, li.02, div.02
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>02;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:36.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.121, li.121, div.121
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>12;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:18.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.122, li.122, div.122
|
||
{mso-style-name:<EFBFBD>DZ<EFBFBD><EFBFBD><EFBFBD>12;
|
||
margin-top:7.8pt;
|
||
margin-right:0cm;
|
||
margin-bottom:7.8pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.3Char2, li.3Char2, div.3Char2
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char2";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.post2, li.post2, div.post2
|
||
{mso-style-name:<EFBFBD>ʼ<EFBFBD>post2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:right;
|
||
line-height:11.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.32, li.32, div.32
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char2, li.5Char2, div.5Char2
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char2";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.52, li.52, div.52
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD><EFBFBD>2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3CharCharCharChar, li.3CharCharCharChar, div.3CharCharCharChar
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char Char Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.130, li.130, div.130
|
||
{mso-style-name:<EFBFBD><EFBFBD>ʽ13;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.30, li.30, div.30
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:10.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.03, li.03, div.03
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>03;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:36.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.131, li.131, div.131
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>13;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:18.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.132, li.132, div.132
|
||
{mso-style-name:<EFBFBD>DZ<EFBFBD><EFBFBD><EFBFBD>13;
|
||
margin-top:7.8pt;
|
||
margin-right:0cm;
|
||
margin-bottom:7.8pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.33, li.33, div.33
|
||
{mso-style-name:<EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3Char3, li.3Char3, div.3Char3
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char3";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.post3, li.post3, div.post3
|
||
{mso-style-name:<EFBFBD>ʼ<EFBFBD>post3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:right;
|
||
line-height:11.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.330, li.330, div.330
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>33;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char20, li.5Char20, div.5Char20
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5<EFBFBD><35> Char2";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5CharChar2, li.5CharChar2, div.5CharChar2
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char Char2";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.5Char3, li.5Char3, div.5Char3
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<D0A1><35> Char3";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.53, li.53, div.53
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.3Char, li.3Char, div.3Char
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char5";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:9.0pt;
|
||
font-size:8.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar5
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char5";
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.54, li.54, div.54
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
line-height:9.0pt;
|
||
text-autospace:ideograph-numeric;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.24, li.24, div.24
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD>Ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.15, li.15, div.15
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> 1 + <20><><EFBFBD><EFBFBD>";
|
||
margin-top:17.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:16.5pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.25, li.25, div.25
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> 2 + <20>о<EFBFBD>\: <20><><EFBFBD><EFBFBD><EFBFBD>о<EFBFBD>";
|
||
margin-top:13.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:13.0pt;
|
||
margin-left:28.9pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-28.9pt;
|
||
page-break-after:avoid;
|
||
font-size:16.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
span.2Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 2 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 2";
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.34, li.34, div.34
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.35, li.35, div.35
|
||
{mso-style-name:<EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.4, li.4, div.4
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>4;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.40, li.40, div.40
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>4;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.0pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.41, li.41, div.41
|
||
{mso-style-name:<EFBFBD><EFBFBD>4;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.55, li.55, div.55
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>5;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.56, li.56, div.56
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>5;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.57, li.57, div.57
|
||
{mso-style-name:<EFBFBD><EFBFBD>5;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.6, li.6, div.6
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>6;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.60, li.60, div.60
|
||
{mso-style-name:<EFBFBD><EFBFBD>6;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.61, li.61, div.61
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>6;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.7, li.7, div.7
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>7;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.70, li.70, div.70
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>7;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.71, li.71, div.71
|
||
{mso-style-name:<EFBFBD><EFBFBD>7;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.8, li.8, div.8
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>8;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.9, li.9, div.9
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>9;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.90, li.90, div.90
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>9;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.100, li.100, div.100
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>10;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.101, li.101, div.101
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>10;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.114, li.114, div.114
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>11;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.115, li.115, div.115
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>11;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.116, li.116, div.116
|
||
{mso-style-name:<EFBFBD><EFBFBD>11;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.123, li.123, div.123
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>12;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.124, li.124, div.124
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>12;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.133, li.133, div.133
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>13;
|
||
mso-style-link:"ͼ˵<CDBC><CBB5>13 Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.13Char
|
||
{mso-style-name:"ͼ˵<CDBC><CBB5>13 Char";
|
||
mso-style-link:ͼ˵<EFBFBD><EFBFBD>13;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.134, li.134, div.134
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>13;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.26, li.26, div.26
|
||
{mso-style-name:<EFBFBD><EFBFBD>¼2;
|
||
margin-top:13.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:13.0pt;
|
||
margin-left:0cm;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
page-break-after:avoid;
|
||
font-size:16.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.36, li.36, div.36
|
||
{mso-style-name:<EFBFBD><EFBFBD>¼3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
page-break-after:avoid;
|
||
font-size:14.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
span.3Char0
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 3 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 3";
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.16, li.16, div.16
|
||
{mso-style-name:<EFBFBD><EFBFBD>¼1;
|
||
margin-top:17.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:16.5pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.17, li.17, div.17
|
||
{mso-style-name:<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.42, li.42, div.42
|
||
{mso-style-name:<EFBFBD><EFBFBD>¼4;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
span.4Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 4 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 4";
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.a3, li.a3, div.a3
|
||
{mso-style-name:<EFBFBD><EFBFBD>¼ͼ˵<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.27, li.27, div.27
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2;
|
||
margin-top:13.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:13.0pt;
|
||
margin-left:28.8pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
text-indent:-28.8pt;
|
||
page-break-after:avoid;
|
||
font-size:16.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.a4, li.a4, div.a4
|
||
{mso-style-name:<EFBFBD>ο<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin-top:7.8pt;
|
||
margin-right:0cm;
|
||
margin-bottom:7.8pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.18, li.18, div.18
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1;
|
||
margin-top:7.8pt;
|
||
margin-right:0cm;
|
||
margin-bottom:7.8pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.19, li.19, div.19
|
||
{mso-style-name:<EFBFBD>б<EFBFBD>1;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.25pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.25pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.1a, li.1a, div.1a
|
||
{mso-style-name:<EFBFBD><EFBFBD>1;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.25pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.25pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.37, li.37, div.37
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.62, li.62, div.62
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
layout-grid-mode:char;
|
||
font-size:7.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a5, li.a5, div.a5
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22><><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char1
|
||
{mso-style-name:"<22><><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.43, li.43, div.43
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> 4 +";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
p.140, li.140, div.140
|
||
{mso-style-name:<EFBFBD><EFBFBD>14;
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.25pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.25pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.141, li.141, div.141
|
||
{mso-style-name:ͼ˵<EFBFBD><EFBFBD>14;
|
||
mso-style-link:"ͼ˵<CDBC><CBB5>14 Char";
|
||
margin-top:0cm;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:21.25pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
text-indent:-21.25pt;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.14Char
|
||
{mso-style-name:"ͼ˵<CDBC><CBB5>14 Char";
|
||
mso-style-link:ͼ˵<EFBFBD><EFBFBD>14;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a6, li.a6, div.a6
|
||
{mso-style-name:<EFBFBD>ļ<EFBFBD>Ŀ¼<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a7, li.a7, div.a7
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> +";
|
||
mso-style-link:"<22><>ʽ <20><><EFBFBD><EFBFBD> + Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char2
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> + Char";
|
||
mso-style-link:"<22><>ʽ <20><><EFBFBD><EFBFBD> +";
|
||
font-family:"Times New Roman","serif";}
|
||
p.a8, li.a8, div.a8
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.a9, li.a9, div.a9
|
||
{mso-style-name:<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD>ע;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.aa, li.aa, div.aa
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD>ע;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.ab, li.ab, div.ab
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.ac, li.ac, div.ac
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin-top:0cm;
|
||
margin-right:21.0pt;
|
||
margin-bottom:0cm;
|
||
margin-left:21.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
border:none;
|
||
padding:0cm;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.125, li.125, div.125
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD> 1 + <20><><EFBFBD><EFBFBD>2";
|
||
margin-top:17.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:16.5pt;
|
||
margin-left:0cm;
|
||
text-align:center;
|
||
page-break-after:avoid;
|
||
font-size:22.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.ad, li.ad, div.ad
|
||
{mso-style-name:"<22><>ʽ <20><>ע + <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.1b, li.1b, div.1b
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1;
|
||
margin-top:17.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:16.5pt;
|
||
margin-left:0cm;
|
||
line-height:240%;
|
||
page-break-after:avoid;
|
||
font-size:16.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
p.38, li.38, div.38
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
page-break-after:avoid;
|
||
font-size:12.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.63, li.63, div.63
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:7.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.64, li.64, div.64
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
line-height:10.0pt;
|
||
layout-grid-mode:char;
|
||
font-size:7.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.65, li.65, div.65
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>;
|
||
mso-style-link:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><36> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
line-height:10.0pt;
|
||
layout-grid-mode:char;
|
||
font-size:7.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.6Char
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><36> Char";
|
||
mso-style-link:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.ae, li.ae, div.ae
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.28, li.28, div.28
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD>2;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af, li.af, div.af
|
||
{mso-style-name:ϰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin-top:6.0pt;
|
||
margin-right:0cm;
|
||
margin-bottom:0cm;
|
||
margin-left:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
page-break-after:avoid;
|
||
font-size:14.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.1c, li.1c, div.1c
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>1;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:16.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af0, li.af0, div.af0
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.af1, li.af1, div.af1
|
||
{mso-style-name:"<22><>ʽ <20><>ע + <20><><EFBFBD><EFBFBD>";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.ListTitle, li.ListTitle, div.ListTitle
|
||
{mso-style-name:ListTitle;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.FigureTitle, li.FigureTitle, div.FigureTitle
|
||
{mso-style-name:FigureTitle;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.TableTitle, li.TableTitle, div.TableTitle
|
||
{mso-style-name:TableTitle;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.ProgramTitle, li.ProgramTitle, div.ProgramTitle
|
||
{mso-style-name:ProgramTitle;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:center;
|
||
font-size:10.5pt;
|
||
font-family:"Arial","sans-serif";}
|
||
p.RightText, li.RightText, div.RightText
|
||
{mso-style-name:RightText;
|
||
margin-top:0cm;
|
||
margin-right:21.0pt;
|
||
margin-bottom:0cm;
|
||
margin-left:42.0pt;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
border:none;
|
||
padding:0cm;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af2, li.af2, div.af2
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af3, li.af3, div.af3
|
||
{mso-style-name:<EFBFBD>ؼ<EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22>ؼ<EFBFBD><D8BC><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char3
|
||
{mso-style-name:"<22>ؼ<EFBFBD><D8BC><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD>ؼ<EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af4, li.af4, div.af4
|
||
{mso-style-name:<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22>ļ<EFBFBD><C4BC><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char4
|
||
{mso-style-name:"<22>ļ<EFBFBD><C4BC><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af5, li.af5, div.af5
|
||
{mso-style-name:ѡ<EFBFBD><EFBFBD>;
|
||
mso-style-link:"ѡ<><D1A1> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char5
|
||
{mso-style-name:"ѡ<><D1A1> Char";
|
||
mso-style-link:ѡ<EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af6, li.af6, div.af6
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char6
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af7, li.af7, div.af7
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char7
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.af8, li.af8, div.af8
|
||
{mso-style-name:<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char8
|
||
{mso-style-name:"<22>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:"Times New Roman","serif";}
|
||
p.af9, li.af9, div.af9
|
||
{mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
text-align:justify;
|
||
text-justify:inter-ideograph;
|
||
font-size:10.5pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Char9
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.58, li.58, div.58
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.59, li.59, div.59
|
||
{mso-style-name:ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С5<EFBFBD>ſ<EFBFBD><EFBFBD><EFBFBD>;
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
layout-grid-mode:char;
|
||
font-size:9.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
p.926, li.926, div.926
|
||
{mso-style-name:"<22><>ʽ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + <20><><EFBFBD>\: 9\.26 <20><><EFBFBD><EFBFBD>";
|
||
margin:0cm;
|
||
margin-bottom:.0001pt;
|
||
layout-grid-mode:char;
|
||
font-size:10.0pt;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.5Char4
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 5 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 5";
|
||
font-weight:bold;}
|
||
span.6Char0
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 6 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 6";
|
||
font-family:"Arial","sans-serif";
|
||
font-weight:bold;}
|
||
span.7Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 7 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 7";
|
||
font-weight:bold;}
|
||
span.8Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 8 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 8";
|
||
font-family:"Arial","sans-serif";}
|
||
span.9Char
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> 9 Char";
|
||
mso-style-link:"<22><><EFBFBD><EFBFBD> 9";
|
||
font-family:"Arial","sans-serif";}
|
||
span.Chara
|
||
{mso-style-name:"<22><>ע<EFBFBD>ı<EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD>ע<EFBFBD>ı<EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Charb
|
||
{mso-style-name:"<22><>ע<EFBFBD><D7A2><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Charc
|
||
{mso-style-name:"ҳü Char";
|
||
mso-style-link:ҳü;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Chard
|
||
{mso-style-name:"ҳ<><D2B3> Char";
|
||
mso-style-link:ҳ<EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Chare
|
||
{mso-style-name:"<22><><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.HTMLChar
|
||
{mso-style-name:"HTML Ԥ<><D4A4><EFBFBD>ʽ Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD> Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>1 Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>2 Char\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>3 Char";
|
||
mso-style-link:"HTML Ԥ<><D4A4><EFBFBD>ʽ\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>1\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>2\,HTML Ԥ<>ȸ<EFBFBD>ʽ<EFBFBD><CABD>3";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.Charf
|
||
{mso-style-name:"<22><>ע<EFBFBD><D7A2><EFBFBD><EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||
font-weight:bold;}
|
||
span.Charf0
|
||
{mso-style-name:"<22><>ע<EFBFBD><D7A2><EFBFBD>ı<EFBFBD> Char";
|
||
mso-style-link:<EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>;
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar1
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char1";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar3
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char3";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar13
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char13";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar12
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char12";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
span.3CharChar11
|
||
{mso-style-name:"ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3 Char Char11";
|
||
font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;}
|
||
.MsoChpDefault
|
||
{font-size:10.0pt;}
|
||
/* Page Definitions */
|
||
@page WordSection1
|
||
{size:595.3pt 841.9pt;
|
||
margin:72.0pt 54.0pt 72.0pt 54.0pt;
|
||
layout-grid:15.6pt;}
|
||
div.WordSection1
|
||
{page:WordSection1;}
|
||
/* List Definitions */
|
||
ol
|
||
{margin-bottom:0cm;}
|
||
ul
|
||
{margin-bottom:0cm;}
|
||
-->
|
||
</style>
|
||
|
||
</head>
|
||
|
||
<body lang=ZH-CN link=blue vlink=purple style='text-justify-trim:punctuation'>
|
||
|
||
<div class=WordSection1 style='layout-grid:15.6pt'>
|
||
|
||
<p class=ab><a name="_Toc53320618"><span style='font-family:<3A><><EFBFBD><EFBFBD>'><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span
|
||
lang=EN-US>9-2 linux/kernel/blk_drv/hd.c</span></a></p>
|
||
|
||
<div class=a align=center style='text-align:center'><span lang=EN-US>
|
||
|
||
<hr size=4 width="100%" align=center>
|
||
|
||
</span></div>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>1</span></u> <b><i>/*</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>2</span></u> <b><i> *
|
||
linux/kernel/hd.c</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>3</span></u> <b><i> *</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>4</span></u> <b><i> *
|
||
(C) 1991 Linus Torvalds</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>5</span></u> <b><i> */</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>6</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>7</span></u> <b><i>/*</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>8</span></u> <b><i> *
|
||
This is the low-level hd interrupt support. It traverses the</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>9</span></u> <b><i> *
|
||
request-list, using interrupts to jump between functions. As</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>10</span></u> <b><i> *
|
||
all the functions are called within interrupts, we may not</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>11</span></u> <b><i> *
|
||
sleep. Special care is recommended.</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>12</span></u> <b><i> *
|
||
</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>13</span></u> <b><i> *
|
||
modified by Drew Eckhardt to check nr of hd's from the CMOS.</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>14</span></u> <b><i> */</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> /*</span></p>
|
||
|
||
<p class=a><span lang=EN-US> * </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵײ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> * </span><EFBFBD>ں<EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> * </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˯<EFBFBD>ߡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>ע<EFBFBD>⡣</p>
|
||
|
||
<p class=a><span lang=EN-US> * </span></p>
|
||
|
||
<p class=a><span lang=EN-US> * </span><i><EFBFBD><EFBFBD><span
|
||
lang=EN-US>Drew Eckhardt</span><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>CMOS</span><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></i></p>
|
||
|
||
<p class=a><span lang=EN-US> */</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>15</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>16</span></u>
|
||
#include <linux/config.h> // </span><EFBFBD>ں<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ժ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><span lang=EN-US>HD_TYPE</span><EFBFBD><EFBFBD>ѡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>17</span></u>
|
||
#include <linux/sched.h> // </span><EFBFBD><EFBFBD><EFBFBD>ȳ<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<span lang=EN-US>task_struct</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD>ݵȡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>18</span></u>
|
||
#include <linux/fs.h> // </span><EFBFBD>ļ<EFBFBD>ϵͳͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>file</span><EFBFBD><EFBFBD><span lang=EN-US>m_inode</span><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>19</span></u>
|
||
#include <linux/kernel.h> // </span><EFBFBD>ں<EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<EFBFBD>ں˳<EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD>ζ<EFBFBD><EFBFBD>塣</p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>20</span></u>
|
||
#include <linux/hdreg.h> // </span>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̼Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڡ<EFBFBD>״̬<EFBFBD>롢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>21</span></u>
|
||
#include <asm/system.h> // </span>ϵͳͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>/</span><EFBFBD>ж<EFBFBD><EFBFBD>ŵȵĻ<EFBFBD><EFBFBD>ꡣ</p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>22</span></u>
|
||
#include <asm/io.h> // io</span>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>/</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䡣</p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>23</span></u>
|
||
#include <asm/segment.h> // </span><EFBFBD>β<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>йضμĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD>ຯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>24</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ŷ<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>blk.h</span><EFBFBD>ļ<EFBFBD>֮ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塣</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ϊ<span lang=EN-US>blk.h</span><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD>һЩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͺꡣ</p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>25</span></u>
|
||
#define <u><span style='color:blue'>MAJOR_NR</span></u> 3
|
||
// </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>3</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>26</span></u>
|
||
#include "<u><span style='color:blue'>blk.h</span></u>"
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>豸ͷ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>ݽṹ<EFBFBD>ͺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>27</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>CMOS</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>꺯<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD>ȡ<span lang=EN-US>CMOS</span><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>outb_p</span><EFBFBD><EFBFBD><span lang=EN-US>inb_p</span><EFBFBD><EFBFBD><span lang=EN-US>include/asm/io.h</span><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD>Ķ˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꡣ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>init/main.c</span><EFBFBD>ж<EFBFBD>ȡ<span
|
||
lang=EN-US>CMOS</span>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD>ȫһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>28</span></u>
|
||
#define <u><span style='color:blue'>CMOS_READ</span></u>(addr) ({ \</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>29</span></u> <u><span
|
||
style='color:blue'>outb_p</span></u>(0x80|addr,0x70); \
|
||
// 0x70</span><EFBFBD><EFBFBD>д<EFBFBD>˿ںţ<EFBFBD><span lang=EN-US>0x80|addr</span><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>CMOS</span><EFBFBD>ڴ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>30</span></u> <u><span
|
||
style='color:blue'>inb_p</span></u>(0x71); \
|
||
// 0x71</span><EFBFBD>Ƕ<EFBFBD><EFBFBD>˿ںš<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>31</span></u> })</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>32</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>33</span></u> <b><i>/*
|
||
Max read/write errors/sector */</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> /* </span>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>/</span>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US> */</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>34</span></u>
|
||
#define <u><span style='color:blue'>MAX_ERRORS</span></u>
|
||
7 // </span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>/</span>дһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>35</span></u>
|
||
#define <u><span style='color:blue'>MAX_HD</span></u>
|
||
2 // </span>ϵͳ֧<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>36</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>(311</span><EFBFBD><EFBFBD><span lang=EN-US>)</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>37</span></u>
|
||
static void <u><span style='color:blue'>recal_intr</span></u>(void);</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>дӲ<EFBFBD><EFBFBD>ʧ<EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><EFBFBD>־Ҫ<EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λӲ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><span
|
||
lang=EN-US>242</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>38</span></u> static
|
||
void <u><span style='color:blue'>bad_rw_intr</span></u>(void);</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>39</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸ñ<EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>recal_intr()</span><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD>档</p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>40</span></u>
|
||
static int <u><span style='color:blue'>recalibrate</span></u> = 0;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>øñ<EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD>λӲ<EFBFBD>̺Ϳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>41</span></u>
|
||
static int <u><span style='color:blue'>reset</span></u> = 0;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>42</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>43</span></u> <b><i>/*</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>44</span></u> <b><i> *
|
||
This struct defines the HD's and their types.</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>45</span></u> <b><i> */</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> /* </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US> */</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ṹ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>Harddisk information struct</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ֶηֱ<EFBFBD><EFBFBD>Ǵ<EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дǰԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>46</span></u>
|
||
struct <u><span style='color:blue'>hd_i_struct</span></u> {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>47</span></u>
|
||
int <u><span style='color:blue'>head</span></u>,sect,cyl,wpcom,lzone,ctl;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>48</span></u>
|
||
};</span></p>
|
||
|
||
<p class=a><span lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>include/linux/config.h</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˷<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>HD_TYPE</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>õIJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪӲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd_info[]</span><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>϶<EFBFBD><EFBFBD><EFBFBD>Ϊ<span lang=EN-US>0</span>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>setup()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>49</span></u>
|
||
#ifdef HD_TYPE</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>50</span></u>
|
||
struct <u><span style='color:blue'>hd_i_struct</span></u> <u><span
|
||
style='color:blue'>hd_info</span></u>[] = { HD_TYPE };
|
||
// </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>顣</p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>51</span></u>
|
||
#define <u><span style='color:blue'>NR_HD</span></u> ((sizeof (<u><span
|
||
style='color:blue'>hd_info</span></u>))/(sizeof (struct <u><span
|
||
style='color:blue'>hd_i_struct</span></u>))) // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>52</span></u>
|
||
#else</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>53</span></u>
|
||
struct <u><span style='color:blue'>hd_i_struct</span></u> <u><span
|
||
style='color:blue'>hd_info</span></u>[] = { {0,0,0,0,0,0},{0,0,0,0,0,0} };</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>54</span></u>
|
||
static int <u><span style='color:blue'>NR_HD</span></u> = 0;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>55</span></u>
|
||
#endif</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>56</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>5</span><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd[0]</span><EFBFBD><EFBFBD><span lang=EN-US>hd[5]</span><EFBFBD>ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>57</span></u>
|
||
static struct <u><span style='color:blue'>hd_struct</span></u> {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>58</span></u>
|
||
long start_sect;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>59</span></u>
|
||
long nr_sects;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>60</span></u> } <u><span
|
||
style='color:blue'>hd</span></u>[5*<u><span style='color:blue'>MAX_HD</span></u>]={{0,0},};</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>61</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣 </p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>62</span></u>
|
||
static int <u><span style='color:blue'>hd_sizes</span></u>[5*<u><span
|
||
style='color:blue'>MAX_HD</span></u>] = {0, };</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>63</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꡣ<EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><span
|
||
lang=EN-US>port</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>nr</span><EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>buf</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>64</span></u>
|
||
#define <u><span style='color:blue'>port_read</span></u>(port,<u><span
|
||
style='color:blue'>buf</span></u>,nr) \</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>65</span></u>
|
||
__asm__(<i>"cld;rep;insw"</i>::<i>"d"</i> (port),<i>"D"</i>
|
||
(<u><span style='color:blue'>buf</span></u>),<i>"c"</i> (nr):<i>"cx"</i>,<i>"di"</i>)</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>66</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>д<EFBFBD>˿<EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꡣд<EFBFBD>˿<EFBFBD><span
|
||
lang=EN-US>port</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<span lang=EN-US>nr</span><EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>buf</span><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>67</span></u>
|
||
#define <u><span style='color:blue'>port_write</span></u>(port,<u><span
|
||
style='color:blue'>buf</span></u>,nr) \</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>68</span></u>
|
||
__asm__(<i>"cld;rep;outsw"</i>::<i>"d"</i> (port),<i>"S"</i>
|
||
(<u><span style='color:blue'>buf</span></u>),<i>"c"</i> (nr):<i>"cx"</i>,<i>"si"</i>)</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>69</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>70</span></u>
|
||
extern void <u><span style='color:blue'>hd_interrupt</span></u>(void);
|
||
// </span>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϹ<EFBFBD><EFBFBD>̣<EFBFBD><span lang=EN-US>sys_call.s</span><EFBFBD><EFBFBD><span lang=EN-US>235</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>71</span></u>
|
||
extern void <u><span style='color:blue'>rd_load</span></u>(void);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>ramdisk.c</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>71</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>72</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>73</span></u> <b><i>/*
|
||
This may be used only once, enforced by 'static int callable' */</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US> /* </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>Ρ<EFBFBD><EFBFBD>þ<EFBFBD>̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>callable</span><EFBFBD><EFBFBD>Ϊ<EFBFBD>ɵ<EFBFBD><EFBFBD>ñ<EFBFBD>־<EFBFBD><EFBFBD><span lang=EN-US>*/</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ϵͳ<EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>BIOS</span><EFBFBD><EFBFBD><EFBFBD>ɳ<EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>init/main.c</span><EFBFBD><EFBFBD><span lang=EN-US>init</span><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊָ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD>ָ<EFBFBD>롣</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>32</span><EFBFBD>ֽڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD><EFBFBD>ڴ<EFBFBD><span
|
||
lang=EN-US>0x90080</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 0x90080</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>setup.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>ROM BIOS</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>á<EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>ȡ<span
|
||
lang=EN-US> CMOS</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<span lang=EN-US>hd</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>RAM</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̺<EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>74</span></u> int
|
||
<u><span style='color:blue'>sys_setup</span></u>(void * BIOS)</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>75</span></u> {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>76</span></u>
|
||
static int callable = 1;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD>εı<EFBFBD>־<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>77</span></u>
|
||
int i,drive;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>78</span></u>
|
||
unsigned char cmos_disks;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>79</span></u>
|
||
struct <u><span style='color:blue'>partition</span></u> *p;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>80</span></u>
|
||
struct <u><span style='color:blue'>buffer_head</span></u> * bh;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>81</span></u> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>callable</span><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>ʹ<EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD>Ρ<EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>hd_info[]</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>
|
||
include/linux/config.h </span><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˷<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>HD_TYPE</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<span
|
||
lang=EN-US> hd_info[]</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>49</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD>ˡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ȡ<span lang=EN-US>boot/setup.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><span
|
||
lang=EN-US>0x90080</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>setup.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>˴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>82</span></u>
|
||
if (!callable)</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>83</span></u>
|
||
return -1;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>84</span></u>
|
||
callable = 0;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>85</span></u>
|
||
#ifndef HD_TYPE
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>HD_TYPE</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>86</span></u>
|
||
for (drive=0 ; drive<2 ; drive++) {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>87</span></u>
|
||
<u><span style='color:blue'>hd_info</span></u>[drive].cyl = *(unsigned short *)
|
||
BIOS; // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>88</span></u>
|
||
<u><span style='color:blue'>hd_info</span></u>[drive].<u><span
|
||
style='color:blue'>head</span></u> = *(unsigned char *) (2+BIOS); // </span><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>89</span></u>
|
||
<u><span style='color:blue'>hd_info</span></u>[drive].wpcom = *(unsigned short
|
||
*) (5+BIOS); // </span>дǰԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>90</span></u>
|
||
<u><span style='color:blue'>hd_info</span></u>[drive].ctl = *(unsigned char *)
|
||
(8+BIOS); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>91</span></u>
|
||
<u><span style='color:blue'>hd_info</span></u>[drive].lzone = *(unsigned short
|
||
*) (12+BIOS);// </span><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>92</span></u>
|
||
<u><span style='color:blue'>hd_info</span></u>[drive].sect = *(unsigned char *)
|
||
(14+BIOS); // </span>ÿ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>93</span></u>
|
||
BIOS += 16;
|
||
// </span>ÿ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>16</span><EFBFBD>ֽڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>BIOS</span>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>94</span></u>
|
||
}</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // setup.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<span
|
||
lang=EN-US>BIOS</span>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̣<EFBFBD><EFBFBD>ͻὫ<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD>̵<EFBFBD><span lang=EN-US>16</span><EFBFBD>ֽ<EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㡣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻҪ<EFBFBD>жϵ<EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ<span lang=EN-US>0</span><EFBFBD>Ϳ<EFBFBD><EFBFBD><EFBFBD>֪<EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>2</span><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>95</span></u>
|
||
if (<u><span style='color:blue'>hd_info</span></u>[1].cyl)</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>96</span></u>
|
||
<u><span style='color:blue'>NR_HD</span></u>=2;
|
||
// </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<span lang=EN-US>2</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>97</span></u>
|
||
else</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>98</span></u>
|
||
<u><span style='color:blue'>NR_HD</span></u>=1;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> <u><span style='color:blue'>99</span></u>
|
||
#endif</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd_info[]</span><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>úã<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>NR_HD</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd[]</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>5 </span><EFBFBD>ֱ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>1<EFBFBD><EFBFBD>4</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>6<EFBFBD><EFBFBD>9</span><EFBFBD>ֱ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><span lang=EN-US>4</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>ʾӲ<CABE><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>5</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>100</span></u><span
|
||
lang=EN-US> for (i=0 ; i<<u><span
|
||
style='color:blue'>NR_HD</span></u> ; i++) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>101</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd</span></u>[i*5].start_sect = 0;
|
||
// </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>102</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd</span></u>[i*5].nr_sects = <u><span
|
||
style='color:blue'>hd_info</span></u>[i].<u><span style='color:blue'>head</span></u>*</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>103</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_info</span></u>[i].sect*<u><span
|
||
style='color:blue'>hd_info</span></u>[i].cyl; // </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>104</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>105</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>106</span></u><span
|
||
lang=EN-US> <b><i>/*</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>107</span></u><span
|
||
lang=EN-US> <b><i> We
|
||
querry CMOS about hard disks : it could be that </i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>108</span></u><span
|
||
lang=EN-US> <b><i> we
|
||
have a SCSI/ESDI/etc controller that is BIOS</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>109</span></u><span
|
||
lang=EN-US> <b><i> compatable
|
||
with ST-506, and thus showing up in our</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>110</span></u><span
|
||
lang=EN-US> <b><i> BIOS
|
||
table, but not register compatable, and therefore</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>111</span></u><span
|
||
lang=EN-US> <b><i> not
|
||
present in CMOS.</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>112</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>113</span></u><span
|
||
lang=EN-US> <b><i> Furthurmore,
|
||
we will assume that our ST-506 drives</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>114</span></u><span
|
||
lang=EN-US> <b><i> <if
|
||
any> are the primary drives in the system, and </i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>115</span></u><span
|
||
lang=EN-US> <b><i> the
|
||
ones reflected as drive 1 or 2.</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>116</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>117</span></u><span
|
||
lang=EN-US> <b><i> The
|
||
first drive is stored in the high nibble of CMOS</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>118</span></u><span
|
||
lang=EN-US> <b><i> byte
|
||
0x12, the second in the low nibble. This will be</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>119</span></u><span
|
||
lang=EN-US> <b><i> either
|
||
a 4 bit drive type or 0xf indicating use byte 0x19 </i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>120</span></u><span
|
||
lang=EN-US> <b><i> for
|
||
an 8 bit type, drive 1, 0x1a for drive 2 in CMOS.</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>121</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>122</span></u><span
|
||
lang=EN-US> <b><i> Needless
|
||
to say, a non-zero value means we have </i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>123</span></u><span
|
||
lang=EN-US> <b><i> an
|
||
AT controller hard disk for that drive.</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>124</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>125</span></u><span
|
||
lang=EN-US> <b><i> </i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>126</span></u><span
|
||
lang=EN-US> <b><i> */</i></b></span></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
/*</span></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><span lang=EN-US>CMOS</span><EFBFBD>й<EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><span lang=EN-US>SCSI/ESDI/</span><EFBFBD>ȵĿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>ST-506</span><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>BIOS</span></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵ<EFBFBD><span lang=EN-US>BIOS</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>ֲ<EFBFBD><EFBFBD>ǼĴ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>CMOS</span><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>ST-506</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD>еĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><span lang=EN-US>2</span><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>CMOS</span><EFBFBD>ֽ<EFBFBD><span
|
||
lang=EN-US>0x12</span><EFBFBD>ĸ߰<EFBFBD><EFBFBD>ֽ<EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>2</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵͰ<EFBFBD><EFBFBD>ֽ<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>4</span>λ<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0xf</span><EFBFBD><EFBFBD><span lang=EN-US>0xf</span><EFBFBD><EFBFBD>ʾʹ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>CMOS</span><EFBFBD><EFBFBD><span lang=EN-US>0x19</span><EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>8</span>λ</p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڣ<EFBFBD>ʹ<EFBFBD><EFBFBD><span lang=EN-US>CMOS</span><EFBFBD><EFBFBD><span lang=EN-US>0x1A</span><EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
</span><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ζ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><span lang=EN-US>AT</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̡<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
*/</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>127</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Dz<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>AT</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵġ<EFBFBD><EFBFBD>й<EFBFBD><span lang=EN-US>CMOS</span><EFBFBD><EFBFBD>Ϣ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>4</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>4.2.3</span><span lang=EN-US>.1</span><EFBFBD>ڡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>CMOS</span>ƫ<EFBFBD>Ƶ<EFBFBD>ַ<span
|
||
lang=EN-US>0x12</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͱ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ֽ<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾϵͳֻ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>0x12</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ<span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾϵͳ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><span lang=EN-US>AT</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̡<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>128</span></u><span
|
||
lang=EN-US> if ((cmos_disks = <u><span
|
||
style='color:blue'>CMOS_READ</span></u>(0x12)) & 0xf0)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>129</span></u><span
|
||
lang=EN-US>
|
||
if (cmos_disks & 0x0f)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>130</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>NR_HD</span></u> = 2;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>131</span></u><span
|
||
lang=EN-US>
|
||
else</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>132</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>NR_HD</span></u> = 1;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>133</span></u><span
|
||
lang=EN-US> else</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>134</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>NR_HD</span></u> = 0;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>NR_HD
|
||
= 0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>AT</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹȫ<EFBFBD><EFBFBD><EFBFBD>㡣</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>NR_HD
|
||
= 1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>2</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㡣</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>135</span></u><span
|
||
lang=EN-US> for (i = <u><span
|
||
style='color:blue'>NR_HD</span></u> ; i < 2 ; i++) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>136</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd</span></u>[i*5].start_sect = 0;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>137</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd</span></u>[i*5].nr_sects = 0;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>138</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ã<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊֹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>NR_HD</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡÿ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ϵ<EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd[] </span><EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ö<EFBFBD><EFBFBD>麯<EFBFBD><EFBFBD><span lang=EN-US>bread()</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ飨<span lang=EN-US>fs/buffer.c</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>267</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0x300</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 0x305 </span><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><EFBFBD>豸<EFBFBD>ţ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>Ŀ<EFBFBD>š<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻᱻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>bh</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷָ<EFBFBD><EFBFBD><span lang=EN-US>bh</span>Ϊ<span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǹ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0xAA55</span><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD>ԣ<EFBFBD><EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ƫ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>0x1BE</span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd[]</span><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><span lang=EN-US>bh</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>139</span></u><span
|
||
lang=EN-US> for (drive=0 ;
|
||
drive<<u><span style='color:blue'>NR_HD</span></u> ; drive++) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>140</span></u><span
|
||
lang=EN-US>
|
||
if (!(bh = <u><span style='color:blue'>bread</span></u>(0x300 + drive*5,0))) {
|
||
// 0x300</span><EFBFBD><EFBFBD><span lang=EN-US>0x305</span><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>141</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>printk</span></u>(<i>"Unable to read partition
|
||
table of drive %d\n\r"</i>,</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>142</span></u><span
|
||
lang=EN-US>
|
||
drive);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>143</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>panic</span></u>(<i>""</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>144</span></u><span
|
||
lang=EN-US>
|
||
}</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>145</span></u><span
|
||
lang=EN-US>
|
||
if (bh->b_data[510] != 0x55 || (unsigned char)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>146</span></u><span
|
||
lang=EN-US>
|
||
bh->b_data[511] != 0xAA) {
|
||
// </span><EFBFBD>ж<EFBFBD>Ӳ<EFBFBD>̱<EFBFBD>־<span lang=EN-US>0xAA55</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>147</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>printk</span></u>(<i>"Bad
|
||
partition table on drive %d\n\r"</i>,drive);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>148</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>panic</span></u>(<i>""</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>149</span></u><span
|
||
lang=EN-US>
|
||
}</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>150</span></u><span
|
||
lang=EN-US>
|
||
p = 0x1BE + (void *)bh->b_data; // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ڵ<EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0x1BE</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>151</span></u><span
|
||
lang=EN-US>
|
||
for (i=1;i<5;i++,p++) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>152</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd</span></u>[i+5*drive].start_sect =
|
||
p->start_sect;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>153</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd</span></u>[i+5*drive].nr_sects = p->nr_sects;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>154</span></u><span
|
||
lang=EN-US>
|
||
}</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>155</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>brelse</span></u>(bh);
|
||
// </span><EFBFBD>ͷ<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>156</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>ƣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd_sizes[]</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>157</span></u><span
|
||
lang=EN-US> for (i=0 ; i<5*<u><span
|
||
style='color:blue'>MAX_HD</span></u> ; i++)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>158</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_sizes</span></u>[i] = <u><span style='color:
|
||
blue'>hd</span></u>[i].nr_sects>>1 ;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>159</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>blk_size</span></u>[<u><span style='color:blue'>MAJOR_NR</span></u>]
|
||
= <u><span style='color:blue'>hd_sizes</span></u>;</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd[]</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷʵ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̴<EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ϵͳӳ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>blk_drv/ramdisk.c</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>71</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD>и<EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̳<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD>ӳ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>Ȼ<EFBFBD><EFBFBD>Ѵ<EFBFBD>ʱ<EFBFBD>ĸ<EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<EFBFBD>豸<EFBFBD><EFBFBD><span
|
||
lang=EN-US>ROOT_DEV</span><EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD>豸<EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶԽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>г<EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>160</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>NR_HD</span></u>)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>161</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>printk</span></u>(<i>"Partition table%s
|
||
ok.\n\r"</i>,(<u><span style='color:blue'>NR_HD</span></u>>1)?<i>"s"</i>:<i>""</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>162</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>rd_load</span></u>();
|
||
// blk_drv/ramdisk.c</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>71</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>163</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>init_swapping</span></u>();
|
||
// mm/swap.c</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>199</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>164</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>mount_root</span></u>();
|
||
// fs/super.c</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>241</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>165</span></u><span
|
||
lang=EN-US> return (0);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>166</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>167</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD>жϲ<EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><span
|
||
lang=EN-US>HD_STATUS(0x1f7)</span><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>λ<span
|
||
lang=EN-US>6</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>ҿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æλ<EFBFBD><EFBFBD>λ<span
|
||
lang=EN-US>7</span><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>λ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<span lang=EN-US>retries</span>Ϊ<span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>Ϊ<span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>ڵȴ<EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD><span
|
||
lang=EN-US>OK</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ʵ<EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD>æλ<EFBFBD><EFBFBD>λ<span
|
||
lang=EN-US>7</span><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ<span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD>жϿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>æ״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<span
|
||
lang=EN-US>6</span><EFBFBD>Ƿ<EFBFBD>Ϊ<span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD>ء<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>ѵ<EFBFBD><span
|
||
lang=EN-US>172</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>ɣ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>while
|
||
(--retries && (inb_p(HD_STATUS)&0x80));</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><span
|
||
lang=EN-US>PC</span><EFBFBD><EFBFBD><EFBFBD>ٶȶ<EFBFBD><EFBFBD>ܿ죬</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>ѵȴ<EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ټӴ<EFBFBD>һЩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>10</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>168</span></u><span
|
||
lang=EN-US> static int <u><span style='color:blue'>controller_ready</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>169</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>170</span></u><span
|
||
lang=EN-US> int retries =
|
||
100000;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>171</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>172</span></u><span
|
||
lang=EN-US> while (--retries
|
||
&& (<u><span style='color:blue'>inb_p</span></u>(<u><span
|
||
style='color:blue'>HD_STATUS</span></u>)&0xc0)!=0x40);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>173</span></u><span
|
||
lang=EN-US> return (retries);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>صȴ<EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>174</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>175</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>win </span><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ȡ״̬<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>н<EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>ٶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>HD_ERROR</span><EFBFBD><EFBFBD><span lang=EN-US>0x1f1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>176</span></u><span
|
||
lang=EN-US> static int <u><span style='color:blue'>win_result</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>177</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>178</span></u><span
|
||
lang=EN-US> int i=<u><span
|
||
style='color:blue'>inb_p</span></u>(<u><span style='color:blue'>HD_STATUS</span></u>);
|
||
// </span>ȡ״̬<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>179</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>180</span></u><span
|
||
lang=EN-US> if ((i & (<u><span
|
||
style='color:blue'>BUSY_STAT</span></u> | <u><span style='color:blue'>READY_STAT</span></u>
|
||
| <u><span style='color:blue'>WRERR_STAT</span></u> | <u><span
|
||
style='color:blue'>SEEK_STAT</span></u> | <u><span style='color:blue'>ERR_STAT</span></u>))</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>181</span></u><span
|
||
lang=EN-US>
|
||
== (<u><span style='color:blue'>READY_STAT</span></u> | <u><span
|
||
style='color:blue'>SEEK_STAT</span></u>))</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>182</span></u><span
|
||
lang=EN-US>
|
||
return(0); <b><i>/* ok */</i></b></span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>183</span></u><span
|
||
lang=EN-US> if (i&1) i=<u><span
|
||
style='color:blue'>inb</span></u>(<u><span style='color:blue'>HD_ERROR</span></u>);
|
||
// </span><EFBFBD><EFBFBD><span lang=EN-US>ERR_STAT</span><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>184</span></u><span
|
||
lang=EN-US> return (1);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>185</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>186</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>drive
|
||
- </span>Ӳ<EFBFBD>̺<EFBFBD><span lang=EN-US>(0-1)</span><EFBFBD><EFBFBD><span lang=EN-US>nsect - </span><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>sect - </span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
// head - </span><EFBFBD><EFBFBD>ͷ<EFBFBD>ţ<EFBFBD><span
|
||
lang=EN-US> cyl - </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><span
|
||
lang=EN-US> cmd - </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>루<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US>
|
||
// intr_addr() - </span>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>н<EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>롣</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd</span>ΪӲ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>н<EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>롣Ȼ<EFBFBD><EFBFBD><EFBFBD>ٷ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽں<EFBFBD><span
|
||
lang=EN-US>7</span><EFBFBD>ֽڵIJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD>ֺ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd</span>ָ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>н<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><span lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD>ٷ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽں<EFBFBD><span
|
||
lang=EN-US>7</span><EFBFBD>ֽڵIJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><span lang=EN-US>kernel/sys_call.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>235</span><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>191</span><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>__res</span><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>ڿ<EFBFBD><EFBFBD>ٷ<EFBFBD><EFBFBD>ʡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>eax</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>Ѹþ<EFBFBD>д<EFBFBD>ɡ<EFBFBD><span lang=EN-US>register char __res asm("ax");</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>187</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>hd_out</span></u>(unsigned
|
||
int drive,unsigned int nsect,unsigned int sect,</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>188</span></u><span
|
||
lang=EN-US>
|
||
unsigned int <u><span style='color:blue'>head</span></u>,unsigned int
|
||
cyl,unsigned int cmd,</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>189</span></u><span
|
||
lang=EN-US>
|
||
void (*intr_addr)(void))</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>190</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>191</span></u><span
|
||
lang=EN-US> register int port
|
||
asm(<i>"dx"</i>); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>dx</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>192</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ȶԲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD>Լ<EFBFBD>顣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD>ͷ<EFBFBD>Ŵ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>15</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϲ<EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>һ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>193</span></u><span
|
||
lang=EN-US> if (drive>1 || <u><span
|
||
style='color:blue'>head</span></u>>15)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>194</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>panic</span></u>(<i>"Trying to write bad
|
||
sector"</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>195</span></u><span
|
||
lang=EN-US> if (!<u><span
|
||
style='color:blue'>controller_ready</span></u>())</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>196</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>panic</span></u>(<i>"HD controller not
|
||
ready"</i>);</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϷ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>do_hd</span><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>붨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>blk.h</span><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>56--109</span><EFBFBD><EFBFBD>֮<EFBFBD>䣬<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĵ<EFBFBD><span
|
||
lang=EN-US>83</span><EFBFBD>к<EFBFBD><span lang=EN-US>100</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮ǰ<EFBFBD><EFBFBD><EFBFBD>涨Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڣ<EFBFBD><span
|
||
lang=EN-US>0x3f6</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һָ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̵Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڣ<EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӧ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD>Ʒ<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڼ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><span
|
||
lang=EN-US> ctl </span><EFBFBD>ֶΡ<EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 0x1f1<66>C0x1f7</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>7</span><EFBFBD>ֽڵIJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>197</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>SET_INTR</span></u>(intr_addr);
|
||
// do_hd = intr_addr</span><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>198</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(<u><span style='color:blue'>hd_info</span></u>[drive].ctl,<u><span
|
||
style='color:blue'>HD_CMD</span></u>); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƼĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>199</span></u><span
|
||
lang=EN-US> port=<u><span
|
||
style='color:blue'>HD_DATA</span></u>;
|
||
// </span><EFBFBD><EFBFBD><span lang=EN-US>dx</span>Ϊ<EFBFBD><EFBFBD><EFBFBD>ݼĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><span lang=EN-US>(0x1f0)</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>200</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(<u><span style='color:blue'>hd_info</span></u>[drive].wpcom>>2,++port);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>(</span><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>4)</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>201</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(nsect,++port);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>/</span>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>202</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(sect,++port);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>203</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(cyl,++port);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><span lang=EN-US>8</span>λ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>204</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(cyl>>8,++port);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ÿ<EFBFBD><span lang=EN-US>8</span>λ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>205</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(0xA0|(drive<<4)|<u><span
|
||
style='color:blue'>head</span></u>,++port); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>+</span><EFBFBD><EFBFBD>ͷ<EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>206</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb</span></u>(cmd,++port);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>207</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>208</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD>ȴ<EFBFBD>Ӳ<EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æ<EFBFBD><EFBFBD>־λ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>о<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾӲ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊæ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>209</span></u><span
|
||
lang=EN-US> static int <u><span style='color:blue'>drive_busy</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>210</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>211</span></u><span
|
||
lang=EN-US> unsigned int i;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>212</span></u><span
|
||
lang=EN-US> unsigned char c;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>213</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>HD_STATUS</span><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־λ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>æλ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æλ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>Ѱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>о<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾӲ<EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>214</span></u><span
|
||
lang=EN-US> for (i = 0; i <
|
||
50000; i++) {</span></p>
|
||
|
||
<p class=a><u><span
|
||
lang=EN-US style='color:blue'>215</span></u><span lang=EN-US>
|
||
c</span><span lang=EN-US> = <u><span style='color:blue'>inb_p</span></u>(<u><span
|
||
style='color:blue'>HD_STATUS</span></u>);
|
||
// </span>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD>ֽڡ<EFBFBD></p>
|
||
|
||
<p class=a><u><span
|
||
lang=EN-US style='color:blue'>216</span></u><span lang=EN-US>
|
||
c</span><span lang=EN-US> &= (<u><span style='color:blue'>BUSY_STAT</span></u>
|
||
| <u><span style='color:blue'>READY_STAT</span></u> | <u><span
|
||
style='color:blue'>SEEK_STAT</span></u>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>217</span></u><span
|
||
lang=EN-US>
|
||
if (c == (<u><span style='color:blue'>READY_STAT</span></u> | <u><span
|
||
style='color:blue'>SEEK_STAT</span></u>))</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>218</span></u><span
|
||
lang=EN-US>
|
||
return 0;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>219</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>220</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>printk</span></u>(<i>"HD controller times out\n\r"</i>);
|
||
// </span><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>221</span></u><span
|
||
lang=EN-US> return(1);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>222</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>223</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD><EFBFBD>ϸ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƼĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڣ<EFBFBD><span
|
||
lang=EN-US>0x3f6</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>4</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD>Ȼ<EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD>ղ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>һ<EFBFBD><EFBFBD>ʱ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö˿ڷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><span
|
||
lang=EN-US>(</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD><EFBFBD>ض<EFBFBD><span lang=EN-US>)</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD>Ӳ<EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>䲻<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾӲ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λʧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>224</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>reset_controller</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>225</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>226</span></u><span
|
||
lang=EN-US> int
|
||
i;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>227</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>228</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb</span></u>(4,<u><span style='color:blue'>HD_CMD</span></u>);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƼĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڷ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڡ<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>229</span></u><span
|
||
lang=EN-US> for(i = 0; i <
|
||
1000; i++) <u><span style='color:blue'>nop</span></u>();
|
||
// </span><EFBFBD>ȴ<EFBFBD>һ<EFBFBD><EFBFBD>ʱ<EFBFBD>䡣</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>230</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb</span></u>(<u><span style='color:blue'>hd_info</span></u>[0].ctl
|
||
& 0x0f ,<u><span
|
||
style='color:blue'>HD_CMD</span></u>); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><span
|
||
lang=EN-US>(</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD><EFBFBD>ض<EFBFBD><span lang=EN-US>)</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>231</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>drive_busy</span></u>())</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>232</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>printk</span></u>(<i>"HD-controller still
|
||
busy\n\r"</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>233</span></u><span
|
||
lang=EN-US> if ((i = <u><span
|
||
style='color:blue'>inb</span></u>(<u><span style='color:blue'>HD_ERROR</span></u>))
|
||
!= 1)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>234</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>printk</span></u>(<i>"HD-controller reset
|
||
failed: %02x\n\r"</i>,i);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>235</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>236</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span>Ӳ<EFBFBD≯<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ȸ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>237</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>reset_hd</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>238</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>239</span></u><span
|
||
lang=EN-US> static int i;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>240</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>־<span
|
||
lang=EN-US>reset</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڰѸ<EFBFBD>λ<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λӲ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ե<EFBFBD><span lang=EN-US>i</span><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>źš<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᱻ<EFBFBD>жϹ<EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD>ٴ<EFBFBD>ִ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>reset</span><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥִ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>246</span><EFBFBD>п<EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>䣬<EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // bad_rw_intr() </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>Ƴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>reset</span><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // reset</span><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><span
|
||
lang=EN-US>repeat</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>NR_HD</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>˷<EFBFBD><EFBFBD>͵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><span
|
||
lang=EN-US>do_hd_request()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>241</span></u><span
|
||
lang=EN-US> repeat:</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>242</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>reset</span></u>) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>243</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>reset</span></u> = 0;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>244</span></u><span
|
||
lang=EN-US>
|
||
i = -1;
|
||
// </span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰӲ<EFBFBD>̺ţ<EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>245</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>reset_controller</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>246</span></u><span
|
||
lang=EN-US> } else if (<u><span
|
||
style='color:blue'>win_result</span></u>()) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>247</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>bad_rw_intr</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>248</span></u><span
|
||
lang=EN-US>
|
||
if (<u><span style='color:blue'>reset</span></u>)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>249</span></u><span
|
||
lang=EN-US>
|
||
goto repeat;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>250</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>251</span></u><span
|
||
lang=EN-US> i++;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>252</span></u><span
|
||
lang=EN-US> if (i < <u><span
|
||
style='color:blue'>NR_HD</span></u>) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>253</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_out</span></u>(i,<u><span style='color:blue'>hd_info</span></u>[i].sect,<u><span
|
||
style='color:blue'>hd_info</span></u>[i].sect,<u><span style='color:blue'>hd_info</span></u>[i].<u><span
|
||
style='color:blue'>head</span></u>-1,</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>254</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_info</span></u>[i].cyl,<u><span
|
||
style='color:blue'>WIN_SPECIFY</span></u>,&<u><span style='color:blue'>reset_hd</span></u>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>255</span></u><span
|
||
lang=EN-US> } else</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>256</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>do_hd_request</span></u>();
|
||
// </span>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>257</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>258</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϵ<EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ʱ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD>õ<EFBFBD>Ĭ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>Ϊ</p>
|
||
|
||
<p class=a><span lang=EN-US> // NULL</span>ʱ<EFBFBD><EFBFBD><EFBFBD>øú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>kernel/sys_call.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>256</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><EFBFBD>־<span
|
||
lang=EN-US>reset</span><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>go_hd_request()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>259</span></u><span
|
||
lang=EN-US> void <u><span style='color:blue'>unexpected_hd_interrupt</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>260</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>261</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>printk</span></u>(<i>"Unexpected HD interrupt\n\r"</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>262</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>reset</span></u> = 1;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>263</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>do_hd_request</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>264</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>265</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD><EFBFBD>дӲ<EFBFBD><EFBFBD>ʧ<EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>7</span><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѵȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><EFBFBD>̣<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>Ҷ<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>־<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>и<EFBFBD><EFBFBD>¡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 3</span><EFBFBD>Σ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λӲ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>266</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>bad_rw_intr</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>267</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>268</span></u><span
|
||
lang=EN-US> if (++<u><span
|
||
style='color:blue'>CURRENT</span></u>->errors >= <u><span
|
||
style='color:blue'>MAX_ERRORS</span></u>)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>269</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>end_request</span></u>(0);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>270</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>CURRENT</span></u>->errors > <u><span
|
||
style='color:blue'>MAX_ERRORS</span></u>/2)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>271</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>reset</span></u> = 1;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>272</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>273</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϵ<EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>к<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>źţ<EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>е<EFBFBD><EFBFBD>õ<EFBFBD><span lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd</span><EFBFBD>Ѿ<EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>read_intr()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>ζ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ͻ<EFBFBD>ִ<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>274</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>read_intr</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>275</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϴ˴ζ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æ״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ִ<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD>ء<EFBFBD>ÿ<EFBFBD>ζ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼƣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>룬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>MAX_ERRORS</span><EFBFBD><EFBFBD><span lang=EN-US>7</span><EFBFBD>Σ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>276</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>win_result</span></u>()) {
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>277</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>bad_rw_intr</span></u>();
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>дӲ<EFBFBD><EFBFBD>ʧ<EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>278</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>do_hd_request</span></u>(); //
|
||
</span><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<span lang=EN-US>(</span><EFBFBD><EFBFBD>λ<span lang=EN-US>)</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>279</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>280</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>г<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿ڰ<EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ݼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US> 0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ûȡ<EFBFBD>꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϵ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>do_hd</span>Ϊ<span lang=EN-US>read_intr()</span><EFBFBD><EFBFBD>ֱ<EFBFBD>ӷ<EFBFBD><EFBFBD>أ<EFBFBD><EFBFBD>ȴ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ݺ<EFBFBD><EFBFBD>жϲ<EFBFBD><EFBFBD>ٴε<EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD>⣺<span
|
||
lang=EN-US>281</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><span lang=EN-US>256</span><EFBFBD><EFBFBD>ָ<EFBFBD>ڴ<EFBFBD><EFBFBD>֣<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>512</span><EFBFBD>ֽڡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ע<EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>262</span><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>do_hd</span>ָ<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>read_intr()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪӲ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ʱ<EFBFBD><EFBFBD><EFBFBD>Ὣ<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ÿա<EFBFBD><EFBFBD>μ<EFBFBD><span
|
||
lang=EN-US>sys_call.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>251<EFBFBD><EFBFBD>253</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>281</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>port_read</span></u>(<u><span style='color:blue'>HD_DATA</span></u>,<u><span
|
||
style='color:blue'>CURRENT</span></u>->buffer,256); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>282</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>CURRENT</span></u>->errors = 0;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>283</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>CURRENT</span></u>->buffer += 512;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬ָ<EFBFBD><EFBFBD><EFBFBD>µĿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>284</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>CURRENT</span></u>-><u><span style='color:blue'>sector</span></u>++;
|
||
// </span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ż<EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>285</span></u><span
|
||
lang=EN-US> if (--<u><span
|
||
style='color:blue'>CURRENT</span></u>->nr_sectors) {
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>286</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>SET_INTR</span></u>(&<u><span style='color:
|
||
blue'>read_intr</span></u>); // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>Ϊ<span lang=EN-US>read_intr()</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>287</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>288</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ִ<EFBFBD>е<EFBFBD><EFBFBD>ˣ<EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>end_request()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD> <20><><EFBFBD><EFBFBD>ٴε<D9B4><CEB5><EFBFBD> <span
|
||
lang=EN-US>do_hd_request()</span><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>289</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>end_request</span></u>(1);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD><EFBFBD>±<EFBFBD>־<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>290</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>do_hd_request</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>291</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>292</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϵ<EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>read_intr()</span><EFBFBD><EFBFBD><EFBFBD>ơ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>к<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>źţ<EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>е<EFBFBD><EFBFBD>õ<EFBFBD><span lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd</span><EFBFBD>Ѿ<EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>write_intr()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ͻ<EFBFBD>ִ<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>293</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>write_intr</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>294</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϴ˴<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>æ״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>ִ<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD>ء<EFBFBD><EFBFBD><EFBFBD> <span
|
||
lang=EN-US>bad_rw_intr() </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>ÿ<EFBFBD>β<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼƣ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>룬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>MAX_ERRORS</span><EFBFBD><EFBFBD><span lang=EN-US>7</span><EFBFBD>Σ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd_request()</span><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>־</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>״̬<EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD>ټ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>295</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>win_result</span></u>()) {
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>296</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>bad_rw_intr</span></u>();
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD>дʧ<EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>297</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>do_hd_request</span></u>();
|
||
// </span><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<span lang=EN-US>(</span><EFBFBD><EFBFBD>λ<span
|
||
lang=EN-US>)</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>298</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>299</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ʱ˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䲻Ϊ<span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ҫд<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰѵ<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US> +1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD>õ<EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>do_hd</span><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ˿<EFBFBD>д<EFBFBD><EFBFBD><span
|
||
lang=EN-US>512</span><EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD>Ӳ<EFBFBD>̺<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϡ<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>300</span></u><span
|
||
lang=EN-US> if (--<u><span
|
||
style='color:blue'>CURRENT</span></u>->nr_sectors) {
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫд<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>301</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>CURRENT</span></u>-><u><span style='color:blue'>sector</span></u>++;
|
||
// </span><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>+1</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>302</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>CURRENT</span></u>->buffer += 512; //
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>룬</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>303</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>SET_INTR</span></u>(&<u><span style='color:
|
||
blue'>write_intr</span></u>); // do_hd</span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>Ϊ<span
|
||
lang=EN-US>write_intr()</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>304</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>port_write</span></u>(<u><span style='color:blue'>HD_DATA</span></u>,<u><span
|
||
style='color:blue'>CURRENT</span></u>->buffer,256); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ˿<EFBFBD>д<span
|
||
lang=EN-US>256</span><EFBFBD>֡<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>305</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>306</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD>д<EFBFBD>꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>end_request()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٴε<EFBFBD><EFBFBD><EFBFBD> <span
|
||
lang=EN-US>do_hd_request()</span><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>307</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>end_request</span></u>(1);
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD><EFBFBD>±<EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>308</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>do_hd_request</span></u>();
|
||
//
|
||
</span>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>309</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>310</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>жϵ<EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD>дʧ<EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <span
|
||
lang=EN-US>bad_rw_intr() </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>ÿ<EFBFBD>β<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ۼƣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>룬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ӳ<EFBFBD≯<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>MAX_ERRORS</span><EFBFBD><EFBFBD><span lang=EN-US>7</span><EFBFBD>Σ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>do_hd_request() </span><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ı<EFBFBD>־״̬<EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD>ټ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>311</span></u><span
|
||
lang=EN-US> static void <u><span style='color:blue'>recal_intr</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>312</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>313</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>win_result</span></u>())
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>bad_rw_intr()</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>314</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>bad_rw_intr</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>315</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>do_hd_request</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>316</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>317</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>do_timer()</span><EFBFBD>У<EFBFBD><span
|
||
lang=EN-US>kernel/sched.c</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>340</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ھ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd_timeout</span><EFBFBD><EFBFBD>ϵͳ<EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>з<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>źţ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<span
|
||
lang=EN-US>do_timer()</span><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><EFBFBD>־<span lang=EN-US>reset</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>do_hd_request()</span>ִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><span
|
||
lang=EN-US>200</span><EFBFBD>δ<EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>жϲ<EFBFBD><EFBFBD><EFBFBD>ʼִ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<span
|
||
lang=EN-US>ht_timeout</span>ֵ<EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ʱ<span lang=EN-US>do_timer()</span><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>318</span></u><span
|
||
lang=EN-US> void <u><span style='color:blue'>hd_times_out</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>319</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>Ϊ<span
|
||
lang=EN-US>NULL</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD>ֱ<EFBFBD>ӷ<EFBFBD><EFBFBD>ء<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD>жϵ<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>趨ֵ</p>
|
||
|
||
<p class=a><span lang=EN-US> // MAX_ERRORS</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>7</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><EFBFBD>±<EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD>õ<EFBFBD><span
|
||
lang=EN-US>C</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><span lang=EN-US>do_hd</span><EFBFBD>ÿգ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><EFBFBD>־<span lang=EN-US>reset</span><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>do_hd_request()</span><EFBFBD><EFBFBD>ȥִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>320</span></u><span
|
||
lang=EN-US> if (!<u><span
|
||
style='color:blue'>CURRENT</span></u>)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>321</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>322</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>printk</span></u>(<i>"HD timeout"</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>323</span></u><span
|
||
lang=EN-US> if (++<u><span
|
||
style='color:blue'>CURRENT</span></u>->errors >= <u><span
|
||
style='color:blue'>MAX_ERRORS</span></u>)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>324</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>end_request</span></u>(0);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>325</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>SET_INTR</span></u>(<u><span style='color:blue'>NULL</span></u>);
|
||
// </span><EFBFBD><EFBFBD><span lang=EN-US>do_hd = NULL,time_out=200</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>326</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>reset</span></u> = 1;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>327</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>do_hd_request</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>328</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>329</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> //// </span>ִ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD>豸<EFBFBD>ź<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>ӦӲ<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ǰ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>READ/WRITE</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>/</span>д<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD>ȥִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ǿ<EFBFBD><EFBFBD>豸<EFBFBD>ĵ<EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><span lang=EN-US>ll_rw_blk.c</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>28</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>ж<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ɶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>жϹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>μ<EFBFBD><span lang=EN-US>kernel/sys_call.s</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>235</span><EFBFBD>С<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>330</span></u><span
|
||
lang=EN-US> void <u><span style='color:blue'>do_hd_request</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>331</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>332</span></u><span
|
||
lang=EN-US> int i,r;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>333</span></u><span
|
||
lang=EN-US> unsigned int
|
||
block,dev;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>334</span></u><span
|
||
lang=EN-US> unsigned int sec,<u><span
|
||
style='color:blue'>head</span></u>,cyl;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>335</span></u><span
|
||
lang=EN-US> unsigned int nsect;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>336</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺϷ<EFBFBD><EFBFBD>ԡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><span
|
||
lang=EN-US>blk.h</span><EFBFBD><EFBFBD><span lang=EN-US>127</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD><EFBFBD>ȡ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ţ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ŵ<EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD>ʼ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD>ӦӲ<EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>-2</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>repeat</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>INIT_REQUEST</span><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>һ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>дһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><span
|
||
lang=EN-US>2</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>1024</span><EFBFBD>ֽڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><EFBFBD>ܴ<EFBFBD><EFBFBD>ڷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD>Ȼ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>Ŷ<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><EFBFBD>Ͱ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>д<EFBFBD>Ŀ<EFBFBD><EFBFBD>Ӧ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̵ľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>block</span><EFBFBD>ϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ű<EFBFBD><span lang=EN-US>5</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵõ<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̺š<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>337</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>INIT_REQUEST</span></u>;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>338</span></u><span
|
||
lang=EN-US> dev = <u><span
|
||
style='color:blue'>MINOR</span></u>(<u><span style='color:blue'>CURRENT</span></u>->dev);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>339</span></u><span
|
||
lang=EN-US> block = <u><span
|
||
style='color:blue'>CURRENT</span></u>-><u><span style='color:blue'>sector</span></u>;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>340</span></u><span
|
||
lang=EN-US> if (dev >= 5*<u><span
|
||
style='color:blue'>NR_HD</span></u> || block+2 > <u><span style='color:blue'>hd</span></u>[dev].nr_sects)
|
||
{</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>341</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>end_request</span></u>(0);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>342</span></u><span
|
||
lang=EN-US>
|
||
goto repeat;
|
||
// </span><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>blk.h</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>档</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>343</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>344</span></u><span
|
||
lang=EN-US> block += <u><span
|
||
style='color:blue'>hd</span></u>[dev].start_sect;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>345</span></u><span
|
||
lang=EN-US> dev /= 5;
|
||
// </span><EFBFBD><EFBFBD>ʱ<span lang=EN-US>dev</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̺ţ<EFBFBD>Ӳ<EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><span
|
||
lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õľ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>block</span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̺<EFBFBD><span lang=EN-US>dev</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǾͿ<EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӦӲ<EFBFBD><EFBFBD><EFBFBD>еĴŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><span lang=EN-US>sec</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><span
|
||
lang=EN-US>cyl</span><EFBFBD><EFBFBD> <20>ʹ<EFBFBD>ͷ<EFBFBD>ţ<EFBFBD><span lang=EN-US>head</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ƕ<EFBFBD><C7B6>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>뼴<EFBFBD><EBBCB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ṹ<EFBFBD>е<EFBFBD>ÿ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̴<EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㷽<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 310--311</span><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼʱ<span
|
||
lang=EN-US>eax</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>block</span><EFBFBD><EFBFBD><span lang=EN-US>edx</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD><span lang=EN-US>divl</span>ָ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>edx:eax</span><EFBFBD><EFBFBD>ɵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd_info[dev].sect</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><span lang=EN-US>eax</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>edx</span><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>eax</span><EFBFBD><EFBFBD><EFBFBD>ǵ<EFBFBD>ָ<EFBFBD><EFBFBD>λ<EFBFBD>õĶ<EFBFBD>Ӧ<EFBFBD>ܴŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>ͷ<EFBFBD>棩<EFBFBD><EFBFBD><span
|
||
lang=EN-US>edx</span><EFBFBD><EFBFBD><EFBFBD>ǵ<EFBFBD>ǰ<EFBFBD>ŵ<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // 312--313</span><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼʱ<span
|
||
lang=EN-US>eax</span><EFBFBD>Ǽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD>Ӧ<EFBFBD>ܴŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>edx</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>0</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>divl</span>ָ<EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>edx:eax</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>Ķ<EFBFBD>Ӧ<EFBFBD>ܴŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>hd_info[dev].head</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>eax</span><EFBFBD>еõ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ţ<EFBFBD><span lang=EN-US>cyl</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>edx</span><EFBFBD>еõ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>Ӧ<EFBFBD>õ<EFBFBD>ǰ<EFBFBD><EFBFBD>ͷ<EFBFBD>ţ<EFBFBD><span lang=EN-US>head</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>346</span></u><span
|
||
lang=EN-US> __asm__(<i>"divl
|
||
%4"</i>:<i>"=a"</i> (block),<i>"=d"</i> (sec):<i>"0"</i>
|
||
(block),<i>"1"</i> (0),</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>347</span></u><span
|
||
lang=EN-US>
|
||
<i>"r"</i> (<u><span style='color:blue'>hd_info</span></u>[dev].sect));</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>348</span></u><span
|
||
lang=EN-US> __asm__(<i>"divl
|
||
%4"</i>:<i>"=a"</i> (cyl),<i>"=d"</i> (<u><span
|
||
style='color:blue'>head</span></u>):<i>"0"</i> (block),<i>"1"</i>
|
||
(0),</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>349</span></u><span
|
||
lang=EN-US>
|
||
<i>"r"</i> (<u><span style='color:blue'>hd_info</span></u>[dev].<u><span
|
||
style='color:blue'>head</span></u>));</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>350</span></u><span
|
||
lang=EN-US> sec++;
|
||
// </span><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD>ǰ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ž<EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>351</span></u><span
|
||
lang=EN-US> nsect = <u><span
|
||
style='color:blue'>CURRENT</span></u>->nr_sectors; //
|
||
</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>/</span>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ǵõ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>block</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><span lang=EN-US>cyl</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>ǰ<EFBFBD>ŵ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD><span
|
||
lang=EN-US>sec</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ţ<EFBFBD><span lang=EN-US>head</span><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>nsect</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>Ը<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>I/O</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ˡ<EFBFBD> <20><><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>֮ǰ<D6AE><C7B0><EFBFBD>ǻ<EFBFBD><C7BB><EFBFBD>Ҫ<EFBFBD>ȿ<EFBFBD><C8BF><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>и<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD>Ӳ<EFBFBD>̵ı<EFBFBD>־<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD>Ӳ<EFBFBD>̴<EFBFBD>ͷλ<EFBFBD>á<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD>־<EFBFBD>ѱ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD>һ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ӳ<EFBFBD>̶<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>¸<EFBFBD>λӲ<CEBB>̻<EFBFBD><CCBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3>Ӳ<EFBFBD>̡<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>־<span
|
||
lang=EN-US>reset</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫִ<EFBFBD>и<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λӲ<EFBFBD>̺Ϳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD><span
|
||
lang=EN-US>reset_hd()</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>352</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>reset</span></u>) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>353</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>recalibrate</span></u> = 1;
|
||
// </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>354</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>reset_hd</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>355</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>356</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><span
|
||
lang=EN-US>recalibrate</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȸ<EFBFBD>λ<EFBFBD>ñ<EFBFBD>־<EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD>Ѱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD>κεط<EFBFBD><EFBFBD>Ĵ<EFBFBD>ͷ<EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>0</span><EFBFBD><EFBFBD><EFBFBD>档</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>357</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>recalibrate</span></u>) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>358</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>recalibrate</span></u> = 0;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>359</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_out</span></u>(dev,<u><span style='color:blue'>hd_info</span></u>[<u><span
|
||
style='color:blue'>CURRENT_DEV</span></u>].sect,0,0,0,</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>360</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>WIN_RESTORE</span></u>,&<u><span
|
||
style='color:blue'>recal_intr</span></u>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>361</span></u><span
|
||
lang=EN-US>
|
||
return;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>362</span></u><span
|
||
lang=EN-US>
|
||
} </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD>ǾͿ<EFBFBD><EFBFBD>Կ<EFBFBD>ʼ<EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ<EFBFBD><span
|
||
lang=EN-US>/</span>д</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ״̬<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<span
|
||
lang=EN-US>DRQ_STAT</span><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><span lang=EN-US>DRQ_STAT</span><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD>״̬<EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ˿<EFBFBD>֮<EFBFBD>䴫<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ֽڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD>ⷽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ɲ<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>/</span>дʱ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>DRQ</span><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ȵ<EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD>Ҳû<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>Ҫ<EFBFBD><EFBFBD>дӲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ</p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǾͿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼĴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><span
|
||
lang=EN-US>HD_DATA</span>д<EFBFBD><EFBFBD><span lang=EN-US>1</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>363</span></u><span
|
||
lang=EN-US> if (<u><span
|
||
style='color:blue'>CURRENT</span></u>->cmd == <u><span style='color:blue'>WRITE</span></u>)
|
||
{</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>364</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_out</span></u>(dev,nsect,sec,<u><span
|
||
style='color:blue'>head</span></u>,cyl,<u><span style='color:blue'>WIN_WRITE</span></u>,&<u><span
|
||
style='color:blue'>write_intr</span></u>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>365</span></u><span
|
||
lang=EN-US>
|
||
for(i=0 ; i<10000 && !(r=<u><span style='color:blue'>inb_p</span></u>(<u><span
|
||
style='color:blue'>HD_STATUS</span></u>)&<u><span style='color:blue'>DRQ_STAT</span></u>)
|
||
; i++)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>366</span></u><span
|
||
lang=EN-US>
|
||
<b><i>/* nothing */</i></b> ;</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>367</span></u><span
|
||
lang=EN-US>
|
||
if (!r) {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>368</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>bad_rw_intr</span></u>();</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>369</span></u><span
|
||
lang=EN-US>
|
||
goto repeat;
|
||
// </span><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>blk.h</span><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>档</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>370</span></u><span
|
||
lang=EN-US>
|
||
}</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>371</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>port_write</span></u>(<u><span style='color:blue'>HD_DATA</span></u>,<u><span
|
||
style='color:blue'>CURRENT</span></u>->buffer,256);</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>372</span></u><span
|
||
lang=EN-US> } else if (<u><span
|
||
style='color:blue'>CURRENT</span></u>->cmd == <u><span style='color:blue'>READ</span></u>)
|
||
{</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>373</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>hd_out</span></u>(dev,nsect,sec,<u><span
|
||
style='color:blue'>head</span></u>,cyl,<u><span style='color:blue'>WIN_READ</span></u>,&<u><span
|
||
style='color:blue'>read_intr</span></u>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>374</span></u><span
|
||
lang=EN-US> } else</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>375</span></u><span
|
||
lang=EN-US>
|
||
<u><span style='color:blue'>panic</span></u>(<i>"unknown hd-command"</i>);</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>376</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>377</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źš<EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>Ϊ<span
|
||
lang=EN-US>do_hd_request()</span><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>hd_interrupt</span><EFBFBD><EFBFBD><span
|
||
lang=EN-US>kernel/sys_call.s</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span lang=EN-US>235</span><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD>ַ<EFBFBD><EFBFBD> Ӳ<><D3B2><EFBFBD>жϺ<D0B6></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ϊ<span lang=EN-US>int
|
||
0x2E</span><EFBFBD><EFBFBD><span lang=EN-US>46</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<span
|
||
lang=EN-US>8259A</span>оƬ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD><span lang=EN-US>IRQ13</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ÿ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>8259A</span><span lang=EN-US> int2</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źš<EFBFBD><EFBFBD>ٸ<EFBFBD>λӲ<EFBFBD>̵<EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>Ƭ<EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span>Ӳ<EFBFBD>̿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>źš<EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>IDT</span><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><span lang=EN-US>set_intr_gate()</span></p>
|
||
|
||
<p class=a><span lang=EN-US> // </span><EFBFBD><EFBFBD><span lang=EN-US>include/asm/system.h</span><EFBFBD><EFBFBD>ʵ<EFBFBD>֡<EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>378</span></u><span
|
||
lang=EN-US> void <u><span style='color:blue'>hd_init</span></u>(void)</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>379</span></u><span
|
||
lang=EN-US> {</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>380</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>blk_dev</span></u>[<u><span style='color:blue'>MAJOR_NR</span></u>].request_fn
|
||
= <u><span style='color:blue'>DEVICE_REQUEST</span></u>;
|
||
// do_hd_request()</span><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>381</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>set_intr_gate</span></u>(0x2E,&<u><span
|
||
style='color:blue'>hd_interrupt</span></u>); // </span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>롣</p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>382</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb_p</span></u>(<u><span style='color:blue'>inb_p</span></u>(0x21)&0xfb,0x21);
|
||
// </span><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><span
|
||
lang=EN-US>8259A</span><span lang=EN-US> int2</span><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>383</span></u><span
|
||
lang=EN-US> <u><span
|
||
style='color:blue'>outb</span></u>(<u><span style='color:blue'>inb_p</span></u>(0xA1)&0xbf,0xA1);
|
||
// </span><EFBFBD><EFBFBD>λӲ<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>Ƭ<EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>384</span></u><span
|
||
lang=EN-US> }</span></p>
|
||
|
||
<p class=a><u><span lang=EN-US style='color:blue'>385</span></u><span
|
||
lang=EN-US> </span></p>
|
||
|
||
<div class=a align=center style='text-align:center'><span lang=EN-US>
|
||
|
||
<hr size=4 width="100%" align=center>
|
||
|
||
</span></div>
|
||
|
||
<p class=MsoNormal><span lang=EN-US> </span></p>
|
||
|
||
</div>
|
||
|
||
</body>
|
||
|
||
</html>
|