Subversion Repositories Kolibri OS

Rev

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

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