Rev 1276 | Rev 1300 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
750 | victor | 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
||
1289 | diamond | 3 | ;; Copyright (C) KolibriOS team 2004-2009. All rights reserved. ;; |
750 | victor | 4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
||
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
593 | mikedld | 7 | |
465 | serge | 8 | $Revision: 1289 $ |
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 | |||
1055 | Galkov | 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 |
1055 | Galkov | 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 |
1055 | Galkov | 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 |
||
1055 | Galkov | 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 |
||
1055 | Galkov | 91 | szHwMouse db 'ATI2D',0 |
92 | szPS2MDriver db 'PS2MOUSE',0 |
||
1106 | diamond | 93 | ;szCOM_MDriver db 'COM_MOUSE',0 |
1055 | Galkov | 94 | szUSB db 'USB',0 |
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 | |
1055 | Galkov | 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 |
||
1055 | Galkov | 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 | |||
1289 | diamond | 122 | dll_list: |
123 | .bk dd dll_list |
||
124 | .fd dd dll_list |
||
125 | |||
126 | MAX_DEFAULT_DLL_ADDR = 0x20000000 |
||
127 | MIN_DEFAULT_DLL_ADDR = 0x10000000 |
||
128 | dll_cur_addr dd MIN_DEFAULT_DLL_ADDR |
||
129 | |||
940 | serge | 130 | ; supported videomodes |
131 | |||
1276 | Lrz | 132 | ;mode_1280_1024_32: |
133 | ; dw 1280,1024,32,60 |
||
134 | ;mode_1280_1024_24: |
||
135 | ; dw 1280,1024,24,60 |
||
136 | ;mode_1024_768_32: |
||
137 | ; dw 1024,768,32,60 |
||
138 | ;mode_1024_768_24: |
||
139 | ; dw 1024,768,24,60 |
||
140 | ;mode_800_600_32: |
||
141 | ; dw 800,600,32,60 |
||
142 | ;mode_800_600_24: |
||
143 | ; dw 800,600,24,60 |
||
144 | ;mode_640_480_32: |
||
145 | ; dw 640,480,32,60 |
||
146 | ;mode_640_480_24: |
||
147 | ; dw 640,480,24,60 |
||
148 | ;mode_640_480_16: |
||
149 | ; dw 640,480,16,60 |
||
150 | ;mode_320_240_8: |
||
151 | ; dw 320,240,8,60 |
||
465 | serge | 152 | |
153 | ; mike.dld { |
||
154 | db 0 |
||
155 | dd servetable-0x10000 |
||
1055 | Galkov | 156 | draw_line dd __sys_draw_line |
157 | disable_mouse dd __sys_disable_mouse |
||
158 | draw_pointer dd __sys_draw_pointer |
||
465 | serge | 159 | ;//mike.dld, 2006-08-02 [ |
160 | ;drawbar dd __sys_drawbar |
||
1055 | Galkov | 161 | drawbar dd __sys_drawbar.forced |
465 | serge | 162 | ;//mike.dld, 2006-08-02 ] |
1055 | Galkov | 163 | putpixel dd __sys_putpixel |
465 | serge | 164 | ; } mike.dld |
165 | |||
166 | |||
167 | align 4 |
||
168 | keyboard dd 1 |
||
169 | syslang dd 1 |
||
170 | |||
1055 | Galkov | 171 | boot_y dd 10 |
465 | serge | 172 | |
1055 | Galkov | 173 | pci_bios_entry dd 0 |
174 | dw pci_code_sel |
||
465 | serge | 175 | |
176 | if __DEBUG__ eq 1 |
||
177 | include_debug_strings |
||
178 | end if |
||
179 | |||
180 | IncludeIGlobals |
||
181 | |||
182 | align 16 |
||
183 | gdts: |
||
184 | |||
1055 | Galkov | 185 | dw gdte-$-1 |
186 | dd gdts |
||
187 | dw 0 |
||
465 | serge | 188 | |
525 | diamond | 189 | ; Attention! Do not change the order of the first four selectors. They are used in Fast System Call |
465 | serge | 190 | ; must be : os_code, os_data, app_code, app_data, .... |
191 | |||
192 | int_code_l: |
||
193 | os_code_l: |
||
1055 | Galkov | 194 | dw 0xffff |
195 | dw 0x0000 |
||
196 | db 0x00 |
||
197 | dw 11011111b *256 +10011010b |
||
198 | db 0x00 |
||
465 | serge | 199 | |
200 | int_data_l: |
||
201 | os_data_l: |
||
1055 | Galkov | 202 | dw 0xffff |
203 | dw 0x0000 |
||
204 | db 0x00 |
||
205 | dw 11011111b *256 +10010010b |
||
206 | db 0x00 |
||
465 | serge | 207 | |
208 | app_code_l: |
||
1055 | Galkov | 209 | dw 0xFFFF |
210 | dw 0 |
||
211 | db 0 |
||
212 | db cpl3 |
||
1220 | serge | 213 | dw G32+D32+0xF; |
465 | serge | 214 | |
215 | app_data_l: |
||
1055 | Galkov | 216 | dw 0xFFFF |
217 | dw 0 |
||
218 | db 0 |
||
219 | db drw3 |
||
1220 | serge | 220 | dw G32+D32+0xF; |
465 | serge | 221 | |
586 | serge | 222 | ; ------------- PCI BIOS ------------------ |
223 | |||
224 | pci_code_32: |
||
1055 | Galkov | 225 | dw 0 ;lim 0-15 |
226 | dw 0 ;base 0-15 |
||
227 | db 0 ;base 16-23 |
||
228 | db cpl0 ;type |
||
229 | db D32 ;lim 16-19+props |
||
230 | db 0 ;base 24-31 |
||
586 | serge | 231 | |
232 | pci_data_32: |
||
1055 | Galkov | 233 | dw 0 ;lim 0-15 |
234 | dw 0 ;base 0-15 |
||
235 | db 0 ;base 16-23 |
||
236 | db dpl0 ;type |
||
237 | db D32 ;lim 16-19+props |
||
238 | db 0 ;base 24-31 |
||
586 | serge | 239 | |
465 | serge | 240 | ; --------------- APM --------------------- |
241 | apm_code_32: |
||
1055 | Galkov | 242 | dw 0x0f ; limit 64kb |
243 | db 0, 0, 0 |
||
244 | dw 11010000b *256 +10011010b |
||
245 | db 0x00 |
||
465 | serge | 246 | apm_code_16: |
1055 | Galkov | 247 | dw 0x0f |
248 | db 0, 0, 0 |
||
249 | dw 10010000b *256 +10011010b |
||
250 | db 0x00 |
||
465 | serge | 251 | apm_data_16: |
1055 | Galkov | 252 | dw 0x0f |
253 | db 0, 0, 0 |
||
254 | dw 10010000b *256 +10010010b |
||
255 | db 0x00 |
||
465 | serge | 256 | ; ----------------------------------------- |
257 | |||
258 | graph_data_l: |
||
259 | |||
1055 | Galkov | 260 | dw 0x7ff |
261 | dw 0x0000 |
||
262 | db 0x00 |
||
263 | dw 11010000b *256 +11110010b |
||
264 | db 0x00 |
||
465 | serge | 265 | tss0_l: |
1055 | Galkov | 266 | dw TSS_SIZE-1 |
267 | dw tss and 0xFFFF |
||
268 | db (tss shr 16) and 0xFF |
||
269 | db 10001001b |
||
270 | dw (tss shr 16) and 0xFF00 |
||
1220 | serge | 271 | |
272 | tls_data_l: |
||
273 | dw 0x0FFF |
||
274 | dw 0 |
||
275 | db 0 |
||
276 | db drw3 |
||
277 | dw D32 |
||
278 | |||
465 | serge | 279 | endofcode: |
280 | gdte: |
||
281 | |||
282 | align 16 |
||
1055 | Galkov | 283 | cur_saved_data rb 4096 |
284 | fpu_data: rb 512 |
||
465 | serge | 285 | |
286 | ; device irq owners |
||
1055 | Galkov | 287 | irq_owner rd 16 ; process id |
465 | serge | 288 | |
289 | ; on irq read ports |
||
290 | |||
1055 | Galkov | 291 | irq00read rd 16 |
292 | irq01read rd 16 |
||
293 | irq02read rd 16 |
||
294 | irq03read rd 16 |
||
295 | irq04read rd 16 |
||
296 | irq05read rd 16 |
||
297 | irq06read rd 16 |
||
298 | irq07read rd 16 |
||
299 | irq08read rd 16 |
||
300 | irq09read rd 16 |
||
301 | irq10read rd 16 |
||
302 | irq11read rd 16 |
||
303 | irq12read rd 16 |
||
304 | irq13read rd 16 |
||
305 | irq14read rd 16 |
||
306 | irq15read rd 16 |
||
465 | serge | 307 | |
1055 | Galkov | 308 | irq_tab rd 16 |
465 | serge | 309 | |
1055 | Galkov | 310 | mem_block_map rb 512 |
311 | mem_block_list rd 64 |
||
802 | serge | 312 | large_block_list rd 31 |
1055 | Galkov | 313 | mem_block_mask rd 2 |
802 | serge | 314 | large_block_mask rd 1 |
465 | serge | 315 | |
940 | serge | 316 | mem_used.fd rd 1 |
317 | mem_used.bk rd 1 |
||
465 | serge | 318 | |
1055 | Galkov | 319 | mem_block_arr rd 1 |
465 | serge | 320 | mem_block_start rd 1 |
1055 | Galkov | 321 | mem_block_end rd 1 |
465 | serge | 322 | |
940 | serge | 323 | heap_mutex rd 1 |
324 | heap_size rd 1 |
||
325 | heap_free rd 1 |
||
326 | heap_blocks rd 1 |
||
327 | free_blocks rd 1 |
||
465 | serge | 328 | |
329 | mst MEM_STATE |
||
330 | |||
940 | serge | 331 | page_start rd 1 |
332 | page_end rd 1 |
||
1055 | Galkov | 333 | sys_page_map rd 1 |
334 | os_stack_seg rd 1 |
||
465 | serge | 335 | |
940 | serge | 336 | |
1055 | Galkov | 337 | srv.fd rd 1 |
338 | srv.bk rd 1 |
||
465 | serge | 339 | |
1275 | serge | 340 | _display display_t |
341 | |||
1055 | Galkov | 342 | scr_width rd 1 |
343 | scr_height rd 1 |
||
465 | serge | 344 | |
1055 | Galkov | 345 | create_cursor rd 1 |
630 | serge | 346 | select_hw_cursor rd 1 |
1055 | Galkov | 347 | set_hw_cursor rd 1 |
348 | hw_restore rd 1 |
||
465 | serge | 349 | |
1055 | Galkov | 350 | def_cursor rd 1 |
351 | current_cursor rd 1 |
||
352 | hw_cursor rd 1 |
||
353 | cur_def_interl rd 1 |
||
354 | cur_saved_base rd 1 |
||
465 | serge | 355 | cur_saved_interl rd 1 |
1055 | Galkov | 356 | cur_saved_w rd 1 |
357 | cur_saved_h rd 1 |
||
465 | serge | 358 | |
1055 | Galkov | 359 | ipc_tmp rd 1 |
360 | ipc_pdir rd 1 |
||
361 | ipc_ptab rd 1 |
||
465 | serge | 362 | |
1055 | Galkov | 363 | proc_mem_map rd 1 |
364 | proc_mem_pdir rd 1 |
||
365 | proc_mem_tab rd 1 |
||
465 | serge | 366 | |
1055 | Galkov | 367 | tmp_task_pdir rd 1 |
368 | tmp_task_ptab rd 1 |
||
465 | serge | 369 | |
1055 | Galkov | 370 | default_io_map rd 1 |
465 | serge | 371 | |
1055 | Galkov | 372 | LFBSize rd 1 |
465 | serge | 373 | |
1055 | Galkov | 374 | stall_mcs rd 1 |
375 | current_slot rd 1 |
||
465 | serge | 376 | |
377 | ; status |
||
1055 | Galkov | 378 | hd1_status rd 1 ; 0 - free : other - pid |
465 | serge | 379 | application_table_status rd 1 ; 0 - free : other - pid |
380 | |||
381 | ; device addresses |
||
1055 | Galkov | 382 | mididp rd 1 |
383 | midisp rd 1 |
||
465 | serge | 384 | |
1055 | Galkov | 385 | cdbase rd 1 |
386 | cdid rd 1 |
||
465 | serge | 387 | |
1055 | Galkov | 388 | hdbase rd 1 ; for boot 0x1f0 |
389 | hdid rd 1 |
||
390 | hdpos rd 1 ; for boot 0x1 |
||
391 | fat32part rd 1 ; for boot 0x1 |
||
392 | cdpos rd 1 |
||
465 | serge | 393 | |
394 | ;CPUID information |
||
1055 | Galkov | 395 | cpu_vendor rd 3 |
396 | cpu_sign rd 1 |
||
397 | cpu_info rd 1 |
||
398 | cpu_caps rd 4 |
||
465 | serge | 399 | |
400 | |||
1055 | Galkov | 401 | pg_data PG_DATA |
402 | heap_test rd 1 |
||
465 | serge | 403 | |
1055 | Galkov | 404 | buttontype rd 1 |
465 | serge | 405 | windowtypechanged rd 1 |
406 | |||
1055 | Galkov | 407 | hd_entries rd 1 ;unused ? 0xfe10 |
465 | serge | 408 | |
409 | ;* start code - Mario79 |
||
410 | |||
1055 | Galkov | 411 | mouse_active rd 1 |
412 | mouse_pause rd 1 |
||
465 | serge | 413 | MouseTickCounter rd 1 |
769 | Rus | 414 | |
465 | serge | 415 | ;* end code - Mario79 |
416 | |||
1055 | Galkov | 417 | img_background rd 1 |
418 | mem_BACKGROUND rd 1 |
||
1107 | diamond | 419 | static_background_data rd 1 |
465 | serge | 420 | |
709 | diamond | 421 | cache_ide0: |
1055 | Galkov | 422 | cache_ide0_pointer rd 1 |
423 | cache_ide0_size rd 1 ; not use |
||
580 | mario79 | 424 | cache_ide0_data_pointer rd 1 |
425 | cache_ide0_system_data_size rd 1 ; not use |
||
426 | cache_ide0_appl_data_size rd 1 ; not use |
||
1055 | Galkov | 427 | cache_ide0_system_data rd 1 |
428 | cache_ide0_appl_data rd 1 |
||
580 | mario79 | 429 | cache_ide0_system_sad_size rd 1 |
430 | cache_ide0_appl_sad_size rd 1 |
||
431 | cache_ide0_search_start rd 1 |
||
432 | cache_ide0_appl_search_start rd 1 |
||
433 | |||
709 | diamond | 434 | cache_ide1: |
1055 | Galkov | 435 | cache_ide1_pointer rd 1 |
436 | cache_ide1_size rd 1 ; not use |
||
580 | mario79 | 437 | cache_ide1_data_pointer rd 1 |
438 | cache_ide1_system_data_size rd 1 ; not use |
||
439 | cache_ide1_appl_data_size rd 1 ; not use |
||
1055 | Galkov | 440 | cache_ide1_system_data rd 1 |
441 | cache_ide1_appl_data rd 1 |
||
580 | mario79 | 442 | cache_ide1_system_sad_size rd 1 |
443 | cache_ide1_appl_sad_size rd 1 |
||
444 | cache_ide1_search_start rd 1 |
||
445 | cache_ide1_appl_search_start rd 1 |
||
446 | |||
709 | diamond | 447 | cache_ide2: |
1055 | Galkov | 448 | cache_ide2_pointer rd 1 |
449 | cache_ide2_size rd 1 ; not use |
||
580 | mario79 | 450 | cache_ide2_data_pointer rd 1 |
451 | cache_ide2_system_data_size rd 1 ; not use |
||
452 | cache_ide2_appl_data_size rd 1 ; not use |
||
1055 | Galkov | 453 | cache_ide2_system_data rd 1 |
454 | cache_ide2_appl_data rd 1 |
||
580 | mario79 | 455 | cache_ide2_system_sad_size rd 1 |
456 | cache_ide2_appl_sad_size rd 1 |
||
457 | cache_ide2_search_start rd 1 |
||
458 | cache_ide2_appl_search_start rd 1 |
||
459 | |||
709 | diamond | 460 | cache_ide3: |
1055 | Galkov | 461 | cache_ide3_pointer rd 1 |
462 | cache_ide3_size rd 1 ; not use |
||
580 | mario79 | 463 | cache_ide3_data_pointer rd 1 |
464 | cache_ide3_system_data_size rd 1 ; not use |
||
465 | cache_ide3_appl_data_size rd 1 ; not use |
||
1055 | Galkov | 466 | cache_ide3_system_data rd 1 |
467 | cache_ide3_appl_data rd 1 |
||
580 | mario79 | 468 | cache_ide3_system_sad_size rd 1 |
469 | cache_ide3_appl_sad_size rd 1 |
||
470 | cache_ide3_search_start rd 1 |
||
471 | cache_ide3_appl_search_start rd 1 |
||
472 | |||
473 | debug_step_pointer rd 1 |
||
474 | hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache |
||
585 | mario79 | 475 | cd_appl_data rb 1 ; 0 = system cache, 1 - application cache |
580 | mario79 | 476 | |
465 | serge | 477 | lba_read_enabled rd 1 ; 0 = disabled , 1 = enabled |
478 | pci_access_enabled rd 1 ; 0 = disabled , 1 = enabled |
||
1055 | Galkov | 479 | timer_ticks_enable rb 1 ; for cd driver |
465 | serge | 480 | |
1055 | Galkov | 481 | NumBiosDisks rd 1 |
482 | BiosDisksData rb 200h |
||
483 | BiosDiskCaches rb 80h*(cache_ide1-cache_ide0) |
||
709 | diamond | 484 | BiosDiskPartitions rd 80h |
485 | |||
465 | serge | 486 | IncludeUGlobals> |