Subversion Repositories Kolibri OS

Rev

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

Rev 3099 Rev 3453
Line 29... Line 29...
29
;;       - Š®á¬¥â¨ç¥áª¨¥ ¯à ¢ª¨.                                                                     |
29
;;       - Š®á¬¥â¨ç¥áª¨¥ ¯à ¢ª¨.                                                                     |
30
;;       - ¥¡®«ìè ï ¤¥®¯â¨¬¨§ æ¨ï.                                                                  |
30
;;       - ¥¡®«ìè ï ¤¥®¯â¨¬¨§ æ¨ï.                                                                  |
31
;; 0.6.0 - „®¡ ¢«¥­  ¢®§¬®¦­®áâì § ¯ã᪠ á ¯ à ¬¥âà ¬¨                                               |
31
;; 0.6.0 - „®¡ ¢«¥­  ¢®§¬®¦­®áâì § ¯ã᪠ á ¯ à ¬¥âà ¬¨                                               |
32
;;       - „®¡ ¢«¥­ ०¨¬ H (hidden) ¯à®¨§¢®¤¨â § ¬¥­ã ä®­  à ¡®ç¥£® á⮫  £à ¤¨¥­â­®© § «¨¢ª®©.     |
32
;;       - „®¡ ¢«¥­ ०¨¬ H (hidden) ¯à®¨§¢®¤¨â § ¬¥­ã ä®­  à ¡®ç¥£® á⮫  £à ¤¨¥­â­®© § «¨¢ª®©.     |
33
;;       - ®«ìè ï ¤¥®¯â¨¬¨§ æ¨ï.                                                                    |
33
;;       - ®«ìè ï ¤¥®¯â¨¬¨§ æ¨ï.                                                                    |
-
 
34
;; 0.7.0 - „®¡ ¢«¥­  ¯¨¯¥âª  - ¢ë¡®à ­  á।­îî ª­®¯ªã ¬ëè¨                                          |
34
;.....................................................................................................
35
;.....................................................................................................
35
;; All rights reserved.                                                                              |
36
;; All rights reserved.                                                                              |
36
;;                                                                                                   |
37
;;                                                                                                   |
37
;; Redistribution and use in source and binary forms, with or without modification, are permitted    |
38
;; Redistribution and use in source and binary forms, with or without modification, are permitted    |
38
;; provided that the following conditions are met:                                                   |
39
;; provided that the following conditions are met:                                                   |
Line 60... Line 61...
60
;****************************************************************************************************|
61
;****************************************************************************************************|
61
; ‡€ƒŽ‹Ž‚ŽŠ ˆ‘Ž‹Ÿ…ŒŽƒŽ ”€‰‹€ ˆ‹Ž†…ˆŸ „‹Ÿ ŠŽ‹ˆˆ Ž‘                                             |
62
; ‡€ƒŽ‹Ž‚ŽŠ ˆ‘Ž‹Ÿ…ŒŽƒŽ ”€‰‹€ ˆ‹Ž†…ˆŸ „‹Ÿ ŠŽ‹ˆˆ Ž‘                                             |
62
;----------------------------------------------------------------------------------------------------/
63
;----------------------------------------------------------------------------------------------------/
63
  use32
64
  use32
64
  org	 0x0
65
  org	 0x0
65
 
-
 
66
  db	 'MENUET01'
66
  db	 'MENUET01'
67
  dd	 0x01
67
  dd	 0x01
68
  dd	 START
68
  dd	 START
69
  dd	 I_END
69
  dd	 I_END
70
  dd	 0x100000
70
  dd	 I_END+4096
71
  dd	 0x1000
71
  dd	 I_END+4096
72
  dd	 params
72
  dd	 params
73
  dd	 0x0
73
  dd	 0x0
Line 74... Line 74...
74
 
74
 
Line 75... Line 75...
75
  include '..\..\..\macros.inc'
75
  include '..\..\..\macros.inc'
76
 
76
 
77
  WIN_W  equ 295            ; è¨à¨­  ®ª­ 
77
  WIN_W  equ 295            ; è¨à¨­  ®ª­ 
78
  WIN_H  equ 195            ; ¢ëá®â  ®ª­ 
78
  WIN_H  equ 195            ; ¢ëá®â  ®ª­ 
Line -... Line 79...
-
 
79
  WIN_X  equ 250            ; ª®®à¤¨­ â  å ®ª­ 
-
 
80
  WIN_Y  equ 190            ; ª®®à¤¨­ â  ã ®ª­ 
-
 
81
 
79
  WIN_X  equ 250            ; ª®®à¤¨­ â  å ®ª­ 
82
panel:
80
  WIN_Y  equ 190            ; ª®®à¤¨­ â  ã ®ª­ 
-
 
81
 
-
 
82
START:
83
  file "panel.raw"
83
; ®¡à ¡®âª  ¯ à ¬¥â஢ ª®¬ ­¤­®© áâப¨
84
 
84
    mov  edi,params         ; 㪠§ â¥«ì ­  áâபã
85
START:
85
    call str_len            ; ¯®«ãç ¥¬ ¤«¨­ã áâப¨
-
 
86
    cmp  eax,0              ; áâà ¢­¨¢ ¥¬ ¤«¨­ã á ­ã«ñ¬
-
 
87
    je   red                ; ¥á«¨ ¯ à ¬¥â஢ ­¥â â® ã室¨¬
-
 
88
    call    _read_params    ; ¨­ ç¥ ç¨â ¥¬ ¯ à ¬¥âàë æ¢¥â  (®ç¥­ì ªà¨¢®)
-
 
89
    xor  eax,eax            ; § ­ã«ï¥¬ ॣ¨áâà
-
 
90
    mov  al,byte [params]   ; ç¨â ¥¬ ¯ à ¬¥âà ¬®¤ 
-
 
91
    cmp  al,'N'             ; áà ¢­¨¢ ¥¬ á normal mode
-
 
92
    jne _no_normalmode      ; ¥á«¨ ­¥â â® ã室¨¬ ­  ¯à®¢¥àªã ¤ «ìè¥
-
 
93
    mov  [runmode],1        ; ¥á«¨ ¤  â® ãáâ ­ ¢«¨¢ ¥¬ ¥£®
-
 
94
    jmp  red                ; ¨¤ñ¬ ­  ®âà¨á®¢ªã
-
 
95
  _no_normalmode:           ; ¥á«¨ ­¥ normal mode â®
-
 
96
    cmp  al,'H'             ; ¢®§¬®¦­® hidden mode
-
 
97
    jne _no_hiddenmode      ; ¥á«¨ ­¥ ®­ â® ã室¨¬ ¤ «ìè¥
-
 
98
    mov  [runmode],2        ; ¥á«¨ ®­ â® ãáâ ­ ¢«¨¢ ¥¬ çâ® íâ® ®­ (­ å?)
-
 
99
    call set_background     ; ¬¥­ï¥¬ ä®­
-
 
100
    jmp  bexit              ; ¨ § ªà뢠¥¬ ¯à®£ã
-
 
101
  _no_hiddenmode:           ; ¥á«¨ ­¥ hidden mode
-
 
102
    cmp  al,'D'             ; ¢®§¬®¦­® íâ® color dialog mode
-
 
103
    jne _no_dialogmode      ; ¥á«¨ ¢áñ â ª¨ ­¥ ®­ â® ã室¨¬
-
 
104
    mov  [runmode],3        ; ¨­ ç¥ 㪠§ë¢ ¥¬ çâ® íâ® â ª¨ ®­
-
 
105
    jmp  red                ; ¨ ã室¨¬ ­  ¢ë¯®«­¥­¨¥
-
 
Line 106... Line 86...
106
  _no_dialogmode:           ; ¥á«¨ íâ® ­¨ ®¤¨­ ¨§ § ï¢«¥­ëå ¬®¤®¢
86
    mcall   68,11                         ; ¨­¨æ¨ «¨§ æ¨ï ªãç¨
107
    mov  [runmode],1        ; â® á¡à á뢠¥¬ ­  ¤¥ä®«â
87
    mcall   40,0x27                       ; ãáâ ­ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩
108
    jmp  red                ; ¨ à¨á㥬
88
    include 'params_init.inc'             ; ®¡à ¡®âª  ¯ à ¬¥â஢ ª®¬ ­¤­®© áâப¨
109
 
89
 
Line 119... Line 99...
119
    je      red                           ; ¥á«¨ ¤  - ­  ¬¥âªã red
99
    je      red                           ; ¥á«¨ ¤  - ­  ¬¥âªã red
120
    cmp     eax,2                         ; ­ ¦ â  ª« ¢¨è  ?
100
    cmp     eax,2                         ; ­ ¦ â  ª« ¢¨è  ?
121
    je      key                           ; ¥á«¨ ¤  - ­  key
101
    je      key                           ; ¥á«¨ ¤  - ­  key
122
    cmp     eax,3                         ; ­ ¦ â  ª­®¯ª  ?
102
    cmp     eax,3                         ; ­ ¦ â  ª­®¯ª  ?
123
    je      button                        ; ¥á«¨ ¤  - ­  button
103
    je      button                        ; ¥á«¨ ¤  - ­  button
-
 
104
    cmp     eax,6                         ; ᮡë⨥ ®â ¬ëè¨ ¢­¥ ®ª­ 
-
 
105
    je      mouse                         ; ¥á«¨ ¤  - ­  button
124
    jmp     still                         ; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ­ ç «® 横« 
106
    jmp     still                         ; ¥á«¨ ¤à㣮¥ ᮡë⨥ - ¢ ­ ç «® 横« 
125
;end_still
107
;end_still
Line 126... Line 108...
126
 
108
 
127
key:                                      ; ­ ¦ â  ª« ¢¨è  ­  ª« ¢¨ âãà¥
109
key:                                      ; ­ ¦ â  ª« ¢¨è  ­  ª« ¢¨ âãà¥
128
    mcall   2                             ; äã­ªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®«  (¢ ah) (âãâ ¢ ¯à¨­æ¨¯¥ ­¥ ­ã¦­ )
110
    mcall   2                             ; äã­ªæ¨ï 2 - áç¨â âì ª®¤ ᨬ¢®«  (¢ ah) (âãâ ¢ ¯à¨­æ¨¯¥ ­¥ ­ã¦­ )
129
    jmp     still                         ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
111
    jmp     still                         ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
Line -... Line 112...
-
 
112
;end_key
-
 
113
 
-
 
114
mouse:
-
 
115
    mov     eax,[renmode]
-
 
116
    cmp     eax,2
-
 
117
    jnz     still
-
 
118
    call    cyrcle_draw
-
 
119
    mcall   37,2
-
 
120
    cmp     al,100b
-
 
121
    jne     still
-
 
122
    mov     [color],edx
-
 
123
    call    draw_result
-
 
124
    jmp     still                         ; ¢¥à­ãâìáï ª ­ ç «ã 横« 
130
;end_key
125
;end_mouse
131
 
126
 
132
button:
127
button:
133
    mcall   17                            ; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
128
    mcall   17                            ; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
134
    cmp     ah, 1                         ; ¥á«¨ ­ ¦ â  ª­®¯ª  á ­®¬¥à®¬ 1,
129
    cmp     ah, 1                         ; ¥á«¨ ­ ¦ â  ª­®¯ª  á ­®¬¥à®¬ 1,
Line 152... Line 147...
152
    call    set_background                ; ¨­ ç¥ ãáâ ­ ¢«¨¢ ¥¬ ä®­
147
    call    set_background                ; ¨­ ç¥ ãáâ ­ ¢«¨¢ ¥¬ ä®­
153
    jmp     still                         ; ¨ ­  ®¦¨¤ ­¨¥ ᮡëâ¨ï
148
    jmp     still                         ; ¨ ­  ®¦¨¤ ­¨¥ ᮡëâ¨ï
154
  circle_bg:
149
  circle_bg:
155
    cmp     ah, 15                        ; Š­®¯ª  Šà㣮¢ ï ¯ «¨âà 
150
    cmp     ah, 15                        ; Š­®¯ª  Šà㣮¢ ï ¯ «¨âà 
156
    jne     next_end                      ; ¥á«¨ ­¥ ­ ¦ â  â® ¢ë室¨¬
151
    jne     next_end                      ; ¥á«¨ ­¥ ­ ¦ â  â® ¢ë室¨¬
157
    ;mov     [renmode],2                   ; ¢ª«îç ¥¬ ®âà¨á®¢ªã ªà㣮¢®© ¯ «¨âàë
152
    mov     [renmode],2                   ; ¢ª«îç ¥¬ ®âà¨á®¢ªã ªà㣮¢®© ¯ «¨âàë
158
    call    draw_palitra                  ; ˆ‘“…Œ €‹ˆ’“
153
    call    draw_palitra                  ; ˆ‘“…Œ €‹ˆ’“
159
    jmp     still                         ; ¨ ­  ®¦¨¤ ­¨¥ ᮡëâ¨ï
154
    jmp     still                         ; ¨ ­  ®¦¨¤ ­¨¥ ᮡëâ¨ï
160
  next_end:
155
  next_end:
161
    cmp     ah,13                         ; COLOR SWAP
156
    cmp     ah,13                         ; COLOR SWAP
162
    jne     color_swap_end
157
    jne     color_swap_end
Line 301... Line 296...
301
    mov     ebx,266 shl 16+16             ; [x] + [size]
296
    mov     ebx,266 shl 16+16             ; [x] + [size]
302
    mov     ecx,9 shl 16+16               ; [y] + [size]
297
    mov     ecx,9 shl 16+16               ; [y] + [size]
303
    mov     edx,0x6000000C                ; ID = 12
298
    mov     edx,0x6000000C                ; ID = 12
304
    mov     esi,[sc.work_button]          ; RGB
299
    mov     esi,[sc.work_button]          ; RGB
305
    int     0x40                          ; call
300
    int     0x40                          ; call
306
    mov     eax,13                        ; draw rect
-
 
307
    mov     ebx,266 shl 16+16             ; [x] + [size]
-
 
308
    mov     ecx,9 shl 16+16               ; [y] + [size]
-
 
309
    mov     edx,0x666666                  ; RGB
-
 
310
    push    esi                           ; backup esi
-
 
311
    mov     esi,8                         ; counter=8
-
 
312
    draw_lpanel:                          ; loop label
-
 
313
      int     0x40                        ; call draw black rect
-
 
314
      add     ecx,19 shl 16               ; move rect
-
 
315
      dec     esi                         ; decrement counter
-
 
316
      cmp     esi,0                       ; if counter!=zero
-
 
317
      jne     draw_lpanel                 ; then goto label
-
 
318
      mov     esi,8                       ; else counter=8
-
 
319
      mov     ebx,267 shl 16+14           ; [x] + [size]
-
 
320
      mov     ecx,10 shl 16+14            ; [y] + [size]
-
 
321
      mov     edx,0xF3F3F3                ; RGB
301
    ; circle diagram
322
    draw_lpanel2:                         ; 2 loop label
-
 
323
      int     0x40                        ; call draw white rect
-
 
324
      add     ecx,19 shl 16               ; move rect
302
    add     ecx,19 shl 16                 ; move rect
325
      dec     esi                         ; decrement counter
-
 
326
      cmp     esi,0                       ; if counter!=0
-
 
327
      jne     draw_lpanel2                ; then goto label2
-
 
328
    pop     esi                           ; restore esi
-
 
329
    ; draw_left_arrow for button_next_colorsheme
-
 
330
    mov     eax,4                         ; Write string
-
 
331
    mov     ebx,272 shl 16+13             ; [x] + [y]
-
 
332
    mov     ecx,0x0                       ; RGB
-
 
333
    mov     edx,larrow                    ; string pointer
-
 
334
    mov     esi,1                         ; count symbol
-
 
335
    int     0x40                          ; call
-
 
336
    mov     eax,38                        ; draw line
-
 
337
    mov     ebx,270 shl 16+272            ; [start x] + [end x] 
-
 
338
    mov     ecx,16 shl 16+16              ; [start y] + [end y] 
-
 
339
    mov     edx,0x0                       ; RGB
303
    mov     edx,0x6000000F                ; ID = 15
340
    int     0x40                          ; call
304
    int     0x40                          ; call
-
 
305
 
-
 
306
    mov     eax,7                         ; 7 - ­®¬¥à ä㭪樨 
-
 
307
    mov     ebx,panel                     ; 㪠§ â¥«ì ­  ¨§®¡à ¦¥­¨¥ ¢ ä®à¬ â¥ BBGGRRBBGGRR... 
-
 
308
    mov     ecx, 16 shl 16 + 149          ; [à §¬¥à ¯® ®á¨ x]*65536 + [à §¬¥à ¯® ®á¨ y] 
-
 
309
    mov     edx,266 shl 16 +   9            ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
-
 
310
    int     0x40
-
 
311
 
-
 
312
    ;mov     eax,13                        ; draw rect
-
 
313
    ;mov     ebx,266 shl 16+16             ; [x] + [size]
-
 
314
    ;mov     ecx,9 shl 16+16               ; [y] + [size]
-
 
315
    ;mov     edx,0x666666                  ; RGB
-
 
316
    ;push    esi                           ; backup esi
-
 
317
    ;mov     esi,8                         ; counter=8
-
 
318
    ;draw_lpanel:                          ; loop label
-
 
319
    ;  int     0x40                        ; call draw black rect
-
 
320
    ;  add     ecx,19 shl 16               ; move rect
-
 
321
    ;  dec     esi                         ; decrement counter
-
 
322
    ;  cmp     esi,0                       ; if counter!=zero
-
 
323
    ;  jne     draw_lpanel                 ; then goto label
-
 
324
    ;  mov     esi,8                       ; else counter=8
-
 
325
    ;  mov     ebx,267 shl 16+14           ; [x] + [size]
-
 
326
    ;  mov     ecx,10 shl 16+14            ; [y] + [size]
-
 
327
    ;  mov     edx,0xF3F3F3                ; RGB
-
 
328
    ;draw_lpanel2:                         ; 2 loop label
-
 
329
    ;  int     0x40                        ; call draw white rect
-
 
330
    ;  add     ecx,19 shl 16               ; move rect
-
 
331
    ;  dec     esi                         ; decrement counter
-
 
332
    ;  cmp     esi,0                       ; if counter!=0
-
 
333
    ;  jne     draw_lpanel2                ; then goto label2
-
 
334
    ;pop     esi                           ; restore esi
-
 
335
    ; draw_left_arrow for button_next_colorsheme
-
 
336
    ;mov     eax,4                         ; Write string
-
 
337
    ;mov     ebx,272 shl 16+13             ; [x] + [y]
-
 
338
    ;mov     ecx,0x0                       ; RGB
-
 
339
    ;mov     edx,larrow                    ; string pointer
-
 
340
    ;mov     esi,1                         ; count symbol
-
 
341
    ;int     0x40                          ; call
-
 
342
    ;mov     eax,38                        ; draw line
-
 
343
    ;mov     ebx,270 shl 16+272            ; [start x] + [end x] 
-
 
344
    ;mov     ecx,16 shl 16+16              ; [start y] + [end y] 
-
 
345
    ;mov     edx,0x0                       ; RGB
-
 
346
    ;int     0x40                          ; call
341
    ret                                   ; return
347
    ret                                   ; return
342
    ;.................................................................................................
348
    ;.................................................................................................
Line 343... Line 349...
343
 
349
 
Line 454... Line 460...
454
    ;.................................................................................................
460
    ;.................................................................................................
455
    mov     eax,14                        ; Ž¯à¥¤¥«ï¥¬ è¨à¨­ã íªà ­  (eax = [xsize]*65536 + [ysize])
461
    mov     eax,14                        ; Ž¯à¥¤¥«ï¥¬ è¨à¨­ã íªà ­  (eax = [xsize]*65536 + [ysize])
456
    int     0x40                          ; xsize = à §¬¥à ¯® £®à¨§®­â «¨ - 1 
462
    int     0x40                          ; xsize = à §¬¥à ¯® £®à¨§®­â «¨ - 1 
457
    mov     ebx,eax                       ;
463
    mov     ebx,eax                       ;
458
    shr     ebx,16                        ; ebx = xsize-1
464
    shr     ebx,16                        ; ebx = xsize-1
459
    ;movzx   edx,ax                       ;; edx = ysize-1 («¨è­¨© ª®¤)
465
    movzx   edx,ax                        ; edx = ysize-1 («¨è­¨© ª®¤)
460
    inc     ebx                           ; ebx = xsize
466
    inc     ebx                           ; ebx = xsize
461
    ;inc     edx                          ;; edx = ysize («¨è­¨© ª®¤)
467
    inc     edx                           ; edx = ysize («¨è­¨© ª®¤)
462
    mov     [desctop_w],ebx
468
    mov     [desctop_w],ebx
-
 
469
    mov     [desctop_h],edx
463
    ret
470
    ret
464
;end_desktop_get
471
;end_desktop_get
Line 465... Line 472...
465
 
472
 
466
mouse_get:
473
mouse_get:
Line 502... Line 509...
502
    mov     ebx,110 shl 16+148            ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
509
    mov     ebx,110 shl 16+148            ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® x [ª-â  x]*65536 + [à §¬¥à]
503
    mov     ecx,9 shl 16+148              ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
510
    mov     ecx,9 shl 16+148              ;  ç «ì­ë¥ ª®®à¤¨­ âë ¯® y [ª-â  y]*65536 + [à §¬¥à]
504
    mov     edx,[sc.work]                 ; 梥â
511
    mov     edx,[sc.work]                 ; 梥â
505
    int     0x40
512
    int     0x40
Line 506... Line 513...
506
 
513
 
507
    ;cmp     [renmode],2
514
    cmp     [renmode],2
508
    ;je      cyrcle_draw
515
    je      cyrcle_draw
509
    ;cmp     [renmode],1
516
    ;cmp     [renmode],1
510
    ;je      picker_draw
517
    ;je      picker_draw
511
    cmp     [renmode],0
518
    cmp     [renmode],0
512
    je      sheme_draw
519
    je      sheme_draw
Line 513... Line 520...
513
    ret
520
    ret
514
 
521
 
515
    ;.................................................................................................
522
    ;.................................................................................................
516
    ; Žâà¨á®¢ª  ªà㣮¢®© ¤¨ £à ¬¬ë
523
    ; Žâà¨á®¢ª  ªà㣮¢®© ¤¨ £à ¬¬ë
-
 
524
    ;.................................................................................................
-
 
525
    cyrcle_draw:
-
 
526
    ;mov     eax,13
-
 
527
    ;mov     edx,0x666666
-
 
528
    ;mov     ebx,108*65536+152
-
 
529
    ;mov     ecx,125*65536+33
-
 
530
    ;mcall
-
 
531
    ;mov     edx,0xF3F3F3
-
 
532
    ;mov     ebx,109*65536+150
-
 
533
    ;mov     ecx,126*65536+31
517
    ;.................................................................................................
534
    ;mcall
-
 
535
 
-
 
536
    ;mov     eax,4                         ; 4 - ¢ë¢¥á⨠áâபã ⥪áâ  ¢ ®ª­®
518
    ;cyrcle_draw:
537
    ;mov     ebx,115 shl 16+131            ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
519
    ;mov     eax,7                         ; 7 - ­®¬¥à ä㭪樨 
538
    ;mov     ecx,0x666666                  ; 0xX0RRGGBB (RR, GG, BB § ¤ îâ 梥â ⥪áâ )
-
 
539
    ;mov     edx,hint                      ; 㪠§ â¥«ì ­  ­ ç «® áâப¨
520
    ;mov     ebx,circle                    ; 㪠§ â¥«ì ­  ¨§®¡à ¦¥­¨¥ ¢ ä®à¬ â¥ BBGGRRBBGGRR... 
540
    ;mov     esi,24                        ; ¢ë¢®¤¨âì esi ᨬ¢®«®¢
-
 
541
    ;mcall
-
 
542
    ;mov     ebx,125 shl 16+144            ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
-
 
543
    ;mov     edx,hint2                     ; 㪠§ â¥«ì ­  ­ ç «® áâப¨
-
 
544
    ;mov     esi,21                        ; ¢ë¢®¤¨âì esi ᨬ¢®«®¢
-
 
545
    ;mcall
-
 
546
 
-
 
547
    mov     eax,13
-
 
548
    mov     edx,0x666666
-
 
549
    mov     ebx,111*65536+145
-
 
550
    mov     ecx,  9*65536+145
-
 
551
    mcall
-
 
552
    ;mov     edx,[color]
-
 
553
    ;mov     ebx,109*65536+150
-
 
554
    ;mov     ecx, 10*65536+150
-
 
555
    ;mcall
-
 
556
    call    mouse_local                   ; ¯®«ãç ¥¬ ª®®à¤¨­ âë ¬ëè¨ ®â­®á¨â¥«ì­® ®ª­ 
-
 
557
    mov     ecx, [mouse_x]                ; § ­®á¨¬ ¢ ॣ¨áâà
-
 
558
    mov     edx, [mouse_y]                ; § ­®á¨¬ ¢ ॣ¨áâà
-
 
559
    cmp     ecx, WIN_W-10
-
 
560
    jg      cyrcle_draw_2
-
 
561
    cmp     edx, WIN_H
-
 
562
    jle     end_cyrcle_draw
-
 
563
 
-
 
564
    cyrcle_draw_2:
-
 
565
    call    desktop_get
-
 
566
    call    mouse_global
-
 
567
 
-
 
568
    mov     ebx,112*65536+11
-
 
569
    mov     esi,0                         ; counter=8
-
 
570
    circle_loop:
-
 
571
      mov     ecx, 10*65536+11
-
 
572
      mov     edi,0
-
 
573
      circle_loop2:
-
 
574
        mov     eax,13
-
 
575
        call    circle_pixel_read
-
 
576
        mcall
-
 
577
        add     ecx,11 shl 16
-
 
578
        inc     edi
-
 
579
        cmp     edi,13
-
 
580
        jne     circle_loop2
-
 
581
 
-
 
582
      add     ebx,11 shl 16
-
 
583
      inc     esi
-
 
584
      cmp     esi,13
-
 
585
      jne     circle_loop
-
 
586
    
-
 
587
    
-
 
588
    mov     eax,13
-
 
589
    mov     edx,0x0
-
 
590
    mov     ebx,177*65536+13
-
 
591
    mov     ecx, 76*65536+13
-
 
592
    mcall
-
 
593
    mov     ecx, [mouse_x]
521
    ;mov     ecx,148 shl 16 + 148          ; [à §¬¥à ¯® ®á¨ x]*65536 + [à §¬¥à ¯® ®á¨ y] 
594
    mov     edx, [mouse_y]
-
 
595
    inc     ecx
-
 
596
    inc     edx
-
 
597
    mov     ebx, edx
-
 
598
    imul    ebx, [desctop_w]
-
 
599
    add     ebx, ecx
-
 
600
    mov     eax, 35
-
 
601
    mcall
-
 
602
    mov     edx,eax
-
 
603
    mov     eax,13
-
 
604
    mov     ebx,178*65536+11
-
 
605
    mov     ecx, 77*65536+11
522
    ;mov     edx,110 shl 16 + 9            ; [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
606
    mcall
-
 
607
    end_cyrcle_draw:
-
 
608
    ret
-
 
609
 
-
 
610
    circle_pixel_read:
-
 
611
    push    ecx
-
 
612
    push    ebx
-
 
613
    push    eax
-
 
614
    mov     ecx, [mouse_x]
-
 
615
    mov     edx, [mouse_y]
-
 
616
    inc     ecx
-
 
617
    add     ecx, esi
-
 
618
    cmp     ecx, 6
-
 
619
    jl      _cpr_exit
-
 
620
    sub     ecx, 6
-
 
621
    inc     edx
-
 
622
    add     edx, edi
-
 
623
    cmp     edx, 6
-
 
624
    jl      _cpr_exit
-
 
625
    sub     edx, 6
-
 
626
 
-
 
627
    mov     ebx, edx
-
 
628
    imul    ebx, [desctop_w]
-
 
629
    add     ebx, ecx
-
 
630
    mov     eax, 35
-
 
631
    mcall
-
 
632
    mov     edx,eax
-
 
633
    pop     eax
-
 
634
    pop     ebx
-
 
635
    pop     ecx
-
 
636
    ret
-
 
637
 
-
 
638
    _cpr_exit:
-
 
639
    mov     edx,0x00000000
-
 
640
    pop     eax
-
 
641
    pop     ebx
Line 523... Line 642...
523
    ;int     0x40
642
    pop     ecx
524
    ;ret
643
    ret
Line 525... Line 644...
525
 
644
 
Line 1077... Line 1196...
1077
	pop ecx
1196
	pop ecx
Line 1078... Line 1197...
1078
 
1197
 
1079
	ret
1198
	ret
Line 1080... Line -...
1080
;end_str_len
-
 
1081
 
-
 
1082
    ;.................................................................................................
-
 
1083
    ; ¢®§¢à é ¥â 㪠§ â¥«ì ­  ¯¥à¢®¥ ¢å®¦¤¥­¨¥ Chr ‚L (¢å®¤->EDI string ; ¢ë室->EAX offset)
-
 
1084
    ;.................................................................................................
-
 
1085
;strscan:
-
 
1086
;    push ecx ; ¤«¨­  áâப¨
-
 
1087
;    push ebx ; 㪠§ â¥«ì ­  ᨬ¢®« (bl)
-
 
1088
;    push esi ; ¯à¨£®¤¨âáï
-
 
1089
;    push edi ; 㪠§ â¥«ì ­  áâà®ªã  
-
 
1090
;    mov esi, edi
-
 
1091
;    mov al,bl
-
 
1092
;    repne scasb
-
 
1093
;    sub edi, esi
-
 
1094
;    mov eax, edi
-
 
1095
;    dec eax
-
 
1096
;    pop edi
-
 
1097
;    pop esi
-
 
1098
;    pop ebx
-
 
1099
;    pop ecx
-
 
1100
;    ret
-
 
1101
;end;
-
 
Line 1102... Line 1199...
1102
 
1199
;end_str_len
1103
 
1200
 
1104
 
1201
 
1105
 
1202
 
1106
;#___________________________________________________________________________________________________
1203
;#___________________________________________________________________________________________________
1107
;****************************************************************************************************|
1204
;****************************************************************************************************|
1108
; ‹ŽŠ ……Œ…›• ˆ ŠŽ‘’€’                                                                         |
1205
; ‹ŽŠ ……Œ…›• ˆ ŠŽ‘’€’                                                                         |
1109
;----------------------------------------------------------------------------------------------------/
1206
;----------------------------------------------------------------------------------------------------/
1110
 
1207
circle:
1111
    cm          db 12 dup(0)
1208
    cm          db 12 dup(0)
1112
    color       dd 00000000h              ; åà ­¨â §­ ç¥­¨¥ ¢ë¡à ­­®£® 梥â 
1209
    color       dd 00000000h              ; åà ­¨â §­ ç¥­¨¥ ¢ë¡à ­­®£® 梥â 
1113
    color2      dd 00FFFFFFh              ; åà ­¨â §­ ç¥­¨¥ ¢â®à®£® ¢ë¡à ­­®£® 梥â 
1210
    color2      dd 00FFFFFFh              ; åà ­¨â §­ ç¥­¨¥ ¢â®à®£® ¢ë¡à ­­®£® 梥â 
-
 
1211
    mouse_x     dd 0                      ; åà ­¨â £«®¡ «ì­ãî å ª®®à¤¨­ âã ¬ëè¨
1114
    mouse_x     dd 0                      ; åà ­¨â £«®¡ «ì­ãî å ª®®à¤¨­ âã ¬ëè¨
1212
    mouse_y     dd 0                      ; åà ­¨â £«®¡ «ì­ãî ã ª®®à¤¨­ âã ¬ëè¨
1115
    mouse_y     dd 0                      ; åà ­¨â £«®¡ «ì­ãî ã ª®®à¤¨­ âã ¬ëè¨
1213
    mouse_f     dd 0                      ; åà ­¨â ¤ ­­ë¥ ® ⮬ ª ª ï ª­®¯ª  ¬ëè¨ ¡ë«  ­ ¦ â 
1116
    mouse_f     dd 0                      ; åà ­¨â ¤ ­­ë¥ ® ⮬ ª ª ï ª­®¯ª  ¬ëè¨ ¡ë«  ­ ¦ â 
1214
    desctop_w   dd 0                      ; åà ­¨â è¨à¨­ã íªà ­ 
1117
    desctop_w   dd 0                      ; åà ­¨â è¨à¨­ã íªà ­ 
1215
    desctop_h   dd 0                      ; åà ­¨â ¢ëá®âã íªà ­ 
1118
    sc          system_colors             ; åà ­¨â áâàãªâãàã á¨á⥬­ëå 梥⮢ ᪨­ 
1216
    sc          system_colors             ; åà ­¨â áâàãªâãàã á¨á⥬­ëå 梥⮢ ᪨­ 
1119
    title       db 'Palitra v0.6',0       ; åà ­¨â ¨¬ï ¯à®£à ¬¬ë
1217
    title       db 'Palitra v0.7',0       ; åà ­¨â ¨¬ï ¯à®£à ¬¬ë
1120
    hidden      db 'Hidden',0
1218
    hidden      db 'Hidden',0
Line 1130... Line 1228...
1130
    pnext       dd 0                      ; áç¥â稪 ¯¥à¥ª«î祭¨ï ¯ «¨âàë
1228
    pnext       dd 0                      ; áç¥â稪 ¯¥à¥ª«î祭¨ï ¯ «¨âàë
1131
    renmode     dd 0                      ; ०¨¬ ®âà¨á®¢ª¨ (1-梥⮢ ï á奬 ,2-¯¨¯¥âª ,3-ªà㣮¢ ï)
1229
    renmode     dd 0                      ; ०¨¬ ®âà¨á®¢ª¨ (1-梥⮢ ï á奬 ,2-¯¨¯¥âª ,3-ªà㣮¢ ï)
1132
    runmode     dd 1                      ; ०¨¬ § ¯ã᪠ (1-normal, 2-hidden, 3-colordialog)
1230
    runmode     dd 1                      ; ०¨¬ § ¯ã᪠ (1-normal, 2-hidden, 3-colordialog)
1133
    params      db 20 dup(0)              ; ¯à¨ñ¬ ¯ à ¬¥â஢
1231
    params      db 20 dup(0)              ; ¯à¨ñ¬ ¯ à ¬¥â஢
1134
    params_c    db 9  dup(0)              ; ¯à¨ñ¬­¨ª ¤«ï 梥â 
1232
    params_c    db 9  dup(0)              ; ¯à¨ñ¬­¨ª ¤«ï 梥â 
-
 
1233
 
-
 
1234
 
-
 
1235
 
1135
I_END:
1236
I_END: