Rev 9948 | Rev 9950 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9948 | Rev 9949 | ||
---|---|---|---|
Line 27... | Line 27... | ||
27 | format binary as "mnt" |
27 | format binary as "mnt" |
Line 28... | Line 28... | ||
28 | 28 | ||
29 | include 'macros.inc' |
29 | include 'macros.inc' |
Line 30... | Line 30... | ||
30 | include 'struct.inc' |
30 | include 'struct.inc' |
Line 31... | Line 31... | ||
31 | 31 | ||
32 | $Revision: 9948 $ |
32 | $Revision: 9949 $ |
Line 2129... | Line 2129... | ||
2129 | cmp edx, 1 |
2129 | cmp edx, 1 |
2130 | je .fail |
2130 | je .fail |
Line 2131... | Line 2131... | ||
2131 | 2131 | ||
2132 | mov eax, edx |
2132 | mov eax, edx |
- | 2133 | shl edx, BSF sizeof.WDATA |
|
Line 2133... | Line 2134... | ||
2133 | shl edx, BSF sizeof.WDATA |
2134 | add edx, window_data |
2134 | 2135 | ||
Line 2135... | Line 2136... | ||
2135 | test [window_data + edx + WDATA.fl_wstate], WSTATE_USED |
2136 | test [edx + WDATA.fl_wstate], WSTATE_USED |
2136 | jz .fail |
2137 | jz .fail |
Line 2137... | Line 2138... | ||
2137 | 2138 | ||
2138 | cmp ecx, 1 |
2139 | cmp ecx, 1 |
Line 2139... | Line 2140... | ||
2139 | jnz .set_zmod |
2140 | jnz .set_zmod |
2140 | 2141 | ||
2141 | mov al, [window_data + edx + WDATA.z_modif] |
2142 | movzx eax, [edx + WDATA.z_modif] |
Line 2149... | Line 2150... | ||
2149 | mov esi, eax |
2150 | mov esi, eax |
Line 2150... | Line 2151... | ||
2150 | 2151 | ||
2151 | cmp bl, ZPOS_ALWAYS_TOP |
2152 | cmp bl, ZPOS_ALWAYS_TOP |
Line 2152... | Line 2153... | ||
2152 | jg .fail |
2153 | jg .fail |
Line 2153... | Line 2154... | ||
2153 | 2154 | ||
2154 | mov [window_data + edx + WDATA.z_modif], bl |
2155 | mov [edx + WDATA.z_modif], bl |
2155 | 2156 | ||
2156 | mov eax, [window_data + edx + WDATA.box.left] |
2157 | mov eax, [edx + WDATA.box.left] |
2157 | mov ebx, [window_data + edx + WDATA.box.top] |
2158 | mov ebx, [edx + WDATA.box.top] |
2158 | mov ecx, [window_data + edx + WDATA.box.width] |
2159 | mov ecx, [edx + WDATA.box.width] |
2159 | mov edx, [window_data + edx + WDATA.box.height] |
2160 | mov edx, [edx + WDATA.box.height] |
2160 | add ecx, eax |
2161 | add ecx, eax |
2161 | add edx, ebx |
2162 | add edx, ebx |
Line 3539... | Line 3540... | ||
3539 | ret |
3540 | ret |
3540 | ;-------------------------------------- |
3541 | ;-------------------------------------- |
3541 | align 4 |
3542 | align 4 |
3542 | @@: |
3543 | @@: |
3543 | mov edi, [current_slot] |
3544 | mov edi, [current_slot] |
3544 | mov edi, APPDATA.window |
3545 | mov edi, [edi + APPDATA.window] |
3545 | add dx, word[edi + WDATA.clientbox.top] |
3546 | add dx, word[edi + WDATA.clientbox.top] |
3546 | rol edx, 16 |
3547 | rol edx, 16 |
3547 | add dx, word[edi + WDATA.clientbox.left] |
3548 | add dx, word[edi + WDATA.clientbox.left] |
3548 | rol edx, 16 |
3549 | rol edx, 16 |
3549 | ;-------------------------------------- |
3550 | ;-------------------------------------- |
Line 3577... | Line 3578... | ||
3577 | ; shr eax, 3 |
3578 | ; shr eax, 3 |
3578 | stdcall is_region_userspace, ebx, eax |
3579 | stdcall is_region_userspace, ebx, eax |
3579 | pop esi ecx |
3580 | pop esi ecx |
3580 | jnz sys_putimage.exit |
3581 | jnz sys_putimage.exit |
Line 3581... | Line 3582... | ||
3581 | 3582 | ||
3582 | mov eax, [current_slot_idx] |
3583 | mov eax, [current_slot] |
3583 | shl eax, BSF sizeof.WDATA |
3584 | mov eax, [eax + APPDATA.window] |
3584 | add dx, word [window_data + eax + WDATA.clientbox.top] |
3585 | add dx, word [eax + WDATA.clientbox.top] |
3585 | rol edx, 16 |
3586 | rol edx, 16 |
3586 | add dx, word [window_data + eax + WDATA.clientbox.left] |
3587 | add dx, word [eax + WDATA.clientbox.left] |
3587 | rol edx, 16 |
3588 | rol edx, 16 |
3588 | ;-------------------------------------- |
3589 | ;-------------------------------------- |
3589 | align 4 |
3590 | align 4 |
3590 | .forced: |
3591 | .forced: |
Line 3890... | Line 3891... | ||
3890 | ; ebx y beginning |
3891 | ; ebx y beginning |
3891 | ; ecx x end |
3892 | ; ecx x end |
3892 | ; edx y end |
3893 | ; edx y end |
3893 | ; edi color |
3894 | ; edi color |
3894 | ;__sys_drawbar: |
3895 | ;__sys_drawbar: |
3895 | ; mov esi, [current_slot_idx] |
3896 | ; mov esi, [current_slot] |
3896 | ; shl esi, BSF sizeof.WDATA |
3897 | ; mov esi, [esi + APPDATA.window] |
3897 | ; add eax, [window_data+esi+WDATA.clientbox.left] |
3898 | ; add eax, [esi + WDATA.clientbox.left] |
3898 | ; add ecx, [window_data+esi+WDATA.clientbox.left] |
3899 | ; add ecx, [esi + WDATA.clientbox.left] |
3899 | ; add ebx, [window_data+esi+WDATA.clientbox.top] |
3900 | ; add ebx, [esi + WDATA.clientbox.top] |
3900 | ; add edx, [window_data+esi+WDATA.clientbox.top] |
3901 | ; add edx, [esi + WDATA.clientbox.top] |
3901 | ;-------------------------------------- |
3902 | ;-------------------------------------- |
3902 | ;align 4 |
3903 | ;align 4 |
3903 | ;.forced: |
3904 | ;.forced: |
3904 | ; call vesa20_drawbar |
3905 | ; call vesa20_drawbar |
3905 | ; call [draw_pointer] |
3906 | ; call [draw_pointer] |