Subversion Repositories Kolibri OS

Compare Revisions

No changes between revisions

Regard whitespace Rev 7783 → Rev 7784

/programs/other/outdated/param/trunk/cmdipc.inc
0,0 → 1,221
include "..\..\..\..\macros.inc"
 
initipc:
mov eax,9
mov ebx,prc
or ecx,-1
mcall
 
mov ecx,eax
loop1:
push ecx
 
mov eax,9
mov ebx,prc
mcall
 
cmp word [prc+10],'CM'
jne no_cmd
cmp byte [prc+12],'D'
jne no_cmd
 
mov ebx,[prc+30]
mov dword [cmdpid],ebx
 
mov dword [cmdnumb],ecx
 
no_cmd:
pop ecx
loop loop1
 
cmp dword [cmdpid],0
jne no_exit
 
jmp exit
 
no_exit:
mov eax,60
mov ebx,2
mov ecx,dword [cmdpid]
mov edx,printf
mov esi,4
mcall
 
call initcmd
 
waitcmdinit:
mov eax,40
mov ebx,01000000b
mcall
 
mov eax,23
mov ebx,100
mcall
 
cmp eax,7
je cmd_ok
 
jmp exit
 
cmd_ok:
cmp byte [ipcb+16],'.'
jne exit
 
mov eax,18
mov ebx,3
mov ecx,dword [cmdnumb]
mcall
 
ret
 
pause1:
mov eax,5
mov ebx,1
mcall
ret
 
exit:
or eax,-1
mcall
 
cls:
mov eax,60
mov ebx,2
mov ecx,dword [cmdpid]
mov edx,ipccls
mov esi,4
mcall
 
call pause1
 
ret
 
print:
mov ecx,84
loopprt:
mov edi,stripc
add edi,ecx
mov esi,fill_symbol
movsb
 
loop loopprt
 
cld
mov ecx,4
mov edi,stripc
mov esi,printf
rep movsb
 
cld
mov edx,79
sub edx,eax
mov ecx,79
sub ecx,edx
mov edi,stripc+4
mov esi,ebx
rep movsb
 
mov eax,60
mov ebx,2
mov ecx,dword [cmdpid]
mov edx,stripc
mov esi,84
mcall
 
call pause1
 
ret
 
eol:
mov eax,60
mov ebx,2
mov ecx,dword [cmdpid]
mov edx,ipceol
mov esi,4
mcall
 
call pause1
 
ret
 
initcmd:
mov eax,60
mov ebx,2
mov ecx,dword [cmdpid]
mov edx,ipckey
mov esi,4
mcall
 
mov eax,60
mov ebx,1
mov ecx,ipcb
mov edx,28
mcall
 
cld
mov ecx,28
mov edi,ipcb
mov esi,ipcc
rep movsb
 
ret
 
getkey:
call initcmd
 
waitagain:
mov eax,40
mov ebx,01000000b
mcall
 
mov eax,10
mcall
 
cmp eax,7
jne waitagain
 
mov edi,key
mov esi,ipcb+16
movsb
 
ret
 
endipc:
mov eax,60
mov ebx,2
mov ecx,dword [cmdpid]
mov edx,ipcend
mov esi,4
mcall
 
jmp exit
 
cmdpid dd 0
cmdnumb dd 0
 
printf db '~ppp'
ipceol db '~lll'
ipcend db '~eee'
ipccls db '~ccc'
ipckey db '~kkk'
 
key db 0
 
ipcb:
db 0
db 0,0,0
dd 8
times 20 db 0
 
ipcc:
db 0
db 0,0,0
dd 8
times 20 db 0
 
stripc: times 84 db 0
 
fill_symbol db 0
 
prc: times 52 db 0
 
Property changes:
Added: svn:eol-style
+native
\ No newline at end of property
/programs/other/outdated/param/trunk/Tupfile.lua
0,0 → 1,3
if tup.getconfig("NO_FASM") ~= "" then return end
tup.rule("echo lang fix " .. ((tup.getconfig("LANG") == "") and "en" or tup.getconfig("LANG")) .. " > lang.inc", {"lang.inc"})
tup.rule({"param.asm", extra_inputs = {"lang.inc"}}, "fasm %f %o " .. tup.getconfig("KPACK_CMD"), "param")
/programs/other/outdated/param/trunk/build_en.bat
0,0 → 1,5
@erase lang.inc
@echo lang fix en >lang.inc
@fasm param.asm param
@erase lang.inc
@pause
/programs/other/outdated/param/trunk/build_ru.bat
0,0 → 1,5
@erase lang.inc
@echo lang fix ru >lang.inc
@fasm param.asm param
@erase lang.inc
@pause
/programs/other/outdated/param/trunk/param.asm
0,0 → 1,56
use32
 
org 0x0
 
db 'MENUET01'
dd 0x01
dd START
dd I_END
dd 0x100000
dd 0x7fff0
dd I_PARAM ; 㪠§ â¥«ì ­  ¯ à ¬¥âàë
 
include "lang.inc"
include "cmdipc.inc" ; ®¤ª«îç¨âì ä ©« CMDIPC.INC
 
START:
call initipc ; ¨­¨æ¨ «¨§¨à®¢ âì ¤«ï à ¡®âë á CMD
 
mov eax,47 ; ¢ë¢¥á⨠ᮮ¡é¥­¨¥
mov ebx,mess
call print
 
call eol ; ¯à®¯ãáâ¨âì áâபã
call eol
 
cmp [I_PARAM],byte 0 ; ¯à®¢¥à¨âì, ¥áâì «¨ ¯ à ¬¥âàë
jz noparam
 
mov eax,43
mov ebx,mess1
call print
 
call eol
 
mov eax,30 ; ¢ë¢¥á⨠¯ à ¬¥âàë
mov ebx,I_PARAM
call print
 
jmp end1 ; ¯¥à¥å®¤ ¢ ª®­¥æ ¯à®£à ¬¬ë
 
noparam:
mov eax,40 ; ¢ë¢¥á⨠ᮮ¡é¥­¨¥ ® ⮬, çâ® ­¥â ¯ à ¬¥â஢
mov ebx,mess2
call print
 
end1:
jmp endipc ; § ¢¥àè¨âì ¯à®£à ¬¬ã
 
mess db 'PARAM.ASM - Test params in IPC programs for CMD'
 
mess1 db 'This program was started with this params: '
mess2 db 'This program was started without params!'
 
I_PARAM db 0
 
I_END:
Property changes:
Added: svn:eol-style
+native
\ No newline at end of property