Rev 1702 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1702 | Rev 2068 | ||
---|---|---|---|
Line 458... | Line 458... | ||
458 | mov dword [ebx+12], 10*4 ; bytes to write |
458 | mov dword [ebx+12], 10*4 ; bytes to write |
459 | mov dword [ebx+16], color_table ; address |
459 | mov dword [ebx+16], color_table ; address |
460 | mcall 70 |
460 | mcall 70 |
461 | ret |
461 | ret |
462 | ;--------------------------------------------------------------------- |
462 | ;--------------------------------------------------------------------- |
463 | ;read_string: |
- | |
464 | ; |
- | |
465 | ; pusha |
- | |
466 | ; |
- | |
467 | ; mov edi,fname |
- | |
468 | ; mov al,'_' |
- | |
469 | ; mov ecx,87 |
- | |
470 | ; cld |
- | |
471 | ; rep stosb |
- | |
472 | ; |
- | |
473 | ; call print_text |
- | |
474 | ; |
- | |
475 | ; mov edi,fname |
- | |
476 | ; |
- | |
477 | ; f11: |
- | |
478 | ; mov eax,10 |
- | |
479 | ; mcall |
- | |
480 | ; cmp eax,2 |
- | |
481 | ; jne read_done |
- | |
482 | ;; mov eax,2 |
- | |
483 | ; mcall |
- | |
484 | ; shr eax,8 |
- | |
485 | ; cmp eax,13 |
- | |
486 | ; je read_done |
- | |
487 | ; cmp eax,8 |
- | |
488 | ; jne nobsl |
- | |
489 | ; cmp edi,fname |
- | |
490 | ; je f11 |
- | |
491 | ; dec edi |
- | |
492 | ; mov [edi],byte '_' |
- | |
493 | ; call print_text |
- | |
494 | ; jmp f11 |
- | |
495 | ; nobsl: |
- | |
496 | ; mov [edi],al |
- | |
497 | ; |
- | |
498 | ; call print_text |
- | |
499 | ; |
- | |
500 | ; inc edi |
- | |
501 | ; cmp edi, fname+87 |
- | |
502 | ; jne f11 |
- | |
503 | ; |
- | |
504 | ; read_done: |
- | |
505 | ; |
- | |
506 | ; mov ecx, fname+88 |
- | |
507 | ; sub ecx, edi |
- | |
508 | ; mov eax, 0 |
- | |
509 | ; cld |
- | |
510 | ; rep stosb |
- | |
511 | ; |
- | |
512 | ; call print_text |
- | |
513 | ; |
- | |
514 | ; popa |
- | |
515 | ; |
- | |
516 | ; ret |
- | |
517 | - | ||
518 | - | ||
519 | ;print_text: |
- | |
520 | ; pushad |
- | |
521 | ; |
- | |
522 | ; mpack ebx,15,6*87+4 |
- | |
523 | ; mpack ecx,(30+18*10+2),11 |
- | |
524 | ; mcall 13,,,[w_work] |
- | |
525 | ; |
- | |
526 | ; mpack ebx,17,(30+18*10+4) |
- | |
527 | ; mcall 4,,[w_work_text],fname,87 |
- | |
528 | ; |
- | |
529 | ; popad |
- | |
530 | ;ret |
- | |
531 | - | ||
532 | - | ||
533 | draw_color: |
463 | draw_color: |
Line 534... | Line 464... | ||
534 | 464 | ||
Line 535... | Line 465... | ||
535 | pusha |
465 | pusha |
Line 552... | Line 482... | ||
552 | mov edx,272*65536+201 |
482 | mov edx,272*65536+201 |
553 | mov esi,[w_work_text] |
483 | mov esi,[w_work_text] |
554 | mcall |
484 | mcall |
Line 555... | Line 485... | ||
555 | 485 | ||
556 | popa |
- | |
557 | 486 | popa |
|
558 | ret |
- | |
559 | - | ||
- | 487 | ret |
|
560 | 488 | ;---------------------------------------------------------------------- |
|
Line 561... | Line 489... | ||
561 | draw_colours: |
489 | draw_colours: |
Line 562... | Line 490... | ||
562 | 490 | ||
Line 574... | Line 502... | ||
574 | add esi,4 |
502 | add esi,4 |
575 | cmp esi,color_table+4*9 |
503 | cmp esi,color_table+4*9 |
576 | jbe newcol |
504 | jbe newcol |
Line 577... | Line 505... | ||
577 | 505 | ||
578 | popa |
- | |
579 | 506 | popa |
|
580 | ret |
- | |
581 | - | ||
- | 507 | ret |
|
582 | 508 | ;---------------------------------------------------------------------- |
|
583 | draw_framerect: ; ebx,ecx |
509 | draw_framerect: ; ebx,ecx |
584 | push ebx ecx |
510 | push ebx ecx |
585 | add bx,[esp+6] |
511 | add bx,[esp+6] |
586 | mov cx,[esp+2] |
512 | mov cx,[esp+2] |
Line 602... | Line 528... | ||
602 | add bx,[esp+4] |
528 | add bx,[esp+4] |
603 | sub ebx,0x00010001 |
529 | sub ebx,0x00010001 |
604 | mcall |
530 | mcall |
605 | add esp,8 |
531 | add esp,8 |
606 | ret |
532 | ret |
607 | - | ||
- | 533 | ;---------------------------------------------------------------------- |
|
608 | find_bitmap: |
534 | find_bitmap: |
609 | mov edi,[ebp+SKIN_HEADER.bitmaps] |
535 | mov edi,[ebp+SKIN_HEADER.bitmaps] |
610 | add edi,ebp |
536 | add edi,ebp |
611 | xor ebx,ebx |
537 | xor ebx,ebx |
612 | .lp1: cmp dword[edi],0 |
538 | .lp1: cmp dword[edi],0 |
Line 619... | Line 545... | ||
619 | mov cx,[ebx+4] |
545 | mov cx,[ebx+4] |
620 | add ebx,8 |
546 | add ebx,8 |
621 | .lp2: ret |
547 | .lp2: ret |
622 | @@: add edi,8 |
548 | @@: add edi,8 |
623 | jmp .lp1 |
549 | jmp .lp1 |
624 | - | ||
- | 550 | ;---------------------------------------------------------------------- |
|
625 | dec_edx: |
551 | dec_edx: |
626 | sub dl,4 |
552 | sub dl,4 |
627 | jnc @f |
553 | jnc @f |
628 | xor dl,dl |
554 | xor dl,dl |
629 | @@: sub dh,4 |
555 | @@: sub dh,4 |
Line 633... | Line 559... | ||
633 | sub dl,4 |
559 | sub dl,4 |
634 | jnc @f |
560 | jnc @f |
635 | xor dl,dl |
561 | xor dl,dl |
636 | @@: rol edx,16 |
562 | @@: rol edx,16 |
637 | ret |
563 | ret |
638 | - | ||
- | 564 | ;---------------------------------------------------------------------- |
|
639 | area: |
565 | area: |
640 | .x = 345 |
566 | .x = 345 |
641 | .y = 20 |
567 | .y = 20 |
642 | .width = 206 |
568 | .width = 206 |
643 | .height = 191 |
569 | .height = 191 |
Line 664... | Line 590... | ||
664 | .height = 90 |
590 | .height = 90 |
Line 665... | Line 591... | ||
665 | 591 | ||
666 | virtual at edi+SKIN_PARAMS.dtp.data |
592 | virtual at edi+SKIN_PARAMS.dtp.data |
667 | dtp system_colors |
593 | dtp system_colors |
668 | end virtual |
- | |
- | 594 | end virtual |
|
669 | 595 | ;---------------------------------------------------------------------- |
|
670 | draw_skin: |
596 | draw_skin: |
Line 671... | Line 597... | ||
671 | mcall 13, |
597 | mcall 13, |
672 | 598 | ||
Line 914... | Line 840... | ||
914 | ret |
840 | ret |
915 | ;--------------------------------------------------------------------- |
841 | ;--------------------------------------------------------------------- |
916 | ; ********************************************* |
842 | ; ********************************************* |
917 | ; ******* WINDOW DEFINITIONS AND DRAW ******** |
843 | ; ******* WINDOW DEFINITIONS AND DRAW ******** |
918 | ; ********************************************* |
844 | ; ********************************************* |
919 | - | ||
920 | - | ||
921 | draw_window: |
845 | draw_window: |
922 | - | ||
923 | mov eax,12 ; function 12:tell os about windowdraw |
- | |
924 | mov ebx,1 ; 1, start of draw |
- | |
925 | mcall |
846 | mcall 12,1 |
926 | - | ||
927 | mov eax,48 |
- | |
928 | mov ebx,3 |
- | |
929 | mov ecx,app_colours |
847 | mcall 48,3,app_colours,10*4 |
930 | mov edx,10*4 |
- | |
931 | mcall |
848 | mcall 14 |
932 | - | ||
933 | mov eax,14 |
- | |
934 | mcall |
- | |
935 | - | ||
936 | ; DRAW WINDOW |
849 | ; DRAW WINDOW |
937 | mov eax,0 ; function 0 : define and draw window |
850 | xor eax,eax ; function 0 : define and draw window |
938 | mov ebx,110*65536+555 ; [x start] *65536 + [x size] |
851 | xor esi,esi |
939 | mov ecx,50*65536+275 ; [y start] *65536 + [y size] |
- | |
940 | mov edx,[w_work] ; color of work area RRGGBB,8->color |
852 | mov edx,[w_work] ; color of work area RRGGBB,8->color |
941 | or edx,0x14000000 |
853 | or edx,0x14000000 |
- | 854 | mcall ,<110,555>,<50,275>,,,title |
|
- | 855 | ||
- | 856 | mcall 9,procinfo,-1 |
|
- | 857 | ||
942 | mov edi,title ; WINDOW LABEL |
858 | mov eax,[procinfo+70] ;status of window |
- | 859 | test eax,100b |
|
943 | mcall |
860 | jne .end |
Line 944... | Line 861... | ||
944 | 861 | ||
945 | if lang eq ru |
862 | if lang eq ru |
946 | load_w = (5*2+6*9) |
863 | load_w = (5*2+6*9) |
947 | save_w = (5*2+6*9) |
864 | save_w = (5*2+6*9) |
Line 952... | Line 869... | ||
952 | save_w = (5*2+6*8) |
869 | save_w = (5*2+6*8) |
953 | flat_w = (5*2+6*4) |
870 | flat_w = (5*2+6*4) |
954 | apply_w = (5*2+6*7) |
871 | apply_w = (5*2+6*7) |
955 | end if |
872 | end if |
Line 956... | Line -... | ||
956 | - | ||
957 | ; mov eax,8 ; FILENAME BUTTON |
- | |
958 | ; mov ebx,5*65536+545 |
- | |
959 | ; mov ecx,212*65536+10 |
- | |
960 | ; mov edx,0x4000000B |
- | |
961 | ; mov esi,[w_grab_button] ; button color RRGGBB |
873 | |
962 | ; mcall |
- | |
963 | - | ||
964 | mov eax,8 ; LOAD BUTTON |
874 | ; LOAD BUTTON |
965 | mov ebx,15*65536+load_w |
875 | ; mov ebx,15*65536+load_w |
966 | mov ecx,(35+18*12)*65536+14 |
- | |
967 | mov edx,12 |
876 | ; mov ecx,(35+18*12)*65536+14 |
968 | mov esi,[w_work_button] |
877 | mcall 8,<15,load_w>,<35+18*12,14>,12,[w_work_button] |
969 | mcall |
- | |
970 | - | ||
971 | ; mov eax,8 ; SAVE BUTTON |
878 | ; SAVE BUTTON |
972 | add ebx,(load_w+2)*65536-load_w+save_w |
879 | add ebx,(load_w+2)*65536-load_w+save_w |
973 | inc edx |
880 | inc edx |
974 | mcall |
881 | mcall |
975 | - | ||
976 | ; mov eax,8 ; 3D |
- | |
977 | ; mov ebx,15*65536+35 |
- | |
978 | ; mov ecx,(30+18*12)*65536+14 |
882 | ; 3D |
979 | mov ebx,(340-t1.size*6-13)*65536+(5*2+6*4) |
883 | mov ebx,(340-t1.size*6-13)*65536+(5*2+6*4) |
980 | inc edx |
884 | inc edx |
981 | mcall |
885 | mcall |
982 | - | ||
983 | ; mov eax,8 ; FLAT |
886 | ; FLAT |
984 | add ebx,(5*2+6*4+2)*65536-(5*2+6*4)+flat_w |
887 | add ebx,(5*2+6*4+2)*65536-(5*2+6*4)+flat_w |
985 | inc edx |
888 | inc edx |
986 | mcall |
- | |
987 | 889 | mcall |
|
988 | ; mov eax,8 ; APPLY BUTTON |
890 | ; APPLY BUTTON |
989 | add ebx,(flat_w+6+2)*65536-flat_w+apply_w |
891 | add ebx,(flat_w+6+2)*65536-flat_w+apply_w |
990 | inc edx |
892 | inc edx |
991 | mcall |
- | |
992 | 893 | mcall |
|
993 | ; mov eax,8 ; LOAD SKIN BUTTON |
894 | ; LOAD SKIN BUTTON |
994 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+load_w |
895 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+load_w |
995 | inc edx |
896 | inc edx |
996 | mcall |
- | |
997 | 897 | mcall |
|
998 | ; mov eax,8 ; APPLY SKIN BUTTON |
898 | ; APPLY SKIN BUTTON |
999 | add ebx,(load_w+6+2)*65536-load_w+apply_w |
899 | add ebx,(load_w+6+2)*65536-load_w+apply_w |
1000 | inc edx |
900 | inc edx |
Line 1001... | Line -... | ||
1001 | mcall |
- | |
1002 | 901 | mcall |
|
1003 | mov eax, 4 |
902 | |
1004 | mov ebx, (339-t1.size*6-12)*65536+(35+18*12+4) |
- | |
1005 | mov ecx, [w_work_button_text] |
- | |
1006 | mov edx, t1 |
- | |
Line 1007... | Line 903... | ||
1007 | mov esi, t1.size |
903 | mov ebx,(339-t1.size*6-12)*65536+(35+18*12+4) |
1008 | mcall |
- | |
1009 | 904 | mcall 4,,[w_work_button_text],t1,t1.size |
|
1010 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+(35+18*12+4) |
- | |
Line 1011... | Line 905... | ||
1011 | mov edx,t2 |
905 | |
1012 | mov esi,t2.size |
- | |
1013 | mcall |
906 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+(35+18*12+4) |
1014 | - | ||
1015 | mov ebx,(15+(load_w+save_w+2-t3.size*6)/2)*65536+(35+18*12+4) |
- | |
1016 | mov edx,t3 |
- | |
1017 | mov esi,t3.size |
- | |
1018 | mcall |
- | |
1019 | - | ||
1020 | ; mov eax, 4 |
- | |
Line 1021... | Line 907... | ||
1021 | ; mov ebx, 277*65536+(30+18*12+4) |
907 | mcall ,,,t2,t2.size |
1022 | ; mov edx, t2 |
908 | |
1023 | ; mov esi, t2.size |
909 | mov ebx,(15+(load_w+save_w+2-t3.size*6)/2)*65536+(35+18*12+4) |
1024 | ; mcall |
910 | mcall ,,,t3,t3.size |
- | 911 | ||
1025 | 912 | mov eax,38 ; R G B COLOR GLIDES |
|
1026 | mov eax,38 ; R G B COLOR GLIDES |
913 | mov ebx,266*65536+285 |
1027 | mov ebx,266*65536+285 |
914 | mov ecx,30*65536+30 |
1028 | mov ecx,30*65536+30 |
915 | mov edx,0xff0000 |
1029 | mov edx,0xff0000 |
916 | ;----------------------------------- |
Line 1039... | Line 926... | ||
1039 | popa |
926 | popa |
1040 | sub edx,0x020000 |
927 | sub edx,0x020000 |
1041 | add ecx,0x00010001 |
928 | add ecx,0x00010001 |
1042 | cmp ecx,158*65536+158 |
929 | cmp ecx,158*65536+158 |
1043 | jnz .newl |
930 | jnz .newl |
1044 | - | ||
- | 931 | ;----------------------------------- |
|
1045 | call draw_color |
932 | call draw_color |
Line 1046... | Line 933... | ||
1046 | 933 | ||
1047 | mov edx,31 ; BUTTON ROW |
934 | mov edx,31 ; BUTTON ROW |
1048 | mov ebx,15*65536+200 |
935 | mov ebx,15*65536+200 |
1049 | mov ecx,30*65536+14 |
936 | mov ecx,30*65536+14 |
1050 | mov esi,[w_work_button] |
937 | mov esi,[w_work_button] |
1051 | newb: |
938 | |
- | 939 | mov eax,8 |
|
- | 940 | ;----------------------------------- |
|
1052 | mov eax,8 |
941 | .newb: |
1053 | mcall |
942 | mcall |
1054 | add ecx,18*65536 |
943 | add ecx,18*65536 |
1055 | inc edx |
944 | inc edx |
1056 | cmp edx,40 |
945 | cmp edx,40 |
1057 | jbe newb |
- | |
- | 946 | jbe .newb |
|
1058 | 947 | ;----------------------------------- |
|
1059 | mov ebx,15*65536+34 ; ROW OF TEXTS |
948 | mov ebx,15*65536+34 ; ROW OF TEXTS |
1060 | mov ecx,[w_work_button_text] |
949 | mov ecx,[w_work_button_text] |
1061 | mov edx,text |
950 | mov edx,text |
1062 | mov esi,32 |
951 | mov esi,32 |
1063 | newline: |
952 | |
- | 953 | mov eax,4 |
|
- | 954 | ;----------------------------------- |
|
1064 | mov eax,4 |
955 | .newline: |
1065 | mcall |
956 | mcall |
1066 | add ebx,18 |
957 | add ebx,18 |
1067 | add edx,32 |
958 | add edx,32 |
1068 | cmp [edx],byte 'x' |
959 | cmp [edx],byte 'x' |
1069 | jne newline |
- | |
- | 960 | jne .newline |
|
1070 | 961 | ;----------------------------------- |
|
1071 | call draw_colours |
- | |
1072 | 962 | call draw_colours |
|
1073 | call draw_PathShow |
- | |
1074 | - | ||
1075 | ; mcall 13,<5,546>,<212,11>,[w_work] |
- | |
1076 | ; mcall 13,<337,7>,<2,250>,[w_frame] |
- | |
1077 | ; shr edx,1 |
- | |
1078 | ; and edx,0x007F7F7F |
- | |
1079 | ; mcall 38,<336,336>,<20,250> |
- | |
1080 | ; add ebx,0x00080008 |
- | |
1081 | ; mcall |
- | |
1082 | ; sub ebx,0x00040004 |
- | |
1083 | ; mcall ,,<0,255> |
- | |
1084 | ; mcall ,<5,550>,<211,211> |
- | |
1085 | ; add ecx,0x000C000C |
- | |
1086 | ; mcall |
- | |
1087 | - | ||
1088 | ; call print_text |
- | |
1089 | 963 | call draw_PathShow |
|
1090 | cmp dword[not_packed_area+SKIN_HEADER.ident],'SKIN' |
964 | cmp dword[not_packed_area+SKIN_HEADER.ident],'SKIN' |
1091 | jne @f |
965 | jne @f |
1092 | call draw_skin |
966 | call draw_skin |
1093 | @@: |
967 | @@: |
1094 | - | ||
1095 | mov eax,12 ; function 12:tell os about windowdraw |
- | |
1096 | mov ebx,2 ; 2, end of draw |
968 | .end: |
1097 | mcall |
- | |
1098 | 969 | mcall 12,2 |
|
1099 | ret |
- | |
1100 | - | ||
- | 970 | ret |
|
1101 | 971 | ;--------------------------------------------------------------------- |
|
1102 | ; DATA AREA |
- | |
- | 972 | ; DATA AREA |
|
1103 | 973 | ;--------------------------------------------------------------------- |
|
1104 | lsz text,\ |
974 | lsz text,\ |
1105 | ru, ' ',\ |
975 | ru, ' ',\ |
1106 | ru, ' ',\ |
976 | ru, ' ',\ |
1107 | ru, ' ',\ |
977 | ru, ' ',\ |