Subversion Repositories Kolibri OS

Rev

Rev 3171 | Rev 3309 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1349 art_zh 1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                                                              ;;
2455 mario79 3
;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;;
1349 art_zh 4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
7
 
8
$Revision: 3274 $
9
 
1354 diamond 10
 
1349 art_zh 11
keymap:
12
 
13
     db   '6',27
14
     db   '1234567890-=',8,9
15
     db   'qwertyuiop[]',13
16
     db   '~asdfghjkl;',39,96,0,'\zxcvbnm,./',0,'45 '
17
     db   '@234567890123',180,178,184,'6',176,'7'
18
     db   179,'8',181,177,183,185,182
19
     db   'AB
20
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
21
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
22
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
23
 
24
keymap_shift:
25
     db   '6',27
26
     db   '!@#$%^&*()_+',8,9
27
     db   'QWERTYUIOP{}',13
28
     db   '~ASDFGHJKL:"~',0,'|ZXCVBNM<>?',0,'45 '
29
     db   '@234567890123',180,178,184,'6',176,'7'
30
     db   179,'8',181,177,183,185,182
31
     db   'AB>D',255,'FGHIJKLMNOPQRSTUVWXYZ'
32
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
33
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
34
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
35
 
36
 
37
keymap_alt:
38
     db   ' ',27
39
     db   ' @ $  {[]}\ ',8,9
40
     db   '            ',13
41
     db   '             ',0,'           ',0,'4',0,' '
42
     db   '             ',180,178,184,'6',176,'7'
43
     db   179,'8',181,177,183,185,182
44
     db   'ABCD',255,'FGHIJKLMNOPQRSTUVWXYZ'
45
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
46
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
47
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
48
 
49
 
2104 maximYCH 50
 
51
if lang eq ru
2642 mario79 52
  boot_initirq      db   'Инициализация IRQ',0
53
  boot_picinit      db   'Инициализация PIC',0
54
  boot_v86machine   db   'Инициализация системы V86 машины',0
55
  boot_inittimer    db   'Инициализация системного таймера (IRQ0)',0
56
  boot_initapic     db   'Попытка инициализации APIC',0
57
  boot_enableirq    db   'Включить прерывания 2, 6, 13, 14, 15',0
58
  boot_enablint_ide db   'Разрешение прерываний в контроллере IDE',0
59
  boot_detectfloppy db   'Поиск floppy дисководов',0
60
  boot_detecthdcd   db   'Поиск жестких дисков и ATAPI приводов',0
61
  boot_getcache     db   'Получение памяти для кэша',0
62
  boot_detectpart   db   'Поиск разделов на дисковых устройствах',0
63
  boot_init_sys     db   'Инициализация системного каталога /sys',0
64
  boot_loadlibs     db   'Загрузка библиотек (.obj)',0
2104 maximYCH 65
  boot_memdetect    db   'Количество оперативной памяти','     ',' Мб',0
66
  boot_tss          db   'Установка TSSs',0
67
  boot_cpuid        db   'Чтение CPUIDs',0
2642 mario79 68
;  boot_devices      db   'Поиск устройств',0
2104 maximYCH 69
  boot_timer        db   'Установка таймера',0
70
  boot_irqs         db   'Переопределение IRQ',0
71
  boot_setmouse     db   'Установка мыши',0
72
  boot_windefs      db   'Установка настроек окон по умолчанию',0
73
  boot_bgr          db   'Установка фона',0
74
  boot_resirqports  db   'Резервирование IRQ и портов',0
75
  boot_setrports    db   'Установка адресов IRQ',0
76
  boot_setostask    db   'Создание процесса ядра',0
77
  boot_allirqs      db   'Открытие всех IRQ',0
78
  boot_tsc          db   'Чтение TSC',0
79
  boot_cpufreq      db   'Частота процессора ','    ',' МГц',0
80
  boot_pal_ega      db   'Установка EGA/CGA 320x200 палитры',0
81
  boot_pal_vga      db   'Установка VGA 640x480 палитры',0
82
  boot_failed       db   'Загрузка первого приложения не удалась',0
83
  boot_mtrr         db   'Установка MTRR',0
2642 mario79 84
 
85
  boot_APIC_found   db   'APIC включен', 0
86
  boot_APIC_nfound  db   'APIC не найден', 0
2104 maximYCH 87
if preboot_blogesc
88
  boot_tasking      db   'Все готово для запуска, нажмитре ESC для старта',0
89
end if
3274 esevece 90
else if lang eq sp
91
  include 'data32sp.inc'
2104 maximYCH 92
else
2642 mario79 93
  boot_initirq      db   'Initialize IRQ',0
94
  boot_picinit      db   'Initialize PIC',0
95
  boot_v86machine   db   'Initialize system V86 machine',0
96
  boot_inittimer    db   'Initialize system timer (IRQ0)',0
97
  boot_initapic     db   'Try to initialize APIC',0
98
  boot_enableirq    db   'Enable interrupts 2, 6, 13, 14, 15',0
99
  boot_enablint_ide db   'Enable interrupts in IDE controller',0
100
  boot_detectfloppy db   'Search floppy drives',0
101
  boot_detecthdcd   db   'Search hard drives and ATAPI drives',0
102
  boot_getcache     db   'Get memory for cache',0
103
  boot_detectpart   db   'Search partitions on disk devices',0
104
  boot_init_sys     db   'Initialize system directory /sys',0
105
  boot_loadlibs     db   'Loading librares (.obj)',0
1349 art_zh 106
  boot_memdetect    db   'Determining amount of memory',0
107
  boot_tss          db   'Setting TSSs',0
108
  boot_cpuid        db   'Reading CPUIDs',0
2642 mario79 109
;  boot_devices      db   'Detecting devices',0
1349 art_zh 110
  boot_setmouse     db   'Setting mouse',0
111
  boot_windefs      db   'Setting window defaults',0
112
  boot_bgr          db   'Calculating background',0
113
  boot_resirqports  db   'Reserving IRQs & ports',0
114
  boot_setostask    db   'Setting OS task',0
2288 clevermous 115
  boot_allirqs      db   'Unmasking IRQs',0
1349 art_zh 116
  boot_tsc          db   'Reading TSC',0
117
  boot_cpufreq      db   'CPU frequency is ','    ',' MHz',0
118
  boot_pal_ega      db   'Setting EGA/CGA 320x200 palette',0
119
  boot_pal_vga      db   'Setting VGA 640x480 palette',0
120
  boot_failed       db   'Failed to start first app',0
121
  boot_mtrr         db   'Setting MTRR',0
2642 mario79 122
 
123
  boot_APIC_found   db   'APIC enabled', 0
124
  boot_APIC_nfound  db   'APIC not found', 0
1349 art_zh 125
if preboot_blogesc
126
  boot_tasking      db   'All set - press ESC to start',0
127
end if
2104 maximYCH 128
end if
1349 art_zh 129
 
130
;new_process_loading db 'K : New Process - loading',13,10,0
131
;new_process_running db 'K : New Process - done',13,10,0
132
start_not_enough_memory db 'K : New Process - not enough memory',13,10,0
133
 
134
msg_unresolved db 'unresolved ',0
135
msg_module     db 'in module ',0
136
msg_version    db 'incompatible driver version',13,10,0
137
msg_www        db 'please visit www.kolibrios.org',13,10,0
138
msg_CR         db  13,10,0
139
 
140
intel_str      db "GenuineIntel",0
141
AMD_str        db "AuthenticAMD",0
142
 
143
szHwMouse       db 'ATI2D',0
144
szPS2MDriver    db 'PS2MOUSE',0
145
;szCOM_MDriver   db 'COM_MOUSE',0
146
szUSB           db 'USB',0
147
szAtiHW         db '/rd/1/drivers/ati2d.drv',0
148
 
149
szSTART        db 'START',0
150
szEXPORTS      db 'EXPORTS',0
151
sz_EXPORTS     db '_EXPORTS',0
152
 
153
szIMPORTS      db 'IMPORTS',0
154
 
155
read_firstapp  db '/sys/'
156
firstapp       db  'LAUNCHER',0
1948 clevermous 157
notifyapp      db '@notify',0
158
if lang eq ru
159
ud_user_message db 'Ошибка: неподдерживаемая инструкция процессора',0
160
else
161
ud_user_message db 'Error: unsupported processor instruction',0
162
end if
1349 art_zh 163
 
164
bootpath       db  '/KOLIBRI    '
165
bootpath2      db  0
166
vmode          db  '/sys/drivers/VMODE.MDR',0
2255 mario79 167
;vrr_m          db  'VRR_M',0
1349 art_zh 168
kernel_file    db  'KERNEL  MNT'
169
 
2231 Serge 170
dev_data_path  db '/RD/1/DRIVERS/DEVICES.DAT',0
1349 art_zh 171
 
172
align 4
173
 
174
shmem_list:
175
 .bk           dd shmem_list
176
 .fd           dd shmem_list
177
 
178
dll_list:
179
 .bk           dd dll_list
180
 .fd           dd dll_list
181
 
2412 Serge 182
MAX_DEFAULT_DLL_ADDR = 0x80000000
183
MIN_DEFAULT_DLL_ADDR = 0x70000000
1349 art_zh 184
dll_cur_addr   dd MIN_DEFAULT_DLL_ADDR
185
 
186
; supported videomodes
187
 
188
 
189
; mike.dld {
2453 mario79 190
;db 0
191
;dd servetable-0x10000
192
;align 4
193
;draw_line       dd __sys_draw_line
194
;draw_pointer    dd __sys_draw_pointer
1349 art_zh 195
;//mike.dld, 2006-08-02 [
2453 mario79 196
;;drawbar         dd __sys_drawbar
197
;;drawbar         dd __sys_drawbar.forced
198
;drawbar         dd vesa20_drawbar
1349 art_zh 199
;//mike.dld, 2006-08-02 ]
2453 mario79 200
;putpixel        dd __sys_putpixel
1349 art_zh 201
; } mike.dld
202
 
203
 
204
align 4
205
keyboard   dd 1
206
syslang    dd 1
207
 
208
boot_y     dd 10
209
 
210
pci_bios_entry  dd 0
211
                dw pci_code_sel
212
 
213
if __DEBUG__ eq 1
214
  include_debug_strings
215
end if
216
 
217
IncludeIGlobals
218
 
219
align 16
220
gdts:
221
 
222
        dw     gdte-$-1
223
        dd     gdts
224
        dw     0
225
 
226
; Attention! Do not change the order of the first four selectors. They are used in Fast System Call
227
; must be : os_code, os_data, app_code, app_data, ....
228
 
229
int_code_l:
230
os_code_l:
231
        dw     0xffff
232
        dw     0x0000
233
        db     0x00
234
        dw     11011111b *256 +10011010b
235
        db     0x00
236
 
237
int_data_l:
238
os_data_l:
239
        dw     0xffff
240
        dw     0x0000
241
        db     0x00
242
        dw     11011111b *256 +10010010b
243
        db     0x00
244
 
245
app_code_l:
246
        dw 0xFFFF
247
        dw 0
248
        db 0
249
        db cpl3
250
        dw G32+D32+0xF;
251
 
252
app_data_l:
253
        dw 0xFFFF
254
        dw 0
255
        db 0
256
        db drw3
257
        dw G32+D32+0xF;
258
 
259
; ------------- PCI BIOS ------------------
260
 
261
pci_code_32:
262
        dw 0         ;lim  0-15
263
        dw 0         ;base 0-15
264
        db 0         ;base 16-23
265
        db cpl0      ;type
266
        db D32       ;lim 16-19+props
267
        db 0         ;base 24-31
268
 
269
pci_data_32:
270
        dw 0         ;lim  0-15
271
        dw 0         ;base 0-15
272
        db 0         ;base 16-23
273
        db dpl0      ;type
274
        db D32       ;lim 16-19+props
275
        db 0         ;base 24-31
276
 
277
; --------------- APM ---------------------
278
apm_code_32:
279
        dw     0x0f        ; limit 64kb
280
        db     0, 0, 0
281
        dw     11010000b *256 +10011010b
282
        db     0x00
283
apm_code_16:
284
        dw     0x0f
285
        db     0, 0, 0
286
        dw     10010000b *256 +10011010b
287
        db     0x00
288
apm_data_16:
289
        dw     0x0f
290
        db     0, 0, 0
291
        dw     10010000b *256 +10010010b
292
        db     0x00
293
; -----------------------------------------
294
 
295
graph_data_l:
296
 
297
        dw     0x7ff
298
        dw     0x0000
299
        db     0x00
300
        dw     11010000b *256 +11110010b
301
        db     0x00
302
tss0_l:
2384 hidnplayr 303
        dw     sizeof.TSS-1
1349 art_zh 304
        dw     tss and 0xFFFF
305
        db     (tss shr 16) and 0xFF
306
        db     10001001b
307
        dw     (tss shr 16) and 0xFF00
308
 
309
tls_data_l:
310
        dw 0x0FFF
311
        dw 0
312
        db 0
313
        db drw3
314
        dw D32
315
 
316
endofcode:
317
gdte:
318
 
319
align 16
2430 mario79 320
cur_saved_data:
321
                  rb 4096
2288 clevermous 322
fpu_data:
323
                  rb 512
1349 art_zh 324
 
2154 serge 325
mem_block_list    rd 64*2
2167 serge 326
mem_used_list     rd 64*2
2154 serge 327
mem_hash_cnt      rd 64
1349 art_zh 328
 
2129 serge 329
heap_mutex        MUTEX
1349 art_zh 330
heap_size         rd 1
331
heap_free         rd 1
332
heap_blocks       rd 1
333
free_blocks       rd 1
334
 
2167 serge 335
mem_block_mask    rd 2
336
next_memblock     rd 1
337
 
338
 
1349 art_zh 339
mst MEM_STATE
340
 
341
page_start        rd 1
342
page_end          rd 1
343
sys_page_map      rd 1
344
os_stack_seg      rd 1
345
 
346
 
347
srv.fd            rd 1
348
srv.bk            rd 1
349
 
350
 
351
align 16
352
 
353
_display          display_t
354
 
355
_WinMapAddress    rd 1
356
_WinMapSize       rd 1
357
 
358
def_cursor        rd 1
2497 mario79 359
def_cursor_clock  rd 1
1349 art_zh 360
current_cursor    rd 1
361
hw_cursor         rd 1
362
cur_saved_base    rd 1
363
 
364
cur.lock          rd 1   ;1 - lock update, 2- hide
365
cur.left          rd 1   ;cursor clip box
366
cur.top           rd 1
367
cur.right         rd 1
368
cur.bottom        rd 1
369
cur.w             rd 1
370
cur.h             rd 1
371
 
372
ipc_tmp           rd 1
373
ipc_pdir          rd 1
374
ipc_ptab          rd 1
375
 
376
proc_mem_map      rd 1
377
proc_mem_pdir     rd 1
378
proc_mem_tab      rd 1
379
 
380
tmp_task_pdir     rd 1
381
tmp_task_ptab     rd 1
382
 
383
default_io_map    rd 1
384
 
385
LFBSize           rd 1
386
 
387
stall_mcs         rd 1
388
current_slot      rd 1
389
 
390
; status
391
hd1_status                  rd 1  ; 0 - free : other - pid
392
application_table_status    rd 1  ; 0 - free : other - pid
393
 
394
; device addresses
395
mididp            rd 1
396
midisp            rd 1
397
 
398
cdbase            rd 1
399
cdid              rd 1
400
 
401
hdbase            rd 1    ; for boot 0x1f0
402
hdid              rd 1
403
hdpos             rd 1    ; for boot 0x1
1378 turbanoff 404
label   known_part dword
1349 art_zh 405
fat32part         rd 1    ; for boot 0x1
406
cdpos             rd 1
407
 
408
;CPUID information
409
cpu_vendor        rd 3
410
cpu_sign          rd 1
411
cpu_info          rd 1
412
cpu_caps          rd 4
413
 
414
 
415
pg_data           PG_DATA
416
heap_test         rd 1
417
 
418
buttontype        rd 1
419
windowtypechanged rd 1
420
 
421
hd_entries        rd 1     ;unused ? 0xfe10
422
 
423
mouse_active          rd 1
424
mouse_pause           rd 1
425
 
2450 mario79 426
redrawmouse_unconditional rd 1
427
 
1349 art_zh 428
img_background        rd 1
429
mem_BACKGROUND        rd 1
430
static_background_data rd 1
431
 
432
cache_ide0:
433
cache_ide0_pointer            rd 1
434
cache_ide0_size               rd 1   ; not use
435
cache_ide0_data_pointer       rd 1
436
cache_ide0_system_data_size   rd 1   ; not use
437
cache_ide0_appl_data_size     rd 1   ; not use
438
cache_ide0_system_data        rd 1
439
cache_ide0_appl_data          rd 1
440
cache_ide0_system_sad_size    rd 1
441
cache_ide0_appl_sad_size      rd 1
442
cache_ide0_search_start       rd 1
443
cache_ide0_appl_search_start  rd 1
444
 
445
cache_ide1:
446
cache_ide1_pointer            rd 1
447
cache_ide1_size               rd 1   ; not use
448
cache_ide1_data_pointer       rd 1
449
cache_ide1_system_data_size   rd 1   ; not use
450
cache_ide1_appl_data_size     rd 1   ; not use
451
cache_ide1_system_data        rd 1
452
cache_ide1_appl_data          rd 1
453
cache_ide1_system_sad_size    rd 1
454
cache_ide1_appl_sad_size      rd 1
455
cache_ide1_search_start       rd 1
456
cache_ide1_appl_search_start  rd 1
457
 
458
cache_ide2:
459
cache_ide2_pointer            rd 1
460
cache_ide2_size               rd 1   ; not use
461
cache_ide2_data_pointer       rd 1
462
cache_ide2_system_data_size   rd 1   ; not use
463
cache_ide2_appl_data_size     rd 1   ; not use
464
cache_ide2_system_data        rd 1
465
cache_ide2_appl_data          rd 1
466
cache_ide2_system_sad_size    rd 1
467
cache_ide2_appl_sad_size      rd 1
468
cache_ide2_search_start       rd 1
469
cache_ide2_appl_search_start  rd 1
470
 
471
cache_ide3:
472
cache_ide3_pointer            rd 1
473
cache_ide3_size               rd 1   ; not use
474
cache_ide3_data_pointer       rd 1
475
cache_ide3_system_data_size   rd 1   ; not use
476
cache_ide3_appl_data_size     rd 1   ; not use
477
cache_ide3_system_data        rd 1
478
cache_ide3_appl_data          rd 1
479
cache_ide3_system_sad_size    rd 1
480
cache_ide3_appl_sad_size      rd 1
481
cache_ide3_search_start       rd 1
482
cache_ide3_appl_search_start  rd 1
483
 
484
debug_step_pointer rd 1
485
hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache
486
cd_appl_data rb 1 ; 0 = system cache, 1 - application cache
487
 
488
lba_read_enabled      rd 1  ; 0 = disabled , 1 = enabled
489
pci_access_enabled    rd 1  ; 0 = disabled , 1 = enabled
490
timer_ticks_enable rb 1         ; for cd driver
491
 
492
NumBiosDisks    rd 1
493
BiosDisksData   rb 200h
494
BiosDiskCaches  rb 80h*(cache_ide1-cache_ide0)
495
BiosDiskPartitions rd 80h
496
 
497
IncludeUGlobals