Rev 3626 | Rev 4265 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3626 | Rev 3908 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
2 | ;; ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2011. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
5 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
8 | $Revision: 3626 $ |
- | |
Line 9... | Line 8... | ||
9 | 8 | $Revision: 3908 $ |
|
10 | 9 | ||
11 | iglobal |
10 | iglobal |
12 | szKernel db 'KERNEL', 0 |
- | |
13 | szVersion db 'version',0 |
- | |
14 | - | ||
15 | szRegService db 'RegService',0 |
- | |
16 | szGetService db 'GetService',0 |
- | |
17 | szServiceHandler db 'ServiceHandler',0 |
- | |
18 | szAttachIntHandler db 'AttachIntHandler',0 |
- | |
19 | ; szGetIntHandler db 'GetIntHandler', 0 |
- | |
20 | szFpuSave db 'FpuSave',0 |
- | |
21 | szFpuRestore db 'FpuRestore',0 |
- | |
22 | szReservePortArea db 'ReservePortArea',0 |
- | |
23 | szBoot_Log db 'Boot_Log',0 |
- | |
24 | - | ||
25 | szMutexInit db 'MutexInit',0 |
- | |
26 | szMutexLock db 'MutexLock',0 |
- | |
27 | szMutexUnlock db 'MutexUnlock',0 |
- | |
28 | - | ||
29 | szPciApi db 'PciApi', 0 |
- | |
30 | szPciRead32 db 'PciRead32', 0 |
- | |
31 | szPciRead16 db 'PciRead16', 0 |
- | |
32 | szPciRead8 db 'PciRead8', 0 |
- | |
33 | szPciWrite8 db 'PciWrite8',0 |
- | |
34 | szPciWrite16 db 'PciWrite16',0 |
- | |
35 | szPciWrite32 db 'PciWrite32',0 |
- | |
36 | - | ||
37 | szAllocPage db 'AllocPage',0 |
- | |
38 | szAllocPages db 'AllocPages',0 |
- | |
39 | szFreePage db 'FreePage',0 |
- | |
40 | szGetPgAddr db 'GetPgAddr',0 |
- | |
41 | szMapPage db 'MapPage',0 |
- | |
42 | szMapSpace db 'MapSpace',0 |
- | |
43 | szMapIoMem db 'MapIoMem',0 |
- | |
44 | szCommitPages db 'CommitPages',0 |
- | |
45 | szReleasePages db 'ReleasePages',0 |
- | |
46 | - | ||
47 | szAllocKernelSpace db 'AllocKernelSpace',0 |
- | |
48 | szFreeKernelSpace db 'FreeKernelSpace',0 |
- | |
49 | szKernelAlloc db 'KernelAlloc',0 |
- | |
50 | szKernelFree db 'KernelFree',0 |
- | |
51 | szUserAlloc db 'UserAlloc',0 |
- | |
52 | szUserFree db 'UserFree',0 |
- | |
53 | szKmalloc db 'Kmalloc',0 |
- | |
54 | szKfree db 'Kfree',0 |
- | |
55 | szCreateRingBuffer db 'CreateRingBuffer',0 |
- | |
56 | - | ||
57 | szGetPid db 'GetPid',0 |
- | |
58 | szCreateObject db 'CreateObject',0 |
- | |
59 | szDestroyObject db 'DestroyObject',0 |
- | |
60 | szCreateEvent db 'CreateEvent',0 |
- | |
61 | szRaiseEvent db 'RaiseEvent',0 |
- | |
62 | szWaitEvent db 'WaitEvent',0 |
- | |
63 | szDestroyEvent db 'DestroyEvent',0 |
- | |
64 | szClearEvent db 'ClearEvent',0 |
- | |
65 | - | ||
66 | szLoadCursor db 'LoadCursor',0 |
- | |
67 | - | ||
68 | szSysMsgBoardStr db 'SysMsgBoardStr', 0 |
- | |
69 | szSysMsgBoard db 'SysMsgBoard', 0 |
- | |
70 | szGetCurrentTask db 'GetCurrentTask',0 |
- | |
71 | szLFBAddress db 'LFBAddress',0 |
- | |
72 | szLoadFile db 'LoadFile',0 |
- | |
73 | szSendEvent db 'SendEvent',0 |
- | |
74 | szSetMouseData db 'SetMouseData',0 |
- | |
75 | szSetKeyboardData db 'SetKeyboardData',0 |
- | |
76 | szRegKeyboard db 'RegKeyboard',0 |
- | |
77 | szDelKeyboard db 'DelKeyboard',0 |
- | |
78 | szSleep db 'Sleep',0 |
- | |
79 | szGetTimerTicks db 'GetTimerTicks',0 |
- | |
80 | - | ||
81 | szGetDisplay db 'GetDisplay',0 |
- | |
82 | szSetScreen db 'SetScreen',0 |
- | |
83 | - | ||
84 | szStrncat db 'strncat',0 |
- | |
85 | szStrncpy db 'strncpy',0 |
- | |
86 | szstrncmp db 'strncmp',0 |
- | |
87 | szStrnlen db 'strnlen',0 |
- | |
88 | szStrchr db 'strchr',0 |
- | |
89 | szStrrchr db 'strrchr',0 |
- | |
90 | - | ||
91 | szDiskAdd db 'DiskAdd',0 |
- | |
92 | szDiskDel db 'DiskDel',0 |
- | |
93 | szDiskMediaChanged db 'DiskMediaChanged',0 |
- | |
94 | - | ||
95 | szTimerHS db 'TimerHS',0 |
- | |
96 | szCancelTimerHS db 'CancelTimerHS',0 |
- | |
97 | - | ||
98 | szRegUSBDriver db 'RegUSBDriver',0 |
- | |
99 | szUSBOpenPipe db 'USBOpenPipe',0 |
- | |
100 | szUSBClosePipe db 'USBClosePipe',0 |
- | |
101 | szUSBNormalTransferAsync db 'USBNormalTransferAsync',0 |
- | |
102 | szUSBControlTransferAsync db 'USBControlTransferAsync',0 |
- | |
103 | - | ||
104 | szNetRegDev db 'NetRegDev',0 |
- | |
105 | szNetUnRegDev db 'NetUnRegDev',0 |
- | |
106 | szNetPtrToNum db 'NetPtrToNum',0 |
- | |
107 | szNetLinkChanged db 'NetLinkChanged',0 |
- | |
108 | szEth_input db 'Eth_input',0 |
- | |
109 | - | ||
110 | align 16 |
- | |
111 | kernel_export: |
- | |
112 | dd szRegService , reg_service |
- | |
113 | dd szGetService , get_service |
- | |
114 | dd szServiceHandler , srv_handler |
- | |
115 | dd szAttachIntHandler, attach_int_handler |
- | |
116 | ; dd szGetIntHandler , get_int_handler |
- | |
117 | dd szFpuSave , fpu_save |
- | |
118 | dd szFpuRestore , fpu_restore |
- | |
119 | dd szReservePortArea , r_f_port_area |
- | |
120 | dd szBoot_Log , boot_log |
- | |
121 | - | ||
122 | dd szMutexInit , mutex_init ;gcc fastcall |
- | |
123 | dd szMutexLock , mutex_lock ;gcc fastcall |
- | |
124 | dd szMutexUnlock , mutex_unlock ;gcc fastcall |
- | |
125 | - | ||
126 | dd szPciApi , pci_api_drv |
- | |
127 | dd szPciRead32 , pci_read32 |
- | |
128 | dd szPciRead16 , pci_read16 |
- | |
129 | dd szPciRead8 , pci_read8 |
- | |
130 | dd szPciWrite8 , pci_write8 |
- | |
131 | dd szPciWrite16 , pci_write16 |
- | |
132 | dd szPciWrite32 , pci_write32 |
- | |
133 | - | ||
134 | dd szAllocPage , alloc_page ;stdcall |
- | |
135 | dd szAllocPages , alloc_pages ;stdcall |
- | |
136 | dd szFreePage , free_page |
- | |
137 | dd szMapPage , map_page ;stdcall |
- | |
138 | dd szMapSpace , map_space |
- | |
139 | dd szMapIoMem , map_io_mem ;stdcall |
- | |
140 | dd szGetPgAddr , get_pg_addr |
- | |
141 | dd szCommitPages , commit_pages ;not implemented |
- | |
142 | dd szReleasePages , release_pages |
- | |
143 | - | ||
144 | dd szAllocKernelSpace, alloc_kernel_space ;stdcall |
- | |
145 | dd szFreeKernelSpace , free_kernel_space ;stdcall |
- | |
146 | dd szKernelAlloc , kernel_alloc ;stdcall |
- | |
147 | dd szKernelFree , kernel_free ;stdcall |
- | |
148 | dd szUserAlloc , user_alloc ;stdcall |
- | |
149 | dd szUserFree , user_free ;stdcall |
- | |
150 | dd szKmalloc , malloc |
- | |
151 | dd szKfree , free |
- | |
152 | dd szCreateRingBuffer, create_ring_buffer ;stdcall |
- | |
153 | - | ||
154 | dd szGetPid , get_pid |
- | |
155 | dd szCreateObject , create_kernel_object |
- | |
156 | dd szDestroyObject , destroy_kernel_object |
- | |
157 | dd szCreateEvent , create_event ;see EVENT.inc for specification |
- | |
158 | dd szRaiseEvent , raise_event ;see EVENT.inc for specification |
- | |
159 | dd szWaitEvent , wait_event ;see EVENT.inc for specification |
- | |
160 | dd szDestroyEvent , destroy_event ;see EVENT.inc for specification |
- | |
161 | dd szClearEvent , clear_event ;see EVENT.inc for specification |
- | |
162 | - | ||
163 | dd szLoadCursor , load_cursor ;stdcall |
- | |
164 | - | ||
165 | dd szSysMsgBoardStr , sys_msg_board_str |
- | |
166 | dd szSysMsgBoard , sys_msg_board |
- | |
167 | dd szGetCurrentTask , get_curr_task |
- | |
168 | dd szLoadFile , load_file ;retval eax, ebx |
- | |
169 | dd szSendEvent , send_event ;see EVENT.inc for specification |
- | |
170 | dd szSetMouseData , set_mouse_data ;stdcall |
- | |
171 | dd szSetKeyboardData , set_keyboard_data |
- | |
172 | dd szRegKeyboard , register_keyboard |
- | |
173 | dd szDelKeyboard , delete_keyboard |
- | |
174 | dd szSleep , delay_ms |
- | |
175 | dd szGetTimerTicks , get_timer_ticks |
- | |
176 | - | ||
177 | dd szGetDisplay , get_display |
- | |
178 | dd szSetScreen , set_screen |
- | |
179 | - | ||
180 | dd szStrncat , strncat |
- | |
181 | dd szStrncpy , strncpy |
- | |
182 | dd szstrncmp , strncmp |
- | |
183 | dd szStrnlen , strnlen |
- | |
184 | dd szStrchr , strchr |
- | |
185 | dd szStrrchr , strrchr |
- | |
186 | - | ||
187 | dd szDiskAdd , disk_add |
- | |
188 | dd szDiskDel , disk_del |
- | |
189 | dd szDiskMediaChanged, disk_media_changed |
- | |
190 | - | ||
191 | dd szTimerHS , timer_hs |
- | |
192 | dd szCancelTimerHS , cancel_timer_hs |
- | |
193 | - | ||
194 | dd szRegUSBDriver , reg_usb_driver |
- | |
195 | dd szUSBOpenPipe , usb_open_pipe |
- | |
196 | dd szUSBClosePipe , usb_close_pipe |
- | |
197 | dd szUSBNormalTransferAsync, usb_normal_transfer_async |
- | |
198 | dd szUSBControlTransferAsync, usb_control_async |
- | |
199 | - | ||
200 | dd szNetRegDev , NET_add_device |
- | |
201 | dd szNetUnRegDev , NET_remove_device |
- | |
202 | dd szNetPtrToNum , NET_ptr_to_num |
- | |
203 | dd szNetLinkChanged , NET_link_changed |
- | |
204 | dd szEth_input , ETH_input |
- | |
205 | - | ||
206 | exp_lfb: |
- | |
207 | dd szLFBAddress , 0 |
- | |
208 | dd 0 ;terminator, must be zero |
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 | map_space, 'MapSpace', \ |
|
- | 49 | release_pages, 'ReleasePages', \ |
|
- | 50 | \ |
|
- | 51 | mutex_init, 'MutexInit', \ ; gcc fastcall |
|
- | 52 | mutex_lock, 'MutexLock', \ ; gcc fastcall |
|
- | 53 | mutex_unlock, 'MutexUnlock', \ ; gcc fastcall |
|
- | 54 | \ |
|
- | 55 | get_display, 'GetDisplay', \ |
|
- | 56 | set_screen, 'SetScreen', \ |
|
- | 57 | window._.get_rect, 'GetWindowRect', \ ; gcc fastcall |
|
- | 58 | pci_api_drv, 'PciApi', \ |
|
- | 59 | pci_read8, 'PciRead8', \ ; stdcall |
|
- | 60 | pci_read16, 'PciRead16', \ ; stdcall |
|
- | 61 | pci_read32, 'PciRead32', \ ; stdcall |
|
- | 62 | pci_write8, 'PciWrite8', \ ; stdcall |
|
- | 63 | pci_write16, 'PciWrite16', \ ; stdcall |
|
- | 64 | pci_write32, 'PciWrite32', \ ; stdcall |
|
- | 65 | \ |
|
- | 66 | get_pid, 'GetPid', \ |
|
- | 67 | get_service, 'GetService', \ ; |
|
- | 68 | reg_service, 'RegService', \ ; stdcall |
|
- | 69 | attach_int_handler, 'AttachIntHandler', \ ; stdcall |
|
- | 70 | user_alloc, 'UserAlloc', \ ; stdcall |
|
- | 71 | user_alloc_at, 'UserAllocAt', \ ; stdcall |
|
- | 72 | user_free, 'UserFree', \ ; stdcall |
|
- | 73 | unmap_pages, 'UnmapPages', \ ; eax, ecx |
|
- | 74 | sys_msg_board_str, 'SysMsgBoardStr', \ |
|
- | 75 | sys_msg_board, 'SysMsgBoard', \ |
|
- | 76 | get_timer_ticks, 'GetTimerTicks', \ |
|
- | 77 | get_stack_base, 'GetStackBase', \ |
|
- | 78 | delay_hs, 'Delay', \ ; ebx |
|
- | 79 | set_mouse_data, 'SetMouseData', \ ; |
|
- | 80 | set_keyboard_data, 'SetKeyboardData', \ ; gcc fastcall |
|
- | 81 | register_keyboard, 'RegKeyboard', \ |
|
- | 82 | delete_keyboard, 'DelKeyboard', \ |
|
- | 83 | get_cpu_freq, 'GetCpuFreq', \ |
|
- | 84 | \ |
|
- | 85 | srv_handler, 'ServiceHandler', \ |
|
- | 86 | fpu_save, 'FpuSave', \ |
|
- | 87 | fpu_restore, 'FpuRestore', \ |
|
- | 88 | r_f_port_area, 'ReservePortArea', \ |
|
- | 89 | boot_log, 'Boot_Log', \ |
|
- | 90 | \ |
|
- | 91 | load_cursor, 'LoadCursor', \ ;stdcall |
|
- | 92 | \ |
|
- | 93 | get_curr_task, 'GetCurrentTask', \ |
|
- | 94 | load_file, 'LoadFile', \ ;retval eax, ebx |
|
- | 95 | delay_ms, 'Sleep', \ |
|
- | 96 | \ |
|
- | 97 | strncat, 'strncat', \ |
|
- | 98 | strncpy, 'strncpy', \ |
|
- | 99 | strncmp, 'strncmp', \ |
|
- | 100 | strnlen, 'strnlen', \ |
|
- | 101 | strchr, 'strchr', \ |
|
- | 102 | strrchr, 'strrchr', \ |
|
- | 103 | \ |
|
- | 104 | timer_hs, 'TimerHS', \ |
|
- | 105 | cancel_timer_hs, 'CancelTimerHS', \ |
|
- | 106 | \ |
|
- | 107 | reg_usb_driver, 'RegUSBDriver', \ |
|
- | 108 | usb_open_pipe, 'USBOpenPipe', \ |
|
- | 109 | usb_close_pipe, 'USBClosePipe', \ |
|
- | 110 | usb_normal_transfer_async, 'USBNormalTransferAsync', \ |
|
- | 111 | usb_control_async, 'USBControlTransferAsync', \ |
|
- | 112 | usb_get_param, 'USBGetParam', \ |
|
- | 113 | \ |
|
- | 114 | NET_add_device, 'NetRegDev', \ |
|
- | 115 | NET_remove_device, 'NetUnRegDev', \ |
|
- | 116 | NET_ptr_to_num, 'NetPtrToNum', \ |
|
- | 117 | NET_link_changed, 'NetLinkChanged', \ |
|
- | 118 | ETH_input, 'Eth_input', \ |
|
- | 119 | \ |
|
- | 120 | 0, 'LFBAddress' ; must be the last one |
|
- | 121 | load kernel_exports_count dword from __exports + 24 |