Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4429 | Serge | 1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
||
3 | ;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;; |
||
4 | ;; Distributed under terms of the GNU General Public License ;; |
||
5 | ;; ;; |
||
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
7 | |||
8 | $Revision: 4418 $ |
||
9 | |||
10 | iglobal |
||
11 | szKernel db 'KERNEL', 0 |
||
12 | szVersion db 'version',0 |
||
13 | endg |
||
14 | |||
15 | align 4 |
||
16 | __exports: |
||
17 | export 'KERNEL', \ |
||
18 | alloc_kernel_space, 'AllocKernelSpace', \ ; stdcall |
||
19 | alloc_page, 'AllocPage', \ ; gcc ABI |
||
20 | alloc_pages, 'AllocPages', \ ; stdcall |
||
21 | commit_pages, 'CommitPages', \ ; eax, ebx, ecx |
||
22 | \ |
||
23 | disk_add, 'DiskAdd', \ ;stdcall |
||
24 | disk_del, 'DiskDel', \ |
||
25 | disk_media_changed, 'DiskMediaChanged', \ ;stdcall |
||
26 | \ |
||
27 | create_event, 'CreateEvent', \ ; ecx, esi |
||
28 | destroy_event, 'DestroyEvent', \ ; |
||
29 | raise_event, 'RaiseEvent', \ ; eax, ebx, edx, esi |
||
30 | wait_event, 'WaitEvent', \ ; eax, ebx |
||
31 | wait_event_timeout, 'WaitEventTimeout', \ ; eax, ebx, ecx |
||
32 | get_event_ex, 'GetEvent', \ ; edi |
||
33 | clear_event, 'ClearEvent', \ ;see EVENT.inc for specification |
||
34 | send_event, 'SendEvent', \ ;see EVENT.inc for specification |
||
35 | \ |
||
36 | create_kernel_object, 'CreateObject', \ |
||
37 | create_ring_buffer, 'CreateRingBuffer', \ ; stdcall |
||
38 | destroy_kernel_object, 'DestroyObject', \ |
||
39 | free_kernel_space, 'FreeKernelSpace', \ ; stdcall |
||
40 | free_page, 'FreePage', \ ; eax |
||
41 | kernel_alloc, 'KernelAlloc', \ ; stdcall |
||
42 | kernel_free, 'KernelFree', \ ; stdcall |
||
43 | malloc, 'Kmalloc', \ |
||
44 | free, 'Kfree', \ |
||
45 | map_io_mem, 'MapIoMem', \ ; stdcall |
||
46 | map_page, 'MapPage', \ ; stdcall |
||
47 | get_pg_addr, 'GetPgAddr', \ ; eax |
||
48 | get_phys_addr, 'GetPhysAddr', \ ; eax |
||
49 | map_space, 'MapSpace', \ |
||
50 | release_pages, 'ReleasePages', \ |
||
51 | \ |
||
52 | mutex_init, 'MutexInit', \ ; gcc fastcall |
||
53 | mutex_lock, 'MutexLock', \ ; gcc fastcall |
||
54 | mutex_unlock, 'MutexUnlock', \ ; gcc fastcall |
||
55 | \ |
||
56 | get_display, 'GetDisplay', \ |
||
57 | set_screen, 'SetScreen', \ |
||
58 | window._.get_rect, 'GetWindowRect', \ ; gcc fastcall |
||
59 | pci_api_drv, 'PciApi', \ |
||
60 | pci_read8, 'PciRead8', \ ; stdcall |
||
61 | pci_read16, 'PciRead16', \ ; stdcall |
||
62 | pci_read32, 'PciRead32', \ ; stdcall |
||
63 | pci_write8, 'PciWrite8', \ ; stdcall |
||
64 | pci_write16, 'PciWrite16', \ ; stdcall |
||
65 | pci_write32, 'PciWrite32', \ ; stdcall |
||
66 | \ |
||
67 | get_pid, 'GetPid', \ |
||
68 | get_service, 'GetService', \ ; |
||
69 | reg_service, 'RegService', \ ; stdcall |
||
70 | attach_int_handler, 'AttachIntHandler', \ ; stdcall |
||
71 | user_alloc, 'UserAlloc', \ ; stdcall |
||
72 | user_alloc_at, 'UserAllocAt', \ ; stdcall |
||
73 | user_free, 'UserFree', \ ; stdcall |
||
74 | unmap_pages, 'UnmapPages', \ ; eax, ecx |
||
75 | sys_msg_board_str, 'SysMsgBoardStr', \ |
||
76 | sys_msg_board, 'SysMsgBoard', \ |
||
77 | get_timer_ticks, 'GetTimerTicks', \ |
||
78 | get_stack_base, 'GetStackBase', \ |
||
79 | delay_hs, 'Delay', \ ; ebx |
||
80 | set_mouse_data, 'SetMouseData', \ ; |
||
81 | set_keyboard_data, 'SetKeyboardData', \ ; gcc fastcall |
||
82 | register_keyboard, 'RegKeyboard', \ |
||
83 | delete_keyboard, 'DelKeyboard', \ |
||
84 | get_cpu_freq, 'GetCpuFreq', \ |
||
85 | \ |
||
86 | new_sys_threads, 'CreateThread', \ ; ebx, ecx, edx |
||
87 | \ |
||
88 | srv_handler, 'ServiceHandler', \ |
||
89 | fpu_save, 'FpuSave', \ |
||
90 | fpu_restore, 'FpuRestore', \ |
||
91 | r_f_port_area, 'ReservePortArea', \ |
||
92 | boot_log, 'Boot_Log', \ |
||
93 | \ |
||
94 | load_cursor, 'LoadCursor', \ ;stdcall |
||
95 | \ |
||
96 | get_curr_task, 'GetCurrentTask', \ |
||
97 | load_file, 'LoadFile', \ ;retval eax, ebx |
||
98 | delay_ms, 'Sleep', \ |
||
99 | \ |
||
100 | strncat, 'strncat', \ |
||
101 | strncpy, 'strncpy', \ |
||
102 | strncmp, 'strncmp', \ |
||
103 | strnlen, 'strnlen', \ |
||
104 | strchr, 'strchr', \ |
||
105 | strrchr, 'strrchr', \ |
||
106 | \ |
||
107 | timer_hs, 'TimerHS', \ |
||
108 | timer_hs, 'TimerHs', \ ; shit happens |
||
109 | cancel_timer_hs, 'CancelTimerHS', \ |
||
110 | \ |
||
111 | reg_usb_driver, 'RegUSBDriver', \ |
||
112 | usb_open_pipe, 'USBOpenPipe', \ |
||
113 | usb_close_pipe, 'USBClosePipe', \ |
||
114 | usb_normal_transfer_async, 'USBNormalTransferAsync', \ |
||
115 | usb_control_async, 'USBControlTransferAsync', \ |
||
116 | usb_get_param, 'USBGetParam', \ |
||
117 | usb_hc_func, 'USBHCFunc', \ |
||
118 | \ |
||
119 | NET_add_device, 'NetRegDev', \ |
||
120 | NET_remove_device, 'NetUnRegDev', \ |
||
121 | NET_ptr_to_num, 'NetPtrToNum', \ |
||
122 | NET_link_changed, 'NetLinkChanged', \ |
||
123 | ETH_input, 'Eth_input', \ |
||
124 | \ |
||
125 | 0, 'LFBAddress' ; must be the last one |
||
126 | load kernel_exports_count dword from __exports + 24 |
||
127 | load kernel_exports_addresses dword from __exports + 28 |
||
128 | exp_lfb = OS_BASE + kernel_exports_addresses + (kernel_exports_count - 1) * 4 - 4 |