Subversion Repositories Kolibri OS

Rev

Rev 2143 | Rev 2156 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  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: 2151 $
  9.  
  10.  
  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<D',255,'FGHIJKLMNOPQRSTUVWXYZ'
  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.  
  51. if lang eq ru
  52.   boot_fonts        db   'Шрифты загружены',0
  53.   boot_memdetect    db   'Количество оперативной памяти','     ',' Мб',0
  54.   boot_tss          db   'Установка TSSs',0
  55.   boot_cpuid        db   'Чтение CPUIDs',0
  56.   boot_devices      db   'Поиск устройств',0
  57.   boot_timer        db   'Установка таймера',0
  58.   boot_irqs         db   'Переопределение IRQ',0
  59.   boot_setmouse     db   'Установка мыши',0
  60.   boot_windefs      db   'Установка настроек окон по умолчанию',0
  61.   boot_bgr          db   'Установка фона',0
  62.   boot_resirqports  db   'Резервирование IRQ и портов',0
  63.   boot_setrports    db   'Установка адресов IRQ',0
  64.   boot_setostask    db   'Создание процесса ядра',0
  65.   boot_allirqs      db   'Открытие всех IRQ',0
  66.   boot_tsc          db   'Чтение TSC',0
  67.   boot_cpufreq      db   'Частота процессора ','    ',' МГц',0
  68.   boot_pal_ega      db   'Установка EGA/CGA 320x200 палитры',0
  69.   boot_pal_vga      db   'Установка VGA 640x480 палитры',0
  70.   boot_failed       db   'Загрузка первого приложения не удалась',0
  71.   boot_mtrr         db   'Установка MTRR',0
  72. if preboot_blogesc
  73.   boot_tasking      db   'Все готово для запуска, нажмитре ESC для старта',0
  74. end if
  75. else
  76.   boot_fonts        db   'Fonts loaded',0
  77.   boot_memdetect    db   'Determining amount of memory',0
  78.   boot_tss          db   'Setting TSSs',0
  79.   boot_cpuid        db   'Reading CPUIDs',0
  80.   boot_devices      db   'Detecting devices',0
  81.   boot_setmouse     db   'Setting mouse',0
  82.   boot_windefs      db   'Setting window defaults',0
  83.   boot_bgr          db   'Calculating background',0
  84.   boot_resirqports  db   'Reserving IRQs & ports',0
  85.   boot_setostask    db   'Setting OS task',0
  86.   boot_allirqs      db   'Unmasking IRQs',0
  87.   boot_tsc          db   'Reading TSC',0
  88.   boot_cpufreq      db   'CPU frequency is ','    ',' MHz',0
  89.   boot_pal_ega      db   'Setting EGA/CGA 320x200 palette',0
  90.   boot_pal_vga      db   'Setting VGA 640x480 palette',0
  91.   boot_failed       db   'Failed to start first app',0
  92.   boot_mtrr         db   'Setting MTRR',0
  93. if preboot_blogesc
  94.   boot_tasking      db   'All set - press ESC to start',0
  95. end if
  96. end if
  97.  
  98.   boot_APIC_found   db   'APIC enabled', 0
  99.   boot_APIC_nfound  db   'APIC not found', 0
  100.  
  101. ;new_process_loading db 'K : New Process - loading',13,10,0
  102. ;new_process_running db 'K : New Process - done',13,10,0
  103. start_not_enough_memory db 'K : New Process - not enough memory',13,10,0
  104.  
  105. msg_unresolved db 'unresolved ',0
  106. msg_module     db 'in module ',0
  107. msg_version    db 'incompatible driver version',13,10,0
  108. msg_www        db 'please visit www.kolibrios.org',13,10,0
  109. msg_CR         db  13,10,0
  110. aSis           db 'SIS',0
  111.  
  112. intel_str      db "GenuineIntel",0
  113. AMD_str        db "AuthenticAMD",0
  114.  
  115. ;szSound        db 'SOUND',0
  116. ;szInfinity     db 'INFINITY',0
  117. szHwMouse       db 'ATI2D',0
  118. szPS2MDriver    db 'PS2MOUSE',0
  119. ;szCOM_MDriver   db 'COM_MOUSE',0
  120. szUSB           db 'USB',0
  121. szAtiHW         db '/rd/1/drivers/ati2d.drv',0
  122.  
  123. szSTART        db 'START',0
  124. szEXPORTS      db 'EXPORTS',0
  125. sz_EXPORTS     db '_EXPORTS',0
  126.  
  127. szIMPORTS      db 'IMPORTS',0
  128.  
  129. read_firstapp  db '/sys/'
  130. firstapp       db  'LAUNCHER',0
  131. notifyapp      db '@notify',0
  132. if lang eq ru
  133. ud_user_message db 'Ошибка: неподдерживаемая инструкция процессора',0
  134. else
  135. ud_user_message db 'Error: unsupported processor instruction',0
  136. end if
  137.  
  138. char    db '/sys/FONTS/CHAR.MT',0
  139. char2   db '/sys/FONTS/CHAR2.MT',0
  140.  
  141. bootpath       db  '/KOLIBRI    '
  142. bootpath2      db  0
  143. vmode          db  '/sys/drivers/VMODE.MDR',0
  144. vrr_m          db  'VRR_M',0
  145. kernel_file    db  'KERNEL  MNT'
  146.  
  147. dev_data_path  db '/RD/1/DRIVERS/DEVICES.DAT',0
  148.  
  149. align 4
  150.  
  151. shmem_list:
  152.  .bk           dd shmem_list
  153.  .fd           dd shmem_list
  154.  
  155. dll_list:
  156.  .bk           dd dll_list
  157.  .fd           dd dll_list
  158.  
  159. MAX_DEFAULT_DLL_ADDR = 0x20000000
  160. MIN_DEFAULT_DLL_ADDR = 0x10000000
  161. dll_cur_addr   dd MIN_DEFAULT_DLL_ADDR
  162.  
  163. ; supported videomodes
  164.  
  165.  
  166. ; mike.dld {
  167. db 0
  168. dd servetable-0x10000
  169. draw_line       dd __sys_draw_line
  170. draw_pointer    dd __sys_draw_pointer
  171. ;//mike.dld, 2006-08-02 [
  172. ;drawbar         dd __sys_drawbar
  173. drawbar         dd __sys_drawbar.forced
  174. ;//mike.dld, 2006-08-02 ]
  175. putpixel        dd __sys_putpixel
  176. ; } mike.dld
  177.  
  178.  
  179. align 4
  180. keyboard   dd 1
  181. syslang    dd 1
  182.  
  183. boot_y     dd 10
  184.  
  185. pci_bios_entry  dd 0
  186.                 dw pci_code_sel
  187.  
  188. if __DEBUG__ eq 1
  189.   include_debug_strings
  190. end if
  191.  
  192. IncludeIGlobals
  193.  
  194. align 16
  195. gdts:
  196.  
  197.         dw     gdte-$-1
  198.         dd     gdts
  199.         dw     0
  200.  
  201. ; Attention! Do not change the order of the first four selectors. They are used in Fast System Call
  202. ; must be : os_code, os_data, app_code, app_data, ....
  203.  
  204. int_code_l:
  205. os_code_l:
  206.         dw     0xffff
  207.         dw     0x0000
  208.         db     0x00
  209.         dw     11011111b *256 +10011010b
  210.         db     0x00
  211.  
  212. int_data_l:
  213. os_data_l:
  214.         dw     0xffff
  215.         dw     0x0000
  216.         db     0x00
  217.         dw     11011111b *256 +10010010b
  218.         db     0x00
  219.  
  220. app_code_l:
  221.         dw 0xFFFF
  222.         dw 0
  223.         db 0
  224.         db cpl3
  225.         dw G32+D32+0xF;
  226.  
  227. app_data_l:
  228.         dw 0xFFFF
  229.         dw 0
  230.         db 0
  231.         db drw3
  232.         dw G32+D32+0xF;
  233.  
  234. ; ------------- PCI BIOS ------------------
  235.  
  236. pci_code_32:
  237.         dw 0         ;lim  0-15
  238.         dw 0         ;base 0-15
  239.         db 0         ;base 16-23
  240.         db cpl0      ;type
  241.         db D32       ;lim 16-19+props
  242.         db 0         ;base 24-31
  243.  
  244. pci_data_32:
  245.         dw 0         ;lim  0-15
  246.         dw 0         ;base 0-15
  247.         db 0         ;base 16-23
  248.         db dpl0      ;type
  249.         db D32       ;lim 16-19+props
  250.         db 0         ;base 24-31
  251.  
  252. ; --------------- APM ---------------------
  253. apm_code_32:
  254.         dw     0x0f        ; limit 64kb
  255.         db     0, 0, 0
  256.         dw     11010000b *256 +10011010b
  257.         db     0x00
  258. apm_code_16:
  259.         dw     0x0f
  260.         db     0, 0, 0
  261.         dw     10010000b *256 +10011010b
  262.         db     0x00
  263. apm_data_16:
  264.         dw     0x0f
  265.         db     0, 0, 0
  266.         dw     10010000b *256 +10010010b
  267.         db     0x00
  268. ; -----------------------------------------
  269.  
  270. graph_data_l:
  271.  
  272.         dw     0x7ff
  273.         dw     0x0000
  274.         db     0x00
  275.         dw     11010000b *256 +11110010b
  276.         db     0x00
  277. tss0_l:
  278.         dw     TSS_SIZE-1
  279.         dw     tss and 0xFFFF
  280.         db     (tss shr 16) and 0xFF
  281.         db     10001001b
  282.         dw     (tss shr 16) and 0xFF00
  283.  
  284. tls_data_l:
  285.         dw 0x0FFF
  286.         dw 0
  287.         db 0
  288.         db drw3
  289.         dw D32
  290.  
  291. endofcode:
  292. gdte:
  293.  
  294. align 16
  295. cur_saved_data    rb 4096
  296. fpu_data:         rb 512
  297.  
  298. mem_block_list    rd 64*2
  299. mem_block_mask    rd 2
  300.  
  301. mem_used.fd       rd 1
  302. mem_used.bk       rd 1
  303.  
  304. mem_hash_cnt      rd 64
  305.  
  306. next_memblock     rd 1
  307.  
  308. heap_mutex        MUTEX
  309. heap_size         rd 1
  310. heap_free         rd 1
  311. heap_blocks       rd 1
  312. free_blocks       rd 1
  313.  
  314. mst MEM_STATE
  315.  
  316. page_start        rd 1
  317. page_end          rd 1
  318. sys_page_map      rd 1
  319. os_stack_seg      rd 1
  320.  
  321.  
  322. srv.fd            rd 1
  323. srv.bk            rd 1
  324.  
  325.  
  326. align 16
  327.  
  328. _display          display_t
  329.  
  330. _WinMapAddress    rd 1
  331. _WinMapSize       rd 1
  332.  
  333. def_cursor        rd 1
  334. current_cursor    rd 1
  335. hw_cursor         rd 1
  336. cur_saved_base    rd 1
  337.  
  338. cur.lock          rd 1   ;1 - lock update, 2- hide
  339. cur.left          rd 1   ;cursor clip box
  340. cur.top           rd 1
  341. cur.right         rd 1
  342. cur.bottom        rd 1
  343. cur.w             rd 1
  344. cur.h             rd 1
  345.  
  346. ipc_tmp           rd 1
  347. ipc_pdir          rd 1
  348. ipc_ptab          rd 1
  349.  
  350. proc_mem_map      rd 1
  351. proc_mem_pdir     rd 1
  352. proc_mem_tab      rd 1
  353.  
  354. tmp_task_pdir     rd 1
  355. tmp_task_ptab     rd 1
  356.  
  357. default_io_map    rd 1
  358.  
  359. LFBSize           rd 1
  360.  
  361. stall_mcs         rd 1
  362. current_slot      rd 1
  363.  
  364. ; status
  365. hd1_status                  rd 1  ; 0 - free : other - pid
  366. application_table_status    rd 1  ; 0 - free : other - pid
  367.  
  368. ; device addresses
  369. mididp            rd 1
  370. midisp            rd 1
  371.  
  372. cdbase            rd 1
  373. cdid              rd 1
  374.  
  375. hdbase            rd 1    ; for boot 0x1f0
  376. hdid              rd 1
  377. hdpos             rd 1    ; for boot 0x1
  378. label   known_part dword
  379. fat32part         rd 1    ; for boot 0x1
  380. cdpos             rd 1
  381.  
  382. ;CPUID information
  383. cpu_vendor        rd 3
  384. cpu_sign          rd 1
  385. cpu_info          rd 1
  386. cpu_caps          rd 4
  387.  
  388.  
  389. pg_data           PG_DATA
  390. heap_test         rd 1
  391.  
  392. buttontype        rd 1
  393. windowtypechanged rd 1
  394.  
  395. hd_entries        rd 1     ;unused ? 0xfe10
  396.  
  397. ;* start code - Mario79
  398.  
  399. mouse_active          rd 1
  400. mouse_pause           rd 1
  401. MouseTickCounter      rd 1
  402.  
  403. ;* end code - Mario79
  404.  
  405. img_background        rd 1
  406. mem_BACKGROUND        rd 1
  407. static_background_data rd 1
  408.  
  409. cache_ide0:
  410. cache_ide0_pointer            rd 1
  411. cache_ide0_size               rd 1   ; not use
  412. cache_ide0_data_pointer       rd 1
  413. cache_ide0_system_data_size   rd 1   ; not use
  414. cache_ide0_appl_data_size     rd 1   ; not use
  415. cache_ide0_system_data        rd 1
  416. cache_ide0_appl_data          rd 1
  417. cache_ide0_system_sad_size    rd 1
  418. cache_ide0_appl_sad_size      rd 1
  419. cache_ide0_search_start       rd 1
  420. cache_ide0_appl_search_start  rd 1
  421.  
  422. cache_ide1:
  423. cache_ide1_pointer            rd 1
  424. cache_ide1_size               rd 1   ; not use
  425. cache_ide1_data_pointer       rd 1
  426. cache_ide1_system_data_size   rd 1   ; not use
  427. cache_ide1_appl_data_size     rd 1   ; not use
  428. cache_ide1_system_data        rd 1
  429. cache_ide1_appl_data          rd 1
  430. cache_ide1_system_sad_size    rd 1
  431. cache_ide1_appl_sad_size      rd 1
  432. cache_ide1_search_start       rd 1
  433. cache_ide1_appl_search_start  rd 1
  434.  
  435. cache_ide2:
  436. cache_ide2_pointer            rd 1
  437. cache_ide2_size               rd 1   ; not use
  438. cache_ide2_data_pointer       rd 1
  439. cache_ide2_system_data_size   rd 1   ; not use
  440. cache_ide2_appl_data_size     rd 1   ; not use
  441. cache_ide2_system_data        rd 1
  442. cache_ide2_appl_data          rd 1
  443. cache_ide2_system_sad_size    rd 1
  444. cache_ide2_appl_sad_size      rd 1
  445. cache_ide2_search_start       rd 1
  446. cache_ide2_appl_search_start  rd 1
  447.  
  448. cache_ide3:
  449. cache_ide3_pointer            rd 1
  450. cache_ide3_size               rd 1   ; not use
  451. cache_ide3_data_pointer       rd 1
  452. cache_ide3_system_data_size   rd 1   ; not use
  453. cache_ide3_appl_data_size     rd 1   ; not use
  454. cache_ide3_system_data        rd 1
  455. cache_ide3_appl_data          rd 1
  456. cache_ide3_system_sad_size    rd 1
  457. cache_ide3_appl_sad_size      rd 1
  458. cache_ide3_search_start       rd 1
  459. cache_ide3_appl_search_start  rd 1
  460.  
  461. debug_step_pointer rd 1
  462. hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache
  463. cd_appl_data rb 1 ; 0 = system cache, 1 - application cache
  464.  
  465. lba_read_enabled      rd 1  ; 0 = disabled , 1 = enabled
  466. pci_access_enabled    rd 1  ; 0 = disabled , 1 = enabled
  467. timer_ticks_enable rb 1         ; for cd driver
  468.  
  469. NumBiosDisks    rd 1
  470. BiosDisksData   rb 200h
  471. BiosDiskCaches  rb 80h*(cache_ide1-cache_ide0)
  472. BiosDiskPartitions rd 80h
  473.  
  474. IncludeUGlobals
  475.