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 |