Subversion Repositories Kolibri OS

Rev

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

Rev 4962 Rev 7421
Line 63... Line 63...
63
;#___________________________________________________________________________________________________
63
;#___________________________________________________________________________________________________
64
;****************************************************************************************************|
64
;****************************************************************************************************|
65
; ‡€ƒŽ‹Ž‚ŽŠ ˆ‘Ž‹Ÿ…ŒŽƒŽ ”€‰‹€ ˆ‹Ž†…ˆŸ „‹Ÿ ŠŽ‹ˆˆ Ž‘                                             |
65
; ‡€ƒŽ‹Ž‚ŽŠ ˆ‘Ž‹Ÿ…ŒŽƒŽ ”€‰‹€ ˆ‹Ž†…ˆŸ „‹Ÿ ŠŽ‹ˆˆ Ž‘                                             |
66
;----------------------------------------------------------------------------------------------------/
66
;----------------------------------------------------------------------------------------------------/
67
  use32
67
  use32
68
  org	 0x0
68
  org	 0
69
  db	 'MENUET01'
69
  db	 'MENUET01'
70
  dd	 0x01
-
 
71
  dd	 START
-
 
72
  dd	 I_END
-
 
73
  dd	 I_MEM
-
 
74
  dd	 I_MEM
-
 
75
  dd	 params
70
  dd	 1,START,I_END,I_MEM,stacktop,params,sys_path
76
  dd	 0x0
-
 
Line 77... Line 71...
77
 
71
 
78
  include '../../../macros.inc'
72
  include '../../../macros.inc'
-
 
73
  include '../../../proc32.inc'
-
 
74
  include '../../../KOSfuncs.inc'
Line 79... Line 75...
79
  include '../../../proc32.inc'
75
  include '../../../dll.inc'
80
 
76
 
81
  WIN_W  equ 295	    ; è¨à¨­  ®ª­ 
77
  WIN_W  equ 295	    ; è¨à¨­  ®ª­ 
82
  WIN_H  equ 195	    ; ¢ëá®â  ®ª­ 
78
  WIN_H  equ 195	    ; ¢ëá®â  ®ª­ 
Line 83... Line 79...
83
  WIN_X  equ 250	    ; ª®®à¤¨­ â  å ®ª­ 
79
  WIN_X  equ 250	    ; ª®®à¤¨­ â  å ®ª­ 
84
  WIN_Y  equ 190	    ; ª®®à¤¨­ â  ã ®ª­ 
80
  WIN_Y  equ 190	    ; ª®®à¤¨­ â  ã ®ª­ 
Line 85... Line 81...
85
 
81
 
86
panel:
82
panel:
-
 
83
  file "panel.raw"
-
 
84
 
-
 
85
START:
87
  file "panel.raw"
86
    mcall   SF_SYS_MISC,SSF_HEAP_INIT ; ¨­¨æ¨ «¨§ æ¨ï ªãç¨
88
 
87
    stdcall dll.Load, @IMPORT
Line 89... Line 88...
89
START:
88
    or      eax,eax
90
    mcall   68,11			  ; ¨­¨æ¨ «¨§ æ¨ï ªãç¨
89
    jnz     bexit
91
    mcall   40,0x27			  ; ãáâ ­ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩
90
    mcall   SF_SET_EVENTS_MASK,0x27   ; ãáâ ­ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩
92
    include 'params_init.inc'		  ; ®¡à ¡®âª  ¯ à ¬¥â஢ ª®¬ ­¤­®© áâப¨
91
    include 'params_init.inc'		  ; ®¡à ¡®âª  ¯ à ¬¥â஢ ª®¬ ­¤­®© áâப¨
93
 
92
 
94
;#___________________________________________________________________________________________________
93
;#___________________________________________________________________________________________________
95
;****************************************************************************************************|
94
;****************************************************************************************************|
96
; Ž‘Ž‚Ž‰ –ˆŠ‹ Žƒ€ŒŒ› - Ž€Ž’Š€ ‘Ž›’ˆ‰                                                        |
95
; Ž‘Ž‚Ž‰ –ˆŠ‹ Žƒ€ŒŒ› - Ž€Ž’Š€ ‘Ž›’ˆ‰                                                        |
97
;----------------------------------------------------------------------------------------------------/
96
;----------------------------------------------------------------------------------------------------/
98
red:
97
red:
99
    call draw_main			  ; ¢ë§ë¢ ¥¬ ¯¥à¥à¨á®¢ªã ®ª­  ¯à¨«®¦¥­¨ï
98
    call draw_main			  ; ¢ë§ë¢ ¥¬ ¯¥à¥à¨á®¢ªã ®ª­  ¯à¨«®¦¥­¨ï
100
still:
99
still:
101
    mcall   10				  ; äã­ªæ¨ï 10 - ¦¤ âì ᮡëâ¨ï
100
    mcall   SF_WAIT_EVENT	  ; äã­ªæ¨ï 10 - ¦¤ âì ᮡëâ¨ï
Line 109... Line 108...
109
    je	    mouse			  ; ¥á«¨ ¤  - ­  button
108
    je	    mouse			  ; ¥á«¨ ¤  - ­  button
110
    jmp     still			  ; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ­ ç «® 横« 
109
    jmp     still			  ; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ­ ç «® 横« 
111
;end_still
110
;end_still
Line 112... Line 111...
112
 
111
 
113
key:					  ; ­ ¦ â  ª« ¢¨è  ­  ª« ¢¨ âãà¥
112
key:					  ; ­ ¦ â  ª« ¢¨è  ­  ª« ¢¨ âãà¥
114
    mcall   2				  ; äã­ªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®«  (¢ ah) (âãâ ¢ ¯à¨­æ¨¯¥ ­¥ ­ã¦­ )
113
    mcall   SF_GET_KEY	  ; äã­ªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®«  (¢ ah) (âãâ ¢ ¯à¨­æ¨¯¥ ­¥ ­ã¦­ )
115
    jmp     still			  ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
114
    jmp     still			  ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
Line 116... Line 115...
116
;end_key
115
;end_key
117
 
116
 
118
mouse:
117
mouse:
119
    cmp     [renmode],2
118
    cmp     [renmode],2
120
    jne     left
119
    jne     left
121
    call    cyrcle_draw
120
    call    cyrcle_draw
122
    jmp     center
121
    jmp     center
123
  left:
122
  left:
124
    mcall   37,2
123
    mcall   SF_MOUSE_GET,SSF_BUTTON
125
    cmp     al,1b
124
    cmp     al,1b
126
    jne     right
125
    jne     right
127
    mov     [mouse_f],1
126
    mov     [mouse_f],1
128
    jmp     still
127
    jmp     still
129
  right:
128
  right:
130
    cmp     al,10b
129
    cmp     al,10b
131
    jne     still
130
    jne     still
132
    mov     [mouse_f],2
131
    mov     [mouse_f],2
133
    jmp     still
132
    jmp     still
134
  center:
133
  center:
135
    mcall   37,2
134
    mcall   SF_MOUSE_GET,SSF_BUTTON
136
    cmp     al,100b
135
    cmp     al,100b
137
    jne     still
136
    jne     still
138
    mov     [mouse_f],3
137
    mov     [mouse_f],3
139
    mov     [color],edx
138
    mov     [color],edx
140
    call    draw_result
139
    call    draw_result
Line 141... Line 140...
141
    jmp     still			  ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
140
    jmp     still			  ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
142
;end_mouse
141
;end_mouse
143
 
142
 
144
button:
143
button:
145
    mcall   17				  ; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
144
    mcall   SF_GET_BUTTON	  ; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
146
    cmp     ah, 1			  ; ¥á«¨ ­ ¦ â  ª­®¯ª  á ­®¬¥à®¬ 1,
145
    cmp     ah, 1			  ; ¥á«¨ ­ ¦ â  ª­®¯ª  á ­®¬¥à®¬ 1,
147
    jz	    bexit			  ; ¢ë室¨¬
146
    jz	    bexit			  ; ¢ë室¨¬
Line 220... Line 219...
220
    jne     still
219
    jne     still
221
    mov     [calpha],cl
220
    mov     [calpha],cl
222
    call    set_spectr
221
    call    set_spectr
223
    jmp     still			  ; “室¨¬ ­  ®¦¨¤ ­¨¥ ¤à㣮£® ᮡëâ¨ï
222
    jmp     still			  ; “室¨¬ ­  ®¦¨¤ ­¨¥ ¤à㣮£® ᮡëâ¨ï
224
  bexit:
223
  bexit:
225
    mcall -1				  ; ¨­ ç¥ ª®­¥æ ¯à®£à ¬¬ë
224
    mcall SF_TERMINATE_PROCESS ; ¨­ ç¥ ª®­¥æ ¯à®£à ¬¬ë
226
;end_button
225
;end_button
Line 227... Line 226...
227
 
226
 
228
;#___________________________________________________________________________________________________
227
;#___________________________________________________________________________________________________
229
;****************************************************************************************************|
228
;****************************************************************************************************|
230
; ƒ‹€‚›‰ ŒŽ„“‹œ Ž’ˆ‘Ž‚Šˆ ŽŠ€ ˆ ‹…Œ…’Ž‚ ˆ‹Ž†…ˆŸ                                               |
229
; ƒ‹€‚›‰ ŒŽ„“‹œ Ž’ˆ‘Ž‚Šˆ ŽŠ€ ˆ ‹…Œ…’Ž‚ ˆ‹Ž†…ˆŸ                                               |
231
;----------------------------------------------------------------------------------------------------/
230
;----------------------------------------------------------------------------------------------------/
232
draw_main:
231
draw_main:
233
    mov     eax,12			  ; äã­ªæ¨ï 12: ®§­ ç ¥â, çâ® ¡ã¤¥â à¨á®¢ âìáï ®ª­®
-
 
234
    mov     ebx,1			  ; 1,­ ç «® à¨á®¢ ­¨ï
232
    ; äã­ªæ¨ï 12: ®§­ ç ¥â, çâ® ¡ã¤¥â à¨á®¢ âìáï ®ª­®
Line 235... Line 233...
235
    int     0x40			  ; à¥à뢠­¨¥
233
    mcall   SF_REDRAW,SSF_BEGIN_DRAW 
236
 
-
 
237
    mov     eax,48			  ; ”ã­ªæ¨ï 48 - á⨫¨ ®â®¡à ¦¥­¨ï ®ª®­
-
 
238
    mov     ebx,3			  ; ®¤äã­ªæ¨ï 3 - ¯®«ãç¨âì áâ ­¤ àâ­ë¥ æ¢¥â  ®ª®­.
-
 
239
    mov     ecx,sc			  ; “ª § â¥«ì ­  ¡ãä¥à à §¬¥à®¬ edx ¡ ©â, ¯®¤ áâàãªâãàã
234
 
Line 240... Line 235...
240
    mov     edx,sizeof.system_colors	  ;  §¬¥à â ¡«¨æë 梥⮢ (¤®«¦¥­ ¡ëâì 40 ¡ ©â)
235
    ; ”ã­ªæ¨ï 48 - á⨫¨ ®â®¡à ¦¥­¨ï ®ª®­
241
    int     0x40			  ; à¥à뢠­¨¥
-
 
242
 
236
    mcall   SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors
243
    mov     eax,48			  ; ”ã­ªæ¨ï 48 - á⨫¨ ®â®¡à ¦¥­¨ï ®ª®­.
237
 
Line 244... Line 238...
244
    mov     ebx,4			  ; ®¤äã­ªæ¨ï 4 - ¢®§¢à é ¥â eax = ¢ëá®â  ᪨­ .
238
    ; ”ã­ªæ¨ï 48 - á⨫¨ ®â®¡à ¦¥­¨ï ®ª®­
245
    int     0x40			  ; à¥à뢠­¨¥
239
    mcall   SF_STYLE_SETTINGS,SSF_GET_SKIN_HEIGHT
246
    mov     ecx,eax			  ; ‡ ¯®¬¨­ ¥¬ ¢ëá®âã ᪨­ 
240
    mov     ecx,eax			  ; ‡ ¯®¬¨­ ¥¬ ¢ëá®âã ᪨­ 
Line 269... Line 263...
269
 
263
 
270
 
264
 
Line 271... Line 265...
271
    call    draw_palitra		  ; ˆ‘“…Œ €‹ˆ’“
265
    call    draw_palitra		  ; ˆ‘“…Œ €‹ˆ’“
272
    call    draw_result 		  ; ˆ‘“…Œ …‡“‹œ’€’
-
 
273
 
-
 
274
    mov     eax,8			  ; ”ã­ªæ¨ï 8 - ®¯à¥¤¥«¨âì/㤠«¨âì ª­®¯ªã
266
    call    draw_result 		  ; ˆ‘“…Œ …‡“‹œ’€’
275
    mov     ebx,110 shl 16+147		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® å [ª-â  x]*65536 + [à §¬¥à]
-
 
Line 276... Line -...
276
    mov     ecx,9 shl 16+147		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
-
 
277
    mov     edx,0x60000007		  ;  ç «ì­®¥ ID ª­®¯®ª - 0xXYnnnnnn
267
 
278
    int     0x40
-
 
279
 
268
    ; ”ã­ªæ¨ï 8 - ®¯à¥¤¥«¨âì/㤠«¨âì ª­®¯ªã
280
    mov     ebx,13 shl 16+12		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® å [ª-â  x]*65536 + [à §¬¥à]
269
    mcall   SF_DEFINE_BUTTON, (110 shl 16)+147, (9 shl 16)+147, 0x60000007
281
    mov     edx,0x60000008		  ; ID = 8
270
 
282
    mov     ecx,51 shl 16+85		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
271
    inc     edx
283
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ red
272
    mcall   , (13 shl 16)+12, (51 shl 16)+85 ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ red
284
    add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
273
    add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
285
    inc     edx 			  ; ID = 9
274
    inc     edx 			  ; ID = 9
286
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ green
275
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ green
287
    add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
276
    add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
288
    inc     edx 			  ; ID = 10
277
    inc     edx 			  ; ID = 10
Line 289... Line 278...
289
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ blue
278
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ blue
290
    add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
-
 
291
    inc     edx 			  ; ID = 11
-
 
292
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ alpha
279
    add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
293
 
-
 
Line 294... Line 280...
294
    mov     eax,8			  ; ”ã­ªæ¨ï 8 - ®¯à¥¤¥«¨âì/㤠«¨âì ª­®¯ªã (‘Œ…€ –‚…’€)
280
    inc     edx 			  ; ID = 11
295
    mov     ebx,11 shl 16+20		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® å [ª-â  x]*65536 + [à §¬¥à]
281
    int     0x40			  ; ¨á㥬 ­¥¢¨¤¨¬ãî ª­®¯ªã ¯®¤ á« ©¤¥à®¬ alpha
Line 296... Line 282...
296
    mov     ecx,12 shl 16+20		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
282
 
297
    mov     edx,0x6000000D		  ; ID = 13
-
 
298
    int     0x40
283
    ; ”ã­ªæ¨ï 8 - ®¯à¥¤¥«¨âì/㤠«¨âì ª­®¯ªã (‘Œ…€ –‚…’€)
299
 
284
    mcall   , (11 shl 16)+20, (12 shl 16)+20, 0x6000000D
Line 300... Line 285...
300
    call    draw_bottom_panel
285
 
301
    call    draw_left_panel
286
    call    draw_bottom_panel
302
 
287
    call    draw_left_panel
Line 312... Line 297...
312
 
297
 
313
 
298
 
314
    ;------------------------------------------------------------------------------------------------+
299
    ;------------------------------------------------------------------------------------------------+
315
    draw_left_panel:			  ; Žâà¨á®¢ª  ¡®ª®¢®© ¯ ­¥«¨
300
    draw_left_panel:			  ; Žâà¨á®¢ª  ¡®ª®¢®© ¯ ­¥«¨
316
    ;.................................................................................................
301
    ;.................................................................................................
317
    mov     eax,8			  ; button_next_colorsheme
-
 
318
    mov     ebx,266 shl 16+16		  ; [x] + [size]
-
 
319
    mov     ecx,9 shl 16+16		  ; [y] + [size]
-
 
320
    mov     edx,0x6000000C		  ; ID = 12
-
 
321
    mov     esi,[sc.work_button]	  ; RGB
302
    ; button_next_colorsheme
322
    int     0x40			  ; call
303
    mcall   SF_DEFINE_BUTTON, (266 shl 16)+16, (9 shl 16)+16, 0x6000000C, [sc.work_button]
323
    ; circle diagram
304
    ; circle diagram
324
    add     ecx,19 shl 16		  ; move rect
305
    add     ecx,19 shl 16		  ; move rect
Line 325... Line 306...
325
    mov     edx,0x6000000F		  ; ID = 15
306
    mov     edx,0x6000000F		  ; ID = 15
326
    int     0x40			  ; call
-
 
327
 
-
 
328
    mov     eax,7			  ; 7 - ­®¬¥à ä㭪樨
-
 
329
    mov     ebx,panel			  ; 㪠§ â¥«ì ­  ¨§®¡à ¦¥­¨¥ ¢ ä®à¬ â¥ BBGGRRBBGGRR...
-
 
Line 330... Line 307...
330
    mov     ecx, 16 shl 16 + 149	  ; [à §¬¥à ¯® ®á¨ x]*65536 + [à §¬¥à ¯® ®á¨ y]
307
    int     0x40			  ; call
331
    mov     edx,266 shl 16 +   9	    ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
308
 
332
    int     0x40
309
    mcall   SF_PUT_IMAGE, panel, (16 shl 16)+149, (266 shl 16)+9
333
 
310
 
Line 371... Line 348...
371
 
348
 
372
 
349
 
373
    ;------------------------------------------------------------------------------------------------+
350
    ;------------------------------------------------------------------------------------------------+
374
    draw_bottom_panel:			  ; Žâà¨á®¢ª  ­¨¦­¥© ¯ ­¥«¨
-
 
375
    ;.................................................................................................
351
    draw_bottom_panel:			  ; Žâà¨á®¢ª  ­¨¦­¥© ¯ ­¥«¨
376
    mov     eax,8			  ; draw button
-
 
377
    mov     ebx,(92) shl 16+90	      ; [x] + [size]
-
 
378
    mov     ecx,169 shl 16+16		  ; [y] + [size]
-
 
379
    mov     edx,14			  ; ID = 14
-
 
Line 380... Line 352...
380
    mov     esi,[sc.work_button]	  ; RGB
352
    ;.................................................................................................
381
    int     0x40			  ; call
353
    mcall   SF_DEFINE_BUTTON, (92 shl 16)+90, (169 shl 16)+16, 14, [sc.work_button]
382
 
354
 
Line 383... Line 355...
383
    add     ebx, 100 shl 16
355
    add     ebx, 100 shl 16
384
    add     edx, 2
-
 
385
    int     0x40
356
    add     edx, 2
386
 
357
    int     0x40
387
    mov     eax,4			  ; Write string
358
 
388
    mov     ebx,(113 - 104) shl 16+174	  ; [x] + [y]
-
 
Line 389... Line 359...
389
    mov     ecx,[sc.work_text]		  ; RGB
359
    ; Write string
390
    or	    ecx, 1 shl 31
360
    mov     ecx,[sc.work_text]		  ; RGB
Line 391... Line 361...
391
    mov     edx,bground 		  ; string pointer
361
    or	    ecx, 1 shl 31
Line 400... Line 370...
400
 
370
 
401
    add     ebx, 107 shl 16
371
    add     ebx, 107 shl 16
402
    mov     edx, bground2
372
    mov     edx, bground2
Line 403... Line -...
403
    int     0x40
-
 
404
 
373
    int     0x40
405
    mov     eax,38			  ; draw line
-
 
406
    mov     ebx,4 shl 16+282		  ; [start x] + [end x]
-
 
407
    mov     ecx,163 shl 16+163		  ; [start y] + [end y]
-
 
408
    mov     edx,0x00666666		  ; RGB
374
 
409
    int     0x40			  ; call
375
    mcall SF_DRAW_LINE, 4 shl 16+282, 163 shl 16+163, 0x00666666
Line 410... Line 376...
410
    ret 				  ; return
376
    ret 				  ; return
411
    ;.................................................................................................
377
    ;.................................................................................................
412
 
378
 
413
mouse_global:
379
mouse_global:
414
    ;.................................................................................................
380
    ;.................................................................................................
415
    ; ®«ãç ¥¬ ª®®à¤¨­ âë ¬ëè¨
-
 
416
    ;.................................................................................................
381
    ; ®«ãç ¥¬ ª®®à¤¨­ âë ¬ëè¨
417
    mov     eax,37			  ; ”ã­ªæ¨ï 37 - à ¡®â  á ¬ëèìî
382
    ;.................................................................................................
418
    mov     ebx,0			  ; ­ ¬ ­ã¦­ë £«®¡ «ì­ë¥ ª®®à¤¨­ âë
383
    mcall   SF_MOUSE_GET,SSF_SCREEN_POSITION
419
    int     0x40			  ; eax = x*65536 + y, (x,y)=ª®®à¤¨­ âë ªãàá®à  ¬ëè¨
384
    ; eax = x*65536 + y, (x,y)=ª®®à¤¨­ âë ªãàá®à  ¬ëè¨
420
    mov     ecx,eax			  ;
385
    mov     ecx,eax			  ;
421
    shr     ecx,16			  ; ecx = x+1
386
    shr     ecx,16			  ; ecx = x+1
Line 429... Line 394...
429
 
394
 
430
mouse_local:
395
mouse_local:
431
    ;.................................................................................................
396
    ;.................................................................................................
432
    ; ®«ãç ¥¬ ª®®à¤¨­ âë ¬ëè¨ ®â­®á¨â¥«ì­® ®ª­ 
397
    ; ®«ãç ¥¬ ª®®à¤¨­ âë ¬ëè¨ ®â­®á¨â¥«ì­® ®ª­ 
433
    ;.................................................................................................
398
    ;.................................................................................................
434
    mov     eax,37			  ; ”ã­ªæ¨ï 37 - à ¡®â  á ¬ëèìî
-
 
435
    mov     ebx,1			  ; ­ ¬ ­ã¦­ë £«®¡ «ì­ë¥ ª®®à¤¨­ âë
399
    mcall   SF_MOUSE_GET,SSF_WINDOW_POSITION
436
    int     0x40			  ; eax = x*65536 + y, (x,y)=ª®®à¤¨­ âë ªãàá®à  ¬ëè¨
400
	; eax = x*65536 + y, (x,y)=ª®®à¤¨­ âë ªãàá®à  ¬ëè¨
437
    mov     ecx,eax			  ;
401
    mov     ecx,eax			  ;
438
    shr     ecx,16			  ; ecx = x+1
402
    shr     ecx,16			  ; ecx = x+1
439
    movzx   edx,ax			  ; edx = y+1
403
    movzx   edx,ax			  ; edx = y+1
440
    dec     ecx 			  ; ecx = x
404
    dec     ecx 			  ; ecx = x
Line 446... Line 410...
446
 
410
 
447
set_background:
411
set_background:
448
    ;.................................................................................................
412
    ;.................................................................................................
449
    ; “áâ ­ ¢«¨¢ ¥â ä®­ à ¡®ç¥£® á⮫ 
413
    ; “áâ ­ ¢«¨¢ ¥â ä®­ à ¡®ç¥£® á⮫ 
450
    ;.................................................................................................
414
    ;.................................................................................................
451
    mov     eax,15			  ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
415
    ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
452
    mov     ebx,4			  ; ®¤äã­ªæ¨ï 4 - ãáâ ­®¢¨âì ०¨¬ ®âà¨á®¢ª¨ ä®­ .
416
    ; ®¤äã­ªæ¨ï 4 - ãáâ ­®¢¨âì ०¨¬ ®âà¨á®¢ª¨ ä®­ .
453
    mov     ecx,2			  ; ¥¦¨¬ ®âà¨á®¢ª¨ - § ¬®áâ¨âì (1)
417
    ; ¥¦¨¬ ®âà¨á®¢ª¨ - § ¬®áâ¨âì (1), à áâï­ãâì (2)
454
    int     0x40			  ; ‚ë§ë¢ ¥¬
418
    mcall   SF_BACKGROUND_SET,SSF_MODE_BG,2
455
 
419
 
456
    mov     eax,15			  ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
420
    ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
457
    mov     ebx,1			  ; ®¤äã­ªæ¨ï 1 - ãáâ ­®¢¨âì à §¬¥à ä®­®¢®£® ¨§®¡à ¦¥­¨ï.
-
 
458
    mov     ecx,2			  ; ˜¨à¨­  ¨§®¡à ¦¥­¨ï
-
 
459
    mov     edx,2			  ; ‚ëá®â  ¨§®¡à ¦¥­¨ï
421
    ; ®¤äã­ªæ¨ï 1 - ãáâ ­®¢¨âì à §¬¥à ä®­®¢®£® ¨§®¡à ¦¥­¨ï.
Line 460... Line 422...
460
    int     0x40			  ; ‚ë§ë¢ ¥¬
422
    mcall   SF_BACKGROUND_SET,SSF_SIZE_BG,2,2
461
 
423
 
462
    mov     eax,[color]
424
    mov     eax,[color]
463
    mov     [cm+0],al
425
    mov     [cm+0],al
Line 477... Line 439...
477
    mov     [cm+7],al
439
    mov     [cm+7],al
478
    shr     eax,8
440
    shr     eax,8
479
    mov     [cm+5],al
441
    mov     [cm+5],al
480
    mov     [cm+8],al
442
    mov     [cm+8],al
Line 481... Line 443...
481
 
443
 
482
    mov     eax,15			  ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
444
    ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
483
    mov     ebx,5			  ; ®¤äã­ªæ¨ï 5 - ¯®¬¥áâ¨âì ¡«®ª ¯¨ªá¥«¥© ­  ä®­.
445
    ; ®¤äã­ªæ¨ï 5 - ¯®¬¥áâ¨âì ¡«®ª ¯¨ªá¥«¥© ­  ä®­.
484
    mov     ecx,cm			; “ª § â¥«ì ­  ¤ ­­ë¥ ¢ ä®à¬ â¥ BBGGRRBBGGRR
446
    ; - “ª § â¥«ì ­  ¤ ­­ë¥ ¢ ä®à¬ â¥ BBGGRRBBGGRR
485
    mov     edx,0			  ; C¬¥é¥­¨¥ ¢ ¤ ­­ëå ä®­®¢®£® ¨§®¡à ¦¥­¨ï
447
    ; - C¬¥é¥­¨¥ ¢ ¤ ­­ëå ä®­®¢®£® ¨§®¡à ¦¥­¨ï
486
    mov     esi,3*4			 ;  §¬¥à ¤ ­­ëå ¢ ¡ ©â å = 3 * ç¨á«® ¯¨ªá¥«¥©
448
    ; -  §¬¥à ¤ ­­ëå ¢ ¡ ©â å = 3 * ç¨á«® ¯¨ªá¥«¥©
487
    int     0x40			  ; ‚ë§ë¢ ¥¬
449
    mcall   SF_BACKGROUND_SET,SSF_IMAGE_BG,cm,0,3*4
488
 
450
 
489
    mov     eax,15			  ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
451
    ; ”ã­ªæ¨ï 15 - à ¡®â  á ä®­®¢®© £à ä¨ª®©
-
 
452
    ; ®¤äã­ªæ¨ï 3 - ¯¥à¥à¨á®¢ âì ä®­.
-
 
453
    mcall   SF_BACKGROUND_SET,SSF_REDRAW_BG
-
 
454
 
-
 
455
	;save to file eskin.ini
-
 
456
	xor     al,al
-
 
457
	mov     ecx,1024
-
 
458
	mov     edi,sys_path+2
-
 
459
	repne   scasb
-
 
460
	sub     edi,sys_path+3
-
 
461
	invoke  ini_set_str, inifileeskin, amain, aprogram, sys_path+2, edi
-
 
462
	;add param 'H '
-
 
463
	mov     word[params],'H '
-
 
464
	mov     eax,[color]
-
 
465
	or      eax,0xf ;¤«ï ¨§¡¥¦ ­¨ï ¢¥ç­®£® 横«  ¥á«¨ eax=0
-
 
466
	mov     edi,params+2
-
 
467
	@@:
-
 
468
	rol     eax,8
-
 
469
	or      al,al
-
 
470
	jnz     @f
-
 
471
	mov     word[edi],'00' ;­ã«¨ ¯¥à¥¤ ç¨á«®¬
-
 
472
	add     edi,2
-
 
473
	jmp     @b
-
 
474
	@@:
-
 
475
	and     al,0xf0
-
 
476
	jnz     @f
-
 
477
	mov     byte[edi],'0'
-
 
478
	inc     edi
-
 
479
	@@:
-
 
480
	mov     eax,[color]
-
 
481
	mov     ebx,16
-
 
482
	call    int2ascii
-
 
483
	mov     byte[params+10],' '
-
 
484
	;add color2
-
 
485
	mov     eax,[color2]
-
 
486
	or      eax,0xf ;¤«ï ¨§¡¥¦ ­¨ï ¢¥ç­®£® 横«  ¥á«¨ eax=0
-
 
487
	mov     edi,params+11
-
 
488
	@@:
-
 
489
	rol     eax,8
-
 
490
	or      al,al
490
    mov     ebx,3			  ; ®¤äã­ªæ¨ï 3 - ¯¥à¥à¨á®¢ âì ä®­.
491
	jnz     @f
-
 
492
	mov     word[edi],'00' ;­ã«¨ ¯¥à¥¤ ç¨á«®¬
-
 
493
	add     edi,2
-
 
494
	jmp     @b
-
 
495
	@@:
-
 
496
	and     al,0xf0
-
 
497
	jnz     @f
-
 
498
	mov     byte[edi],'0'
-
 
499
	inc     edi
-
 
500
	@@:
-
 
501
	mov     eax,[color2]
-
 
502
	mov     ebx,16
-
 
503
	call    int2ascii
-
 
504
 
Line 491... Line 505...
491
    int     0x40			  ; ‚ë§ë¢ ¥¬
505
	invoke  ini_set_str, inifileeskin, amain, aparam, params, 19
492
 
506
 
Line 493... Line 507...
493
    ret
507
    ret
494
;end_set_background
508
;end_set_background
495
 
509
 
496
desktop_get:
510
desktop_get:
497
    ;.................................................................................................
511
    ;.................................................................................................
498
    ; Ž¯à¥¤¥«ï¥¬ è¨à¨­ã íªà ­ 
512
    ; Ž¯à¥¤¥«ï¥¬ è¨à¨­ã íªà ­ 
499
    ;.................................................................................................
513
    ;.................................................................................................
500
    mov     eax,14			  ; Ž¯à¥¤¥«ï¥¬ è¨à¨­ã íªà ­  (eax = [xsize]*65536 + [ysize])
514
    ; Ž¯à¥¤¥«ï¥¬ è¨à¨­ã íªà ­  (eax = [xsize]*65536 + [ysize])
501
    int     0x40			  ; xsize = à §¬¥à ¯® £®à¨§®­â «¨ - 1
515
    mcall   SF_GET_SCREEN_SIZE ; xsize = à §¬¥à ¯® £®à¨§®­â «¨ - 1
502
    mov     ebx,eax			  ;
516
    mov     ebx,eax			  ;
503
    shr     ebx,16			  ; ebx = xsize-1
517
    shr     ebx,16			  ; ebx = xsize-1
Line 519... Line 533...
519
      add     ebx,[mouse_x]		  ; ebx = y*xsize+x
533
      add     ebx,[mouse_x]		  ; ebx = y*xsize+x
Line 520... Line 534...
520
 
534
 
521
      ;.................................................................................................
535
      ;.................................................................................................
522
      ; ¥à¥¬ 梥â á ¯ «¨âàë ¢ ¯¥à¥¬¥­­ãî
536
      ; ¥à¥¬ 梥â á ¯ «¨âàë ¢ ¯¥à¥¬¥­­ãî
523
      ;.................................................................................................
-
 
524
      mov     eax,35			  ; ”ã­ªæ¨ï ¢§ïâ¨ï 梥â 
537
      ;.................................................................................................
525
      ;mov     ebx,ecx                    ;; ebx = y*xsize+x («¨è­¨© ª®¤)
538
       ;mov     ebx,ecx                    ;; ebx = y*xsize+x («¨è­¨© ª®¤)
526
      int     0x40			  ; ®«ãç ¥¬ 梥⠢ eax
539
      mcall   SF_GET_PIXEL    ; ®«ãç ¥¬ 梥⠢ eax
527
      cmp     eax,[sc.work]		  ; ‘à ¢­¨¢ ¥¬ á ä®­®¬ ¯à¨«®¦¥­¨ï
540
      cmp     eax,[sc.work]		  ; ‘à ¢­¨¢ ¥¬ á ä®­®¬ ¯à¨«®¦¥­¨ï
528
      je      mouse_err 		  ; …᫨ íâ® ®­ - â® ­¨ç¥£® ­¥ ¤¥« ¥¬
541
      je      mouse_err 		  ; …᫨ íâ® ®­ - â® ­¨ç¥£® ­¥ ¤¥« ¥¬
529
      cmp     eax,0x222222		  ; ‘à ¢­¨¢ ¥¬ á 梥⮬ á¥âª¨
542
      cmp     eax,0x222222		  ; ‘à ¢­¨¢ ¥¬ á 梥⮬ á¥âª¨
530
      je      mouse_err 		  ; …᫨ íâ® ®­ - â® ­¨ç¥£® ­¥ ¤¥« ¥¬
543
      je      mouse_err 		  ; …᫨ íâ® ®­ - â® ­¨ç¥£® ­¥ ¤¥« ¥¬
Line 550... Line 563...
550
    mouse_exit:
563
    mouse_exit:
551
    ret 				  ; ‚®§¢à é ¥¬ ã¯à ¢«¥­¨¥
564
    ret 				  ; ‚®§¢à é ¥¬ ã¯à ¢«¥­¨¥
552
;end_mouse_get----------------------------------------------------------------------------------------
565
;end_mouse_get----------------------------------------------------------------------------------------
Line 553... Line 566...
553
 
566
 
554
draw_palitra:
567
draw_palitra:
555
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
-
 
556
    mov     ebx,110 shl 16+148		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
557
    mov     ecx,9 shl 16+148		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
568
    ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
558
    mov     edx,[sc.work]		  ; 梥â
-
 
Line 559... Line 569...
559
    int     0x40
569
    mcall   SF_DRAW_RECT, 110 shl 16+148, 9 shl 16+148, [sc.work]
560
 
570
 
561
    cmp     [renmode],2
571
    cmp     [renmode],2
562
    je	    cyrcle_draw
572
    je	    cyrcle_draw
Line 602... Line 612...
602
    jg	    cyrcle_draw_2
612
    jg	    cyrcle_draw_2
603
    cmp     edx, WIN_H
613
    cmp     edx, WIN_H
604
    jle     end_cyrcle_draw
614
    jle     end_cyrcle_draw
Line 605... Line 615...
605
 
615
 
606
    cyrcle_draw_2:
616
    cyrcle_draw_2:
607
	mcall	5,10
617
	mcall	SF_SLEEP,10
608
    call    desktop_get
618
    call    desktop_get
Line 609... Line 619...
609
    call    mouse_global
619
    call    mouse_global
610
 
620
 
611
    mov     ebx,112*65536+11
621
    mov     ebx,112*65536+11
612
    mov     esi,0			  ; counter=8
622
    mov     esi,0			  ; counter=8
613
    circle_loop:
623
    circle_loop:
614
      mov     ecx, 10*65536+11
624
      mov     ecx, 10*65536+11
615
      mov     edi,0
-
 
616
      circle_loop2:
625
      mov     edi,0
617
	mov	eax,13
626
      circle_loop2:
618
	call	circle_pixel_read
627
	call	circle_pixel_read
619
	mcall
628
	mcall   SF_DRAW_RECT
620
	add	ecx,11 shl 16
629
	add	ecx,11 shl 16
621
	inc	edi
630
	inc	edi
Line 622... Line 631...
622
	cmp	edi,13
631
	cmp	edi,13
623
	jne	circle_loop2
632
	jne	circle_loop2
624
 
633
 
625
      add     ebx,11 shl 16
634
      add     ebx,11 shl 16
Line 626... Line -...
626
      inc     esi
-
 
627
      cmp     esi,13
-
 
628
      jne     circle_loop
-
 
629
 
-
 
630
 
635
      inc     esi
631
    mov     eax,13
-
 
632
    mov     edx,0x0
636
      cmp     esi,13
633
    mov     ebx,177*65536+13
637
      jne     circle_loop
634
    mov     ecx, 76*65536+13
638
 
635
    mcall
639
    mcall   SF_DRAW_RECT, 177*65536+13, 76*65536+13, 0
636
    mov     ecx, [mouse_x]
640
    mov     ecx, [mouse_x]
637
    mov     edx, [mouse_y]
641
    mov     edx, [mouse_y]
638
    inc     ecx
642
    inc     ecx
639
    inc     edx
643
    inc     edx
640
    mov     ebx, edx
-
 
641
    imul    ebx, [desctop_w]
644
    mov     ebx, edx
642
    add     ebx, ecx
-
 
643
    mov     eax, 35
-
 
644
    mcall
645
    imul    ebx, [desctop_w]
645
    mov     edx,eax
-
 
646
    mov     eax,13
646
    add     ebx, ecx
647
    mov     ebx,178*65536+11
647
    mcall   SF_GET_PIXEL
648
    mov     ecx, 77*65536+11
-
 
649
    mcall
-
 
650
    ret
-
 
651
    end_cyrcle_draw:
648
    mov     edx,eax
652
    mov     eax,13
-
 
653
    mov     edx,0x666666
649
    mcall   SF_DRAW_RECT, 178*65536+11, 77*65536+11
Line 654... Line 650...
654
    mov     ebx,111*65536+145
650
    ret
655
    mov     ecx,  9*65536+145
-
 
656
    mcall
651
    end_cyrcle_draw:
657
    ret
-
 
658
 
652
    mcall   SF_DRAW_RECT, 111*65536+145, 9*65536+145, 0x666666
659
    circle_pixel_read:
653
    ret
660
    push    ecx
654
 
661
    push    ebx
655
    circle_pixel_read:
662
    push    eax
656
    push    ecx ebx
Line 674... Line 668...
674
    sub     edx, 6
668
    sub     edx, 6
Line 675... Line 669...
675
 
669
 
676
    mov     ebx, edx
670
    mov     ebx, edx
677
    imul    ebx, [desctop_w]
671
    imul    ebx, [desctop_w]
678
    add     ebx, ecx
672
    add     ebx, ecx
679
    mov     eax, 35
-
 
680
    mcall
673
    mcall   SF_GET_PIXEL
681
    mov     edx,eax
-
 
682
    pop     eax
-
 
683
    pop     ebx
674
    mov     edx,eax
684
    pop     ecx
675
    pop     ebx ecx
Line 685... Line 676...
685
    ret
676
    ret
686
 
-
 
687
    _cpr_exit:
-
 
688
    mov     edx,0x00000000
677
 
689
    pop     eax
678
    _cpr_exit:
690
    pop     ebx
679
    xor     edx,edx
Line 691... Line 680...
691
    pop     ecx
680
    pop     ebx ecx
692
    ret
681
    ret
Line 693... Line 682...
693
 
682
 
694
    ;picker_draw:
683
    ;picker_draw:
695
    ;ret
684
    ;ret
696
 
685
 
697
    ;.................................................................................................
686
    ;.................................................................................................
698
    ; Žâà¨á®¢ª  ä®­  ¯®¤ ª­®¯ª¨
687
    ; Žâà¨á®¢ª  ä®­  ¯®¤ ª­®¯ª¨
699
    ;.................................................................................................
688
    ;.................................................................................................
700
    sheme_draw:
689
    sheme_draw:
701
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
690
    mov     eax,SF_DRAW_RECT  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
702
    mov     edx,0x222222		  ; 梥â
691
    mov     edx,0x222222		  ; 梥â
Line 717... Line 706...
717
    jnz     re_draw			  ; …᫨ ­¥ ­®«ì â® ¢ ­ ç «® 横« 
706
    jnz     re_draw			  ; …᫨ ­¥ ­®«ì â® ¢ ­ ç «® 横« 
Line 718... Line 707...
718
 
707
 
719
    ;.................................................................................................
708
    ;.................................................................................................
720
    ; Žâà¨á®¢ª  ª­®¯®ª ¯® 横«ã
709
    ; Žâà¨á®¢ª  ª­®¯®ª ¯® 横«ã
721
    ;.................................................................................................
710
    ;.................................................................................................
722
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
711
    mov     eax,SF_DRAW_RECT  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
723
    mov     edx,0x0FFFFFFF		  ; 梥â
712
    mov     edx,0x0FFFFFFF		  ; 梥â
724
    mov     esi,4			  ; ‘ç¥â稪 ª®«¨ç¥á⢠  ¡§ æ¥¢ (#4,8)
713
    mov     esi,4			  ; ‘ç¥â稪 ª®«¨ç¥á⢠  ¡§ æ¥¢ (#4,8)
725
    mov     ebx,99 shl 16+8		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
714
    mov     ebx,99 shl 16+8		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
726
    for_abz:
715
    for_abz:
Line 847... Line 836...
847
 
836
 
848
draw_result:
837
draw_result:
849
    ;.................................................................................................
838
    ;.................................................................................................
850
    ; ®«ìè ï à ¬ª  ¢ë¢®¤  १ã«ìâ â 
839
    ; ®«ìè ï à ¬ª  ¢ë¢®¤  १ã«ìâ â 
851
    ;.................................................................................................
-
 
852
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
840
    ;.................................................................................................
853
    mov     edx,0x00666666		  ; 梥â-®¡¢®¤ª¨
-
 
854
    mov     ebx,4 shl 16+98		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
855
    mov     ecx,9 shl 16+148		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
-
 
856
    int     0x40
841
    mcall   SF_DRAW_RECT, 4 shl 16+98, 9 shl 16+148, 0x00666666
857
    mov     edx,0x00F3F3F3		  ; 梥â-ä®­ 
-
 
858
    mov     ebx,5 shl 16+96		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
859
    mov     ecx,10 shl 16+146		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
-
 
Line 860... Line 842...
860
    int     0x40
842
    mcall   , 5 shl 16+96, 10 shl 16+146, 0x00F3F3F3
861
 
843
 
862
    ;.................................................................................................
844
    ;.................................................................................................
863
    ; Žâà¨á®¢ª  १ã«ìâ â  æ¢¥â  ¢ hex color2
-
 
864
    ;.................................................................................................
-
 
865
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
845
    ; Žâà¨á®¢ª  १ã«ìâ â  æ¢¥â  ¢ hex color2
866
    ; color 2 - draw fringle
-
 
867
    mov     edx,0x222222		  ; 梥â-®¡¢®¤ª¨
-
 
868
    mov     ebx,16 shl 16+15		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
869
    mov     ecx,16 shl 16+15		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
846
    ;.................................................................................................
870
    int     0x40			  ; à¥à뢠­¨¥ (®á à¨áã¥â ¯àאַ㣮«ì­¨ª)
847
    mcall   , 16 shl 16+15, 16 shl 16+15, 0x222222
871
    ; color 2 - draw color
-
 
872
    mov     edx,[color2]		  ; 梥â
-
 
873
    mov     ebx,17 shl 16+13		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
874
    mov     ecx,17 shl 16+13		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
848
    ; color 2 - draw color
875
    int     0x40			  ; à¥à뢠­¨¥ (®á à¨áã¥â ¯àאַ㣮«ì­¨ª)
849
    mcall   , 17 shl 16+13, 17 shl 16+13, [color2]
876
    ; color 1 - draw fringle
-
 
877
    mov     edx,0x222222		  ; 梥â-®¡¢®¤ª¨
-
 
878
    mov     ebx,11 shl 16+15		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
879
    mov     ecx,12 shl 16+15		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
850
    ; color 1 - draw fringle
880
    int     0x40			  ; à¥à뢠­¨¥ (®á à¨áã¥â ¯àאַ㣮«ì­¨ª)
851
    mcall   , 11 shl 16+15, 12 shl 16+15, 0x222222
881
    ; value - draw fringle
-
 
882
    mov     ebx,34 shl 16+62		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
Line 883... Line 852...
883
    mov     ecx,16 shl 16+15		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
852
    ; value - draw fringle
884
    int     0x40			  ; à¥à뢠­¨¥ (®á à¨áã¥â ¯àאַ㣮«ì­¨ª)
853
    mcall   , 34 shl 16+62, 16 shl 16+15
885
 
-
 
886
    ; color 2 - draw color
-
 
887
    mov     edx,[color] 		  ; 梥â
-
 
888
    mov     ebx,12 shl 16+13		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
854
 
889
    mov     ecx,13 shl 16+13		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
855
    ; color 2 - draw color
890
    int     0x40			  ; à¥à뢠­¨¥ (®á à¨áã¥â ¯àאַ㣮«ì­¨ª)
-
 
891
    ; value - draw background
-
 
892
    mov     edx,0xFFFFFF		  ; 梥â-ä®­ 
-
 
893
    mov     ebx,35 shl 16+60		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
894
    mov     ecx,17 shl 16+13		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
-
 
895
    int     0x40			  ; à¥à뢠­¨¥ (®á à¨áã¥â ¯àאַ㣮«ì­¨ª)
-
 
896
 
-
 
897
    mov     eax,47			  ; ”ã­ªæ¨ï 47 - ¢ë¢®¤ ç¨á«  ¢ ®ª­®
-
 
898
    mov     ecx,[color] 		  ; ç¨á«® (¯à¨ bl=0) ¨«¨ 㪠§ â¥«ì (¯à¨ bl=1)
-
 
899
    mov     esi,0x0			  ; 0xX0RRGGBB
-
 
Line 900... Line 856...
900
    mov     ebx,256+8 shl 16		  ; ¯ à ¬¥âàë ¯à¥®¡à §®¢ ­¨ï ç¨á«  ¢ ⥪áâ (HEX)
856
    mcall   , 12 shl 16+13, 13 shl 16+13, [color]
901
    mov     edx,45 shl 16+20		  ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
857
    ; value - draw background
-
 
858
    mcall   , 35 shl 16+60, 17 shl 16+13, 0xFFFFFF
-
 
859
 
902
    int     0x40			  ; à¥à뢠­¨¥ - ¢ë¢®¤¨¬ १ã«ìâ â ¢ ®ª­® (HEX)
860
    ; ”ã­ªæ¨ï 47 - ¢ë¢®¤ ç¨á«  ¢ ®ª­®
903
 
861
    ;ebx - ¯ à ¬¥âàë ¯à¥®¡à §®¢ ­¨ï ç¨á«  ¢ ⥪áâ (HEX)
904
    mov     eax,4			  ; äã­ªæ¨ï 4: ­ ¯¨á âì ⥪áâ ¢ ®ª­¥
862
    mcall   SF_DRAW_NUMBER, 256+8 shl 16, [color], (45 shl 16)+20,, 0
905
    mov     ebx,38*65536+20		  ; [x ­ ç «ì­ë©] *65536 + [y ­ ç «ì­ë©]
863
 
Line 906... Line 864...
906
    mov     ecx,0x0			  ; 梥â ⥪áâ  RRGGBB
864
    ; äã­ªæ¨ï 4: ­ ¯¨á âì ⥪áâ ¢ ®ª­¥
907
    mov     edx,hex			  ; à¨á㥬 '#'
865
    ; edx - à¨á㥬 '#'
908
    mov     esi,1			  ; ¤«¨­  ⥪áâ  ¢ ¡ ©â å
866
    ; esi - ¤«¨­  ⥪áâ  ¢ ¡ ©â å
909
    int     0x40
867
    mcall   SF_DRAW_TEXT,38*65536+20,0,hex,1
Line 930... Line 888...
930
    call    draw_value			  ; ¢ë¢®¤¨¬ १ã«ìâ â
888
    call    draw_value			  ; ¢ë¢®¤¨¬ १ã«ìâ â
Line 931... Line 889...
931
 
889
 
932
    ;.................................................................................................
890
    ;.................................................................................................
933
    ; ‚뢮¤¨¬ ¡ãª¢ë r g b a
891
    ; ‚뢮¤¨¬ ¡ãª¢ë r g b a
934
    ;.................................................................................................
892
    ;.................................................................................................
935
    mov     eax,4			  ; 4 - ¢ë¢¥á⨠áâபã ⥪áâ  ¢ ®ª­®
893
    mov     eax,SF_DRAW_TEXT  ; 4 - ¢ë¢¥á⨠áâபã ⥪áâ  ¢ ®ª­®
936
    mov     ebx,16 shl 16+40		  ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
894
    mov     ebx,16 shl 16+40		  ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
937
    mov     ecx,0x0			  ; 0xX0RRGGBB (RR, GG, BB § ¤ îâ 梥â ⥪áâ )
895
    mov     ecx,0x0			  ; 0xX0RRGGBB (RR, GG, BB § ¤ îâ 梥â ⥪áâ )
938
    mov     edx,cname			  ; 㪠§ â¥«ì ­  ­ ç «® áâப¨
896
    mov     edx,cname			  ; 㪠§ â¥«ì ­  ­ ç «® áâப¨
939
    mov     esi,1			  ; ¢ë¢®¤¨âì esi ᨬ¢®«®¢
897
    mov     esi,1			  ; ¢ë¢®¤¨âì esi ᨬ¢®«®¢
940
    newline:				  ; 横«
898
    newline:				  ; 横«
941
      int     0x40			  ; à¥à뢠­¨¥
899
      int     0x40			  ; à¥à뢠­¨¥
942
      add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
900
      add     ebx,23 shl 16		  ; „®¡ ¢«ï¥¬
943
      add     edx,1			  ; „®¡ ¢«ï¥¬
901
      inc     edx			  ; „®¡ ¢«ï¥¬
944
      cmp     [edx],byte 'x'		  ; ‘à ¢­¥­¨¥ á ¡ ©â®¬ å
902
      cmp     [edx],byte 'x'		  ; ‘à ¢­¥­¨¥ á ¡ ©â®¬ å
Line 945... Line 903...
945
    jne    newline			  ; …᫨ ­¥ ­ã«ì ¨«¨ ­¥ à ¢­®
903
    jne    newline			  ; …᫨ ­¥ ­ã«ì ¨«¨ ­¥ à ¢­®
946
 
904
 
947
    ;.................................................................................................
905
    ;.................................................................................................
948
    ; Žâà¨á®¢ª  á« ©¤¥à®¢
906
    ; Žâà¨á®¢ª  á« ©¤¥à®¢
949
    ;.................................................................................................
907
    ;.................................................................................................
950
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
-
 
951
    mov     edx,0x222222		  ; 梥â-®¡¢®¤ª¨
-
 
952
    mov     ebx,16 shl 16+4		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
-
 
953
    mov     ecx,51 shl 16+86		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
908
    ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
954
    int     0x40
909
    mcall   SF_DRAW_RECT, 16 shl 16+4, 51 shl 16+86, 0x222222
955
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
910
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
956
    int     0x40
911
    int     0x40
957
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
912
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
958
    int     0x40
913
    int     0x40
Line 959... Line 914...
959
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
914
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
960
    int     0x40
-
 
961
 
-
 
962
    mov     edx,0xFA0919		  ; 梥â-®¡¢®¤ª¨
-
 
963
    mov     ebx,17 shl 16+2		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
915
    int     0x40
964
    mov     ecx,52 shl 16+84		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
916
 
965
    int     0x40
917
    mcall   , 17 shl 16+2, 52 shl 16+84, 0xFA0919
966
    mov     edx,0x08CE19		  ; 梥â-®¡¢®¤ª¨
918
    mov     edx,0x08CE19		  ; 梥â-®¡¢®¤ª¨
967
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
919
    add     ebx,23 shl 16		  ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  y]*65536 + [à §¬¥à]
Line 998... Line 950...
998
    mov     cl,0x3			  ; ¡ã¤¥¬ ¤¥«¨âì ¥£® ­  3 â ª ª ª ¯®«§ã­ª¨ ¤«¨­­®© 85 ¯¨ªá¥«¥©
950
    mov     cl,0x3			  ; ¡ã¤¥¬ ¤¥«¨âì ¥£® ­  3 â ª ª ª ¯®«§ã­ª¨ ¤«¨­­®© 85 ¯¨ªá¥«¥©
999
    div     cl				  ; ¤¥«¨¬ - 楫®¥ ¢ al ®áâ â®ª ¢ ah
951
    div     cl				  ; ¤¥«¨¬ - 楫®¥ ¢ al ®áâ â®ª ¢ ah
1000
    mov     cl,136			  ; ­¨¦­ïï â®çª  ¯®«§ã­ª 
952
    mov     cl,136			  ; ­¨¦­ïï â®çª  ¯®«§ã­ª 
1001
    sub     cl,al			  ; cl=cl-al
953
    sub     cl,al			  ; cl=cl-al
1002
    shl     ecx,16
954
    shl     ecx,16
1003
    add     ecx,1			  ; § ¤ ¥¬ ­ ç «ì­®¥ ¯®«®¦¥­¨¥
955
    inc     ecx				  ; § ¤ ¥¬ ­ ç «ì­®¥ ¯®«®¦¥­¨¥
1004
    mov     eax,13			  ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
956
    mcall   SF_DRAW_RECT      ; ”ã­ªæ¨ï 13 - ­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª
1005
    int     0x40
-
 
1006
    push    ebx 			  ; á®å࠭塞 ¤«ï á«¥¤ãî饣® ¯®«§ã­ª  x+w
957
    push    ebx				  ; á®å࠭塞 ¤«ï á«¥¤ãî饣® ¯®«§ã­ª  x+w
1007
    sub     ebx,8			  ; â ª ª ª è¨à¨­  «¨­¨¨ 11 â® ®â­¨¬ ¥¬ 8 çâ®¡ë ªã¡¨ª áâ « è¨à¨­®© 3
958
    sub     ebx,8			  ; â ª ª ª è¨à¨­  «¨­¨¨ 11 â® ®â­¨¬ ¥¬ 8 çâ®¡ë ªã¡¨ª áâ « è¨à¨­®© 3
1008
    add     ebx,8 shl 16		  ; Š®®à¤¨­ âë ¯® x ¤«ï ª¢ ¤à â  ­  ¯®«§ã­ª¥ ᬥ頥¬ ­  8 ¢ ¯à ¢®
959
    add     ebx,8 shl 16		  ; Š®®à¤¨­ âë ¯® x ¤«ï ª¢ ¤à â  ­  ¯®«§ã­ª¥ ᬥ頥¬ ­  8 ¢ ¯à ¢®
1009
    inc     ecx 			  ; ¡ë¤«®ª®¤¨¬ ¢ëá®âã ¯®«§ã­ª  ¤® 3-å (1+1=2)
960
    inc     ecx 			  ; ¡ë¤«®ª®¤¨¬ ¢ëá®âã ¯®«§ã­ª  ¤® 3-å (1+1=2)
1010
    inc     ecx 			  ; (2+1=3) ­ã ¢®â ã ­ á ¡ã¤¥â ªã¡¨ª 3å3 ­  8 ¢ ¯à ¢® ®â «¨­¨¨
961
    inc     ecx 			  ; (2+1=3) ­ã ¢®â ã ­ á ¡ã¤¥â ªã¡¨ª 3å3 ­  8 ¢ ¯à ¢® ®â «¨­¨¨
Line 1020... Line 971...
1020
    ;.................................................................................................
971
    ;.................................................................................................
1021
    push    ebx 			  ; á®å࠭塞 ¯à¨á« ­­ë¥ ª®®à¤¨­ âë
972
    push    ebx 			  ; á®å࠭塞 ¯à¨á« ­­ë¥ ª®®à¤¨­ âë
1022
    mov     ebx,10			  ; ãáâ ­ ¢«¨¢ ¥¬ ®á­®¢ ­¨¥ á¨á⥬ë áç¨á«¥­¨ï
973
    mov     ebx,10			  ; ãáâ ­ ¢«¨¢ ¥¬ ®á­®¢ ­¨¥ á¨á⥬ë áç¨á«¥­¨ï
1023
    mov     edi,buff			  ; 㪠§ â¥«ì ­  áâப㠡ãä¥à 
974
    mov     edi,buff		  ; 㪠§ â¥«ì ­  áâப㠡ãä¥à 
1024
    call    int2ascii			  ; ª®­¢¥àâ¨à㥬 ç¨á«® ¨ «®¦¨¬ ª ª áâப㠢 ¡ãä¥à + esi ¤«¨­ 
975
	call    int2ascii   	  ; ª®­¢¥àâ¨à㥬 ç¨á«® ¨ «®¦¨¬ ª ª áâப㠢 ¡ãä¥à + esi ¤«¨­ 
1025
    mov     eax,4			  ; äã­ªæ¨ï 4: ­ ¯¨á âì ⥪áâ ¢ ®ª­¥
976
    mov     eax,SF_DRAW_TEXT  ; äã­ªæ¨ï 4: ­ ¯¨á âì ⥪áâ ¢ ®ª­¥
1026
    pop     ebx 			  ; ¤®áâ ¥¬ ¨§ á⥪  ¯à¨á« ­­ë¥ ª®®à¤¨­ âë
977
    pop     ebx 			  ; ¤®áâ ¥¬ ¨§ á⥪  ¯à¨á« ­­ë¥ ª®®à¤¨­ âë
1027
    cmp     esi,2			  ; –…’ˆŽ‚€ˆ… ’…Š‘’€
978
    cmp     esi,2			  ; –…’ˆŽ‚€ˆ… ’…Š‘’€
1028
    jne     draw_value_1
979
    jne     draw_value_1
1029
    add     ebx,4 shl 16
980
    add     ebx,4 shl 16
1030
    jmp     draw_value_e
981
    jmp     draw_value_e
Line 1039... Line 990...
1039
    ret 				  ; ‚®§¢à é ¥¬ ã¯à ¢«¥­¨¥
990
    ret 				  ; ‚®§¢à é ¥¬ ã¯à ¢«¥­¨¥
1040
;end_draw_value
991
;end_draw_value
Line 1041... Line 992...
1041
 
992
 
Line 1042... Line 993...
1042
  _read_params:
993
  _read_params:
1043
 
994
 
1044
      mov al,[params+2]
-
 
1045
      mov [params_c+0],al
-
 
1046
 
-
 
1047
      mov al,[params+3]
-
 
1048
      mov [params_c+1],al
-
 
1049
 
-
 
1050
      mov al,[params+4]
-
 
1051
      mov [params_c+2],al
-
 
1052
 
-
 
1053
      mov al,[params+5]
-
 
1054
      mov [params_c+3],al
-
 
1055
 
-
 
1056
      mov al,[params+6]
-
 
1057
      mov [params_c+4],al
-
 
1058
 
-
 
Line 1059... Line 995...
1059
      mov al,[params+7]
995
      mov eax,dword[params+2]
1060
      mov [params_c+5],al
996
      mov dword[params_c+0],eax
1061
 
-
 
1062
      mov al,[params+8]
-
 
1063
      mov [params_c+6],al
-
 
Line 1064... Line 997...
1064
 
997
 
1065
      mov al,[params+9]
998
      mov eax,dword[params+6]
1066
      mov [params_c+7],al
999
      mov dword[params_c+4],eax
1067
 
1000
 
Line 1068... Line 1001...
1068
      mov   esi,params_c
1001
      mov   esi,params_c
1069
      mov   ecx,16
1002
      mov   ecx,16
1070
      call  ascii2int
-
 
1071
      mov   [color],eax
-
 
1072
 
-
 
1073
      mov al,[params+11]
-
 
1074
      mov [params_c+0],al
-
 
1075
 
-
 
1076
      mov al,[params+12]
-
 
1077
      mov [params_c+1],al
-
 
1078
 
-
 
1079
      mov al,[params+13]
-
 
1080
      mov [params_c+2],al
-
 
1081
 
-
 
Line 1082... Line -...
1082
      mov al,[params+14]
-
 
1083
      mov [params_c+3],al
-
 
1084
 
-
 
1085
      mov al,[params+15]
1003
      call  ascii2int
1086
      mov [params_c+4],al
-
 
1087
 
-
 
1088
      mov al,[params+16]
-
 
1089
      mov [params_c+5],al
1004
      mov   [color],eax
Line 1090... Line 1005...
1090
 
1005
 
1091
      mov al,[params+17]
1006
      mov eax,dword[params+11]
1092
      mov [params_c+6],al
1007
      mov dword[params_c+0],eax
1093
 
1008
 
Line 1120... Line 1035...
1120
    ;.................................................................................................
1035
    ;.................................................................................................
1121
    ; eax - 32-å §­ ç­®¥ ç¨á«®
1036
    ; eax - 32-å §­ ç­®¥ ç¨á«®
1122
    ; ebx - ®á­®¢ ­¨¥ á¨á⥬ë áç¨á«¥­¨ï
1037
    ; ebx - ®á­®¢ ­¨¥ á¨á⥬ë áç¨á«¥­¨ï
1123
    ; edi - 㪠§ â¥«ì ­  áâப㠡ãä¥à 
1038
    ; edi - 㪠§ â¥«ì ­  áâப㠡ãä¥à 
1124
    ; ‚®§¢à é ¥â § ¯®«­¥­­ë© ¡ãä¥à ¨ esi - ¤«¨­  áâப¨
1039
    ; ‚®§¢à é ¥â § ¯®«­¥­­ë© ¡ãä¥à ¨ esi - ¤«¨­  áâப¨
1125
    ;pushad
1040
    push    edi
1126
    xor     esi,esi			  ; § ­ã«ï¥¬ áç¥â稪 ᨬ¢®«®¢
1041
    xor     esi,esi			  ; § ­ã«ï¥¬ áç¥â稪 ᨬ¢®«®¢
1127
    convert_loop:
1042
    convert_loop:
1128
    xor     edx,edx			  ; § ­ã«ï¥¬ ॣ¨áâà ¯®¤ ®áâ â®ª
1043
    xor     edx,edx			  ; § ­ã«ï¥¬ ॣ¨áâà ¯®¤ ®áâ â®ª
1129
    div     ebx 			  ; eax/ebx - ®áâ â®ª ¢ edx
1044
    div     ebx 			  ; eax/ebx - ®áâ â®ª ¢ edx
1130
    call    hex_digit			  ; ¯à¥®¡à §ã¥¬ ᨬ¢®«
1045
    call    hex_digit			  ; ¯à¥®¡à §ã¥¬ ᨬ¢®«
Line 1138... Line 1053...
1138
    stosb				  ; § ¯¨á뢠¥¬ ¢ ¡ãä¥à ¯®  ¤à¥áã ES:(E)DI
1053
    stosb				  ; § ¯¨á뢠¥¬ ¢ ¡ãä¥à ¯®  ¤à¥áã ES:(E)DI
1139
    dec     esi 			  ; 㬥­ìè ¥¬ áç¥â稪
1054
    dec     esi 			  ; 㬥­ìè ¥¬ áç¥â稪
1140
    test    esi,esi			  ; ¥á«¨ ¥áâì çâ® ¤®áâ ¢ âì ¨§ á⥪ 
1055
    test    esi,esi			  ; ¥á«¨ ¥áâì çâ® ¤®áâ ¢ âì ¨§ á⥪ 
1141
    jnz     write_loop			  ; â® ¤®áâ ñ¬
1056
    jnz     write_loop			  ; â® ¤®áâ ñ¬
1142
    mov     byte [edi],0		  ; ¨­ ç¥ ¤®¯¨áë뢠¥¬ ­ã«¥¢®© ¡ ©â
1057
    mov     byte [edi],0		  ; ¨­ ç¥ ¤®¯¨áë뢠¥¬ ­ã«¥¢®© ¡ ©â
1143
    ;popad                                 ; ¢®ááâ ­ ¢«¨¢ ¥¬ §­ ç¥­¨ï ॣ¨áâ஢
1058
    pop     edi
1144
    ; ª®¤ ­¨¦¥ ­¥ ¨¬¥¥â ­¨ç¥£® ®¡é¥£® ª ä㭪樨, ¯à®áâ® ¢®§¢à é ¥â ¥é¥ ¤«¨­­ã ¯®«ã祭­®© áâப¨
1059
    ; ª®¤ ­¨¦¥ ­¥ ¨¬¥¥â ­¨ç¥£® ®¡é¥£® ª ä㭪樨, ¯à®áâ® ¢®§¢à é ¥â ¥é¥ ¤«¨­­ã ¯®«ã祭­®© áâப¨
1145
    mov     edi,buff			  ; 㪠§ â¥«ì ­  ­ ç «® ⥪áâ 
-
 
1146
    call    str_len
1060
    call    str_len
1147
    mov     esi,eax
1061
    mov     esi,eax
1148
    ret 				  ; ¨ ¢®§¢à é ¥¬ ã¯à ¢«¥­¨¥
1062
    ret 				  ; ¨ ¢®§¢à é ¥¬ ã¯à ¢«¥­¨¥
1149
;end_int2ascii
1063
;end_int2ascii
Line 1225... Line 1139...
1225
 
1139
 
1226
str_len:
1140
str_len:
1227
    ;.................................................................................................
1141
    ;.................................................................................................
1228
    ; ®¯à¥¤¥«ï¥â ¤«¨­ã áâப¨ (¢å®¤->EDI ZS offset ; ¢ë室->EAX ZS length)
1142
    ; ®¯à¥¤¥«ï¥â ¤«¨­ã áâப¨ (¢å®¤->EDI ZS offset ; ¢ë室->EAX ZS length)
1229
    ;.................................................................................................
-
 
1230
	push ecx
-
 
1231
	push esi
1143
    ;.................................................................................................
Line 1232... Line 1144...
1232
	push edi
1144
	push ecx esi edi
1233
 
1145
 
1234
	cld
1146
	cld
1235
	xor   al, al
1147
	xor   al, al
1236
	mov ecx, 0FFFFFFFFh
1148
	mov ecx, 0FFFFFFFFh
1237
	mov esi, edi
1149
	mov esi, edi
1238
	repne scasb
1150
	repne scasb
1239
	sub edi, esi
1151
	sub edi, esi
Line 1240... Line -...
1240
	mov eax, edi
-
 
1241
	dec eax
-
 
1242
 
1152
	mov eax, edi
Line 1243... Line 1153...
1243
	pop edi
1153
	dec eax
1244
	pop esi
1154
 
Line 1285... Line 1195...
1285
 
1195
 
1286
    ret
1196
    ret
Line 1287... Line 1197...
1287
 endp
1197
 endp
1288
 
1198
 
1289
set_background2:
1199
set_background2:
1290
    mcall   68, 11
1200
    mcall   SF_SYS_MISC, SSF_HEAP_INIT
Line 1291... Line 1201...
1291
    mcall   68, 12, 256 * 256 * 3
1201
    mcall   SF_SYS_MISC, SSF_MEM_ALLOC, 256 * 256 * 3
1292
    mov     [image], eax
1202
    mov     [image], eax
1293
 
1203
 
Line 1307... Line 1217...
1307
    add     bh, al
1217
    add     bh, al
1308
    mov     [edx + 2], bh
1218
    mov     [edx + 2], bh
1309
    add     edx, 3
1219
    add     edx, 3
1310
    loop    @b
1220
    loop    @b
Line 1311... Line 1221...
1311
 
1221
 
1312
    mcall   15, 1, 256, 256
1222
    mcall   SF_BACKGROUND_SET, SSF_SIZE_BG, 256, 256
1313
    mcall   15, 4, 1
1223
    mcall   SF_BACKGROUND_SET, SSF_MODE_BG, 1
1314
    mcall   15, 5, [image], 0, 256 * 256 * 3
1224
    mcall   SF_BACKGROUND_SET, SSF_IMAGE_BG, [image], 0, 256 * 256 * 3
Line 1315... Line 1225...
1315
    mcall   15, 3
1225
    mcall   SF_BACKGROUND_SET, SSF_REDRAW_BG
1316
 
1226
 
Line 1317... Line 1227...
1317
    mcall   68, 13, [image]
1227
    mcall   SF_SYS_MISC, SSF_MEM_FREE, [image]
1318
ret
1228
ret
1319
 
1229
 
1320
;#___________________________________________________________________________________________________
1230
;#___________________________________________________________________________________________________
1321
;****************************************************************************************************|
1231
;****************************************************************************************************|
1322
; ‹ŽŠ ……Œ…›• ˆ ŠŽ‘’€’                                                                         |
1232
; ‹ŽŠ ……Œ…›• ˆ ŠŽ‘’€’                                                                         |
1323
;----------------------------------------------------------------------------------------------------/
1233
;----------------------------------------------------------------------------------------------------/
1324
circle:
1234
circle:
1325
    title	db 'Palitra v0.76',0	   ; åà ­¨â ¨¬ï ¯à®£à ¬¬ë
1235
    title	db 'Palitra v0.77',0	   ; åà ­¨â ¨¬ï ¯à®£à ¬¬ë
1326
    hidden	db 'Hidden',0
1236
    hidden	db 'Hidden',0
1327
    hex 	db '#',0		  ; ¤«ï ¢ë¢®¤  à¥èñ⪨ ª ª ⥪áâ 
1237
    hex 	db '#',0		  ; ¤«ï ¢ë¢®¤  à¥èñ⪨ ª ª ⥪áâ 
Line 1332... Line 1242...
1332
    bground1	db 'Gradient',0 	  ; ¨¬ï ª­®¯ª¨ - 14
1242
    bground1	db 'Gradient',0 	  ; ¨¬ï ª­®¯ª¨ - 14
1333
    bground2	db 'Noisy',0	     ; ¨¬ï ª­®¯ª¨ - 14
1243
    bground2	db 'Noisy',0	     ; ¨¬ï ª­®¯ª¨ - 14
1334
    runmode	dd 1			  ; ०¨¬ § ¯ã᪠ (1-normal, 2-hidden, 3-colordialog)
1244
    runmode	dd 1			  ; ०¨¬ § ¯ã᪠ (1-normal, 2-hidden, 3-colordialog)
1335
    color2	dd 00FFFFFFh		  ; åà ­¨â §­ ç¥­¨¥ ¢â®à®£® ¢ë¡à ­­®£® 梥â 
1245
    color2	dd 00FFFFFFh		  ; åà ­¨â §­ ç¥­¨¥ ¢â®à®£® ¢ë¡à ­­®£® 梥â 
Line -... Line 1246...
-
 
1246
 
-
 
1247
    inifileeskin db '/sys/settings/eskin.ini',0
-
 
1248
    amain       db 'main',0
-
 
1249
    aprogram    db 'program',0
Line -... Line 1250...
-
 
1250
    aparam      db 'param',0
-
 
1251
 
-
 
1252
align 16
-
 
1253
@IMPORT:
-
 
1254
 
-
 
1255
library \
-
 
1256
    libini , 'libini.obj'
-
 
1257
 
Line 1336... Line 1258...
1336
 
1258
import  libini, \
1337
 
1259
	ini_set_str, 'ini_set_str'
1338
 
1260
 
1339
I_END:
1261
I_END:
Line 1351... Line 1273...
1351
    calpha	rb 1			  ; åà ­¨¬ ¯à®§à ç­®áâì
1273
    calpha	rb 1			  ; åà ­¨¬ ¯à®§à ç­®áâì
1352
    pnext	rd 1			  ; áç¥â稪 ¯¥à¥ª«î祭¨ï ¯ «¨âàë
1274
    pnext	rd 1			  ; áç¥â稪 ¯¥à¥ª«î祭¨ï ¯ «¨âàë
1353
    renmode	rd 1			  ; ०¨¬ ®âà¨á®¢ª¨ (1-梥⮢ ï á奬 ,2-¯¨¯¥âª ,3-ªà㣮¢ ï)
1275
    renmode	rd 1			  ; ०¨¬ ®âà¨á®¢ª¨ (1-梥⮢ ï á奬 ,2-¯¨¯¥âª ,3-ªà㣮¢ ï)
1354
    params	rb 20			  ; ¯à¨ñ¬ ¯ à ¬¥â஢
1276
    params	rb 20			  ; ¯à¨ñ¬ ¯ à ¬¥â஢
1355
    params_c	rb 9			  ; ¯à¨ñ¬­¨ª ¤«ï 梥â 
1277
    params_c	rb 9			  ; ¯à¨ñ¬­¨ª ¤«ï 梥â 
1356
 
-
 
1357
 image	    rd 1
1278
    image	    rd 1
Line 1358... Line -...
1358
 
-
 
1359
 
1279
 
-
 
1280
	rd 1024
-
 
1281
stacktop:
1360
		rd 1024
1282
	sys_path rb 1024
1361
I_MEM:
1283
I_MEM: