Subversion Repositories Kolibri OS

Rev

Rev 2956 | Rev 3168 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2956 Rev 3163
Line 56... Line 56...
56
;;
56
;;
57
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
57
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 58... Line 58...
58
 
58
 
Line 59... Line 59...
59
include 'macros.inc'
59
include 'macros.inc'
Line 60... Line 60...
60
 
60
 
Line 61... Line 61...
61
$Revision: 2956 $
61
$Revision: 3163 $
Line 333... Line 333...
333
    mov    eax, [BOOT_VAR + 0x9044]    ; version & flags
333
    mov    eax, [BOOT_VAR + 0x9044]    ; version & flags
334
    mov    [apm_vf], eax
334
    mov    [apm_vf], eax
335
; -----------------------------------------
335
; -----------------------------------------
336
	mov	al, [BOOT_VAR+0x901F]		; DMA access
336
	mov	al, [BOOT_VAR+0x901F]		; DMA access
337
	mov	[allow_dma_access], al
337
	mov	[allow_dma_access], al
338
	mov	eax, 32 			; bpp
338
	mov	eax, 32 			; << bpp
339
	mov	[ScreenBPP],al
339
	mov	[ScreenBPP],al
340
	mov	[_display.bpp], eax
340
	mov	[_display.bpp], eax
Line 341... Line 341...
341
 
341
 
342
	mov	[_display.vrefresh], 60
342
	mov	[_display.vrefresh], 60
Line 343... Line 343...
343
	mov	[_display.disable_mouse],  __sys_disable_mouse
343
	mov	[_display.disable_mouse],  __sys_disable_mouse
344
 
344
 
345
	movzx	eax,word [BOOT_VAR+0x900A]  ; X max
345
	mov	eax, 1024			; << X max
346
	mov	[_display.width], eax
346
	mov	[_display.width], eax
347
	dec	eax
347
	dec	eax
348
	mov	[Screen_Max_X],eax
348
	mov	[Screen_Max_X],eax
349
	mov	[screen_workarea.right],eax
349
	mov	[screen_workarea.right],eax
350
	movzx	eax,word [BOOT_VAR+0x900C]	  ; Y max
350
	mov	eax,768 			; << Y max
351
	mov	[_display.height], eax
351
	mov	[_display.height], eax
352
	dec	eax
352
	dec	eax
353
	mov	[Screen_Max_Y],eax
353
	mov	[Screen_Max_Y],eax
354
	mov	[screen_workarea.bottom],eax
354
	mov	[screen_workarea.bottom],eax
Line 355... Line 355...
355
	movzx	eax,word [BOOT_VAR+0x9008]	  ; screen mode
355
	mov	eax, 0x7055			; << screen mode
356
	mov	[SCR_MODE],eax
356
	mov	[SCR_MODE],eax
357
 
357
 
Line 358... Line 358...
358
	movzx	eax, word[BOOT_VAR+0x9001]	  ; for other modes
358
	mov	eax, 4096			; << may be different!
359
	mov	[BytesPerScanLine],ax
359
	mov	[BytesPerScanLine],ax
Line 374... Line 374...
374
 
374
 
375
	and	byte [BOOT_VAR+0x901e],0x0
375
	and	byte [BOOT_VAR+0x901e],0x0
376
	mov	eax,[BOOT_VAR+0x9018]
376
	mov	eax, [BOOT_VAR+0x9018]
Line 377... Line -...
377
	mov	[LFBAddress],eax
-
 
378
 
-
 
379
	cmp	[SCR_MODE],word 0100000000000000b
-
 
380
	jge	setvesa20
-
 
381
	mov	eax, 0xDEADBEEF
-
 
382
	hlt
-
 
383
;        ===  EGA, VGA & Vesa 1.2 modes not supported ===
-
 
384
setvesa20:
377
	mov	[LFBAddress],eax
385
v20ga32:
378
 
Line 386... Line 379...
386
	mov	[PUTPIXEL],dword __sys_putpixel
379
	mov	[PUTPIXEL],dword __sys_putpixel
387
	mov	[GETPIXEL],dword get_pixel
380
	mov	[GETPIXEL],dword get_pixel