Subversion Repositories Kolibri OS

Rev

Rev 764 | Rev 769 | 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: 767 $
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
71
  boot_tasking      db   'All set - press ESC to start',0
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
91
szUSB		db 'USB',0
465 serge 92
 
93
szSTART        db 'START',0
94
szEXPORTS      db 'EXPORTS',0
95
szIMPORTS      db 'IMPORTS',0
96
 
543 spraid 97
read_firstapp  db '/sys/'
521 diamond 98
firstapp       db  'LAUNCHER',0
488 spraid 99
 
764 Rus 100
char	db '/sys/FONTS/CHAR.MT',0
101
char2	db '/sys/FONTS/CHAR2.MT',0
488 spraid 102
 
465 serge 103
bootpath       db  '/KOLIBRI    '
104
bootpath2      db  0
764 Rus 105
vmode	       db  '/sys/drivers/VMODE.MDR',0
106
vrr_m	       db  'VRR_M',0
465 serge 107
kernel_file    db  'KERNEL  MNT'
108
 
753 serge 109
align 4
764 Rus 110
		     ;supported videomodes
753 serge 111
mode_1280_1024_32:
112
  dw 1280,1024,32,60
113
mode_1280_1024_24:
114
  dw 1280,1024,24,60
115
mode_1024_768_32:
116
  dw 1024,768,32,60
117
mode_1024_768_24:
118
  dw 1024,768,24,60
754 Lrz 119
mode_800_600_32:
753 serge 120
  dw 800,600,32,60
754 Lrz 121
mode_800_600_24:
753 serge 122
  dw 800,600,24,60
754 Lrz 123
mode_640_480_32:
753 serge 124
  dw 640,480,32,60
754 Lrz 125
mode_640_480_24:
753 serge 126
  dw 640,480,24,60
754 Lrz 127
mode_640_480_16:
753 serge 128
  dw 640,480,16,60
754 Lrz 129
mode_320_240_8:
753 serge 130
  dw 320,240,8,60
465 serge 131
 
132
; mike.dld {
133
db 0
134
dd servetable-0x10000
764 Rus 135
draw_line	dd __sys_draw_line
136
disable_mouse	dd __sys_disable_mouse
137
draw_pointer	dd __sys_draw_pointer
465 serge 138
;//mike.dld, 2006-08-02 [
139
;drawbar         dd __sys_drawbar
764 Rus 140
drawbar 	dd __sys_drawbar.forced
465 serge 141
;//mike.dld, 2006-08-02 ]
764 Rus 142
putpixel	dd __sys_putpixel
465 serge 143
; } mike.dld
144
 
145
 
146
align 4
147
keyboard   dd 1
148
sound_dma  dd 1
149
syslang    dd 1
150
 
764 Rus 151
boot_y	   dd 10
465 serge 152
 
764 Rus 153
pci_bios_entry	dd 0
154
		dw pci_code_sel
465 serge 155
 
156
if __DEBUG__ eq 1
157
  include_debug_strings
158
end if
159
 
160
IncludeIGlobals
161
 
162
align 16
163
gdts:
164
 
764 Rus 165
	dw     gdte-$-1
166
	dd     gdts
167
	dw     0
465 serge 168
 
525 diamond 169
; Attention! Do not change the order of the first four selectors. They are used in Fast System Call
465 serge 170
; must be : os_code, os_data, app_code, app_data, ....
171
 
172
int_code_l:
173
os_code_l:
764 Rus 174
	dw     0xffff
175
	dw     0x0000
176
	db     0x00
177
	dw     11011111b *256 +10011010b
178
	db     0x00
465 serge 179
 
180
int_data_l:
181
os_data_l:
764 Rus 182
	dw     0xffff
183
	dw     0x0000
184
	db     0x00
185
	dw     11011111b *256 +10010010b
186
	db     0x00
465 serge 187
 
188
app_code_l:
764 Rus 189
	dw 0xFFFF
190
	dw 0
191
	db 0
192
	db cpl3
193
	dw G32+D32+(new_app_base shr 16)+0xF;
465 serge 194
 
195
app_data_l:
764 Rus 196
	dw 0xFFFF
197
	dw 0
198
	db 0
199
	db drw3
200
	dw G32+D32+(new_app_base shr 16)+0xF;
465 serge 201
 
586 serge 202
; ------------- PCI BIOS ------------------
203
 
204
pci_code_32:
764 Rus 205
	dw 0	     ;lim  0-15
206
	dw 0	     ;base 0-15
207
	db 0	     ;base 16-23
208
	db cpl0      ;type
209
	db D32	     ;lim 16-19+props
210
	db 0	     ;base 24-31
586 serge 211
 
212
pci_data_32:
764 Rus 213
	dw 0	     ;lim  0-15
214
	dw 0	     ;base 0-15
215
	db 0	     ;base 16-23
216
	db dpl0      ;type
217
	db D32	     ;lim 16-19+props
218
	db 0	     ;base 24-31
586 serge 219
 
465 serge 220
; --------------- APM ---------------------
221
apm_code_32:
764 Rus 222
	dw     0x0f	   ; limit 64kb
223
	db     0, 0, 0
224
	dw     11010000b *256 +10011010b
225
	db     0x00
465 serge 226
apm_code_16:
764 Rus 227
	dw     0x0f
228
	db     0, 0, 0
229
	dw     10010000b *256 +10011010b
230
	db     0x00
465 serge 231
apm_data_16:
764 Rus 232
	dw     0x0f
233
	db     0, 0, 0
234
	dw     10010000b *256 +10010010b
235
	db     0x00
465 serge 236
; -----------------------------------------
237
 
238
graph_data_l:
239
 
764 Rus 240
	dw     0x7ff
241
	dw     0x0000
242
	db     0x00
243
	dw     11010000b *256 +11110010b
244
	db     0x00
465 serge 245
tss0_l:
764 Rus 246
	dw     TSS_SIZE-1
247
	dw     tss and 0xFFFF
248
	db     (tss shr 16) and 0xFF
249
	db     10001001b
250
	dw     (tss shr 16) and 0xFF00
465 serge 251
endofcode:
252
gdte:
253
 
254
align 16
764 Rus 255
cur_saved_data	  rb 4096
256
fpu_data:	  rb 512
465 serge 257
 
258
; device irq owners
764 Rus 259
irq_owner	  rd 16 ; process id
465 serge 260
 
261
; on irq read ports
262
 
764 Rus 263
irq00read	  rd 16
264
irq01read	  rd 16
265
irq02read	  rd 16
266
irq03read	  rd 16
267
irq04read	  rd 16
268
irq05read	  rd 16
269
irq06read	  rd 16
270
irq07read	  rd 16
271
irq08read	  rd 16
272
irq09read	  rd 16
273
irq10read	  rd 16
274
irq11read	  rd 16
275
irq12read	  rd 16
276
irq13read	  rd 16
277
irq14read	  rd 16
278
irq15read	  rd 16
465 serge 279
 
764 Rus 280
irq_tab 	  rd 16
465 serge 281
 
764 Rus 282
mem_block_map	  rb 512
283
event_map	  rb 64
284
mem_block_list	  rd 64
285
mem_block_mask	  rd 2
465 serge 286
 
764 Rus 287
mem_used.fd	  rd 1
288
mem_used.bk	  rd 1
465 serge 289
 
764 Rus 290
mem_block_arr	  rd 1
465 serge 291
mem_block_start   rd 1
764 Rus 292
mem_block_end	  rd 1
465 serge 293
 
764 Rus 294
heap_mutex	  rd 1
295
heap_size	  rd 1
296
heap_free	  rd 1
297
heap_blocks	  rd 1
298
free_blocks	  rd 1
465 serge 299
 
300
mst MEM_STATE
301
 
764 Rus 302
page_start	  rd 1
303
page_end	  rd 1
304
events		  rd 1
305
event_start	  rd 1
306
event_end	  rd 1
307
event_uid	  rd 1
308
sys_page_map	  rd 1
309
os_stack_seg	  rd 1
465 serge 310
 
764 Rus 311
srv.fd		  rd 1
312
srv.bk		  rd 1
465 serge 313
 
764 Rus 314
scr_width	  rd 1
315
scr_height	  rd 1
465 serge 316
 
764 Rus 317
create_cursor	  rd 1
630 serge 318
select_hw_cursor  rd 1
764 Rus 319
set_hw_cursor	  rd 1
320
hw_restore	  rd 1
465 serge 321
 
764 Rus 322
def_cursor	  rd 1
323
current_cursor	  rd 1
324
hw_cursor	  rd 1
325
cur_def_interl	  rd 1
326
cur_saved_base	  rd 1
465 serge 327
cur_saved_interl  rd 1
764 Rus 328
cur_saved_w	  rd 1
329
cur_saved_h	  rd 1
465 serge 330
 
764 Rus 331
ipc_tmp 	  rd 1
332
ipc_pdir	  rd 1
333
ipc_ptab	  rd 1
465 serge 334
 
764 Rus 335
proc_mem_map	  rd 1
336
proc_mem_pdir	  rd 1
337
proc_mem_tab	  rd 1
465 serge 338
 
764 Rus 339
tmp_task_pdir	  rd 1
340
tmp_task_ptab	  rd 1
465 serge 341
 
764 Rus 342
default_io_map	  rd 1
465 serge 343
 
764 Rus 344
LFBSize 	  rd 1
465 serge 345
 
764 Rus 346
stall_mcs	  rd 1
347
current_slot	  rd 1
465 serge 348
 
349
; status
764 Rus 350
hd1_status		    rd 1  ; 0 - free : other - pid
465 serge 351
application_table_status    rd 1  ; 0 - free : other - pid
352
 
353
; device addresses
764 Rus 354
mididp		  rd 1
355
midisp		  rd 1
465 serge 356
 
764 Rus 357
cdbase		  rd 1
358
cdid		  rd 1
465 serge 359
 
764 Rus 360
hdbase		  rd 1	  ; for boot 0x1f0
361
hdid		  rd 1
362
hdpos		  rd 1	  ; for boot 0x1
363
fat32part	  rd 1	  ; for boot 0x1
364
cdpos		  rd 1
465 serge 365
 
764 Rus 366
sb16		  rd 1
465 serge 367
 
368
;CPUID information
764 Rus 369
cpu_vendor	  rd 3
370
cpu_sign	  rd 1
371
cpu_info	  rd 1
372
cpu_caps	  rd 4
465 serge 373
 
374
 
764 Rus 375
pg_data 	  PG_DATA
376
heap_test	  rd 1
465 serge 377
 
764 Rus 378
buttontype	  rd 1
465 serge 379
windowtypechanged rd 1
380
 
764 Rus 381
hd_entries	  rd 1	   ;unused ? 0xfe10
465 serge 382
 
383
;* start code - Mario79
384
 
764 Rus 385
mouse_active	      rd 1
386
mouse_pause	      rd 1
465 serge 387
MouseTickCounter      rd 1
388
com1_mouse_detected   rb 1
389
com2_mouse_detected   rb 1
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