Subversion Repositories Kolibri OS

Rev

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

Rev 1507 Rev 1508
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: 1507 $
61
$Revision: 1508 $
Line 125... Line 125...
125
include "boot/bootstr.inc"     ; language-independent boot messages
125
include "boot/bootstr.inc"     ; language-independent boot messages
126
include "boot/preboot.inc"
126
include "boot/preboot.inc"
Line 127... Line 127...
127
 
127
 
128
if lang eq en
128
if lang eq en
129
include "boot/booteng.inc"     ; english system boot messages
129
include "boot/booteng.inc"     ; english system boot messages
130
else if lang eq ru
130
else
131
include "boot/bootru.inc"      ; russian system boot messages
131
include "boot/bootru.inc"      ; russian system boot messages
132
include "boot/ru.inc"          ; Russian font
-
 
133
else if lang eq et
-
 
134
include "boot/bootet.inc"      ; estonian system boot messages
-
 
135
include "boot/et.inc"          ; Estonian font
-
 
136
else
-
 
137
include "boot/bootge.inc"      ; german system boot messages
132
include "boot/ru.inc"          ; Russian font
Line 138... Line 133...
138
end if
133
end if
139
 
134
 
140
include "boot/bootcode.inc"    ; 16 bit system boot code
135
include "boot/bootcode.inc"    ; 16 bit system boot code
Line 393... Line 388...
393
 
388
 
394
        and     byte [BOOT_VAR+0x901e],0x0
389
        and     byte [BOOT_VAR+0x901e],0x0
395
        mov     eax,[BOOT_VAR+0x9018]
390
        mov     eax,[BOOT_VAR+0x9018]
Line 396... Line 391...
396
        mov     [LFBAddress],eax
391
        mov     [LFBAddress],eax
397
 
392
 
398
        cmp     [SCR_MODE],word 0100000000000000b
393
;==        cmp     [SCR_MODE],word 0100000000000000b
399
        jge     setvesa20
394
;        jge     setvesa20
400
        cmp     [SCR_MODE],word 0x13
395
;        cmp     [SCR_MODE],word 0x13
401
        je      v20ga32
396
;        je      v20ga32
402
        mov     [PUTPIXEL],dword Vesa12_putpixel24  ; Vesa 1.2
397
;        mov     [PUTPIXEL],dword Vesa12_putpixel24  ; Vesa 1.2
403
        mov     [GETPIXEL],dword Vesa12_getpixel24
398
;        mov     [GETPIXEL],dword Vesa12_getpixel24
404
        cmp     [ScreenBPP],byte 24
399
;        cmp     [ScreenBPP],byte 24
405
        jz      ga24
400
;        jz      ga24
406
        mov     [PUTPIXEL],dword Vesa12_putpixel32
401
;        mov     [PUTPIXEL],dword Vesa12_putpixel32
407
        mov     [GETPIXEL],dword Vesa12_getpixel32
402
;        mov     [GETPIXEL],dword Vesa12_getpixel32
408
      ga24:
403
;      ga24:
409
        jmp     v20ga24
404
;        jmp     v20ga24
410
      setvesa20:
405
      setvesa20:
411
        mov     [PUTPIXEL],dword Vesa20_putpixel24  ; Vesa 2.0
406
;        mov     [PUTPIXEL],dword Vesa20_putpixel24  ; Vesa 2.0
412
        mov     [GETPIXEL],dword Vesa20_getpixel24
407
;        mov     [GETPIXEL],dword Vesa20_getpixel24
413
        cmp     [ScreenBPP],byte 24
408
;        cmp     [ScreenBPP],byte 24
414
        jz      v20ga24
409
;        jz      v20ga24
415
      v20ga32:
410
      v20ga32:
416
        mov     [PUTPIXEL],dword Vesa20_putpixel32
411
        mov     [PUTPIXEL],dword Vesa20_putpixel32
417
        mov     [GETPIXEL],dword Vesa20_getpixel32
412
        mov     [GETPIXEL],dword Vesa20_getpixel32
418
      v20ga24:
413
;      v20ga24:
419
        cmp     [SCR_MODE],word 0x12                ; 16 C VGA 640x480
414
;        cmp     [SCR_MODE],word 0x12                ; 16 C VGA 640x480
420
        jne     no_mode_0x12
415
;        jne     no_mode_0x12
421
        mov     [PUTPIXEL],dword VGA_putpixel
416
;        mov     [PUTPIXEL],dword VGA_putpixel
Line 422... Line 417...
422
        mov     [GETPIXEL],dword Vesa20_getpixel32
417
;        mov     [GETPIXEL],dword Vesa20_getpixel32
423
      no_mode_0x12:
418
      no_mode_0x12:
424
 
419
 
Line 812... Line 807...
812
        call  stack_init
807
        call  stack_init
813
        call  fdc_init
808
        call  fdc_init
Line 814... Line 809...
814
 
809
 
Line 815... Line 810...
815
; PALETTE FOR 320x200 and 640x480 16 col
810
; PALETTE FOR 320x200 and 640x480 16 col
816
 
811
 
817
        cmp   [SCR_MODE],word 0x12
812
;        cmp   [SCR_MODE],word 0x12
818
        jne   no_pal_vga
813
;        jne   no_pal_vga
819
        mov   esi,boot_pal_vga
814
;        mov   esi,boot_pal_vga
820
        call  boot_log
815
;        call  boot_log
Line 821... Line 816...
821
        call  paletteVGA
816
;        call  paletteVGA
822
      no_pal_vga:
817
;      no_pal_vga:
823
 
818
 
824
        cmp   [SCR_MODE],word 0x13
819
;        cmp   [SCR_MODE],word 0x13
825
        jne   no_pal_ega
820
;        jne   no_pal_ega
826
        mov   esi,boot_pal_ega
821
;        mov   esi,boot_pal_ega
Line 827... Line 822...
827
        call  boot_log
822
;        call  boot_log
Line 828... Line 823...
828
        call  palette320x200
823
;        call  palette320x200
Line 1021... Line 1016...
1021
		xor	  edi,edi
1016
		xor	  edi,edi
1022
        mov   edx,esi
1017
        mov   edx,esi
1023
		inc	  edi
1018
		inc	  edi
1024
        call  dtext
1019
        call  dtext
Line 1025... Line 1020...
1025
 
1020
 
1026
        mov   [novesachecksum],1000
1021
;        mov   [novesachecksum],1000
Line 1027... Line 1022...
1027
        call  checkVga_N13
1022
;        call  checkVga_N13
Line 1028... Line 1023...
1028
 
1023
 
Line 1039... Line 1034...
1039
osloop:
1034
osloop:
1040
        call   [draw_pointer]
1035
        call   [draw_pointer]
1041
        call    window_check_events
1036
        call    window_check_events
1042
        call    mouse_check_events
1037
        call    mouse_check_events
1043
        call   checkmisc
1038
        call   checkmisc
1044
        call   checkVga_N13
1039
;        call   checkVga_N13
1045
        call   stack_handler
1040
        call   stack_handler
1046
        call   checkidle
1041
        call   checkidle
1047
        call   check_fdd_motor_status
1042
        call   check_fdd_motor_status
1048
        call   check_ATAPI_device_event
1043
        call   check_ATAPI_device_event
1049
        jmp    osloop
1044
        jmp    osloop
Line 3799... Line 3794...
3799
       cmp   [SCR_MODE],word 0x12
3794
       cmp   [SCR_MODE],word 0x12
3800
       je   dbrv20
3795
       je   dbrv20
3801
     dbrv12:
3796
     dbrv12:
3802
       cmp  [SCR_MODE],word 0100000000000000b
3797
       cmp  [SCR_MODE],word 0100000000000000b
3803
       jge  dbrv20
3798
       jge  dbrv20
3804
       cmp  [SCR_MODE],word 0x13
3799
;       cmp  [SCR_MODE],word 0x13
3805
       je   dbrv20
3800
;       je   dbrv20
3806
       call  vesa12_drawbackground
3801
;       call  vesa12_drawbackground
3807
       dec   [mouse_pause]
3802
       dec   [mouse_pause]
3808
       call   [draw_pointer]
3803
       call   [draw_pointer]
3809
       ret
3804
       ret
3810
     dbrv20:
3805
     dbrv20:
3811
       cmp   [BgrDrawMode],dword 1
3806
       cmp   [BgrDrawMode],dword 1
Line 3841... Line 3836...
3841
  .forced:
3836
  .forced:
3842
        push    ebp esi 0
3837
        push    ebp esi 0
3843
        mov     ebp, putimage_get24bpp
3838
        mov     ebp, putimage_get24bpp
3844
        mov     esi, putimage_init24bpp
3839
        mov     esi, putimage_init24bpp
3845
sys_putimage_bpp:
3840
sys_putimage_bpp:
3846
;        call    [disable_mouse] ; this will be done in xxx_putimage
-
 
3847
;        mov     eax, vga_putimage
-
 
3848
        cmp     [SCR_MODE], word 0x12
3841
;        cmp     [SCR_MODE], word 0x12
3849
        jz      @f   ;.doit
3842
;        jz      @f   ;.doit
3850
        mov     eax, vesa12_putimage
3843
;        mov     eax, vesa12_putimage
3851
        cmp     [SCR_MODE], word 0100000000000000b
3844
;        cmp     [SCR_MODE], word 0100000000000000b
3852
        jae     @f
3845
;        jae     @f
3853
        cmp     [SCR_MODE], word 0x13
3846
;        cmp     [SCR_MODE], word 0x13
3854
        jnz     .doit
3847
;        jnz     .doit
3855
@@:
3848
;@@:
3856
        mov     eax, vesa20_putimage
3849
        mov     eax, vesa20_putimage
3857
.doit:
3850
.doit:
3858
        inc     [mouse_pause]
3851
        inc     [mouse_pause]
3859
        call    eax
3852
        call    eax
3860
        dec     [mouse_pause]
3853
        dec     [mouse_pause]
Line 4138... Line 4131...
4138
    inc   [mouse_pause]
4131
    inc   [mouse_pause]
4139
;        call    [disable_mouse]
4132
;        call    [disable_mouse]
4140
    cmp   [SCR_MODE],word 0x12
4133
    cmp   [SCR_MODE],word 0x12
4141
    je   dbv20
4134
    je   dbv20
4142
   sdbv20:
4135
   sdbv20:
4143
    cmp  [SCR_MODE],word 0100000000000000b
4136
;    cmp  [SCR_MODE],word 0100000000000000b
4144
    jge  dbv20
4137
;    jge  dbv20
4145
    cmp  [SCR_MODE],word 0x13
4138
;    cmp  [SCR_MODE],word 0x13
4146
    je   dbv20
4139
;    je   dbv20
4147
    call vesa12_drawbar
4140
;    call vesa12_drawbar
4148
    dec   [mouse_pause]
4141
;    dec   [mouse_pause]
4149
    call   [draw_pointer]
4142
;    call   [draw_pointer]
4150
    ret
4143
;    ret
4151
  dbv20:
4144
  dbv20:
4152
    call vesa20_drawbar
4145
    call vesa20_drawbar
4153
    dec   [mouse_pause]
4146
    dec   [mouse_pause]
4154
    call   [draw_pointer]
4147
    call   [draw_pointer]
4155
    ret
4148
    ret