2012-11-05 13:38:32 +01:00
;#___________________________________________________________________________________________________
;****************************************************************************************************|
; Program Palitra (c) Sergei Steshin (Akyltist) |
;----------------------------------------------------------------------------------------------------|
2012-12-08 13:51:24 +01:00
;; Charset:DOS-866 Font:Courier New Size:9pt |
2012-12-07 04:41:42 +01:00
;.....................................................................................................
2012-11-05 13:38:32 +01:00
;; compiler: FASM 1.69.31 |
2012-11-10 13:29:41 +01:00
;; version: 0.3.0 |
;; last update: 08/11/2012 |
2012-11-05 13:38:32 +01:00
;; e-mail: dr.steshin@gmail.com |
;.....................................................................................................
;; History: |
2012-12-08 13:51:24 +01:00
;; 0.1.0 - <20> <> ࢠ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ணࠬ<E0AEA3> <E0A0AC> . |
;; 0.2.0 - <20> <> <EFBFBD> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 訩 <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ᥫ<EFBFBD> . |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> , <20> <> <EFBFBD> ॣ㫨<E3ABA8> <E0AEA2> <EFBFBD> <EFBFBD> rgb <20> <> <EFBFBD> ⠢<EFBFBD> <E2A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5> <20> <20> 뢮<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ⠢<EFBFBD> <E2A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
;; - <20> <> ࠭ <20> 뢮<EFBFBD> 梥<> <E6A2A5> <20> <20> <> <EFBFBD> <EFBFBD> ୮<EFBFBD> <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <20> <> <EFBFBD> 㠫쭮<E3A0AB> <ECADAE> <EFBFBD> <EFBFBD> ). |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ᬥ⨪<E1ACA5> . |
;; 0.3.0 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ४<EFBFBD> <E0A5AA> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 梥⮢<E6A2A5> <E2AEA2> <20> 奬 (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> NEXT) |
;; - <20> <> <EFBFBD> <EFBFBD> 襭<EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> , <20> ந<EFBFBD> <E0AEA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ࠡ<EFBFBD> ⪠ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> 冷<EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> . |
;; - <20> <> <20> <> ⮪ <20> 梥⮢<E6A2A5> <E2AEA2> <20> 奬<EFBFBD> 㬥<> <E3ACA5> 襭<EFBFBD> <20> 6 <20> <> 4 (<28> <> <EFBFBD> ⭮<EFBFBD> <E2ADAE> <EFBFBD> 256, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> 㡫<EFBFBD> <EFBFBD> <E0AEA2> <EFBFBD> <EFBFBD> 梥<> <E6A2A5> ).|
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ᬥ⨪<E1ACA5> . |
;; 0.4.0 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ४<EFBFBD> <E0A5AA> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 梥⠬<E6A2A5> |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭮<EFBFBD> ॣ㫨<E3ABA8> <E0AEA2> <EFBFBD> <EFBFBD> <20> <EFBFBD> <E0AEA7> 筮<EFBFBD> <E7ADAE> <EFBFBD> (<28> <> <EFBFBD> <20> <> <EFBFBD> 㠫<EFBFBD> <E3A0AB> <EFBFBD> 樨). |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> rgba <20> <> 業<> <E6A5AD> <EFBFBD> , <20> <20> <> <EFBFBD> <EFBFBD> ᨬ<EFBFBD> <E1A8AC> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
;; - <20> <> ᬥ<EFBFBD> <E1ACA5> <EFBFBD> <EFBFBD> ᪨<EFBFBD> <20> ࠢ<EFBFBD> <E0A0A2> . |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ⨬<EFBFBD> <E2A8AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
;; 0.5.0 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᬥ<> <E1ACA5> 䮭<> ࠡ<> 祣<EFBFBD> <20> ⮫<EFBFBD> (<28> <> Leency). |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䮭<> ࠡ<> 祣<EFBFBD> <20> ⮫<EFBFBD> <20> ࠤ<EFBFBD> <E0A0A4> <EFBFBD> ⭮<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
;; - <20> <> ᬥ<EFBFBD> <E1ACA5> <EFBFBD> <EFBFBD> ᪨<EFBFBD> <20> ࠢ<EFBFBD> <E0A0A2> . |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⨬<EFBFBD> <E2A8AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
2012-12-12 18:01:34 +01:00
;; 0.6.0 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᪠ <20> <20> <> ࠬ<EFBFBD> <E0A0AC> ࠬ<EFBFBD> |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ० <> <E0A5A6> H (hidden) <20> ந<EFBFBD> <E0AEA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䮭<> ࠡ<> 祣<EFBFBD> <20> ⮫<EFBFBD> <20> ࠤ<EFBFBD> <E0A0A4> <EFBFBD> ⭮<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
;; - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⨬<EFBFBD> <E2A8AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . |
2013-04-06 12:12:49 +02:00
;; 0.7.0 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⪠ - <20> 롮<EFBFBD> <20> <> <20> ।<EFBFBD> <E0A5A4> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> |
2012-11-05 13:38:32 +01:00
;.....................................................................................................
;; All rights reserved. |
;; |
;; Redistribution and use in source and binary forms, with or without modification, are permitted |
;; provided that the following conditions are met: |
;; * Redistributions of source code must retain the above copyright notice, this list of |
;; conditions and the following disclaimer. |
;; * Redistributions in binary form must reproduce the above copyright notice, this list of |
;; conditions and the following disclaimer in the documentation and/or other materials |
;; provided with the distribution. |
;; * Neither the name of the <organization> nor the names of its contributors may be used to |
;; endorse or promote products derived from this software without specific prior written |
;; permission. |
;; |
;; THIS SOFTWARE IS PROVIDED BY Sergei Steshin ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, |
;; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A |
;; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <copyright holder> BE LIABLE FOR ANY DIRECT, |
;; INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
;; TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
;; LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
;....................................................................................................|
;#___________________________________________________________________________________________________
;****************************************************************************************************|
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> |
2012-11-05 13:38:32 +01:00
;----------------------------------------------------------------------------------------------------/
use32
org 0x0
db 'MENUET01'
dd 0x01
dd START
dd I_END
2013-04-06 12:12:49 +02:00
dd I_END + 4096
dd I_END + 4096
2012-12-12 18:01:34 +01:00
dd params
2012-11-05 13:38:32 +01:00
dd 0x0
2012-12-08 13:51:24 +01:00
include '..\..\..\macros.inc'
2012-12-12 18:01:34 +01:00
WIN_W equ 295 ; <20> <> ਭ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
WIN_H equ 195 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
WIN_X equ 250 ; <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD>
WIN_Y equ 190 ; <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
2013-04-06 12:12:49 +02:00
panel:
file "panel.raw"
2012-11-05 13:38:32 +01:00
START:
2013-04-06 12:12:49 +02:00
mcall 68 , 11 ; <20> <> <EFBFBD> 樠<EFBFBD> <E6A8A0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
mcall 40 , 0x27 ; <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ᮡ<> ⨩
include 'params_init.inc' ; <20> <> ࠡ<EFBFBD> ⪠ <20> <> ࠬ<EFBFBD> <E0A0AC> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ப<EFBFBD>
2012-12-12 18:01:34 +01:00
2012-11-05 13:38:32 +01:00
;#___________________________________________________________________________________________________
;****************************************************************************************************|
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> |
2012-11-05 13:38:32 +01:00
;----------------------------------------------------------------------------------------------------/
red:
2012-12-08 13:51:24 +01:00
call draw_main ; <20> <> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> <EFBFBD> <EFBFBD> <20> ਫ<EFBFBD> <E0A8AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
still:
2012-12-08 13:51:24 +01:00
mcall 10 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 10 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
cmp eax , 1 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ?
je red ; <20> <20> <> - <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> red
cmp eax , 2 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ?
je key ; <20> <20> <> - <20> <> key
cmp eax , 3 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ?
je button ; <20> <20> <> - <20> <> button
2013-04-06 12:12:49 +02:00
cmp eax , 6 ; ᮡ<> ⨥ <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
je mouse ; <20> <20> <> - <20> <> button
2012-12-08 13:51:24 +01:00
jmp still ; <20> <20> <> 㣮<EFBFBD> ᮡ<> ⨥ - <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
2012-11-05 13:38:32 +01:00
;end_still
2012-12-08 13:51:24 +01:00
key: ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mcall 2 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 2 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ᨬ<> <E1A8AC> <EFBFBD> <EFBFBD> (<28> ah) (<28> <> <EFBFBD> <20> <20> ਭ樯<E0A8AD> <20> <> <20> 㦭<EFBFBD> )
jmp still ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
2012-11-05 13:38:32 +01:00
;end_key
2013-04-06 12:12:49 +02:00
mouse:
mov eax ,[ renmode ]
cmp eax , 2
jnz still
call cyrcle_draw
mcall 37 , 2
cmp al , 100b
jne still
mov [ color ], edx
call draw_result
jmp still ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
;end_mouse
2012-11-05 13:38:32 +01:00
button:
2012-12-08 13:51:24 +01:00
mcall 17 ; 17 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䨪<EFBFBD> <E4A8AA> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⮩ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cmp ah , 1 ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> 1,
jz bexit ; <20> <> 室<EFBFBD> <E5AEA4>
;<3B> <> ࠡ<EFBFBD> ⪠ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Next
cmp ah , 12 ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> NEXT
jne next_bg ; <20> <> 室<EFBFBD> <E5AEA4>
inc [ pnext ] ; 㢥<> <E3A2A5> 稢<EFBFBD> <E7A8A2> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⨨ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov [ renmode ], 0 ; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> 梥⮢<E6A2A5> <E2AEA2> <20> 奬<EFBFBD>
mov eax ,[ pnext ] ; <20> <> <EFBFBD> <EFBFBD> ᨬ <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <20> <> <EFBFBD>
cmp al , 6 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFA2AB> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⢮<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jne next_redraw ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ᨬ㬠 <20> <> <20> <> <20> 맮<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2>
xor eax , eax ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 塞 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> default
mov [ pnext ], eax ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᨫ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> default
2012-11-10 13:29:41 +01:00
next_redraw:
2012-12-08 13:51:24 +01:00
call draw_palitra ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jmp still ; <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
next_bg:
cmp ah , 14 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> BACKGROUND
jne circle_bg ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> 室<EFBFBD> <E5AEA4>
call set_background ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䮭
jmp still ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
circle_bg:
cmp ah , 15 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jne next_end ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> 室<EFBFBD> <E5AEA4>
2013-04-06 12:12:49 +02:00
mov [ renmode ], 2 ; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> 㣮<EFBFBD> <E3A3AE> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-12-08 13:51:24 +01:00
call draw_palitra ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jmp still ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
next_end:
2012-12-07 04:41:42 +01:00
cmp ah , 13 ; COLOR SWAP
jne color_swap_end
push [ color2 ]
push [ color ]
pop [ color2 ]
pop [ color ]
call draw_result
2012-12-08 13:51:24 +01:00
jmp still ; <20> <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
2012-12-07 04:41:42 +01:00
color_swap_end:
2012-12-08 13:51:24 +01:00
cmp ah , 7 ; <20> <EFBFBD> <E0AEA2> 塞 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ID=7
jne color_button ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
call mouse_get ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> <20> <> ࠡ<EFBFBD> <E0A0A1> 稪 <20> <> <EFBFBD> <EFBFBD> , <20> ⮡<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> 梥<> <E6A2A5> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jmp still ; <20> <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
color_button: ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> RGBA
push eax ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD>
call mouse_local ; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD>
mov ebx , 137 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ࠭<EFBFBD> <E0A0AD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <20> <> <20>
mov ecx ,[ mouse_y ] ; <20> <> <EFBFBD> <EFBFBD> ᨬ <20> <20> <> <EFBFBD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20>
sub ebx , ecx ; <20> <> 室<EFBFBD> <E5AEA4> ࠧ<> <E0A0A7> <EFBFBD> <EFBFBD> <EFBFBD> (<28> .<2E> . <20> 㤠 ᬥ頥<E1ACA5> <E9A0A5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭮<EFBFBD> )
mov ecx , 3 ; <20> <> <EFBFBD> <EFBFBD> ᨬ <20> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 3 (256/3=85, <20> <> <EFBFBD> 85-<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> )
imul ecx , ebx ; <20> <> 室<EFBFBD> <E5AEA4> <20> <> ⨭<EFBFBD> <E2A8AD> <EFBFBD> <20> <> ࠬ<EFBFBD> <E0A0AC> <EFBFBD> 梥<> <E6A2A5> <20> <20> <> <EFBFBD> ⮬ <20> <> <EFBFBD> <EFBFBD> ⠡<EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> ---+
pop eax ; <20> <> <EFBFBD> <EFBFBD> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> :
;red_button: ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ४<EFBFBD> <E0A5AA> <EFBFBD> :
2012-12-07 04:41:42 +01:00
cmp ah , 8 ; ID=8 :
2012-12-08 13:51:24 +01:00
jne green_button ; <20> <20> <> <EFBFBD> , <20> <> <20> <EFBFBD> <E0AEA2> 塞 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ४<EFBFBD> <E0A5AA> <EFBFBD> :
mov [ cred ], cl ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ᢠ<EFBFBD> <E1A2A0> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> , <20> <> <EFBFBD> ᭮<EFBFBD> <E1ADAE> 梥<> <E6A2A5> ᯥ<> <E1AFA5> <EFBFBD> <EFBFBD> <------+
call set_spectr ; <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᯥ<> <E1AFA5> <EFBFBD>
jmp still ; <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
green_button:
cmp ah , 9
jne bl ue_button
mov [ cgreen ], cl
call set_spectr
2012-12-08 13:51:24 +01:00
jmp still ; <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
blue_button:
cmp ah , 10
2012-12-07 04:41:42 +01:00
jne al pha_button
2012-11-05 13:38:32 +01:00
mov [ cblue ], cl
call set_spectr
2012-12-08 13:51:24 +01:00
jmp still ; <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
2012-12-07 04:41:42 +01:00
alpha_button:
cmp ah , 11
jne still
mov [ calpha ], cl
call set_spectr
2012-12-08 13:51:24 +01:00
jmp still ; <20> 室<EFBFBD> <E5AEA4> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㣮<EFBFBD> <E3A3AE> ᮡ<> <E1AEA1> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
bexit:
2012-12-08 13:51:24 +01:00
mcall - 1 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> ணࠬ<E0AEA3> <E0A0AC>
2012-11-05 13:38:32 +01:00
;end_button
;#___________________________________________________________________________________________________
;****************************************************************************************************|
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> |
2012-11-05 13:38:32 +01:00
;----------------------------------------------------------------------------------------------------/
2012-12-08 13:51:24 +01:00
draw_main:
mov eax , 12 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 12: <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> , <20> <> <EFBFBD> <20> 㤥<EFBFBD> <20> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
mov ebx , 1 ; 1,<2C> <> 砫<EFBFBD> <20> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD>
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
mov eax , 48 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 48 - <20> ⨫<EFBFBD> <20> ⮡ࠦ<E2AEA1> <E0A0A6> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
mov ebx , 3 ; <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 3 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5> <20> <> <EFBFBD> <EFBFBD> .
mov ecx , sc ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⥫<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ࠧ<> <E0A0A7> edx <20> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov edx , si zeof.system_colors ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⠡<> <E2A0A1> <EFBFBD> <EFBFBD> 梥⮢ (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 40 <20> <> <EFBFBD> <EFBFBD> )
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
mov eax , 48 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 48 - <20> ⨫<EFBFBD> <20> ⮡ࠦ<E2AEA1> <E0A0A6> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> .
mov ebx , 4 ; <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 4 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> eax = <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᪨<> <E1AAA8> .
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
mov ecx , eax ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᪨<> <E1AAA8>
2012-12-12 18:01:34 +01:00
mov edi ,[ runmode ]
cmp edi , 2
jne no_hiddenmode
mov edi , hidden
jmp set_title
no_hiddenmode:
cmp edi , 3
jne no_dialogmode
mov edi , hidden
jmp set_title
no_dialogmode:
mov edi , title ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
set_title:
2012-12-08 13:51:24 +01:00
xor eax , eax ; <20> <> <EFBFBD> 頥<EFBFBD> eax (mov eax,0) (<28> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 0)
mov ebx , WIN_X shl 16 + WIN_W ; [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> <20> <> <20> <> <EFBFBD> x]
add ecx , WIN_Y shl 16 + WIN_H ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᪨<> <E1AAA8> + [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> <20> <> y] (168 <20> <> <EFBFBD> <20> <> <EFBFBD> ᨨ 0.2)
mov edx ,[ sc.work ] ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ⨫<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> 䮫<EFBFBD> <E4AEAB>
or edx , 0x34000000 ; <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ᪨<> <E1AAA8> <EFBFBD> 䨪<> <E4A8AA> <EFBFBD> <E0AEA2> <EFBFBD> <EFBFBD> <EFBFBD> ࠧ<> <E0A0A7>
2012-12-12 18:01:34 +01:00
2012-12-08 13:51:24 +01:00
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
call draw_palitra ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
call draw_result ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov eax , 8 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 8 - <20> <> ।<EFBFBD> <E0A5A4> <EFBFBD> <EFBFBD> <EFBFBD> /㤠<> <E3A4A0> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 110 shl 16 + 147 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 9 shl 16 + 147 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov edx , 0x60000007 ; <20> <> 砫쭮<E7A0AB> ID <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> - 0xXYnnnnnn
2012-11-10 13:29:41 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
mov ebx , 13 shl 16 + 12 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-10 13:29:41 +01:00
mov edx , 0x60000008 ; ID = 8
2012-12-08 13:51:24 +01:00
mov ecx , 51 shl 16 + 85 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <> <E1ABA0> <EFBFBD> red
add ebx , 23 shl 16 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 塞
2012-11-10 13:29:41 +01:00
inc edx ; ID = 9
2012-12-08 13:51:24 +01:00
int 0x40 ; <20> <> <EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <> <E1ABA0> <EFBFBD> green
add ebx , 23 shl 16 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 塞
2012-11-10 13:29:41 +01:00
inc edx ; ID = 10
2012-12-08 13:51:24 +01:00
int 0x40 ; <20> <> <EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <> <E1ABA0> <EFBFBD> blue
add ebx , 23 shl 16 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 塞
2012-12-07 04:41:42 +01:00
inc edx ; ID = 11
2012-12-08 13:51:24 +01:00
int 0x40 ; <20> <> <EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <> <E1ABA0> <EFBFBD> alpha
2012-12-07 04:41:42 +01:00
2012-12-08 13:51:24 +01:00
mov eax , 8 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 8 - <20> <> ।<EFBFBD> <E0A5A4> <EFBFBD> <EFBFBD> <EFBFBD> /㤠<> <E3A4A0> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> )
mov ebx , 11 shl 16 + 20 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 12 shl 16 + 20 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-12-07 04:41:42 +01:00
mov edx , 0x6000000D ; ID = 13
int 0x40
2012-11-10 13:29:41 +01:00
2012-12-08 13:51:24 +01:00
call draw_bottom_panel
call draw_left_panel
2012-11-05 13:38:32 +01:00
2012-12-08 13:51:24 +01:00
mov eax , 12 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 12: <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> , <20> <> <EFBFBD> <20> 㤥<EFBFBD> <20> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
mov ebx , 2 ; 2 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD>
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
ret
2012-11-05 13:38:32 +01:00
;#___________________________________________________________________________________________________
;****************************************************************************************************|
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> |
2012-11-05 13:38:32 +01:00
;----------------------------------------------------------------------------------------------------/
2012-12-08 13:51:24 +01:00
;------------------------------------------------------------------------------------------------+
draw_left_panel: ; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
;.................................................................................................
mov eax , 8 ; button_next_colorsheme
mov ebx , 266 shl 16 + 16 ; [x] + [size]
mov ecx , 9 shl 16 + 16 ; [y] + [size]
mov edx , 0x6000000C ; ID = 12
mov esi ,[ sc.work_button ] ; RGB
int 0x40 ; call
2013-04-06 12:12:49 +02:00
; circle diagram
add ecx , 19 shl 16 ; move rect
mov edx , 0x6000000F ; ID = 15
2012-12-08 13:51:24 +01:00
int 0x40 ; call
2013-04-06 12:12:49 +02:00
mov eax , 7 ; 7 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> 㭪樨
mov ebx , panel ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD> <20> <20> <> ଠ <EFBFBD> <E0ACA0> BBGGRRBBGGRR...
mov ecx , 16 shl 16 + 149 ; [ࠧ<> <E0A0A7> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> <20> <> <20> <> <EFBFBD> y]
mov edx , 266 shl 16 + 9 ; [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> y]
int 0x40
;mov eax,13 ; draw rect
;mov ebx,266 shl 16+16 ; [x] + [size]
;mov ecx,9 shl 16+16 ; [y] + [size]
;mov edx,0x666666 ; RGB
;push esi ; backup esi
;mov esi,8 ; counter=8
;draw_lpanel: ; loop label
; int 0x40 ; call draw black rect
; add ecx,19 shl 16 ; move rect
; dec esi ; decrement counter
; cmp esi,0 ; if counter!=zero
; jne draw_lpanel ; then goto label
; mov esi,8 ; else counter=8
; mov ebx,267 shl 16+14 ; [x] + [size]
; mov ecx,10 shl 16+14 ; [y] + [size]
; mov edx,0xF3F3F3 ; RGB
;draw_lpanel2: ; 2 loop label
; int 0x40 ; call draw white rect
; add ecx,19 shl 16 ; move rect
; dec esi ; decrement counter
; cmp esi,0 ; if counter!=0
; jne draw_lpanel2 ; then goto label2
;pop esi ; restore esi
; draw_left_arrow for button_next_colorsheme
;mov eax,4 ; Write string
;mov ebx,272 shl 16+13 ; [x] + [y]
;mov ecx,0x0 ; RGB
;mov edx,larrow ; string pointer
;mov esi,1 ; count symbol
;int 0x40 ; call
;mov eax,38 ; draw line
;mov ebx,270 shl 16+272 ; [start x] + [end x]
;mov ecx,16 shl 16+16 ; [start y] + [end y]
;mov edx,0x0 ; RGB
;int 0x40 ; call
2012-12-08 13:51:24 +01:00
ret ; return
;.................................................................................................
;------------------------------------------------------------------------------------------------+
draw_bottom_panel: ; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
;.................................................................................................
mov eax , 8 ; draw button
mov ebx , 92 shl 16 + 100 ; [x] + [size]
mov ecx , 169 shl 16 + 16 ; [y] + [size]
mov edx , 14 ; ID = 14
mov esi ,[ sc.work_button ] ; RGB
int 0x40 ; call
mov eax , 4 ; Write string
mov ebx , 113 shl 16 + 174 ; [x] + [y]
mov ecx ,[ sc.work_button_text ] ; RGB
mov edx , bground ; string pointer
mov esi , 10 ; count symbol
int 0x40 ; call
mov eax , 38 ; draw line
mov ebx , 4 shl 16 + 282 ; [start x] + [end x]
mov ecx , 163 shl 16 + 163 ; [start y] + [end y]
mov edx , 0x00666666 ; RGB
int 0x40 ; call
ret ; return
;.................................................................................................
2012-11-05 13:38:32 +01:00
mouse_global:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 37 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 37 - ࠡ<> <E0A0A1> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 0 ; <20> <> <EFBFBD> <20> 㦭<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD>
int 0x40 ; eax = x*65536 + y, (x,y)=<3D> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
mov ecx , eax ;
shr ecx , 16 ; ecx = x+1
movzx edx , ax ; edx = y+1
dec ecx ; ecx = x
dec edx ; edx = y
mov [ mouse_x ], ecx ; mouse_x = x
mov [ mouse_y ], edx ; mouse_y = y
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_mouse_global
mouse_local:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ⭮<EFBFBD> <E2ADAE> ⥫쭮 <20> <> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 37 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 37 - ࠡ<> <E0A0A1> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 1 ; <20> <> <EFBFBD> <20> 㦭<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD>
int 0x40 ; eax = x*65536 + y, (x,y)=<3D> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
mov ecx , eax ;
shr ecx , 16 ; ecx = x+1
movzx edx , ax ; edx = y+1
dec ecx ; ecx = x
dec edx ; edx = y
mov [ mouse_x ], ecx ; mouse_x = x
mov [ mouse_y ], edx ; mouse_y = y
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_mouse_local
2012-12-08 13:51:24 +01:00
set_background:
;.................................................................................................
; <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䮭 ࠡ<> 祣<EFBFBD> <20> ⮫<EFBFBD>
;.................................................................................................
mov eax , 15 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 15 - ࠡ<> <E0A0A1> <EFBFBD> <20> 䮭<> <E4AEAD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 䨪<EFBFBD> <E4A8AA>
mov ebx , 4 ; <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 4 - <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> ० <> <E0A5A6> <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> 䮭<> .
mov ecx , 2 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (1)
int 0x40 ; <20> <> <EFBFBD> 뢠<EFBFBD> <EBA2A0>
mov eax , 15 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 15 - ࠡ<> <E0A0A1> <EFBFBD> <20> 䮭<> <E4AEAD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 䨪<EFBFBD> <E4A8AA>
mov ebx , 1 ; <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 1 - <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> ࠧ<> <E0A0A7> <EFBFBD> 䮭<> <E4AEAD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD> .
mov ecx , 2 ; <20> <> ਭ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
mov edx , 2 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
int 0x40 ; <20> <> <EFBFBD> 뢠<EFBFBD> <EBA2A0>
mov eax ,[ color ]
mov [ cm + 0 ], al
mov [ cm + 9 ], al
shr eax , 8
mov [ cm + 1 ], al
mov [ cm + 10 ], al
shr eax , 8
mov [ cm + 2 ], al
mov [ cm + 11 ], al
mov eax ,[ color2 ]
mov [ cm + 3 ], al
mov [ cm + 6 ], al
shr eax , 8
mov [ cm + 4 ], al
mov [ cm + 7 ], al
shr eax , 8
mov [ cm + 5 ], al
mov [ cm + 8 ], al
mov eax , 15 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 15 - ࠡ<> <E0A0A1> <EFBFBD> <20> 䮭<> <E4AEAD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 䨪<EFBFBD> <E4A8AA>
mov ebx , 5 ; <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 5 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ᥫ<EFBFBD> <E1A5AB> <20> <> 䮭.
mov ecx , cm ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⥫<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> ଠ <EFBFBD> <E0ACA0> BBGGRRBBGGRR
mov edx , 0 ; C<> <43> 饭<EFBFBD> <E9A5AD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䮭<> <E4AEAD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
mov esi , 3 * 4 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> = 3 * <20> <> <20> <> <EFBFBD> ᥫ<EFBFBD> <E1A5AB>
int 0x40 ; <20> <> <EFBFBD> 뢠<EFBFBD> <EBA2A0>
mov eax , 15 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 15 - ࠡ<> <E0A0A1> <EFBFBD> <20> 䮭<> <E4AEAD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 䨪<EFBFBD> <E4A8AA>
mov ebx , 3 ; <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 3 - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> 䮭.
int 0x40 ; <20> <> <EFBFBD> 뢠<EFBFBD> <EBA2A0>
ret
;end_set_background
2012-11-05 13:38:32 +01:00
desktop_get:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> ।<EFBFBD> <E0A5A4> 塞 <20> <> ਭ<EFBFBD> <20> <> ࠭<EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 14 ; <20> <> ।<EFBFBD> <E0A5A4> 塞 <20> <> ਭ<EFBFBD> <20> <> ࠭<EFBFBD> (eax = [xsize]*65536 + [ysize])
int 0x40 ; xsize = ࠧ<> <E0A0A7> <EFBFBD> <20> <> <20> <> ਧ<EFBFBD> <E0A8A7> ⠫<EFBFBD> - 1
2012-11-10 13:29:41 +01:00
mov ebx , eax ;
shr ebx , 16 ; ebx = xsize-1
2013-04-06 12:12:49 +02:00
movzx edx , ax ; edx = ysize-1 (<28> <> 譨<EFBFBD> <20> <> <EFBFBD> )
2012-11-10 13:29:41 +01:00
inc ebx ; ebx = xsize
2013-04-06 12:12:49 +02:00
inc edx ; edx = ysize (<28> <> 譨<EFBFBD> <20> <> <EFBFBD> )
2012-11-05 13:38:32 +01:00
mov [ desctop_w ], ebx
2013-04-06 12:12:49 +02:00
mov [ desctop_h ], edx
2012-11-05 13:38:32 +01:00
ret
;end_desktop_get
mouse_get:
2012-12-08 13:51:24 +01:00
mov esi , 2 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : 䫠<> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 横<EFBFBD> <E6A8AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
call mouse_global
call desktop_get
2012-12-08 13:51:24 +01:00
re_mouse_loop: ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> ⪠ <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
mov ebx ,[ desctop_w ]
2012-11-10 13:29:41 +01:00
imul ebx ,[ mouse_y ] ; ebx = y*xsize
add ebx ,[ mouse_x ] ; ebx = y*xsize+x
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> ६ 梥<> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> ६<EFBFBD> <E0A5AC> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 35 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5>
;mov ebx,ecx ;; ebx = y*xsize+x (<28> <> 譨<EFBFBD> <20> <> <EFBFBD> )
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> 梥<> <20> eax
cmp eax ,[ sc.work ] ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> 䮭<> <E4AEAD> <20> ਫ<EFBFBD> <E0A8AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
je mouse_err ; <20> <20> <> <EFBFBD> <20> <> - <20> <> <20> <> 祣<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cmp eax , 0x222222 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> 梥⮬ <20> <> ⪨
je mouse_err ; <20> <20> <> <EFBFBD> <20> <> - <20> <> <20> <> 祣<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jmp mouse_set ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> 룠<EFBFBD> <EBA3A0> <20> ⮡<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> <20> <> ⪨
mouse_err: ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 䮭
inc [ mouse_y ] ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : ᬥ頥<E1ACA5> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᭠砫<E1ADA0> <20> <> <20>
inc [ mouse_x ] ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : ᬥ頥<E1ACA5> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ⮬ <20> <> <20>
dec esi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 蠥<EFBFBD> 䫠<>
cmp esi , 0 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> 㫥<EFBFBD>
jz mouse_exit ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <20> <> <EFBFBD> <EFBFBD> <20> <> ᤥ<> <E1A4A5> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
jmp re_mouse_loop ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ᥫ<EFBFBD> <E1A5AB> <EFBFBD> <20> <> <EFBFBD> ᥫ<EFBFBD>
2012-11-05 13:38:32 +01:00
mouse_set:
2012-12-08 13:51:24 +01:00
mov [ color ], eax ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 梥<>
call draw_result ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
mouse_exit:
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_mouse_get----------------------------------------------------------------------------------------
draw_palitra:
2012-12-08 13:51:24 +01:00
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
mov ebx , 110 shl 16 + 148 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 9 shl 16 + 148 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov edx ,[ sc.work ] ; 梥<>
int 0x40
2013-04-06 12:12:49 +02:00
cmp [ renmode ], 2
je cyrcle_draw
2012-12-08 13:51:24 +01:00
;cmp [renmode],1
;je picker_draw
cmp [ renmode ], 0
je sheme_draw
ret
;.................................................................................................
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> 㣮<EFBFBD> <E3A3AE> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠬ<EFBFBD> <E0A0AC>
;.................................................................................................
2013-04-06 12:12:49 +02:00
cyrcle_draw:
;mov eax,13
;mov edx,0x666666
;mov ebx,108*65536+152
;mov ecx,125*65536+33
;mcall
;mov edx,0xF3F3F3
;mov ebx,109*65536+150
;mov ecx,126*65536+31
;mcall
;mov eax,4 ; 4 - <20> 뢥<EFBFBD> <EBA2A5> <EFBFBD> <20> <> ப<EFBFBD> ⥪<> <E2A5AA> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD>
;mov ebx,115 shl 16+131 ; [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> y]
;mov ecx,0x666666 ; 0xX0RRGGBB (RR, GG, BB <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> ⥪<> <E2A5AA> <EFBFBD> )
;mov edx,hint ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> 砫<EFBFBD> <20> <> ப<EFBFBD>
;mov esi,24 ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> <EFBFBD> esi ᨬ<> <E1A8AC> <EFBFBD> <EFBFBD> <EFBFBD>
;mcall
;mov ebx,125 shl 16+144 ; [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> y]
;mov edx,hint2 ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> 砫<EFBFBD> <20> <> ப<EFBFBD>
;mov esi,21 ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> <EFBFBD> esi ᨬ<> <E1A8AC> <EFBFBD> <EFBFBD> <EFBFBD>
;mcall
mov eax , 13
mov edx , 0x666666
mov ebx , 111 * 65536 + 145
mov ecx , 9 * 65536 + 145
mcall
;mov edx,[color]
;mov ebx,109*65536+150
;mov ecx, 10*65536+150
;mcall
call mouse_local ; <20> <> <EFBFBD> <EFBFBD> 砥<EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ⭮<EFBFBD> <E2ADAE> ⥫쭮 <20> <> <EFBFBD> <EFBFBD>
mov ecx , [ mouse_x ] ; <20> <> <EFBFBD> <EFBFBD> ᨬ <20> ॣ<> <E0A5A3> <EFBFBD> <EFBFBD>
mov edx , [ mouse_y ] ; <20> <> <EFBFBD> <EFBFBD> ᨬ <20> ॣ<> <E0A5A3> <EFBFBD> <EFBFBD>
cmp ecx , WIN_W - 10
jg cyrcle_draw_2
cmp edx , WIN_H
jle end_cyrcle_draw
cyrcle_draw_2:
call desktop_get
call mouse_global
mov ebx , 112 * 65536 + 11
mov esi , 0 ; counter=8
circle_loop:
mov ecx , 10 * 65536 + 11
mov edi , 0
circle_loop2:
mov eax , 13
call circle_pixel_read
mcall
add ecx , 11 shl 16
inc edi
cmp edi , 13
jne circle_loop2
add ebx , 11 shl 16
inc esi
cmp esi , 13
jne circle_loop
mov eax , 13
mov edx , 0x0
mov ebx , 177 * 65536 + 13
mov ecx , 76 * 65536 + 13
mcall
mov ecx , [ mouse_x ]
mov edx , [ mouse_y ]
inc ecx
inc edx
mov ebx , edx
imul ebx , [ desctop_w ]
add ebx , ecx
mov eax , 35
mcall
mov edx , eax
mov eax , 13
mov ebx , 178 * 65536 + 11
mov ecx , 77 * 65536 + 11
mcall
end_cyrcle_draw:
ret
circle_pixel_read:
push ecx
push ebx
push eax
mov ecx , [ mouse_x ]
mov edx , [ mouse_y ]
inc ecx
add ecx , esi
cmp ecx , 6
jl _cpr_exit
sub ecx , 6
inc edx
add edx , edi
cmp edx , 6
jl _cpr_exit
sub edx , 6
mov ebx , edx
imul ebx , [ desctop_w ]
add ebx , ecx
mov eax , 35
mcall
mov edx , eax
pop eax
pop ebx
pop ecx
ret
_cpr_exit:
mov edx , 0x00000000
pop eax
pop ebx
pop ecx
ret
2012-12-08 13:51:24 +01:00
;picker_draw:
;ret
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> 䮭<> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
sheme_draw:
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
mov edx , 0x222222 ; 梥<>
mov ecx , 9 shl 16 + 73 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov esi , 2 ; <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
re_draw:
2012-12-08 13:51:24 +01:00
mov ebx , 110 shl 16 + 73 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov edi , 2 ; <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⢠ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
for_fon_loop:
2012-12-08 13:51:24 +01:00
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
add ebx , 75 shl 16 ; <20> <> <EFBFBD> 頥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20>
dec edi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 蠥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cmp edi , 0 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> 㫥<EFBFBD>
jnz for_fon_loop ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
dec esi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 蠥<EFBFBD> <20> <> <EFBFBD>
cmp esi , 0 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> 㫥<EFBFBD>
mov ecx , 84 shl 16 + 73 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
jnz re_draw ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
;.................................................................................................
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 横<> <E6A8AA>
;.................................................................................................
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
mov edx , 0x0FFFFFFF ; 梥<>
mov esi , 4 ; <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⢠ <20> <> <EFBFBD> <EFBFBD> 楢 (#4,8)
mov ebx , 99 shl 16 + 8 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
for_abz:
2012-12-08 13:51:24 +01:00
;;push esi ; <20> <> <EFBFBD> ࠭塞 <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> 稪<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> ⥪
2012-11-10 13:29:41 +01:00
cmp esi , 2
2012-11-05 13:38:32 +01:00
jne x2_line
2012-12-07 04:41:42 +01:00
mov ebx , 99 shl 16 + 8
2012-11-05 13:38:32 +01:00
x2_line:
2012-12-08 13:51:24 +01:00
add ebx , 3 shl 16 ; <20> <> <EFBFBD> 頥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> x
mov edi , 8 ; <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⢠ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> ப<EFBFBD>
2012-11-05 13:38:32 +01:00
for_stolbik:
2012-12-08 13:51:24 +01:00
push edi ; <20> <> <EFBFBD> ࠭塞 <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> 稪<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> ⥪
mov edi , 8 ; <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⢠ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> ப<EFBFBD>
mov ecx , 1 shl 16 + 8 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-10 13:29:41 +01:00
cmp esi , 2
2012-12-08 13:51:24 +01:00
jg y2_line ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 4 <20> <> <20> <> <EFBFBD> <EFBFBD> ਬ
2012-11-10 13:29:41 +01:00
mov ecx , 76 shl 16 + 8
y2_line:
2012-12-08 13:51:24 +01:00
add ebx , 9 shl 16 ; <20> <> <EFBFBD> 頥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> x
2012-11-10 13:29:41 +01:00
for_loop:
2012-12-08 13:51:24 +01:00
add ecx , 9 shl 16 ; <20> <> <EFBFBD> 頥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> y
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
2012-11-10 13:29:41 +01:00
call sub_red
2012-12-08 13:51:24 +01:00
dec edi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 蠥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cmp edi , 0 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> 㫥<EFBFBD>
jnz for_loop ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
2012-11-10 13:29:41 +01:00
call sub_green
2012-12-08 13:51:24 +01:00
pop edi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
dec edi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 蠥<EFBFBD> <20> <> <EFBFBD>
cmp edi , 0 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> 㫥<EFBFBD>
jnz for_stolbik ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
2012-11-10 13:29:41 +01:00
call sub_blue
2012-12-08 13:51:24 +01:00
;;pop esi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
dec esi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 蠥<EFBFBD> <20> <> <EFBFBD>
cmp esi , 0 ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> 㫥<EFBFBD>
jnz for_abz ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <20> <> 砫<EFBFBD> 横<> <E6A8AA>
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_draw_palitra-------------------------------------------------------------------------------------
2012-11-10 13:29:41 +01:00
sub_red:
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᬥ饭<E1ACA5> <E9A5AD> <20> <> <EFBFBD> ᭮<EFBFBD> <E1ADAE> 梥<> <E6A2A5> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 樨 梥<> <E6A2A5> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-11-10 13:29:41 +01:00
push eax
mov eax ,[ pnext ]
;sub_red_0 ; palitra
cmp al , 0
jne sub_red_1
2012-12-08 13:51:24 +01:00
sub edx , 0x40
2012-11-10 13:29:41 +01:00
jmp sub_red_e
sub_red_1: ; random
cmp al , 1
jne sub_red_2
2012-12-08 13:51:24 +01:00
sub edx , 0x20
2012-11-10 13:29:41 +01:00
jmp sub_red_e
sub_red_2: ; gree
cmp al , 2
jne sub_red_3
sub edx , 0x010101
jmp sub_red_e
sub_red_3: ; red
cmp al , 3
jne sub_red_4
sub edx , 0x0101
jmp sub_red_e
sub_red_4: ; green
cmp al , 4
jne sub_red_5
sub edx , 0x010001
jmp sub_red_e
sub_red_5: ; blue
cmp al , 5
jne sub_red_e
sub edx , 0x010100
jmp sub_red_e
sub_red_e:
pop eax
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;end_sub_red------------------------------------------------------------------------------------------
2012-11-05 13:38:32 +01:00
2012-11-10 13:29:41 +01:00
sub_green:
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᬥ饭<E1ACA5> <E9A5AD> <20> <> <EFBFBD> ᭮<EFBFBD> <E1ADAE> 梥<> <E6A2A5> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 樨 梥<> <E6A2A5> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-11-10 13:29:41 +01:00
push eax
mov eax ,[ pnext ]
;sub_green_0
cmp al , 0
jne sub_green_1
2012-12-08 13:51:24 +01:00
sub edx , 0x4000
2012-11-10 13:29:41 +01:00
jmp sub_green_e
sub_green_1:
cmp al , 1
jne sub_green_e
2012-12-08 13:51:24 +01:00
sub edx , 0x2000
2012-11-10 13:29:41 +01:00
;jmp sub_green_e
sub_green_e:
pop eax
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;end_sub_green----------------------------------------------------------------------------------------
2012-11-05 13:38:32 +01:00
2012-11-10 13:29:41 +01:00
sub_blue:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᬥ饭<E1ACA5> <E9A5AD> <20> <> <EFBFBD> ᭮<EFBFBD> <E1ADAE> 梥<> <E6A2A5> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 樨 梥<> <E6A2A5> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;.................................................................................................
push eax
mov eax ,[ pnext ]
;sub_blue_0
cmp al , 0
jne sub_blue_1
2012-12-08 13:51:24 +01:00
sub edx , 0x600000
2012-11-10 13:29:41 +01:00
jmp sub_blue_e
sub_blue_1:
cmp al , 1
jne sub_blue_e
2012-12-08 13:51:24 +01:00
sub edx , 0x400000
2012-11-10 13:29:41 +01:00
;jmp sub_blue_e
sub_blue_e:
pop eax
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;end_sub_blue-----------------------------------------------------------------------------------------
2012-11-05 13:38:32 +01:00
2012-11-10 13:29:41 +01:00
draw_result:
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ࠬ<> <E0A0AC> <20> 뢮<EFBFBD> <EBA2AE> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-12-07 04:41:42 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
mov edx , 0x00666666 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 4 shl 16 + 98 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 9 shl 16 + 148 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-12-07 04:41:42 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
mov edx , 0x00F3F3F3 ; 梥<> -䮭<>
mov ebx , 5 shl 16 + 96 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 10 shl 16 + 146 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-12-07 04:41:42 +01:00
int 0x40
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5> <20> hex color2
2012-11-10 13:29:41 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
2012-12-07 04:41:42 +01:00
; color 2 - draw fringle
2012-12-08 13:51:24 +01:00
mov edx , 0x222222 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 16 shl 16 + 15 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 16 shl 16 + 15 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> (<28> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD> )
2012-12-07 04:41:42 +01:00
; color 2 - draw color
2012-12-08 13:51:24 +01:00
mov edx ,[ color2 ] ; 梥<>
mov ebx , 17 shl 16 + 13 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 17 shl 16 + 13 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> (<28> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD> )
2012-12-07 04:41:42 +01:00
; color 1 - draw fringle
2012-12-08 13:51:24 +01:00
mov edx , 0x222222 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 11 shl 16 + 15 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 12 shl 16 + 15 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> (<28> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD> )
2012-12-07 04:41:42 +01:00
; value - draw fringle
2012-12-08 13:51:24 +01:00
mov ebx , 34 shl 16 + 62 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 16 shl 16 + 15 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> (<28> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD> )
2012-11-10 13:29:41 +01:00
2012-12-07 04:41:42 +01:00
; color 2 - draw color
2012-12-08 13:51:24 +01:00
mov edx ,[ color ] ; 梥<>
mov ebx , 12 shl 16 + 13 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 13 shl 16 + 13 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> (<28> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD> )
2012-12-07 04:41:42 +01:00
; value - draw background
2012-12-08 13:51:24 +01:00
mov edx , 0xFFFFFF ; 梥<> -䮭<>
mov ebx , 35 shl 16 + 60 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 17 shl 16 + 13 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> (<28> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD> )
2012-11-10 13:29:41 +01:00
2012-12-08 13:51:24 +01:00
mov eax , 47 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 47 - <20> 뢮<EFBFBD> <20> <> <20> <20> <> <EFBFBD> <EFBFBD>
mov ecx ,[ color ] ; <20> <> (<28> <> <EFBFBD> bl=0) <20> <> <EFBFBD> 㪠<> <E3AAA0> ⥫<EFBFBD> (<28> <> <EFBFBD> bl=1)
2012-11-10 13:29:41 +01:00
mov esi , 0x0 ; 0xX0RRGGBB
2012-12-08 13:51:24 +01:00
mov ebx , 256 + 8 shl 16 ; <20> <> ࠬ<EFBFBD> <E0A0AC> <EFBFBD> <EFBFBD> <20> ८<EFBFBD> ࠧ<EFBFBD> <E0A0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> ⥪<> <E2A5AA> (HEX)
mov edx , 45 shl 16 + 20 ; [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> y]
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD> - <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> (HEX)
mov eax , 4 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 4: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⥪<> <E2A5AA> <20> <20> <> <EFBFBD> <EFBFBD>
mov ebx , 38 * 65536 + 20 ; [x <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ] *65536 + [y <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ]
mov ecx , 0x0 ; 梥<> ⥪<> <E2A5AA> <EFBFBD> RRGGBB
mov edx , hex ; <20> <> <EFBFBD> 㥬 '#'
mov esi , 1 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⥪<> <E2A5AA> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
int 0x40
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> r g b <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-11-10 13:29:41 +01:00
call get_spectr
2012-12-08 13:51:24 +01:00
movzx eax ,[ cred ] ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 9 * 65536 + 142 ; [x <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ] *65536 + [y <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ]
call draw_value ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
2012-12-08 13:51:24 +01:00
movzx eax ,[ cgreen ] ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 32 * 65536 + 142 ; [x <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ] *65536 + [y <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ]
call draw_value ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
2012-12-08 13:51:24 +01:00
movzx eax ,[ cblue ] ; ᨭ<> <E1A8AD>
mov ebx , 55 * 65536 + 142 ; [x <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ] *65536 + [y <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ]
call draw_value ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
2012-12-08 13:51:24 +01:00
movzx eax ,[ calpha ] ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 78 * 65536 + 142 ; [x <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ] *65536 + [y <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> ]
call draw_value ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> <20> 㪢<EFBFBD> r g b a
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 4 ; 4 - <20> 뢥<EFBFBD> <EBA2A5> <EFBFBD> <20> <> ப<EFBFBD> ⥪<> <E2A5AA> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD>
mov ebx , 16 shl 16 + 40 ; [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> x]*65536 + [<5B> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> y]
mov ecx , 0x0 ; 0xX0RRGGBB (RR, GG, BB <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> ⥪<> <E2A5AA> <EFBFBD> )
mov edx , cname ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> 砫<EFBFBD> <20> <> ப<EFBFBD>
mov esi , 1 ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> <EFBFBD> esi ᨬ<> <E1A8AC> <EFBFBD> <EFBFBD> <EFBFBD>
newline: ; 横<>
int 0x40 ; <20> <> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <EFBFBD>
add ebx , 23 shl 16 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 塞
add edx , 1 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 塞
cmp [ edx ], byte 'x' ; <20> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> ⮬ <20>
jne newline ; <20> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> ࠢ<> <E0A0A2>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <> <E1ABA0> <EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
mov edx , 0x222222 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 16 shl 16 + 4 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 51 shl 16 + 86 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-12-07 04:41:42 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
add ebx , 23 shl 16 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
add ebx , 23 shl 16 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
add ebx , 23 shl 16 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
mov edx , 0xFA0919 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov ebx , 17 shl 16 + 2 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
mov ecx , 52 shl 16 + 84 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> y [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
mov edx , 0x08CE19 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
add ebx , 23 shl 16 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
mov edx , 0x0909FF ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
add ebx , 23 shl 16 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-12-07 04:41:42 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
mov edx , 0xE4E4E4 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
add ebx , 23 shl 16 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> y]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
2012-11-05 13:38:32 +01:00
int 0x40
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
mov edx , 0x0 ; 梥<> -<2D> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <E3ADAA>
mov ebx , 17 shl 16 + 11 ; <20> <> 砫<EFBFBD> <E7A0AB> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x [<5B> -<2D> <> x]*65536 + [ࠧ<> <E0A0A7> <EFBFBD> ]
movzx eax ,[ cred ] ; <20> <> ६ <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> 梥<> <E6A2A5>
2012-11-05 13:38:32 +01:00
call draw_slider
2012-12-07 04:41:42 +01:00
add ebx , 23 shl 16
2012-12-08 13:51:24 +01:00
movzx eax ,[ cgreen ] ; <20> <> ६ <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> 梥<> <E6A2A5>
2012-11-05 13:38:32 +01:00
call draw_slider
2012-12-07 04:41:42 +01:00
add ebx , 23 shl 16
2012-12-08 13:51:24 +01:00
movzx eax ,[ cblue ] ; <20> <> ६ <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> 梥<> <E6A2A5>
2012-11-05 13:38:32 +01:00
call draw_slider
2012-12-07 04:41:42 +01:00
add ebx , 23 shl 16
2012-12-08 13:51:24 +01:00
movzx eax ,[ calpha ] ; <20> <> ६ <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> 梥<> <E6A2A5>
2012-12-07 04:41:42 +01:00
call draw_slider
2012-11-05 13:38:32 +01:00
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_draw_result
draw_slider:
xor ecx , ecx
2012-12-08 13:51:24 +01:00
mov cl , 0x3 ; <20> 㤥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> 3 ⠪ <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 85 <20> <> <EFBFBD> ᥫ<EFBFBD> <E1A5AB>
div cl ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> - 楫<> <E6A5AB> <20> al <20> <> <EFBFBD> <EFBFBD> ⮪ <20> ah
mov cl , 136 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 窠 <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD>
2012-11-10 13:29:41 +01:00
sub cl , al ; cl=cl-al
2012-11-05 13:38:32 +01:00
shl ecx , 16
2012-12-08 13:51:24 +01:00
add ecx , 1 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 砫쭮<E7A0AB> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov eax , 13 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 13 - <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <20> <> אַ㣮<EFACAE> 쭨<EFBFBD>
2012-11-05 13:38:32 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
push ebx ; <20> <> <EFBFBD> ࠭塞 <20> <> <EFBFBD> <> <E1ABA5> <EFBFBD> 饣<EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> x+w
sub ebx , 8 ; ⠪ <20> <> <EFBFBD> <20> <> ਭ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 11 <20> <> <20> ⭨<EFBFBD> <E2ADA8> <EFBFBD> <EFBFBD> 8 <20> ⮡<EFBFBD> <20> 㡨<EFBFBD> <20> ⠫ <20> <> ਭ<EFBFBD> <E0A8AD> 3
add ebx , 8 shl 16 ; <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> x <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> ᬥ頥<E1ACA5> <20> <> 8 <20> <20> ࠢ<EFBFBD>
inc ecx ; <20> 뤫<EFBFBD> <EBA4AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㭪<EFBFBD> <20> <> 3-<2D> (1+1=2)
inc ecx ; (2+1=3) <20> <> <20> <> <EFBFBD> <20> <20> <> <EFBFBD> <20> 㤥<EFBFBD> <20> 㡨<EFBFBD> 3<> 3 <20> <> 8 <20> <20> ࠢ<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
int 0x40 ; <20> <> <EFBFBD> 㥬
pop ebx ; <20> <> <EFBFBD> <EFBFBD> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ଠ <EFBFBD> <E0ACA0> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD>
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_slider
draw_value:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> 뢮<EFBFBD> <20> <> <20> <> <20> <> ப<EFBFBD> <20> 㪠<> <E3AAA0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-10 13:29:41 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
push ebx ; <20> <> <EFBFBD> ࠭塞 <20> <> <EFBFBD> <EFBFBD> <E1ABA0> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD>
mov ebx , 10 ; <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ᭮<EFBFBD> <E1ADAE> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ⥬<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <E1ABA5> <EFBFBD>
mov edi , buff ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> ப<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
call int2ascii ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㥬 <20> <> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> ப<EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> + esi <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
mov eax , 4 ; <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> 4: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⥪<> <E2A5AA> <20> <20> <> <EFBFBD> <EFBFBD>
pop ebx ; <20> <> <EFBFBD> ⠥<EFBFBD> <20> <> <20> ⥪<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <E1ABA0> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD>
cmp esi , 2 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2012-12-07 04:41:42 +01:00
jne draw_value_1
add ebx , 4 shl 16
jmp draw_value_e
draw_value_1:
cmp esi , 1
jne draw_value_e
add ebx , 7 shl 16
draw_value_e:
2012-12-08 13:51:24 +01:00
mov ecx , 0x0 ; 梥<> ⥪<> <E2A5AA> <EFBFBD> RRGGBB
mov edx , buff ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> 砫<EFBFBD> ⥪<> <E2A5AA> <EFBFBD>
2012-12-07 04:41:42 +01:00
int 0x40
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_draw_value
2012-12-12 18:01:34 +01:00
_read_params:
mov al ,[ params + 2 ]
mov [ params_c + 0 ], al
mov al ,[ params + 3 ]
mov [ params_c + 1 ], al
mov al ,[ params + 4 ]
mov [ params_c + 2 ], al
mov al ,[ params + 5 ]
mov [ params_c + 3 ], al
mov al ,[ params + 6 ]
mov [ params_c + 4 ], al
mov al ,[ params + 7 ]
mov [ params_c + 5 ], al
mov al ,[ params + 8 ]
mov [ params_c + 6 ], al
mov al ,[ params + 9 ]
mov [ params_c + 7 ], al
mov esi , params_c
mov ecx , 16
call ascii2int
mov [ color ], eax
mov al ,[ params + 11 ]
mov [ params_c + 0 ], al
mov al ,[ params + 12 ]
mov [ params_c + 1 ], al
mov al ,[ params + 13 ]
mov [ params_c + 2 ], al
mov al ,[ params + 14 ]
mov [ params_c + 3 ], al
mov al ,[ params + 15 ]
mov [ params_c + 4 ], al
mov al ,[ params + 16 ]
mov [ params_c + 5 ], al
mov al ,[ params + 17 ]
mov [ params_c + 6 ], al
mov al ,[ params + 18 ]
mov [ params_c + 7 ], al
mov esi , params_c
mov ecx , 16
call ascii2int
mov [ color2 ], eax
ret
2012-11-05 13:38:32 +01:00
hex_digit:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> ८<EFBFBD> ࠧ<EFBFBD> <E0A0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ASCII (<28> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᨬ<EFBFBD> <E1A8AC> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> ⥬<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <E1ABA5> <EFBFBD> )
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
cmp dl , 10 ; <20> dl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> 0 <20> <> 15
jb .less ; <20> dl<10 <20> <> <20> <> <EFBFBD> <EFBFBD> 室<EFBFBD> <E5AEA4>
2012-11-10 13:29:41 +01:00
add dl , 'A' - 10 ; 10->A 11->B 12->C ...
2012-12-08 13:51:24 +01:00
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
.less:
2012-12-08 13:51:24 +01:00
or dl , '0' ; <20> <20> <> <EFBFBD> ⥬<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <E1ABA5> <EFBFBD> 10-<2D> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
ret ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_hex_digit
int2ascii:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> ८<EFBFBD> ࠧ<EFBFBD> <E0A0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <20> <> ப<EFBFBD>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-08 13:51:24 +01:00
; eax - 32-<2D> <20> <> <EFBFBD> 筮<EFBFBD> <20> <>
; ebx - <20> ᭮<EFBFBD> <E1ADAE> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ⥬<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <E1ABA5> <EFBFBD>
; edi - 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> ப<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> esi - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ப<EFBFBD>
2012-11-05 13:38:32 +01:00
;pushad
2012-12-08 13:51:24 +01:00
xor esi , esi ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 塞 <20> <> <EFBFBD> <EFBFBD> 稪 ᨬ<> <E1A8AC> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
convert_loop:
2012-12-08 13:51:24 +01:00
xor edx , edx ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 塞 ॣ<> <E0A5A3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⮪
div ebx ; eax/ebx - <20> <> <EFBFBD> <EFBFBD> ⮪ <20> edx
call hex_digit ; <20> ८<EFBFBD> ࠧ㥬 ᨬ<> <E1A8AC> <EFBFBD>
push edx ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> ⥪
inc esi ; 㢥<> <E3A2A5> 稢<EFBFBD> <E7A8A2> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 稪
test eax , eax ; <20> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
jnz convert_loop ; <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD>
cld ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> 䫠<> <20> <> <EFBFBD> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD> DF (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
write_loop: ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
pop eax ; <20> <> <EFBFBD> ⠥<EFBFBD> <20> <> <20> ⥪<EFBFBD> <20> <20> <> <EFBFBD>
stosb ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ES:(E)DI
dec esi ; 㬥<> <E3ACA5> 蠥<EFBFBD> <20> <> <EFBFBD> <EFBFBD> 稪
test esi , esi ; <20> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> ⠢<EFBFBD> <E2A0A2> <EFBFBD> <20> <> <20> ⥪<EFBFBD>
jnz write_loop ; <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov byte [ edi ], 0 ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 뢠<EFBFBD> <EBA2A0> <20> 㫥<EFBFBD> <E3ABA5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
;popad ; <20> <> <EFBFBD> <EFBFBD> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> ॣ<> <E0A5A3> <EFBFBD>
; <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 祣<EFBFBD> <20> <> 饣<EFBFBD> <20> <20> 㭪樨, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 祭<EFBFBD> <E7A5AD> <EFBFBD> <20> <> ப<EFBFBD>
mov edi , buff ; 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> 砫<EFBFBD> ⥪<> <E2A5AA> <EFBFBD>
2012-11-05 13:38:32 +01:00
call str_len
mov esi , eax
2012-12-08 13:51:24 +01:00
ret ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_int2ascii
2012-12-12 18:01:34 +01:00
char2byte:
sub al , '0'
cmp al , 10
jb done
add al , '0'
and al , 0x5f
sub al , 'A' - 10
and al , 0x0f
done:
ret
;end_char2byte
ascii2int:
;.................................................................................................
; <20> ८<EFBFBD> ࠧ<EFBFBD> <E0A0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ப<EFBFBD> <20> <20> <>
;.................................................................................................
; esi - 㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ନ<EFBFBD> <E0ACA8> <EFBFBD> <E0AEA2> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ப<EFBFBD>
; ecx - <20> ᭮<EFBFBD> <E1ADAE> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ⥬<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <E1ABA5> <EFBFBD>
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> eax - <20> <>
push esi
xor eax , eax
xor ebx , ebx
cmp byte [ esi ], '-'
jnz .next
inc esi
.next:
lodsb
or al , al
jz .done
call ch ar2byte
imul ebx , ecx
add ebx , eax
jmp .next
.done:
xchg ebx , eax
pop esi
cmp byte [ esi ], '-'
jz .negate
ret
.negate:
neg eax
ret
;end_ascii2int
2012-11-05 13:38:32 +01:00
get_spectr:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> r,g,b <20> <> <EFBFBD> ⮢<EFBFBD> <E2AEA2> <EFBFBD> 騥 梥<> <E6A2A5>
;.................................................................................................
2012-11-05 13:38:32 +01:00
mov ecx ,[ color ]
2012-12-07 04:41:42 +01:00
mov [ cblue ], cl
shr ecx , 8
mov [ cgreen ], cl
shr ecx , 8
mov [ cred ], cl
shr ecx , 8
mov [ calpha ], cl
2012-12-08 13:51:24 +01:00
ret ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_get_spectr
set_spectr:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> r,g,b 梥<>
2012-11-05 13:38:32 +01:00
;.................................................................................................
2012-12-07 04:41:42 +01:00
movzx eax ,[ calpha ]
shl eax , 8
mov al ,[ cred ]
2012-11-05 13:38:32 +01:00
shl eax , 8
mov al ,[ cgreen ]
shl eax , 8
mov al ,[ cblue ]
mov [ color ], eax
2012-12-08 13:51:24 +01:00
call draw_result ; <20> 뢮<EFBFBD> <EBA2AE> <EFBFBD> १<> <E0A5A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ret ; <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 頥<EFBFBD> <20> <> ࠢ<EFBFBD> <E0A0A2> <EFBFBD> <EFBFBD> <EFBFBD>
2012-11-05 13:38:32 +01:00
;end_get_spectr
str_len:
;.................................................................................................
2012-12-08 13:51:24 +01:00
; <20> <> ।<EFBFBD> <E0A5A4> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ப<EFBFBD> (<28> 室->EDI ZS offset ; <20> <> 室->EAX ZS length)
2012-11-05 13:38:32 +01:00
;.................................................................................................
push ecx
push esi
push edi
cld
xor al , al
mov ecx , 0FFFFFFFFh
mov esi , edi
repne scasb
sub edi , esi
mov eax , edi
dec eax
pop edi
pop esi
pop ecx
ret
;end_str_len
2012-12-12 18:01:34 +01:00
2012-11-05 13:38:32 +01:00
;#___________________________________________________________________________________________________
;****************************************************************************************************|
2012-12-08 13:51:24 +01:00
; <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> |
2012-11-05 13:38:32 +01:00
;----------------------------------------------------------------------------------------------------/
2013-04-06 12:12:49 +02:00
circle:
2012-12-08 13:51:24 +01:00
cm db 12 dup ( 0 )
color dd 00000000h ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> ࠭<EFBFBD> <E0A0AD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5>
color2 dd 00FFFFFFh ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> ண<EFBFBD> <20> <> <EFBFBD> ࠭<EFBFBD> <E0A0AD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5>
mouse_x dd 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
mouse_y dd 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> न<EFBFBD> <E0A4A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
mouse_f dd 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ⮬ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> 뫠 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
desctop_w dd 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> ਭ<EFBFBD> <20> <> ࠭<EFBFBD>
2013-04-06 12:12:49 +02:00
desctop_h dd 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ࠭<EFBFBD>
2012-12-08 13:51:24 +01:00
sc system_colors ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ⥬<EFBFBD> <E2A5AC> <EFBFBD> 梥⮢ ᪨<> <E1AAA8>
2013-04-06 12:12:49 +02:00
title db 'Palitra v0.7' , 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <20> ணࠬ<E0AEA3> <E0A0AC>
2012-12-12 18:01:34 +01:00
hidden db 'Hidden' , 0
2012-12-08 13:51:24 +01:00
hex db '#' , 0 ; <20> <> <EFBFBD> <20> 뢮<EFBFBD> <EBA2AE> <20> <> <EFBFBD> <EFBFBD> ⪨ <20> <> <EFBFBD> ⥪<> <E2A5AA> <EFBFBD>
cname db 'RGBAx' ; <20> ࠭<EFBFBD> <E0A0AD> ࠧ<> <E0A0A7> <EFBFBD> <EFBFBD> 梥⮢ (red,green,blue) x-<2D> <> ⪠ <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
cred db 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᯥ<> <E1AFA5> <EFBFBD>
cgreen db 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᯥ<> <E1AFA5> <EFBFBD>
cblue db 0 ; <20> ࠭<EFBFBD> <E0A0AD> ᨭ<> <E1A8AD> ᯥ<> <E1AFA5> <EFBFBD>
calpha db 0 ; <20> ࠭<EFBFBD> <E0A0AD> <20> <EFBFBD> <E0AEA7> 筮<EFBFBD> <E7ADAE> <EFBFBD>
larrow db 0x1A , 0
2012-11-10 13:29:41 +01:00
buff db '000' , 0
2012-12-08 13:51:24 +01:00
bground db 'BACKGROUND' , 0 ; <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> - 14
pnext dd 0 ; <20> <> <EFBFBD> <EFBFBD> 稪 <20> <> ४<EFBFBD> <E0A5AA> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
renmode dd 0 ; ० <> <E0A5A6> <20> <> <EFBFBD> <EFBFBD> ᮢ<EFBFBD> <E1AEA2> (1-梥⮢<E6A2A5> <E2AEA2> <20> 奬<EFBFBD> ,2-<2D> <> <EFBFBD> <EFBFBD> ⪠,3-<2D> <> 㣮<EFBFBD> <E3A3AE> <EFBFBD> )
2012-12-12 18:01:34 +01:00
runmode dd 1 ; ० <> <E0A5A6> <20> <> <EFBFBD> <EFBFBD> ᪠ (1-normal, 2-hidden, 3-colordialog)
params db 20 dup ( 0 ) ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ࠬ<EFBFBD> <E0A0AC>
params_c db 9 dup ( 0 ) ; <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 梥<> <E6A2A5>
2013-04-06 12:12:49 +02:00
2012-11-05 13:38:32 +01:00
I_END: