Subversion Repositories Kolibri OS

Rev

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

Rev 1401 Rev 1441
Line 44... Line 44...
44
tile_drobn_icon equ dword[edi+26] ;㪠§ â¥«ì ­  ¡ãä¥à ¤«ï åà ­¥­¨ï 4-å ¤à®¡­ëå ª à⨭®ª
44
tile_drobn_icon equ dword[edi+26] ;㪠§ â¥«ì ­  ¡ãä¥à ¤«ï åà ­¥­¨ï 4-å ¤à®¡­ëå ª à⨭®ª
45
tile_delta_x	equ  byte[edi+30] ;ᤢ¨£ â ©«  ®â­®á¨â¥«ì­® ªãàá®à  ¯® ®á¨ x
45
tile_delta_x	equ  byte[edi+30] ;ᤢ¨£ â ©«  ®â­®á¨â¥«ì­® ªãàá®à  ¯® ®á¨ x
46
tile_delta_y	equ  byte[edi+31] ;ᤢ¨£ â ©«  ®â­®á¨â¥«ì­® ªãàá®à  ¯® ®á¨ y
46
tile_delta_y	equ  byte[edi+31] ;ᤢ¨£ â ©«  ®â­®á¨â¥«ì­® ªãàá®à  ¯® ®á¨ y
Line -... Line 47...
-
 
47
 
-
 
48
 
-
 
49
; *** ¯®à冷ª ¢ë§®¢  ä㭪権 ¯à¨ § £à㧪¨ â ©«®¢ ***
-
 
50
;load_tile
-
 
51
;	get_tile_path
-
 
52
;	load_new_tile (⥪ãé ï ª à⨭ª )
-
 
53
;	get_tile_path
-
 
54
;	load_new_tile (­¨¦­ïï ª à⨭ª )
-
 
55
;	get_tile_path
-
 
56
;	load_new_tile (­¨¦­ïï ª à⨭ª )
-
 
57
;	get_tile_path
-
 
58
;	load_new_tile (­¨¦­ïï ª à⨭ª )
-
 
59
;	get_tile_path
-
 
60
;	load_new_tile (­¨¦­ïï ª à⨭ª )
-
 
61
;	get_parent_tiles (横«¨ç¥áª¨© ¯à®á¬®âà த¨â¥«ì᪨å â ©«®¢)
-
 
62
;		get_tile_path
-
 
63
;		load_new_tile (¢¥àå­ïï ª à⨭ª )
47
 
64
 
48
 
65
 
49
;???
66
;???
50
align 4
67
align 4
51
CursorMoveRight: ;¯¥à¥¤¢¨£ ¥¬ ª®®à¤¨­ âã ªãàá®à  ¢¯à ¢®
68
CursorMoveRight: ;¯¥à¥¤¢¨£ ¥¬ ª®®à¤¨­ âã ªãàá®à  ¢¯à ¢®
Line 388... Line 405...
388
    @@:
405
    @@:
Line 389... Line 406...
389
 
406
 
390
    jmp .end_f
407
    jmp .end_f
Line -... Line 408...
-
 
408
  .info: ;¢ë¢®¤ ¨­ä®à¬ æ¨¨, ¯à¨ ­¥ 㤠筮¬ ®âªàë⨨ ª à⨭®ª
391
  .info: ;¢ë¢®¤ ¨­ä®à¬ æ¨¨, ¯à¨ ­¥ 㤠筮¬ ®âªàë⨨ ª à⨭®ª
409
 
392
 
410
;;;jmp .end_f ;test
393
  bt tile_drobn,SCALE_0BIT_USE
411
  bt tile_drobn,SCALE_0BIT_USE
394
  jc .end_f
412
  jc .end_f
Line 395... Line 413...
395
  bt tile_drobn,SCALE_1BIT_USE
413
  bt tile_drobn,SCALE_1BIT_USE
396
  jc .end_f
414
  jc .end_f
397
 
415
 
-
 
416
    mov ebx,edx
398
    mov ebx,edx
417
    add ebx,0x30003
399
    add ebx,0x30003
418
    mov edx,tile_rgb_icon ;¯à¨ ­¥ã¤ ç­®¬ ®âªàë⨨ ¢ tile_rgb_icon ¯ãâì ª ä ©«ã
Line 400... Line 419...
400
    mov edx,tile_rgb_icon ;¯à¨ ­¥ã¤ ç­®¬ ®âªàë⨨ ¢ tile_rgb_icon ¯ãâì ª ä ©«ã
419
;;;    mov dword[edx+RGB_TILE_SIZE_1N4],0 ;áâ ¢¨¬ ­ã«¨, ­  á«ãç © ¥á«¨ ¢ áâப¥ á ¨¬¥­¥¬ ä ©«  ¬ãá®à
401
    stdcall [str_len],tile_rgb_icon,RGB_TILE_SIZE_1N4
420
    stdcall [str_len],tile_rgb_icon,RGB_TILE_SIZE_1N4
Line 612... Line 631...
612
;***
631
;***
Line 613... Line 632...
613
 
632
 
614
  ;mov tile_drobn,0
633
  ;mov tile_drobn,0
615
  mov tile_drobn,SCALE_0_USE ;áâ ¢¨¬ ä« £ ®âªàëâ¨ï ª à⨭ª¨ ⥪ã饣® ã஢­ï
634
  mov tile_drobn,SCALE_0_USE ;áâ ¢¨¬ ä« £ ®âªàëâ¨ï ª à⨭ª¨ ⥪ã饣® ã஢­ï
616
  stdcall load_new_tile,edi
635
  stdcall load_new_tile,edi
617
  cmp tile_err_f,5
-
 
-
 
636
  cmp tile_err_f,0
618
  jne @f
637
  je @f ;¥á«¨ 㤠筮 ®âªà뫨 ⥪ã騩 ä ©« â® ®áâ «ì­ë¥ ¤¥©áâ¢¨ï ¯à®¯ã᪠¥¬
619
    mov tile_drobn,0
638
    mov tile_drobn,0
620
    mov eax,ch2 ;¯à®¢¥à塞 ®¯æ¨î '¡à âì á­¨§ã'
639
    mov eax,ch2 ;¯à®¢¥à塞 ®¯æ¨î '¡à âì á­¨§ã'
621
    bt dword[eax+32],1 ;ch_flags equ [edi+32] ;ä« £¨
640
    bt dword[eax+32],1 ;ch_flags equ [edi+32] ;ä« £¨
Line 626... Line 645...
626
    shl tile_coord_y,1
645
    shl tile_coord_y,1
627
    shl tile_coord_x,1
646
    shl tile_coord_x,1
628
    stdcall get_tile_path,edi
647
    stdcall get_tile_path,edi
629
    stdcall load_new_tile,edi
648
    stdcall load_new_tile,edi
Line 630... Line 649...
630
 
649
 
631
    cmp tile_err_f,5
650
    cmp tile_err_f,0
632
    je .no_tile_00
651
    jne .no_tile_00 ;¥á«¨ ­¥ã¤ ç­® ®âªà뫨 â® ­¥ 㬥­ìè ¥¬ ¨§®¡à ¦¥­¨¥
633
      or tile_drobn,FRACT_TILE_00
652
      or tile_drobn,FRACT_TILE_00
634
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
653
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
635
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
654
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
636
; 2 ᦠ⨥ ª à⨭ª¨ ¯® è¨à¨­¥
655
; 2 ᦠ⨥ ª à⨭ª¨ ¯® è¨à¨­¥
Line 642... Line 661...
642
    ;¥á«¨ ä ©« ­¥ ­ ©¤¥­, ¯®¯ ¤ ¥¬ á
661
    ;¥á«¨ ä ©« ­¥ ­ ©¤¥­, ¯®¯ ¤ ¥¬ á
643
    inc tile_coord_y
662
    inc tile_coord_y
644
    stdcall get_tile_path,edi
663
    stdcall get_tile_path,edi
645
    stdcall load_new_tile,edi
664
    stdcall load_new_tile,edi
Line 646... Line 665...
646
 
665
 
647
    cmp tile_err_f,5
666
    cmp tile_err_f,0
648
    je .no_tile_01
667
    jne .no_tile_01 ;¥á«¨ ­¥ã¤ ç­® ®âªà뫨 â® ­¥ 㬥­ìè ¥¬ ¨§®¡à ¦¥­¨¥
649
;      mov byte[map.drobn],0
668
;      mov byte[map.drobn],0
650
      or tile_drobn,FRACT_TILE_01
669
      or tile_drobn,FRACT_TILE_01
651
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
670
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
652
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
671
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
Line 662... Line 681...
662
    dec tile_coord_y
681
    dec tile_coord_y
663
    inc tile_coord_x
682
    inc tile_coord_x
664
    stdcall get_tile_path,edi
683
    stdcall get_tile_path,edi
665
    stdcall load_new_tile,edi
684
    stdcall load_new_tile,edi
Line 666... Line 685...
666
 
685
 
667
    cmp tile_err_f,5
686
    cmp tile_err_f,0
668
    je .no_tile_10
687
    jne .no_tile_10 ;¥á«¨ ­¥ã¤ ç­® ®âªà뫨 â® ­¥ 㬥­ìè ¥¬ ¨§®¡à ¦¥­¨¥
669
;      mov byte[map.drobn],0
688
;      mov byte[map.drobn],0
670
      or tile_drobn,FRACT_TILE_10
689
      or tile_drobn,FRACT_TILE_10
671
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
690
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
672
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
691
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
Line 681... Line 700...
681
    ;¥á«¨ ä ©« ­¥ ­ ©¤¥­, ¯®¯ ¤ ¥¬ á
700
    ;¥á«¨ ä ©« ­¥ ­ ©¤¥­, ¯®¯ ¤ ¥¬ á
682
    inc tile_coord_y
701
    inc tile_coord_y
683
    stdcall get_tile_path,edi
702
    stdcall get_tile_path,edi
684
    stdcall load_new_tile,edi
703
    stdcall load_new_tile,edi
Line 685... Line 704...
685
 
704
 
686
    cmp tile_err_f,5
705
    cmp tile_err_f,0
687
    je .no_tile_11
706
    jne .no_tile_11 ;¥á«¨ ­¥ã¤ ç­® ®âªà뫨 â® ­¥ 㬥­ìè ¥¬ ¨§®¡à ¦¥­¨¥
688
;      mov byte[map.drobn],0
707
;      mov byte[map.drobn],0
689
      or tile_drobn,FRACT_TILE_11
708
      or tile_drobn,FRACT_TILE_11
690
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
709
; 1 ᦠ⨥ ª à⨭ª¨ ¯® ¢ëá®â¥
691
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
710
      stdcall img_rgb_hdiv2, tile_rgb_icon, TILE_LEN*TILE_LEN, TILE_LEN
Line 742... Line 761...
742
  shr tile_coord_x,1
761
  shr tile_coord_x,1
743
  inc ecx
762
  inc ecx
Line 744... Line 763...
744
 
763
 
745
  stdcall get_tile_path,edi ;¡¥à¥¬ ¯ãâì ª â ©«ã
764
  stdcall get_tile_path,edi ;¡¥à¥¬ ¯ãâì ª â ©«ã
746
  stdcall load_new_tile,edi
765
  stdcall load_new_tile,edi
747
  cmp tile_err_f,5
-
 
-
 
766
  cmp tile_err_f,0
748
  je @f
767
  jne @f ;¥á«¨ ­¥ã¤ ç­® ®âªà뫨 â® ­¥ à áâ¢ ¥¬ ¨§®¡à ¦¥­¨¥
749
    or tile_drobn,SCALE_1_USE
768
    or tile_drobn,SCALE_1_USE
750
    mov ebx,ecx
769
    mov ebx,ecx
751
  .zoom_cycle:
770
  .zoom_cycle:
752
    xor eax,eax
771
    xor eax,eax
Line 789... Line 808...
789
  mov [run_file_70.name], file_name
808
  mov [run_file_70.name], file_name
790
  mov ebx,run_file_70
809
  mov ebx,run_file_70
791
  int 0x40
810
  int 0x40
792
  mov edi,[tile]
811
  mov edi,[tile]
793
  mov tile_err_f,al
812
  mov tile_err_f,al
794
  cmp ebx,0xffffffff
813
;  cmp ebx,0xffffffff
-
 
814
;  je .no_load
-
 
815
  cmp eax,0
795
  je .no_load
816
  jne .no_load
Line 796... Line 817...
796
 
817
 
797
  stdcall dword[img_decode], dword[bmp_icon],ebx,0
818
  stdcall dword[img_decode], dword[bmp_icon],ebx,0
798
  mov dword[data_icon],eax
819
  mov dword[data_icon],eax
799
  stdcall dword[img_to_rgb2], dword[data_icon],tile_rgb_icon
820
  stdcall dword[img_to_rgb2], dword[data_icon],tile_rgb_icon
Line 803... Line 824...
803
 
824
 
804
;  mov edi,[tile]
825
;  mov edi,[tile]
805
  mov al,byte[map.zoom]
826
  mov al,byte[map.zoom]
806
  cmp tile_zoom,al
827
  cmp tile_zoom,al
807
  jne @f
828
  jne @f
808
    stdcall mem_copy, file_name,tile_rgb_icon,150
829
    stdcall mem_copy, file_name,tile_rgb_icon,250
809
  @@:
830
  @@:
810
  popad
831
  popad
811
  ret
832
  ret