Rev 598 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
657 | diamond | 1 | ; (english text below) |
2 | |||
598 | spraid | 3 | ;------------------------------------------ |
657 | diamond | 4 | ; Интерфейс сохранения параметров |
5 | ;------------------------------------------ |
||
6 | Если при передаче управления ядру загрузчик устанавливает AX='KL', |
||
7 | то в DS:SI ядро ожидает дальнего указателя на следующую структуру: |
||
8 | db версия структуры, должна быть 1 |
||
9 | dw флаги: |
||
10 | бит 0 установлен = присутствует образ рамдиска в памяти |
||
11 | dd дальний указатель на процедуру сохранения параметров |
||
12 | может быть 0, если загрузчик не поддерживает |
||
13 | Процедура сохранения параметров должна записать первый сектор ядра |
||
14 | kernel.mnt назад на то место, откуда она его считала; возврат из |
||
15 | процедуры осуществляется по retf. |
||
16 | |||
17 | ;------------------------------------------ |
||
598 | spraid | 18 | ; Указание загрузчиком системного каталога |
19 | ;------------------------------------------ |
||
657 | diamond | 20 | Перед передачей управления ядру могут быть установлены следующие регистры: |
598 | spraid | 21 | CX='HA' |
22 | DX='RD' |
||
23 | Это указывает на то, что регистр BX указывает на системный раздел. Каталог /kolibri/ на |
||
24 | этом разделе является системным, к нему можно обращаться как к /sys/ |
||
25 | |||
26 | Возможные значения регистра BL (указывает на устройство): |
||
27 | 'a' - Primary Master |
||
28 | 'b' - Primary Slave |
||
29 | 'c' - Secondary Master |
||
30 | 'd' - Secondary Slave |
||
31 | 'r' - RAM диск |
||
32 | 'm' - Приводы CD-ROM |
||
33 | |||
34 | Возможные значения регистра BH (указывает на раздел): |
||
657 | diamond | 35 | для BL='a','b','c','d','r' - указывает на раздел, где расположен системный каталог |
598 | spraid | 36 | для BL='m',указывает на номер физического устройства, с которого надо начинать поиск системного каталога. |
37 | |||
38 | примеры значений регистра BX: |
||
39 | 'a1' - /hd0/1/ |
||
40 | 'a2' - /hd0/2/ |
||
41 | 'b1' - /hd1/1/ |
||
42 | 'd4' - /hd3/4/ |
||
43 | 'm0' - поиск по сидюкам каталога kolibri |
||
44 | 'r1' - /rd/1/ |
||
45 | |||
46 | |||
657 | diamond | 47 | ;------------------------------------------ |
48 | ; Interface for saving boot-screen settings |
||
49 | ;------------------------------------------ |
||
50 | If a loader sets AX='KL' when transferring control to the kernel, |
||
51 | the kernel expects in DS:SI far pointer to the following structure: |
||
52 | db structure version, must be 1 |
||
53 | dw flags |
||
54 | bit 0 set = ramdisk image in memory is present |
||
55 | dd far pointer to save settings procedure |
||
56 | may be 0 if such procedure is not supported by loader |
||
57 | Procedure for saving settings must write the first sector of the kernel |
||
58 | kernel.mnt back to the place, from where it has been read; return from |
||
59 | this procedure must be with retf. |
||
598 | spraid | 60 | |
61 | ;------------------------------------------ |
||
657 | diamond | 62 | ; System directory information from loader |
598 | spraid | 63 | ;------------------------------------------ |
657 | diamond | 64 | Before transfer of control to the kernel following registers can be set: |
598 | spraid | 65 | CX = 'HA' |
66 | DX = 'RD' |
||
657 | diamond | 67 | This indicates that the register BX identifies system partition. The folder /kolibri/ in |
68 | this partition is system folder, it can be referenced as /sys/ |
||
598 | spraid | 69 | |
657 | diamond | 70 | Possible values for register BL (indicates the device): |
598 | spraid | 71 | 'a' - Primary Master |
72 | 'b' - Primary Slave |
||
73 | 'c' - Secondary Master |
||
74 | 'd' - Secondary Slave |
||
75 | 'r' - RAM disc |
||
76 | 'm' - ROM drives |
||
77 | |||
657 | diamond | 78 | Possible values for register BH (indicates section): |
79 | for BL = 'a', 'b', 'c', 'd', 'r' to denote partition where the system folder |
||
598 | spraid | 80 | for BL = 'm', indicates the number of physical devices, which must begin a systematic search directory. |
81 | |||
82 | Examples of register BX: |
||
83 | 'a1' - /hd0/1/ |
||
84 | 'a2' - /hd0/2/ |
||
85 | 'b1' - /hd1/1/ |
||
86 | 'd4' - /hd3/4/ |
||
657 | diamond | 87 | 'm0' - search directory 'kolibri' by all CD-ROMs |
598 | spraid | 88 | 'r1' - /rd/1/ |