Subversion Repositories Kolibri OS

Rev

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

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