48 lines
No EOL
1.5 KiB
HolyC
48 lines
No EOL
1.5 KiB
HolyC
U0 Install() {
|
|
"Primary IDE base0 (0x01F0): ";
|
|
U8 *pri_base0 = GetStr;
|
|
if (!StrCmp(pri_base0, ""))
|
|
pri_base0 = "0x01F0";
|
|
"Primary IDE base1 (0x03F6): ";
|
|
U8 *pri_base1 = GetStr;
|
|
if (!StrCmp(pri_base1, ""))
|
|
pri_base1 = "0x03F6";
|
|
"Secondary IDE base0 (0x0170): ";
|
|
U8 *sec_base0 = GetStr;
|
|
if (!StrCmp(sec_base0, ""))
|
|
sec_base0 = "0x0170";
|
|
"Secondary IDE base1 (0x0376): ";
|
|
U8 *sec_base1 = GetStr;
|
|
if (!StrCmp(sec_base1, ""))
|
|
sec_base1 = "0x0376";
|
|
Copy("T:/KMain.HC", "::/Kernel/KMain.HC");
|
|
Copy("T:/Src/DskAddDev.HC", "::/Kernel/BlkDev/DskAddDev.HC.Z");
|
|
Copy("T:/Src/DskATA.HC", "::/Kernel/BlkDev/DskATA.HC.Z");
|
|
Copy("T:/Src/BootHelper.HC", "::/Home/BootHelper.HC.Z");
|
|
CDoc *doc1 = DocNew("::/Kernel/BlkDev/DskATAId.HC.Z");
|
|
CDoc *doc2 = DocRead("T:/Src/DskATAId.HC");
|
|
DocPrint(doc1, "#define BMIK_PRI_BASE0 %s\n", pri_base0);
|
|
DocPrint(doc1, "#define BMIK_PRI_BASE1 %s\n", pri_base1);
|
|
DocPrint(doc1, "#define BMIK_SEC_BASE0 %s\n", sec_base0);
|
|
DocPrint(doc1, "#define BMIK_SEC_BASE1 %s\n", sec_base1);
|
|
DocInsDoc(doc1, doc2);
|
|
DocDel(doc2);
|
|
DocWrite(doc1);
|
|
DocDel(doc1);
|
|
doc1 = DocNew("::/Home/Once.HC.Z");
|
|
doc2 = DocRead("::/Home/Once.HC.Z");
|
|
DocPrint(doc1, "#include \"BootHelper\"\n\n");
|
|
DocInsDoc(doc1, doc2);
|
|
DocDel(doc2);
|
|
DocWrite(doc1);
|
|
DocDel(doc1);
|
|
XTalkWait(Fs, "Cd;\n");
|
|
XTalkWait(Fs, "BootHDIns;\n");
|
|
XTalkWait(Fs, "\n");
|
|
XTalkWait(Fs, "C\ns");
|
|
XTalkWait(Fs, "0x01F0\n");
|
|
XTalkWait(Fs, "0x03F6\n");
|
|
XTalkWait(Fs, "0\n\n\n");
|
|
}
|
|
|
|
Install; |