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