Subversion Repositories Kolibri OS

Rev

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