Subversion Repositories Kolibri OS

Rev

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

Rev Author Line No. Line
2434 Serge 1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                                                              ;;
3
;; Copyright (C) KolibriOS team 2004-2009. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
7
 
8
$Revision: 2434 $
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
110
aSis           db 'SIS',0
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 {
167
db 0
168
dd servetable-0x10000
169
draw_line       dd __sys_draw_line
170
draw_pointer    dd __sys_draw_pointer
171
;//mike.dld, 2006-08-02 [
172
;drawbar         dd __sys_drawbar
173
;drawbar         dd __sys_drawbar.forced
174
drawbar         dd vesa20_drawbar
175
;//mike.dld, 2006-08-02 ]
176
putpixel        dd __sys_putpixel
177
; } mike.dld
178
 
179
 
180
align 4
181
keyboard   dd 1
182
syslang    dd 1
183
 
184
boot_y     dd 10
185
 
186
pci_bios_entry  dd 0
187
                dw pci_code_sel
188
 
189
if __DEBUG__ eq 1
190
  include_debug_strings
191
end if
192
 
193
IncludeIGlobals
194
 
195
align 16
196
gdts:
197
 
198
        dw     gdte-$-1
199
        dd     gdts
200
        dw     0
201
 
202
; Attention! Do not change the order of the first four selectors. They are used in Fast System Call
203
; must be : os_code, os_data, app_code, app_data, ....
204
 
205
int_code_l:
206
os_code_l:
207
        dw     0xffff
208
        dw     0x0000
209
        db     0x00
210
        dw     11011111b *256 +10011010b
211
        db     0x00
212
 
213
int_data_l:
214
os_data_l:
215
        dw     0xffff
216
        dw     0x0000
217
        db     0x00
218
        dw     11011111b *256 +10010010b
219
        db     0x00
220
 
221
app_code_l:
222
        dw 0xFFFF
223
        dw 0
224
        db 0
225
        db cpl3
226
        dw G32+D32+0xF;
227
 
228
app_data_l:
229
        dw 0xFFFF
230
        dw 0
231
        db 0
232
        db drw3
233
        dw G32+D32+0xF;
234
 
235
; ------------- PCI BIOS ------------------
236
 
237
pci_code_32:
238
        dw 0         ;lim  0-15
239
        dw 0         ;base 0-15
240
        db 0         ;base 16-23
241
        db cpl0      ;type
242
        db D32       ;lim 16-19+props
243
        db 0         ;base 24-31
244
 
245
pci_data_32:
246
        dw 0         ;lim  0-15
247
        dw 0         ;base 0-15
248
        db 0         ;base 16-23
249
        db dpl0      ;type
250
        db D32       ;lim 16-19+props
251
        db 0         ;base 24-31
252
 
253
; --------------- APM ---------------------
254
apm_code_32:
255
        dw     0x0f        ; limit 64kb
256
        db     0, 0, 0
257
        dw     11010000b *256 +10011010b
258
        db     0x00
259
apm_code_16:
260
        dw     0x0f
261
        db     0, 0, 0
262
        dw     10010000b *256 +10011010b
263
        db     0x00
264
apm_data_16:
265
        dw     0x0f
266
        db     0, 0, 0
267
        dw     10010000b *256 +10010010b
268
        db     0x00
269
; -----------------------------------------
270
 
271
graph_data_l:
272
 
273
        dw     0x7ff
274
        dw     0x0000
275
        db     0x00
276
        dw     11010000b *256 +11110010b
277
        db     0x00
278
tss0_l:
279
        dw     sizeof.TSS-1
280
        dw     tss and 0xFFFF
281
        db     (tss shr 16) and 0xFF
282
        db     10001001b
283
        dw     (tss shr 16) and 0xFF00
284
 
285
tls_data_l:
286
        dw 0x0FFF
287
        dw 0
288
        db 0
289
        db drw3
290
        dw D32
291
 
292
endofcode:
293
gdte:
294
 
295
align 16
296
cur_saved_data:
297
                  rb 4096
298
fpu_data:
299
                  rb 512
300
 
301
mem_block_list    rd 64*2
302
mem_used_list     rd 64*2
303
mem_hash_cnt      rd 64
304
 
305
heap_mutex        MUTEX
306
heap_size         rd 1
307
heap_free         rd 1
308
heap_blocks       rd 1
309
free_blocks       rd 1
310
 
311
mem_block_mask    rd 2
312
next_memblock     rd 1
313
 
314
 
315
mst MEM_STATE
316
 
317
page_start        rd 1
318
page_end          rd 1
319
sys_page_map      rd 1
320
os_stack_seg      rd 1
321
 
322
 
323
srv.fd            rd 1
324
srv.bk            rd 1
325
 
326
 
327
align 16
328
 
329
_display          display_t
330
 
331
_WinMapAddress    rd 1
332
_WinMapSize       rd 1
333
 
334
def_cursor        rd 1
335
current_cursor    rd 1
336
hw_cursor         rd 1
337
cur_saved_base    rd 1
338
 
339
cur.lock          rd 1   ;1 - lock update, 2- hide
340
cur.left          rd 1   ;cursor clip box
341
cur.top           rd 1
342
cur.right         rd 1
343
cur.bottom        rd 1
344
cur.w             rd 1
345
cur.h             rd 1
346
 
347
ipc_tmp           rd 1
348
ipc_pdir          rd 1
349
ipc_ptab          rd 1
350
 
351
proc_mem_map      rd 1
352
proc_mem_pdir     rd 1
353
proc_mem_tab      rd 1
354
 
355
tmp_task_pdir     rd 1
356
tmp_task_ptab     rd 1
357
 
358
default_io_map    rd 1
359
 
360
LFBSize           rd 1
361
 
362
stall_mcs         rd 1
363
current_slot      rd 1
364
 
365
; status
366
hd1_status                  rd 1  ; 0 - free : other - pid
367
application_table_status    rd 1  ; 0 - free : other - pid
368
 
369
; device addresses
370
mididp            rd 1
371
midisp            rd 1
372
 
373
cdbase            rd 1
374
cdid              rd 1
375
 
376
hdbase            rd 1    ; for boot 0x1f0
377
hdid              rd 1
378
hdpos             rd 1    ; for boot 0x1
379
label   known_part dword
380
fat32part         rd 1    ; for boot 0x1
381
cdpos             rd 1
382
 
383
;CPUID information
384
cpu_vendor        rd 3
385
cpu_sign          rd 1
386
cpu_info          rd 1
387
cpu_caps          rd 4
388
 
389
 
390
pg_data           PG_DATA
391
heap_test         rd 1
392
 
393
buttontype        rd 1
394
windowtypechanged rd 1
395
 
396
hd_entries        rd 1     ;unused ? 0xfe10
397
 
398
mouse_active          rd 1
399
mouse_pause           rd 1
400
 
401
img_background        rd 1
402
mem_BACKGROUND        rd 1
403
static_background_data rd 1
404
 
405
cache_ide0:
406
cache_ide0_pointer            rd 1
407
cache_ide0_size               rd 1   ; not use
408
cache_ide0_data_pointer       rd 1
409
cache_ide0_system_data_size   rd 1   ; not use
410
cache_ide0_appl_data_size     rd 1   ; not use
411
cache_ide0_system_data        rd 1
412
cache_ide0_appl_data          rd 1
413
cache_ide0_system_sad_size    rd 1
414
cache_ide0_appl_sad_size      rd 1
415
cache_ide0_search_start       rd 1
416
cache_ide0_appl_search_start  rd 1
417
 
418
cache_ide1:
419
cache_ide1_pointer            rd 1
420
cache_ide1_size               rd 1   ; not use
421
cache_ide1_data_pointer       rd 1
422
cache_ide1_system_data_size   rd 1   ; not use
423
cache_ide1_appl_data_size     rd 1   ; not use
424
cache_ide1_system_data        rd 1
425
cache_ide1_appl_data          rd 1
426
cache_ide1_system_sad_size    rd 1
427
cache_ide1_appl_sad_size      rd 1
428
cache_ide1_search_start       rd 1
429
cache_ide1_appl_search_start  rd 1
430
 
431
cache_ide2:
432
cache_ide2_pointer            rd 1
433
cache_ide2_size               rd 1   ; not use
434
cache_ide2_data_pointer       rd 1
435
cache_ide2_system_data_size   rd 1   ; not use
436
cache_ide2_appl_data_size     rd 1   ; not use
437
cache_ide2_system_data        rd 1
438
cache_ide2_appl_data          rd 1
439
cache_ide2_system_sad_size    rd 1
440
cache_ide2_appl_sad_size      rd 1
441
cache_ide2_search_start       rd 1
442
cache_ide2_appl_search_start  rd 1
443
 
444
cache_ide3:
445
cache_ide3_pointer            rd 1
446
cache_ide3_size               rd 1   ; not use
447
cache_ide3_data_pointer       rd 1
448
cache_ide3_system_data_size   rd 1   ; not use
449
cache_ide3_appl_data_size     rd 1   ; not use
450
cache_ide3_system_data        rd 1
451
cache_ide3_appl_data          rd 1
452
cache_ide3_system_sad_size    rd 1
453
cache_ide3_appl_sad_size      rd 1
454
cache_ide3_search_start       rd 1
455
cache_ide3_appl_search_start  rd 1
456
 
457
debug_step_pointer rd 1
458
hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache
459
cd_appl_data rb 1 ; 0 = system cache, 1 - application cache
460
 
461
lba_read_enabled      rd 1  ; 0 = disabled , 1 = enabled
462
pci_access_enabled    rd 1  ; 0 = disabled , 1 = enabled
463
timer_ticks_enable rb 1         ; for cd driver
464
 
465
NumBiosDisks    rd 1
466
BiosDisksData   rb 200h
467
BiosDiskCaches  rb 80h*(cache_ide1-cache_ide0)
468
BiosDiskPartitions rd 80h
469
 
470
IncludeUGlobals