📄 wini.c
字号:
/* wini.c - choose a winchester driver. Author: Kees J. Bot
* 28 May 1994
* Several different winchester drivers may be compiled
* into the kernel, but only one may run. That one is chosen here using
* the boot variable 'hd'.
*/
#include "kernel.h"
#include "driver.h"
#if ENABLE_WINI
/* Map driver name to task function. */
struct hdmap {
char *name;
task_t *task;
} hdmap[] = {
#if ENABLE_AT_WINI
{ "at", at_winchester_task },
#endif
#if ENABLE_BIOS_WINI
{ "bios", bios_winchester_task },
#endif
#if ENABLE_ESDI_WINI
{ "esdi", esdi_winchester_task },
#endif
#if ENABLE_XT_WINI
{ "xt", xt_winchester_task },
#endif
};
/*===========================================================================*
* winchester_task *
*===========================================================================*/
PUBLIC void winchester_task()
{
/* Call the default or selected winchester task. */
char *hd;
struct hdmap *map;
hd = k_getenv("hd");
for (map = hdmap; map < hdmap + sizeof(hdmap)/sizeof(hdmap[0]); map++) {
if (hd == NULL || strcmp(hd, map->name) == 0) {
/* Run the selected winchester task. */
(*map->task)();
}
}
panic("no hd driver", NO_NUM);
}
#endif /* ENABLE_WINI */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -