Subversion Repositories Kolibri OS

Rev

Rev 3194 | 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: 3519 $
  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_tss          db   'Setting TSSs',0
  53. ;  boot_cpuid        db   'Reading CPUIDs',0
  54. ;  boot_devices      db   'Detecting devices',0
  55.   boot_timer        db   'Setting timer',0
  56.   boot_irqs         db   'Reprogramming IRQs',0
  57. ;  boot_setmouse     db   'Setting mouse',0
  58.   boot_windefs      db   'Setting window defaults',0
  59. ;  boot_bgr          db   'Calculating background',0
  60. ;  boot_setostask    db   'Setting OS task',0
  61.   boot_allirqs      db   'Unmasking all IRQs',0
  62. ;  boot_tsc          db   'Reading TSC',0
  63.   boot_cpufreq      db   'CPU frequency is ','    ',' MHz',0
  64. ;  boot_failed       db   'Failed to start first app',0
  65. ;  boot_mtrr         db   'Setting MTRR',0
  66. ;  boot_uDMA_ok      db   'Set user DMA OK',0
  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. ; -----------------------------------------
  216.  
  217. graph_data_l:
  218.  
  219.         dw     0x7ff
  220.         dw     0x0000
  221.         db     0x00
  222.         dw     11010000b *256 +11110010b
  223.         db     0x00
  224. tss0_l:
  225.         dw     TSS_SIZE-1
  226.         dw     tss and 0xFFFF
  227.         db     (tss shr 16) and 0xFF
  228.         db     10001001b
  229.         dw     (tss shr 16) and 0xFF00
  230.  
  231. tls_data_l:
  232.         dw 0x0FFF
  233.         dw 0
  234.         db 0
  235.         db drw3
  236.         dw D32
  237.  
  238. endofcode:
  239. gdte:
  240.  
  241. align 16
  242. diff16 "cur_saved_data (data32.inc) ", 0, $
  243. cur_saved_data    rb 4096
  244. fpu_data:         rb 512
  245.  
  246. ; device irq owners
  247. irq_owner         rd 16 ; process id
  248.  
  249. ; on irq read ports
  250.  
  251. irq00read         rd 16
  252. irq01read         rd 16
  253. irq02read         rd 16
  254. irq03read         rd 16
  255. irq04read         rd 16
  256. irq05read         rd 16
  257. irq06read         rd 16
  258. irq07read         rd 16
  259. irq08read         rd 16
  260. irq09read         rd 16
  261. irq10read         rd 16
  262. irq11read         rd 16
  263. irq12read         rd 16
  264. irq13read         rd 16
  265. irq14read         rd 16
  266. irq15read         rd 16
  267.  
  268. irq_tab           rd 16
  269.  
  270. diff16 "mem_block_map  (data32.inc) ", 0, $
  271. mem_block_map     rb 512
  272. mem_block_list    rd 64
  273. large_block_list  rd 31
  274. mem_block_mask    rd 2
  275. large_block_mask  rd 1
  276.  
  277. diff16 "mem_used       (data32.inc) ", 0, $
  278.  
  279. mem_used.fd       rd 1
  280. mem_used.bk       rd 1
  281.  
  282. mem_block_arr     rd 1
  283. mem_block_start   rd 1
  284. mem_block_end     rd 1
  285.  
  286. heap_mutex        rd 1
  287. heap_size         rd 1
  288. heap_free         rd 1
  289. heap_blocks       rd 1
  290. free_blocks       rd 1
  291.  
  292. mst MEM_STATE
  293. diff16 "page_start     (data32.inc) ", 0, $
  294.  
  295. page_start        rd 1
  296. page_end          rd 1
  297. sys_page_map      rd 1
  298. os_stack_seg      rd 1
  299.  
  300.  
  301. srv.fd            rd 1
  302. srv.bk            rd 1
  303.  
  304.  
  305. ;align 64
  306. ;img_draw_core_fn  rd 1         ; putimage variables & helpers
  307. ;img_draw_edge_fn  rd 1
  308. ;img_lfb_origin   rd 1
  309. ;img_buf_origin   rd 1
  310. ;img_buf_line_size rd 1
  311. ;img_palette      rd 1
  312. ;img_bitoffset    rd 1
  313. ;img_edgeoffset   rd 1
  314. ;img_bytes_per_pix rd 1
  315. ;img_map_right    rd 1
  316. ;img_map_x        rd 1
  317. ;img_pix_x        rd 1          ; real Xsize
  318. ;img_pix_y        rd 1          ; real Ysize
  319. ;img_screen_x     rd 1
  320. ;img_screen_y     rd 1
  321.  
  322. align 64
  323. diff16 "_WinMapAddress (data32.inc) ", 0, $
  324.  
  325. ;_WinMapWidth     rd 1
  326. ;_WinMapHeight    rd 1
  327. _WinMapAddress    rd 1
  328. _WinMapSize       rd 1
  329.  
  330. align 16
  331. _display          display_t
  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. diff16 "default_io_map (data32.inc) ", 0, $
  358.  
  359. default_io_map    rd 1
  360.  
  361. LFBSize           rd 1
  362.  
  363. stall_mcs         rd 1
  364. current_slot      rd 1
  365.  
  366. ; status
  367. hd1_status                  rd 1  ; 0 - free : other - pid
  368. application_table_status    rd 1  ; 0 - free : other - pid
  369.  
  370. ; device addresses
  371. mididp            rd 1
  372. midisp            rd 1
  373.  
  374. cdbase            rd 1
  375. cdid              rd 1
  376.  
  377. hdbase            rd 1    ; for boot 0x1f0
  378. hdid              rd 1
  379. hdpos             rd 1    ; for boot 0x1
  380. label   known_part dword
  381. fat32part         rd 1    ; for boot 0x1
  382. cdpos             rd 1
  383.  
  384. ;CPUID information
  385. cpu_vendor        rd 3
  386. cpu_sign          rd 1
  387. cpu_info          rd 1
  388. cpu_caps          rd 4
  389.  
  390.  
  391. pg_data           PG_DATA
  392. heap_test         rd 1
  393.  
  394. buttontype        rd 1
  395. windowtypechanged rd 1
  396.  
  397. hd_entries        rd 1     ;unused ? 0xfe10
  398.  
  399. ;* start code - Mario79
  400.  
  401. mouse_active          rd 1
  402. mouse_pause           rd 1
  403. MouseTickCounter      rd 1
  404.  
  405. ;* end code - Mario79
  406.  
  407. img_background        rd 1
  408. mem_BACKGROUND        rd 1
  409. static_background_data rd 1
  410.  
  411. cache_ide0:
  412. cache_ide0_pointer            rd 1
  413. cache_ide0_size               rd 1   ; not use
  414. cache_ide0_data_pointer       rd 1
  415. cache_ide0_system_data_size   rd 1   ; not use
  416. cache_ide0_appl_data_size     rd 1   ; not use
  417. cache_ide0_system_data        rd 1
  418. cache_ide0_appl_data          rd 1
  419. cache_ide0_system_sad_size    rd 1
  420. cache_ide0_appl_sad_size      rd 1
  421. cache_ide0_search_start       rd 1
  422. cache_ide0_appl_search_start  rd 1
  423.  
  424. cache_ide1:
  425. cache_ide1_pointer            rd 1
  426. cache_ide1_size               rd 1   ; not use
  427. cache_ide1_data_pointer       rd 1
  428. cache_ide1_system_data_size   rd 1   ; not use
  429. cache_ide1_appl_data_size     rd 1   ; not use
  430. cache_ide1_system_data        rd 1
  431. cache_ide1_appl_data          rd 1
  432. cache_ide1_system_sad_size    rd 1
  433. cache_ide1_appl_sad_size      rd 1
  434. cache_ide1_search_start       rd 1
  435. cache_ide1_appl_search_start  rd 1
  436.  
  437. cache_ide2:
  438. cache_ide2_pointer            rd 1
  439. cache_ide2_size               rd 1   ; not use
  440. cache_ide2_data_pointer       rd 1
  441. cache_ide2_system_data_size   rd 1   ; not use
  442. cache_ide2_appl_data_size     rd 1   ; not use
  443. cache_ide2_system_data        rd 1
  444. cache_ide2_appl_data          rd 1
  445. cache_ide2_system_sad_size    rd 1
  446. cache_ide2_appl_sad_size      rd 1
  447. cache_ide2_search_start       rd 1
  448. cache_ide2_appl_search_start  rd 1
  449.  
  450. cache_ide3:
  451. cache_ide3_pointer            rd 1
  452. cache_ide3_size               rd 1   ; not use
  453. cache_ide3_data_pointer       rd 1
  454. cache_ide3_system_data_size   rd 1   ; not use
  455. cache_ide3_appl_data_size     rd 1   ; not use
  456. cache_ide3_system_data        rd 1
  457. cache_ide3_appl_data          rd 1
  458. cache_ide3_system_sad_size    rd 1
  459. cache_ide3_appl_sad_size      rd 1
  460. cache_ide3_search_start       rd 1
  461. cache_ide3_appl_search_start  rd 1
  462.  
  463. debug_step_pointer rd 1
  464. hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache
  465. cd_appl_data rb 1 ; 0 = system cache, 1 - application cache
  466.  
  467. lba_read_enabled      rd 1  ; 0 = disabled , 1 = enabled
  468. pci_access_enabled    rd 1  ; 0 = disabled , 1 = enabled
  469. timer_ticks_enable rb 1         ; for cd driver
  470.  
  471. NumBiosDisks    rd 1
  472. BiosDisksData   rb 200h
  473. BiosDiskCaches  rb 80h*(cache_ide1-cache_ide0)
  474. BiosDiskPartitions rd 80h
  475.  
  476. diff16 "UGlobals start ",0,$
  477.  
  478. IncludeUGlobals
  479.