Subversion Repositories Kolibri OS

Rev

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

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