Rev 419 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1 | ha | 1 | ; |
2 | ; MEMORY MAP |
||
3 | ; |
||
4 | ; Boot: |
||
5 | ; |
||
6 | ; 0:9000 byte bits per pixel |
||
7 | ; 0:9001 word scanline length |
||
8 | ; 0:9008 word vesa video mode |
||
9 | ; 0:900A word X res |
||
10 | ; 0:900C word Y res |
||
11 | ; 0:9010 byte mouse port - not used |
||
12 | ; 0:9014 dword Vesa 1.2 pm bank switch |
||
13 | ; 0:9018 dword Vesa 2.0 LFB address |
||
14 | ; 0:901C byte 0 or 1 : enable MTRR graphics acceleration |
||
15 | ; 0:901D byte not used anymore (0 or 1 : enable system log display) |
||
16 | ; 0:901E byte 0 or 1 : enable direct lfb write, paging disabled |
||
346 | diamond | 17 | ; 0:901F byte DMA write : 1=yes, 2=no |
1 | ha | 18 | ; 0:9020 8bytes pci data |
19 | ; 0:9030 byte VRR start enabled 1, 2-no |
||
20 | ; 0:9031 word IDEContrRegsBaseAddr |
||
76 | mario79 | 21 | ; 0x9040 - dword - entry point of APM BIOS |
22 | ; 0x9044 - word - version (BCD) |
||
23 | ; 0x9046 - word - flags |
||
1 | ha | 24 | ; |
25 | ; Runtime: |
||
26 | ; |
||
419 | serge | 27 | ; 0x00000000 -> 0x7FFFFFFF application 2Gb |
400 | serge | 28 | |
29 | ; 0x80000000 -> 1FFF window_data - 256 entries |
||
1 | ha | 30 | ; |
31 | ; 0000 dword x start |
||
32 | ; 0004 dword y start |
||
33 | ; 0008 dword x size |
||
34 | ; 000C dword y size |
||
35 | ; 0010 dword color of work area |
||
36 | ; 0014 dword color of grab bar |
||
37 | ; 0018 dword color of frames |
||
38 | ; 001C dword window flags, +30 = window drawn, +31 redraw flag |
||
39 | ; |
||
14 | poddubny | 40 | ; 2000 -> 2FFF free |
41 | ; |
||
1 | ha | 42 | ; 3000 -> 4FFF task list - 256 entries |
43 | ; |
||
44 | ; 00 dword process count |
||
45 | ; 04 dword no of processes |
||
46 | ; 10 dword base of running process at 0x3000+ |
||
47 | ; |
||
48 | ; 20 dword application event mask |
||
49 | ; 24 dword PID - process identification number |
||
115 | poddubny | 50 | ; 2a byte slot state: 0=running, 1,2=suspended |
51 | ; 3=zombie, 4=terminate, |
||
52 | ; 5=waiting for event, 9 = not used |
||
1 | ha | 53 | ; 2e byte window number on screen |
54 | ; 30 dword exact position in memory |
||
55 | ; 34 dword counter sum |
||
56 | ; 38 dword time stamp counter add |
||
57 | ; 3c dword cpu usage in cpu timer tics |
||
58 | ; |
||
59 | ; |
||
314 | diamond | 60 | ; 5000 -> 68FF free |
1 | ha | 61 | ; 6900 -> 6EFF saved picture under mouse pointer |
62 | ; |
||
33 | mario79 | 63 | ; 6F00 -> 6FFF free |
1 | ha | 64 | ; |
33 | mario79 | 65 | ; 7000 -> 7FFF used CD driver |
66 | ; |
||
1 | ha | 67 | ; 8000 -> A3FF used FLOPPY driver |
68 | ; |
||
102 | poddubny | 69 | ; A400 -> B0FF free |
8 | poddubny | 70 | |
1 | ha | 71 | ; B100 -> B2FF IDT |
72 | |||
8 | poddubny | 73 | ; B300 -> BFFF free |
74 | |||
1 | ha | 75 | ; C000 -> C3FF window stack C000 no of windows - all in words |
76 | ; C402 -> C7FF window position in stack |
||
77 | ; D000 -> D1FF FDC controller |
||
78 | ; D200 -> D3FF FDC controller for Fat12 |
||
79 | ; D400 -> DFFF free |
||
80 | ; E000 byte multitasking started |
||
81 | ; E020 dword putpixel address |
||
82 | ; E024 dword getpixel address |
||
83 | ; E030 dword Vesa 1.2 pm bank switch address |
||
84 | ; F200 dword mousepicture -pointer |
||
85 | ; F204 dword mouse appearance counter |
||
86 | ; F300 dword x & y temp for windowmove |
||
87 | ; F400 byte no of keys in buffer |
||
88 | ; F401 byte 'buffer' |
||
89 | ; F402 -> F4FF reserved for keys |
||
90 | ; F500 byte no of buttons in buffer |
||
91 | ; F501 dword 'buffer' |
||
92 | ; F502 -> F5FF reserved for buttons |
||
93 | ; F600 dword tsc / second |
||
94 | ; F604 byte mouse port: 1 ps2, 2 com1, 3 com2 |
||
95 | ; FB00 -> FB0F mouse memory 00 chunk count - FB0A-B x - FB0C-D y |
||
96 | ; FB10 -> FB17 mouse color mem |
||
97 | ; FB21 x move |
||
98 | ; FB22 y move |
||
99 | ; FB28 high bits temp |
||
100 | ; FB30 color temp |
||
101 | ; FB40 byte buttons down |
||
102 | ; FB44 byte 0 mouse down -> do not draw |
||
103 | ; FB4A -> FB4D FB4A-B x-under - FB4C-D y-under |
||
104 | ; FBF1 byte bits per pixel |
||
105 | ; FC00 -> FCFE com1/ps2 buffer |
||
106 | ; FCFF com1/ps2 buffer count starting from FC00 |
||
107 | ; FE00 dword screen x size |
||
108 | ; FE04 dword screen y size |
||
109 | ; FE08 dword screen y multiplier |
||
110 | ; FE0C dword screen mode |
||
111 | ; FE80 dword address of LFB in physical |
||
112 | ; FE84 dword address of applications memory start in physical |
||
113 | ; FE88 dword address of button list |
||
114 | ; FE8C dword memory to use |
||
115 | ; FF00 byte 1 = system shutdown request |
||
105 | poddubny | 116 | ; FF01 dword free |
1 | ha | 117 | ; FFF0 byte 1 = redraw background request from app |
118 | ; FFF1 byte 1 = diskette int occur |
||
119 | ; FFF2 write and read bank in screen |
||
120 | ; FFF4 byte 0 if first mouse draw & do not return picture under |
||
121 | ; FFF5 byte 1 do not draw pointer |
||
122 | ; FFFF byte do not change task for 1/100 sec. |
||
123 | ; |
||
400 | serge | 124 | ; 0x80010000 -> 3DBFF kernel, 32-bit run-time code (up to 183 Kb) |
125 | ; 0x8003DC00 -> 3EBFF stack at boot time (4Kb) |
||
126 | ; 0x8003EC00 -> 3F5FF basic text font II |
||
127 | ; 0x8003F600 -> 3FFFF basic text font I |
||
128 | ; 0x80040000 -> 4FFFF data of retrieved disks and partitions (Mario79) |
||
22 | poddubny | 129 | |
400 | serge | 130 | ; 0x80050000 -> 50FFF main page directory |
131 | ; 0x80050200 -> 5FFFF pages bitmap |
||
22 | poddubny | 132 | |
400 | serge | 133 | ; 0x80060000 -> 7FFFF free (128 Kb) |
134 | ; 0x80080000 -> 8FFFF additional app info, in 256 byte steps - 256 entries |
||
1 | ha | 135 | ; |
400 | serge | 136 | ; 00 11db name of app running |
427 | serge | 137 | ; 0x10 dword pointer to fpu save area |
138 | ; 0x14 dword event count |
||
139 | ; 0x18 dword user fpu exceptoins handler |
||
140 | ; 0x1c dword user sse exceptions handler |
||
400 | serge | 141 | ; 20 dword PL0 stack base |
142 | ; 24 dword user heap base |
||
143 | ; 28 dword user heap top |
||
144 | ; 2c dword window cursor handle |
||
145 | ; 30 dword first event in list |
||
146 | ; 34 dword last event in list |
||
147 | ; 38 dword first kernel object in list |
||
148 | ; 3c dword last kernel object in list |
||
1 | ha | 149 | ; |
400 | serge | 150 | ; 40-7F unused |
1 | ha | 151 | ; |
400 | serge | 152 | ; 80 dword address of random shaped window area |
153 | ; 84 byte shape area scale |
||
154 | ; 88 dword free |
||
155 | ; 8C dword application memory size |
||
156 | ; 90 dword window X position save |
||
157 | ; 94 dword window Y position save |
||
158 | ; 98 dword window X size save |
||
159 | ; 9C dword window Y size save |
||
160 | ; A0 dword IPC memory start |
||
161 | ; A4 dword IPC memory size |
||
162 | ; A8 dword event bits: mouse, stack,.. |
||
163 | ; AC dword 0 or debugger slot |
||
164 | ; B0 dword free |
||
165 | ; B4 byte keyboard mode: 0 = keymap, 1 = scancodes |
||
166 | ; B8 dword physical address of directory table |
||
167 | ; BC dword address of debug event memory |
||
168 | ; C0 5 dd thread debug registers: DR0,DR1,DR2,DR3,DR7 |
||
1 | ha | 169 | ; |
400 | serge | 170 | ; 0x80090000 -> 9FFFF tmp |
171 | ; 0x800A0000 -> AFFFF screen access area |
||
172 | ; 0x800B0000 -> FFFFF bios rest in peace -area |
||
173 | ; 0x80100000 -> 27FFFF diskette image |
||
174 | ; 0x80280000 -> 281FFF ramdisk fat |
||
175 | ; 0x80282000 -> 283FFF floppy fat |
||
1 | ha | 176 | ; |
400 | serge | 177 | ; 0x80284000 -> 29FFFF free (112 Kb) |
178 | ; |
||
179 | ; 0x802A0000 -> 2B00ff wav device data |
||
180 | ; 0x802C0000 -> 2C3fff button info |
||
181 | ; |
||
182 | ; 0000 word number of buttons |
||
1 | ha | 183 | ; first button entry at 0x10 |
400 | serge | 184 | ; +0000 word process number |
185 | ; +0002 word button id number : bits 00-15 |
||
186 | ; +0004 word x start |
||
187 | ; +0006 word x size |
||
188 | ; +0008 word y start |
||
189 | ; +000A word y size |
||
190 | ; +000C word button id number : bits 16-31 |
||
1 | ha | 191 | ; |
400 | serge | 192 | ; 0x802C4000 -> 2CFFFF free (48Kb) |
22 | poddubny | 193 | ; |
400 | serge | 194 | ; 0x802D0000 -> 2DFFFF reserved port area |
1 | ha | 195 | ; |
400 | serge | 196 | ; 0000 dword no of port areas reserved |
197 | ; 0010 dword process id |
||
198 | ; dword start port |
||
199 | ; dword end port |
||
200 | ; dword 0 |
||
1 | ha | 201 | ; |
400 | serge | 202 | ; 0x802E0000 -> 2EFFFF irq data area |
203 | ; 0x802F0000 -> 2FFFFF low memory save |
||
1 | ha | 204 | ; |
400 | serge | 205 | ; 0x80300000 -> 45FFFF background image, max 1,375 M |
1 | ha | 206 | ; |
400 | serge | 207 | ; 0x80460000 -> 5FFFFF display info |
1 | ha | 208 | ; |
400 | serge | 209 | ; 0x80600000 -> 6FFFFF hd cache |
1 | ha | 210 | ; |
400 | serge | 211 | ; 0x80700000 -> 71ffff tcp memory (128 kb) |
212 | ; 0x80720000 -> 75ffff free (256 kb) |
||
1 | ha | 213 | ; |
400 | serge | 214 | ; 0x80760000 -> 76ffff !vrr driver |
215 | ; 0x80770000 -> 777fff tcp memory ( 32 kb) |
||
1 | ha | 216 | ; |
400 | serge | 217 | ; 0x80780000 -> 0x80987FFF TSS and IO map for (8192*8)=65536 ports |
218 | ; (128+8192)*256 = 2129920 = 0x208000 |
||
1 | ha | 219 | ; |
400 | serge | 220 | ; 0x80988000 -> 0x8098AFFF draw_data - 256 entries |
1 | ha | 221 | ; |
222 | ; 00 dword draw limit - x start |
||
223 | ; 04 dword draw limit - y start |
||
224 | ; 08 dword draw limit - x end |
||
225 | ; 0C dword draw limit - y end |
||
226 | ; |
||
14 | poddubny | 227 | ; |
400 | serge | 228 | ; 0x8098B000 -> kernel heap |
229 | ; 0x81FFFFFF heap min limit |
||
419 | serge | 230 | ; 0xFDBFFFFF heap max limit |
1 | ha | 231 | |
419 | serge | 232 | ; 0xFDC00000 -> 0xFDFFFFFF page tables 4Mb |
400 | serge | 233 | ; 0xFE000000 -> 0xFFFFFFFF LFB 32Mb |
234 | ; 0xFE000000 -> 0xFE7FFFFF application available LFB 8Mb |
||
235 | ; 0xFE800000 -> 0xFFFFFFFF kernel LFB part 24 Mb |
||
1 | ha | 236 | |
427 | serge | 237 | if 0 |
1 | ha | 238 | |
427 | serge | 239 | Эта бадяга с копирайтами уже задолбала. Приходится делать всё самому |
240 | Вот проект заголовков. |
||
241 | |||
242 | Для сравнения я брал исходники MeOS 079p1 |
||
243 | |||
244 | Если файл попал в один из списков ошибочно, укажите. |
||
245 | |||
246 | Список разработчиков ядра KolibriOS взят из последнего дистрибутива. |
||
247 | Если кого-то забыли, укажите |
||
248 | |||
249 | Через две недели я проставлю заголовки на все перечисленные файлы. |
||
250 | |||
251 | kernel.asm |
||
252 | |||
253 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
254 | ;; |
||
255 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. |
||
256 | ;; PROGRAMMING: |
||
257 | ;; Иван Поддубный |
||
258 | ;; Марат Закиянов (Mario79) |
||
259 | ;; VaStaNi |
||
260 | ;; Trans |
||
261 | ;; Михаил Семеняко (mike.dld) |
||
262 | ;; Сергей Кузьмин (Wildwest) |
||
263 | ;; Халявин Андрей (halyavin) |
||
264 | ;; Михаил Лисовин (Mihasik) |
||
265 | ;; Андрей Игнатьев (andrew_programmer) |
||
266 | ;; NoName |
||
267 | ;; Евгений Гречников (Diamond) |
||
268 | ;; Михайлов Илья (Ghost) |
||
269 | ;; Сергей Семёнов (Serge) |
||
270 | ;; Johnny_B |
||
271 | ;; |
||
272 | ;; Data in this file was originally part of MenuetOS project which is |
||
273 | ;; distributed under the terms of GNU GPL. It is modified and redistributed as |
||
274 | ;; part of KolibriOS project under the terms of GNU GPL. |
||
275 | ;; |
||
276 | ;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa |
||
277 | ;; PROGRAMMING: |
||
278 | ;; |
||
279 | ;; Ville Mikael Turjanmaa, villemt@itu.jyu.fi |
||
280 | ;; - main os coding/design |
||
281 | ;; Jan-Michael Brummer, BUZZ2@gmx.de |
||
282 | ;; Felix Kaiser, info@felix-kaiser.de |
||
283 | ;; Paolo Minazzi, paolo.minazzi@inwind.it |
||
284 | ;; quickcode@mail.ru |
||
285 | ;; Alexey, kgaz@crosswinds.net |
||
286 | ;; Juan M. Caravaca, bitrider@wanadoo.es |
||
287 | ;; kristol@nic.fi |
||
288 | ;; Mike Hibbett, mikeh@oceanfree.net |
||
289 | ;; Lasse Kuusijarvi, kuusijar@lut.fi |
||
290 | ;; Jarek Pelczar, jarekp3@wp.pl |
||
291 | ;; |
||
292 | ;; KolibriOS is distributed in the hope that it will be useful, but WITHOUT ANY |
||
293 | ;; WARRANTY. No author or distributor accepts responsibility to anyone for the |
||
294 | ;; consequences of using it or for whether it serves any particular purpose or |
||
295 | ;; works at all, unless he says so in writing. Refer to the GNU General Public |
||
296 | ;; License (the "GPL") for full details. |
||
297 | ; |
||
298 | ;; Everyone is granted permission to copy, modify and redistribute KolibriOS, |
||
299 | ;; but only under the conditions described in the GPL. A copy of this license |
||
300 | ;; is supposed to have been given to you along with KolibriOS so you can know |
||
301 | ;; your rights and responsibilities. It should be in a file named COPYING. |
||
302 | ;; Among other things, the copyright notice and this notice must be preserved |
||
303 | ;; on all copies. |
||
304 | ;; |
||
305 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
306 | |||
307 | |||
308 | |||
309 | На этих файлах уже стоят различные копирайты |
||
310 | Будет добавлен копирайт KolibriOS Team |
||
311 | |||
312 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
313 | ;; |
||
314 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. |
||
315 | ;; |
||
316 | ;; Distributed under terms of the GNU General Public License |
||
317 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
318 | |||
319 | fdo.inc |
||
320 | kernel16.inc |
||
321 | kernel32.inc |
||
322 | vmodeld.inc |
||
323 | vmodeint.inc |
||
324 | |||
325 | blkdev/cd_drv.inc |
||
326 | blkdev/flp_drv.inc |
||
327 | blkdev/hd_drv.inc |
||
328 | blkdev/rd.inc |
||
329 | |||
330 | boot/shutdown.inc |
||
331 | |||
332 | bus/pci/pci16.inc |
||
333 | bus/pci/pci32.inc |
||
334 | |||
335 | core/sync.inc |
||
336 | core/sys32.inc |
||
337 | |||
338 | detect/commouse.inc |
||
339 | detect/dev_fd.inc |
||
340 | detect/dev_hdcd.inc |
||
341 | detect/sear_par.inc |
||
342 | |||
343 | fs/fat12.inc |
||
344 | fs/fat32.inc |
||
345 | fs/fs.inc |
||
346 | fs/fs_lfn.inc |
||
347 | fs/part_set.inc |
||
348 | |||
349 | network/icmp.inc |
||
350 | network/ip.inc |
||
351 | network/queue.inc |
||
352 | network/socket.inc |
||
353 | network/stack.inc |
||
354 | network/tcp.inc |
||
355 | network/udp.inc |
||
356 | |||
357 | network/eth_drv/arp.inc |
||
358 | network/eth_drv/ethernet.inc |
||
359 | network/eth_drv/drivers/3c59x.inc |
||
360 | network/eth_drv/drivers/i8255x.inc |
||
361 | network/eth_drv/drivers/pcnet32.inc |
||
362 | network/eth_drv/drivers/rtl8029.inc |
||
363 | network/eth_drv/drivers/rtl8139.inc |
||
364 | network/eth_drv/drivers/rtl8169.inc |
||
365 | network/eth_drv/drivers/sis900.inc |
||
366 | |||
367 | sound/playnote.inc |
||
368 | |||
369 | video/vesa12.inc |
||
370 | video/vesa20.inc |
||
371 | video/vga.inc |
||
372 | |||
373 | |||
374 | Файлы без копирайтов с кодом из МеОС |
||
375 | Будут добавлены копирайты KolibriOS Team и |
||
376 | Menuet OS Team |
||
377 | |||
378 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
379 | ;; |
||
380 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. |
||
381 | ;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa |
||
382 | ;; |
||
383 | ;; Distributed under terms of the GNU General Public License |
||
384 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
385 | |||
386 | |||
387 | blkdev/cdrom.inc |
||
388 | blkdev/fdc.inc |
||
389 | |||
390 | boot/bootcode.inc |
||
391 | |||
392 | core/sched.inc |
||
393 | |||
394 | gui/button.inc |
||
395 | gui/event.inc |
||
396 | gui/mouse.inc |
||
397 | gui/window.inc |
||
398 | |||
399 | hid/keyboard.inc |
||
400 | |||
401 | sound/sb16.inc |
||
402 | |||
403 | |||
404 | Фалы с копирайтом только KolibriOS Team |
||
405 | |||
406 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
407 | ;; |
||
408 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. |
||
409 | ;; |
||
410 | ;; Distributed under terms of the GNU General Public License |
||
411 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
||
412 | |||
413 | kglobals.inc |
||
414 | unpacker.inc |
||
415 | const.inc |
||
416 | |||
417 | blkdev/rdsave.inc |
||
418 | |||
419 | boot/preboot.inc |
||
420 | boot/rdload.inc |
||
421 | |||
422 | core/debug.inc |
||
423 | core/dll.inc |
||
424 | core/exports.inc |
||
425 | core/fpu.inc |
||
426 | core/heap.inc |
||
427 | core/malloc.inc |
||
428 | core/memory.inc |
||
429 | core/syscall.inc |
||
430 | core/taskman.inc |
||
431 | |||
432 | detect/disks.inc |
||
433 | detect/ps2mouse.inc |
||
434 | |||
435 | docs/apm.txt |
||
436 | docs/sysfuncr.txt |
||
437 | docs/sysfuncs.txt |
||
438 | |||
439 | drivers/ati2d.asm |
||
440 | drivers/ensoniq.asm |
||
441 | drivers/infinity.asm |
||
442 | drivers/mixer.asm |
||
443 | drivers/sceletone.asm |
||
444 | drivers/sis.asm |
||
445 | drivers/sound.asm |
||
446 | drivers/codec.inc |
||
447 | drivers/imports.inc |
||
448 | drivers/main.inc |
||
449 | drivers/mix_mmx.inc |
||
450 | drivers/mix_sse2.inc |
||
451 | |||
452 | fs/iso9660.inc |
||
453 | fs/ntfs.inc |
||
454 | |||
455 | gui/font.inc |
||
456 | gui/skincode.inc |
||
457 | gui/skindata.inc |
||
458 | |||
459 | hid/m_com1.inc |
||
460 | hid/m_com2.inc |
||
461 | hid/m_ps2.inc |
||
462 | hid/mousedrv.inc |
||
463 | hid/set_dtc.inc |
||
464 | |||
465 | network/eth_drv/pci.inc |
||
466 | |||
467 | skin/default.asm |
||
468 | skin/me_skin.inc |
||
469 | |||
470 | video/cursors.inc |
||
471 | |||
472 | |||
473 | файлы которые можно оставить без копирайта |
||
474 | |||
475 | memmap.inc |
||
476 | |||
477 | boot/booteng.inc |
||
478 | boot/bootet.inc |
||
479 | boot/bootge.inc |
||
480 | boot/bootru.inc |
||
481 | boot/et.inc |
||
482 | boot/ru.inc |
||
483 | |||
484 | end if |
||
485 |