Subversion Repositories Kolibri OS

Rev

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

Rev Author Line No. Line
750 victor 1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                                                              ;;
3
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
593 mikedld 7
 
465 serge 8
$Revision: 802 $
9
 
593 mikedld 10
 
465 serge 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
 
764 Rus 51
  boot_memdetect    db	 'Determining amount of memory',0
52
  boot_fonts	    db	 'Fonts loaded',0
53
  boot_tss	    db	 'Setting TSSs',0
54
  boot_cpuid	    db	 'Reading CPUIDs',0
55
  boot_devices	    db	 'Detecting devices',0
56
  boot_timer	    db	 'Setting timer',0
57
  boot_irqs	    db	 'Reprogramming IRQs',0
58
  boot_setmouse     db	 'Setting mouse',0
59
  boot_windefs	    db	 'Setting window defaults',0
60
  boot_bgr	    db	 'Calculating background',0
61
  boot_resirqports  db	 'Reserving IRQs & ports',0
62
  boot_setrports    db	 'Setting addresses for IRQs',0
63
  boot_setostask    db	 'Setting OS task',0
64
  boot_allirqs	    db	 'Unmasking all IRQs',0
65
  boot_tsc	    db	 'Reading TSC',0
66
  boot_pal_ega	    db	 'Setting EGA/CGA 320x200 palette',0
67
  boot_pal_vga	    db	 'Setting VGA 640x480 palette',0
68
  boot_failed	    db	 'Failed to start first app',0
69
  boot_mtrr	    db	 'Setting MTRR',0
767 diamond 70
if preboot_blogesc
769 Rus 71
  boot_tasking	    db	 'All set - press ESC to start',0
767 diamond 72
end if
465 serge 73
 
74
new_process_loading db 'K : New Process - loading',13,10,0
75
new_process_running db 'K : New Process - done',13,10,0
76
start_not_enough_memory db 'K : New Process - not enough memory',13,10,0
77
 
78
msg_unresolved db 'unresolved ',0
79
msg_module     db 'in module ',0
80
msg_version    db 'incompatible driver version',13,10,0
81
msg_www        db 'please visit www.kolibrios.org',13,10,0
764 Rus 82
msg_CR	       db  13,10,0
465 serge 83
 
84
intel_str      db "GenuineIntel",0
85
AMD_str        db "AuthenticAMD",0
86
 
87
;szSound        db 'SOUND',0
88
;szInfinity     db 'INFINITY',0
764 Rus 89
szHwMouse	db 'ATI2D',0
90
szPS2MDriver	db 'PS2MOUSE',0
769 Rus 91
szCOM_MDriver	db 'COM_MOUSE',0
764 Rus 92
szUSB		db 'USB',0
802 serge 93
szAtiHW         db '/rd/1/drivers/ati2d.drv',0
465 serge 94
 
95
szSTART        db 'START',0
96
szEXPORTS      db 'EXPORTS',0
97
szIMPORTS      db 'IMPORTS',0
98
 
543 spraid 99
read_firstapp  db '/sys/'
521 diamond 100
firstapp       db  'LAUNCHER',0
488 spraid 101
 
764 Rus 102
char	db '/sys/FONTS/CHAR.MT',0
103
char2	db '/sys/FONTS/CHAR2.MT',0
488 spraid 104
 
465 serge 105
bootpath       db  '/KOLIBRI    '
106
bootpath2      db  0
764 Rus 107
vmode	       db  '/sys/drivers/VMODE.MDR',0
108
vrr_m	       db  'VRR_M',0
465 serge 109
kernel_file    db  'KERNEL  MNT'
110
 
753 serge 111
align 4
764 Rus 112
		     ;supported videomodes
753 serge 113
mode_1280_1024_32:
114
  dw 1280,1024,32,60
115
mode_1280_1024_24:
116
  dw 1280,1024,24,60
117
mode_1024_768_32:
118
  dw 1024,768,32,60
119
mode_1024_768_24:
120
  dw 1024,768,24,60
754 Lrz 121
mode_800_600_32:
753 serge 122
  dw 800,600,32,60
754 Lrz 123
mode_800_600_24:
753 serge 124
  dw 800,600,24,60
754 Lrz 125
mode_640_480_32:
753 serge 126
  dw 640,480,32,60
754 Lrz 127
mode_640_480_24:
753 serge 128
  dw 640,480,24,60
754 Lrz 129
mode_640_480_16:
753 serge 130
  dw 640,480,16,60
754 Lrz 131
mode_320_240_8:
753 serge 132
  dw 320,240,8,60
465 serge 133
 
134
; mike.dld {
135
db 0
136
dd servetable-0x10000
764 Rus 137
draw_line	dd __sys_draw_line
138
disable_mouse	dd __sys_disable_mouse
139
draw_pointer	dd __sys_draw_pointer
465 serge 140
;//mike.dld, 2006-08-02 [
141
;drawbar         dd __sys_drawbar
764 Rus 142
drawbar 	dd __sys_drawbar.forced
465 serge 143
;//mike.dld, 2006-08-02 ]
764 Rus 144
putpixel	dd __sys_putpixel
465 serge 145
; } mike.dld
146
 
147
 
148
align 4
149
keyboard   dd 1
150
syslang    dd 1
151
 
764 Rus 152
boot_y	   dd 10
465 serge 153
 
764 Rus 154
pci_bios_entry	dd 0
155
		dw pci_code_sel
465 serge 156
 
157
if __DEBUG__ eq 1
158
  include_debug_strings
159
end if
160
 
161
IncludeIGlobals
162
 
163
align 16
164
gdts:
165
 
764 Rus 166
	dw     gdte-$-1
167
	dd     gdts
168
	dw     0
465 serge 169
 
525 diamond 170
; Attention! Do not change the order of the first four selectors. They are used in Fast System Call
465 serge 171
; must be : os_code, os_data, app_code, app_data, ....
172
 
173
int_code_l:
174
os_code_l:
764 Rus 175
	dw     0xffff
176
	dw     0x0000
177
	db     0x00
178
	dw     11011111b *256 +10011010b
179
	db     0x00
465 serge 180
 
181
int_data_l:
182
os_data_l:
764 Rus 183
	dw     0xffff
184
	dw     0x0000
185
	db     0x00
186
	dw     11011111b *256 +10010010b
187
	db     0x00
465 serge 188
 
189
app_code_l:
764 Rus 190
	dw 0xFFFF
191
	dw 0
192
	db 0
193
	db cpl3
194
	dw G32+D32+(new_app_base shr 16)+0xF;
465 serge 195
 
196
app_data_l:
764 Rus 197
	dw 0xFFFF
198
	dw 0
199
	db 0
200
	db drw3
201
	dw G32+D32+(new_app_base shr 16)+0xF;
465 serge 202
 
586 serge 203
; ------------- PCI BIOS ------------------
204
 
205
pci_code_32:
764 Rus 206
	dw 0	     ;lim  0-15
207
	dw 0	     ;base 0-15
208
	db 0	     ;base 16-23
209
	db cpl0      ;type
210
	db D32	     ;lim 16-19+props
211
	db 0	     ;base 24-31
586 serge 212
 
213
pci_data_32:
764 Rus 214
	dw 0	     ;lim  0-15
215
	dw 0	     ;base 0-15
216
	db 0	     ;base 16-23
217
	db dpl0      ;type
218
	db D32	     ;lim 16-19+props
219
	db 0	     ;base 24-31
586 serge 220
 
465 serge 221
; --------------- APM ---------------------
222
apm_code_32:
764 Rus 223
	dw     0x0f	   ; limit 64kb
224
	db     0, 0, 0
225
	dw     11010000b *256 +10011010b
226
	db     0x00
465 serge 227
apm_code_16:
764 Rus 228
	dw     0x0f
229
	db     0, 0, 0
230
	dw     10010000b *256 +10011010b
231
	db     0x00
465 serge 232
apm_data_16:
764 Rus 233
	dw     0x0f
234
	db     0, 0, 0
235
	dw     10010000b *256 +10010010b
236
	db     0x00
465 serge 237
; -----------------------------------------
238
 
239
graph_data_l:
240
 
764 Rus 241
	dw     0x7ff
242
	dw     0x0000
243
	db     0x00
244
	dw     11010000b *256 +11110010b
245
	db     0x00
465 serge 246
tss0_l:
764 Rus 247
	dw     TSS_SIZE-1
248
	dw     tss and 0xFFFF
249
	db     (tss shr 16) and 0xFF
250
	db     10001001b
251
	dw     (tss shr 16) and 0xFF00
465 serge 252
endofcode:
253
gdte:
254
 
255
align 16
764 Rus 256
cur_saved_data	  rb 4096
257
fpu_data:	  rb 512
465 serge 258
 
259
; device irq owners
764 Rus 260
irq_owner	  rd 16 ; process id
465 serge 261
 
262
; on irq read ports
263
 
764 Rus 264
irq00read	  rd 16
265
irq01read	  rd 16
266
irq02read	  rd 16
267
irq03read	  rd 16
268
irq04read	  rd 16
269
irq05read	  rd 16
270
irq06read	  rd 16
271
irq07read	  rd 16
272
irq08read	  rd 16
273
irq09read	  rd 16
274
irq10read	  rd 16
275
irq11read	  rd 16
276
irq12read	  rd 16
277
irq13read	  rd 16
278
irq14read	  rd 16
279
irq15read	  rd 16
465 serge 280
 
764 Rus 281
irq_tab 	  rd 16
465 serge 282
 
764 Rus 283
mem_block_map	  rb 512
284
event_map	  rb 64
285
mem_block_list	  rd 64
802 serge 286
large_block_list  rd 31
764 Rus 287
mem_block_mask	  rd 2
802 serge 288
large_block_mask  rd 1
465 serge 289
 
764 Rus 290
mem_used.fd	  rd 1
291
mem_used.bk	  rd 1
465 serge 292
 
764 Rus 293
mem_block_arr	  rd 1
465 serge 294
mem_block_start   rd 1
764 Rus 295
mem_block_end	  rd 1
465 serge 296
 
764 Rus 297
heap_mutex	  rd 1
298
heap_size	  rd 1
299
heap_free	  rd 1
300
heap_blocks	  rd 1
301
free_blocks	  rd 1
465 serge 302
 
303
mst MEM_STATE
304
 
764 Rus 305
page_start	  rd 1
306
page_end	  rd 1
307
events		  rd 1
308
event_start	  rd 1
309
event_end	  rd 1
310
event_uid	  rd 1
311
sys_page_map	  rd 1
312
os_stack_seg	  rd 1
465 serge 313
 
764 Rus 314
srv.fd		  rd 1
315
srv.bk		  rd 1
465 serge 316
 
764 Rus 317
scr_width	  rd 1
318
scr_height	  rd 1
465 serge 319
 
764 Rus 320
create_cursor	  rd 1
630 serge 321
select_hw_cursor  rd 1
764 Rus 322
set_hw_cursor	  rd 1
323
hw_restore	  rd 1
465 serge 324
 
764 Rus 325
def_cursor	  rd 1
326
current_cursor	  rd 1
327
hw_cursor	  rd 1
328
cur_def_interl	  rd 1
329
cur_saved_base	  rd 1
465 serge 330
cur_saved_interl  rd 1
764 Rus 331
cur_saved_w	  rd 1
332
cur_saved_h	  rd 1
465 serge 333
 
764 Rus 334
ipc_tmp 	  rd 1
335
ipc_pdir	  rd 1
336
ipc_ptab	  rd 1
465 serge 337
 
764 Rus 338
proc_mem_map	  rd 1
339
proc_mem_pdir	  rd 1
340
proc_mem_tab	  rd 1
465 serge 341
 
764 Rus 342
tmp_task_pdir	  rd 1
343
tmp_task_ptab	  rd 1
465 serge 344
 
764 Rus 345
default_io_map	  rd 1
465 serge 346
 
764 Rus 347
LFBSize 	  rd 1
465 serge 348
 
764 Rus 349
stall_mcs	  rd 1
350
current_slot	  rd 1
465 serge 351
 
352
; status
764 Rus 353
hd1_status		    rd 1  ; 0 - free : other - pid
465 serge 354
application_table_status    rd 1  ; 0 - free : other - pid
355
 
356
; device addresses
764 Rus 357
mididp		  rd 1
358
midisp		  rd 1
465 serge 359
 
764 Rus 360
cdbase		  rd 1
361
cdid		  rd 1
465 serge 362
 
764 Rus 363
hdbase		  rd 1	  ; for boot 0x1f0
364
hdid		  rd 1
365
hdpos		  rd 1	  ; for boot 0x1
366
fat32part	  rd 1	  ; for boot 0x1
367
cdpos		  rd 1
465 serge 368
 
369
;CPUID information
764 Rus 370
cpu_vendor	  rd 3
371
cpu_sign	  rd 1
372
cpu_info	  rd 1
373
cpu_caps	  rd 4
465 serge 374
 
375
 
764 Rus 376
pg_data 	  PG_DATA
377
heap_test	  rd 1
465 serge 378
 
764 Rus 379
buttontype	  rd 1
465 serge 380
windowtypechanged rd 1
381
 
764 Rus 382
hd_entries	  rd 1	   ;unused ? 0xfe10
465 serge 383
 
384
;* start code - Mario79
385
 
764 Rus 386
mouse_active	      rd 1
387
mouse_pause	      rd 1
465 serge 388
MouseTickCounter      rd 1
769 Rus 389
 
465 serge 390
;* end code - Mario79
391
 
764 Rus 392
img_background	      rd 1
393
mem_BACKGROUND	      rd 1
465 serge 394
wraw_bacground_select rb 1
395
 
709 diamond 396
cache_ide0:
764 Rus 397
cache_ide0_pointer	      rd 1
398
cache_ide0_size 	      rd 1   ; not use
580 mario79 399
cache_ide0_data_pointer       rd 1
400
cache_ide0_system_data_size   rd 1   ; not use
401
cache_ide0_appl_data_size     rd 1   ; not use
764 Rus 402
cache_ide0_system_data	      rd 1
403
cache_ide0_appl_data	      rd 1
580 mario79 404
cache_ide0_system_sad_size    rd 1
405
cache_ide0_appl_sad_size      rd 1
406
cache_ide0_search_start       rd 1
407
cache_ide0_appl_search_start  rd 1
408
 
709 diamond 409
cache_ide1:
764 Rus 410
cache_ide1_pointer	      rd 1
411
cache_ide1_size 	      rd 1   ; not use
580 mario79 412
cache_ide1_data_pointer       rd 1
413
cache_ide1_system_data_size   rd 1   ; not use
414
cache_ide1_appl_data_size     rd 1   ; not use
764 Rus 415
cache_ide1_system_data	      rd 1
416
cache_ide1_appl_data	      rd 1
580 mario79 417
cache_ide1_system_sad_size    rd 1
418
cache_ide1_appl_sad_size      rd 1
419
cache_ide1_search_start       rd 1
420
cache_ide1_appl_search_start  rd 1
421
 
709 diamond 422
cache_ide2:
764 Rus 423
cache_ide2_pointer	      rd 1
424
cache_ide2_size 	      rd 1   ; not use
580 mario79 425
cache_ide2_data_pointer       rd 1
426
cache_ide2_system_data_size   rd 1   ; not use
427
cache_ide2_appl_data_size     rd 1   ; not use
764 Rus 428
cache_ide2_system_data	      rd 1
429
cache_ide2_appl_data	      rd 1
580 mario79 430
cache_ide2_system_sad_size    rd 1
431
cache_ide2_appl_sad_size      rd 1
432
cache_ide2_search_start       rd 1
433
cache_ide2_appl_search_start  rd 1
434
 
709 diamond 435
cache_ide3:
764 Rus 436
cache_ide3_pointer	      rd 1
437
cache_ide3_size 	      rd 1   ; not use
580 mario79 438
cache_ide3_data_pointer       rd 1
439
cache_ide3_system_data_size   rd 1   ; not use
440
cache_ide3_appl_data_size     rd 1   ; not use
764 Rus 441
cache_ide3_system_data	      rd 1
442
cache_ide3_appl_data	      rd 1
580 mario79 443
cache_ide3_system_sad_size    rd 1
444
cache_ide3_appl_sad_size      rd 1
445
cache_ide3_search_start       rd 1
446
cache_ide3_appl_search_start  rd 1
447
 
448
debug_step_pointer rd 1
449
hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache
585 mario79 450
cd_appl_data rb 1 ; 0 = system cache, 1 - application cache
580 mario79 451
 
465 serge 452
lba_read_enabled      rd 1  ; 0 = disabled , 1 = enabled
453
pci_access_enabled    rd 1  ; 0 = disabled , 1 = enabled
764 Rus 454
timer_ticks_enable rb 1 	; for cd driver
465 serge 455
 
764 Rus 456
NumBiosDisks	rd 1
457
BiosDisksData	rb 200h
458
BiosDiskCaches	rb 80h*(cache_ide1-cache_ide0)
709 diamond 459
BiosDiskPartitions rd 80h
460
 
465 serge 461
IncludeUGlobals
462