Subversion Repositories Kolibri OS

Rev

Rev 2465 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2465 Rev 3555
1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                                                              ;;
2
;;                                                              ;;
3
;; Copyright (C) KolibriOS team 2004-2011. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2011. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
7
 
7
 
8
; (english text below)
8
; (english text below)
9
 
9
 
10
;------------------------------------------
10
;------------------------------------------
11
; Èíòåðôåéñ ñîõðàíåíèÿ ïàðàìåòðîâ
11
; Интерфейс сохранения параметров
12
;------------------------------------------
12
;------------------------------------------
13
Åñëè ïðè ïåðåäà÷å óïðàâëåíèÿ ÿäðó çàãðóç÷èê óñòàíàâëèâàåò AX='KL',
13
Если при передаче управления ядру загрузчик устанавливает AX='KL',
14
òî â DS:SI ÿäðî îæèäàåò äàëüíåãî óêàçàòåëÿ íà ñëåäóþùóþ ñòðóêòóðó:
14
то в DS:SI ядро ожидает дальнего указателя на следующую структуру:
15
        db      âåðñèÿ ñòðóêòóðû, äîëæíà áûòü 1
15
        db      версия структуры, должна быть 1
16
        dw      ôëàãè:
16
        dw      флаги:
17
                áèò 0 óñòàíîâëåí = ïðèñóòñòâóåò îáðàç ðàìäèñêà â ïàìÿòè
17
                бит 0 установлен = присутствует образ рамдиска в памяти
18
        dd      äàëüíèé óêàçàòåëü íà ïðîöåäóðó ñîõðàíåíèÿ ïàðàìåòðîâ
18
        dd      дальний указатель на процедуру сохранения параметров
19
                ìîæåò áûòü 0, åñëè çàãðóç÷èê íå ïîääåðæèâàåò
19
                может быть 0, если загрузчик не поддерживает
20
Ïðîöåäóðà ñîõðàíåíèÿ ïàðàìåòðîâ äîëæíà çàïèñàòü ïåðâûé ñåêòîð ÿäðà
20
Процедура сохранения параметров должна записать первый сектор ядра
21
kernel.mnt íàçàä íà òî ìåñòî, îòêóäà îíà åãî ñ÷èòàëà; âîçâðàò èç
21
kernel.mnt назад на то место, откуда она его считала; возврат из
22
ïðîöåäóðû îñóùåñòâëÿåòñÿ ïî retf.
22
процедуры осуществляется по retf.
23
 
23
 
24
;------------------------------------------
24
;------------------------------------------
25
; Óêàçàíèå çàãðóç÷èêîì ñèñòåìíîãî êàòàëîãà
25
; Указание загрузчиком системного каталога
26
;------------------------------------------
26
;------------------------------------------
27
Ïåðåä ïåðåäà÷åé óïðàâëåíèÿ ÿäðó ìîãóò áûòü óñòàíîâëåíû ñëåäóþùèå ðåãèñòðû:
27
Перед передачей управления ядру могут быть установлены следующие регистры:
28
CX='HA'
28
CX='HA'
29
DX='RD'
29
DX='RD'
30
Ýòî óêàçûâàåò íà òî, ÷òî ðåãèñòð BX óêàçûâàåò íà ñèñòåìíûé ðàçäåë. Êàòàëîã /kolibri/ íà
30
Это указывает на то, что регистр BX указывает на системный раздел. Каталог /kolibri/ на
31
ýòîì ðàçäåëå ÿâëÿåòñÿ ñèñòåìíûì, ê íåìó ìîæíî îáðàùàòüñÿ êàê ê /sys/
31
этом разделе является системным, к нему можно обращаться как к /sys/
32
 
32
 
33
Âîçìîæíûå çíà÷åíèÿ ðåãèñòðà BL (óêàçûâàåò íà óñòðîéñòâî):
33
Возможные значения регистра BL (указывает на устройство):
34
'a' - Primary   Master
34
'a' - Primary   Master
35
'b' - Primary   Slave
35
'b' - Primary   Slave
36
'c' - Secondary Master
36
'c' - Secondary Master
37
'd' - Secondary Slave
37
'd' - Secondary Slave
38
'r' - RAM äèñê
38
'r' - RAM диск
39
'm' - Ïðèâîäû CD-ROM
39
'm' - Приводы CD-ROM
40
 
40
 
41
Âîçìîæíûå çíà÷åíèÿ ðåãèñòðà BH (óêàçûâàåò íà ðàçäåë):
41
Возможные значения регистра BH (указывает на раздел):
42
äëÿ BL='a','b','c','d','r' - óêàçûâàåò íà ðàçäåë, ãäå ðàñïîëîæåí ñèñòåìíûé êàòàëîã
42
для BL='a','b','c','d','r' - указывает на раздел, где расположен системный каталог
43
äëÿ BL='m',óêàçûâàåò íà íîìåð ôèçè÷åñêîãî óñòðîéñòâà, ñ êîòîðîãî íàäî íà÷èíàòü ïîèñê ñèñòåìíîãî êàòàëîãà.
43
для BL='m',указывает на номер физического устройства, с которого надо начинать поиск системного каталога.
44
 
44
 
45
ïðèìåðû çíà÷åíèé ðåãèñòðà BX:
45
примеры значений регистра BX:
46
'a1' - /hd0/1/
46
'a1' - /hd0/1/
47
'a2' - /hd0/2/
47
'a2' - /hd0/2/
48
'b1' - /hd1/1/
48
'b1' - /hd1/1/
49
'd4' - /hd3/4/
49
'd4' - /hd3/4/
50
'm0' - ïîèñê ïî ñèäþêàì êàòàëîãà kolibri
50
'm0' - поиск по сидюкам каталога kolibri
51
'r1' - /rd/1/
51
'r1' - /rd/1/
52
 
52
 
53
 
53
 
54
;------------------------------------------
54
;------------------------------------------
55
; Interface for saving boot-screen settings
55
; Interface for saving boot-screen settings
56
;------------------------------------------
56
;------------------------------------------
57
If a loader sets AX='KL' when transferring control to the kernel,
57
If a loader sets AX='KL' when transferring control to the kernel,
58
the kernel expects in DS:SI far pointer to the following structure:
58
the kernel expects in DS:SI far pointer to the following structure:
59
        db      structure version, must be 1
59
        db      structure version, must be 1
60
        dw      flags
60
        dw      flags
61
                bit 0 set = ramdisk image in memory is present
61
                bit 0 set = ramdisk image in memory is present
62
        dd      far pointer to save settings procedure
62
        dd      far pointer to save settings procedure
63
                may be 0 if such procedure is not supported by loader
63
                may be 0 if such procedure is not supported by loader
64
Procedure for saving settings must write the first sector of the kernel
64
Procedure for saving settings must write the first sector of the kernel
65
kernel.mnt back to the place, from where it has been read; return from
65
kernel.mnt back to the place, from where it has been read; return from
66
this procedure must be with retf.
66
this procedure must be with retf.
67
 
67
 
68
;------------------------------------------ 
68
;------------------------------------------ 
69
; System directory information from loader
69
; System directory information from loader
70
;------------------------------------------ 
70
;------------------------------------------ 
71
Before transfer of control to the kernel following registers can be set:
71
Before transfer of control to the kernel following registers can be set:
72
CX = 'HA'
72
CX = 'HA'
73
DX = 'RD'
73
DX = 'RD'
74
This indicates that the register BX identifies system partition. The folder /kolibri/ in
74
This indicates that the register BX identifies system partition. The folder /kolibri/ in
75
this partition is system folder, it can be referenced as /sys/
75
this partition is system folder, it can be referenced as /sys/
76
 
76
 
77
Possible values for register BL (indicates the device):
77
Possible values for register BL (indicates the device):
78
'a' - Primary Master
78
'a' - Primary Master
79
'b' - Primary Slave
79
'b' - Primary Slave
80
'c' - Secondary Master
80
'c' - Secondary Master
81
'd' - Secondary Slave
81
'd' - Secondary Slave
82
'r' - RAM disc
82
'r' - RAM disc
83
'm' - ROM drives
83
'm' - ROM drives
84
 
84
 
85
Possible values for register BH (indicates section):
85
Possible values for register BH (indicates section):
86
for BL = 'a', 'b', 'c', 'd', 'r' to denote partition where the system folder
86
for BL = 'a', 'b', 'c', 'd', 'r' to denote partition where the system folder
87
for BL = 'm', indicates the number of physical devices, which must begin a systematic search directory.
87
for BL = 'm', indicates the number of physical devices, which must begin a systematic search directory.
88
 
88
 
89
Examples of register BX:
89
Examples of register BX:
90
'a1' - /hd0/1/
90
'a1' - /hd0/1/
91
'a2' - /hd0/2/
91
'a2' - /hd0/2/
92
'b1' - /hd1/1/
92
'b1' - /hd1/1/
93
'd4' - /hd3/4/
93
'd4' - /hd3/4/
94
'm0' - search directory 'kolibri' by all CD-ROMs
94
'm0' - search directory 'kolibri' by all CD-ROMs
95
'r1' - /rd/1/
95
'r1' - /rd/1/