Subversion Repositories Kolibri OS

Rev

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

Rev 488 Rev 521
Line 1... Line 1...
1
$Revision: 488 $
1
$Revision: 521 $
2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
;;                                                              ;;
3
;;                                                              ;;
4
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
4
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
5
;; Distributed under terms of the GNU General Public License    ;;
5
;; Distributed under terms of the GNU General Public License    ;;
6
;;                                                              ;;
6
;;                                                              ;;
Line 524... Line 524...
524
.exit:
524
.exit:
525
           push eax
525
           push eax
526
           lea edi, [eax+ebx]     ;cleanup remain space
526
           lea edi, [eax+ebx]     ;cleanup remain space
527
           mov ecx, 4096          ;from file end
527
           mov ecx, 4096          ;from file end
528
           and ebx, 4095
528
           and ebx, 4095
-
 
529
           jz  @f
529
           sub ecx, ebx
530
           sub ecx, ebx
530
           xor eax, eax
531
           xor eax, eax
531
           cld
532
           cld
532
           rep stosb
533
           rep stosb
-
 
534
@@:
533
           mov ebx, [file_size]
535
           mov ebx, [file_size]
534
           pop eax
536
           pop eax
535
           ret
537
           ret
536
.cleanup:
538
.cleanup:
537
           stdcall kernel_free, [file]
539
           stdcall kernel_free, [file]
Line 694... Line 696...
694
             img_base  dd ?
696
             img_base  dd ?
695
             start     dd ?
697
             start     dd ?
Line 696... Line 698...
696
 
698
 
697
             exports   dd ?   ;fake exports table
699
             exports   dd ?   ;fake exports table
698
                       dd ?
700
                       dd ?
699
             file_name rb 14+16+4+1      ; '/rd/1/drivers/.obj'
701
             file_name rb 15+16+4+1      ; '/%sys%/drivers/.obj'
Line 700... Line 702...
700
           endl
702
           endl
701
 
703
 
702
           lea     edx, [file_name]
704
           lea     edx, [file_name]
703
           mov     dword [edx], '%sys'
705
           mov     dword [edx], '/%sy'
704
           mov     dword [edx+4], '%/dr'
706
           mov     dword [edx+4], 's%/d'
705
           mov     dword [edx+8], 'iver'
707
           mov     dword [edx+8], 'rive'
706
           mov     word [edx+12], 's/'
708
           mov     dword [edx+12], 'rs/'
707
           mov     esi, [driver_name]
709
           mov     esi, [driver_name]
708
           lea     edi, [edx+14]
710
           lea     edi, [edx+15]
709
           mov     ecx, 16
711
           mov     ecx, 16
710
@@:
712
@@:
711
           lodsb
713
           lodsb