export set_screen

git-svn-id: svn://kolibrios.org@757 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Sergey Semyonov (Serge) 2008-02-24 16:21:55 +00:00
parent 251159e3c5
commit e461a53e3d
2 changed files with 332 additions and 296 deletions

View File

@ -287,6 +287,7 @@ __exports:
free, 'Kfree', \ free, 'Kfree', \
map_io_mem, 'MapIoMem', \ ; stdcall map_io_mem, 'MapIoMem', \ ; stdcall
\ \
set_screen, 'SetScreen', \
pci_api, 'PciApi', \ pci_api, 'PciApi', \
pci_read8, 'PciRead8', \ ; stdcall pci_read8, 'PciRead8', \ ; stdcall
pci_read16, 'PciRead16', \ ; stdcall pci_read16, 'PciRead16', \ ; stdcall

View File

@ -5173,6 +5173,41 @@ read_from_hd: ; Read from hd - fn not in use
paleholder: paleholder:
ret ret
align 4
set_screen:
cmp eax, [Screen_Max_X]
jne .set
cmp edx, [Screen_Max_Y]
jne .set
ret
.set:
pushfd
cli
mov [Screen_Max_X], eax
mov [Screen_Max_Y], edx
mov [screen_workarea.right],eax
mov [screen_workarea.bottom], edx
inc eax
shl eax, 2 ;32 bpp
mov [BytesPerScanLine], eax
push ebx
push esi
push edi
call repos_windows
mov eax, 0
mov ebx, 0
mov ecx, [Screen_Max_X]
mov edx, [Screen_Max_Y]
call calculatescreen
pop edi
pop esi
pop ebx
popfd
ret
; --------------- APM --------------------- ; --------------- APM ---------------------
apm_entry dp 0 apm_entry dp 0