/programs/other/archer/trunk/@RCHER.ASM |
---|
110,7 → 110,7 |
else |
Msg 0 |
Msg 1 |
mcall 40,10000101b |
mcall 40,1000101b |
; jmp again |
CmdLine |
cmdl: |
/programs/other/archer/trunk/arcmacro.inc |
---|
261,8 → 261,8 |
;; mov esi,path |
mov edi,path |
xor eax,eax |
mov ecx,200 |
rep stosb |
mov ecx,(1024+16)/4 |
rep stosd |
;mov [get_loops],0 |
mov [dlg_pid_get],0 |
301,7 → 301,7 |
mov eax,60 |
mov ebx,1 ; define IPC |
mov ecx,path ; offset of area |
mov edx,150 ; size 150 bytes |
mov edx,1024+16 ; size |
int 0x40 |
mcall 40,1000111b |
309,7 → 309,7 |
; STEP 3 run SYSTEM XTREE with parameters |
; |
mcall 58,run_fileinfo |
mcall 70,run_fileinfo |
call redproc |
318,16 → 318,15 |
mov eax,23 |
mov ebx,50 ;0.5 sec |
int 0x40 |
dec eax |
jz mred |
dec eax |
jz mkey |
dec eax |
jz mbutton |
cmp al, 7-3 |
jz mgetmes |
cmp eax,1 |
je mred |
cmp eax,2 |
je mkey |
cmp eax,3 |
je mbutton |
cmp eax,7 |
je mgetmes |
; Get number of procces |
mcall 9,os_work,-1 |
mov ebp,eax |
405,14 → 404,14 |
ready: |
; |
; The second message get |
; Second message is 100 bytes path to SAVE/OPEN file |
; Second message is 1024 bytes path to SAVE/OPEN file |
; shl path string on 16 bytes |
; |
cld |
mov esi,path+16 |
mov edi,path |
mov ecx,200 |
rep movsb |
mov ecx,1024/4 |
rep movsd |
mov [edi],byte 0 |
jmp openoff |
428,11 → 427,11 |
dd 0,0 ; Type of dialog |
run_fileinfo: |
dd 16 |
dd 7 |
dd 0 |
dd param |
dd 0 |
dd os_work ; 0x10000 |
dd 0 |
;run_filepath |
db '/RD/1/SYSXTREE',0 |
/programs/other/archer/trunk/data.inc |
---|
68,8 → 68,8 |
; db '/hd/1/zip/test2.zip',0 |
end if |
db 0 |
rb 256-($-filename) |
I_END: |
rb 1024+16-($-filename) |
if SYS eq win |
cr_lf db 0xa,0xd |
/programs/other/archer/trunk/macros.inc |
---|
143,6 → 143,11 |
; language for programs |
lang fix ru ; ru en fr ge fi |
; optimize the code for size |
__regs fix <eax,ebx,ecx,edx,esi,edi,ebp,esp> |
174,7 → 179,7 |
macro mov arg1,arg2 |
{ |
if (arg1 in __regs) & ((arg2 eqtype 0) | (arg2 eqtype '0')) |
if (arg1 in __regs) & (arg2 eqtype 0) |
if (arg2) = 0 |
xor arg1,arg1 |
else if (arg2) = 1 |
/programs/other/archer/trunk/sys.inc |
---|
385,12 → 385,26 |
} |
StartPad: |
; mcall 19,editorcmd,dumpfile |
pusha |
mov esi,[outfile.size] |
; dpd esi |
mov [par_fsize],esi |
mcall 19,editorcmd,editor_par |
; convert number in esi to decimal representation |
mov ecx, 10 |
push -'0' |
mov eax, esi |
@@: |
xor edx, edx |
div ecx |
push edx |
test eax, eax |
jnz @b |
mov edi, par_fsize |
@@: |
pop eax |
add al, '0' |
stosb |
jnz @b |
mcall 70,fileinfo |
mov ecx,eax |
mcall 5,20 |
mcall 60,2,,[outfile.out];output |
398,7 → 412,13 |
popa |
ret |
editorcmd db 'TINYPAD ' |
fileinfo: |
dd 7 |
dd 0 |
dd editor_par |
dd 0 |
dd 0 |
db '/RD/1/TINYPAD',0 |
editor_par db '*' |
par_fsize dd ? |
par_fsize rb 11 |
end if |
/programs/other/rtfread/trunk/ascl.inc |
---|
133,9 → 133,9 |
cld |
;; mov esi,path |
mov edi,path |
mov eax,0 |
mov ecx,200 |
rep stosb |
xor eax,eax |
mov ecx,(1024+16)/4 |
rep stosd |
;mov [get_loops],0 |
mov [dlg_pid_get],0 |
177,7 → 177,7 |
mov eax,60 |
mov ebx,1 ; define IPC |
mov ecx,path ; offset of area |
mov edx,150 ; size 150 bytes |
mov edx,1024+16 ; size |
int 0x40 |
; change wanted events list 7-bit IPC event |
189,7 → 189,7 |
; STEP 3 run SYSTEM XTREE with parameters |
; |
mov eax,58 |
mov eax,70 |
mov ebx,run_fileinfo |
int 0x40 |
200,16 → 200,15 |
mov eax,23 |
mov ebx,50 ;0.5 sec |
int 0x40 |
dec eax |
jz mred |
dec eax |
jz mkey |
dec eax |
jz mbutton |
cmp al, 7-3 |
jz mgetmes |
cmp eax,1 |
je mred |
cmp eax,2 |
je mkey |
cmp eax,3 |
je mbutton |
cmp eax,7 |
je mgetmes |
; Get number of procces |
mov ebx,procinfo |
mov ecx,-1 |
295,14 → 294,14 |
ready: |
; |
; The second message get |
; Second message is 100 bytes path to SAVE/OPEN file |
; Second message is 1024 bytes path to SAVE/OPEN file |
; shl path string on 16 bytes |
; |
cld |
mov esi,path+16 |
mov edi,path |
mov ecx,200 |
rep movsb |
mov ecx,1024/4 |
rep movsd |
mov [edi],byte 0 |
jmp openoff |
318,16 → 317,16 |
dd 0,0 ; Type of dialog |
run_fileinfo: |
dd 16 |
dd 7 |
dd 0 |
dd param |
dd 0 |
dd procinfo ; 0x10000 |
dd 0 |
;run_filepath |
db '/RD/1/SYSXTREE',0 |
procinfo: |
times 256 db 0 |
times 1024 db 0 |
} |
345,9 → 344,9 |
cld |
;; mov esi,path |
mov edi,path |
mov eax,0 |
mov ecx,200 |
rep stosb |
xor eax,eax |
mov ecx,(1024+16)/4 |
rep stosd |
;mov [get_loops],0 |
mov [dlg_pid_get],0 |
389,7 → 388,7 |
mov eax,60 |
mov ebx,1 ; define IPC |
mov ecx,path ; offset of area |
mov edx,120 ; size 150 bytes |
mov edx,1024+16 ; size |
int 0x40 |
; change wanted events list 7-bit IPC event |
401,7 → 400,7 |
; STEP 3 run SYSTEM XTREE with parameters |
; |
mov eax,58 |
mov eax,70 |
mov ebx,run_fileinfo |
int 0x40 |
412,16 → 411,15 |
mov eax,23 |
mov ebx,50 ;0.5 sec |
int 0x40 |
dec eax |
jz mred |
dec eax |
jz mkey |
dec eax |
jz mbutton |
cmp al, 7-3 |
jz mgetmes |
cmp eax,1 |
je mred |
cmp eax,2 |
je mkey |
cmp eax,3 |
je mbutton |
cmp eax,7 |
je mgetmes |
; Get number of procces |
mov ebx,procinfo |
mov ecx,-1 |
457,6 → 455,7 |
call redproc |
jmp getmesloop |
mkey: |
mov eax,2 |
int 0x40 ; read (eax=2) |
jmp getmesloop |
mbutton: |
506,14 → 505,14 |
ready: |
; |
; The second message get |
; Second message is 100 bytes path to SAVE/OPEN file |
; Second message is 1024 bytes path to SAVE/OPEN file |
; shl path string on 16 bytes |
; |
cld |
mov esi,path+16 |
mov edi,path |
mov ecx,200 |
rep movsb |
mov ecx,1024/4 |
rep movsd |
mov [edi],byte 0 |
jmp openoff |
525,25 → 524,26 |
DLGPID dd 0 |
param: |
rb 4 ; My dec PID |
rb 6 ; Type of dialog |
dd 0 ; My dec PID |
dd 0,0 ; Type of dialog |
run_fileinfo: |
dd 16 |
dd 7 |
dd 0 |
dd param |
dd 0 |
dd procinfo |
run_filepath: |
dd 0 |
;run_filepath: |
db '/RD/1/SYSXTREE',0 |
procinfo: |
times 256 db 0 |
times 1024 db 0 |
} |
; RANDOM - generate random count (small) |
; (SYNTAX) RANDOM MaxCount,OutArgument |
; (SAMPLE) RANDOM 10000,eax |
/programs/other/rtfread/trunk/bgifont.inc |
---|
571,6 → 571,12 |
jg .nobold |
end if |
mov edx,[.color] |
; \begin{diamond}[18.08.2006] |
; starting from K0530 kernel interprets flag 0x1000000 as |
; negate existing pixels colors, disregarding passed color |
; we do not want this |
and edx, 0xFFFFFF |
; \end{diamond}[18.08.2006] |
mov eax,38 |
int 0x40 |
test ebp,BGI_BOLD |
/programs/other/rtfread/trunk/macros.inc |
---|
143,6 → 143,8 |
; language for programs |
lang fix ru ; ru en fr ge fi |
/programs/other/rtfread/trunk/rtfread.asm |
---|
52,8 → 52,7 |
dd fname_buf ; ¤à¥á ¡ãä¥à ¤«ï ¯ à ¬¥â஢ (¥ ¨á¯®«ì§ã¥âáï) |
dd 0x0 ; § १¥à¢¨à®¢ ® |
include 'lang.inc' |
include 'macros.inc' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
include 'MACROS.INC' ; ¬ ªà®áë ®¡«¥£ç îâ ¦¨§ì áᥬ¡«¥à騪®¢! |
include 'debug.inc' |
if ~ RENDER eq PIX |
TOP=TOP+4 |
319,6 → 318,7 |
mcall 12, 1 ; äãªæ¨ï 12: á®®¡é¨âì ®¡ ®âà¨á®¢ª¥ ®ª |
; 1 - ç¨ ¥¬ à¨á®¢ âì |
mcall 0, <10,WINW>, <100,WINH>, WIN_COLOR,0x805080D0, 0x005080D0 |
mcall 9,procinfo,-1 |
mov eax,[procinfo.x_size] |
547,6 → 547,8 |
Free BGIfree FONT_NAME,0,0,1.0,1.0,char,1,0x44000000,0 |
end if |
I_END0: |
fname_buf: |
rb 1024+16 |
if BENCH eq 1 |
bench dd ? |
end if |
594,7 → 596,6 |
rb RTFSTACKSIZE |
save_limit: |
rb BGIFONTSIZE |
fname_buf rd 16 |
listptr dd ? |
szKeyword rb 31 |