Rev 940 | Rev 1018 | 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: 983 $ |
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 |