kolibrios-fun/programs/system/taskbar/trunk/MOI.INC
pathoswithin 4afbfbbe09 Taskbar: some cleaning and refactoring
git-svn-id: svn://kolibrios.org@5872 a494cfbc-eb01-0410-851d-a64ba20cac60
2015-11-01 17:59:25 +00:00

158 lines
2.4 KiB
Plaintext

load_ini:
mov [point2],32h
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [lngcrc1],al
mov [point2],42h
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [lngcrc3],al
mov [point2],52h
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [lngcrc2],al
mov [point2],06eh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng1],al
mov [point2],07eh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng2],al
mov [point2],08eh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng3],al
mov [point2],09eh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng4],al
mov [point2],0aeh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng5],al
mov [point2],0beh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng6],al
mov [point2],0ceh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng7],al
mov [point2],0deh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng8],al
mov [point2],0eeh
mcall 70,get_ini
mov al,[inicont]
sub al,30h
mov [altlng9],al
mov [point2],16h
mcall 70,get_ini
xor eax,eax
mov al,[inicont]
sub al,31h
jns applyKeymap
ret
;-------------------------------
karu:
mov [draw_flag_certainly],1
dec [key_r2]
jns @f
mov [key_r2],2
@@:
xor eax,eax
mov al, [key_r2]
mov al, [lngcrc1+eax]
dec eax
js karu
jmp applyKeymap
;-------------------------------
alter:
mov [draw_flag_certainly],1
xor eax,eax
mov al, [key_r]
mov al, [altlng1+eax]
dec eax
js @f
applyKeymap:
cmp al, 9
jnc @f
push eax
shl eax,7
lea eax,[eax*2+eax]
mov [point],eax
mcall 70,get_key
mcall 21,2,1,current_keymap
inc ecx
mcall 21,,,current_keymap_shift
inc ecx
mcall 21,,,current_keymap_alt
pop edx
inc edx
mcall 21,,9
@@:
ret
;---------------------------------------------------------------
align 4
current_keymap rb 128
current_keymap_shift rb 128
current_keymap_alt rb 128
get_ini:
dd 0
point2 dd 0
dd 0
dd 1
dd inicont
db '/rd/1/settings/lang.ini',0
get_key:
dd 0
point dd 0
dd 0
dd 384
dd current_keymap
db '/rd/1/settings/keymap.key',0
key_r db 0
key_r2 db 0
inicont db 0
lngcrc1 db 0
lngcrc2 db 0
lngcrc3 db 0
altlng1 db 0
altlng2 db 0
altlng3 db 0
altlng4 db 0
altlng5 db 0
altlng6 db 0
altlng7 db 0
altlng8 db 0
altlng9 db 0