Rev 519 | Rev 523 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 519 | Rev 521 | ||
---|---|---|---|
Line 52... | Line 52... | ||
52 | ;; |
52 | ;; |
53 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
53 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 54... | Line 54... | ||
54 | 54 | ||
Line 55... | Line 55... | ||
55 | include 'macros.inc' |
55 | include 'macros.inc' |
Line 56... | Line 56... | ||
56 | 56 | ||
57 | $Revision: 519 $ |
57 | $Revision: 521 $ |
58 | 58 | ||
Line 531... | Line 531... | ||
531 | 531 | ||
532 | ;!!!!!!!!!!!!!!!!!!!!!!!!!! |
532 | ;!!!!!!!!!!!!!!!!!!!!!!!!!! |
533 | include 'detect/disks.inc' |
533 | include 'detect/disks.inc' |
Line -... | Line 534... | ||
- | 534 | ;!!!!!!!!!!!!!!!!!!!!!!!!!! |
|
- | 535 | ||
534 | ;!!!!!!!!!!!!!!!!!!!!!!!!!! |
536 | call Parser_params |
Line 535... | Line 537... | ||
535 | 537 | ||
536 | ; READ RAMDISK IMAGE FROM HD |
538 | ; READ RAMDISK IMAGE FROM HD |
537 | 539 | ||
Line 547... | Line 549... | ||
547 | 549 | ||
548 | ;!!!!!!!!!!!!!!!!!!!!!!! |
550 | ;!!!!!!!!!!!!!!!!!!!!!!! |
549 | include 'vmodeld.inc' |
551 | include 'vmodeld.inc' |
Line 550... | Line -... | ||
550 | ;!!!!!!!!!!!!!!!!!!!!!!! |
- | |
551 | - | ||
552 | call Parser_params |
552 | ;!!!!!!!!!!!!!!!!!!!!!!! |
553 | 553 | ||
554 | mov ax,[OS_BASE+0x10000+bx_from_load] |
554 | mov ax,[OS_BASE+0x10000+bx_from_load] |
555 | cmp ax,'r1' ; åñëè ñðàì äèñê - òî íå ãðóçèòü áèáëèîòåêè |
555 | cmp ax,'r1' ; åñëè ñðàì äèñê - òî íå ãðóçèòü áèáëèîòåêè |
556 | je no_lib_load |
556 | je no_lib_load |
Line 687... | Line 687... | ||
687 | 687 | ||
688 | mov ebx, SLOT_BASE+256+APP_OBJ_OFFSET |
688 | mov ebx, SLOT_BASE+256+APP_OBJ_OFFSET |
689 | mov dword [SLOT_BASE+256+APPDATA.fd_obj], ebx |
689 | mov dword [SLOT_BASE+256+APPDATA.fd_obj], ebx |
Line -... | Line 690... | ||
- | 690 | mov dword [SLOT_BASE+256+APPDATA.bk_obj], ebx |
|
- | 691 | ||
690 | mov dword [SLOT_BASE+256+APPDATA.bk_obj], ebx |
692 | mov dword [SLOT_BASE+256+APPDATA.cur_dir], sysdir_path |
691 | 693 | ||
692 | ; task list |
694 | ; task list |
693 | mov [CURRENT_TASK],dword 1 |
695 | mov [CURRENT_TASK],dword 1 |
694 | mov [TASK_COUNT],dword 1 |
696 | mov [TASK_COUNT],dword 1 |
Line 772... | Line 774... | ||
772 | no_st_network: |
774 | no_st_network: |
Line 773... | Line 775... | ||
773 | 775 | ||
774 | ; LOAD FIRST APPLICATION |
776 | ; LOAD FIRST APPLICATION |
Line 775... | Line -... | ||
775 | cli |
- | |
776 | 777 | cli |
|
777 | if 0 |
778 | |
Line 778... | Line -... | ||
778 | cmp byte [BOOT_VAR+0x9030],1 |
- | |
779 | jne no_load_vrr_m |
- | |
780 | - | ||
781 | stdcall kernel_alloc, 0x100 |
- | |
782 | push eax |
779 | cmp byte [BOOT_VAR+0x9030],1 |
783 | mov ebx,eax |
- | |
784 | stdcall full_file_name,vrr_m,eax |
- | |
785 | mov ebp, eax |
- | |
786 | 780 | jne no_load_vrr_m |
|
787 | xor ebx, ebx |
- | |
788 | xor edx, edx |
- | |
789 | call fs_execute |
- | |
790 | pop ebx |
- | |
Line 791... | Line 781... | ||
791 | push eax |
781 | |
792 | stdcall kernel_free, ebx |
782 | mov ebp, vrr_m |
Line 793... | Line 783... | ||
793 | pop eax |
783 | call fs_execute_from_sysdir |
Line 794... | Line -... | ||
794 | - | ||
795 | cmp eax,2 ; if vrr_m app found (PID=2) |
- | |
796 | je first_app_found |
- | |
797 | - | ||
798 | no_load_vrr_m: |
- | |
799 | - | ||
800 | stdcall kernel_alloc, 0x100 |
- | |
801 | push eax |
- | |
802 | mov ebx,eax |
- | |
803 | stdcall full_file_name,firstapp,eax |
- | |
804 | mov ebp, eax |
- | |
805 | xor ebx, ebx |
- | |
806 | xor edx, edx |
- | |
807 | call fs_execute |
- | |
808 | pop ebx |
- | |
809 | push eax |
- | |
810 | stdcall kernel_free, ebx |
- | |
811 | pop eax |
- | |
812 | cmp eax,2 ; continue if a process has been loaded |
- | |
813 | je first_app_found |
- | |
814 | mov eax, 0xDEADBEEF ; otherwise halt |
- | |
815 | hlt |
- | |
816 | - | ||
817 | first_app_found: |
- | |
818 | - | ||
819 | else |
- | |
820 | sub esp, 0x100 |
- | |
821 | - | ||
822 | cmp byte [BOOT_VAR+0x9030],1 |
- | |
823 | jne no_load_vrr_m |
- | |
824 | - | ||
825 | mov ebp, esp |
- | |
826 | stdcall full_file_name,vrr_m,ebp |
- | |
827 | - | ||
828 | xor ebx, ebx |
- | |
829 | xor edx, edx |
- | |
830 | call fs_execute |
- | |
831 | 784 | ||
832 | cmp eax,2 ; if vrr_m app found (PID=2) |
- | |
833 | je first_app_found |
- | |
834 | - | ||
835 | no_load_vrr_m: |
- | |
836 | 785 | cmp eax,2 ; if vrr_m app found (PID=2) |
|
Line 837... | Line 786... | ||
837 | mov ebp, esp |
786 | je first_app_found |
838 | stdcall full_file_name,firstapp,ebp |
787 | |
Line 839... | Line 788... | ||
839 | 788 | no_load_vrr_m: |
|
840 | xor ebx, ebx |
789 | |
Line 841... | Line 790... | ||
841 | xor edx, edx |
790 | mov ebp, firstapp |
Line 842... | Line -... | ||
842 | call fs_execute |
- | |
843 | - | ||
844 | cmp eax,2 ; continue if a process has been loaded |
- | |
845 | je first_app_found |
791 | call fs_execute_from_sysdir |
Line 846... | Line 792... | ||
846 | 792 | ||
847 | mov eax, 0xDEADBEEF ; otherwise halt |
793 | cmp eax,2 ; continue if a process has been loaded |
Line 3460... | Line 3406... | ||
3460 | 3406 | ||
3461 | pop edx eax |
3407 | pop edx eax |
Line 3462... | Line 3408... | ||
3462 | ret |
3408 | ret |
3463 | 3409 | ||
3464 | iglobal |
3410 | iglobal |
Line 3465... | Line 3411... | ||
3465 | cpustring db '%sys%/CPU',0 |
3411 | cpustring db 'CPU',0 |
3466 | endg |
3412 | endg |
3467 | 3413 | ||
Line 3475... | Line 3421... | ||
3475 | checkmisc: |
3421 | checkmisc: |
Line 3476... | Line 3422... | ||
3476 | 3422 | ||
3477 | cmp [ctrl_alt_del], 1 |
3423 | cmp [ctrl_alt_del], 1 |
Line 3478... | Line -... | ||
3478 | jne nocpustart |
- | |
3479 | - | ||
3480 | - | ||
3481 | stdcall kernel_alloc, 0x100 |
- | |
3482 | push eax |
3424 | jne nocpustart |
3483 | mov ebx,eax |
- | |
3484 | stdcall full_file_name,cpustring,eax |
- | |
3485 | mov ebp, eax |
- | |
3486 | - | ||
3487 | xor ebx, ebx |
3425 | |
3488 | xor edx, edx |
- | |
3489 | call fs_execute |
- | |
3490 | - | ||
3491 | pop ebx |
- | |
3492 | push eax |
- | |
Line 3493... | Line 3426... | ||
3493 | stdcall kernel_free, ebx |
3426 | mov ebp, cpustring |
Line 3494... | Line 3427... | ||
3494 | pop eax |
3427 | call fs_execute_from_sysdir |
3495 | 3428 |