Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 7415 → Rev 7416

/programs/other/ha/HOTANGLES.ASM
2,7 → 2,7
; Hot Angles ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Compile with FASM
; Version 0.1: Sep 18, 2018
; Version 0.3.3: Sep 25, 2018
 
; Copyright (c) 2018, Efremenkov Sergey aka TheOnlyMirage
; All rights reserved.
184,15 → 184,17
;ïàðàìåòðû
;mov dword[struct.adr],
 
;ýòîò êîä çàìåíèòü - åñëè àäðåñ 0, òî íè÷åãî íå äåëàòü
;åñëè àäðåñ 0, òî íè÷åãî íå äåëàòü
cmp dword[struct70.path_adr], 0
jne .next
mov eax, testData.ld ;
mov dword[struct70.path_adr], eax
;mov eax, testData.ld
;mov dword[struct70.path_adr], eax
jmp @f
.next:
;êîíåö êîäà äëÿ çàìåíû
 
mcall 70, struct70
@@:
mov byte[state], LOCKd
 
pop ecx
207,16 → 209,17
.param_adr dd 0 ; óêàçàòåëü íà ASCIIZ-ñòðîêó ñ ïàðàìåòðàìè
.other dd 0, 0
.path db 0 ; "/rd/1/TINYPAD",0 ; ïóòü
.path_adr dd 0 ;testData.lu ;0
.path_adr dd 0 ;testData.lu
 
 
state: db 0 ; 0=unlock, 1=lock
mode: db 0 ;ðåæèì ðàáîòû (äëÿ áóäóùåãî ðàñøèðåíèÿ ôóíêöèîíàëà)
 
testData:
.lu db '/rd/1/SHELL', 0
.ld db '/rd/1/RUN', 0
.ru db "/rd/1/TINYPAD", 0
.rd db '/rd/1/File Managers/EOLITE', 0
;testData:
; .lu db '/rd/1/SHELL', 0
; .ld db '/rd/1/RUN', 0
; .ru db "/rd/1/TINYPAD", 0
; .rd db '/rd/1/File Managers/EOLITE', 0
 
newData: ;òàáëè÷êà àäðåñîâ êîìàíäíûõ ñòðîê
.lu dd 0
226,13 → 229,10
newDataEnd:
 
;èìÿ êîíôèãóðàöèîííîãî ôàéëà
fileName: db 'SETTINGS/HOTANGLES.CFG', 0 ;'ha.cfg', 0
fileName: db 'SETTINGS/HOTANGLES.CFG', 0
 
loadConfig:
push eax
push ebx
push ecx
push edx
push eax ebx ecx edx
mcall 68, 27, fileName ;çàãðóæàåì êîíôèãóðàöèîííûé ôàéë â ÎÇÓ
cmp eax, 0
je loadConfig.exit ;åñëè ôàéëà êîíôèãóðàöèè íåò, òî çàâåðøàåì ðàáîòó ïðèëîæåíèÿ
258,7 → 258,7
cmp byte[esi], 13
je loadConfig.propusk
 
; ñèìâîë îòëè÷åí îò ïåðåíîñà ñòðîêè è âîçâðàòà êàðåòêè - çàïîìèíàåì åãî
; ñèìâîë îòëè÷åí îò ïåðåíîñà ñòðîêè è âîçâðàòà êàðåòêè - åñëè ýòî íà çíàê ìèíóñ, òî çàïîìèíàåì åãî
mov dword[edi], esi
add edi, 4
 
276,6 → 276,18
.ura:
mov byte[esi], 0
 
;cmp byte[esi-1], '-'
;jne @f
push esi ;åñëè ýòî áûë çíàê ìèíóñ, òî ìåíÿåì àäðåñ íà íîëü
mov esi, dword[edi-4]
cmp byte[esi], '-'
jne @f
cmp byte[esi+1], 0
jne @f
mov dword[edi-4], 0
@@:
pop esi
 
cmp edi, newDataEnd ;newData.end ;åñëè âñÿ òàáëèöà àäðåñîâ çàïîëíåíà, òî âûõîäèì èç öèêëà
jb loadConfig.block
.fileend:
289,16 → 301,10
mov byte[esi], 0
jmp loadConfig.block
.exit:
pop edx
pop ecx
pop ebx
pop eax
pop edx ecx ebx eax
mcall -1 ;çàêðûòü ýòó ïðîãðàììó
.end:
pop edx
pop ecx
pop ebx
pop eax
pop edx ecx ebx eax
ret