Rev 2268 | Rev 2439 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2268 | Rev 2434 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | ;; Copyright (C) KolibriOS team 2004-2009. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2009. 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 | ||
Line 8... | Line 8... | ||
8 | $Revision: 2268 $ |
8 | $Revision: 2434 $ |
9 | 9 | ||
10 | 10 | ||
Line 144... | Line 144... | ||
144 | SSE_INIT equ (SSE_IM+SSE_DM+SSE_ZM+SSE_OM+SSE_UM+SSE_PM) |
144 | SSE_INIT equ (SSE_IM+SSE_DM+SSE_ZM+SSE_OM+SSE_UM+SSE_PM) |
Line 145... | Line 145... | ||
145 | 145 | ||
146 | IRQ_PIC equ 0 |
146 | IRQ_PIC equ 0 |
Line 147... | Line 147... | ||
147 | IRQ_APIC equ 1 |
147 | IRQ_APIC equ 1 |
148 | - | ||
149 | struc TSS |
148 | |
150 | { |
149 | struct TSS |
151 | ._back rw 2 |
150 | _back rw 2 |
152 | ._esp0 rd 1 |
151 | _esp0 rd 1 |
153 | ._ss0 rw 2 |
152 | _ss0 rw 2 |
154 | ._esp1 rd 1 |
153 | _esp1 rd 1 |
155 | ._ss1 rw 2 |
154 | _ss1 rw 2 |
156 | ._esp2 rd 1 |
155 | _esp2 rd 1 |
157 | ._ss2 rw 2 |
156 | _ss2 rw 2 |
158 | ._cr3 rd 1 |
157 | _cr3 rd 1 |
159 | ._eip rd 1 |
158 | _eip rd 1 |
160 | ._eflags rd 1 |
159 | _eflags rd 1 |
161 | ._eax rd 1 |
160 | _eax rd 1 |
162 | ._ecx rd 1 |
161 | _ecx rd 1 |
163 | ._edx rd 1 |
162 | _edx rd 1 |
164 | ._ebx rd 1 |
163 | _ebx rd 1 |
165 | ._esp rd 1 |
164 | _esp rd 1 |
166 | ._ebp rd 1 |
165 | _ebp rd 1 |
167 | ._esi rd 1 |
166 | _esi rd 1 |
168 | ._edi rd 1 |
167 | _edi rd 1 |
169 | ._es rw 2 |
168 | _es rw 2 |
170 | ._cs rw 2 |
169 | _cs rw 2 |
171 | ._ss rw 2 |
170 | _ss rw 2 |
172 | ._ds rw 2 |
171 | _ds rw 2 |
173 | ._fs rw 2 |
172 | _fs rw 2 |
174 | ._gs rw 2 |
173 | _gs rw 2 |
175 | ._ldt rw 2 |
174 | _ldt rw 2 |
176 | ._trap rw 1 |
175 | _trap rw 1 |
177 | ._io rw 1 |
176 | _io rw 1 |
178 | rb 24 |
177 | rb 24 |
179 | ._io_map_0 rb 4096 |
- | |
180 | ._io_map_1 rb 4096 |
- | |
181 | } |
- | |
182 | - | ||
183 | virtual at 0 |
178 | _io_map_0 rb 4096 |
184 | TSS TSS |
- | |
185 | end virtual |
- | |
Line 186... | Line 179... | ||
186 | 179 | _io_map_1 rb 4096 |
|
Line 187... | Line 180... | ||
187 | TSS_SIZE equ (128+8192) |
180 | ends |
Line 215... | Line 208... | ||
215 | BANK_SWITCH equ (OS_BASE+0x000E030) |
208 | BANK_SWITCH equ (OS_BASE+0x000E030) |
Line 216... | Line 209... | ||
216 | 209 | ||
217 | ;unused ? store mousepointer |
210 | ;unused ? store mousepointer |
Line 218... | Line 211... | ||
218 | MOUSE_PICTURE equ (OS_BASE+0x000F200) |
211 | MOUSE_PICTURE equ (OS_BASE+0x000F200) |
219 | 212 | ||
220 | MOUSE_VISIBLE equ (OS_BASE+0x000F204) |
213 | ;MOUSE_VISIBLE equ (OS_BASE+0x000F204) |
221 | WIN_TEMP_XY equ (OS_BASE+0x000F300) |
214 | WIN_TEMP_XY equ (OS_BASE+0x000F300) |
Line 222... | Line 215... | ||
222 | KEY_COUNT equ (OS_BASE+0x000F400) |
215 | KEY_COUNT equ (OS_BASE+0x000F400) |
Line 400... | Line 393... | ||
400 | EVENT_DEBUG equ 0x00000100 |
393 | EVENT_DEBUG equ 0x00000100 |
401 | EVENT_EXTENDED equ 0x00000200 |
394 | EVENT_EXTENDED equ 0x00000200 |
Line 402... | Line 395... | ||
402 | 395 | ||
Line 403... | Line 396... | ||
403 | EV_INTR equ 1 |
396 | EV_INTR equ 1 |
404 | - | ||
405 | struc THR_DATA |
397 | |
406 | { |
398 | struct THR_DATA |
407 | rb (8192-512) |
399 | rb (8192-512) |
408 | .pl0_stack: |
400 | ; pl0_stack |
409 | .fpu_state rb 512 |
401 | fpu_state rb 512 |
410 | .tls_page rb 4096 |
402 | tls_page rb 4096 |
Line 411... | Line -... | ||
411 | .pdbr rb 4096 |
- | |
412 | } |
- | |
413 | 403 | pdbr rb 4096 |
|
414 | THR_DATA_SIZE equ 4096*4 |
404 | ends |
415 | 405 | ||
Line 416... | Line 406... | ||
416 | virtual at (OS_BASE-THR_DATA_SIZE) |
406 | virtual at (OS_BASE-sizeof.THR_DATA) |
417 | thr_data THR_DATA |
407 | thr_data THR_DATA |
418 | end virtual |
408 | end virtual |
419 | 409 | ||
420 | struc SYS_VARS |
410 | struct SYS_VARS |
421 | { .bpp dd ? |
411 | bpp dd ? |
422 | .scanline dd ? |
412 | scanline dd ? |
423 | .vesa_mode dd ? |
413 | vesa_mode dd ? |
424 | .x_res dd ? |
414 | x_res dd ? |
425 | .y_res dd ? |
- | |
426 | } |
415 | y_res dd ? |
427 | 416 | ends |
|
428 | struc APPOBJ ;common object header |
417 | |
429 | { |
418 | struct APPOBJ ; common object header |
430 | .magic dd ? ; |
419 | magic dd ? ; |
431 | .destroy dd ? ;internal destructor |
420 | destroy dd ? ; internal destructor |
432 | .fd dd ? ;next object in list |
- | |
433 | .bk dd ? ;prev object in list |
- | |
434 | .pid dd ? ;owner id |
- | |
435 | }; |
- | |
Line 436... | Line 421... | ||
436 | 421 | fd dd ? ; next object in list |
|
437 | virtual at 0 |
422 | bk dd ? ; prev object in list |
Line 438... | Line -... | ||
438 | APPOBJ APPOBJ |
- | |
439 | end virtual |
- | |
440 | - | ||
441 | APP_OBJ_OFFSET equ 48 |
423 | pid dd ? ; owner id |
442 | APP_EV_OFFSET equ 40 |
- | |
443 | - | ||
444 | struc CURSOR |
- | |
445 | { |
- | |
446 | ;common object header |
- | |
447 | .magic dd ? ;'CURS' |
- | |
448 | .destroy dd ? ;internal destructor |
424 | ends |
449 | .fd dd ? ;next object in list |
425 | |
450 | .bk dd ? ;prev object in list |
426 | APP_OBJ_OFFSET equ 48 |
451 | .pid dd ? ;owner id |
427 | APP_EV_OFFSET equ 40 |
452 | 428 | ||
453 | ;cursor data |
429 | struct CURSOR APPOBJ |
454 | .base dd ? ;allocated memory |
430 | base dd ? ;allocated memory |
455 | .hot_x dd ? ;hotspot coords |
- | |
456 | .hot_y dd ? |
- | |
457 | - | ||
458 | .list_next dd ? ;next cursor in cursor list |
- | |
459 | .list_prev dd ? ;prev cursor in cursor list |
- | |
460 | .dev_obj dd ? ;device depended data |
431 | hot_x dd ? ;hotspot coords |
Line 461... | Line -... | ||
461 | - | ||
462 | .sizeof: |
- | |
463 | } |
432 | hot_y dd ? |
464 | virtual at 0 |
- | |
465 | CURSOR CURSOR |
- | |
466 | end virtual |
- | |
467 | - | ||
468 | - | ||
469 | struc EVENT |
433 | |
470 | { |
434 | list_next dd ? ;next cursor in cursor list |
471 | .magic dd ? ;'EVNT' |
435 | list_prev dd ? ;prev cursor in cursor list |
472 | .destroy dd ? ;internal destructor |
436 | dev_obj dd ? ;device depended data |
473 | .fd dd ? ;next object in list |
- | |
474 | .bk dd ? ;prev object in list |
- | |
475 | .pid dd ? ;owner id |
- | |
476 | - | ||
477 | .id dd ? ;event uid |
- | |
478 | .state dd ? ;internal flags |
- | |
479 | .code dd ? |
437 | ends |
Line 607... | Line 532... | ||
607 | .pci_data dd ? |
532 | pci_data dd ? |
608 | ; dd ? |
533 | dd ? |
609 | .vrr dd ? |
534 | vrr dd ? |
610 | .ide_base dd ? |
535 | ide_base dd ? |
611 | .mem_amount dd ? |
536 | mem_amount dd ? |
612 | .pages_count dd ? |
537 | pages_count dd ? |
613 | .pagemap_size dd ? |
538 | pagemap_size dd ? |
614 | .kernel_max dd ? |
539 | kernel_max dd ? |
615 | .kernel_pages dd ? |
540 | kernel_pages dd ? |
Line 616... | Line 541... | ||
616 | .kernel_tables dd ? |
541 | kernel_tables dd ? |
- | 542 | ||
- | 543 | cpu_vendor dd ? |
|
- | 544 | dd ? |
|
- | 545 | dd ? |
|
- | 546 | cpu_sign dd ? |
|
617 | 547 | cpu_info dd ? |
|
- | 548 | cpu_caps dd ? |
|
618 | .cpu_vendor dd ? |
549 | dd ? |
619 | dd ? |
550 | dd ? |
620 | dd ? |
551 | ends |
621 | .cpu_sign dd ? |
552 | |
622 | .cpu_info dd ? |
553 | struct LHEAD |
623 | .cpu_caps dd ? |
554 | next dd ? ;next object in list |
624 | dd ? |
555 | prev dd ? ;prev object in list |
625 | dd ? |
556 | ends |
626 | } |
557 | |
627 | 558 | struct MUTEX |
|
628 | virtual at 0 |
559 | lhead LHEAD |
629 | BOOT_DATA BOOT_DATA |
560 | count dd ? |
630 | end virtual |
561 | ends |
631 | 562 | ||
632 | struc MEM_STATE |
563 | struct MEM_STATE |
633 | { .mutex MUTEX |
564 | mutex MUTEX |
634 | .smallmap rd 1 |
565 | smallmap dd ? |
635 | .treemap rd 1 |
566 | treemap dd ? |
636 | .topsize rd 1 |
567 | topsize dd ? |
637 | .top rd 1 |
568 | top dd ? |
638 | .smallbins rd 4*32 |
569 | smallbins rd 4*32 |
639 | .treebins rd 32 |
570 | treebins rd 32 |
640 | } |
571 | ends |
641 | - | ||
642 | struc PG_DATA |
- | |
643 | { .mem_amount dd ? |
- | |
644 | .vesa_mem dd ? |
- | |
645 | .pages_count dd ? |
- | |
646 | .pages_free dd ? |
- | |
647 | .pages_faults dd ? |
- | |
648 | .pagemap_size dd ? |
- | |
649 | .kernel_pages dd ? |
572 | |
650 | .kernel_tables dd ? |
573 | struct PG_DATA |
651 | .sys_page_dir dd ? |
574 | mem_amount dd ? |
652 | .mutex MUTEX |
- | |
653 | } |
575 | vesa_mem dd ? |
654 | 576 | pages_count dd ? |
|
655 | ;struc LIB |
577 | pages_free dd ? |
656 | ;{ .lib_name rb 16 |
578 | pages_faults dd ? |
657 | ; .lib_base dd ? |
579 | pagemap_size dd ? |
658 | ; .lib_start dd ? |
580 | kernel_pages dd ? |
659 | ; .export dd ? |
581 | kernel_tables dd ? |
660 | ; .import dd ? |
582 | sys_page_dir dd ? |
661 | ;} |
583 | mutex MUTEX |
662 | - | ||
663 | struc SRV |
584 | ends |
664 | { |
- | |
665 | .srv_name rb 16 ;ASCIIZ string |
- | |
Line 666... | Line 585... | ||
666 | .magic dd ? ;+0x10 ;'SRV ' |
585 | |
667 | .size dd ? ;+0x14 ;size of structure SRV |
586 | struct SRV |
Line 668... | Line 587... | ||
668 | .fd dd ? ;+0x18 ;next SRV descriptor |
587 | srv_name rb 16 ;ASCIIZ string |
669 | .bk dd ? ;+0x1C ;prev SRV descriptor |
588 | magic dd ? ;+0x10 ;'SRV ' |
670 | .base dd ? ;+0x20 ;service base address |
589 | size dd ? ;+0x14 ;size of structure SRV |
671 | .entry dd ? ;+0x24 ;service START function |
590 | fd dd ? ;+0x18 ;next SRV descriptor |
672 | .srv_proc dd ? ;+0x28 ;user mode service handler |
591 | bk dd ? ;+0x1C ;prev SRV descriptor |
673 | .srv_proc_ex dd ? ;+0x2C ;kernel mode service handler |
592 | base dd ? ;+0x20 ;service base address |
674 | .sizeof: |
593 | entry dd ? ;+0x24 ;service START function |
675 | } |
594 | srv_proc dd ? ;+0x28 ;user mode service handler |
676 | 595 | srv_proc_ex dd ? ;+0x2C ;kernel mode service handler |
|
677 | SRV_FD_OFFSET equ 0x18 |
- | |
678 | 596 | ends |
|
679 | DRV_ENTRY equ 1 |
597 | |
680 | DRV_EXIT equ -1 |
598 | DRV_ENTRY equ 1 |
681 | 599 | DRV_EXIT equ -1 |
|
682 | struc COFF_HEADER |
600 | |
683 | { .machine dw ? |
601 | struct COFF_HEADER |
684 | .nSections dw ? |
602 | machine dw ? |
685 | .DataTime dd ? |
603 | nSections dw ? |
686 | .pSymTable dd ? |
604 | DataTime dd ? |
687 | .nSymbols dd ? |
605 | pSymTable dd ? |
688 | .optHeader dw ? |
606 | nSymbols dd ? |
689 | .flags dw ? |
607 | optHeader dw ? |
690 | }; |
608 | flags dw ? |
691 | - | ||
692 | 609 | ends |
|
693 | struc COFF_SECTION |
610 | |
694 | { .Name rb 8 |
611 | struct COFF_SECTION |
695 | .VirtualSize dd ? |
612 | Name rb 8 |
696 | .VirtualAddress dd ? |
613 | VirtualSize dd ? |
697 | .SizeOfRawData dd ? |
614 | VirtualAddress dd ? |
698 | .PtrRawData dd ? |
615 | SizeOfRawData dd ? |
699 | .PtrReloc dd ? |
616 | PtrRawData dd ? |
700 | .PtrLinenumbers dd ? |
617 | PtrReloc dd ? |
701 | .NumReloc dw ? |
618 | PtrLinenumbers dd ? |
702 | .NumLinenum dw ? |
619 | NumReloc dw ? |
703 | .Characteristics dd ? |
620 | NumLinenum dw ? |
704 | } |
621 | Characteristics dd ? |
705 | COFF_SECTION_SIZE equ 40 |
622 | ends |
706 | 623 | ||
707 | struc COFF_RELOC |
- | |
708 | { .VirtualAddress dd ? |
624 | struct COFF_RELOC |
709 | .SymIndex dd ? |
625 | VirtualAddress dd ? |
710 | .Type dw ? |
626 | SymIndex dd ? |
711 | } |
627 | Type dw ? |
712 | 628 | ends |
|
713 | struc COFF_SYM |
629 | |
714 | { .Name rb 8 |
630 | struct COFF_SYM |
715 | .Value dd ? |
631 | Name rb 8 |
716 | .SectionNumber dw ? |
- | |
717 | .Type dw ? |
- | |
718 | .StorageClass db ? |
- | |
719 | .NumAuxSymbols db ? |
- | |
720 | } |
- | |
721 | CSYM_SIZE equ 18 |
- | |
722 | - | ||
723 | struc IOCTL |
- | |
724 | { .handle dd ? |
- | |
725 | .io_code dd ? |
- | |
726 | .input dd ? |
- | |
727 | .inp_size dd ? |
- | |
728 | .output dd ? |
- | |
729 | .out_size dd ? |
- | |
730 | } |
- | |
731 | - | ||
732 | virtual at 0 |
- | |
733 | IOCTL IOCTL |
- | |
734 | end virtual |
- | |
735 | - | ||
736 | ;virtual at 0 |
- | |
737 | ; LIB LIB |
- | |
738 | ;end virtual |
- | |
739 | - | ||
740 | virtual at 0 |
- | |
741 | SRV SRV |
- | |
742 | end virtual |
- | |
743 | - | ||
744 | virtual at 0 |
- | |
745 | CFH COFF_HEADER |
- | |
746 | end virtual |
- | |
747 | - | ||
748 | virtual at 0 |
- | |
749 | CFS COFF_SECTION |
- | |
750 | end virtual |
- | |
751 | - | ||
752 | virtual at 0 |
- | |
753 | CRELOC COFF_RELOC |
- | |
754 | end virtual |
- | |
755 | 632 | Value dd ? |
|
756 | virtual at 0 |
633 | SectionNumber dw ? |
757 | CSYM COFF_SYM |
634 | Type dw ? |
758 | end virtual |
- | |
759 | 635 | StorageClass db ? |
|
760 | struc LHEAD |
636 | NumAuxSymbols db ? |
761 | { |
637 | ends |
762 | .next dd ? ;next object in list |
- | |
763 | .prev dd ? ;prev object in list |
- | |
764 | .sizeof: |
- | |
765 | } |
- | |
766 | - | ||
767 | virtual at 0 |
638 | |
768 | LHEAD LHEAD |
- |