215,7 → 215,8 |
syscall_display_settings.06: |
xor esi, esi |
|
mov edi, [Screen_Max_X] |
mov edi, [_display.width] |
dec edi |
mov eax, ecx |
movsx ebx, ax |
sar eax, 16 |
239,7 → 240,8 |
;-------------------------------------- |
align 4 |
.check_horizontal: |
mov edi, [Screen_Max_Y] |
mov edi, [_display.height] |
dec edi |
mov eax, edx |
movsx ebx, ax |
sar eax, 16 |
300,8 → 302,10 |
syscall_display_settings._.calculate_whole_screen: |
xor eax, eax |
xor ebx, ebx |
mov ecx, [Screen_Max_X] |
mov edx, [Screen_Max_Y] |
mov ecx, [_display.width] |
mov edx, [_display.height] |
dec ecx |
dec edx |
jmp calculatescreen |
;------------------------------------------------------------------------------ |
align 4 |
309,9 → 313,11 |
xor eax, eax |
mov [draw_limits.left], eax |
mov [draw_limits.top], eax |
mov eax, [Screen_Max_X] |
mov eax, [_display.width] |
dec eax |
mov [draw_limits.right], eax |
mov eax, [Screen_Max_Y] |
mov eax, [_display.height] |
dec eax |
mov [draw_limits.bottom], eax |
mov eax, window_data |
jmp redrawscreen |
590,12 → 596,12 |
|
mov eax, [edi + WDATA.box.left] |
add eax, [edi + WDATA.box.width] |
mov ebx, [Screen_Max_X] |
mov ebx, [_display.width] |
cmp eax, ebx |
jle .fix_vertical |
jl .fix_vertical |
mov eax, [edi + WDATA.box.width] |
sub eax, ebx |
jle @f |
jl @f |
mov [edi + WDATA.box.width], ebx |
;-------------------------------------- |
align 4 |
607,12 → 613,12 |
.fix_vertical: |
mov eax, [edi + WDATA.box.top] |
add eax, [edi + WDATA.box.height] |
mov ebx, [Screen_Max_Y] |
mov ebx, [_display.height] |
cmp eax, ebx |
jle .fix_client_box |
jl .fix_client_box |
mov eax, [edi + WDATA.box.height] |
sub eax, ebx |
jle @f |
jl @f |
mov [edi + WDATA.box.height], ebx |
;-------------------------------------- |
align 4 |
1718,9 → 1724,9 |
mov ecx, [edi + WDATA.box.width] |
mov edx, [edi + WDATA.box.height] |
|
mov esi, [Screen_Max_X] |
mov esi, [_display.width] |
cmp ecx, esi |
ja .fix_width_high |
jae .fix_width_high |
;-------------------------------------- |
align 4 |
.check_left: |
1728,13 → 1734,13 |
jl .fix_left_low |
add eax, ecx |
cmp eax, esi |
jg .fix_left_high |
jge .fix_left_high |
;-------------------------------------- |
align 4 |
.check_height: |
mov esi, [Screen_Max_Y] |
mov esi, [_display.height] |
cmp edx, esi |
ja .fix_height_high |
jae .fix_height_high |
;-------------------------------------- |
align 4 |
.check_top: |
1742,7 → 1748,7 |
jl .fix_top_low |
add ebx, edx |
cmp ebx, esi |
jg .fix_top_high |
jge .fix_top_high |
;-------------------------------------- |
align 4 |
.exit: |
1992,8 → 1998,7 |
|
sub ebp, [ff_xsz] |
add ebp, [ff_x] |
add ebp, [Screen_Max_X] ; screen.x |
inc ebp |
add ebp, [_display.width] ; screen.x |
inc ebx |
cmp ebx, [ff_ysz] |
jb .ff_new_y |