Subversion Repositories Kolibri OS

Rev

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