Subversion Repositories Kolibri OS

Rev

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