Rev 4890 | Rev 4900 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4890 | Rev 4895 | ||
---|---|---|---|
Line 691... | Line 691... | ||
691 | ;----------------------------------------------------------------------------- |
691 | ;----------------------------------------------------------------------------- |
692 | ; Display FPU register (ST0 - ST7) content |
692 | ; Display FPU register (ST0 - ST7) content |
693 | ; |
693 | ; |
694 | ; in: esi->value, edx->string, ecx = string length, ebx = coord |
694 | ; in: esi->value, edx->string, ecx = string length, ebx = coord |
695 | draw_fpu_register: |
695 | draw_fpu_register: |
- | 696 | push ebx |
|
696 | push edx |
697 | push edx |
697 | push ecx |
698 | push ecx |
698 | push esi |
699 | push esi |
699 | mov eax, esi |
700 | mov eax, esi |
700 | mov esi, ecx |
701 | mov esi, ecx |
Line 733... | Line 734... | ||
733 | mcall 47, 40100101h |
734 | mcall 47, 40100101h |
734 | lea ebx, [edx+60000h*18] |
735 | lea ebx, [edx+60000h*18] |
735 | mov esi, ecx |
736 | mov esi, ecx |
736 | pop ecx |
737 | pop ecx |
737 | pop edx |
738 | pop edx |
- | 739 | pop ebx |
|
738 | add edx, ecx |
740 | add edx, ecx |
739 | ret |
741 | ret |
Line 740... | Line 742... | ||
740 | 742 | ||
741 | ;----------------------------------------------------------------------------- |
743 | ;----------------------------------------------------------------------------- |
742 | ; Show FPU MMX register content |
744 | ; Show FPU MMX register content |
743 | ; |
745 | ; |
744 | ; in: esi->value, edx->string, ecx = string length, ebx = coord |
746 | ; in: esi->value, edx->string, ecx = string length, ebx = coord |
- | 747 | draw_mmx_register: |
|
745 | draw_mmx_register: |
748 | push ebx |
746 | push edx |
749 | push edx |
747 | push ecx |
750 | push ecx |
748 | push esi |
751 | push esi |
749 | mov eax, esi |
752 | mov eax, esi |
Line 784... | Line 787... | ||
784 | mcall 47, 40100101h |
787 | mcall 47, 40100101h |
785 | lea ebx, [edx+60000h*18] |
788 | lea ebx, [edx+60000h*18] |
786 | mov esi, ecx |
789 | mov esi, ecx |
787 | pop ecx |
790 | pop ecx |
788 | pop edx |
791 | pop edx |
- | 792 | pop ebx |
|
789 | add edx, ecx |
793 | add edx, ecx |
790 | ret |
794 | ret |
Line 791... | Line 795... | ||
791 | 795 | ||
792 | ; TODO add SSE registers |
796 | ; TODO add SSE registers |
Line 897... | Line 901... | ||
897 | call draw_register |
901 | call draw_register |
898 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+102 |
902 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+102 |
899 | add esi, _eip-_esp |
903 | add esi, _eip-_esp |
900 | call draw_register |
904 | call draw_register |
901 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+112 |
905 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+112 |
902 | push cx |
- | |
- | 906 | ||
903 | mov cl, 7 |
907 | mov cl, 7 |
904 | add esi, _eflags-_eip |
908 | add esi, _eflags-_eip |
905 | call draw_register |
909 | call draw_register |
906 | pop cx |
910 | mov cl, 4 |
Line 907... | Line 911... | ||
907 | 911 | ||
- | 912 | ; MMX registers |
|
- | 913 | ||
908 | ; MMX registers |
914 | push 8 |
909 | mov edx, mmx_strs |
915 | mov edx, mmx_strs |
910 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+142 |
916 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+142 |
- | 917 | mov esi, _mm0 |
|
- | 918 | ||
- | 919 | align 4 |
|
- | 920 | .draw_mmx_regs: |
|
911 | mov esi, _mm0 |
921 | |
912 | call draw_mmx_register |
- | |
913 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+152 |
922 | call draw_mmx_register |
914 | add esi, _mm1-_mm0 |
923 | add ebx, 10 |
915 | call draw_mmx_register |
- | |
916 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+162 |
924 | add esi, 16 |
917 | add esi, _mm2-_mm1 |
925 | dec dword [esp] |
- | 926 | jnz .draw_mmx_regs |
|
918 | call draw_mmx_register |
927 | |
- | 928 | ;FPU registers |
|
919 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+172 |
929 | |
920 | add esi, _mm3-_mm2 |
930 | mov [esp], byte 8 |
921 | call draw_mmx_register |
931 | mov edx, fpu_strs |
922 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+182 |
932 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+232 |
- | 933 | mov esi, _st0 |
|
- | 934 | ||
923 | add esi, _mm4-_mm3 |
935 | align 4 |
924 | call draw_mmx_register |
- | |
925 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+192 |
- | |
- | 936 | .draw_fpu_regs: |
|
926 | add esi, _mm5-_mm4 |
937 | |
927 | call draw_mmx_register |
938 | call draw_fpu_register |
928 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+202 |
939 | add ebx, 10 |
929 | add esi, _mm6-_mm5 |
940 | add esi, 16 |
930 | call draw_mmx_register |
- | |
931 | mov ebx, (registers_x_pos+2)*10000h+registers_y_pos+212 |
941 | dec dword [esp] |
932 | add esi, _mm7-_mm6 |
942 | jnz .draw_fpu_regs |
Line 933... | Line 943... | ||
933 | call draw_mmx_register |
943 | pop eax ;restore stack |
934 | 944 | ||
935 | mov ecx, COLOR_TXT_INACTIVE |
945 | mov ecx, COLOR_TXT_INACTIVE |
936 | cmp [debuggee_pid], 0 |
946 | cmp [debuggee_pid], 0 |