Subversion Repositories Kolibri OS

Rev

Rev 9541 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. draw_result:
  2.     ;.................................................................................................
  3.     ; ®«ìè ï à ¬ª  ¢ë¢®¤  १ã«ìâ â 
  4.     ;.................................................................................................
  5.     mcall   SF_DRAW_RECT, <4,110>,   <9, 197>, [sc.work_graph]
  6.     mcall               , <5,110-2>, <10,195>, [sc.work_light]
  7.  
  8.     ;.................................................................................................
  9.     ; Žâà¨á®¢ª  १ã«ìâ â  æ¢¥â  ¢ hex color2
  10.     ;.................................................................................................
  11.     CURCOLX = 11
  12.     CURCOLY = 17
  13.     mcall   , <CURCOLX+5,15>, <CURCOLY+4,15>, 0x222222
  14.     ; color 2 - draw color
  15.     mcall   , <CURCOLX+6,13>, <CURCOLY+5,13>, [color2]
  16.     ; color 1 - draw fringle
  17.     mcall   , <CURCOLX+0,15>, <CURCOLY+0,15>, 0x222222
  18.     ; color 2 - draw color
  19.     mcall   , <CURCOLX+1,13>, <CURCOLY+1,13>, [color]
  20.  
  21.     ; value - draw fringle
  22.     mcall   , <CURCOLX+23,72>, <CURCOLY+0,19>, 0x222222
  23.     ; value - draw background
  24.     mcall   , <CURCOLX+24,70>, <CURCOLY+1,17>, 0xFFFFFF
  25.  
  26.     ; ”ã­ªæ¨ï 47 - ¢ë¢®¤ ç¨á«  ¢ ®ª­®
  27.     ; ebx - ¯ à ¬¥âàë ¯à¥®¡à §®¢ ­¨ï ç¨á«  ¢ ⥪áâ (HEX)
  28.     mcall   SF_DRAW_NUMBER, 256+8 shl 16, [color], <CURCOLX+27,CURCOLY+2>, 0x10000000, 0
  29.  
  30.     ; äã­ªæ¨ï 4: ­ ¯¨á âì ⥪áâ ¢ ®ª­¥
  31.     ; edx - à¨á㥬 '#'
  32.     ; esi - ¤«¨­  ⥪áâ  ¢ ¡ ©â å
  33.     ; mcall   SF_DRAW_TEXT, <38,20>, 0, hex, 1
  34.  
  35.     ;.................................................................................................
  36.     ; Žâà¨á®¢ª  r g b §­ ç¥­¨©
  37.     ;.................................................................................................
  38.     call    get_spectr
  39.  
  40.     movzx   eax,[cred]                    ; ªà á­ë©
  41.     mov     ebx,12*65536+190               ; [x ­ ç «ì­ë©] *65536 + [y ­ ç «ì­ë©]
  42.     call    draw_value                    ; ¢ë¢®¤¨¬ १ã«ìâ â
  43.  
  44.     movzx   eax,[cgreen]                  ; §¥«¥­ë©
  45.     mov     ebx,37*65536+190              ; [x ­ ç «ì­ë©] *65536 + [y ­ ç «ì­ë©]
  46.     call    draw_value                    ; ¢ë¢®¤¨¬ १ã«ìâ â
  47.  
  48.     movzx   eax,[cblue]                   ; ᨭ¨©
  49.     mov     ebx,62*65536+190              ; [x ­ ç «ì­ë©] *65536 + [y ­ ç «ì­ë©]
  50.     call    draw_value                    ; ¢ë¢®¤¨¬ १ã«ìâ â
  51.  
  52.     movzx   eax,[calpha]                  ;  «ìä 
  53.     mov     ebx,87*65536+190              ; [x ­ ç «ì­ë©] *65536 + [y ­ ç «ì­ë©]
  54.     call    draw_value                    ; ¢ë¢®¤¨¬ १ã«ìâ â
  55.  
  56.     ;.................................................................................................
  57.     ; ‚뢮¤¨¬ ¡ãª¢ë r g b a
  58.     ;.................................................................................................
  59.     mov     eax,SF_DRAW_TEXT  ; 4 - ¢ë¢¥á⨠áâபã ⥪áâ  ¢ ®ª­®
  60.     mov     ebx,18 shl 16+DRAWY+32              ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
  61.     mov     ecx, 0x00000000               ; 0xX0RRGGBB (RR, GG, BB § ¤ îâ 梥â ⥪áâ )
  62.     add     ecx, [sc.work_text]
  63.     mov     edx,cname                     ; 㪠§ â¥«ì ­  ­ ç «® áâப¨
  64.     mov     esi,1                         ; ¢ë¢®¤¨âì esi ᨬ¢®«®¢
  65.     newline:                              ; 横«
  66.       int     0x40                        ; à¥à뢠­¨¥
  67.       add     ebx,25 shl 16               ; „®¡ ¢«ï¥¬
  68.       inc     edx                         ; „®¡ ¢«ï¥¬
  69.       cmp     [edx],byte 'x'              ; ‘à ¢­¥­¨¥ á ¡ ©â®¬ å
  70.     jne    newline                        ; …᫨ ­¥ ­ã«ì ¨«¨ ­¥ à ¢­®
  71.  
  72.     ;.................................................................................................
  73.     ; Žâà¨á®¢ª  á« ©¤¥à®¢
  74.     ;.................................................................................................
  75.     ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
  76.  
  77.      mov ebx, 18*65536+18
  78.      mov ecx, 55*65536+55
  79.  
  80.      push dword 0xFC5663
  81.      push dword 0xFA0919
  82.      push dword 0xE20516
  83.      push dword 0xFA0919
  84.  
  85.      call Draw_base
  86.  
  87.      add ebx, 20*65536+20
  88.  
  89.      push dword 0x33F742
  90.      push dword 0x0ADD18
  91.      push dword 0x08CE19
  92.      push dword 0x08CE19
  93.  
  94.      call Draw_base
  95.  
  96.      add ebx, 20*65536+20
  97.  
  98.      push dword 0x88A6FF
  99.      push dword 0x3366FF
  100.      push dword 0x114DFF
  101.      push dword 0x114DFF
  102.  
  103.      call Draw_base
  104.  
  105.      add ebx, 20*65536+20
  106.  
  107.      push dword 0xDADADA
  108.      push dword 0xB9B9B9
  109.      push dword 0xA9A9A9
  110.      push dword 0xA9A9A9
  111.  
  112.      call Draw_base
  113.  
  114.     ;.................................................................................................
  115.     ; Žâà¨á®¢ª  ¯®«§ã­ª®¢
  116.     ;.................................................................................................
  117.      mov ebx, 13*65536+13
  118.      mov ecx, (55-3)*65536+(55-3)
  119.      movzx   eax,[cred]
  120.      call draw_slider
  121.  
  122.      mov ebx, (13+25*1)*65536+(13+25*1)
  123.      mov ecx, (55-3)*65536+(55-3)
  124.      movzx   eax,[cgreen]
  125.      call draw_slider
  126.  
  127.      mov ebx, (13+25*2)*65536+(13+25*2)
  128.      mov ecx, (55-3)*65536+(55-3)
  129.      movzx   eax,[cblue]
  130.      call draw_slider
  131.  
  132.      mov ebx, (13+25*3)*65536+(13+25*3)
  133.      mov ecx, (55-3)*65536+(55-3)
  134.      movzx   eax,[calpha]
  135.      call draw_slider
  136.  
  137.  
  138.     ret                                   ; ‚®§¢à é ¥¬ ã¯à ¢«¥­¨¥
  139. ;end_draw_result
  140.  
  141. Draw_base:
  142. push ebp
  143. mov ebp, esp
  144.  
  145. add ebx, 1*65536+4
  146. mcall SF_DRAW_LINE, , , 0
  147. add ecx, 128*65536+128
  148. int     0x40
  149.  
  150. sub ebx, 1*65536+4
  151. sub ecx, (128-1)*65536+1
  152. int     0x40
  153.  
  154. add ebx, 1*65536+1
  155. mov edx, dword [ebp+20]
  156. int     0x40
  157.  
  158. add ebx, 1*65536+1
  159. mov edx, dword [ebp+16]
  160. int     0x40
  161.  
  162. add ebx, 1*65536+1
  163. mov edx, dword [ebp+12]
  164. int     0x40
  165.  
  166. add ebx, 1*65536+1
  167. mov edx, dword [ebp+8]
  168. int     0x40
  169.  
  170. add ebx, 1*65536+1
  171. mov edx, 0
  172. int     0x40
  173.  
  174. sub ecx, 1*65536+(128-1)
  175.  
  176. pop ebp
  177. ret 4*4
  178.  
  179.  
  180.  
  181. draw_slider:
  182. shr eax, 1
  183. mov edx, eax
  184. shl edx, 16
  185. or eax, edx
  186. sub ecx, eax
  187. add ecx, 127*65536+127
  188.  
  189. add ecx, 1*65536+5
  190. mcall SF_DRAW_LINE, , , 0
  191. add ebx, 15*65536+15
  192. int     0x40
  193.  
  194. sub ebx, 14*65536+1
  195. sub ecx, 1*65536+5
  196. int     0x40
  197.  
  198. mov edx, 0xFFFFFF
  199. add ecx, 1*65536+1
  200. int     0x40
  201.  
  202. mov edx, 0xE1E1E1
  203. add ecx, 1*65536+1
  204. int     0x40
  205. add ecx, 1*65536+1
  206. int     0x40
  207. add ecx, 1*65536+1
  208. int     0x40
  209.  
  210. mov edx, 0xB9B9B9
  211. add ecx, 1*65536+1
  212. int     0x40
  213.  
  214. mov edx, 0
  215. add ecx, 1*65536+1
  216. int     0x40
  217.  
  218. ret
  219.  
  220. ;end_slider
  221.